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