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