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