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