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