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