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