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