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