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