* hurd/hurdstartup.c (_hurd_startup): Use new
[glibc.git] / ChangeLog
blob9ca3239516b700099721107a891e48155992ce08
1 Wed Oct 25 14:23:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3         * hurd/hurdstartup.c (_hurd_startup): Use new
4         exec_startup_get_info RPC from exec_startup.defs
5         in place of old exec_startup from exec.defs.  Remove kludge to
6         guess user entry and phdr locations, since the new RPC gives us
7         that info.
9         * stdio/stdio.h (sys_errlist, _sys_errlist): Declare const.
10         * sysdeps/generic/_strerror.c: Undo last change.
12         * sysdeps/unix/sysv/linux/stat.c: New file.
13         * sysdeps/unix/sysv/linux/fstat.c: New file.
14         * sysdeps/unix/sysv/linux/lstat.c: New file.
15         * sysdeps/unix/sysv/linux/i386/stat.S: File removed.
16         * sysdeps/unix/sysv/linux/i386/fstat.S: File removed.
17         * sysdeps/unix/sysv/linux/i386/lstat.S: File removed.
19 Tue Oct 24 15:22:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
21         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
22         New macro.
23         (PSEUDO): Use it instead of SYSCALL_PIC_SETUP and jmp syscall_error.
25         * sysdeps/unix/sysv/linux/i386/sysdep.S (__syscall_error): Define
26         only #ifndef PIC.
28         * Makeconfig (built-program-cmd): New variable.
29         * sunrpc/Makefile (rpcgen-cmd): Use $(built-program-cmd).
30         * time/Makefile (zic-cmd): Likewise.
32         * hurd/Makefile (user-interfaces): Add hurd/exec_startup.
34         * sunrpc/Makefile (librpcsvc-no-lib-dep): New variable.
35         * extra-lib.mk: If $(lib)-no-lib-dep is defined and MAKELEVEL>0,
36         make `others' rather than `lib-noranlib' depend on the libraries.
38         * sysdeps/unix/configure.in: Check for fchdir syscall.
39         Improve sed script to allow / on rhs without / on lhs.
41 Thu Oct 19 03:47:32 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
43         * sysdeps/unix/sysv/linux/termbits.h: Don't define speed constants.
45         * elf/rtld.c: Include _itoa.h from stdio-common instead of stdio.
47         * sysdeps/unix/sysv/linux/select.S: New file.
49 Wed Oct 18 03:33:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
51         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Use
52         SYSCALL_PIC_SETUP before jumping to syscall_error.
53         * sysdeps/unix/i386/sysdep.h (SYSCALL_PIC_SETUP): New macro.
54         (PSEUDO): Use it before jumping to syscall_error.
55         * sysdeps/unix/i386/sysdep.S [! PIC]: Don't find GOT address;
56         expect it in %ebx on entry.  Pop old %ebx value off stack after
57         using it. 
59         * signal/signal.h [__USE_BSD] (_sys_siglist, sys_siglist): Declare
60         them.
62         * sysdeps/generic/_strerror.c: Declare _sys_errlist and _sys_nerr.
64         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): For magic
65         `fd/', pass the right pointer to strtol to parse the number.
67 Tue Oct 17 23:00:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
69         * sysdeps/mach/_strerror.c: Include stdio-common/_itoa.h instead
70         of stdio/_itoa.h.
72 Tue Oct 17 19:51:17 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
74         * sysdeps/unix/sysv/linux/i386/stat.S [PIC] (__stat): Set GOT
75         register %ebx before calling __xstat through PLT.
77         * sysdeps/unix/sysv/linux/i386/sysdep.S: Fix typo in comment.
79         * sysdeps/unix/sysv/linux/sigset.h: Remove file.
81 Tue Oct 17 01:21:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
83         * hurd/hurdsock.c: Include stdio-common/_itoa.h instead of
84         stdio/_itoa.h.
85         * hurd/hurdlookup.c: Likewise.
86         
87         * hurd/hurd/signal.h: Declare hurd_preempt_signals and
88         hurd_unpreempt_signals.
90         * stdio/stdio.h: Declare __snprintf and __vsnprintf.
92         * stdio-common/psignal.c: Translate signal description strings.
93         * string/strsignal.c: Likewise.
94         * sysdeps/generic/_strerror.c (_strerror_internal): Translate
95         error strings.
96         * sysdeps/mach/_strerror.c: Likewise.
98         * stdio-common/snprintf.c (__snprintf): Renamed from snprintf;
99         call __vsnprintf.
100         (snprintf): Define as weak alias.
101         * stdio/vsnprintf.c (__vsnprintf): Renamed from vsnprintf.
102         (vsnprintf): Define as weak alias.
104 Mon Oct 16 03:22:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
106         * Makerules (install-lib): Filter out %_pic.a; install only the
107         linked shared objects.
109         * locale/Makefile (aux): Add SYS_libc.
110         * locale/SYS_libc.c: New file.
111         * libc-symbols.h [! ASSEMBLER] (_): New macro.
113         * configure.in (libc_cv_asm_set_directive): Link program into
114         conftest instead of letting it default to a.out.
116         * elf/Makefile (install-others): Add missing slash.
118         * elf/ldd.sh.in: Prepend `./' to relative file names so ld.so
119         won't search LD_LIBRARY_PATH.
121         * Makefile (subdirs): Replace stdio with stdio-common and $(stdio).
122         * configure.in: Grok arg --enable-libio.
123         ($stdio = libio): Define USE_IN_LIBIO.
124         * config.h.in (USE_IN_LIBIO): Add #undef.
125         * config.make.in (stdio): New variable, set by configure.
126         * Makeconfig (stdio): New variable.
127         * stdio.h [USE_IN_LIBIO]: Include libio/stdio.h instead of
128         stdio/stdio.h.
129         * stdio-common/Makefile: New file.
130         * stdio/Makefile: Half the contents moved to stdio-common/Makefile.
131         * stdio/_itoa.c: Moved to stdio-common.
132         * stdio/_itoa.h: Moved to stdio-common.
133         * stdio/asprintf.c: Moved to stdio-common.
134         * stdio/bug1.c: Moved to stdio-common.
135         * stdio/bug1.input: Moved to stdio-common.
136         * stdio/bug2.c: Moved to stdio-common.
137         * stdio/bug3.c: Moved to stdio-common.
138         * stdio/bug4.c: Moved to stdio-common.
139         * stdio/bug5.c: Moved to stdio-common.
140         * stdio/bug6.c: Moved to stdio-common.
141         * stdio/bug6.input: Moved to stdio-common.
142         * stdio/bug7.c: Moved to stdio-common.
143         * stdio/dprintf.c: Moved to stdio-common.
144         * stdio/errnobug.c: Moved to stdio-common.
145         * stdio/getline.c: Moved to stdio-common.
146         * stdio/getw.c: Moved to stdio-common.
147         * stdio/perror.c: Moved to stdio-common.
148         * stdio/printf-parse.h: Moved to stdio-common.
149         * stdio/printf-prs.c: Moved to stdio-common.
150         * stdio/printf.c: Moved to stdio-common.
151         * stdio/printf.h: Moved to stdio-common.
152         * stdio/printf_fp.c: Moved to stdio-common.
153         * stdio/psignal.c: Moved to stdio-common.
154         * stdio/putw.c: Moved to stdio-common.
155         * stdio/reg-printf.c: Moved to stdio-common.
156         * stdio/scanf.c: Moved to stdio-common.
157         * stdio/snprintf.c: Moved to stdio-common.
158         * stdio/sprintf.c: Moved to stdio-common.
159         * stdio/sscanf.c: Moved to stdio-common.
160         * stdio/tempnam.c: Moved to stdio-common.
161         * stdio/temptest.c: Moved to stdio-common.
162         * stdio/test-fseek.c: Moved to stdio-common.
163         * stdio/test-fwrite.c: Moved to stdio-common.
164         * stdio/test-popen.c: Moved to stdio-common.
165         * stdio/test_rdwr.c: Moved to stdio-common.
166         * stdio/tmpfile.c: Moved to stdio-common.
167         * stdio/tmpnam.c: Moved to stdio-common.
168         * stdio/tst-fileno.c: Moved to stdio-common.
169         * stdio/tst-printf.c: Moved to stdio-common.
170         * stdio/tstgetln.c: Moved to stdio-common.
171         * stdio/tstgetln.input: Moved to stdio-common.
172         * stdio/tstscanf.c: Moved to stdio-common.
173         * stdio/tstscanf.input: Moved to stdio-common.
174         * stdio/vfprintf.c: Moved to stdio-common.
175         * stdio/vfscanf.c: Moved to stdio-common.
176         * stdio/vprintf.c: Moved to stdio-common.
177         * stdio/xbug.c: Moved to stdio-common.
178         * sysdeps/generic/Makefile (siglist.c rules): Do this in subdir
179         stdio-common instead of stdio.
180         * sysdeps/unix/Makefile (errlist.c rules): Likewise.
181         * stdio-common/asprintf.c [USE_IN_LIBIO]: Call libio primitive
182         function.
183         * stdio-common/dprintf.c: Likewise.
184         * stdio-common/printf.c: Likewise.
185         * stdio-common/scanf.c: Likewise.
186         * stdio-common/snprintf.c: Likewise.
187         * stdio-common/sprintf.c: Likewise.
188         * stdio-common/sscanf.c: Likewise.
189         * stdio-common/vprintf.c: Likewise.
191         * Makerules: Include $(+depfiles) directly instead of generating
192         depend-$(subdir).
193         (depend-$(subdir)): Target removed.
194         (common-clean): Don't remove depend-$(subdir).
196         * sysdeps/unix/sysv/linux/Makefile (rtld-installed-name): New variable.
197         (config-LDFLAGS): Variable removed.
199         * sysdeps/mach/hurd/getcwd.c: Use __file_name_lookup_under.
200         * sysdeps/mach/hurd/bind.c: Likewise.
201         * sysdeps/mach/hurd/access.c: Use new __hurd_file_name_lookup
202         calling convention.
204         * hurd/hurdexec.c: Undo last change (10 Oct 95).
206 Sun Oct 15 21:04:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
208         * hurd/hurd/lookup.h: New file.
209         * hurd/hurdlookup.c (__file_name_lookup_under): New function.
210         (__hurd_file_name_lookup, __hurd_file_name_lookup_retry,
211         __hurd_file_name_split): Rewritten to take callback functions for
212         using any needed init or dtable port, instead of passing in crdir
213         and cwdir ports.  
214         (__file_name_lookup, __file_name_split): Use new calling
215         convention; pass _hurd_ports_use and __getdport as the callback
216         functions. 
218         * sysdeps/mach/hurd/chroot.c: Use __file_name_lookup_under instead
219         of __hurd_file_name_lookup.
220         * sysdeps/mach/hurd/chdir.c: Likewise.
221         * sysdeps/mach/hurd/fchdir.c: Likewise.
222         * hurd/fchroot.c: Likewise.
224         * stdlib/Makefile (mpn-found): Don't omit %.s.
225         (mpn-copy-sysdep): Omit files in nonexistent directories.
226         (copy-mpn): Commit files to CVS.
227         * stdlib/gen-mpn-copy (translations): Update translations for GMP
228         1.906.7.
230         * configure.in (machine): Translate alpha* to alpha/&, hppa* to hppa/&.
232 Sat Oct 14 02:52:36 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
234         * malloc/malloc.c (_malloc_internal): Performance fix.  Move
235         if statement out of loop.
237         * stdio/_itoa.c, stdio/_itoa.h: Complete rewrite.  Much faster
238         implementation using GMP functions.  Contributed by
239         Torbjorn Granlund and Ulrich Drepper.
241         * stdio/test_rdwr.c: Include <errno.h>.
243         * sysdeps/i386/i586/Implies: New file.
245         New highly optimized string functions for i[345]86.
246         * sysdeps/i386/memchr.S, sysdeps/i386/memcmp.S: New files.
247         * sysdeps/i386/stpcpy.S, sysdeps/i386/stpncpy.S: New files.
248         * sysdeps/i386/strchr.S, sysdeps/i386/strcspn.S: New files.
249         * sysdeps/i386/strpbrk.S, sysdeps/i386/strrchr.S: New files.
250         * sysdeps/i386/strspn.S, sysdeps/i386/i486/strcat.S: New files.
251         * sysdeps/i386/i486/strlen.S, sysdeps/i386/i586/strchr.S: New files.
252         * sysdeps/i386/i586/strlen.S: New file.
253         * sysdeps/i386/memchr.c: Removed.  There is now an assembler version.
255         * sysdeps/i386/i586/memcopy.h (WORD_COPY_BWD): Parameters did
256         not correspond to used values.
258         * sysdeps/unix/sysv/linux/nfs/nfs.h: New file.  Simply a wrapper
259         around a kernel header file.
260         * sysdeps/unix/sysv/linux/Dist: Add it.
261         * sysdeps/unix/sysv/linux/Makefile [$(subdir)=sunrpc] (headers):
262         Likewise.
264         * sysdeps/unix/sysv/linux/local_lim.h: Rewrite.  Instead of
265         defining ourself we use a kernel header file.
267         * sysdeps/unix/sysv/linux/i386/sysdep.h (DO_CALL): Optimize system
268         call handler for i586.
270         * sysdeps/unix/sysv/linux/sys/param.h: Add copyright and clean up.
272 Thu Oct 12 15:45:32 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
274         * hurd/hurd.h (file_name_lookup_under): Declare it.
275         * hurd/Makefile (headers): Add hurd/lookup.h.
277         * hurd/hurdinit.c (_hurd_ports_use): New function.
278         * hurd/hurd.h (_hurd_ports_use): Declare it.
279         (hurd_invoke_translator, hurd_file_name_lookup, hurd_file_name_split,
280         hurd_file_name_lookup_retry): Remove these decls.
281         * hurd/Makefile (routines): Remove invoke-trans.
283 Wed Oct 11 00:00:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
285         * sysdeps/i386/dl-machine.h (elf_machine_rel): Use +=, not =, to
286         apply R_386_PC32 reloc.
288         * Makeconfig (config-LDFLAGS): Add missing slash.
290         * sysdeps/mach/hurd/profil.c (fork_profil): Only call
291         update_waiter if profiling was enabled in the parent.
293         * csu/initfini.c: Don't pass -f flag to cp.
295 Tue Oct 10 23:08:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
297         * Makerules (build-shlib): Pass -rpath and -rpath-link options.
298         (LDFLAGS-c.so): Don't pass -dynamic-linker here.
299         * Makeconfig (+link): Pass $(sysdep-LDFLAGS).
300         (link-libc): Pass -rpath and -rpath-link options.
302         * MakeTAGS (all-dirs): Omit CVS directories.
303         Specify vpath directives to find source files in $(all-dirs).
304         (sources, headers): Append sources and headers from $(all-dist) to
305         these. 
306         (all-dist): Filter them out of this.
307         (all-headers, all-sources): Use $(shell find ...) instead of
308         $(wildcard ...).
310         * sysdeps/mach/hurd/Makefile (sysdep-LDFLAGS): New variable; pass
311         -rpath-link.
313         * hurd/hurdexec.c: Pass poly and dealloc args to __file_exec.
315         * elf/Makefile (install-others): Add missing $.
317 Mon Oct  9 02:54:14 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
319         * mach/Makefile ($(objpfx)errsystems.c): Rule reenabled.
321         * Makeconfig (config-LDFLAGS): Define to
322         -Wl-dynamic-linker=$(libdir)$(rtld-installed-name).
323         (rtld-installed-name): New variable.
324         * elf/Makefile (install-lib): Variable removed.
325         (install-others): Define this instead, to
326         $(libdir)(rtld-installed-name). 
327         ($(libdir)(rtld-installed-name)): New target; install from ld.so.
329         * elf/ldd.sh.in: New file.
330         * elf/Makefile (distribute): Add ldd.sh.in.
331         (install-bin): Add ldd.
332         ($(objpfx)ldd: ldd.sh.in): New rule.
334         * sysdeps/mach/hurd/dl-sysdep.c: Use __hurd_fail throughout.
335         * hurd/hurd.h (__hurd_fail): Replace macro with inline function.
336         Translate some Mach errors to Hurd errors.
338         * elf/rtld.c (dl_main): Under --list, print msg if executable is
339         statically linked.
341         * elf/dl-load.c (_dl_map_object_from_fd): Rewrote program header
342         table processing.
344 Sat Oct  7 01:25:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
346         * sysdeps/stub/machine-gmon.h: Add #error.
348 Fri Oct  6 01:49:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
350         * elf/dynamic-link.h (elf_get_dynamic_info): If DYN is null, don't
351         examine it.
353 Fri Sep 29 03:43:51 1995  Paul Eggert  <eggert@twinsun.com>
355         Rewrite mktime from scratch for performance, and for correctness
356         in the presence of leap seconds.
358         * time/mktime.c (ydhms_tm_diff, not_equal_tm, print_tm, check_result):
359         New functions.
360         (LEAP_SECONDS_POSSIBLE, CHAR_BIT, INT_MIN, INT_MAX,
361         TIME_T_MIN, TIME_T_MAX, TM_YEAR_BASE, EPOCH_YEAR): New macros.
362         <limits.h>, <stdlib.h>: New #includes.
363         (main): Support tests with given broken-down value; support benchmarks.
364         (__mon_lengths, debugging_enabled, printtm, dist_tm, doit,
365         do_normalization, normalize, BAD_STRUCT_TM, SKIP_VALUE,
366         <ctype.h>): Remove.
368         * time/time.h, time/mktime.c (__mktime_internal): New offset arg.
369         * time/mktime.c (mktime), time/timegm.c (timegm): Use it.
371         * time/mktime.c (__mon_yday): New variable; replaces `__mon_lengths'.
372         time/offtime.c (__offtime), time/tzset.c (compute_change): Use it.
373         
374         * time/offtime.c (__offtime): Remove useless assignment
375         `tp->tm_isdst = -1'.
377         * manual/maint.texi: Update credits.
379 Fri Oct  6 00:28:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
381         * sysdeps/unix/common/readv.S: Moved to sysdeps/unix/bsd.
382         * sysdeps/unix/common/writev.S: Moved to sysdeps/unix/bsd.
383         * sysdeps/unix/sysv/linux/readv.c: File removed.
384         * sysdeps/unix/sysv/linux/writev.c: File removed.
385         * sysdeps/unix/configure.in: Check for readv and writev syscalls.
387         * sysdeps/unix/configure.in: If eval doesn't set $unix_srcname,
388         set it to $unix_syscall instead of $unix_function.
390 Thu Oct  5 00:59:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
392         * elf/rtld.c (dl_main): Grok --list flag.
393         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Ignore -- args.
395 Wed Oct  4 00:21:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
397         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_message): New function.
398         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_message): New function.
399         * elf/link.h (_dl_sysdep_message): Declare it.
401         * sysdeps/unix/Makefile ($(common-objpfx)ioctls): Remove NULL from
402         the list.
404         * time/northamerica: Corrections to Canada data from ADO 95i.
406         * sysdeps/unix/sysv/linux/Makefile (headers): Don't append to this
407         unconditionally.  In socket subdir, append sys/socketcall.h; in
408         time subdir, append sys/timex.h.
409         (config-LDFLAGS): New variable.
410         * sysdeps/unix/sysv/linux/Dist: New file.
411         * Makeconfig (+link): Pass $(config-LDFLAGS) before $(LDFLAGS).
413         * sysdeps/generic/stpncpy.c: Don't increment DEST when zero-filling.
415         * elf/dlopen.c (dlopen): Don't pass USER_ENTRY arg to _dl_map_object.
417 Sat Sep 30 11:47:05 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
419         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): If started by
420         kernel with args on stack, point _dl_hurd_data at zero data
421         instead of garbage.  When ld.so run as program, grok args
422         -LIB=MEMOBJ and pre-load shared object files found in memory
423         objects loaded by the boot loader.
425         * elf/link.h (struct link_map): New member `l_entry'.
426         (_dl_map_object, _dl_map_object_from_fd): Remove last arg ENTRY_POINT.
427         * elf/dl-load.c (_dl_map_object, _dl_map_object_from_fd): Remove
428         last arg ENTRY_POINT.  Store the entry point location in the
429         `l_entry' member of the new map.
430         * elf/rtld.c (dl_main): Don't pass USER_ENTRY arg to
431         _dl_map_object.  When run as program, set *USER_ENTRY to L->l_entry.
432         * elf/dl-init.c (_dl_init_next): Don't pass ENTRY_POINT arg to
433         _dl_map_object.
435         * posix/tstgetopt.c, posix/tstgetopt.args: Test long options too.
437         * sysdeps/unix/sysv/linux/i386/init-first.c (init): Save, set, and
438         restore %ebx by hand for personality syscall.
439         GCC cannot deal with spilling the dedicated GOT register.
441         * misc/Makefile (routines): Add mntent, which was somehow omitted.
443 Fri Sep 29 15:07:10 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
445         * sysdeps/unix/sysv/linux/adjtime.c (__adjtime):
446         Change name of field `mode' in `struct timex' to `modes'.
447         Linux-1.3.28 updates this name according to RFC 1489.
449 Thu Sep 28 13:05:54 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
451         Merge new message handling code from GNU gettext, by Drepper.
452         * intl: New directory.
453         * Makefile (subdirs): Add intl.
455         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Return
456         USER_ENTRY instead of storing it on our stack.
458         * elf/rtld.c (rtld_command): Variable removed.
459         (_dl_skip_args): New variable.
460         (dl_main): Increment _dl_skip_args instead of setting rtld_command.
461         If the link_map for the executable itself is not first in the chain,
462         make it so.
463         * sysdeps/i386/dl-machine.h (RTLD_START): Use _dl_skip_args as
464         count of args to skip.
466 Thu Sep 28 09:20:04 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
468         * stdlib/strtod.c (STRTOF): Fix handling of numbers with lots of
469         leading zeroes. 
470         
471 Wed Sep 27 00:27:25 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
473         * sysdeps/mach/hurd/getcwd.c (__getcwd): Renamed from getcwd.
474         (getcwd): Define as weak alias.
475         * sysdeps/posix/getcwd.c: Likewise.
476         * sysdeps/stub/getcwd.c: Likewise.
477         * posix/unistd.h: Declare __getcwd.
479         * string/string.h: Declare __strcasecmp.
480         * sysdeps/generic/strcasecmp.c (__strcasecmp): Renamed from
481         strcasecmp.
482         (strcasecmp): Define as weak alias.
484         * string/string.h: Declare __stpcpy.
485         * sysdeps/generic/stpcpy.c (__stpcpy): Renamed from stpcpy.
486         (stpcpy): Define as weak alias.
488         * sysdeps/unix/sysv/linux/Implies: Add unix/common.
490         * sysdeps/unix/i386/sysdep.h [HAVE_ELF] (ASM_TYPE_DIRECTIVE):
491         Don't use `type' for arg name, since we are using it as a keyword
492         in the rhs. 
494         * sysdeps/unix/configure.in: Check for syscalls getpriority,
495         setpriority, getrlimit, setrlimit.
497         * sysdeps/posix/truncate.c: Include fcntl.h.
499         * sysdeps/generic/getdomain.c: Include string.h for strncpy decl.
501         * sysdeps/stub/getpriority.c: Don't include obsolete gnu-stabs.h;
502         use new stub_warning syntax.
503         * sysdeps/stub/setpriority.c: Likewise.
504         * sysdeps/stub/__longjmp.c: Likewise.
505         * sysdeps/stub/_exit.c: Likewise.
506         * sysdeps/stub/accept.c: Likewise.
507         * sysdeps/stub/acos.c: Likewise.
508         * sysdeps/stub/alarm.c: Likewise.
509         * sysdeps/stub/asin.c: Likewise.
510         * sysdeps/stub/atan2.c: Likewise.
511         * sysdeps/stub/bind.c: Likewise.
512         * sysdeps/stub/cbrt.c: Likewise.
513         * sysdeps/stub/chroot.c: Likewise.
514         * sysdeps/stub/closedir.c: Likewise.
515         * sysdeps/stub/connect.c: Likewise.
516         * sysdeps/stub/cos.c: Likewise.
517         * sysdeps/stub/cosh.c: Likewise.
518         * sysdeps/stub/ctermid.c: Likewise.
519         * sysdeps/stub/cuserid.c: Likewise.
520         * sysdeps/stub/defs.c: Likewise.
521         * sysdeps/stub/exp.c: Likewise.
522         * sysdeps/stub/fmod.c: Likewise.
523         * sysdeps/stub/frexp.c: Likewise.
524         * sysdeps/stub/fsync.c: Likewise.
525         * sysdeps/stub/getcwd.c: Likewise.
526         * sysdeps/stub/getenv.c: Likewise.
527         * sysdeps/stub/gethostid.c: Likewise.
528         * sysdeps/stub/getlogin.c: Likewise.
529         * sysdeps/stub/getpeername.c: Likewise.
530         * sysdeps/stub/getrlimit.c: Likewise.
531         * sysdeps/stub/getsockname.c: Likewise.
532         * sysdeps/stub/getsockopt.c: Likewise.
533         * sysdeps/stub/listen.c: Likewise.
534         * sysdeps/stub/log.c: Likewise.
535         * sysdeps/stub/log10.c: Likewise.
536         * sysdeps/stub/mkfifo.c: Likewise.
537         * sysdeps/stub/morecore.c: Likewise.
538         * sysdeps/stub/nice.c: Likewise.
539         * sysdeps/stub/nlist.c: Likewise.
540         * sysdeps/stub/opendir.c: Likewise.
541         * sysdeps/stub/pipestream.c: Likewise.
542         * sysdeps/stub/ptrace.c: Likewise.
543         * sysdeps/stub/putenv.c: Likewise.
544         * sysdeps/stub/readdir.c: Likewise.
545         * sysdeps/stub/reboot.c: Likewise.
546         * sysdeps/stub/recv.c: Likewise.
547         * sysdeps/stub/recvfrom.c: Likewise.
548         * sysdeps/stub/rename.c: Likewise.
549         * sysdeps/stub/rewinddir.c: Likewise.
550         * sysdeps/stub/seekdir.c: Likewise.
551         * sysdeps/stub/send.c: Likewise.
552         * sysdeps/stub/sendto.c: Likewise.
553         * sysdeps/stub/setegid.c: Likewise.
554         * sysdeps/stub/seteuid.c: Likewise.
555         * sysdeps/stub/setgroups.c: Likewise.
556         * sysdeps/stub/sethostid.c: Likewise.
557         * sysdeps/stub/sethostname.c: Likewise.
558         * sysdeps/stub/setjmp.c: Likewise.
559         * sysdeps/stub/setrlimit.c: Likewise.
560         * sysdeps/stub/setsockopt.c: Likewise.
561         * sysdeps/stub/shutdown.c: Likewise.
562         * sysdeps/stub/signal.c: Likewise.
563         * sysdeps/stub/sigsuspend.c: Likewise.
564         * sysdeps/stub/sin.c: Likewise.
565         * sysdeps/stub/sinh.c: Likewise.
566         * sysdeps/stub/socket.c: Likewise.
567         * sysdeps/stub/socketpair.c: Likewise.
568         * sysdeps/stub/sqrt.c: Likewise.
569         * sysdeps/stub/sync.c: Likewise.
570 M sysd-stdio.c
571         * sysdeps/stub/system.c: Likewise.
572         * sysdeps/stub/tan.c: Likewise.
573         * sysdeps/stub/tanh.c: Likewise.
574         * sysdeps/stub/tcdrain.c: Likewise.
575         * sysdeps/stub/tcflow.c: Likewise.
576         * sysdeps/stub/tcgetpgrp.c: Likewise.
577         * sysdeps/stub/tcsendbrk.c: Likewise.
578         * sysdeps/stub/tcsetattr.c: Likewise.
579         * sysdeps/stub/tcsetpgrp.c: Likewise.
580         * sysdeps/stub/telldir.c: Likewise.
581         * sysdeps/stub/tempname.c: Likewise.
582         * sysdeps/stub/ttyname.c: Likewise.
583         * sysdeps/stub/ttyname_r.c: Likewise.
584         * sysdeps/stub/utime.c: Likewise.
586         * gmon/gmon.c (moncontrol): Don't cast buffer arg to profil.
588         * time/mktime.c (localtime_r): Use 0 instead of NULL.
590         * config.make.in (AS): New variable; set to `$(CC) -c'.
592         * posix/unistd.h [__USE_BSD]: Declare profil.
594         * elf/dl-load.c (_dl_map_object_from_fd): New function, broken out
595         of _dl_map_object.
596         (_dl_map_object): Call it.
597         * elf/link.h (_dl_map_object_from_fd): Declare it.
599 Tue Sep 26 16:50:17 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
601         * locale/libintl.h: Rewritten by Ulrich Drepper for use with GNU
602         gettext code.
604         * sysdeps/unix/sysv/linux/sys/param.h: New file.
605         * sysdeps/unix/sysv/linux/Subdirs: File removed.
607         * libc-symbols.h (_LIBC): Define to 1, not just empty.
609         * gmon: New directory of profiling code, incorporated from
610         4.4BSD-Lite and modified.
611         * sysdeps/i386/machine-gmon.h: New file.
612         * sysdeps/stub/machine-gmon.h: New file.
613         * sysdeps/mach/hurd/profil.c: New file.
614         * sysdeps/stub/profil.c: New file.
615         * sysdeps/unix/bsd/profil.S: New file.
616         * Makefile (subdirs): Add gmon.
617         * csu/gmon-start.c: New file.
618         * csu/Makefile (extra-objs): Add gmon-start.o,
619         g$(start-installed-name).
620         (install-lib, omit-deps): Add g$(start-installed-name).
621         ($(objpfx)g$(start-installed-name)): New target.
623 Fri Sep 22 14:24:25 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
625         * sysdeps/mach/hurd/Makefile: Elide sunrpc from $(subdirs) for the
626         time being.
628 Thu Sep 21 00:03:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
630         * sysdeps/unix/configure.in: Check for `profil' syscall.
632         * manual/Makefile (infodir, prefix, INSTALL, INSTALL_DATA): Variables
633         removed.
635         * time/africa, time/asia, time/europe, time/northamerica,
636         time/yearistype: New data from ADO 95h.
638         * Makerules (build-shlib): Use $(@F:lib%.so=%) in place of
639         $(notdir $*), so it wins for the explicit libc.so rule as well as the
640         pattern rule. 
642         * sysdeps/stub/sys/sem_buf.h (union semun): New type.
644         * sysdeps/mach/hurd/i386/init-first.c (init1) [PIC]: Call
645         __libc_global_ctors.
646         * sysdeps/i386/init-first.c: Rewritten.
647         * sysdeps/unix/sysv/linux/i386/init-first.S: File removed.
648         * sysdeps/unix/sysv/linux/i386/init-first.c: New file.
650         * sysdeps/unix/sysv/linux/i386/fpu_control.h: Fix name in decl of
651         ___fpu_control.
653         * Makerules (build-shlib): New canned sequence, broken out of
654         lib%.so rule.  Link in $^ instead of just $<.
655         (lib%.so: lib%_pic.a): Use it.
656         (libc.so): New target; use $(build-shlib) for cmds, but also depend
657         on soinit.so first and sofini.so last.
659         * elf/soinit.c: New file.
660         * elf/sofini.c: New file.
661         * elf/Makefile (distribute): Add soinit.c and sofini.c.
662         (extra-objs): Add soinit.so and sofini.so.
664         * sysvipc/sys/shm.h (shmat): Fix return type to char *.
665         * sysdeps/stub/sys/ipc_buf.h (key_t): Type removed.
667         * misc/syslog.c (vsyslog): Rewritten using open_memstream to
668         dynamically allocate buffers.
670         * Makerules (install-lib-nosubdir): Make this, rather than
671         install-no-libc.a, depend on the installed shared libraries.
673 Wed Sep 20 18:02:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
675         * locale/locale.c: Include errno.h.
676         * locale/localedef.c: Likewise.
678 Tue Sep 19 00:02:06 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
680         * Makefile (distclean-1): Remove config.cache, config.log, config.h.
681         (parent-mostlyclean): Remove all flavors of the parent library.
683         * misc/mntent.c (getmntent): Skip multiple whitespace chars
684         between fields.
686         * hurd/hurdstartup.c (_hurd_startup): If RPC returns
687         EXEC_STACK_ARGS flag, get args from stack.
688         If args on stack but have info from RPC, relocate args on stack to make
689         space for struct hurd_startup_data.
691 Mon Sep 18 15:06:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
693         * elf/dl-object.c: Include errno.h.
694         * posix/execvp.c: Likewise.
695         * dirent/scandir.c: Likewise.
696         * sysdeps/posix/system.c: Likewise.
697         * sysdeps/generic/setenv.c: Likewise.
698         * stdlib/msort.c: Likewise.
699         * stdio/memstream.c: Likewise.
700         * stdio/fclose.c: Likewise.
701         * stdio/getdelim.c: Likewise.
702         * stdio/setvbuf.c: Likewise.
703         * sysdeps/ieee754/ldexp.c: Likewise.
704         * locale/locfile-parse.c: Likewise.
706         * stdlib/lcong48_r.c: Don't check for null argument; let it fault.
707         * stdlib/seed48_r.c: Likewise.
708         * stdlib/srand48_r.c: Likewise.
709         * stdlib/jrand48_r.c: Likewise.
710         * stdlib/nrand48_r.c: Likewise.
712         * Makeconfig (+gccwarn): Remove -Wbad-function-cast, which seems
713         to be useless.
715 Mon Sep 18 12:39:22 1995  Paul Eggert  <eggert@twinsun.com>
717         * mktime.c (localtime_r): Add substitute if the system doesn't
718         provide one.
720 Mon Sep 18 14:39:20 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
722         * time/gmtime.c (gmtime_r): Define as weak alias.
723         * time/localtime.c (localtime_r): Define as weak alias.
724         * time/time.h [__USE_REENTRANT] (gmtime_r, localtime_r): Declare them.
726         * errno.h: Only define _ERRNO_H #ifndef __need_Emath.
727         #undef __need_Emath after including errnos.h.
728         [_ERRNO_H]: Protect decls with this.
730 Sun Sep 17 08:22:12 1995  Paul Eggert  <eggert@twinsun.com>
732         Fix mktime so that it does not write over localtime's returned value.
733         * localtime.c (__localtime_r): New function, with extra arg
734         specifying where to store result.
735         (localtime): Use it.
736         (_tmbuf): New var.
737         * gmtime.c (__gmtime_r, gmtime, _tmbuf): Likewise.
738         * mktime.c (__mktime_internal): Conversion function is now
739         __localtime_r style, not localtime style.
740         (mktime): Pass __localtime_r, not localtime.
741         * timegm.c (timegm): Pass __gmtime_r, not gmtime.
742         * offtime.c (__offtime): New arg specifying where to store result.
743         * time.h (__mktime_internal, __offtime): Adjust decls accordingly.
744         (__gmtime_r, __localtime_r): New decls.
746         * time/localtime.c: <stddef.h>, <ctype.h>, <stdio.h>,
747         <stdlib.h>, <string.h>: Remove includes.
748         <errno.h>: Add include.
750         * time/mktime.c, time/time.h, time/timegm.c (__mktime_internal):
751         Renamed from _mktime_internal to avoid namespace pollution.
753         * time/gmtime.c: Clear tm_isdst.
755 Mon Sep 18 01:58:40 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
757         * misc/efgcvt_r.c (ecvt_r, fcvt_r): Last arg is size_t, not int.
758         * stdlib/stdlib.h (ecvt_r, fcvt_r): Fix type of last arg: make it
759         size_t.
761         * sysdeps/mach/hurd/fpathconf.c: Call __io_pathconf instead of
762         __file_pathconf.
763         * sysdeps/mach/hurd/pathconf.c: Likewise.
765         * Makefile (subdirs): Add sysvipc.
767         * stdlib/srand48_r.c (srand48_r): Use UL suffix for huge constant.
768         * stdlib/drand48-iter.c (__drand48_iterate): Likewise.
770 Sun Sep 17 18:29:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
772         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): Call
773          __file_set_size instead of __file_truncate.
775         * features.h (__USE_REENTRANT): New macro.
777         * sysdeps/mach/hurd/truncate.c: Call __file_set_size instead of
778         __file_truncate.
779         * sysdeps/mach/hurd/ftruncate.c: Likewise.
781         * sysdeps/unix/sysv/linux/dl-machine.h: File removed.
783 Sat Sep 16 17:47:19 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
785         * elf/elf.h (AT_GID): Fix typo: Read -> Real.
787         * misc/efgvt_r.c: New file.  Reentrant version of [efg]cvt functions.
788         * misc/efgcvt.c: Rewrite to use reentrant functions.
789         * misc/search.h: Many decls for hsearch functions.
790         * misc/hsearch_r.c: New file.  Reentrant version of functions from
791         hsearch family.
792         * misc/hsearch.c, misc/tsearch.c: New files.
793         * misc/Makefile (routines): Add efgcvt_r, hsearch_r, hsearch, tsearch.
795         * posix/unistd.h (ttyname_r): Add prototype for new function.
797         * stdlib/drand48_r.c, stdlib/erand48_r.c, stdlib/jrand48_r.c,
798         stdlib/lrand48_r.c, stdlib/mrand48_r.c, stdlib/nrand48_r.c,
799         stdlib/seed48_r.c, stdlib/srand48_r.c, stdlib/lcong48_r.c,
800         stdlib/drand48-iter.c: New files implementing reentrant versions
801         of functions from drand48 family.
802         * stdlib/seed48.c, stdlib/drand48.c, stdlib/erand48.c,
803         stdlib/jrand48.c, stdlib/lrand48.c, stdlib/mrand48.c,
804         stdlib/nrand48.c, stdlib/srand48.c, stdlib/lcong48.c:
805         Rewrite to use reentrant versions.
806         * stdlib/a64l.c, stdlib/l64a.c: New files.  Implement a64l()
807         and l64a() functions from SysV library.
808         * stdlib/Makefile (routines): Add drand48_r, erand48_r, lrand48_r,
809         nrand48_r, mrand48_r, jrand48_r, srand48_r, seed48_r, lcong48_r,
810         drand48-iter, a64l, l64a.
811         * stdlib/stdlib.h: Declare them.
813         * stdlib/random_r.c: New file.  Reentrant version of functions
814         from random family.
815         * stdlib/stdlib.h: Declare them.
816         * stdlib/random.c: Rewrite to use reentrant functions.
818         * string/strerror_r.c: New file.  Reentrant version.
819         * string/strerror.c: Change for new _strerror_internal form.
820         * string/Makefile (routines): Add strerror_r.
822         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Set default
823         value of user_entry to `_start'.
824         Close AT_ENTRY case with `break'.
826         * sysdeps/generic/strstr.c: New and much faster implementation
827         by Stephen R. van den Berg.
829         * sysdeps/generic/_strerror.c: _strerror_internal now takes
830         three argument and has and explicit buffer length.
831         * sysdeps/mach/_strerror.c: Change for new interface with three
832         arguments.
833         * stdio/perror.c, stdio/vfprintf.c: Callers changed.
834         
835         * sysdeps/mach/hurd/ttyname_r.c: New file.  Reentrant version.
836         * sysdeps/posix/ttyname_r.c: New file.  Reentrant version.
837         * sysdeps/stub/ttyname_r: New file.  Define as dummy function.
839         * sysdeps/posix/utimes.c: Include <utime.h> for prototype.
840         (utimes): First parameter to utime must be file, not path.
842         * sysdeps/posix/sysconf.c (__sysconf): Test for CLK_TCK in case
843         _SC_CLK_TCK and return it when available.
844         Test for STREAM_MAX in case _SC_STREAM_MAX and return it when
845         available.
846         Add case for _SC_2_LOCALEDEF which is now available.
848         * posix/sys/types.h [__USE_SVID] (key_t): New type.
849         * sysvipc/Makefile, sysvipc/ftok.c, sysvipc/sys/ipc.h,
850         sysvipc/sys/msg.h, sysvipc/sys/sem.h, sysvipc/sys/shm.h,
851         sysdeps/stub/sys/msq_buf.h, sysdeps/stub/sys/sem_buf.h,
852         sysdeps/stub/sys/shm_buf.h, sysdeps/stub/sys/ipc_buf.h,
853         sysdeps/stub/semctl.c, sysdeps/stub/semget.c, sysdeps/stub/semop.c,
854         sysdeps/stub/shmat.c, sysdeps/stub/shmctl.c, sysdeps/stub/shmdt.c,
855         sysdeps/stub/shmget.c, sysdeps/stub/msgctl.c, sysdeps/stub/msgget.c,
856         sysdeps/stub/msgrcv.c, sysdeps/stub/msgsnd.c: New files.
857         Add implementation of System V IPC.
859 Fri Sep 15 21:34:28 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
861         * hurd/hurdsig.c: Include <hurd/crash.h> in place of <hurd/core.h>.
862         (write_corefile): Call __crash_dump_task instead of __core_dump_task.
863         Use envariable CRASHSERVER instead of CORESERVER.
864         * hurd/Makefile (user-interfaces): Replace hurd/core with hurd/crash.
866 Tue Sep 12 14:30:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
868         * misc/mntent.c: New file.
869         * misc/mntent.h: New file.
870         * misc/Makefile (headers): Added mntent.h.
871         (routines): Added mntent.
872         * misc/fstab.c: Rewritten using mntent functions.
874 Mon Sep 11 14:00:14 1995  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
876         * posix/glob.c (glob): Comment fix.
878 Fri Sep  8 16:25:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
880         * libc-symbols.h [HAVE_ELF] (symbol_set_declare): Declare the
881         symbols weak.
883         * conf/portability.h (NEED_INETADDR, NEED_INETATON): Define to 1,
884         not empty.
886 Fri Sep  8 16:32:12 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
888         * sysdeps/unix/sysv/linux/Implies,
889         sysdeps/unix/sysv/linux/Makefile, sysdeps/unix/sysv/linux/Subdirs,
890         sysdeps/unix/sysv/linux/accept.S, sysdeps/unix/sysv/linux/adjtime.c,
891         sysdeps/unix/sysv/linux/adjtimex.S, sysdeps/unix/sysv/linux/bind.S,
892         sysdeps/unix/sysv/linux/connect.S, sysdeps/unix/sysv/linux/direct.h,
893         sysdeps/unix/sysv/linux/dl-machine.h, sysdeps/unix/sysv/linux/errnos.h,
894         sysdeps/unix/sysv/linux/fork.S, sysdeps/unix/sysv/linux/gethostid.c,
895         sysdeps/unix/sysv/linux/gethostname.C,
896         sysdeps/unix/sysv/linux/getpeername.S,
897         sysdeps/unix/sysv/linux/getpgid.S, sysdeps/unix/sysv/linux/getpgrp.S,
898         sysdeps/unix/sysv/linux/getsockname.S,
899         sysdeps/unix/sysv/linux/getsockopt.S, sysdeps/unix/sysv/linux/gtty.S,
900         sysdeps/unix/sysv/linux/listen.S, sysdeps/unix/sysv/linux/local_lim.h,
901         sysdeps/unix/sysv/linux/madvise.c, sysdeps/unix/sysv/linux/msgctl.c,
902         sysdeps/unix/sysv/linux/msgget.c, sysdeps/unix/sysv/linux/msgrcv.c,
903         sysdeps/unix/sysv/linux/msgsnd.c, sysdeps/unix/sysv/linux/pipe.S,
904         sysdeps/unix/sysv/linux/poll.c, sysdeps/unix/sysv/linux/readv.c,
905         sysdeps/unix/sysv/linux/recv.S, sysdeps/unix/sysv/linux/recvfrom.S,
906         sysdeps/unix/sysv/linux/recvmsg.S, sysdeps/unix/sysv/linux/semctl.c,
907         sysdeps/unix/sysv/linux/semget.c, sysdeps/unix/sysv/linux/semop.c,
908         sysdeps/unix/sysv/linux/send.S, sysdeps/unix/sysv/linux/sendmsg.S,
909         sysdeps/unix/sysv/linux/sendto.S, sysdeps/unix/sysv/linux/setegid.c,
910         sysdeps/unix/sysv/linux/seteuid.c, sysdeps/unix/sysv/linux/sethostid.c,
911         sysdeps/unix/sysv/linux/setpgid.c, sysdeps/unix/sysv/linux/setpgrp.c,
912         sysdeps/unix/sysv/linux/setsid.S, sysdeps/unix/sysv/linux/setsockopt.S,
913         sysdeps/unix/sysv/linux/settimeofday.S,
914         sysdeps/unix/sysv/linux/shmat.c, sysdeps/unix/sysv/linux/shmctl.c,
915         sysdeps/unix/sysv/linux/shmdt.c, sysdeps/unix/sysv/linux/shmget.c,
916         sysdeps/unix/sysv/linux/shutdown.S,
917         sysdeps/unix/sysv/linux/sigaction.S, sysdeps/unix/sysv/linux/signal.S,
918         sysdeps/unix/sysv/linux/sigpending.S, sysdeps/unix/sysv/linux/sigset.h,
919         sysdeps/unix/sysv/linux/sockaddrcom.h,
920         sysdeps/unix/sysv/linux/socketpair.S, sysdeps/unix/sysv/linux/speed.c,
921         sysdeps/unix/sysv/linux/statbuf.h, sysdeps/unix/sysv/linux/stty.S,
922         sysdeps/unix/sysv/linux/syscall.h, sysdeps/unix/sysv/linux/sysconf.c,
923         sysdeps/unix/sysv/linux/tcdrain.c, sysdeps/unix/sysv/linux/tcflow.c,
924         sysdeps/unix/sysv/linux/tcflush.c, sysdeps/unix/sysv/linux/tcgetattr.c,
925         sysdeps/unix/sysv/linux/tcsetattr.c,
926         sysdeps/unix/sysv/linux/termbits.h, sysdeps/unix/sysv/linux/ualarm.c,
927         sysdeps/unix/sysv/linux/ulimit.c, sysdeps/unix/sysv/linux/usleep.c,
928         sysdeps/unix/sysv/linux/utsnamelen.h, sysdeps/unix/sysv/linux/vfork.c,
929         sysdeps/unix/sysv/linux/wait.c, sysdeps/unix/sysv/linux/wait4.S,
930         sysdeps/unix/sysv/linux/waitpid.c, sysdeps/unix/sysv/linux/writev.c:
931         New Linux/ELF specific, architecture independent files.
932         * sysdeps/unix/sysv/linux/i386/Dist,
933         sysdeps/unix/sysv/linux/i386/Makefile,
934         sysdeps/unix/sysv/linux/i386/brk.S,
935         sysdeps/unix/sysv/linux/i386/fcntlbits.h,
936         sysdeps/unix/sysv/linux/i386/fpu_control.c,
937         sysdeps/unix/sysv/linux/i386/fpu_control.h,
938         sysdeps/unix/sysv/linux/i386/fstat.S,
939         sysdeps/unix/sysv/linux/i386/fxstat.S,
940         sysdeps/unix/sysv/linux/i386/ieee_fpu.c,
941         sysdeps/unix/sysv/linux/i386/init-first.S,
942         sysdeps/unix/sysv/linux/i386/ipc.S,
943         sysdeps/unix/sysv/linux/i386/lstat.S,
944         sysdeps/unix/sysv/linux/i386/lxstat.S,
945         sysdeps/unix/sysv/linux/i386/mknod.S,
946         sysdeps/unix/sysv/linux/i386/mmap.S,
947         sysdeps/unix/sysv/linux/i386/sbrk.S,
948         sysdeps/unix/sysv/linux/i386/setfpucw.c,
949         sysdeps/unix/sysv/linux/i386/signum.h,
950         sysdeps/unix/sysv/linux/i386/socket.S,
951         sysdeps/unix/sysv/linux/i386/stat.S,
952         sysdeps/unix/sysv/linux/i386/syscall.S,
953         sysdeps/unix/sysv/linux/i386/sysdep.S,
954         sysdeps/unix/sysv/linux/i386/sysdep.h,
955         sysdeps/unix/sysv/linux/i386/xmknod.S,
956         sysdeps/unix/sysv/linux/i386/xstat.S:
957         New Linux i386/ELF specific files.
958         * sysdeps/unix/sysv/linux/sys/ipc_buf.h,
959         sysdeps/unix/sysv/linux/sys/mman.h,
960         sysdeps/unix/sysv/linux/sys/msq_buf.h,
961         sysdeps/unix/sysv/linux/sys/sem_buf.h,
962         sysdeps/unix/sysv/linux/sys/shm_buf.h,
963         sysdeps/unix/sysv/linux/sys/socketcall.h,
964         sysdeps/unix/sysv/linux/sys/timex.h:
965         New Linux/ELF specific, architecture independent header files.
966         * sysdeps/unix/sysv/sysv4/linux: Tree removed.
967         
968 Thu Sep  7 17:05:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
970         * stdlib/msort.c (msort_with_tmp): Fixed alignment test.  B1 and
971         B2 are always congruent; just test that B1 is aligned.
973 Wed Sep  6 19:41:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
975         * elf/dl-lookup.c (_dl_lookup_symbol): Test WEAK_VALUE.s rather
976         than WEAK_VALUE.a to see if a weak value has been set.  A valid
977         weak value may set WEAK_VALUE.a to 0.
979 Fri Sep  1 16:16:12 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
981         * sysdeps/mach/hurd/i386/longjmp-ts.c: Use new array format for
982         jmp_buf.
984         * libc-symbols.h (link_warning): Take new first arg SYMBOL; ask
985         for a warning on references to that specific symbol, not the
986         entire containing object file.
987         (stub_warning): Pass symbol name to link_warning.
988         * stdio/gets.c: Pass function name in link_warning invocation.
990         * hurd/intr-msg.c: Treat apparent EINTR return from msg trap like
991         MACH_SEND_INTERRUPTED.  That indicates interrupt_operation was
992         sent, but failed.
994         * stdlib/msort.c: Include memcopy.h.
995         (msort_with_tmp): If operating on aligned op_t words, use direct word
996         fetches and stores.
998         * sysdeps/i386/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC): Add
999         missing backslash.
1001 Thu Aug 31 13:23:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1003         * sysdeps/unix/i386/brk.S [PIC]: Set __curbrk through the GOT.
1005         Rewrote i386 setjmp code in assembly, so as to avoid fighting
1006         with the compiler for the register values.
1007         * sysdeps/i386/setjmp.S, sysdeps/i386/__longjmp.S: New files.
1008         * sysdeps/i386/setjmp.c, sysdeps/i386/__longjmp.c: Files removed.
1009         * sysdeps/i386/jmp_buf.h [! _ASM] (__jmp_buf): Define as array of ints.
1010         [__USE_MISC || _ASM] (JB_*): New macros, for indices therein.
1011         (_JMPBUF_UNWINDS): Use JB_SP.
1013 Wed Aug 30 16:44:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1015         * sysdeps/mach/hurd/select.c: Deal with out of order replies
1016         during io_select request loop.
1017         Handle MACH_RCV_TIMED_OUT error from requests.
1018         * hurd/intr-msg.c: If the user passed the MACH_RCV_TIMEOUT option,
1019         distinguish MACH_RCV_TIMED_OUT from EINTR.
1021         * posix/glob.c (glob): Use realloc to extend strings for GLOB_MARK
1022         slash.
1023         (glob_in_dir): Don't allocate extra byte here.
1025         * sysdeps/i386/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC):
1026         Decrement the DT_RELSZ value for the skipped reloc.
1028 Tue Aug 29 12:35:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1030         * time/australasia: Updated data from ADO.
1032 Mon Aug 28 17:47:11 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1034         * dirent/dirent.h: Don't include <dirstream.h>.
1035         Instead, define DIR as typedef for (undefined) `struct __dirstream'.
1037 Fri Aug 25 12:12:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1039         * sysdeps/mach/hurd/dirstream.h: Define `struct __dirstream'
1040         instead of `DIR'.
1041         * sysdeps/unix/bsd/dirstream.h: Likewise.
1042         * sysdeps/stub/dirstream.h: Likewise.
1043         * sysdeps/unix/dirstream.h: Likewise.
1044         * sysdeps/mach/hurd/telldir.c: Include "dirstream.h".
1045         * sysdeps/mach/hurd/seekdir.c: Likewise.
1046         * sysdeps/mach/hurd/opendir.c: Likewise.
1047         * sysdeps/mach/hurd/closedir.c: Likewise.
1048         * sysdeps/mach/hurd/readdir.c: Likewise.
1049         * sysdeps/unix/telldir.c: Likewise.
1050         * sysdeps/unix/seekdir.c: Likewise.
1051         * sysdeps/unix/rewinddir.c: Likewise.
1052         * sysdeps/unix/readdir.c: Likewise.
1053         * sysdeps/unix/opendir.c: Likewise.
1054         * sysdeps/unix/closedir.c: Likewise.
1055         * sysdeps/unix/bsd/telldir.c: Likewise.
1056         * sysdeps/unix/bsd/readdir.c: Likewise.
1057         * dirent/Makefile (headers): Remove dirstream.h.
1058         (distribute): Put it here instead.
1060         * sysdeps/mach/hurd/mmap.c: Fix inverted test of MAP_FIXED.
1062         * stdio/vfscanf.c (number): Allow field width to inhibit first
1063         digit after base detection.
1065         * stdio/vfprintf.c (vfprintf: %s): Never search past the limit
1066         specified by the precision.
1068         * grp/grpread.c (__grpscan): New function.
1069         * grp/grp.h (__grpscan): Declare it.
1070         * grp/getgrgid.c: Use __grpscan.
1071         * grp/getgrnam.c: Likewise.
1072         * pwd/pwdread.c (__pwdscan): New function.
1073         * pwd/pwd.h (__pwdscan): Declare it.
1074         * pwd/getpwnam.c: Use __pwdscan.
1075         * pwd/getpwuid.c: Likewise.
1077 Thu Aug 24 16:29:40 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1079         * sysdeps/mach/hurd/mmap.c: Treat (FLAGS & MAP_TYPE) == 0 like
1080         MAP_FILE.
1082         * hurd/thread-cancel.c: Return EINTR when called on self.
1083         * sysdeps/i386/elf/start.S (data_start): Define as weak alias for
1084         __data_start.
1086 Tue Aug 22 16:49:12 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1088         * inet/netdb.h: Moved to resolv.
1089         * inet/Makefile (headers): Remove netdb.h.
1090         * resolv/Makefile (headers): Add netdb.h.
1091         * resolv/gethnamaddr.c, resolv/inet_addr.c, resolv/netdb.h,
1092         resolv/res_send.c: Updated from BIND-4.9.3-BETA26.
1094         * hurd/thread-cancel.c: If SS->cancel_hook is not null, call it before
1095         resuming the thread.
1096         * hurd/hurd/signal.h (struct hurd_sigstate): New member `cancel_hook'.
1098         * hurd/Makefile: Removed dep on hurd/signal.h for RPC stub objects.
1100 Mon Aug 21 16:37:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1102         * sysdeps/i386/dl-machine.h (elf_machine_rel): Grok R_386_NONE
1103         relocs, and do nothing.  Why the linker generates them we may
1104         never know. 
1106 Thu Aug 17 16:18:38 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1108         * sysdeps/mach/hurd/Makefile: Don't elide sunrpc and manual from
1109         `subdirs' variable.
1111         * sysdeps/mach/hurd/i386/intr-msg.h: New file.
1112         * hurd/intr-msg.c: Use INTR_MSG_TRAP macro from machine-dependent
1113         "intr-msg.h" for special syscall code, instead of i386-specific asm.
1114         * hurd/hurdsig.c: Use INTR_MSG_BACK_OUT macro from
1115         machine-dependent "intr-msg.h" before mutating thread state to
1116         skip RPC.
1118         * sysdeps/mach/hurd/i386/trampoline.c: If PC is inside
1119         _hurd_intr_rpc_mach_msg special syscall code, use real SP saved in
1120         %ecx.
1122         * Makeconfig (link-libc): New variable; use shared library if
1123         available.
1124         (+link): Use it.
1126         * sysdeps/mach/hurd/fork.c (_hurd_fork_locks): Variable removed.
1127         Instead, declare with `symbol_set_declare'.
1128         (fork): Use symbol_set_* macros for _hurd_fork_locks.  
1129         Use SS->thread instead of __mach_thread_self ().  Suspend all
1130         other threads during task_create and port copying.
1132 Wed Aug 16 17:04:26 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1134         * hurd/intr-msg.c: Fixed calculation of syscall %esp.
1136 Tue Aug 15 12:26:18 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1138         * hurd/hurdsig.c (_hurdsig_abort_rpcs): Remove `static'.
1140         * hurd/Makefile (sig): Add intr-msg.
1142 Mon Aug 14 16:51:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1144         * hurd/thread-cancel.c: New file.
1145         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): In
1146         rpc_wait case, frob mach_msg args to set timeout on receive.
1147         (_hurdsig_rcv_interrupted_p): Function removed.
1148         * sysdeps/mach/hurd/alpha/trampoline.c: Likewise.
1149         * sysdeps/mach/hurd/hppa/trampoline.c: Likewise.
1150         * sysdeps/mach/hurd/mips/trampoline.c: Likewise.
1151         * hurd/intr-msg.c: New file.
1152         * hurd/hurd/signal.h (struct hurd_sigstate): New member `cancel'.
1153         (_hurdsig_rcv_interrupted_p): Declaration removed.
1154         (HURD_EINTR_RPC): Macro removed.
1155         (_hurd_longjmp_thread_state, _hurd_interrupted_rpc_timeout): Declare
1156         these.
1157         * hurd/intr-rpc.h: New file.
1158         * hurd/intr-rpc.defs: Just import intr-rpc.h.
1159         * hurd/hurdsig.c (_hurd_interrupted_rpc_timeout): New variable.
1160         (interrupted_reply_port_location): Take new flag arg; only catch
1161         faults if it's set.
1162         (abort_rpcs): Rename to _hurdsig_abort_rpcs; take same new flag arg.
1163         No longer use _hurdsig_rcv_interrupted_p; instead compare PC to
1164         &_hurd_intr_rpc_msg_in_trap.  If before it, mutate state to simulate
1165         MACH_SEND_INTERRUPTED return; on it, interrupt the operation.  All
1166         callers changed.
1167         * hurd/hurd.h (hurd_thread_cancel, hurd_check_cancel): Declare these.
1168         * hurd/Makefile (distribute): Remove intr-rpc.awk.
1169         (sig): Add thread-cancel.
1170         (transform-user-stub, transform-user-stub-output): Variables removed.
1171         * sysdeps/mach/hurd/dl-sysdep.c: Change all RPCs from
1172         `__hurd_intr_rpc_*' to `__*'.
1173         (_hurd_intr_rpc_mach_msg): New function.
1174         (_hurd_thread_sigstate): Function removed.
1175         * sysdeps/mach/hurd/ioctl.c: Use _hurd_intr_rpc_mach_msg function,
1176         instead of __mach_msg inside HURD_EINTR_RPC macro.
1178         * sysdeps/generic/morecore.c [__GNU_LIBRARY__]: Declare `__sbrk'
1179         to take ptrdiff_t arg.
1181         * sysdeps/mach/hurd/fork.c: Remove _hurd_longjmp_thread_state decl.
1183         * sysdeps/mach/hurd/kill.c (kill_pid): Don't make `inline'.
1185         * libc-symbols.h [GCC >= 2.7] (strong_alias, weak_symbol,
1186         weak_alias): Use `extern' storage class.
1188 Wed Aug  9 14:25:35 1995  Miles Bader  <miles@geech.gnu.ai.mit.edu>
1190         * sysdeps/mach/hurd/setuid.c (__setuid): Switch the port-type and
1191         port-count parameters to __auth_makeauth.
1192         * sysdeps/mach/hurd/setgid.c (__setgid): Ditto.
1194 Tue Aug  8 12:22:59 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1196         * hurd/sigunwind.c: Remove _hurd_longjmp_thread_state decl.
1198         * inet/netinet/tcp.h: New file, incorporated from 4.4BSD-Lite.
1200 Tue Aug  8 12:06:04 1995  Michael I. Bushnell, p/BSG  <mib@duality.gnu.ai.mit.edu>
1202         * inet/netinet/in.h (IP_MULTICAST_TTL, IP_MULTICAST_LOOP,
1203         IP_MULTICAST_IP, IP_ADD_MEMBERSHIP, IP_DROP_MEMBERSHIP): New IP
1204         layer socket options.
1205         (IPPROTO_GGP): Delete obsolote protocol.
1206         (IPPROTO_IGMP): Add new protocol (with same value [2] as old GGP).
1207         (struct ip_mreq): New type.
1209 Mon Aug  7 14:04:36 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1211         * stdlib/strtol.c: Use #ifdef, not #if, for HAVE_LIMITS_H.
1213         * posix/glob.c (glob_in_dir): Allocate GLOB_MARK byte in case when
1214         (NFOUND == 0 && (FLAGS & GLOB_NOCHECK)).
1216         * sysdeps/generic/sysd-stdio.c (__stdio_reopen): Return failure
1217         when __stdio_open fails with a code other than ENFILE or EMFILE.
1219 Fri Aug  4 16:01:59 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1221         * Makefile (headers): Added gnu-versions.h.
1223 Thu Aug  3 14:41:11 1995  Michael I. Bushnell  <mib@duality.gnu.ai.mit.edu>
1225         * inet/netinet/in.h (IN_CLASSD, IN_EXPERIMENTAL, IN_BADCLASS): Use
1226         equality, not assignment, to test bitfields.
1228 Sat Jul 29 10:41:06 1995  Miles Bader  <miles@churchy.gnu.ai.mit.edu>
1230         * sysdeps/mach/hurd/sendto.c (sendto): Use the ifsock protocol to
1231         resolve AF_LOCAL addresses.
1233         * sysdeps/mach/hurd/accept.c (accept): If the protocol family
1234         can't tell us what an address means, just return a zero-length
1235         buffer instead.
1236         * sysdeps/mach/hurd/recvfrom.c (recvfrom): Ditto.
1238 Fri Jul 28 15:29:11 1995  Miles Bader  <miles@churchy.gnu.ai.mit.edu>
1240         * sysdeps/mach/hurd/bind.c (bind): Don't use
1241         file_invoke_translator, as it doesn't work.  Instead just lookup
1242         the translated node again, and hope we're not hit by any race
1243         conditions.
1245 Wed Jul 26 02:00:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1247         * csu/Makefile [$(elf)=yes] (have-initfini): Set to yes.
1248         [$(have-initfini)=yes]: Test this rather than $(elf) for crtstuff.
1249         [start-installed-name-rule]: If this is defined, elide rule for
1250         $(objpfx)$(start-installed-name).
1251         * csu/initfini.c (SECTION): New macro, different definitions for
1252         #ifdef HAVE_ELF and not.
1253         (_init, _fini): Use that macro.
1254         * sysdeps/unix/sysv/sco3.2.4/Makefile [$(subdir)=csu]
1255         (start-installed-rule, start-installed-name-rule): New variables;
1256         specify crt1.o, created by our own rule.
1257         ($(objpfx)crt1.o): New rule.
1258         * configure.in: Require autoconf 2.4.2 or later.  Change all
1259         AC_CACHE_VAL uses to use new AC_CACHE_CHECK macro instead;
1260         prettify some messages.
1261         [$elf!=yes] (libc_cv_have_initfini): New test for `.init' and `.fini'
1262         sections.
1263         * munch-tmpl.c [HAVE_INITFINI]: Call _init and atexit (_fini) in
1264         this case rather than #ifdef HAVE_ELF.
1265         * config.h.in (HAVE_INITFINI): New macro.
1266         * config.make.in (have-initfini): New variable, set by configure.
1268         * stdio/vfscanf.c (conv_error): Simplify expression to avoid
1269         "value computed is not used" warning.
1271         * Makeconfig (+gccwarn): Removed -Wconversion.
1273         * csu/initfini.c (GLOBAL): Macro removed.
1274         (_init, _fini): Always define globally.
1275         * csu/Makefile (crtstuff, initfini): Don't make crt[in]_s.o.
1277         * asia, backward, europe, leapseconds, southamerica: New data from
1278         ADO's 95e.
1280         * inet/Makefile (routines): Removed inet_addr.
1281         * inet/inet_addr.c: Moved to resolv/ subdirectory.
1282         * resolv/Makefile (routines): Added inet_addr.
1283         * resolv/inet_addr.c: Incorporated from BIND 4.9.3-BETA24 release.
1284         * resolv/gethnamaddr.c: Likewise.
1285         * resolv/getnetbyaddr.c: Likewise.
1286         * resolv/getnetbyname.c: Likewise.
1287         * resolv/getnetent.c: Likewise.
1288         * resolv/getnetnamadr.c: Likewise.
1289         * resolv/herror.c: Likewise.
1290         * resolv/nsap_addr.c: Likewise.
1291         * resolv/res_comp.c: Likewise.
1292         * resolv/res_debug.c: Likewise.
1293         * resolv/res_init.c: Likewise.
1294         * resolv/res_mkquery.c: Likewise.
1295         * resolv/res_query.c: Likewise.
1296         * resolv/res_send.c: Likewise.
1297         * resolv/resolv.h: Likewise.
1298         * resolv/sethostent.c: Likewise.
1299         * resolv/arpa/nameser.h: Likewise.
1300         * inet/netdb.h: Incorporated from BIND 4.9.3-BETA24 release.
1301         [__GNU_LIBRARY__]: Include <rpc/netdb.h> instead of repeating
1302         its declarations (and doing so only #ifdef sun!).
1303         * conf/portability.h (NEED_INETADDR, NEED_INETATON): New macros.
1305         * posix/sys/types.h [__USE_BSD] (__BIT_TYPES_DEFINED__): New macro.
1306         [__USE_BSD] [__GNUC__] (int64_t, u_int64_t, register_t): New typedefs.
1308         * malloc/memalign.c: Allocate (SIZE + ALIGNMENT - 1) and then trim
1309         if possible.
1311         * mach/shortcut.awk: Emit decls for RPC.
1313         * libc-symbols.h [GCC >= 2.7 && !ASSEMBLER] (weak_symbol,
1314         weak_alias, strong_alias): Define using GCC __attribute__ syntax.
1316         * Makerules ($(installed-libcs)): Depend on `lib' (only).
1318 Tue Jul 25 09:14:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1320         * sysdeps/mach/hurd/pathconf.c: Declare VALUE as int, not long int.
1322         * stdlib/strtol.c [_LIBC]: Define STDC_HEADERS.
1324         * sysdeps/unix/sysv/ftime.S: New file.
1326         * locale/locfile-parse.c (categories_write): Cast "" to char *.
1328         * io/fcntl.h [__OPTIMIZE__] (creat): Macro removed.
1330         * time/strftime.c: Use year modulo 100 for %y.
1332         * time/sys/timeb.h: Add __BEGIN_DECLS and __END_DECLS.
1334         * sysdeps/unix/snarf-ioctls (snarfexclude): Use two sed's instead
1335         of one, to work around bug in sunos4.1.2 sed.
1337         * stdio/vfprintf.c (vfprintf): For %s with precision spec, use
1338         memchr instead of strlen to limit search for NUL by precision.
1340 Mon Jul 24 03:13:16 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1342         * sysdeps/posix/pathconf.c: New file.
1344 Sat Jul 22 20:53:18 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1346         * sysdeps/unix/i386/sysdep.h (JUMPTARGET): Use ## to avoid space
1347         before @PLT.
1348         * sysdeps/mach/i386/sysdep.h (JUMPTARGET): New macro.
1349         * sysdeps/i386/bsd-_setjmp.S: Use JUMPTARGET macro in jmp insn.
1350         * sysdeps/i386/bsd-setjmp.S: Likewise.
1352 Sat Jul 22 19:58:54 1995  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>
1354         * inet/Makefile (routines): Added `ruserpass'.
1355         * inet/ruserpass.c: New file, from BSD Net-2 sources for the FTP
1356         client.  Modified to remove the fourth arg AACCT.  Do nothing for
1357         the `account' and `macdef' keywords.  Other incidental changes
1358         because we are not in the FTP source tree.
1360 Sat Jul 22 01:56:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1362         * sysdeps/stub/init-posix.c: Removed stub warning.
1364         * Makefile (autoconf-it): Make it executable and unwritable.
1366         * configure.in (sysnames): Under --enable-debug-configure, spew
1367         potential sysnames.
1369         * sysdeps/unix/i386/sysdep.h (JUMPTARGET): New macro; use name@PLT
1370         #ifdef PIC.
1371         (PSEUDO): Use JUMPTARGET(syscall_error) in jump insn.
1372         * sysdeps/unix/i386/syscall.S: Use JUMPTARGET(syscall_error) in
1373         jump insn.
1375         * sysdeps/unix/sysv/sysv4/linux/i386/sysdep.h: Rewritten.
1376         * sysdeps/unix/sysv/sysv4/linux/i386/syscall.S: New file.
1377         * sysdeps/unix/sysv/sysv4/linux/i386/socket.S: Include
1378         <sys/socketcall.h>.  Save %ebx in call-clobbered %edx instead of
1379         stack.  Use JUMPTARGET(syscall_error) in jump insn.
1381         * Makeconfig (+gccwarn): Add -Wbad-function-cast -Wconversion.
1383         * sysdeps/unix/i386/sysdep.h (ENTRY): Use ASM_GLOBAL_DIRECTIVE and
1384         ASM_TYPE_DIRECTIVE.
1385         (ASM_TYPE_DIRECTIVE): New macro; defined using `.type' #ifdef ELF.
1387         * sysdeps/unix/sysv/sysv4/linux/i386/sysdep.S (__syscall_error): 
1388         Rewritten, #include'ing unix/i386/sysdep.S for most of the code.
1389         * sysdeps/unix/i386/sysdep.S [PIC]: Store into `errno' through the GOT.
1391         * configure.in (os=linux*): Use unix/sysv/sysv4 for $base_os,
1392         instead of unix/sysv.   
1393         * sysdeps/unix/sysv/linux/{accept,connect,getsockname,rename,
1394         socketpair,waitpid,bind,getpeername,listen,setsid,wait4}.S: Moved
1395         to new directory sysdeps/unix/sysv/sysv4/linux.
1396         * sysdeps/unix/sysv/linux: Directory removed.
1397         * sysdeps/unix/sysv/i386/linux/{socket.S,sysdep.h,sysdep.S}: Moved
1398         to new directory sysdeps/unix/sysv/sysv4/linux/i386.
1399         * sysdeps/unix/sysv/linux/i386: Directory removed.
1401         Fixes to help Linux, inspired by drepper's work:
1402         * sysdeps/posix/utimes.c: New file.
1403         * sysdeps/generic/getdomain.c: New file.
1404         * sysdeps/i386/init-first.c: Removed gratuitous #include <hurd.h>.
1405         * sysdeps/generic/dl-sysdep.c: Include <unistd.h> and declare
1406         externals _dl_argc, _dl_argc, and _environ.
1408 Fri Jul 21 12:57:29 1995  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>
1410         * sysdeps/mach/hurd/socket.c (socket): Consider MIG_BAD_ID and
1411         EOPNOTSUPP as indications that the server has died.
1412         * sysdeps/mach/hurd/pipe.c (__pipe): Likewise.
1413         * sysdeps/mach/hurd/socketpair.c (socketpair): Likewise.
1415 Mon Jul 17 08:45:40 1995  Jim Meyering  (meyering@comco.com)
1417         * strtol.c: Portability changes from Uli Drepper.
1418         [!STDC_HEADERS && !defined(NULL)]: Define NULL.
1420 Mon Jul 10 05:39:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1422         * sysdeps/mach/hurd/i386/init-first.c (init): Take just one arg,
1423         DATA for the entry SP; DATA[-1] is always the return address
1424         location.  In both cthreads and non-cthreads cases, use asm to
1425         force parameters into %eax and %ecx before return, and mutate
1426         DATA[-1] to return to specific asm code to set up the user from
1427         %eax and %ecx.
1428         [PIC] (_init): Caller changed.
1429         (__libc_init_first) [! PIC] (doinit): Use asm to effect call to init
1430         with SP unwound to argument data ptr.
1432 Thu Jul  6 14:28:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1434         * sysdeps/mach/hurd/dl-sysdep.c (fmh): Fixed this kludge to work
1435         when 0x08000000 and up are not mapped.
1437         * Makerules (stamp$o-$(subdir) rule): Remove the timestamp file
1438         before touching it.
1439         (lib%.so): Use -Wl to get -soname to ld.
1441         * elf/dlsym.c: Pass final arg to _dl_lookup_symbol.
1443         * elf/Makefile (libdl.so): Pass $(LDFLAGS.so).
1445 Tue Jun 20 02:18:19 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1447         * Makerules (lib%.so: lib%_pic.a): Pass -soname switch giving the
1448         library's name including $(libprefix) and major version number.
1450         * locale/locale-ctype.c (allocate_arrays): Use xmalloc and bzero
1451         in place of xcalloc.
1453         * Makeconfig (prefix, exec_prefix, libprefix): Instead of
1454         `ifndef', use the $(origin) function to only set these if they are
1455         undefined, and not if they are defined to empty.
1457         * gnu-versions.h: New file.
1458         * features.h (__GNU_LIBRARY__): Increase value to 5.
1460 Wed Jun 14 03:45:24 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1462         * stdio/stdio.h (__validfp): Use ({...}) rather than a comma
1463         expression, to avoid gcc's "value computed is not used" warning.
1465         * libc-symbols.h (_elf_set_element): Give the set-element variable
1466         an `unused' attribute.
1468         * hurd/hurd/threadvar.h (__hurd_threadvar_location): Declare with
1469         __attribute__ ((__const__)).
1470         * hurd/hurd/signal.h (_hurd_self_sigstate): Likewise.
1472         * hurd/hurd/userlink.h (_hurd_userlink_link): Properly set
1473         LINK->resource.next->resource.prevp when appropriate, not
1474         LINK->resource.next->thread.prevp!!!
1476 Tue Jun 13 15:45:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1478         * configure.in (libc_cv_asm_set_directive): Make sure that the
1479         `.set' directive really worked by linking against a reference to
1480         the alias.
1482         * sysdeps/stub/init-first.c: Don't include <hurd.h>.
1483         [PIC] (soinit): Renamed to (global) _init.
1485 Mon Jun 12 13:15:45 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1487         * malloc/Makefile (gmalloc-routines): Remove valloc.
1488         (dist-routines): Add it here.
1490         * malloc/malloc.h [_MALLOC_INTERNAL] [emacs] (valloc): #define to
1491         emacs_loser_valloc to inhibit valloc declaration below.
1493         * Makerules (lib%.so: lib%_pic.a): Moved this rule to after
1494         installation rules.
1496         * sysdeps/mach/sysdep.h [HAVE_ELF] (ENTRY): Redefine this macro so
1497         it uses the `.type' directive, which is necessary for shared
1498         libraries to work properly.
1500 Thu Jun  8 02:50:26 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1502         * elf/dl-load.c (_dl_map_object): Add MAP_INHERIT flag in mmap
1503         from zero fill.
1505         * elf/dl-lookup.c (_dl_lookup_symbol): Take new flag arg NOSELF;
1506         if nonzero, don't let *REF satisfy the reference itself.
1507         * elf/link.h (_dl_lookup_symbol): Add new arg NOSELF in decl.
1508         * sysdeps/i386/dl-runtime.c (_dl_runtime_resolve): Pass new arg to
1509         _dl_lookup_symbol.
1510         * elf/do-rel.h (elf_dynamic_do_rel): Pass new second arg of
1511         R->r_offset to RESOLVE callback.
1512         * elf/dl-reloc.c (_dl_relocate_object: resolve): Don't let *REF
1513         satisfy the reference itself if its value equals the reloc's
1514         offset.
1516         * elf/rtld.c (dl_main): Write a newline in fatal msg.
1518         * Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS.so).
1520         * elf/rtld.c [! NDEBUG] (__assert_perror_fail): New function.
1522         * hurd/hurdstartup.c (_hurd_startup): Fancier kludge to guess phdr
1523         and user entry point addresses.
1525         * elf/dl-load.c (open_path): Don't do strlen on DIRPATH if it's null.
1526         (_dl_map_object): DT_RPATH value is relative to DT_STRTAB value.
1528         * Makerules (install-lib.so): Don't include libc.so.
1529         [$(build-shared)=yes] (install): Depend on the installed libc.so file.
1530         [$(build-shared)=yes] (install-no-libc.a): Make this, rather than
1531         install, depend on the installed $(install-lib.so) files.
1532         [$(build-shared)=yes] (install-lib.so): Append libc.so after that rule.
1534         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Add kludge to
1535         allocate high addresses to avoid random mappings appearing there.
1536         (mmap): Comment out mask; always pass zero.
1538 Tue Jun  6 13:34:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1540         * sysdeps/i386/dl-machine.h (ELF_MACHINE_USER_ADDRESS_MASK): New macro.
1541         * sysdeps/mach/hurd/dl-sysdep.c (mmap): Use it as mask in vm_map call.
1543         * elf/dl-error.c (_dl_catch_error): Clear *ERRSTRING and *OBJNAME
1544         when successful.
1546         * sysdeps/mach/hurd/dl-sysdep.c (threadvars): New static variable.
1547         (__hurd_threadvar_max, __hurd_threadvar_stack_offset): Define these
1548         variables, using the `threadvars' buffer.
1550         * elf/dl-reloc.c: Don't dereference L->l_prev when it's null.
1551         * sysdeps/i386/dl-runtime.c: Likewise.
1553         * elf/rtld.c (dl_main): Add missing NULL terminating argument in
1554         _dl_sysdep_fatal call.
1555         (__assert_fail): Likewise.
1557         * locale/Makefile (localedef-modules): Renamed ctype to
1558         locale-ctype so as not to conflict with the object file for
1559         ctype/ctype.c in the build directory.
1561 Mon Jun  5 04:02:26 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1563         * elf/elf.h (ELFMAG): Use \177 instead of \x7f.  It seems GCC
1564         insists on seeing the following E as part of hex 7FE, and
1565         complaining that is wider than a byte.
1567 Sun Jun  4 22:14:11 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1569         * hurd/Makefile (sig): Added thread-self.
1570         * hurd/hurd.h: Declare hurd_thread_self.
1571         * hurd/thread-self.c: New file.
1573 Thu Jun  1 12:17:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1575         * elf/rtld.c: Initialize RTLD_MAP.l_type.
1576         * elf/dl-reloc.c (_dl_relocate_object): Clear LAZY if relocating
1577         the dynamic linker itself.
1578         * sysdeps/i386/dl-machine.h (elf_machine_rel): If MAP->l_type is
1579         lt_interpreter, first undo relocation done during bootstrapping.
1581 Tue May 30 15:52:32 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1583         * mach/Makefile (server-interfaces): Removed notify and
1584         device_reply.  For shlibs with eager binding, libmachuser.so must
1585         not refer to any functions not defined in libc.
1587 Sat May 27 16:23:22 1995  Jim Meyering  (meyering@comco.com)
1589         * sysdeps/generic/memchr.c: Cast RHS to const unsigned char *
1590         to avoid error from Irix-4.0.5's C compiler.  From Kaveh Ghazi.
1592 Fri May 26 13:00:08 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1594         * hurd/hurdsig.c (_hurd_internal_post_signal): Don't loop to check
1595         pending signals if the thread is in a critical section.  It will
1596         send us a msg when it finishes.
1598         * sysdeps/mach/hurd/pathconf.c: New file.
1599         * sysdeps/mach/hurd/fpathconf.c: New file.
1601         * sysdeps/mach/hurd/sigaction.c: Only notify the proc server for
1602         SIGCHLD when the SA_NOCLDSTOP bit actually changes.
1604 Sun May 21 05:05:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1606         * elf/Makefile (ld.so): Use -nostartfiles in addition to
1607         -nostdlib.
1609 Sun May 21 02:01:29 1995  Jim Meyering  (meyering@comco.com)
1611         * sysdeps/generic/memchr.c: Don't include <string.h> at all.
1612         HPUX-9.01 and IRIX-4.0.5 vendor C compilers get conflicting dcls for
1613         memchr unless one manually arranges for them to define __STDC__.
1615 Fri May 19 17:16:46 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1617         * sysdeps/mach/hurd/i386/init-first.c: In cthreads case, handle
1618         args on stack from kernel.
1620         * posix/Makefile, sysdeps/alpha/Makefile,
1621         * sysdeps/mach/hurd/Makefile, sysdeps/sparc/Makefile, Makefile,
1622         * Makerules, Make-dist: Fix "cvs commit" cmds in rules to not fail
1623         in the absence of CVS dirs.
1625         * hurd/hurdstartup.c: Don't call __mach_init.  Grok args from the
1626         kernel on the stack properly.
1628         * set-init.c: Never call _init/_fini; just run __libc_subinit.
1630         * Makerules (LDFLAGS-c.so): Add -nostartfiles.
1631         * mach/Machrules (LDFLAGS-$(interface.so)): Likewise.
1633         * configure.in: Move defaulting of --with-elf and --with-gnu-*
1634         based on host os outside the AC_CACHE_VAL for the sysdirs
1635         calculation.
1637         * Makeconfig (localedir, nlsdir): New variables.
1639         * values.h: New file.
1640         * Makefile (headers): Add values.h.
1642         * locale/Makefile (distribute): Add error.h.
1643         * locale/localedef.c: Include "error.h".
1644         (main): Use error_message_count instead of warning_cntr.
1646 Wed May 17 16:50:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1648         Merged 1003.2 locale and localedef programs by Ulrich Drepper.
1649         * locale/charmap.c: New file.
1650         * locale/collate.c: New file.
1651         * locale/config.h: New file.
1652         * locale/ctype.c: New file.
1653         * locale/ctypedump.c: New file.
1654         * locale/hash.c: New file.
1655         * locale/hash.h: New file.
1656         * locale/iso-4217.def: New file.
1657         * locale/keyword.gperf: New file.
1658         * locale/keyword.h: New file.
1659         * locale/libintl.h: New file.
1660         * locale/locale.c: New file.
1661         * locale/localedef.c: New file.
1662         * locale/localedef.h: New file.
1663         * locale/locfile-lex.c: New file.
1664         * locale/locfile-parse.c: New file.
1665         * locale/messages.c: New file.
1666         * locale/monetary.c: New file.
1667         * locale/numeric.c: New file.
1668         * locale/token.h: New file.
1670         * posix/regex.c, posix/regex.h: New files, incorporated from GNU regex.
1671         * posix/Makefile (headers): Add regex.h.
1672         (routines): Add regex.
1673         (gpl2lgpl): Add regex.c and regex.h.
1675 Tue May 16 17:35:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1677         * locale/loadlocale.c: Expect macro LOCALE_PATH to be defined,
1678         instead of hard-coding "/share/locale".
1680 Sat May 13 02:16:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1682         * configure.in (os=gnu*): Always set elf=yes, not just for os=gnu*elf*.
1684 Fri May 12 15:31:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1686         * elf/elf.h (ELFMAG, SELFMAG): New macros.
1688 Fri May 12 11:24:53 1995  Michael I Bushnell  <mib@duality.gnu.ai.mit.edu>
1690         * hurd/alloc-fd.c (_hurd_alloc_fd): Don't reduce FIRST_FD in
1691         the case where it starts out less than _hurd_dtablesize.
1693 Thu May 11 20:51:05 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1695         * hurd/alloc-fd.c (_hurd_alloc_fd): When expanding the dtable,
1696         make sure the new size exceeds FIRST_FD.
1698 Wed May 10 21:00:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1700         * sysdeps/mach/i386/sysdep.h (RETURN_TO): New macro.
1702 Tue May  9 01:26:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1704         * Makerules (install-lib.so): Add %.so for each %_pic.a.
1706         * sysdeps/i386/elf/start.S (__data_start): Define this symbol as
1707         the first thing in .data.
1709         * sysdeps/mach/_strerror.c (_strerror_internal): Eschew sprintf.
1711         * hurd/hurdstartup.h: New file.
1713         * sysdeps/i386/elf/start.S: Give two operands to `testl' when they
1714         are the same.  Use `jz' instead of `jeq'.
1716         * Makeconfig (config.make): Depend on config.status, and run it to
1717         update.
1718         (config.status): New target; depend on configure.
1719         If target (config.status) exists, run it with --recheck to update;
1720         if not, give error msg saying to run confiugre by hand.
1721         * Makerules [$(sysd-Makefile-sysdirs) != $(sysdirs)]
1722         (sysd-Makefile-force): Set this variable to FORCE in this case, to
1723         force a rebuild of sysd-Makefile.
1724         (sysd-Makefile): Depend on $(sysd-Makefile-force).
1725         Write into the file sysd-Makefile-sysdirs:=$(sysdirs).
1726         [$(sysd-rules-sysdirs) != $(sysdirs)] (sysd-rules-force): Set this
1727         variable to FORCE in this case, to force a rebuild of sysd-rules.
1728         (sysd-rules): Depend on $(sysd-rules-force).
1729         Write into the file sysd-rules-sysdirs:=$(sysdirs).
1730         
1731         * Makerules (LDFLAGS-c.so): Change ld option -interp to
1732         -dynamic-linker.        
1734         * Makerules (do-install-program): New canned sequence.
1735         (install-bin, install-sbin): Use it.
1736         (install for lib*.so): Use it instead of $(do-install).
1737         Fix .so installation rules to handle lib*.so and *.so, deal with
1738         $(libprefix) right, and install *.so as *.so$($(*.so)-version);
1739         i.e. "libc.so-version = .1".
1741 Mon May  8 05:10:25 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1743         * elf/do-rel.h: New file, split out of dynamic-link.h.
1744         * elf/Makefile (distribute): Add do-rel.h.
1746 Sat May  6 11:06:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1748         * Makeconfig (+gccwarn): Add -Winline.
1750         * hurd/hurdsig.c (_hurd_internal_post_signal): If SS->context is
1751         set, avoid abort_rpcs, and use reply and intr ports saved in
1752         SS->context.
1753         * sysdeps/mach/hurd/i386/trampoline.c: Don't set SS->intr_port
1754         from SS->context.  Don't clear SS->context.
1755         * sysdeps/mach/hurd/i386/sigreturn.c: Don't set SS->intr_port when
1756         setting SS->context.  If msg_sig_post returns, re-lock and clear
1757         SS->context.
1759 Fri May  5 10:37:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1761         * mach/Makefile (errsystems.c): Comment out generation rule.
1763         * sysdeps/mach/_strerror.c: Consider a system unknown if its
1764         bad_sub member is null.
1766         * mach/mig-alloc.c: Add weak alias to non-__ name.
1768 Wed May  3 11:56:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1770         * sysdeps/mach/hurd/dup2.c: Fixed broken test in last change.
1772 Tue May  2 01:52:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1774         * elf/dl-error.c (_dl_catch_error): Actually call the OPERATE
1775         function.  Duh.
1777         * hurd/Makefile (distribute): Added hurdstartup.h.
1778         * hurd/hurd.h: Remove _hurd_startup decl.
1780         * hurd/hurd/ioctl.h (_HURD_HANDLE_IOCTLS): Use __attribute__
1781         ((__unused__)) instead of gratuitous self reference.
1783         * sysdeps/mach/hurd/dup2.c: Call _hurd_alloc_fd to expand the
1784         table if FD2 doesn't fit.
1786         * sysdeps/mach/hurd/getdtsz.c: Return the RLIM_NOFILE soft limit,
1787         not the current table size.
1789         * sysdeps/mach/i386/sysdep.h (SNARF_ARGS, CALL_WITH_SP): Rewritten.
1791         Implemented runtime dynamic linker to support ELF shared libraries.
1792         * elf/Makefile: Added rules to make ld.so and libdl.
1793         * elf/dl-error.c: New file.
1794         * elf/dl-fini.c: New file.
1795         * elf/dl-init.c: New file.
1796         * elf/dl-load.c: New file.
1797         * elf/dl-lookup.c: New file.
1798         * elf/dl-object.c: New file.
1799         * elf/dl-reloc.c: New file.
1800         * elf/dlclose.c: New file.
1801         * elf/dlerror.c: New file.
1802         * elf/dlopen.c: New file.
1803         * elf/dlsym.c: New file.
1804         * elf/dynamic-link.h: New file.
1805         * elf/link.h: New file.
1806         * elf/rtld.c: New file.
1807         * sysdeps/i386/dl-machine.h: New file.
1808         * sysdeps/stub/dl-machine.h: New file.
1809         * sysdeps/i386/dl-runtime.c: New file.
1810         * sysdeps/stub/dl-runtime.c: New file.
1811         * sysdeps/i386/elf/start.S: New file.
1812         * sysdeps/generic/dl-sysdep.c: New file.
1813         * sysdeps/mach/hurd/dl-sysdep.c: New file.
1814         * sysdeps/mach/hurd/i386/init-first.c: New file.
1815         * sysdeps/i386/init-first.c: New file.
1816         * sysdeps/stub/init-first.c: New file.
1817         
1818 Mon May  1 18:48:30 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1820         * Makerules (LDFLAGS-c.so): Add -interp and -e switches to make
1821         libc.so runnable.
1822         * version.c (__libc_print_version): Add "et al" and missing NL to
1823         author credit.
1825 Sat Apr 29 15:46:57 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1827         * posix/glob.c (S_ISDIR): Define if undefined.
1829 Thu Apr 27 01:24:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1831         * configure.in: Unless --without-fp, prepend */fpu before each
1832         machine dir in $mach; don't prepend FPU dirs at end.  If
1833         --with-elf, prepend MACHINE/elf directories at end; don't insert
1834         them into $mach.
1836         * Makerules (dist): Filter out *.[cSs] from $(distribute) in deps.
1838         * sysdeps/stub/clock.c: Added stub warning.
1839         * sysdeps/stub/dirfd.c: Likewise.
1840         * sysdeps/stub/exc2signal.c: Likewise.
1841         * sysdeps/stub/fdopen.c: Likewise.
1842         * sysdeps/stub/flock.c: Likewise.
1843         * sysdeps/stub/fpathconf.c: Likewise.
1844         * sysdeps/stub/ftruncate.c: Likewise.
1845         * sysdeps/stub/gtty.c: Likewise.
1846         * sysdeps/stub/isatty.c: Likewise.
1847         * sysdeps/stub/killpg.c: Likewise.
1848         * sysdeps/stub/madvise.c: Likewise.
1849         * sysdeps/stub/mkstemp.c: Likewise.
1850         * sysdeps/stub/mktemp.c: Likewise.
1851         * sysdeps/stub/mprotect.c: Likewise.
1852         * sysdeps/stub/msync.c: Likewise.
1853         * sysdeps/stub/pathconf.c: Likewise.
1854         * sysdeps/stub/poll.c: Likewise.
1855         * sysdeps/stub/raise.c: Likewise.
1856         * sysdeps/stub/readv.c: Likewise.
1857         * sysdeps/stub/setenv.c: Likewise.
1858         * sysdeps/stub/setlogin.c: Likewise.
1859         * sysdeps/stub/sigaltstack.c: Likewise.
1860         * sysdeps/stub/sigintr.c: Likewise.
1861         * sysdeps/stub/sigstack.c: Likewise.
1862         * sysdeps/stub/sleep.c: Likewise.
1863         * sysdeps/stub/sstk.c: Likewise.
1864         * sysdeps/stub/stime.c: Likewise.
1865         * sysdeps/stub/stty.c: Likewise.
1866         * sysdeps/stub/syscall.c: Likewise.
1867         * sysdeps/stub/sysconf.c: Likewise.
1868         * sysdeps/stub/truncate.c: Likewise.
1869         * sysdeps/stub/ualarm.c: Likewise.
1870         * sysdeps/stub/usleep.c: Likewise.
1871         * sysdeps/stub/utimes.c: Likewise.
1872         * sysdeps/stub/writev.c: Likewise.
1874         * sysdeps/stub/libc_fatal.c: Remove __NORETURN keyword.
1876 Wed Apr 26 16:06:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1878         * locale/loadlocale.c (_nl_free_locale): Do nothing if DATA is null.
1880 Tue Apr 25 17:17:19 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1882         * posix/glob.c (glob): If GLOB_MARK set, stat names to find
1883         directories and append slashes to them in final pass before
1884         sorting.
1885         (glob_in_dir): If GLOB_MARK set, just allocate the extra char for the
1886         slash; never append it here.
1888 Sat Apr 22 14:48:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1890         * mach/Machrules [interface-library]
1891         (LDFLAGS-$(interface-library:lib%=%.so)): New variable, set to
1892         -nostdlib.
1894         * sysdeps/mach/hurd/fork.c: Subfunction `unlockss' removed.  Lock
1895         _hurd_siglock only around initial task creation in parent.  Use
1896         _hurd_critical_section_unlock at end.  Handle dead name rights
1897         properly, and deal with a send right dying while we try to copy
1898         it.  For the time being, use assert_perror for kernel and proc RPC
1899         failures.
1901 Fri Apr 21 01:10:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1903         * extra-lib.mk: Don't include $(o-iterator); construct it by hand
1904         using $(object-suffixes-$(lib)) instead.
1906         * sysdeps/mach/hurd/Makefile (LDLIBS-c.so): New variable.
1908         * Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS-$(notdir $*).so).
1909         (LDFLAGS-c.so): New variable.
1911         * resolv/res_init.c (res_init): Don't clobber _res.options with
1912         RES_DEFAULT.  If RES_INIT is clear, OR in RES_DEFAULT.
1914         * hurd/hurd.h: Declare _hurd_startup.
1915         * hurd/hurdstartup.c: New file.
1916         * hurd/Makefile (routines): Add hurdstartup.
1918 Thu Apr 20 22:23:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1920         * hurd/hurdsig.c: Use assert_perror for many calls which should
1921         never fail and previously were not checked.
1923         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
1924         Point the return address for sigreturn's frame at a "hlt" insn so
1925         it will definitely crash if sigreturn returns.
1927 Wed Apr 19 18:40:11 1995  Brendan Kehoe  (brendan@zen.org)
1929         * time/tzset.c (__tzname, __daylight, __timezone): Don't check
1930         HAVE_WEAK_SYMBOLS for doing weak_alias.
1932 Wed Apr 19 18:12:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1934         * configure.in: Move $os tests to set $elf et al earlier, before
1935         construction of $sysnames.  Instead of prepending MACHINE/elf to
1936         $sysnames, append &/elf after each elt appended to $mach.
1938 Tue Apr 18 14:00:19 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1940         * configure.in (libc_cv_asm_global_directive): New check to define
1941         ASM_GLOBAL_DIRECTIVE.
1942         * config.h.in: Add #undef ASM_GLOBAL_DIRECTIVE.
1943         * libc-symbols.h (strong_alias_asm, strong_alias): Use
1944         ASM_GLOBAL_DIRECTIVE on the alias.
1946         * sysdeps/unix/make_errlist.c (main): Don't generate "#ifdef
1947         HAVE_WEAK_SYMBOLS" #defns.
1949 Mon Apr 17 12:02:49 1995  Brendan Kehoe  (brendan@zen.org)
1951         * sysdeps/alpha/strlen.c (strlen): Fix cmpbge insn, and returning
1952         of the byte that was zero, so we return a valid number.
1954 Sun Apr 16 03:23:09 1995  Brendan Kehoe  (brendan@zen.org)
1956         * sysdeps/unix/bsd/ultrix4/mips/sysdep.h: New file defining
1957         NO_UNDERSCORES then using sysdeps/unix/mips/sysdep.h.
1959 Fri Apr 14 18:49:03 1995  Brendan Kehoe  (brendan@zen.org)
1961         * sysdeps/ieee754/mpn2dbl.c (__mpn_construct_double)
1962         [BITS_PER_MP_LIMB == 64]: Refer to `u', not to non-existent `i'.
1963         * sysdeps/ieee754/mpn2ldbl.c (__mpn_construct_long_double)
1964         [BITS_PER_MP_LIMB == 64]: Likewise.
1966         * sysdeps/unix/bsd/osf/alpha/killpg.S (killpg): Add .end directive.
1967         * sysdeps/unix/bsd/osf/alpha/sigblock.S (__sigblock): Likewise.
1968         * sysdeps/unix/bsd/osf/alpha/sigsetmask.S (__sigsetmask): Likewise.
1969         * sysdeps/unix/bsd/osf/alpha/sigpause.S (__sigpause): Likewise.
1970         * sysdeps/unix/bsd/osf/alpha/sigvec.S (__sigvec): Likewise.
1971         * sysdeps/unix/bsd/osf/alpha/getdents.S (__getdirentries): Likewise.
1972         * sysdeps/unix/bsd/osf/alpha/fork.S (__fork): Likewise.
1973         * sysdeps/unix/bsd/osf/alpha/pipe.S (__pipe): Likewise.
1974         * sysdeps/unix/bsd/osf/alpha/recv.S (recv): Likewise.
1975         * sysdeps/unix/bsd/osf/alpha/send.S (send): Likewise.
1976         * sysdeps/unix/bsd/osf/alpha/vhangup.S (vhangup): Likewise.
1978         * sysdeps/unix/mips/brk.S (__brk, __curbrk): Add .end directive.
1979         * sysdeps/unix/mips/fork.S (fork): Likewise.
1980         * sysdeps/unix/mips/pipe.S (fork): Likewise.
1981         * sysdeps/unix/mips/sigreturn.S (__sigreturn): Likewise.
1982         * sysdeps/unix/mips/sysdep.S (sysdep_error): Likewise.
1983         * sysdeps/unix/mips/wait.S (__handler): Likewise.
1984         * sysdeps/mips/setjmp.S (__sigsetjmp): Likewise.
1985         * sysdeps/mips/bsd-setjmp.S (setjmp): Likewise.
1986         * sysdeps/unix/bsd/ultrix4/getsysinfo.S (getsysinfo): Likewise.
1987         * sysdeps/unix/bsd/ultrix4/wait3.S (waitpid): Likewise.
1988         * sysdeps/unix/bsd/ultrix4/waitpid.S (waitpid): Likewise.
1989         * sysdeps/unix/bsd/ultrix4/mips/__handler.S (__handler): Likewise.
1990         * sysdeps/unix/bsd/ultrix4/mips/sigvec.S (__raw_sigvec): Likewise.
1991         * sysdeps/unix/bsd/ultrix4/mips/start.S (__start): Likewise.
1992         * sysdeps/unix/bsd/ultrix4/mips/vfork.S (vfork): Likewise.
1993         * sysdeps/mips/bsd-_setjmp.S (setjmp): Likewise.  Use `$0'
1994         instead of `zero' for the li instruction.
1996         * sysdeps/unix/bsd/osf/alpha/start.S: Change comments to be
1997         preprocessor comments, not assembler comments.
1998         * sysdeps/unix/bsd/osf/alpha/brk.S: Likewise.
1999         * sysdeps/unix/bsd/osf/alpha/sysdep.h (NO_UNDERSCORES): Define.
2001 Fri Apr 14 15:53:46 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2003         * malloc/malloc.c (register_heapinfo) [__GNUC__]: Use __inline__
2004         in place of inline.
2006 Thu Apr 13 09:45:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2008         * Makefile (distribute): Add ChangeLog.[0-9].
2010         * configure.in: Add check for .set directive.
2011         * config.h.in: Add #undef HAVE_ASM_SET_DIRECTIVE.
2012         * libc-symbols.h [! HAVE_ASM_SET_DIRECTIVE] (strong_alias,
2013         strong_alias_asm): Use `foo = bar' syntax instead.
2015         * Makerules [! subdir] (O%-lib): Don't prepend ../.
2017         * sysdeps/generic/expm1.c: #undef expm1 before weak_alias.
2019         * configure.in: Fix AC_ARG_WITH uses; check for --with-fp.  Move
2020         $host_os checks to set gnu_ld/as and elf before sysdirs
2021         generation.  Fix $with_fp test.
2022         [$elf=yes]: Prepend MACHINE/elf directory.
2024         * elf/libelf.h (elf_hash): Use XOR instead of ANDN when the bits
2025         being cleared are already known to be set.  Thanks Ulrich.
2027 Wed Apr 12 23:27:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2029         * posix/environ.c: Add weak alias `_environ'.
2031 Tue Apr 11 20:38:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2033         * sysdeps/i386/add_n.S [PIC]: Use self-call to avoid generating reloc.
2034         * sysdeps/i386/sub_n.S [PIC]: Likewise.
2036 Mon Apr 10 14:53:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2038         * libc-symbols.h (_elf_set_element) [PIC]: Don't make the element
2039         word `const'.
2041         * Makeconfig (CPPFLAGS, CFLAGS): Fix swapped references to
2042         $(foo-$(suffix $@)).
2044         * manual/Makefile (chapters-incl): Filter out summary.texi.
2046         * stdlib/strtod.c (STRTOF): Use extra macro to make STRTOF's #defn
2047         a weak symbol instead of literal "STRTOF".
2049         * locale/setlocale.c: Work around ld bug: don't weakify refs to
2050         _nl_{current,C}_*.
2052 Sun Apr  9 01:24:33 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2054         * Makerules (+depfiles): Translate %.so to %.o in $(extra-objs).
2056         * malloc/free.c [emacs] (__malloc_safe_bcopy): Define to safe_bcopy.
2057         * malloc/realloc.c (__malloc_safe_bcopy): Undefine before defining.
2059         * malloc/free.c (memmove, __malloc_safe_bcopy): Do include these
2060         #ifdef emacs, but only #ifndef memmove.
2061         * malloc/realloc.c [emacs] (__malloc_safe_bcopy): Just #define to
2062         safe_bcopy.
2063         (memmove): Define only if undefined.
2065 Sat Apr  8 00:40:59 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2067         * extra-lib.mk (install-lib, extra-objs, alltypes-$(lib)): Make
2068         sure these are simply-expanded variables.
2070         * locale/loadlocale.c (_nl_load_locale): Use MAP_INHERIT flag in
2071         mmap call.
2073         * configure.in (os=freebsd*|bsdi*): Set base_os=unix/bsd/bsd4.4
2074         for these too.
2076         * sysdeps/unix/sysv/tcsetattr.c: Use |= instead of = to properly
2077         set c_oflag value.
2079         * Makeconfig [! objpfx] (csu-objpfx): Add trailing slash.
2081         * locale/Makefile (categories): Uncomment collate.
2082         * locale/lc-collate.c: New file.
2084         * malloc/free.c (__malloc_safe_bcopy, memmove): Don't define
2085         #ifdef emacs.
2086         * malloc/realloc.c: Likewise.
2088         * stdio/_itoa.h (_EXTERN_INLINE): Define if undefined.
2089         (_itoa): Use it in defn.
2090         * stdio/_itoa.c (_EXTERN_INLINE): Define to empty before #include
2091         "_itoa.h".
2092         (_itoa): Function removed.
2094         * malloc/free.c: Remove use of `assert'.
2096         * malloc/realloc.c [! emacs] (safe_bcopy): Renamed to
2097         __malloc_safe_bcopy; #define safe_bcopy.
2098         * malloc/free.c: Cope with systems lacking `memmove'.
2099         (_free_internal): Cast result of _malloc_internal.
2101 Wed Apr  5 00:13:45 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2103         * hurd/hurdinline.c: Include signal.h first, so we don't define
2104         its inlines too.
2106         * sysdeps/unix/sysv/sysv4/sigset.h (__sigfillset): Use ~0L instead
2107         of -1 to avoid compiler warning.
2109         * configure.in (host_os=linux*): Set elf=yes for this, not just
2110         linux*elf*.
2112         * misc/login_tty.c [! TIOCSCTTY]: Try an emulation using ttyname
2113         and open.
2115         * sysdeps/i386/bsd-_setjmp.S: Fix typo in name: setjmp -> _setjmp.
2117 Tue Apr  4 00:48:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2119         * sysdeps/unix/start.c: Remove spurious decl and #endif.
2121         * misc/progname.c (program_invocation_name,
2122         program_invocation_short_name): Make these initialized data
2123         definitions.
2125         * sysdeps/mach/hurd/setitimer.c (fork_itimer): Add self reference
2126         so gcc doesn't optimize out the function entirely.
2128 Sun Apr  2 13:13:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2130         * posix/execvp.c: Don't use stat to search path; just try execv
2131         until it works.
2133         * sysdeps/mach/hurd/i386/trampoline.c: Add a link to
2134         SS->active_resources, so that _hurdsig_longjmp_from_handler will
2135         be called when a longjmp unwinds the signal frame.
2136         * sysdeps/mach/hurd/i386/sigreturn.c: Remove the link on the
2137         SS->active_resources chain added by _hurd_setup_sighandler.
2138         * hurd/sigunwind.c: New file.
2139         * hurd/Makefile (sig): Add sigunwind.
2141         * Makerules (lib%.so: lib%_pic.a): Remove dir name from $*.
2143         * MakeTAGS (tags-sources): Include $(all-dist).
2144         [subdir] (all-dist): Define to $(distribute).
2146 Sat Apr  1 00:08:06 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2148         * Makerules (lib%.so: lib%_pic.a): Pass -L options for subdir and
2149         parent objdirs.
2151         * extra-lib.mk (object-suffixes-$(lib)): New variable, produced by
2152         filtering out $($(lib)-inhibit-o); use that instead of
2153         $(object-suffixes) in all the other variables.
2155         * locale/loadlocale.c (_nl_load_locale) [MAP_FILE]: Define it zero
2156         if undefined.
2158         * string/strxfrm.c: Just copy the string (for now).
2159         * string/strcoll.c: Just call strcmp (for now).
2161         * mach/Makefile (lock): Add mutex-init.
2162         * mach/mutex-solid.c (_cthread_mutex_lock_routine,
2163         _cthread_mutex_unlock_routine): Variables removed.
2164         (__mutex_lock_solid, __mutex_unlock_solid): Don't use them; just stub.
2165         (__mutex_init): Function moved to new file mutex-init.c.
2166         * mach/mutex-init.c: New file, broken out of mutex-solid.c.
2168 Thu Mar 30 20:43:02 1995  Brendan Kehoe  <brendan@zen.org>
2170         * sysdeps/mips/__longjmp.c (__longjmp): Take out CONST.
2171         * sysdeps/alpha/__longjmp.c (__longjmp): Take out const.
2173 Thu Mar 30 01:38:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2175         * elf/elf.h (STN_UNDEF): New macro (distinct from SHN_UNDEF, though
2176         both are zero).
2178 Wed Mar 29 11:26:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2180         * elf/dlfcn.h: New file.
2182         * Make-dist (README): Commit it to CVS if there is a CVS directory.
2184         More changes from Germano Caronni <caronni@tik.ethz.ch>:
2185         * malloc/free.c: Relocate _heapinfo when that allows us to return
2186         core to the system.
2188         * malloc/malloc.c: Move #include <errno.h> outside #ifndef
2189         _MALLOC_INTERNAL.
2191 Mon Mar 27 02:23:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2193         * mach/Makefile (headers): Add mach/mach_traps.h.
2195         * Makerules ($(installed-libcs) rule): Fix typos.
2197         * sysdeps/unix/bsd/bsd4.4/revoke.S: New file.
2198         * sysdeps/stub/revoke.c: New file.
2199         * misc/Makefile (routines): Add revoke.
2200         * posix/unistd.h [__USE_BSD] (revoke): Declare it.
2201         * sysdeps/generic/pty.c (openpty, forkpty): Declare return types.
2202         (forkpty): Declare login_tty.
2203         * misc/logwtmp.c (logwtmp): Declare to return void.
2204         * misc/login_tty.c (login_tty): Include unistd.h.  Declare return type.
2206         * posix/unistd.h [__USE_BSD] (ttyslot): Declare it.
2208         * posix/unistd.h [__USE_BSD] (L_SET, L_INCR, L_XTND): Define
2209         unless L_SET already defined.
2210         * misc/sys/file.h (L_SET, L_INCR, L_XTND): Don't define if L_SET
2211         already defined.
2213         Incorporated -lutil library from 4.4-Lite.
2214         * misc/Makefile (extra-libs, libutil-routines): New variables.
2215         * misc/login.c, misc/login_tty.c, misc/logout.c, misc/logwtmp.c,
2216         sysdeps/generic/pty.c: New files for -lutil incorporated from 4.4-Lite.
2218         Support simple, light-weight unwind-protect mechanism for longjmp.
2219         * setjmp/longjmp.c: Call _longjmp_unwind first thing.
2220         * sysdeps/mach/hurd/jmp-unwind.c: New file.
2221         * sysdeps/stub/jmp-unwind.c: New file.
2222         * sysdeps/i386/jmp_buf.h (_JMPBUF_UNWINDS): New macro.
2223         * sysdeps/mips/jmp_buf.h (_JMPBUF_UNWINDS): New macro.
2224         * setjmp/Makefile (routines): Add jmp-unwind.
2225         * hurd/hurd/userlink.h (struct hurd_userlink): Move `next' and
2226         `prevp' members into new substructure `resource'; add another such
2227         substructure `thread' and members `cleanup' (function ptr) and
2228         `cleanup_data' (generic ptr).
2229         (_hurd_userlink_link, _hurd_userlink_unlink): Insert/remove LINK
2230         into the `_hurd_self_sigstate ()->active_resources' list via the
2231         `thread' substructure.
2232         * hurd/hurd/port.h (_hurd_port_cleanup): Declare it.
2233         (_hurd_port_locked_get): Set LINK->cleanup to _hurd_port_cleanup and
2234         LINK->cleanup_data' to the port extracted.
2235         * hurd/hurd/signal.h (struct hurd_sigstate): New member
2236         `active_resources'.
2237         * hurd/port-cleanup.c: New file.
2238         * hurd/Makefile (routines): Add port-cleanup.
2240         * malloc/malloc.c: Include errno.h.
2242 Sat Mar 25 18:24:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2244         * locale/loadlocale.c (_nl_load_locale): Avoid */ inside comment.
2246 Fri Mar 24 02:35:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2248         * misc/Makefile (headers): Add utmp.h.
2249         * misc/utmp.h: New file, incorporated from 4.4-Lite.
2251         * stdio/printf-parse.h: New file, mostly written by drepper.
2252         * stdio/vfprintf.c: Rewritten, mostly by drepper.
2253         * stdio/printf-prs.c: Rewritten.
2254         * stdio/Makefile (distribute): Add printf-parse.h.
2256 Thu Mar 23 22:03:44 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2258         * sysdeps/unix/start.c [! NO_UNDERSCORES]: Don't declare _start
2259         with asm name.  Just do a ".set start, __start".
2261         * malloc/realloc.c: Call _free_internal instead of free.
2263 Tue Mar 21 00:14:27 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2265         * locale/loadlocale.c (_nl_load_locale): If LOCALE/LC_* is a
2266         directory, open LOCALE/LC_*/SYS_LC_* instead.
2268 Mon Mar 20 03:19:23 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2270         * stdio/fpioconst.c, stdio/fpioconst.h, stdio/gmp-impl.h,
2271         stdio/gmp.h, stdio/longlong.h, stdio/mp_clz_tab.c,
2272         stdio/gen-mpn-copy: Files moved to stdlib.
2273         * stdio/Makefile: All mpn stuff moved to stdlib/Makefile.
2274         * stdlib/Makefile: All the mpn stuff moved here from stdio/Makefile.
2275         * stdio/printf_fp.c: Use ../stdlib to find fpioconst.h and gmp
2276         headers.
2277         * stdlib/strtod.c: Don't use ../stdio to find fpioconst.h and gmp
2278         headers.
2280         * Makefile (parent-mostlyclean): Don't use $(libc.a).
2281         (parent-clean): Use $(objpfx) to find sysd-*.
2282         * Rules (generated): Append dummy.o dummy.c.
2283         * Makerules (lib): Depend on lib-noranlib.
2284         (lib-noranlib): Depend on $(install-lib) in objdir.
2285         (common-mostlyclean): Remove $(install-lib) and stub-$(subdir)
2286         from objdir.  Don't remove TAGS; it comes in the distribution.
2288         * malloc/malloc.c (morecore): Save errno around call to
2289         _realloc_internal.  Don't account for the additional new blocks of
2290         the info table itself when choosing the new table size for the
2291         first crack; if it succeeds, the new blocks will have been found
2292         in existing free space already described by the existing info
2293         table.
2295         * stdio/vfscanf.c (%n): Use READ_IN - 1, so as not to count the
2296         read-ahead character.
2298 Sat Mar 18 14:07:08 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2300         * hurd/dtable.c, hurd/getdport.c, hurd/hurd.h, hurd/hurdexec.c,
2301           hurd/hurdinit.c, hurd/hurdprio.c, hurd/hurdsock.c,
2302           hurd/ports-get.c, hurd/ports-set.c, hurd/setauth.c,
2303           hurd/setuids.c, sysdeps/mach/hurd/i386/trampoline.c:
2304         Get anal with unsigned to pacify compiler.
2306         * stdio/vfscanf.c: Grok positional parameter specs (i.e. %3$d
2307         means %d from 3rd arg).
2309         * sysdeps/mach/hurd/closedir.c: Include hurd/fd.h.
2311         * stdlib/strtol.c: If !GROUP, set END to null.  In loop, test only
2312         END, not GROUP.
2314 Fri Mar 17 12:58:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2316         * Makefile (subdirs): Put elf last.
2318         * sunrpc/Makefile (install-lib): Variable removed.
2319         (rpcsvc-objs): Variable removed.
2320         (extra-objs): Don't include $(rpcsvc-objs).
2321         (extra-libs): New variable, contains librpcsvc.
2322         (librpcsvc-routines): New variable.
2323         (librpcsvc-inhibit-o): New variable, contains .so.
2324         (omit-deps): Set this to $(librpcsvc-routines).
2325         ($(objpfx)rpcgen): Don't use $(libc.a).
2326         (lib, $(objpfx)librpcsvc.a): Targets removed.
2328         * o-iterator.mk, extra-lib.mk: New files.
2329         * Makerules (o-iterator): New variable.
2330         [extra-libs]: Include extra-lib.mk to generate rules for each word
2331         of $(extra-libs).
2332         * Makefile (distribute): Add extra-lib.mk, o-iterator.mk.
2334 Fri Mar 17 13:28:04 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
2336         * sysdeps/ieee754/ldbl2mpn.c (__mpn_extract_long_double):
2337         Handle 80-bit denormalized numbers correctly.
2339         * stdlib/strtod.c, stdlib/strtof.c, stdlib/strtold.c:
2340         (IMPLICIT_ONE, *_MAX_10_EXP_LOG): Macros removed; no longer needed.
2341         * stdlib/strtod.c (RETURN): Add parentheses around return value.
2342         (round_and_return): Correct handling of denormalized numbers.
2344         * stdio/fpioconst.c, stdio/fpioconst.h: Don't use
2345         LDBL_MAX_10_EXP_LOG; LAST_POW10 defines the maximal available
2346         exponent.
2348 Thu Mar 16 00:04:41 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2350         * locale/C-ctype.c: New correct data generated by drepper.
2352         * Rules: Don't use $(libc.a).
2354         Parsing of grouped numbers contributed by Ulrich Drepper.
2355         * stdlib/strtol.c (__strtol_internal): Renamed from strtol.  Take
2356         new flag arg; if nonzero, parse locale-dependent thousands
2357         grouping and interpret only the prefix that is correctly grouped.
2358         (strtol): Define this to call _strtol_internal with zero for the flag.
2359         Use a weak symbol for the definition.
2360         * stdlib/strtod.c (strtod, __strtod_internal): Likewise.
2361         Check for the exponent of the number overflowing the float format.
2362         * stdlib/stdlib.h (__strtof, __strtold): Declarations removed.
2363         (__strto{f,d,ld,l,ul,q,uq}_internal): Declare these functions.
2364         [__OPTIMIZE__]: Define inline functions calling those.
2365         * stdlib/strtold.c (STRTOF): Set to strtold, not __strtold.
2366         (strtold): Remove weak alias.
2367         * stdlib/strtof.c (STRTOF): Set to strtof, not __strtof.
2368         (strtof): Remove weak alias.
2369         * stdlib/grouping.h: New file, written by drepper.
2370         * stdlib/Makefile (distribute): Add grouping.h.
2371         * stdio/vfscanf.c: Grok %' modifier to numeric conversions.  Call
2372         __strtoX_internal with the grouping flag set iff the modifier is
2373         present.
2375 Wed Mar 15 00:40:54 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2377         * sysdeps/generic/memchr.c: Fix typos: limit.h -> limits.h.
2379         * mach/Machrules: Produce static deps for all object flavors.
2380         [interface-library]: Remove all these variables and rules.
2381         ($(interface-library)-routines): Define this variable.
2382         (extra-libs): Append $(interface-library) to this.
2383         * mach/Makefile (interface-library): Omit .a suffix.
2384         * hurd/Makefile: Likewise.
2386 Tue Mar 14 23:40:31 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2388         * stdio/internals.c (flushbuf): If !FLUSH_ONLY, don't skip out
2389         early if no new data in buffer after priming.
2391 Mon Mar 13 01:48:16 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2393         * Makerules (object-suffixes, libtypes): Move all these variables
2394         to Makeconfig.
2395         * Makeconfig (object-suffixes, libtypes): Moved here from Makerules.
2397         * Makerules (build-extra-lib): New canned sequence.
2399         * sysdeps/mach/hurd/euidaccess.c: Include fcntl.h.  Declare ERR;
2400         fix uses of FILE and PORT.  Remove bogus weak alias for `access'.
2402         * sysdeps/mach/hurd/dirfd.c: Include hurd/fd.h and errno.h.
2403         Add missing semicolon.
2404         * sysdeps/mach/hurd/opendir.c: Include hurd/fd.h.  Use a `struct
2405         hurd_fd *' temp var, since DIRP->__fd is a `void *'.
2406         * sysdeps/mach/hurd/readdir.c: Include hurd/fd.h.
2408         * stdlib/wcstombs.c: #if 0 out code for non-ASCII chars until the
2409         locale data format is implemented.
2411         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
2412         Pass &__sigreturn on the stack to the trampoline code, so it is
2413         not position-dependent.
2415         * stdio/printf_fp.c (NDEBUG): Define this to disable assert.
2416         Don't include <stdarg.h>.
2417         (__printf_fp): Last arg ARGS is now `const void **const'; 
2418         dereference ARGS[0] instead of using va_arg.
2420         * locale/setlocale.c: In LC_ALL case, initialize CATEGORY before
2421         loop to install data.
2423         * locale/loadlocale.c (_nl_category_num_items): Use _NL_ITEM_INDEX
2424         to extract number from item code.
2425         (_nl_load_locale): Close the descriptor when finished.
2427         * malloc/realloc.c (_realloc_internal): Call _malloc_internal in
2428         place of malloc.
2430         * time/tzfile.c (__tzfile_default): Initialize RULE_STDOFF to zero.
2432         * stdio/printf_fp.c (group_number): Cast *GROUPING to unsigned int
2433         to avoid warning.
2434         * sysdeps/generic/sigset.h (__SIGSETFN): Cast result of sizeof to
2435         int to avoid warning.
2437         Support building several flavors of objects and libraries.
2438         * Makerules (libtypes, object-suffixes): New variables.
2439         (libtype.*, CFLAGS-*, CPPFLAGS-*): New variables for each object
2440         suffix.
2441         (CFLAGS, CPPFLAGS): Append $(C{,CPP}FLAGS-$(suffix $@)).
2442         (%.so, %.po, %.go): New compilation rules for %.S, %.s, %.c.
2443         (close-check-inhibit-asm): Append a semicolon.
2444         (sysd-rules): Generate rules for each object suffix.
2445         (compile.S, compile.c): Always assume gcc.
2446         (OUTPUT_OPTION): Define unconditionally.
2447         (+make-deps): In generated rule, produce a dependent for each
2448         object suffix.
2449         (.SUFFIXES): Add $(object-suffixes) in place of .o.
2450         (.PRECIOUS): Make all suffix flavors precious.
2451         ($(libc.a)): Target removed.
2452         (lib): Depend on each enabled libtype.
2453         (libobjs, objects, objs): Depend on all the enabled object flavors.
2454         (lib%.a): New pattern rule.
2455         [$(build-shared)=yes] (lib%.so: lib%_pic.a): New pattern rule.
2456         (stamp-$(subdir)): Rewritten to a pattern rule for stamp.%-$(subdir)
2457         to make one for each flavor; library dep rule likewise rewritten.
2458         ($(libc.a)(__.SYMDEF)): Target replaced with one target for each
2459         flavor.
2460         (symdef.%): New pattern rule; helper for __.SYMDEF targets.
2461         (installed-libcs): New variable.
2462         (install): Depend on that instead of
2463         $(libdir)/lib$(libprefix)$(libc-name).a;
2464         that file's rule rewritten to make each enabled libtype.
2465         (install-lib.so): New variable, filters lib%.so from $(install-lib).
2466         (install-lib): Filter out lib%.so after setting install-lib.so.
2467         [$(build-shared)=yes] (install): Install $(install-lib.so).
2468         (common-mostlyclean): Remove all flavors of objects.
2469         * Makefile ($(libc.a)(__.SYMDEF)): Target removed.
2470         [$(build-shared)=yes] (lib): Depend on $(common-objpfx)libc.so.
2472 Sun Mar 12 18:21:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2474         * sysdeps/stub/ulimit.c: Don't include gnu-stabs.h.
2475         * sysdeps/stub/pause.c: Likewise.
2476         * sysdeps/stub/time.c: Likewise.
2478         * stdlib/mbtowc.c: #if 0 out code for non-ASCII chars until the
2479         locale data format is implemented.
2480         * stdlib/wctomb.c: Likewise.
2482         * mach/Makefile ($(objpfx)errsystems.c): Reenable this rule; the
2483         gcc bug is fixed.
2484         * mach/errsystems.c: File removed.
2486         * Makeconfig (libc.a): Variable removed.
2487         (+link): Don't use it.
2489         * configure.in (AC_ARG_ENABLE calls): Use $enableval instead of
2490         assuming `yes'.
2492         * malloc/malloc.h (_malloc_internal, _realloc_internal): Declare these.
2493         * malloc/realloc.c (_realloc_internal): Renamed from realloc;
2494         don't use __realloc_hook.
2495         (realloc): New function; call __realloc_hook ?: _realloc_internal.
2496         * malloc/malloc.c (_malloc_internal): Renamed from malloc;
2497         don't use __malloc_hook.
2498         (malloc): New function; call __malloc_hook ?: _malloc_internal.
2499         Changes from Germano Caronni <caronni@tik.ethz.ch>:
2500         (initialize): Set up _heaplimit to cover the _heapinfo table.
2501         (morecore_recursing): New static variable.
2502         (morecore): If that is set, return null immediately.
2503         When growing the info table, before getting new core from the
2504         system for it, set morecore_recursing and try moving _heapinfo
2505         with _realloc_internal.  When that fails and we get new core, set
2506         _heaplimit to cover the core for the new _heapinfo table.
2507         (register_heapinfo): New function.  Record the _heapinfo table's
2508         own blocks in that table and in the statistics variables.
2509         (initialize, _malloc_internal): Use it after allocating new table.
2511 Fri Mar 10 22:26:28 1995  Jim Meyering  (meyering@comco.com)
2513         * sysdeps/generic/memchr.c: Remove ansidecl.h and clean up for use
2514         by other packages.
2515         [LONG_MAX <= LONG_MAX_32_BITS]: Don't compile 64-bit code.
2517 Fri Mar 10 13:31:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2519         * mach/errorlib.h (errors): Use const for decl.
2521         * time/tzfile.c (uc2ul, _uc2ul): Macros removed.
2522         (decode): New inline function; decode signed 32-bit integers, and
2523         sign-extend properly when long is longer than 32 bits.
2524         (__tzfile_read): Changed all uses of uc2ul to decode.
2525         Decode the transition times properly when sizeof (time_t) > 4.
2527         * stdio/printf.h: Doc fixes.  Don't #include <stddef.h>.
2528         (printf_function): Make last arg ARGS a vector of pointers instead of a
2529         pointer to va_list.
2531 Fri Mar 10 13:46:25 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
2533         * stdio/vfprintf.c [USE_IN_LIBIO] (PAD): Use return value of _IO_padn.
2534         (buffered_vfprintf): Remove line buffer when flush failed.
2536 Fri Mar 10 00:04:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2538         * time/tzfile.c (struct ttinfo): New member `isgmt'.
2539         (__tzfile_read): Read isgmt flags for each type.
2540         (__tzfile_default): When using TZDEFRULES DST rules, adjust
2541         transition times according to the isstd and isgmt flags for the
2542         types of each transition, and adjust each transition to point to
2543         type index either 0 or 1.  Reset type indices 0 and 1 to describe
2544         the user's settings.
2546 Thu Mar  9 22:29:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2548         * locale/categories.def (LC_CTYPE): Merge CLASS_EB and CLASS_EL
2549         into just CLASS.  Add standard/optional flag to all items.
2551         * locale/localeinfo.h (_NL_CURRENT_DEFINE): Fix typo.
2553         * ctype/ctype.h [__BYTE_ORDER == __LITTLE_ENDIAN] (_ISbit):
2554         Rearrange defn to satisfy compiler.
2556         * locale/localeinfo.h: Declare _nl_current.
2558         * configure.in: Use AC_CHECK_TOOL for CC, AR, RANLIB.  Accept args
2559         --enable-shared, --enable-profile, --enable-omitfp; pass settings
2560         through to config.make.
2561         * config.make.in (build-shared, build-profile, build-omitfp): New
2562         config vars.
2564         * elf/elf.h (STN_UNDEF): Renamed to SHN_UNDEF (typo).
2565         (DT_NUM): New macro.
2567         * locale/nl_langinfo.c: Include errno.h and stddef.h.  Fix typos.
2569         * locale/lc-ctype.c (_nl_postload_ctype): Fix macro insanity.
2571         * locale/loadlocale.c (_nl_load_locale) [! MAP_COPY]: Define
2572         MAP_COPY to MAP_PRIVATE.
2574 Thu Mar  9 17:16:53 1995  Brendan Kehoe  (brendan@zen.org)
2576         * sysdeps/alpha/divrem.m4: Undefine `ret' to avoid the definition
2577         that's used inside the alpha sysdep.h.
2579         * sysdeps/alpha/__longjmp.c (__longjmp): Remove obsolete __NORETURN
2580         keyword.
2581         * sysdeps/alpha/__math.h (__copysign): Remove obsolete __CONSTVALUE.
2583         * configure.in: Match `osf*', not `osf1*'.
2584         * configure: Likewise.
2585         * sysdeps/unix/bsd/osf: Renamed from `sysdeps/unix/bsd/osf1'.
2587 Wed Mar  8 13:38:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2589         * posix/glob/configure.bat: Fixes from DJ.
2591         * time/backward, time/europe, time/northamerica, time/pacificnew,
2592         time/zdump.c, time/zic.c, time/tzfile.h, time/private.h,
2593         time/ialloc.c: Code and data updated from ADO's 95b.
2594         * time/emkdir.c: File removed.
2595         * time/Makefile (distribute, extra-objs, zic): Omit it.
2596         
2597         * time/localtime.c: Deansideclized.  Never #define __tzname et al
2598         to non-__ names.
2600         * locale/lc-ctype.c (__ctype_tolower, __ctype_toupper): Use int *
2601         instead of short int *.
2602         * ctype/ctype-info.c: Likewise.
2603         * ctype/ctype.h: Likewise.
2605         * locale/langinfo.h (_NL_CTYPE_CLASS): Use this (just one) instead
2606         of EB and EL versions.
2608 Mon Mar  6 12:34:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2610         * ctype/ctype.h (_ISbit): New macro, defined dependent on byte order.
2611         (_IS* enum): Use _ISbit to produce values.
2613 Sun Mar  5 19:40:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2615         * locale/localeinfo.h: Rewritten for new locale system, using
2616         locale data files and with <langinfo.h> interface.
2617         * locale/setlocale.c: Rewritten to use locale data files.
2618         * langinfo.h: New file.
2619         * locale/langinfo.h: New file.
2620         * locale/nl_langinfo.c: New file.
2621         * locale/loadlocale.c: New file.
2622         * locale/lc-ctype.c: New file.
2623         * locale/lc-messages.c: New file.
2624         * locale/lc-monetary.c: New file.
2625         * locale/lc-numeric.c: New file.
2626         * locale/lc-time.c: New file.
2627         * locale/categories.def: New file.
2628         * locale/Makefile (headers): Remove localeinfo.h.
2629         (distribute): New variable; put localeinfo.h here, and categories.def.
2630         (routines): Add loadlocale.
2631         (categories): New variable.
2632         (aux): Use that to get C-category and lc-category.
2633         * ctype/ctype.h (_IS*): Use independent bits for all but _ISalnum.
2634         * ctype/ctype-info.c: For initial tables, use
2635         _nl_C_LC_CTYPE_{class,toupper,tolower} constant tables defined in
2636         locale/C-ctype.c. 
2637         * locale/C-ctype.c, locale/C-messages.c: New files.
2638         * locale/C-monetary.c, locale/C-numeric.c, locale/C-time.c:
2639         Default "C" locale data updated for new locale system.
2640         * locale/C-collate.c: File removed.
2641         * locale/C-ctype_ct.c: File removed.
2642         * locale/C-ctype_mb.c: File removed.
2643         * locale/C-response.c: File removed.
2644         * locale/localeconv.c: Use _NL_CURRENT macro to access locale data.
2645         * stdio/printf_fp.c, stdio/vfprintf.c, stdio/vfscanf.c,
2646           stdlib/strtod.c, time/asctime.c, time/strftime.c:
2647         Include ../locale/localeinfo.h and use _NL_CURRENT macro to access
2648         locale data.
2649         * time/localtime.c: Don't include <localeinfo.h>.
2650         * time/tzset.c: Don't use locale items for default TZ value or
2651         "GMT" string (use "UTC").
2653         * stdio/vfprintf.c [USE_IN_LIBIO] (PAD): Only call the function if
2654         WIDTH>0; update DONE.
2656         * malloc/malloc.c (morecore): Fix last change to calculate by
2657         blocks instead of bytes.
2659 Fri Mar  3 12:24:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2661         * sysdeps/generic/sys/mman.h (__mmap, __munmap): Declare these.
2662         * sysdeps/unix/sysv/irix4/sys/mman.h: Likewise.
2663         * sysdeps/unix/bsd/ultrix4/sys/mman.h: Likewise.
2664         * sysdeps/unix/bsd/osf1/sys/mman.h: Likewise.
2665         * sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Likewise.
2666         * sysdeps/stub/munmap.c (munmap): Rename to __munmap, add weak
2667         alias munmap.
2668         * sysdeps/unix/mman/munmap.S: Likewise.
2669         * sysdeps/mach/munmap.c: Likewise.
2670         * sysdeps/mach/hurd/mmap.c (mmap): Rename to __mmap, add weak
2671         alias mmap.
2672         * sysdeps/unix/mman/mmap.S: Likewise.
2673         * sysdeps/unix/bsd/sun/sunos4/mmap.c: Likewise.
2674         * sysdeps/stub/mmap.c: Likewise.
2676         * sysdeps/unix/bsd/setsid.c: Use __getpgid instead of __getpgrp.
2678         * sysdeps/unix/dirfd.c: #undef dirfd before function defn.
2680 Thu Mar  2 12:15:24 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2682         * misc/search.h: Add missing semicolon.
2684         * sysdeps/unix/dirfd.c: Fix typo.
2686         * sysdeps/generic/sys/mman.h (mmap): Use __off_t instead of off_t
2687         in decl.
2689         * stdio/vfscanf.c (%c): In no-assign case, fix loop to decrement
2690         WIDTH before test.
2692 Wed Mar  1 00:57:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2694         * stdlib/strtod.c: Fixes from drepper.
2695         [IMPLICIT_ONE]: New macro, one for IEEE754 formats.
2696         * stdlib/strtold.c [IMPLICIT_ONE]: New macro, 0.
2697         * stdlib/strtof.c [IMPLICIT_ONE]: New macro, 1.
2699         * stdio/vfprintf.c: Correctly notice Z modifier.
2701         * misc/search.h: New file.
2702         * misc/Makefile (headers): Add search.h.
2703         * misc/insremque.c: Include search.h.
2704         (struct qelem): Type removed.
2706 Mon Feb 27 07:00:57 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2708         * elf/libelf.h: New file.
2709         * elf/elf_hash.c: New file.
2711 Sun Feb 26 15:51:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2713         Changes from Germano Caronni <caronni@tik.ethz.ch>:
2714         * malloc/malloc.c (morecore): Account in NEWSIZE for the
2715         malloc_info structures for each new block.
2717 Sat Feb 25 02:17:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2719         * sysdeps/mach/hurd/kill.c: When the process has no message port
2720         registered and we have its task port, translate a few signals to
2721         task_suspend/task_resume/task_terminate.
2723 Fri Feb 24 14:40:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2725         * io/Makefile (routines): Add euidaccess.
2726         * sysdeps/mach/hurd/euidaccess.c: New file.
2727         * sysdeps/stub/euidaccess.c: New file.
2728         * posix/unistd.h [__USE_GNU] (euidaccess): Declare it.
2730         * dirent/Makefile (routines): Add dirfd.
2731         * sysdeps/stub/dirfd.c: New file.
2732         * sysdeps/unix/dirfd.c: New file.
2733         * sysdeps/unix/dirstream.h (_DIR_dirfd): New macro.
2734         * dirent/dirent.h (dirfd): Declare new function.  Define as macro
2735         _DIR_dirfd if that is defined.
2736         * sysdeps/mach/hurd/dirstream.h (DIR): Replace `__port' member
2737         with `void *__fd'.
2738         * sysdeps/mach/hurd/opendir.c: Use DIRP->__fd instead of DIRP->__port.
2739         Open the file with `open'; set FD_CLOEXEC on the fd.
2740         * sysdeps/mach/hurd/closedir.c: Likewise.
2741         * sysdeps/mach/hurd/readdir.c: Likewise.
2742         * sysdeps/mach/hurd/dirfd.c: New file.
2744         * posix/Makefile (glob/configure): Do cvs commit if there is a CVS
2745         directory.
2746         (glob/ChangeLog): Likewise.
2748         * locale/locale.h (LC_*): Use small integers instead of bit masks.
2750         * stdio/bug4.c: Put temporary files in /tmp.
2751         * stdio/bug3.c: Likewise.
2752         * stdio/bug5.c: Likewise.
2753         * stdio/test-fseek.c: Likewise.
2754         * stdio/test-popen.c: Likewise.
2756 Wed Feb 22 00:44:41 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2758         * posix/glob/configure.in: Put AC_ISC_POSIX before AC_CONST.
2760         * libc-symbols.h (weak_symbol): New macro.
2762         * hurd/hurdsig.c (_hurd_internal_post_signal): Ignore preempter
2763         elts with null handlers.
2765         * sysdeps/mach/hurd/i386/sigreturn.c: Restore the FPU state.
2767 Tue Feb 21 21:53:30 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2769         * stdlib/random.c (__srandom): Change algorithm used to populate
2770         the state array.
2771         (randtbl): Recomputed with new algorithm.
2773         * sysdeps/sparc/Makefile [subdir=crypt] (crypt): Reset only if set
2774         to original value of `crypt'.
2775         * sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile [subdir=crypt]
2776         (crypt): New variable, set to crypt.solar.
2778 Tue Feb 21 11:50:37 1995  Brendan Kehoe  (brendan@zen.org)
2780         * sysdeps/sparc/Makefile (routines): Reference `dotmul', not `mul'.
2782         * config.h.in: Put comment around ^L to pacify Solaris as here too.
2784 Tue Feb 21 00:10:50 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2786         * string/Makefile (distribute): Add pagecopy.h.
2787         * sysdeps/mach/pagecopy.h: New file.
2788         * sysdeps/generic/pagecopy.h: New file.
2789         * sysdeps/generic/memcpy.c: Include pagecopy.h; call
2790         PAGE_COPY_FWD_MAYBE first when word aligned.
2791         * sysdeps/generic/memmove.c: Likewise.
2793         * misc/bsd-compat.c (longjmp, setjmp): Functions removed.
2794         (getpgrp): Call __getpgid instead of __getpgrp.
2796         * Makefile (subdirs): Add elf first.
2797         * elf/Makefile: New file.
2798         * elf/elf.h: New file.
2800         * sysdeps/unix/start.c (errno): Only define if it's not #define'd
2801         as a macro.
2802         [! NO_UNDERSCORES]: Define `start' as a weak alias, not a symbol
2803         indirection.
2805         * csu/Makefile (crtstuff): New variable consolidates crti, crtn;
2806         add crti_s, crtn_s.
2807         (install-lib, extra-objs, generated-, omit-deps): Use that.
2808         (initfini): New canned sequence, broken out of crt[in].s rule.
2809         (crt[in].s rule): Use it.
2810         (crt[in]_s.s): New rule.
2811         * csu/initfini.c (GLOBAL): New macro; define it to empty if undefined.
2812         (_init, _fini): Use GLOBAL as storage class.
2813         Add self reference to avoid GCC optimizing out the functions.
2815         * Makefile (headers): Remove $(stddef.h).
2816         * Makeconfig (stddef.h): Variable removed; now require gcc version
2817         >= 2.2.
2818         * stddef.h: File removed.
2820 Mon Feb 20 19:42:31 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2822         * sysdeps/unix/bsd/ultrix4/mips/start.S: Remove `__environ'
2823         definition.
2824         * sysdeps/unix/bsd/osf1/alpha/start.S: Likewise.
2826         * stdlib/strtod.c: Allow the string to start with a decimal point
2827         without a leading zero.
2829 Mon Feb 20 04:04:57 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
2831         * Makefile (subdirs): Put csu first.
2833         * sysdeps/mach/hurd/start.c: Include unistd.h for __environ decl.
2835         * Makeconfig [elf=yes] (+preinit, +postinit): New variables, set
2836         to crt[in].o.
2837         (csu-objpfx): New variable.
2838         (+link): Use it to find start.o and $(+preinit), $(+postinit).
2840         * Rules (subdir_lib, all): Depend on objs.
2842         * config.h.in [HAVE_ELF || HAVE_GNU_LD]: Define HAVE_WEAK_SYMBOLS.
2844         * stdlib/strtod.c (PASTE, PASTE1): New helper macros; use these in
2845         access to float.h macros.
2847         * misc/efgcvt.c: New file.
2848         * misc/Makefile (routines): Add efgcvt.
2850 Sun Feb 19 20:10:43 1995  Brendan Kehoe  <brendan@zen.org>
2852         * sysdeps/sparc/mul.S: Renamed to `dotmul.S'.
2853         * sysdeps/sparc/Makefile (routines): Reference `dotmul.S', not `mul.S',
2854         to avoid a misreference that would override sysdeps/generic/mul.c.
2855         * sysdeps/sparc/Dist: Likewise.
2857 Sun Feb 19 17:46:13 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
2859         * posix/Makefile (aux): Add environ.
2860         * posix/environ.c: New file.
2861         * sysdeps/unix/sparc/start.c: Remove __environ definition.
2862         * sysdeps/unix/start.c: Likewise.
2863         * sysdeps/unix/sysv/irix4/start.c: Likewise.
2864         * sysdeps/mach/hurd/start.c: Likewise.
2865         * sysdeps/mach/start.c: Likewise.
2866         * sysdeps/stub/start.c: Likewise.
2868         * sysdeps/unix/make_errlist.c: In produced program, test
2869         HAVE_WEAK_SYMBOLS instead of HAVE_GNU_LD.
2870         * sysdeps/unix/sysv/sysv4/dup2.c: Fix #include of renamed file.
2871         Remove extra weak alias.
2873         * sysdeps/unix/sysv/sysv4/sigaltstack.S: Fix unsquashed file name
2874         in #include.
2876         * libc-symbols.h: Put comment around ^L to pacify Solaris as.
2878         * sysdeps/posix/Makefile (cded-objdir-includes): New variable
2879         replaced cded-objdir-CPPFLAGS; transform $(+includes) instead of
2880         $(CPPFLAGS).
2881         (mk-stdiolim): Use it instead.
2883 Fri Feb 17 12:16:27 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
2885         * mach/mach_init.c (__vm_page_size): Make it initialized.  It does
2886         not work to make a weak alias to a bss symbol.
2888         * stdio/Makefile (distribute): Remove mpn-copy.mk; add gen-mpn-copy.
2889         (tests): Add test-fwrite.
2890         * stdio/test-fwrite.c: New file.
2892         * stdlib/stdlib.h [__USE_GNU]: Declare strtof, strtold, __strtof,
2893         __strtold.
2895         * Makefile (autoconf-it): New canned sequence.  Do cvs commit if
2896         there is a CVS directory.
2897         (configure, %/configure): Use $(autoconf-it) for cmds.
2898         * Make-dist: Likewise.
2899         * sysdeps/mach/hurd/Makefile (errlist.c, errnos.h): Do cvs commit
2900         if there is a CVS directory.
2901         * sysdeps/sparc/Makefile (divrem output): Likewise.
2902         * sysdeps/alpha/Makefile (divrem output): Likewise.
2903         * Makerules ($(gpl2lgpl)): Likewise.
2905         * Makerules (rule to install lib%.a from $(install-lib)): Fix
2906         patsubst to elide ranlib for $(non-lib.a).
2908         * stdio/tst-printf.c: Enable FP tests.  Add some new tests from rfg.
2910 Thu Feb 16 04:06:06 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
2912         * sysdeps/mach/hurd/mig-reply.c: Add weak aliases to non-__ names.
2913         * mach/mig-dealloc.c: Add weak alias mig_deallocate.
2915 Wed Feb 15 13:34:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2917         * hurd/hurd/signal.h (HURD_MSGPORT_RPC): Take new arg
2918         DEALLOC_REFPORT; deallocate the refport after use only if it
2919         evaluates to nonzero.
2920         * sysdeps/mach/hurd/kill.c: Pass DEALLOC_REFPORT arg of one.
2921         * hurd/hurdkill.c: Pass DEALLOC_REFPORT arg of zero.
2923         * hurd/hurdsig.c (abort_rpcs): Take new arg int *STATE_CHANGE; set
2924         *STATE_CHANGE to indicate whether or not we changed *STATE and it
2925         should be committed to the thread.
2926         (abort_all_rpcs): Take new arg LIVE; if nonzero and abort_rpcs changes
2927         state for a thread, do thread_set_state on that thread.  Don't use
2928         SS->intr_port for collecting reply ports, it is not safe to
2929         clobber that when suspending; instead, alloca a temporary array.
2930         (_hurd_internal_post_signal): Pass LIVE flag to abort_all_rpcs:
2931         zero when dying, one when suspending.  Pass new arg to abort_rpcs.
2933         * sysdeps/mach/hurd/stdio_init.c: Don't lock the file descriptor;
2934         HURD_FD_PORT_USE will.  Don't use critical sections around
2935         HURD_FD_PORT_USE invocations.
2937         * sysdeps/mach/hurd/stdio_init.c: Don't make pipes/FIFOs unbuffered.
2938         * sysdeps/posix/stdio_init.c: Likewise.
2940 Tue Feb 14 03:01:12 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2942         * hurd/hurd/fd.h (_hurd_fd_get): Don't do critical section
2943         locking; don't leave the descriptor locked on return.
2944         (HURD_FD_PORT_USE): Don't expect _hurd_fd_get to return the fd locked.
2945         Use a critical section around locking the descriptor.
2946         Check for an empty descriptor and return EBADF.
2947         * sysdeps/mach/hurd/dup2.c: Likewise.
2948         * sysdeps/mach/hurd/fcntl.c: Likewise.
2949         Use HURD_FD_PORT_USE macro for RPCs.
2950         * sysdeps/mach/hurd/sysd-stdio.c: Don't lock the descriptor before
2951         using HURD_FD_PORT_USE.
2952         * sysdeps/mach/hurd/defs.c (init_stdio): Don't expect _hurd_fd_get
2953         to lock the descriptor.
2954         * sysdeps/mach/hurd/stdio_init.c: Use critical sections while
2955         locking the descriptor.
2956         * sysdeps/mach/hurd/fdopen.c: Likewise.
2957         * hurd/fd-close.c: Likewise.
2958         Don't expect the descriptor to be locked on entry.
2959         Check for empty descriptor and return EBADF.
2961         Factor ctty RPC code for SIGTTIN/SIGTTOU generation out into
2962         new functions _hurd_ctty_input and _hurd_ctty_output, each
2963         called with (io_t port, io_t ctty, error_t (*rpc) (io_t)).
2964         * hurd/ctty-input.c: New file.
2965         * hurd/ctty-output.c: New file.
2966         * hurd/Makefile (dtable): Add ctty-input and ctty-output.
2967         * hurd/fd-read.c: Use _hurd_ctty_input.
2968         * hurd/fd-write.c: Use _hurd_ctty_output.
2969         * sysdeps/mach/hurd/ioctl.c: Likewise.
2970         * hurd/hurd/fd.h (_hurd_ctty_input, _hurd_ctty_output): Declare them.
2972 Mon Feb 13 11:36:12 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2974         * stdio/vfscanf.c (%e, %f, %g): Use strtod, __strtold, or __strtof
2975         as appropriate to the type.
2977         * sysdeps/ieee754/huge_val.h (__huge_val_t): New macro to avoid
2978         repeating the union.
2979         (HUGE_VAL, __huge_val): Use it.
2980         [__USE_GNU] (HUGE_VALf, HUGE_VALl): New macros, along with
2981         analogous macros to HUGE_VAL's: __huge_val[fl]_t, __HUGE_VAL[fl]_bytes.
2982         * stdlib/strtold.c (FLOAT_HUGE_VAL): Define this to HUGE_VALl.
2983         (STRTOF): Set to __strtold; define strtold as weak alias.
2984         * stdlib/strtof.c (FLOAT_HUGE_VAL): Define this to HUGE_VALf.
2985         (STRTOF): Set to __strtof; define strtof as weak alias.
2987         * sysdeps/ieee754/ieee754.h (union ieee754_float): New type.
2988         (IEEE754_FLOAT_BIAS): New macro.
2990         * sysdeps/ieee754/mpn2ldbl.c: Fix typos.
2992         * stdlib/testmb.c: Add tests from rfg for using normal chars as
2993         multibyte chars.
2995         * hurd/hurdmalloc.c (malloc_init): Add self reference to avoid not
2996         only the `defined but not used' warning, but also to avoid GCC
2997         optimizing out the entire function (!).
2999         * stdlib/wctomb.c: Include ctype.h.
3001         * Makerules (install-lib-non.a): Don't include $(non-lib.a).
3003         * hurd/hurdmalloc.c: Include string.h; #define bcopy using memcpy.
3005 Sat Feb 11 04:05:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3007         * stdio/printf_fp.c: Include "fpioconst.h".
3008         (_tens_p): Table moved to fpioconst.c, renamed to _fpioconst_pow10.
3009         (__printf_fp): All references changed.
3010         Don't bother computing THOUSANDS_SEP if GROUPING is empty.
3011         (group_number): Use memmove instead of memcpy, since operands overlap.
3012         * stdio/fpioconst.c: New file, tables broken out of stdio/printf_fp.c.
3013         * stdio/fpioconst.h: New file, header declaring the table data.
3014         * stdio/Makefile (aux): Add fpioconst.
3015         (distribute): Add fpioconst.h.
3016         * stdlib/strtod.c: Complete rewrite from drepper.
3017         * stdlib/strtof.c: New file.
3018         * stdlib/strtold.c: New file.
3019         * stdlib/Makefile (routines): Add strtof, strtold.
3020         * stdio/Makefile (routines): Add mpn2flt, mpn2dbl, mpn2ldbl.
3021         * sysdeps/stub/mpn2flt.c: New file.
3022         * sysdeps/stub/mpn2dbl.c: New file.
3023         * sysdeps/stub/mpn2ldbl.c: New file.
3024         * sysdeps/ieee754/mpn2flt.c: New file.
3025         * sysdeps/ieee754/mpn2dbl.c: New file.
3026         * sysdeps/ieee754/mpn2ldbl.c: New file.
3028         * Makerules (install-lib.a): Don't filter out $(non-lib.a).
3029         ($(install-lib.a) in $(libdir) rule): Elide ranlib command when $@
3030         appears in $(non-lib.a).
3032 Fri Feb 10 17:20:14 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3034         * stdlib/wctomb.c: A normal ASCII character translates to itself.
3035         * stdlib/mbtowc.c: Likewise.
3037 Thu Feb  9 03:55:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3039         * setjmp/setjmp.h (longjmp, _longjmp, __longjmp, siglongjmp):
3040         Remove `const' from prototypes.
3041         * sysdeps/m68k/__longjmp.c: Likewise.
3042         * setjmp/longjmp.c: Likewise.
3043         * sysdeps/i386/__longjmp.c: Likewise.
3045         * sysdeps/posix/tempname.c: Increment *IDX at beginning of loop,
3046         so when we return a name, it is incremented past the value that
3047         produces that same name.
3049         * stdio/fgets.c (fgets): Change `size_t' to `int' in prototype.  Sigh.
3050         * stdio/stdio.h (fgets): Likewise.
3052         * stdio/vfprintf.c (printf_unknown): Print ' for INFO->group flag.
3054         * hurd/fd-write.c: Don't clobber ERR with the msg_sig_post call
3055         when it's EBACKGROUND; we need to notice that it is EBACKGROUND
3056         and retry the RPC.
3057         * hurd/fd-read.c: Likewise.
3059 Wed Feb  8 05:01:11 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3061         * sysdeps/mach/sysdep.h (FATAL_PREPARE_INCLUDE): New macro, set to
3062         <mach/mig_support.h>.
3063         * assert/assert-perr.c [FATAL_PREPARE_INCLUDE]: Include it.
3064         * assert/assert.c: Likewise.
3065         * sysdeps/posix/libc_fatal.c: Likewise.
3067 Tue Feb  7 12:17:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3069         * stdio/stdio.h [__STRICT_ANSI__] (stdin, stdout, stderr): Define
3070         as macros, to satisfy ANSI pedants.
3072         * stdio/internals.c (flushbuf): When there is no new data after
3073         priming the stream, return without writing out the buffer.
3074         * stdio/Makefile (tests): Add bug7.
3075         * stdio/bug7.c: New file.
3077         * io/sys/stat.h (S_IFIFO, S_IFLNK, S_IFSOCK, S_ISFIFO, S_ISLNK,
3078         S_ISSOCK): Define only if the corresponding underlying __S_IF* macro
3079         is defined.
3081         * stdio/getdelim.c: Decrement COPY after getting a char from __fillbf.
3083         * stdio/Makefile (tests): Add errnobug.
3084         * stdio/errnobug.c: New file.
3086         * mach/mig_strncpy.c: Include string.h.
3088         * sysdeps/mach/sysdep.h: Don't #include <mach/mig_support.h>.  Its
3089         inlines cause trouble for files defining global register variables.
3091         * stdio/vfprintf.c: Use _strerror_internal for %m.
3093         * sysdeps/ieee754/dbl2mpn.c: Fixes from drepper for 64-bit limbs.
3095         * stdio/printf.h (struct printf_info): New member `group', for %' flag.
3096         * stdio/printf-prs.c (parse_printf_format): Grok %' flag and set flag.
3097         * stdio/vfprintf.c (group_number): New function.
3098         (vfprintf): Support %' flag for integer formats, by calling
3099         group_number after formatting the number in WORK.
3100         * stdio/printf_fp.c (guess_grouping, group_number): New functions.
3101         (__printf_fp): Implement `group' flag using them.
3103         * Makefile (include sysd-dirs): Protect with ifndef avoid-generated.
3104         (parent-clean): Remove sysd-rules, not sysdirs.
3105         (distclean): Pass avoid-generated=yes to submake.
3106         (distclean-1): Remove $(sysdep-$(distclean-1)).
3108         * Makerules (objects, objs): Depend on $(extra-objs) too.
3109         (include sysd-Makefile): Protect with ifndef avoid-generated.
3111         * Makeconfig (+defines, +gnu-stabs, gnu-as): Variables removed.
3112         (CPPFLAGS): Use $(defines) in place of $(+defines).
3113         Replace -D_LIBC with -include $(..)libc-symbols.h.
3115         * stdio/freopen.c: Set seen bit before calling fclose.
3117 Mon Feb  6 18:34:40 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3119         * sysdeps/mach/hurd/setpriority.c: Keep track of numbers of
3120         successes and each kind of failure.  Return EPERM or EACCES only
3121         if every task failed that way.
3123         * sysdeps/mach/hurd/getpriority.c: Handle out of band buffers
3124         correctly.
3126         * sysdeps/mach/hurd/ptrace.c (PTRACE_ATTACH, PTRACE_DETACH): Stop
3127         or resume the process after frobbing.
3129         * hurd/hurdsig.c: Use spin lock operations on sigstate locks
3130         throughout.
3131         (_hurd_thread_sigstate): Don't lock the sigstate lock.
3132         (_hurd_internal_post_signal): New subfunction `mark_pending'; replace
3133         repeated sequences with calls to it.  Don't expect the sigstate
3134         lock to be held on entry; lock it just before examining sigaction.
3135         In handler case, check SS->critical_section after calling
3136         abort_rpcs; if set, mark the signal pending and resume the thread.
3137         * hurd/hurd/signal.h (_hurd_self_sigstate_unlocked): Function removed.
3138         (_hurd_self_sigstate): Don't lock the sigstate lock.
3139         (HURD_EINTR_RPC): Call _hurd_self_sigstate instead of
3140         _hurd_self_sigstate_unlocked.
3141         * hurd/msgportdemux.c: Don't expect _hurd_self_sigstate to lock
3142         the sigstate lock.
3143         * hurd/hurdexec.c: Use spin lock operations on sigstate lock.
3144         Don't expect _hurd_self_sigstate to lock it.  Fix critical section
3145         locking.
3146         * hurd/hurd-raise.c: Likewise.
3147         * sysdeps/mach/hurd/sigsuspend.c: Likewise. 
3148         * sysdeps/mach/hurd/sigpending.c: Likewise.
3149         * sysdeps/mach/hurd/sigaltstack.c: Likewise.
3150         * sysdeps/mach/hurd/sigaction.c: Likewise.
3151         * sysdeps/mach/hurd/sigprocmask.c: Likewise.
3152         * hurd/fd-write.c: Likewise.
3153         * hurd/fd-read.c: Likewise.
3154         * sysdeps/mach/hurd/ioctl.c: Likewise.
3155         * sysdeps/mach/hurd/fork.c: Likewise.
3156         * sysdeps/mach/hurd/i386/sigreturn.c: Likewise.
3157         * sysdeps/mach/hurd/mips/sigreturn.c: Likewise.  
3158         * sysdeps/mach/hurd/alpha/sigreturn.c: Likewise.
3159         * hurd/hurdmsg.c (get_int): Likewise.
3161         * stdio/vfprintf.c: Include stddef.h.  Fix typos in libio code.
3163         * stdio/vfprintf.c (__pad): Function renamed to __printf_pad, made
3164         global.
3165         (PAD): Caller changed.
3166         * stdio/printf_fp.c (__pad): Function removed.
3167         (PAD): Use __printf_pad instead.
3169 Sun Feb  5 17:59:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3171         Merged new FP printer by Ulrich Drepper.
3172         * stdio/printf_fp.c: Rewrite by drepper.
3173         * stdio/Makefile (routines): Add ldbl2mpn.
3174         * sysdeps/ieee754/ieee754.h (union ieee754_double): Add `ieee_nan'
3175         member.
3176         (union ieee854_long_double): New type, from drepper.
3177         (IEEE754_DOUBLE_BIAS, IEEE854_LONG_DOUBLE_BIAS): New macros.
3178         * sysdeps/ieee754/ldbl2mpn.c: New file, by drepper.
3179         * sysdeps/stub/ldbl2mpn.c: New file.
3180         * math/Makefile (routines): Add isinfl and isnanl.
3181         * sysdeps/ieee754/isinfl.c: New file.
3182         * sysdeps/stub/isinfl.c: New file.
3183         * sysdeps/ieee754/isnanl.c: New file.
3184         * sysdeps/stub/isnanl.c: New file.
3186         * malloc/malloc.c (__malloc_extra_blocks): New variable.
3187         (malloc): When getting more core, get __malloc_extra_blocks extra;
3188         put the new block at the end of the free list and let the next loop
3189         iteration use the initial portion of it.
3190         * malloc/free.c (_free_internal): Account for twice
3191         __malloc_extra_blocks in deciding if we have so much extra memory
3192         we should return it to the system.
3193         * malloc/malloc.h (__malloc_extra_blocks): Declare it.
3194         * posix/glob.c (prefix_array, glob_pattern_p): Remove gratuitous
3195         const in parameter decl.
3197         * sysdeps/unix/mips/sysdep.h (ENTRY): Add `.ent' directive.
3199 Fri Feb  3 18:15:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3201         * munch.awk (EXTERNS): Print decls using __P instead of EXFUN.
3203         * sysdeps/mips/setjmp_aux.c: Use ENV[0].__jmpbuf[0].
3204         * sysdeps/mips/bsd-_setjmp.S: Use `li' insn instead of `move'.
3205         * sysdeps/mips/bsd-setjmp.S: Likewise.
3206         * sysdeps/mips/__longjmp.c: Remove obsolete __NORETURN keyword.
3207         * sysdeps/mach/hurd/mips/trampoline.c (_hurd_setup_sighandler):
3208         Use `long int' for sigcode.  Use explicit register numbers instead
3209         of names.
3210         (_hurdsig_rcv_interrupted_p): Use _hurdsig_catch_fault.
3211         * sysdeps/mach/hurd/mips/exc2signal.c: Use `long int' for sigcode.
3213 Thu Feb  2 20:06:45 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3215         * hurd/hurdmalloc.c: Remove bogus bcopy decl.
3217         * mach/mig_strncpy.c: Add missing `const' in prototype.  Rewritten
3218         using __stpncpy.
3220         * io/ftw.c (ftw, ftw_dir): Treat ENOENT from stat like EACCES.
3222         * stdio/vfprintf.c: Set PREC to zero for %. without following digit.
3224 Tue Jan 31 13:49:57 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3226         * mach/mig_strncpy.c: Include mach.h instead of string.h.  Use
3227         vm_size_t instead of size_t for arg and return types.
3229         * mach/mach_init.c: Don't declare __mig_init; mach/mig_support.h
3230         already does.
3232 Mon Jan 30 00:33:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3234         * set-hooks.h (RUN_HOOK): Dereference PTR properly.
3236         * configure.in (friendly stddef.h check): Write override defn for
3237         `stddef.h' Make variable.
3238         (AC_LINK_FILES): Use `echo ...` to avoid " " appearing nonempty.
3240         * configure.in (host_os=sysv4*|solaris2*): Set elf=yes.
3242         * Rules ($(objpfx)dummy.o): Write an empty function, not just an
3243         empty file.
3245         * sysdeps/sparc/Makefile (sysdep-realclean): New variable.
3247 Sat Jan 28 03:38:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3249         * Makefile (distribute): Remove gnu-stabs.h; add libc-symbols.h.
3251         * sysdeps/mach/sysdep.h [ASSEMBLER]: Protect include of
3252         mach/machine/syscall_sw.h with this.
3254 Fri Jan 27 18:33:20 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3256         * hurd/hurd/signal.h: Include <hurd/msg.h>, and <spin-lock.h>
3257         instead of <lock-intern.h>.
3258         (struct hurd_sigstate): Member `lock' changed to a `spin_lock_t'.
3259         (_hurd_critical_section_lock): Use spin lock operators.
3260         Don't hold the sigstate lock, unlock it after setting the flag.
3261         (_hurd_critical_section_unlock): Take the sigstate lock
3262         to clear the flag; while holding it, check pending signals.  After
3263         unlocking, sig_post ourselves if there were pending signals.
3265         * hurd/catch-exc.c (_S_catch_exception_raise): Don't take the
3266         sigstate lock.  If it is locked, clear SS->critical_section and
3267         SS->context, and unlock it.
3269         * sysdeps/mach/sysdep.h (EXT, LEXT): New macros.
3271         * set-init.c (__libc_init) [HAVE_ELF]: Run _init and atexit (_fini).
3272         * munch-tmpl.c: Likewise.
3274         * mach/Makefile (routines): Don't filter out syscall_% from
3275         $(mach-syscalls).
3277 Fri Jan 27 17:53:49 1995  Jim Meyering  (meyering@comco.com)
3279         * posix/fnmatch.c: Declare errno if it's not defined.
3280         That's simpler than testing #if !defined(__GNU_LIBRARY__)
3281         && !defined(STDC_HEADERS).
3283 Fri Jan 27 15:40:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3285         * csu/Makefile: New file.
3286         * csu/initfini.c: New file.
3287         * Makefile (+other_dirs): Add csu.
3288         (+init): Variable renamed to libc-init.  All references changed.
3289         (aux): Remove start.
3290         (install-lib): Variable removed.
3291         (crt0.o, Mcrt1.o  crt1.o): Targets removed.
3293         * mach/Machrules (static deps of RPC_*.o): Add $(..)libc-symbols.h
3294         and $(objpfx)config.h.
3295         (static deps of RPC alias *.o): Removed.
3297         * sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h [ASSEMBLER]:
3298         Protect macros with this.
3299         * sysdeps/unix/bsd/osf1/alpha/sysdep.h: Likewise.
3300         * sysdeps/unix/bsd/sequent/i386/sysdep.h: Likewise.
3301         * sysdeps/unix/bsd/vax/sysdep.h: Likewise.
3302         * sysdeps/unix/bsd/sun/m68k/sysdep.h: Likewise.
3303         * sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h: Likewise.
3304         * sysdeps/unix/mips/sysdep.h: Likewise.
3306 Thu Jan 26 00:02:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3308         * Makerules (compile.[Sc]): Match gcc in $(CC) better.
3309         (BUILD_CFLAGS): Instead of $(config-defines), use -include config.h.
3311         * hurd/intr-rpc.awk: Emit weak alias.
3313         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Call getpgrp instead of
3314         __getpgrp.
3316         * sysdeps/unix/bsd/hp/m68k/sysdep.h [ASSEMBLER]: Protect macros with
3317         this.
3318         * sysdeps/unix/i386/sysdep.h: Likewise.
3319         * sysdeps/unix/sparc/sysdep.h: Likewise.
3321         * io/ftw.c: Avoid `ret' as variable name.
3322         * posix/glob.c: Likewise.
3324         * ctype/ctype.h (_ISalpha): Define as its own bit.
3325         * locale/C-ctype_ct.c (__ctype_b_C): Set _ISalpha bit in all letters.
3327         * stdlib/exit.c [HAVE_GNU_LD]: Protect #include "set-hooks.h" and
3328         DEFINE_HOOK with this.
3330 Wed Jan 25 00:45:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3332         * hurd/hurdinit.c: Use DECLARE_HOOK instead of `extern DEFINE_HOOK'.
3333         * mach/spin-solid.c (spin_lock_solid): Define as weak alias to __name.
3334         * mach/shortcut.awk: Emit weak alias.
3335         * mach/spin-lock.c: Add weak aliases for all spin-lock.h functions.
3336         * mach/mach_init.c (mach_init, vm_page_size): Defin weak aliases for
3337         __ names.
3338         * mach/Makefile (lock): Remove spin-syms.
3339         (routines): Remove __ names, vm_page_size, msgserver_t.
3340         ($(mach-syscalls) rule): Generate files without __, add weak alias.
3341         Remove symbol alias file rule.
3342         ($(mach-shortcuts) rule): Likewise.
3343         [!mach-shortcuts] (user-interfaces): Filter out mach/mach4 too.
3344         * mach/Machrules (if-calls.c): Variable and rule removed.
3345         (interface-headers): Don't add $($(if)-calls).
3346         (transform-user-stub): Define to add weak alias.
3347         * set-hooks.h: Use new libc-symbols.h set access macros.
3348         * time/Makefile (routines): Remove __ names.
3349         (aux): Variable removed.
3350         * hurd/Makefile: Likewise.
3351         * sysdeps/unix/start.c (environ): Define as weak alias for __environ.
3352         (data_start): Define as weak alias for __data_start.
3353         * sysdeps/mach/hurd/start.c: Likewise.
3354         * sysdeps/unix/sparc/start.c: Likewise.
3355         * sysdeps/unix/make_errlist.c: Emit weak aliases for sys_nerr and
3356         sys_errlist.
3357         * sysdeps/mach/hurd/errlist.awk: Likewise.
3358         * sysdeps/unix/bsd/osf1/alpha/start.S (environ): Define as weak
3359         alias for __environ.
3360         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
3361         * sysdeps/stub/setdomain.c: Use new stub_warning macro.
3362         * sysdeps/stub/getdomain.c: Likewise.
3363         * sysdeps/stub/vhangup.c: Likewise.
3364         * sysdeps/stub/swapon.c: Likewise.
3365         * sysdeps/stub/sendmsg.c: Likewise.
3366         * sysdeps/stub/recvmsg.c: Likewise.
3367         * sysdeps/stub/acct.c: Likewise.
3368         * sysdeps/stub/isinf.c: Likewise.  Add weak alias isinf for __isinf.
3369         * sysdeps/mach/hurd/_exit.c: Remove obsolete __NORETURN keyword.
3370         * sysdeps/posix/libc_fatal.c: Likewise.
3371         * sysdeps/i386/abort.c: Likewise.
3372         * sysdeps/i386/__longjmp.c: Likewise.
3373         * sysdeps/generic/make_siglist.c: Emit defn always for
3374         _sys_siglist.  Emit weak alias to sys_siglist.
3375         * sysdeps/generic/atan.c: Remove obsolete __CONSTVALUE keyword.
3376         * sysdeps/ieee754/log10.c: Likewise.
3377         * time/difftime.c: Likewise.
3378         * stdlib/random.c (srand): Define as weak alias for __srandom.
3379         * stdlib/exit.c: Remove obsolete __NORETURN keyword.  Use set-hooks
3380         macros for __libc_atexit.
3381         * stdlib/Makefile (routines): Remove __random, srand.
3382         * stdio/gets.c: Use new link_warning macro instead of old
3383         warn_references.
3384         * stdio/Makefile (routines): Remove __ names.
3385         (aux): Remove syms-stdio.
3386         * socket/Makefile (routines): Added e on getpeernam and getsocknam.
3387         * setjmp/longjmp.c: Remove obsolete __NORETURN keyword.
3388         * setjmp/Makefile (routines): Remove _longjmp, siglongjmp.
3389         * setjmp/setjmp.h: Replace __NORETURN keyword with __attribute__ uses.
3390         * stdio/stdio.h: Likewise.
3391         * misc/Makefile (routines): Remove __ names.
3392         (aux): Remove data_start.
3393         * sysdeps/mach/hurd/defs.c: Don't include gnu-stabs.h.
3394         * sysdeps/mach/hurd/brk.c: Likewise.
3395         * hurd/hurdid.c: Likewise.
3396         * hurd/hurdpid.c: Likewise.
3397         * hurd/openport.c: Likewise.
3398         * hurd/hurdsock.c: Likewise.
3399         * hurd/hurdsig.c: Likewise.
3400         * hurd/hurdrlimit.c: Likewise.
3401         * hurd/hurdmalloc.c: Likewise.
3402         * hurd/dtable.c: Likewise.
3403         * hurd/setauth.c: Likewise.
3404         * misc/progname.c: Likewise.
3405         * misc/init-misc.c: Likewise.
3406         * sysdeps/generic/vfork.c: Likewise.
3407         * sysdeps/unix/bsd/init-posix.c: Likewise.
3408         * math/math.h: Replace __CONSTVALUE keyword with __attribute__ uses.
3409         * time/time.h: Likewise.
3410         * math/Makefile (routines): Remove __ names.
3411         * io/Makefile: Likewise.
3412         * termios/Makefile: Likewise.
3413         * resource/Makefile: Likewise.
3414         * signal/Makefile: Likewise.
3415         * dirent/Makefile: Likewise.
3416         * assert/assert.h: Replace __NORETURN keyword with __attribute__
3417         uses.  Functions return void and macros deal with this.
3418         * assert/assert-perr.c: Remove obsolete __NORETURN keyword.
3419         Return void.  Don't include gnu-stabs.h.
3420         * assert/assert.c: Likewise.
3421         * posix/Makefile (routines): Remove __ names, setpgrp.  Add
3422         getpgid.
3423         (aux): Remove environ.
3424         * stdlib/stdlib.h (abort, exit): Replace __NORETURN keyword with
3425         __attribute__ use.
3426         * posix/unistd.h (_exit): Likewise.
3427         (__getpgrp, __setpgrp): Declarations removed.
3428         (__getpgid, getpid): Declare these.
3430         * configure.in (host_os=gnuelf|linuxelf): Set elf=yes.  Do AC_SUBST
3431         for gnu_ld, gnu_as, elf, and weak.  Call AC_LINK_FILEES on
3432         $libc_link_{sources,dests}.
3433         * sysdeps/unix/configure.in: Remove __ from file names.  Don't
3434         create files, just add to libc_link_{dests,sources}.
3436         * config.make.in (gnu-as, gnu-ld, elf, weak-symbols): New variables.
3438         * config.h.in: Add #undefs used by sysdeps configures.
3440         * sysdeps/unix/sysv/sysv4/Makefile (sysdep_routines): Removed
3441         __setpgid, __getpgid.
3442         * sysdeps/unix/sysv/sco3.2.4/setpgid.c: Included file was renamed
3443         from setpgrp.c.
3444         * sysdeps/unix/sysv/sco3.2.4/getpgid.c: Included file was renamed
3445         from __getpgrp.c.
3446         * sysdeps/unix/bsd/getpgrp.c: File removed.
3447         * sysdeps/generic/getpgrp.c: Moved from sysdeps/stub/getpgrp.c.
3448         Call __getpgid with zero.
3449         * sysdeps/stub/setpgid.c: Renamed __setpgrp to __setpgid, added
3450         weak aliases setpgid and setpgrp.
3451         * sysdeps/unix/sysv/irix4/setpgid.S: Likewise.
3452         * sysdeps/unix/common/setpgid.S: Likewise.
3453         * sysdeps/mach/hurd/setpgid.c: Likewise.
3454         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
3455         Use subcall 5 to __pgrpsys.
3456         * sysdeps/stub/getpgid.c: Renamed __getpgrp to __getpgid, added
3457         weak alias getpgid.
3458         * sysdeps/mach/hurd/getpgid.c: Likewise.
3459         * sysdeps/unix/sysv/irix4/getpgid.S: Likewise.
3460         * sysdeps/unix/common/getpgid.S: Likewise.
3461         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
3462         Use subcall 4 to __pgrpsys.
3463         * sysdeps/stub/__getpgrp.c: Renamed to getpgid.c.
3464         * sysdeps/unix/sysv/sysv4/__getpgrp.c: Renamed to getpgid.c.
3465         * sysdeps/unix/sysv/sco3.2.4/__getpgrp.c: Renamed to getpgid.c.
3466         * sysdeps/unix/sysv/irix4/__getpgrp.S: Renamed to getpgid.S.
3467         * sysdeps/unix/common/__getpgrp.S: Renamed to getpgid.S.
3468         * sysdeps/mach/hurd/__getpgrp.c: Renamed to getpgid.c.
3469         * sysdeps/stub/setpgrp.c: Renamed to setpgid.c.
3470         * sysdeps/unix/sysv/sysv4/setpgrp.c: Renamed to setpgid.c.
3471         * sysdeps/unix/sysv/sco3.2.4/setpgrp.c: Renamed to setpgid.c.
3472         * sysdeps/unix/sysv/irix4/setpgrp.S: Renamed to setpgid.S.
3473         * sysdeps/unix/common/setpgrp.S: Renamed to setpgid.S.
3474         * sysdeps/mach/hurd/setpgrp.c: Renamed to setpgid.c.
3476         * sysdeps/unix/bsd/hp/m68k/getdents.S: Included file was renamed
3477         from __getdents.S.
3479         * sysdeps/posix/defs.c: Don't include gnu-stabs.h.
3480         * sysdeps/stub/sigpending.c: Use new libc-symbols.h macro for stub
3481         warning.
3482         * sysdeps/stub/fexecve.c: Likewise.
3483         * sysdeps/stub/fchdir.c: Likewise.
3484         * sysdeps/stub/fchflags.c: Likewise.
3485         * sysdeps/stub/chflags.c: Likewise.
3487         * sysdeps/m68k/__longjmp.c: Remove __NORETURN; it's obsolete.
3488         * sysdeps/generic/abort.c: Likewise.
3489         * sysdeps/ieee754/ldexp.c: Remove __CONSTVALUE; it's obsolete.
3491         * hurd/hurdioctl.c: Include hurd/ioctl.h.
3492         (_hurd_ioctl_handler_lists): Define this set.
3493         (_hurd_lookup_ioctl_handler): New function.
3494         * hurd/hurd/fd.h: ioctl handler stuff moved to hurd/ioctl.h.
3495         * hurd/hurd/ioctl.h: New file, broken out of hurd/fd.h.
3496         (_hurd_lookup_ioctl_handler): Declare it.
3497         (ioctl_handler_t): New typedef.  Use it throughout.
3498         * sysdeps/mach/hurd/ioctl.c: Include hurd/ioctl.h.
3499         (_hurd_ioctl_handler_lists): Don't define.
3500         (__ioctl): Call _hurd_lookup_ioctl_handler.
3502         * stdlib/strtol.c (maxquad): Make this const.
3503         [__GNUC__ == 2 && __GNUC_MINOR__ < 7]: Only use maxquad in this case.
3505         * posix/glob/configure.in: Put AC_AIX and AC_MINIX early, before
3506         any compile tests.
3508         * sysdeps/mach/hurd/setitimer.c (timer_thread): Call
3509         __msg_sig_post_request, not __sig_post_request.
3511         * misc/getusersh.c: Renamed to getusershell.c.
3512         * sysdeps/stub/sethostnam.c: Renamed to sethostname.c.
3513         * sysdeps/unix/inet/sethostnam.S: Renamed to sethostname.S.
3514         * sysdeps/unix/sysv/sysv4/sethostnam.c: Renamed to sethostname.c.
3515         * sysdeps/mach/hurd/sethostnam.c: Renamed to sethostname.c.
3517 Tue Jan 24 00:14:30 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3519         * sysdeps/stub/settod.c: Renamed to settimeofday.c.
3520         * sysdeps/unix/bsd/settod.S: Renamed to settimeofday.c.
3521         * sysdeps/unix/sysv/settod.c: Renamed to settimeofday.c.
3522         * sysdeps/mach/hurd/settod.c: Renamed to settimeofday.c.
3523         * sysdeps/stub/setitmr.c: Renamed to setitimer.c.
3524         * sysdeps/unix/common/setitmr.S: Renamed to setitimer.S.
3525         * sysdeps/mach/hurd/setitmr.c: Renamed to setitimer.c.
3526         * sysdeps/posix/fpathcon.c: Renamed to fpathconf.c.
3527         * sysdeps/stub/fpathcon.c: Renamed to fpathconf.c.
3528         * sysdeps/unix/sysv/irix4/fpathcon.c: Renamed to fpathconf.c.
3529         * sysdeps/stub/getprio.c: Renamed to getpriority.c.
3530         * sysdeps/unix/sysv/irix4/getprio.c: Renamed to getpriority.c.
3531         * sysdeps/unix/common/getprio.S: Renamed to getpriority.S.
3532         * sysdeps/mach/hurd/getprio.c: Renamed to getpriority.c.
3533         * sysdeps/stub/setprio.c: Renamed to setpriority.c.
3534         * sysdeps/unix/sysv/irix4/setprio.c: Renamed to setpriority.c.
3535         * sysdeps/unix/common/setprio.S: Renamed to setpriority.S.
3536         * sysdeps/mach/hurd/setprio.c: Renamed to setpriority.c.
3537         * sysdeps/stub/getpeernam.c: Renamed to getpeername.c.
3538         * sysdeps/unix/inet/getpeernam.S: Renamed to getpeername.S.
3539         * sysdeps/unix/sysv/linux/getpeernam.S: Renamed to getpeername.S.
3540         * sysdeps/mach/hurd/getpeernam.c: Renamed to getpeername.c.
3541         * sysdeps/stub/getsocknam.c: Renamed to getsockname.c.
3542         * sysdeps/unix/inet/getsocknam.S: Renamed to getsockname.S.
3543         * sysdeps/unix/sysv/linux/getsocknam.S: Renamed to getsockname.S.
3544         * sysdeps/mach/hurd/getsocknam.c: Renamed to getsockname.c.
3545         * sysdeps/stub/sigaltstk.c: Renamed to sigaltstack.c.
3546         * sysdeps/unix/bsd/bsd4.4/sigaltstk.S: Renamed to sigaltstack.S.
3547         * sysdeps/unix/sysv/sysv4/sigaltstk.S: Renamed to sigaltstack.S.
3548         * sysdeps/mach/hurd/sigaltstk.c: Renamed to sigaltstack.c.
3550         * sysdeps/mach/hurd/i386/sigreturn.c: Call __msg_sig_post instead
3551         of __sig_post.
3552         * sysdeps/mach/hurd/sigsuspend.c: Likewise.
3553         * sysdeps/mach/hurd/kill.c: Likewise.
3554         * sysdeps/mach/hurd/sigprocmask.c: Likewise.
3556         * misc/sys/cdefs.h (__NORETURN, __CONSTVALUE): Macros removed.
3557         [!__GNUC__ || __GNUC__<2] (__attribute__): Define to empty.
3559         * sysdeps/stub/remove.c: New file.
3560         * sysdeps/posix/remove.c: New file.
3562 Mon Jan 23 03:26:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3564         * time/mktime.c [weak_alias] (timelocal): Define as weak alias for
3565         mktime.
3566         * mach/mig_strncpy.c (mig_strncpy): Define as weak alias for
3567         __mig_strncpy.
3568         * mach/msg-destroy.c: Renamed from __msg_dest.c.
3569         (mach_msg_destroy): Define as weak alias for __mach_msg_destroy.
3570         * mach/setup-thread.c (mach_setup_thread): Define as weak alias.
3571         * time/tzset.c (tzname, daylight, timezone): Define as weak
3572         aliases for __ names.
3573         * hurd/hurdkill.c (hurd_sig_post): Define as weak alias.
3574         * hurd/hurdlookup.c: Add weak aliases for non-__ names.
3575         * Makefile (+init): Test $(gnu-ld)=yes, not for $(+gnu-stabs)
3576         being defined.
3578 Sun Jan 22 15:19:51 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3580         * string/Makefile (routines): Remove __ names, index, rindex, and
3581         bcmp.
3582         * sysdeps/alpha/strchr.c [weak_alias] (index): Define as weak
3583         alias for strchr.
3584         * sysdeps/generic/strchr.c: Likewise.
3585         * sysdeps/generic/strrchr.c [weak_alias] (rindex): Define as weak
3586         alias for strrchr.
3587         * sysdeps/generic/memcmp.c [weak_alias] (bcmp): Define as weak
3588         alias for memcmp.
3590         * malloc/free.c (cfree): Define this function, with weak_alias if
3591         available, otherwise a C function.
3592         * malloc/Makefile (gmalloc-routines): Remove cfree.
3594 Sat Jan 21 08:08:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3596         * stdio/fseek.c: Do move bufp by O when that puts it exactly at
3597         get_limit.  This has the effect of no-op'ing properly for zero.
3599         * configure.in: Add AC_CONFIG_HEADER(config.h).
3600         (--with-elf, --with-weak-symbols): Grok these and define HAVE_*.
3601         * config.h.in: New file.
3603         * setjmp/longjmp.c: Add weak aliases _longjmp, siglongjmp.
3604         All code converted to use weak symbols, defined in the files which
3605         define the real code (with the __ names, the non-__ names are weak).
3606         All old symbol alias files removed.
3607         Many files renamed to remove __ prefix since there is now just
3608         the one file for both the __ and non-__ name for each function.
3609         * libc-symbols.h: New file.
3610         * set-hooks.h: Use libc-symbols.h macros for accessing symbol
3611         sets.
3612         * gnu-stabs.h: Prepend #error this file is obsolete.
3613         * sysdeps/ieee754/ldexp.c: Add weak aliases scalb and __scalb.
3614         * sysdeps/stub/__access.c: Renamed to access.c; added weak alias
3615         access.
3616         * sysdeps/unix/common/__access.S: Likewise.
3617         * sysdeps/mach/hurd/__access.c: Likewise.
3618         * sysdeps/stub/__adjtime.c: Renamed to adjtime.c; added weak alias
3619         adjtime.
3620         * sysdeps/unix/common/__adjtime.S: Likewise.
3621         * sysdeps/mach/__adjtime.c: Likewise.
3622         * sysdeps/mach/hurd/__adjtime.c: Likewise.
3623         * sysdeps/stub/__brk.c: Renamed to brk.c; added weak alias brk.
3624         * sysdeps/unix/bsd/sun/m68k/__brk.S: Likewise.
3625         * sysdeps/unix/bsd/vax/__brk.S: Likewise.
3626         * sysdeps/unix/bsd/hp/m68k/__brk.S: Likewise.
3627         * sysdeps/unix/bsd/osf1/alpha/__brk.S: Likewise.
3628         * sysdeps/unix/i386/__brk.S: Likewise.
3629         * sysdeps/unix/sparc/__brk.S: Likewise.
3630         * sysdeps/unix/mips/__brk.S: Likewise.
3631         * sysdeps/mach/hurd/__brk.c: Likewise.
3632         * sysdeps/standalone/__brk.c: Likewise.
3633         * sysdeps/stub/__chdir.c: Renamed to chdir.c; added weak alias chdir.
3634         * sysdeps/unix/__chdir.S: Likewise.
3635         * sysdeps/mach/hurd/__chdir.c: Likewise.
3636         * sysdeps/stub/__chmod.c: Renamed to chmod.c; added weak alias chmod.
3637         * sysdeps/unix/__chmod.S: Likewise.
3638         * sysdeps/mach/hurd/__chmod.c: Likewise.
3639         * sysdeps/stub/__chown.c: Renamed to chown.c; added weak alias chown.
3640         * sysdeps/unix/__chown.S: Likewise.
3641         * sysdeps/mach/hurd/__chown.c: Likewise.
3642         * sysdeps/stub/__close.c: Renamed to close.c; added weak alias close.
3643         * sysdeps/unix/__close.S: Likewise.
3644         * sysdeps/mach/hurd/__close.c: Likewise.
3645         * sysdeps/standalone/__close.c: Likewise.
3646         * sysdeps/generic/__copysign.c: Renamed to copysign.c; added weak
3647         alias copysign.
3648         * sysdeps/ieee754/__copysign.c: Likewise.
3649         * sysdeps/alpha/__copysign.c: Likewise.
3650         * sysdeps/ieee754/__drem.c: Renamed to drem.c; added weak alias drem.
3651         * sysdeps/m68k/fpu/__drem.c: Likewise.
3652         * sysdeps/stub/__drem.c: Likewise.
3653         * sysdeps/posix/__dup.c: Renamed to dup.c; added weak alias dup.
3654         * sysdeps/stub/__dup.c: Likewise.
3655         * sysdeps/unix/__dup.S: Likewise.
3656         * sysdeps/posix/__dup2.c: Renamed to dup2.c; added weak alias dup2.
3657         * sysdeps/stub/__dup2.c: Likewise.
3658         * sysdeps/unix/sysv/sysv4/__dup2.c: Likewise.
3659         * sysdeps/unix/sysv/irix4/__dup2.c: Likewise.
3660         * sysdeps/unix/common/__dup2.S: Likewise.
3661         * sysdeps/mach/hurd/__dup2.c: Likewise.
3662         * sysdeps/stub/__execve.c: Renamed to execve.c; added weak alias
3663         execve.
3664         * sysdeps/unix/__execve.S: Likewise.
3665         * sysdeps/mach/hurd/__execve.c: Likewise.
3666         * sysdeps/generic/__expm1.c: Renamed to expm1.c; added weak alias
3667         expm1.
3668         * sysdeps/m68k/fpu/__expm1.c: Likewise.
3669         * sysdeps/stub/__fchmod.c: Renamed to fchmod.c; added weak alias
3670         fchmod.
3671         * sysdeps/unix/common/__fchmod.S: Likewise.
3672         * sysdeps/mach/hurd/__fchmod.c: Likewise.
3673         * sysdeps/stub/__fchown.c: Renamed to fchown.c; added weak alias
3674         fchown.
3675         * sysdeps/unix/common/__fchown.S: Likewise.
3676         * sysdeps/mach/hurd/__fchown.c: Likewise.
3677         * sysdeps/stub/__fcntl.c: Renamed to fcntl.c; added weak alias fcntl.
3678         * sysdeps/unix/__fcntl.S: Likewise.
3679         * sysdeps/mach/hurd/__fcntl.c: Likewise.
3680         * math/__finite.c: Renamed to finite.c; added weak alias finite.
3681         * sysdeps/posix/__flock.c: Renamed to flock.c; added weak alias flock.
3682         * sysdeps/stub/__flock.c: Likewise.
3683         * sysdeps/unix/bsd/__flock.S: Likewise.
3684         * sysdeps/mach/hurd/__flock.c: Likewise.
3685         * hurd/__fopenport.c: Renamed to fopenport.c; added weak alias
3686         fopenport.
3687         * sysdeps/stub/__fork.c: Renamed to fork.c; added weak alias fork.
3688         * sysdeps/unix/__fork.S: Likewise.
3689         * sysdeps/unix/bsd/osf1/alpha/__fork.S: Likewise.
3690         * sysdeps/unix/i386/__fork.S: Likewise.
3691         * sysdeps/unix/sparc/__fork.S: Likewise.
3692         * sysdeps/unix/mips/__fork.S: Likewise.
3693         * sysdeps/mach/hurd/__fork.c: Likewise.
3694         * sysdeps/posix/__fpathcon.c: Renamed to fpathcon.c; added weak
3695         alias fpathconf.
3696         * sysdeps/stub/__fpathcon.c: Likewise.
3697         * sysdeps/unix/sysv/irix4/__fpathcon.c: Likewise.
3698         * sysdeps/stub/__fstat.c: Renamed to fstat.c; added weak alias fstat.
3699         * sysdeps/unix/__fstat.S: Likewise.
3700         * sysdeps/unix/sysv/sysv4/i386/__fstat.S: Likewise.
3701         * sysdeps/mach/hurd/__fstat.c: Likewise.
3702         * stdio/__getdelim.c: Renamed to getdelim.c; added weak alias
3703         getdelim.
3704         * sysdeps/stub/__getdents.c: Renamed to getdents.c; added weak
3705         alias getdents.
3706         * sysdeps/unix/__getdents.c: Likewise.
3707         * sysdeps/unix/bsd/sun/__getdents.S: Likewise.
3708         * sysdeps/unix/bsd/hp/m68k/__getdents.S: Likewise.
3709         * sysdeps/unix/bsd/ultrix4/__getdents.S: Likewise.
3710         * sysdeps/unix/bsd/bsd4.4/__getdents.S: Likewise.
3711         * sysdeps/unix/bsd/osf1/alpha/__getdents.S: Likewise.
3712         * sysdeps/unix/sysv/__getdents.c: Likewise.
3713         * sysdeps/mach/hurd/__getdents.c: Likewise.
3714         * hurd/__getdport.c: Renamed to getdport.c; added weak alias getdport.
3715         * sysdeps/posix/__getdtsz.c: Renamed to getdtsz.c; added weak
3716         alias getdtablesize.
3717         * sysdeps/stub/__getdtsz.c: Likewise.
3718         * sysdeps/unix/bsd/__getdtsz.S: Likewise.
3719         * sysdeps/unix/sysv/sysv4/__getdtsz.c: Likewise.
3720         * sysdeps/mach/hurd/__getdtsz.c: Likewise.
3721         * sysdeps/stub/__getegid.c: Renamed to getegid.c; added weak alias
3722         getegid.
3723         * sysdeps/unix/__getegid.S: Likewise.
3724         * sysdeps/mach/hurd/__getegid.c: Likewise.
3725         * sysdeps/stub/__geteuid.c: Renamed to geteuid.c; added weak alias
3726         geteuid.
3727         * sysdeps/unix/__geteuid.S: Likewise.
3728         * sysdeps/mach/hurd/__geteuid.c: Likewise.
3729         * sysdeps/stub/__getgid.c: Renamed to getgid.c; added weak alias
3730         getgid.
3731         * sysdeps/unix/__getgid.S: Likewise.
3732         * sysdeps/mach/hurd/__getgid.c: Likewise.
3733         * sysdeps/stub/__getgrps.c: Renamed to getgroups.c; added weak
3734         alias getgroups.
3735         * sysdeps/unix/bsd/sequent/i386/__getgrps.S: Likewise.
3736         * sysdeps/unix/sysv/sco3.2.4/__getgrps.c: Likewise.
3737         * sysdeps/unix/sysv/irix4/__getgrps.c: Likewise.
3738         * sysdeps/unix/common/__getgrps.S: Likewise.
3739         * sysdeps/mach/hurd/__getgrps.c: Likewise.
3740         * sysdeps/stub/__gethstnm.c: Renamed to gethostname.c; added weak
3741         alias gethostname. 
3742         * sysdeps/unix/inet/__gethstnm.S: Likewise.
3743         * sysdeps/unix/sysv/__gethstnm.c: Likewise.
3744         * sysdeps/unix/sysv/sysv4/__gethstnm.c: Likewise.
3745         * sysdeps/mach/hurd/__gethstnm.c: Likewise.
3746         * sysdeps/stub/__getitmr.c: Renamed to getitimer.c; added weak
3747         alias getitimer.
3748         * sysdeps/unix/common/__getitmr.S: Likewise.
3749         * sysdeps/mach/hurd/__getitmr.c: Likewise.
3750         * stdio/__getline.c: Renamed to getline.c; added weak alias getline.
3751         * sysdeps/posix/__getpgsz.c: Renamed to getpagesize.c; added weak
3752         alias getpagesize.
3753         * sysdeps/stub/__getpgsz.c: Likewise.
3754         * sysdeps/unix/__getpgsz.c: Likewise.
3755         * sysdeps/unix/bsd/__getpgsz.S: Likewise.
3756         * sysdeps/unix/sysv/sysv4/__getpgsz.c: Likewise.
3757         * sysdeps/mach/__getpgsz.c: Likewise.
3758         * sysdeps/stub/__getpid.c: Renamed to getpid.c; added weak alias
3759         getpid.
3760         * sysdeps/unix/__getpid.S: Likewise.
3761         * sysdeps/mach/hurd/__getpid.c: Likewise.
3762         * sysdeps/stub/__getppid.c: Renamed to getppid.c; added weak alias
3763         getppid.
3764         * sysdeps/unix/__getppid.S: Likewise.
3765         * sysdeps/mach/hurd/__getppid.c: Likewise.
3766         * sysdeps/posix/__gettod.c: Renamed to gettimeofday.c; added weak
3767         alias gettimeofday.
3768         * sysdeps/stub/__gettod.c: Likewise.
3769         * sysdeps/unix/sysv/irix4/__gettod.c: Likewise.
3770         * sysdeps/unix/common/__gettod.S: Likewise.
3771         * sysdeps/mach/__gettod.c: Likewise.
3772         * sysdeps/stub/__getuid.c: Renamed to getuid.c; added weak alias
3773         getuid.
3774         * sysdeps/unix/__getuid.S: Likewise.
3775         * sysdeps/mach/hurd/__getuid.c: Likewise.
3776         * sysdeps/generic/__infnan.c: Renamed to infnan.c; added weak
3777         alias infnan.
3778         * sysdeps/ieee754/__infnan.c: Likewise.
3779         * sysdeps/vax/__infnan.c: Likewise.
3780         * sysdeps/stub/__ioctl.c: Renamed to ioctl.c; added weak alias ioctl.
3781         * sysdeps/unix/__ioctl.S: Likewise.
3782         * sysdeps/mach/hurd/__ioctl.c: Likewise.
3783         * sysdeps/posix/__isatty.c: Renamed to isatty.c; added weak alias
3784         isatty.
3785         * sysdeps/stub/__isatty.c: Likewise.
3786         * sysdeps/unix/bsd/__isatty.c: Likewise.
3787         * sysdeps/mach/hurd/__isatty.c: Likewise.
3788         * sysdeps/ieee754/__isinf.c: Renamed to isinf.c; added weak alias
3789         isinf.
3790         * sysdeps/m68k/fpu/__isinf.c: Likewise.
3791         * sysdeps/stub/__isinf.c: Likewise.
3792         * sysdeps/generic/__isnan.c: Renamed to isnan.c; added weak alias
3793         isnan.
3794         * sysdeps/ieee754/__isnan.c: Likewise.
3795         * sysdeps/m68k/fpu/__isnan.c: Likewise.
3796         * sysdeps/stub/__kill.c: Renamed to kill.c; added weak alias kill.
3797         * sysdeps/unix/__kill.S: Likewise.
3798         * sysdeps/mach/hurd/__kill.c: Likewise.
3799         * sysdeps/stub/__link.c: Renamed to link.c; added weak alias link.
3800         * sysdeps/unix/__link.S: Likewise.
3801         * sysdeps/mach/hurd/__link.c: Likewise.
3802         * sysdeps/ieee754/__logb.c: Renamed to logb.c; added weak alias logb.
3803         * sysdeps/m68k/fpu/__logb.c: Likewise.
3804         * sysdeps/stub/__logb.c: Likewise.
3805         * sysdeps/stub/__lseek.c: Renamed to lseek.c; added weak alias lseek.
3806         * sysdeps/unix/__lseek.S: Likewise.
3807         * sysdeps/mach/hurd/__lseek.c: Likewise.
3808         * sysdeps/generic/__lstat.c: Renamed to lstat.c; added weak alias
3809         lstat.
3810         * sysdeps/stub/__lstat.c: Likewise.
3811         * sysdeps/unix/sysv/sysv4/i386/__lstat.S: Likewise.
3812         * sysdeps/unix/common/__lstat.S: Likewise.
3813         * sysdeps/mach/hurd/__lstat.c: Likewise.
3814         * sysdeps/generic/__memccpy.c: Renamed to memccpy.c; added weak
3815         alias memccpy.
3816         * sysdeps/vax/__memccpy.c: Likewise.
3817         * sysdeps/stub/__mkdir.c: Renamed to mkdir.c; added weak alias mkdir.
3818         * sysdeps/unix/sysv/__mkdir.c: Likewise.
3819         * sysdeps/unix/common/__mkdir.S: Likewise.
3820         * sysdeps/mach/hurd/__mkdir.c: Likewise.
3821         * sysdeps/stub/__mknod.c: Renamed to mknod.c; added weak alias mknod.
3822         * sysdeps/unix/__mknod.S: Likewise.
3823         * sysdeps/unix/sysv/sysv4/i386/__mknod.S: Likewise.
3824         * sysdeps/mach/hurd/__mknod.c: Likewise.
3825         * mach/__msg.c: Renamed to msg.c; added weak alias mach_msg.
3826         * mach/__msgserver.c: Renamed to msgserver.c; added weak alias
3827         mach_msg_server.
3828         * sysdeps/stub/__open.c: Renamed to open.c; added weak alias open.
3829         * sysdeps/unix/__open.S: Likewise.
3830         * sysdeps/mach/hurd/__open.c: Likewise.
3831         * sysdeps/standalone/__open.c: Likewise.
3832         * sysdeps/stub/__pathconf.c: Renamed to pathconf.c; added weak
3833         alias pathconf.
3834         * sysdeps/unix/sysv/sco3.2.4/__pathconf.S: Likewise.
3835         * sysdeps/unix/sysv/irix4/__pathconf.c: Likewise.
3836         * hurd/__pid2task.c: Renamed to pid2task.c; added weak alias pid2task.
3837         * sysdeps/stub/__pipe.c: Renamed to pipe.c; added weak alias pipe.
3838         * sysdeps/unix/bsd/vax/__pipe.S: Likewise.
3839         * sysdeps/unix/bsd/m68k/__pipe.S: Likewise.
3840         * sysdeps/unix/bsd/osf1/alpha/__pipe.S: Likewise.
3841         * sysdeps/unix/i386/__pipe.S: Likewise.
3842         * sysdeps/unix/sparc/__pipe.S: Likewise.
3843         * sysdeps/unix/mips/__pipe.S: Likewise.
3844         * sysdeps/mach/hurd/__pipe.c: Likewise.
3845         * stdlib/__random.c: Renamed to random.c; added weak alias random.
3846         * sysdeps/stub/__read.c: Renamed to read.c; added weak alias read.
3847         * sysdeps/unix/__read.S: Likewise.
3848         * sysdeps/mach/hurd/__read.c: Likewise.
3849         * sysdeps/standalone/__read.c: Likewise.
3850         * sysdeps/stub/__readlink.c: Renamed to readlink.c; added weak
3851         alias readlink.
3852         * sysdeps/unix/common/__readlink.S: Likewise.
3853         * sysdeps/mach/hurd/__readlink.c: Likewise.
3854         * sysdeps/generic/__rint.c: Renamed to rint.c; added weak alias rint.
3855         * sysdeps/m68k/fpu/__rint.c: Likewise.
3856         * sysdeps/stub/__rmdir.c: Renamed to rmdir.c; added weak alias rmdir.
3857         * sysdeps/unix/sysv/__rmdir.c: Likewise.
3858         * sysdeps/unix/common/__rmdir.S: Likewise.
3859         * sysdeps/mach/hurd/__rmdir.c: Likewise.
3860         * sysdeps/generic/__sbrk.c: Renamed to sbrk.c; added weak alias sbrk.
3861         * sysdeps/stub/__sbrk.c: Likewise.
3862         * sysdeps/mach/hurd/__sbrk.c: Likewise.
3863         * math/__scalb.c: Renamed to scalb.c; added weak alias scalb.
3864         * sysdeps/stub/__select.c: Renamed to select.c; added weak alias
3865         select.
3866         * sysdeps/unix/common/__select.S: Likewise.
3867         * sysdeps/mach/hurd/__select.c: Likewise.
3868         * hurd/__setauth.c: Renamed to setauth.c; added weak alias setauth.
3869         * sysdeps/stub/__setgid.c: Renamed to setgid.c; added weak alias
3870         setgid.
3871         * sysdeps/unix/__setgid.S: Likewise.
3872         * sysdeps/unix/bsd/__setgid.c: Likewise.
3873         * sysdeps/mach/hurd/__setgid.c: Likewise.
3874         * sysdeps/stub/__setitmr.c: Renamed to setitmr.c; added weak alias
3875         setitmr 
3876         * sysdeps/unix/common/__setitmr.S: Likewise.
3877         * sysdeps/mach/hurd/__setitmr.c: Likewise.
3878         * sysdeps/stub/__setpgrp.c: Renamed to setpgrp.c; added weak alias
3879         setpgrp 
3880         * sysdeps/unix/sysv/sysv4/__setpgrp.c: Likewise.
3881         * sysdeps/unix/sysv/sco3.2.4/__setpgrp.c: Likewise.
3882         * sysdeps/unix/sysv/irix4/__setpgrp.S: Likewise.
3883         * sysdeps/unix/common/__setpgrp.S: Likewise.
3884         * sysdeps/mach/hurd/__setpgrp.c: Likewise.
3885         * sysdeps/stub/__setregid.c: Renamed to setregid.c; added weak
3886         alias setregid.
3887         * sysdeps/unix/common/__setregid.S: Likewise.
3888         * sysdeps/mach/hurd/__setregid.c: Likewise.
3889         * sysdeps/stub/__setreuid.c: Renamed to setreuid.c; added weak
3890         alias setreuid.
3891         * sysdeps/unix/common/__setreuid.S: Likewise.
3892         * sysdeps/mach/hurd/__setreuid.c: Likewise.
3893         * sysdeps/stub/__setsid.c: Renamed to setsid.c; added weak alias
3894         setsid.
3895         * sysdeps/unix/bsd/__setsid.c: Likewise.
3896         * sysdeps/unix/bsd/sun/sunos4/__setsid.S: Likewise.
3897         * sysdeps/unix/bsd/ultrix4/__setsid.S: Likewise.
3898         * sysdeps/unix/bsd/bsd4.4/__setsid.S: Likewise.
3899         * sysdeps/unix/sysv/linux/__setsid.S: Likewise.
3900         * sysdeps/unix/sysv/sysv4/__setsid.c: Likewise.
3901         * sysdeps/unix/sysv/sco3.2.4/__setsid.c: Likewise.
3902         * sysdeps/mach/hurd/__setsid.c: Likewise.
3903         * sysdeps/stub/__settod.c: Renamed to settod.c; added weak alias
3904         settimeofday.
3905         * sysdeps/unix/bsd/__settod.S: Likewise.
3906         * sysdeps/unix/sysv/__settod.c: Likewise.
3907         * sysdeps/mach/hurd/__settod.c: Likewise.
3908         * sysdeps/stub/__setuid.c: Renamed to setuid.c; added weak alias
3909         setuid.
3910         * sysdeps/unix/__setuid.S: Likewise.
3911         * sysdeps/unix/bsd/__setuid.c: Likewise.
3912         * sysdeps/mach/hurd/__setuid.c: Likewise.
3913         * sysdeps/posix/__sigblock.c: Renamed to sigblock.c; added weak
3914         alias sigblock.
3915         * sysdeps/stub/__sigblock.c: Likewise.
3916         * sysdeps/unix/bsd/__sigblock.S: Likewise.
3917         * sysdeps/unix/bsd/bsd4.4/__sigblock.c: Likewise.
3918         * sysdeps/unix/bsd/osf1/alpha/__sigblock.S: Likewise.
3919         * sysdeps/posix/__sigpause.c: Renamed to sigpause.c; added weak
3920         alias sigpause.
3921         * sysdeps/stub/__sigpause.c: Likewise.
3922         * sysdeps/unix/bsd/__sigpause.S: Likewise.
3923         * sysdeps/unix/bsd/osf1/alpha/__sigpause.S: Likewise.
3924         * sysdeps/stub/__sigproc.c: Renamed to sigprocmask.c; added weak
3925         alias sigprocmask.
3926         * sysdeps/unix/bsd/__sigproc.c: Likewise.
3927         * sysdeps/unix/sysv/sysv4/__sigproc.S: Likewise.
3928         * sysdeps/unix/sysv/sco3.2.4/__sigproc.S: Likewise.
3929         * sysdeps/mach/hurd/__sigproc.c: Likewise.
3930         * sysdeps/stub/__sigret.c: Renamed to sigreturn.c; added weak
3931         alias sigreturn.
3932         * sysdeps/unix/bsd/sun/__sigret.S: Likewise.
3933         * sysdeps/unix/sysv/i386/__sigret.S: Likewise.
3934         * sysdeps/unix/sysv/irix4/__sigret.S: Likewise.
3935         * sysdeps/unix/i386/__sigret.S: Likewise.
3936         * sysdeps/unix/mips/__sigret.S: Likewise.
3937         * sysdeps/mach/hurd/i386/__sigret.c: Likewise.
3938         * sysdeps/mach/hurd/alpha/__sigret.c: Likewise.
3939         * sysdeps/mach/hurd/mips/__sigret.c: Likewise.
3940         * sysdeps/posix/__sigvec.c: Renamed to sigvec.c; added weak alias
3941         sigvec.
3942         * sysdeps/stub/__sigvec.c: Likewise.
3943         * sysdeps/unix/bsd/__sigvec.S: Likewise.
3944         * sysdeps/unix/bsd/sun/__sigvec.S: Likewise.
3945         * sysdeps/unix/bsd/sequent/i386/__sigvec.S: Likewise.
3946         * sysdeps/unix/bsd/ultrix4/mips/__sigvec.S: Likewise.
3947         * sysdeps/unix/bsd/bsd4.4/__sigvec.c: Likewise.
3948         * sysdeps/unix/bsd/osf1/alpha/__sigvec.S: Likewise.
3949         * sysdeps/stub/__stat.c: Renamed to stat.c; added weak alias stat.
3950         * sysdeps/unix/__stat.S: Likewise.
3951         * sysdeps/unix/sysv/sysv4/i386/__stat.S: Likewise.
3952         * sysdeps/mach/hurd/__stat.c: Likewise.
3953         * sysdeps/generic/__stpncpy.c: Renamed to stpncpy.c; added weak
3954         alias stpncpy.
3955         * sysdeps/stub/__symlink.c: Renamed to symlink.c; added weak alias
3956         symlink.
3957         * sysdeps/unix/common/__symlink.S: Likewise.
3958         * sysdeps/mach/hurd/__symlink.c: Likewise.
3959         * sysdeps/posix/__sysconf.c: Renamed to sysconf.c; added weak
3960         alias sysconf.
3961         * sysdeps/stub/__sysconf.c: Likewise.
3962         * sysdeps/unix/bsd/ultrix4/__sysconf.c: Likewise.
3963         * sysdeps/unix/sysv/sysv4/__sysconf.c: Likewise.
3964         * sysdeps/unix/sysv/sco3.2.4/__sysconf.S: Likewise.
3965         * sysdeps/unix/sysv/irix4/__sysconf.c: Likewise.
3966         * hurd/__task2pid.c: Renamed to task2pid.c; added weak alias task2pid.
3967         * sysdeps/stub/__times.c: Renamed to times.c; added weak alias times.
3968         * sysdeps/unix/bsd/__times.c: Likewise.
3969         * sysdeps/unix/sysv/__times.S: Likewise.
3970         * time/__tzset.c: Renamed to tzset.c; added weak alias tzset.
3971         * sysdeps/stub/__umask.c: Renamed to umask.c; added weak alias umask.
3972         * sysdeps/unix/__umask.S: Likewise.
3973         * sysdeps/mach/hurd/__umask.c: Likewise.
3974         * sysdeps/stub/__unlink.c: Renamed to unlink.c; added weak alias
3975         unlink.
3976         * sysdeps/unix/__unlink.S: Likewise.
3977         * sysdeps/mach/hurd/__unlink.c: Likewise.
3978         * sysdeps/stub/__utimes.c: Renamed to utimes.c; added weak alias
3979         utimes.
3980         * sysdeps/unix/bsd/__utimes.S: Likewise.
3981         * sysdeps/unix/sysv/sysv4/solaris2/__utimes.S: Likewise.
3982         * sysdeps/mach/hurd/__utimes.c: Likewise.
3983         * sysdeps/generic/__vfork.c: Renamed to vfork.c; added weak alias
3984         vfork.
3985         * sysdeps/unix/bsd/sun/m68k/__vfork.S: Likewise.
3986         * sysdeps/unix/bsd/vax/__vfork.S: Likewise.
3987         * sysdeps/unix/bsd/i386/__vfork.S: Likewise.
3988         * sysdeps/unix/bsd/hp/m68k/__vfork.S: Likewise.
3989         * sysdeps/unix/bsd/ultrix4/mips/__vfork.S: Likewise.
3990         * sysdeps/unix/sysv/sysv4/i386/__vfork.S: Likewise.
3991         * sysdeps/unix/sparc/__vfork.S: Likewise.
3992         * stdio/__vfscanf.c: Renamed to vfscanf.c; added weak alias vfscanf.
3993         * stdio/__vsscanf.c: Renamed to vsscanf.c; added weak alias vsscanf.
3994         * sysdeps/posix/__wait.c: Renamed to wait.c; added weak alias wait.
3995         * sysdeps/stub/__wait.c: Likewise.
3996         * sysdeps/unix/bsd/sony/newsos4/__wait.c: Likewise.
3997         * sysdeps/unix/bsd/sun/sunos4/__wait.c: Likewise.
3998         * sysdeps/unix/bsd/sun/sunos3/m68k/__wait.S: Likewise.
3999         * sysdeps/unix/bsd/vax/__wait.S: Likewise.
4000         * sysdeps/unix/bsd/m68k/__wait.S: Likewise.
4001         * sysdeps/unix/bsd/bsd4.4/__wait.c: Likewise.
4002         * sysdeps/unix/sysv/i386/linux/__wait.S: Likewise.
4003         * sysdeps/unix/sysv/irix4/__wait.S: Likewise.
4004         * sysdeps/unix/i386/__wait.S: Likewise.
4005         * sysdeps/unix/mips/__wait.S: Likewise.
4006         * sysdeps/posix/__wait3.c: Renamed to wait3.c; added weak alias wait3.
4007         * sysdeps/stub/__wait3.c: Likewise.
4008         * sysdeps/unix/bsd/sony/newsos4/__wait3.c: Likewise.
4009         * sysdeps/unix/bsd/sun/sunos4/__wait3.c: Likewise.
4010         * sysdeps/unix/bsd/vax/__wait3.S: Likewise.
4011         * sysdeps/unix/bsd/i386/__wait3.S: Likewise.
4012         * sysdeps/unix/bsd/hp/m68k/__wait3.S: Likewise.
4013         * sysdeps/unix/bsd/ultrix4/__wait3.S: Likewise.
4014         * sysdeps/unix/bsd/bsd4.4/__wait3.c: Likewise.
4015         * sysdeps/unix/sysv/irix4/__wait3.S: Likewise.
4016         * sysdeps/stub/__wait4.c: Renamed to wait4.c; added weak alias wait4.
4017         * sysdeps/unix/bsd/sony/newsos4/__wait4.c: Likewise.
4018         * sysdeps/unix/bsd/sun/sunos4/__wait4.c: Likewise.
4019         * sysdeps/unix/bsd/bsd4.4/__wait4.S: Likewise.
4020         * sysdeps/unix/bsd/osf1/alpha/__wait4.S: Likewise.
4021         * sysdeps/unix/sysv/linux/__wait4.S: Likewise.
4022         * sysdeps/mach/hurd/__wait4.c: Likewise.
4023         * sysdeps/stub/__waitpid.c: Renamed to waitpid.c; added weak alias
4024         waitpid.
4025         * sysdeps/unix/bsd/sun/sunos4/__waitpid.c: Likewise.
4026         * sysdeps/unix/bsd/ultrix4/__waitpid.S: Likewise.
4027         * sysdeps/unix/bsd/bsd4.4/__waitpid.c: Likewise.
4028         * sysdeps/unix/bsd/osf1/alpha/__waitpid.c: Likewise.
4029         * sysdeps/unix/sysv/linux/__waitpid.S: Likewise.
4030         * sysdeps/unix/sysv/sysv4/__waitpid.c: Likewise.
4031         * sysdeps/unix/sysv/sco3.2.4/__waitpid.S: Likewise.
4032         * sysdeps/unix/sysv/irix4/__waitpid.c: Likewise.
4033         * sysdeps/stub/__write.c: Renamed to write.c; added weak alias write.
4034         * sysdeps/unix/__write.S: Likewise.
4035         * sysdeps/mach/hurd/__write.c: Likewise.
4036         * sysdeps/standalone/__write.c: Likewise.
4037         * sysdeps/stub/__tcgetatr.c: Renamed to tcgetattr.c; added weak
4038         alias tcgetattr.
4039         * sysdeps/unix/bsd/__tcgetatr.c: Likewise.
4040         * sysdeps/unix/bsd/sun/sunos4/__tcgetatr.c: Likewise.
4041         * sysdeps/unix/bsd/bsd4.4/__tcgetatr.c: Likewise.
4042         * sysdeps/unix/sysv/__tcgetatr.c: Likewise.
4043         * sysdeps/stub/__sigact.c: Renamed to sigaction.c; added weak
4044         alias sigaction.
4045         * sysdeps/unix/bsd/__sigact.c: Likewise.
4046         * sysdeps/unix/sysv/__sigact.c: Likewise.
4047         * sysdeps/unix/sysv/sysv4/__sigact.c: Likewise.
4048         * sysdeps/unix/sysv/sco3.2.4/__sigact.S: Likewise.
4049         * sysdeps/mach/hurd/__sigact.c: Likewise.
4050         * sysdeps/posix/__sigstmsk.c: Renamed to sigsetmask.c; added weak
4051         alias sigsetmask.
4052         * sysdeps/stub/__sigstmsk.c: Likewise.
4053         * sysdeps/unix/bsd/__sigstmsk.S: Likewise.
4054         * sysdeps/unix/bsd/bsd4.4/__sigstmsk.c: Likewise.
4055         * sysdeps/unix/bsd/osf1/alpha/__sigstmsk.S: Likewise.
4056         * sysdeps/stub/__getrusag.c: Renamed to getrusage.c; added weak
4057         alias getrusage.
4058         * sysdeps/unix/sysv/irix4/__getrusag.c: Likewise.
4059         * sysdeps/unix/common/__getrusag.S: Likewise.
4060         * hurd/task2pid.c: File removed.
4061         * hurd/setauth.c: File removed.
4062         * hurd/pid2task.c: File removed.
4063         * hurd/hurdsyms.c: File removed.
4064         * hurd/getdport.c: File removed.
4065         * hurd/fopenport.c: File removed.
4066         * mach/thread-sym.c: File removed.
4067         * mach/spin-syms.c: File removed.
4068         * mach/msgserver_t.c: File removed.
4069         * mach/msgserver.c: File removed.
4070         * mach/msg.c: File removed.
4071         * mach/mig_syms.c: File removed.
4072         * malloc/mcheck-init.c: File removed.
4073         * malloc/cfree.c: File removed.
4074         * io/flock.c: File removed.
4075         * io/write.c: File removed.
4076         * io/unlink.c: File removed.
4077         * io/umask.c: File removed.
4078         * io/symlink.c: File removed.
4079         * io/rmdir.c: File removed.
4080         * io/readlink.c: File removed.
4081         * io/read.c: File removed.
4082         * io/pipe.c: File removed.
4083         * io/open.c: File removed.
4084         * io/mkdir.c: File removed.
4085         * io/lstat.c: File removed.
4086         * io/lseek.c: File removed.
4087         * io/link.c: File removed.
4088         * io/isatty.c: File removed.
4089         * io/stat.c: File removed.
4090         * io/fstat.c: File removed.
4091         * io/fchown.c: File removed.
4092         * io/fchmod.c: File removed.
4093         * io/dup2.c: File removed.
4094         * io/dup.c: File removed.
4095         * io/close.c: File removed.
4096         * io/fcntl.c: File removed.
4097         * io/chmod.c: File removed.
4098         * io/chdir.c: File removed.
4099         * io/access.c: File removed.
4100         * io/chown.c: File removed.
4101         * time/tzset.c: File removed.
4102         * time/timelocal.c: File removed.
4103         * time/syms-time.c: File removed.
4104         * time/settod.c: File removed.
4105         * time/setitmr.c: File removed.
4106         * time/gettod.c: File removed.
4107         * time/getitmr.c: File removed.
4108         * time/adjtime.c: File removed.
4109         * termios/tcgetattr.c: File removed.
4110         * string/stpncpy.c: File removed.
4111         * string/rindex.c: File removed.
4112         * string/memccpy.c: File removed.
4113         * string/index.c: File removed.
4114         * string/bcmp.c: File removed.
4115         * stdlib/srand.c: File removed.
4116         * stdlib/random.c: File removed.
4117         * stdio/vsscanf.c: File removed.
4118         * stdio/vfscanf.c: File removed.
4119         * stdio/syms-stdio.c: File removed.
4120         * stdio/remove.c: File removed.
4121         * stdio/getline.c: File removed.
4122         * stdio/getdelim.c: File removed.
4123         * signal/ssignal.c: File removed.
4124         * signal/sigvec.c: File removed.
4125         * signal/sigsetmask.c: File removed.
4126         * signal/sigret.c: File removed.
4127         * signal/sigproc.c: File removed.
4128         * signal/sigpause.c: File removed.
4129         * signal/sigblock.c: File removed.
4130         * signal/sigaction.c: File removed.
4131         * signal/kill.c: File removed.
4132         * signal/gsignal.c: File removed.
4133         * setjmp/siglongjmp.c: File removed.
4134         * setjmp/_longjmp.c: File removed.
4135         * resource/getrusage.c: File removed.
4136         * posix/waitpid.c: File removed.
4137         * posix/wait4.c: File removed.
4138         * posix/wait3.c: File removed.
4139         * posix/wait.c: File removed.
4140         * posix/times.c: File removed.
4141         * posix/sysconf.c: File removed.
4142         * posix/setuid.c: File removed.
4143         * posix/setsid.c: File removed.
4144         * posix/setpgrp.c: File removed.
4145         * posix/setpgid.c: File removed.
4146         * posix/setgid.c: File removed.
4147         * posix/pathconf.c: File removed.
4148         * posix/getuid.c: File removed.
4149         * posix/getppid.c: File removed.
4150         * posix/getpid.c: File removed.
4151         * posix/getgrps.c: File removed.
4152         * posix/getgid.c: File removed.
4153         * posix/geteuid.c: File removed.
4154         * posix/getegid.c: File removed.
4155         * posix/fpathcon.c: File removed.
4156         * posix/fork.c: File removed.
4157         * posix/execve.c: File removed.
4158         * posix/environ.c: File removed.
4159         * misc/utimes.c: File removed.
4160         * misc/setreuid.c: File removed.
4161         * misc/setregid.c: File removed.
4162         * misc/select.c: File removed.
4163         * misc/sbrk.c: File removed.
4164         * misc/mknod.c: File removed.
4165         * misc/ioctl.c: File removed.
4166         * misc/getpgsz.c: File removed.
4167         * misc/gethstnm.c: File removed.
4168         * misc/getdtsz.c: File removed.
4169         * misc/data_start.c: File removed.
4170         * misc/brk.c: File removed.
4171         * math/scalb.c: File removed.
4172         * math/rint.c: File removed.
4173         * math/logb.c: File removed.
4174         * math/isnan.c: File removed.
4175         * math/isinf.c: File removed.
4176         * math/infnan.c: File removed.
4177         * math/finite.c: File removed.
4178         * math/expm1.c: File removed.
4179         * math/drem.c: File removed.
4180         * math/copysign.c: File removed.
4181         * math/__scalb.c: File removed.
4182         * dirent/getdents.c: File removed.
4184 Fri Jan 20 16:11:06 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4186         * sysdeps/generic/morecore.c (__default_morecore): Use
4187         __malloc_ptrdiff_t; don't cast arg to int.
4189         * resolv/getnetnamadr.c: Include "conf/portability.h".
4191 Thu Jan 19 02:20:04 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4193         * stdlib/strtol.c: Include errno.h.
4194         [QUAD] (ULONG_MAX): Define to a static variable initialized to
4195         ULONG_LONG_MAX. This is to work around a GCC bug in using the
4196         constant in arithmetic.
4198         * posix/unistd.h (daemon): Declare it.
4200         * malloc/mcheck-init.c: Remove GNU ld hacks.
4201         (__malloc_initialize_hook): Initialize this hook to turn_on_mcheck.
4202         * malloc/malloc.c (__malloc_initialize_hook): New hook variable.
4203         (initialize): Call the hook if set.
4204         * malloc/malloc.h: Use __malloc_{size,ptrdiff}_t in prototypes.
4205         (__malloc_initialize_hook): Declare new hook variable.
4207 Wed Jan 18 01:43:39 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4209         * hurd/hurdsig.c: Prepend `msg_' to server RPC names.
4210         * hurd/hurdpid.c: Likewise.
4211         * hurd/hurdauth.c: Likewise.
4213 Tue Jan 17 03:16:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4215         * sysdeps/mach/hurd/__select.c: If some replies are EINTR, succeed
4216         if any are successful.
4218         * hurd/hurdmsg.c: Prepend `msg_' to all RPC names.
4219         (_S_msg_get_exec_flags, _S_msg_set_exec_flags, 
4220         _S_msg_set_some_exec_flags, _S_msg_clear_some_exec_flags): New
4221         functions.
4222         (_S_io_select_done, _S_dir_changed, _S_file_changed): Stubs removed.
4224         * hurd/hurdkill.c: __sig_post renamed to __msg_sig_post.
4225         * hurd/hurd-raise.c: Likewise.
4226         * hurd/hurdsig.c (post_reply): Prepend `msg_' to RPC names.
4228         * sysdeps/mach/hurd/ptrace.c: New file.
4230         * sysdeps/mach/hurd/__select.c: Revamped to use new io_select
4231         interface, which has normal EINTR semantics.  Instead of waiting
4232         for io_select_done notification messages, send io_select messages
4233         with short reply timeout and then wait for io_select_reply
4234         messages.
4236         * hurd/hurdexec.c (_hurd_exec): Pass (_hurd_exec_flags &
4237         EXEC_INHERITED) to file_exec.
4239         * hurd/hurdsig.c (post_reply): Take new arg UNTRACED; if nonzero,
4240         use sig_post_untraced_reply.  All callers changed.
4241         (abort_thread, abort_rpcs): Take same new arg and pass it through.  
4242         All callers changed.
4243         (_hurd_internal_post_signal): Take new arg UNTRACED.
4244         If zero and process is traced, stop with SIGNO as stop signal.  If
4245         nonzero, resume process before delivering signal (unless
4246         ACT==stop).  Expand local fn sigwakeup into block at end taken iff
4247         SIGNO!=0.
4248         (signal_allowed): New function, broken out of _S_sig_post.
4249         (_S_sig_post): Call it.  Pass UNTRACED arg of false to
4250         _hurd_internal_post_signal.
4251         (_S_sig_post_untraced): New function.  Just like _S_sig_post, but
4252         pass true for UNTRACED.
4253         * hurd/hurd/signal.h (_hurd_internal_post_signal): Take new arg
4254         UNTRACED.
4255         * hurd/catch-exc.c (_S_catch_exception_raise): Pass UNTRACED arg
4256         to _hurd_internal_post_signal (value zero).
4258 Mon Jan 16 16:40:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4260         * hurd/hurdinit.c (_hurd_exec_flags): New variable.
4261         (_hurd_init): Initialize it from FLAGS arg.
4262         (_hurd_proc_init): If EXEC_TRACED is set in _hurd_exec_flags,
4263         raise a SIGTRAP signal (with a sigcode of zero).
4264         * hurd/hurd.h (_hurd_exec_flags): Declare it.
4266         * Version 1.09.5.
4268 Mon Jan 16 16:16:55 1995  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
4270         * malloc/malloc.c (malloc): Fix 1-off in previous change.
4272 Mon Jan 16 15:49:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4274         * posix/glob/Makefile.in: Remove config.h and config.log.
4276 Sun Jan 15 06:56:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4278         * posix/glob/configure.in: Add AC_CONST check.
4280         * conf/portability.h: #undef sun.
4281         * resolv/res_query.c: Updated from BIND-4.9.3-BETA17.
4282         * resolv/getnetnamadr.c: Likewise.
4284         * socket/Makefile (headers): Add sockaddrcom.h.
4285         * inet/netinet/in.h: Include <sockaddrcom.h>.
4286         (struct sockaddr_in): Use the __SOCKADDR_COMMON macro.
4287         * socket/sys/un.h (struct sockaddr_in): Likewise.
4288         * socket/sys/socket.h (struct sockaddr): Likewise.
4289         * sysdeps/unix/bsd/bsd4.4/sockaddrcom.h: New file.
4290         * sysdeps/generic/sockaddrcom.h: New file.
4292         * sysdeps/unix/sysv/sysv4/ftruncate.c: New file.
4293         * sysdeps/unix/common/fcntlbits.h [__USE_SVID] (F_ALLOCSP,
4294         F_FREESP): New macros.
4295         * sysdeps/posix/truncate.c: New file.
4297         * malloc/malloc.c (malloc): Fix typos in RMS's change.
4299         * malloc/Makefile (dist-routines): Add malloc-find.
4300         * malloc/malloc.h (malloc_find_object_address): Declare it.
4301         * malloc/malloc-find.c: New file.
4303         * malloc/malloc.h (__malloc_ptrdiff_t): New macro, defined a la
4304         __malloc_size_t.
4305         (malloc_info): Use that type for member `busy.info.size'.
4307         * stdlib/strtol.c: Change uses of `long' keyword throughout to use
4308         `LONG' macro.
4309         [! QUAD] (LONG): Define as long.
4310         [QUAD] (LONG): Define as long long.
4311         [QUAD] (LONG_MIN, LONG_MAX, ULONG_MAX): Redefine to long long
4312         versions.
4313         [QUAD] (strtoul, strtol): Define to strtouq, strtoq.
4314         * stdlib/Makefile (routines): Add strtoq and strtouq.
4315         * stdlib/strtoq.c, stdlib/strtouq.c: New files.
4316         * stdlib/stdlib.h [__GNUC__ && __USE_BSD] (strtoq, strtouq):
4317         Declare them.
4319         * stdio/vfprintf.c: If there was a precision specified, ignore the
4320         0 flag and always pad with spaces.
4322         * stdio/vfprintf.c: Don't use strchr to skip text until next %.
4323         Use a loop and also stop on first !isascii char.
4325 Wed Jan 11 00:07:10 1995  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
4327         * malloc/malloc.h (malloc_info): Change usage of .busy.info.size.
4329         * malloc/malloc.c (malloc): For a multi-block object, store a
4330         negative number into the busy.info.size of all but the first block.
4332 Tue Jan 10 13:45:20 1995  Brendan Kehoe  <brendan@zen.org>
4334         * sysdeps/unix/bsd/ultrix4/mips/start.S: Use s0, s1, and s2
4335         instead of t0, t1, and t2.
4337 Tue Jan 10 05:53:50 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4339         * malloc/memalign.c (__memalign_hook): New variable.
4340         (memalign): Call it if set.
4341         * malloc/malloc.h (__memalign_hook): Declare new variable.
4343 Wed Dec 28 03:27:21 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4345         * conf/portability.h: Include string.h and stdlib.h.
4346         * inet/netdb.h (NETDB_INTERNAL, NETDB_SUCCESS): New macros.
4347         * resolv/resolv.h, resolv/arpa/nameser.h, resolv/gethnamaddr.c,
4348         resolv/getnetbyname.c, resolv/getnetent.c, resolv/herror.c,
4349         resolv/res_mkquery.c, resolv/res_send.c, resolv/res_comp.c,
4350         resolv/res_debug.c, resolv/res_init.c: Updated from BIND 4.9.3-BETA14.
4352         * sysdeps/m68k/fpu/__math.h (__m81_inline): New macro.  Replace
4353         all uses of `extern __inline' with `__m81_inline'.
4355         * sysdeps/unix/bsd/hp/m68k/__vfork.S: Use subl, not decl.
4356         * sysdeps/unix/__fork.S: Swap args in subl.
4358         * posix/sys/types.h [__USE_MISC] (ushort, uint): New typedefs, for
4359         compatibility.
4361 Tue Dec 20 13:33:20 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>
4363         * sysdeps/mach/hurd/__setpgrp.c (__setpgrp): Use __swtch_pri instead
4364         of swtch.
4365         * sysdeps/mach/hurd/__setsid.c (__setsid): Likewise.
4366         * mach/spin-solid.c (__spin_lock_solid): Likewise.
4368 Thu Dec 15 12:01:07 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4370         * inet/rcmd.c (iruserok): Use alloca instead of fixed-size buffer
4371         for PBUF.
4372         (__ivaliduser): Use getline instead of fgets with fixed-size buffer.
4374         * sysdeps/mach/hurd/Makefile (subdirs): Don't elide inet.
4376 Wed Dec 14 18:20:56 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4378         * sysdeps/alpha/bsd-setjmp.S: Reverse register and immediate args
4379         in `bis' insn; immediate must be second.
4381         * sysdeps/unix/__fork.S: Use subl instead of decl.
4382         * sysdeps/unix/i386/__fork.S: New file.
4384         * sysdeps/mach/hurd/alpha/trampoline.c (_hurd_setup_sighandler):
4385         Remove A macro; just use `asm volatile' with proper quotes in each
4386         line.
4387         * sysdeps/mach/alpha/sysdep.h (CALL_WITH_SP): Put parens around
4388         jmp target register.
4390         * time/africa, time/asia, time/australasia, time/emkdir.c,
4391         time/europe, time/ialloc.c, time/northamerica, time/private.h,
4392         time/scheck.c, time/yearistype, time/zdump.c, time/zic.c: New code
4393         and data from ADO 94h distribution.
4395         * sysdeps/sparc/setjmp.S: Use sethi and or to put address of
4396         __sigjmp_save in %g1 and jmp there.  jmp cannot contain a complete
4397         absolute pointer.  Put second store in jmp delay slot.
4399 Tue Dec 13 15:47:52 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4401         * sysdeps/sparc/bsd-_setjmp.S: Use sethi and or to put address of
4402         __sigsetjmp in %g1 and jmp there.  jmp cannot contain a complete
4403         absolute pointer.
4404         * sysdeps/sparc/bsd-setjmp.S: Likewise.
4406         * configure.in: Use ; before } in { ... } exprs.
4410 See ChangeLog.4 for earlier changes.