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