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