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