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