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