Fixed ELFMAG check to work for either byte order. Align end of load segment only...
[glibc.git] / ChangeLog
blobc7b7ded3837d1519e964f7c313c7f3a9f5caa22d
1 Thu Jan  4 11:35:18 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3         * sysdeps/mach/hurd/setitimer.c: Code rearranged a bit to use new
4         preemption interface.
6         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
7         Use _hurdsig_catch_memory_fault.
9         * hurd/Makefile (headers): Add hurd/sigpreempt.h.
10         (sig): Add catch-signal.
12         * hurd/hurdfault.c (_hurdsig_fault_catch_exception_raise):
13         Rewritten using a preempter in new interface.
14         * hurd/hurdfault.h (_hurdsig_catch_fault): Likewise.
15         (_hurdsig_catch_memory_fault): New macro.
17 Wed Jan  3 20:23:42 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
19         * hurd/catch-signal.c: New file.
21         * hurd/intr-msg.c: When restarting RPC, fetch a new reply port.
23         * hurd/hurdsig.c: Use new hurdfault.h interface.
24         (abort_all_rpcs): Mutate return value to EINTR in threads whose
25         replies we will wait for.
27         * hurd/hurdkill.c (_hurd_sig_post): When doing pgrp, make sure we
28         do ourselves last.
30 Wed Jan  3 19:17:10 1996  Miles Bader  <miles@gnu.ai.mit.edu>
32         * sysdeps/mach/hurd/access.c (__access): Put the uid/gid arguments
33         to auth_makeauth() in the right order.
35 Wed Jan  3 17:19:04 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
37         * sysdeps/generic/strsep.c: Rewritten.
39         * sysdeps/mach/hurd/fork.c: Use a different workaround for the
40         suspended page fault deadlock kernel bug: thread_abort our signal
41         thread first thing after proc_dostop.
43         * sysdeps/mach/hurd/setgid.c: Rewrote gid frobnication to
44         recognize rootness properly.
46 Tue Jan  2 00:50:10 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
48         * hurd/hurd/signal.h (struct hurd_sigstate): New member `preempters'.
49         (hurd_preempt_signals, hurd_unpreempt_signals): Decls removed.
50         * hurd/hurd/sigpreempt.h: New file.
51         * hurd/preempt-sig.c: Rewritten with new interface.
52         * sysdeps/mach/hurd/jmp-unwind.c (_longjmp_unwind): Remove local signal
53         preempters being unwound past.
54         * hurd/hurdsig.c: Use new signal preemption interface.
56         * db: New directory, 4.4 BSD db package incorporated from BSD db-1.85
57         release.
59         * sysdeps/unix/sysv/linux/sys/param.h: Several new macros for BSD
60         compatibility.
62         * misc/queue.h: New file, incorporated from 4.4BSD.
63         * misc/Makefile (headers): Add queue.h.
65         * posix/sys/types.h [__USE_BSD]: Include endian.h.
67         * io/sys/stat.h (DEFFILEMODE, ALLPERMS, ACCESSPERMS, S_BLKSIZE):
68         New macros.
70 Thu Dec 28 10:21:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
72         * sysdeps/generic/confname.h: Define all names as self-referential
73         macros so #ifdef works.
75         * hurd/preempt-sig.c (hurd_unpreempt_signals): Remove bogus asgnmt
76         of _hurd_signal_preempters[SIGNO].
78 Mon Dec 25 20:56:39 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
80         * sysdeps/mach/hurd/bind.c: Translate EEXIST from dir_link into
81         EADDRINUSE.  If translated node doesn't grok ifsock protocol,
82         return EADDRINUSE.
84         * sysdeps/mach/hurd/connect.c: Make address arg
85         `const struct sockaddr_un *'.
86         The redecl is kosher and avoids another variable for AF_LOCAL case.
87         * sysdeps/mach/hurd/sendto.c: Likewise.
88         * sysdeps/mach/hurd/bind.c: Likewise.
90         * socket/sys/socket.h (__SOCKADDR_ARG): Enable transparent_union
91         code for GCC >= 2.7; use __transparent_union__ for name safety;
92         add several sockaddr flavors.
93         (__SOCKADDR_ALLTYPES, __SOCKADDR_ONETYPE): New macros used in
94         constructing the transparent union declarations.
95         (__CONST_SOCKADDR_ARG): New type (or macro if not GCC 2.7).
96         (bind, connect, sendto): Make the sockaddr argument use that.
98 Fri Dec 22 00:57:38 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
100         * sysdeps/mach/hurd/setgid.c: In root case, store into NEWAUX, not
101         old vector.
102         * sysdeps/mach/hurd/setuid.c: Likewise.
104         * sysdeps/mach/hurd/setuid.c: Rewrote ID frobnication to do the
105         right thing.
106         * sysdeps/mach/hurd/setgid.c: Likewise.
107         * sysdeps/mach/hurd/setreuid.c: Likewise.
108         * sysdeps/mach/hurd/setregid.c: Likewise.
109         * sysdeps/mach/hurd/setegid.c: Likewise.
110         * sysdeps/mach/hurd/seteuid.c: Likewise.
112         * sysdeps/mach/hurd/fork.c: Peek __mach_task_self_ value before
113         proc_dostop call to work around kernel paging bug.
115 Fri Dec 22 00:38:00 1995  H.J. Lu  <hjl@nynexst.com>
117         * stdio-common/vfscanf.c: Correctly handle white space skipping.
118         * stdio-common/Makefile (tests): Add bug11.
119         * stdio-common/bug11.c: New file.
121 Thu Dec 21 12:19:32 1995  Miles Bader  <miles@gnu.ai.mit.edu>
123         * sysdeps/mach/hurd/setuid.c (__setuid): Actually add the new uid
124         instead of putting it (and other uids) in the gids and leaving the
125         old uids as is.
127 Wed Dec 20 18:23:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
129         * stdio/internals.c (flushbuf): If the target is -1, always
130         discard the buffer of read data.
131         Only set TWIDDLED flag in !ALIGNED case.
132         Never increment target or offset when old value is -1.
134 Tue Dec 19 17:00:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
136         * hurd/hurdpid.c (_S_msg_proc_newids): Only run the hook when the
137         pgrp changes.
139 Mon Dec 18 13:40:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
141         * stdio/fread.c: Don't increment __offset when it's -1.
143         * elf/rtld.c (dl_main): Prepend tab to "statically linked".  Exit
144         0 in that case.
146         * misc/err.c (vwarnx, vwarn): Fix major brainos.
148         * sysdeps/mach/hurd/dl-sysdep.c (mmap): Fix setting of
149         inheritance.
151 Sun Dec 17 15:56:35 1995  Miles Bader  <miles@gnu.ai.mit.edu>
153         * misc/getpass.c (getpass): Don't barf if getline returns a null BUF.
155 Sat Dec 16 10:33:11 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
157         * Makerules: Use $(do-install-so) for installing shared objects.
158         (do-install-so): New canned sequence.  Make a symlink LIB.so after
159         installing LIB.so.VERSION.
161         * inet/netinet/in.h: Fixed typo in IPPORT_WHOIS.
163 Fri Dec 15 04:41:22 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
165         * stdio-common/Makefile (tests): Add bug10.
166         * stdio-common/bug10.c: New file.  From HJ Lu.
168         * stdio-common/tstdiomisc.c: Make more test-suite like: exit
169         status tells about successful run.
171         * stdio-common/vfscanf.c [!USE_IN_LIBIO]: Use `flags' to check
172         format correctness.
173         Correct handling of trailing white spaces in format + EOF.
175 Fri Dec 15 01:31:56 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
177         * stdio-common/Makefile (tests): Add bug8 and bug9.
178         * stdio-common/bug8.c, stdio-common/bug9.c: New tests.
180         * stdio-common/vfscanf.c: Fix bug in dynamic buffer handling.
182         * stdlib/strtod.c: Correct spelling: nominator -> numerator.
183         Thanks to Jim Meyering.
185 Sat Nov 25 06:05:12 1995  H.J. Lu  <hjl@nynexst.com>
187         * stdio-common/vfscanf.c: Always check width !=0.
188         Correctly handle %%.
189 Thu Dec 14 02:28:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
191         * posix/glob.c (glob_in_dir): Cast result of opendir to __ptr_t,
192         and cast STREAM to DIR * before passing to readdir and closedir.
194 Wed Dec 13 22:06:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
196         * hurd/hurdsig.c (_hurd_internal_post_signal: suspend): Reply
197         after aborting RPCs but before calling proc_mark_stop.
199 Mon Dec 11 20:07:54 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
201         * posix/glob.c [! STDC_HEADERS]: Declare getenv.
202         (glob): Avoid using function as value.
204         * elf/rtld.c (dl_main): When mapping argument executable, set
205         l_name to "", not l_libname.
206         After loading DT_NEEDED library, set its l_type to lt_library.
208         * sysdeps/mach/hurd/mmap.c: Don't interpret MAP_INHERIT to mean
209         VM_INHERIT.  We can't handle MAP_INHERIT easily.
210         Handle non-page-aligned addresses if congruent to offset.
212         * elf/dl-init.c: Skip the initializer for l_type lt_executable
213         with l_name "". Start at _dl_loaded; don't skip the first element.
215         * elf/dl-load.c (MAP_FILE): Define to zero if undefined.
216         (MAP_COPY): Define to MAP_PRIVATE if undefined.
217         (_dl_map_object_from_fd): Don't use MAP_INHERIT in mmap calls.
218         If file it ET_EXEC, set its l_type to lt_executable.
220 Sun Dec 10 09:56:06 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
222         * elf/dl-minimal.c (malloc): Use MAP_PRIVATE in mmap call.
224 Fri Dec  8 13:04:51 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
226         * locale/error.c, locale/error.h: Files removed.
227         * locale/Makefile (distribute): Remove error.h.
228         (lib-modules): Remove error.
230         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): For "tty"
231         magic, return ENXIO if no ctty.
233         * sysdeps/mach/hurd/mmap.c: For MAP_FIXED, deallocate a previous
234         mapping if vm_map fails for that reason.
236         * posix/glob.c: Implement new options GLOB_ALTDIRFUNC, GLOB_BRACE,
237         GLOB_TILDE, GLOB_NOMAGIC.
238         (glob): Use stat instead of lstat to determine directoriness.
239         * posix/glob.h (GLOB_ALTDIRFUNC, GLOB_BRACE, GLOB_NOMAGIC, GLOB_TILDE):
240         New flag bits.
241         (__GLOB_FLAGS): Include them.
242         (glob_t): New members gl_closedir, gl_readdir, gl_opendir, gl_lstat,
243         gl_stat.
245         * elf/elf.h (ET_NUM, SHT_NUM, STB_NUM, STT_NUM, PT_NUM): New macros.
247         * sysdeps/unix/sysv/linux/sys/mman.h: Include <linux/mman.h> to
248         define all the bit values.
249         (MAP_*, MCL_*): Macros removed.
251 Thu Dec  7 02:27:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
253         * resolv/res_comp.c, resolv/res_debug.c, resolv/res_send.c:
254         Updated from BIND 4.9.3-BETA27.
256 Wed Dec  6 18:44:01 1995  Miles Bader  <miles@gnu.ai.mit.edu>
258         * sysdeps/mach/hurd/select.c (__select): Swap size args to mach_msg.
260         * sysdeps/mach/hurd/select.c (__select): Frob TYPES correctly when
261         we get a delayed reply.
262         Only grab values out of entries in TYPES that have SELECT_RETURNED
263         turned on, and turn it on whenever an rpc returns.
264         Only clear bits in the user's fdsets -- those needing to be set
265         should be already.
266         Use SELECT_ALL in appropiate places.
267         (SELECT_RETURNED, SELECT_ALL): New macros.
269 Wed Dec  6 09:10:39 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
271         * sysdeps/mach/hurd/sys/param.h (NBBY): New macro.
273         * gnu-versions.h (_GNU_GLOB_INTERFACE_VERSION): New macro.
275 Tue Dec  5 14:00:17 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
277         * misc/Makefile (headers): Add error.h, err.h.
278         (routines): Add error, err.
279         (gpl2lgpl): New variable.
280         * misc/err.c: New file.
281         * misc/err.h: New file.
282         * misc/error.c, misc/error.h: New files.
284         * sysdeps/mach/hurd/ioctl.c: Fix typo in last change.
286         * Makeconfig (+link): Translate libc% from $^, not just libc.a.
287         (link-libc): Append $(libc.so-version) to libc.so.
288         (built-program-cmd): Fix comma usage.
289         * Makerules [libc.so-version] (libc.so$(libc.so-version)): Make a
290         symlink to libc.so in the build directory.
291         * Rules ($(others) $(tests)): Depend on the library that appears
292         in $(link-libc).
293         (%.out): Use $(built-program-cmd) in commands.
295         * posix/unistd.h [__USE_MISC]: Declare brk, sbrk.
297         * sysdeps/generic/setenv.c: Added canonical portability cruft.
298         (setenv): Use realloc on LAST_ENVIRON instead of always copying.
299         (unsetenv): New function.
300         * stdlib/stdlib.h [__USE_BSD]: Declare unsetenv.
301         * sysdeps/generic/putenv.c: Rewritten using setenv and unsetenv.
303 Tue Dec  5 02:27:32 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
305         * libio/Makefile (routines): Remove iofscanf, add iopopen, pclose.
307         * libio/iofscanf.c: Remove file.
309         * libio/iogetdelim.c (_IO_getdelim): Correct stupid bug at string
310         termination.
312         * libio/iopopen.c: New file from GNU libio.
314         * libio/memstream.c: Fixed bug in fclose handling.  Instead of
315         providing a close callback we need a finish callback.
317         * libio/pclose.c: New file.  Derived from popen.c in GNU libio.
319         * posix/gnu/types.h: Fixed typo.
321         * stdio-common/errnobug.c: fputs returns EOF in error case.  Do
322         not test for != 0.
324         * stdio-common/printf-parse.h (parse_one_spec): Do not force
325         padding with ' ' if precision is given.  Fix by HJ Lu.
327         * stdio-common/printf_fp.c: Fix comment.
329         * stdio-common/tfformat.c, stdio-common/tiformat.c,
330         stdio-common/tstdiomisc.c: New files from GNU libio test suite.
332         * stdio-common/tstgetln.c: Provide ssize_t type when testing
333         libio.
335         * stdio-common/vfprintf.c (outchar): Use PUTC instead of putc.
336         (vfprintf): Cleasr args_type array before using it.
337         When printing 0 as an integer with precision 0 nothing must be
338         written for the number.
339         Based on patch by HJ Lu.
341         * stdio-common/vfscanf.c: Remove fixed input buffer.  Now we
342         have a dynamically extended buffer.
344         * stdlib/strtod.c: Merge with version in Linux libc.  This fixes
345         some bugs with handling of very small numbers and has different
346         solution for formaer patches.
348         * sysdeps/i386/i586/add_n.S, sysdeps/i386/i586/sub_n.S: Rename
349         macros r1 and r2 to t1, and t2 resp.  This is necessary because
350         glibc headers also define r1.
352 Mon Dec  4 12:10:28 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
354         * stdlib/gen-mpn-copy (translations): Updated for new layout in
355         GMP 1.910.
357         * malloc/malloc.c (__malloc_initialize): Renamed from initialize;
358         made global.
359         (malloc): Caller changed.
360         * malloc/realloc.c (realloc): Call __malloc_initialize if
361         necessary, before checking hook.
362         * malloc/malloc.h: Declare __malloc_initialize.
364         * sysdeps/mach/hurd/ioctl.c: For IOC_VOID request, send ARG itself
365         as integer_t arg in RPC.
367 Sat Dec  2 03:47:27 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
369         * sysdeps/mach/hurd/brk.c (DATA_SIZE): Bump to 128MB.
370         (_hurd_set_brk): Try to allocate more space when we run out.
372         * sysdeps/generic/sbrk.c: If __curbrk is zero, call __brk with
373         zero and examine it again.
374         * sysdeps/unix/sysv/linux/i386/brk.c: New file.
375         * sysdeps/unix/sysv/linux/i386/brk.S: File removed.
376         * sysdeps/unix/sysv/linux/i386/sbrk.S: File removed.
377         * sysdeps/unix/sysv/linux/dl-sysdep.c: New file.
378         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_SYSDEP_INIT]:
379         Invoke this macro before calling DL_MAIN.
381         * malloc/malloc.c (malloc): Do initialization here, before
382         checking the hook.
383         (_malloc_internal): Don't do it here.
385 Wed Nov 29 12:30:50 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
387         * libio/vsnprintf.c (__vsnprintf): Define as alias.
388         * libio/iovsscanf.c (__vsscanf): Define as alias.
389         * asprintf.c: Remove libio adaptation code added by drepper.
390         * dprintf.c: Likewise.
391         * printf.c: Likewise.
392         * scanf.c: Likewise.
393         * snprintf.c: Likewise.
394         * sprintf.c: Likewise.
395         * sscanf.c: Likewise.
396         * vprintf.c: Likewise.
397         * stdio-common/vfscanf.c [USE_IN_LIBIO] (__vfscanf): New wrapper
398         function.
399         (vfscanf): Define unconditionally.
401         * sysdeps/i386/dl-machine.h (elf_machine_rel): If SYM is null, use
402         zero for value.
404         * misc/getpass.c: Write a newline after reading the unechoed
405         password.
407 Mon Nov 27 19:24:18 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
409         * posix/Makefile (routines): Add getsid.
410         * sysdeps/unix/sysv/linux/getsid.S: New file.
411         * sysdeps/mach/hurd/getsid.c: New file.
412         * sysdeps/stub/getsid.c: New file.
413         * posix/unistd.h [__USE_GNU]: Declare getsid.
415 Sun Nov 26 12:44:38 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
417         * libc-symbols.h (N_): New macro.
419 Sat Nov 25 02:48:47 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
421         * assert/assert-perr.c, assert/assert.c, inet/rcmd.c,
422         malloc/mcheck.c, malloc/vm-limit.c, posix/getconf.c, posix/id.c,
423         resolv/herror.c, sunrpc/auth_unix.c, sunrpc/clnt_perr.c,
424         sunrpc/clnt_raw.c, sunrpc/get_myaddr.c, sunrpc/pmap_clnt.c,
425         sunrpc/pmap_rmt.c, sunrpc/portmap.c, sunrpc/rpc_main.c,
426         sunrpc/rpc_parse.c, sunrpc/rpc_scan.c, sunrpc/rpc_util.c,
427         sunrpc/rpcinfo.c, sunrpc/svc_simple.c, sunrpc/svc_tcp.c,
428         sunrpc/svc_udp.c, time/zdump.c, time/zic.c: Mark translatable
429         strings.
431 Sun Nov 26 02:00:02 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
433         * misc/syslog.c (vsyslog) [USE_IN_LIBIO]: Adapted for libio.
435 Thu Nov 23 02:21:55 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
437         * sysdeps/unix/sysv/linux/{mlock,munlock,mlockall,munlockall}.S:
438         New files.
439         * sysdeps/unix/sysv/linux/sys/mman.h: Add prototypes for new functions
440         mlock, munlock, mlockall, and munlockall.
442 Thu Nov 23 18:26:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
444         * configure.in (--enable-libio): Set $stdio based on $enableval,
445         not always to libio.
447 Thu Nov 23 18:06:48 1995  Richard Stallman  <rms@gnu.ai.mit.edu>
449         * malloc/malloc.c (_malloc_internal): Can't use
450         get_contiguous_space when the heap info table
451         will be growing.  Account for new contiguous space in _heaplimit.
453 Wed Nov 22 12:37:39 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
455         * sysdeps/unix/sysv/linux/i386/sysdep.S (_errno): Define as alias
456         for errno.
458         * stdio-common/vfprintf.c [USE_IN_LIBIO] (vfprintf): Define as
459         alias for _IO_vfprintf.
461         * sysdeps/unix/sysv/linux/sockaddrcom.h: File removed.
463         * sysdeps/unix/sysv/linux/i386/init-first.c (init): Use
464         __fpu_control instead of ___fpu_control.
465         * sysdeps/unix/sysv/linux/i386/ieee_fpu.c
466         (___fpu_control): Renamed to __fpu_control.
467         * sysdeps/unix/sysv/linux/i386/fpu_control.h: Likewise.
468         * sysdeps/unix/sysv/linux/i386/fpu_control.c: Likewise.
470         * elf/dl-minimal.c: New file.
471         * elf/Makefile (rtld-routines): Add dl-minimal.
472         * elf/rtld.c (__dgettext, __assert_fail, __assert_perror_fail):
473         Functions moved to dl-minimal.c.
474         * sysdeps/mach/hurd/dl-sysdep.c (malloc, free, realloc,
475         sigjmp_save, longjmp): Likewise.
477         * sysdeps/unix/sysv/linux/i386/brk.S (__curbrk): Always initialize
478         to &_end, regardless of PIC.
480         * stdio-common/vfscanf.c (__vfscanf): Fix arg name in defn.
482 Tue Nov 21 14:12:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
484         * malloc/malloc.c (align): Don't check contiguity and call abort.
486         * hurd/hurdsig.c (post_reply): Function removed.
487         (abort_thread, abort_all_rpcs, _hurdsig_abort_rpcs): Don't call it.
488         Take single callback fn arg instead of reply port and type.
489         (_hurd_internal_post_signal): Callers changed.
490         Cache reply stub fn ptr in local var before UNTRACED might be changed.
492         * sysdeps/mach/hurd/mmap.c: Cope with a null write memobj for
493         PROT_READ|PROT_WRITE copy mapping.  Pass a proper vm_inherit_t to
494         vm_map.
496         * elf/rtld.c (_dl_start): For --list, do output and exit before
497         relocating.
499 Mon Nov 20 16:19:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
501         * intl/Makefile [gettext-srcdir]: Rewrote copying rules to only
502         get .c and .h files.
504         * malloc/malloc.c (align): Use abort instead of assert.
506 Sun Nov 19 18:23:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
508         * Makeconfig (+includes): Add $($(stdio)-include).
509         (libio-include): New variable.
511         * stdlib/strtod.c: Put weak_symbol after function defn.
512         * stdlib/strtol.c: Likewise.
514         * configure.in (--enable-libio): If not present, set $stdio to
515         "default".  Move stdio/libio check to end, so sysdeps fragments
516         can affect it.  Reset $stdio to "stdio" if it's "default".
517         * sysdeps/unix/sysv/linux/configure: New file.
519 Sat Nov 18 16:46:01 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
521         * libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
522         libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
523         libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
524         libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
525         libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
526         libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
527         libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
528         libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
529         libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
530         libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
531         libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
532         libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
533         libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
534         libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
535         libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
536         New files.  Slightly modified version from Linux libc.
538         * libio/memstream.c, libio/vdprintf.c: New files for functions not
539         (yet) part of GNU libio.
541         * libio/iofopncook.c: Implementation of `fopencookie', mainly written
542         by Per Bothner.
544         * stdio-common/getline.c: Adapted to libio.
545         * stdio-common/snprintf.c: Adapted to libio.
546         * stdio-common/vfprintf.c: Adapted to libio.
547         * stdio-common/vfscanf.c: Adapted to libio.
548         * sysdeps/posix/tempname.c: Adapted to libio.
550 Fri Nov 17 17:57:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
552         * sysdeps/generic/Makefile (make_siglist): Add missing backslash.
554         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start_cleanup): New
555         function.
557         * hurd/hurdfault.c: Replace __libc_fatal calls with assert_perror.
558         (_hurdsig_fault_init): Remove #if 0 from setting exception port.
559         Insert send right for SIGEXC before thread_set_special_port.
560         * hurd/hurdsig.c: Replace __libc_fatal calls with assert_perror.
561         (_hurdsig_init): Remove #if 0 from setting exception port.
563         * sysdeps/mach/hurd/ptrace.c (ptrace: PTRACE_CONT): Use
564         HURD_MSGPORT_RPC macro.
566 Thu Nov 16 06:07:49 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
568         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start_cleanup): New
569         function.
570         (_dl_sysdep_start): Move cleanup code there.
572         * Makeconfig (default-rpath): New variable.
573         (link-libc): Use it.
574         * elf/Makefile (ld.so): Pass -rpath=$(default-rpath).
575         * elf/rtld.c (_dl_rpath): New variable.
576         (_dl_start): Set it from rtld_map's DT_RPATH.
577         Call _dl_setup_hash on rtld_map.
578         (dl_main): Cache address of _exit in variable before relocating,
579         and use that in later calls.  Call _dl_sysdep_start_cleanup before
580         relocating.  Keep track of dependency order while loading; remove
581         rtld_map from chain, and reinsert in proper order if there is a
582         dependency on it.
584         * sysdeps/generic/Makefile (make_siglist): Pass
585         -DSIGNUM_H=... with config's signum.h location.
586         * sysdeps/generic/make_siglist.c: Include SIGNUM_H to define
587         signal numbers.
588         (HAVE_STRSIGNAL, HAVE_PSIGNAL): Define these before including signame.c
589         (main): Deansideclize output.
591         * elf/dl-load.c (_dl_map_object): Use _dl_rpath variable in place
592         of DEFAULT_RPATH macro.
593         * elf/Makefile: Undo last change.
595         * sysdeps/mach/hurd/dl-sysdep.c (free): Don't abort, just nop.
597 Wed Nov 15 19:22:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
599         * elf/dl-lookup.c (_dl_lookup_symbol): Undefined symbol is no
600         error if weak.
602         * elf/Makefile (default-rpath): New variable.
603         (CPPFLAGS): Append -DDEFAULT_RPATH=....
604         * elf/dl-load.c (_dl_map_object): Use DEFAULT_RPATH instead of
605         hard-coded "/lib:/usr/lib".
607         * sysdeps/mach/hurd/dl-sysdep.c: Include _itoa.h from stdio-common
608         instead of stdio.
609         (_dl_sysdep_start): If passed user entry is zero and
610         EXEC_STACK_ARGS flag set, reset user entry to &_start.
612         * elf/rtld.c (dl_main): Only call _dl_setup_hash if there is a
613         DT_HASH element.
615         * libc-symbols.h [HAVE_ELF] (symbol_set_declare): Gratuitously
616         repeat weak decl using weak_symbol macro, in case using broken GCC
617         (<2.8).
619 Wed Nov 15 18:49:55 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
621         * sysdeps/i386/isnanl.c: New file.
622         * sysdeps/i386/isinfl.c: New file.
624 Tue Nov 14 18:44:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
626         * malloc/free.c (free): Moved null and aligned_blocks checks
627         inside _free_internal.
629 Mon Nov 13 15:23:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
631         * malloc/malloc.c (morecore): Fix inverted test in allocating new
632         info table.
634         * malloc/malloc.c (align): Fix assertion.
636         * malloc/malloc.c: Include assert.h.
638         * libc-symbols.h: Use __attribute__ for GCC 2.8, not 2.7.
640         * malloc/malloc.h [emacs] (emacs_loser_valloc): Macro removed.
641         (valloc): Protect decl with [! (_MALLOC_INTERNAL && emacs)].
643 Fri Nov 10 14:15:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
645         * malloc/malloc.c (align): Assert that space for alignment
646         adjustment is same original space.
648         * hurd/hurdprio.c (_hurd_priority_which_map): Cast vm_deallocate
649         arg to vm_address_t.
651         * hurd/hurdsig.c (_hurd_internal_post_signal): For SIGNO == 0,
652         skip straight to pending check.  When UNTRACED, resume process
653         from suspension first.
655         * intl/Makefile (headers): New variable, libintl.h.
656         [gettext-srcdir]: New rules to copy source from $(gettext-srcdir)/intl.
657         * configure.in: Check for --with-gettext arg.
659 Fri Nov 10 13:51:30 1995  Richard Stallman  <rms@gnu.ai.mit.edu>
661         * malloc/malloc.c (get_contiguous_space): New function.
662         (morecore): Rewrite allocating new malloc info table.
663         (_malloc_internal): Use get_contiguous_space.
665 Fri Nov 10 13:03:40 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
667         * hurd/hurdexec.c (_hurd_exec): If exec'ing self, pass
668         _hurd_msgport to be destroyed.
670         * Makerules (installed-libcs): Filter out %_pic.a.
672         * hurd/hurdinit.c (_hurd_proc_init): When traced, use msg_sig_post
673         to our msgport to take SIGTRAP, instead of _hurd_raise_signal.
675         * hurd/Makefile (user-interfaces): Add hurd/process_request.
677 Wed Nov  8 16:31:25 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
679         * termios/Makefile (headers): Add sys/ttychars.h.
680         * termios/sys/ttychars.h: New file, incorporated from 4.4BSD-Lite
681         for compatibility.
683         * signal/signal.h [__USE_BSD] (sig_t): New typedef.
685 Wed Nov  8 15:12:47 1995  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
687         * sysdeps/mach/hurd/ptrace.c (ptrace) [PTRACE_TRACEME]: Notify the
688         proc server that we are now traced.
690 Tue Nov  7 12:29:46 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
692         * elf/Makefile (ldd): Make it executable.
694         * Makeconfig (config-LDFLAGS): Find dynamic linker in $(slibdir).
696         * Makeconfig (slibdir): New variable.
697         * Makerules (install): Install libc.so in $(slibdir).
698         * elf/Makefile (install-others): Install ld.so and ld-linux.so.1
699         in $(slibdir).
701         * elf/linux-compat.c: New file.
702         * elf/Makefile (distribute): Add linux-compat.c.
703         (generated): Add librtld.so.
704         [$(config-os)=linux*] (extra-objs): Add linux-compat.so.
705         [$(config-os)=linux*] (extra-objs): Add ld-linux.so.1.
706         (librtld.so): New target.
707         (ld.so, ld-linux.so.1): Make from librtld.so.
709         * elf/rtld.c (dl_main): Instead of weak call to _dl_compat_init,
710         call our own DT_INIT if we have one (and then clear it).
711         (__dgettext): New weak function.
713         * intl/localealias.c (read_alias_file): Avoid sprintf; use memcpy
714         by hand instead.
716         * sysdeps/generic/_strerror.c (_strerror_internal): Use _itoa
717         instead of snprintf.
719         * sysdeps/mach/_strerror.c (_strerror_internal): Don't write
720         BUF[BUFLEN].
722         * elf/rtld.c (rtld_map): New static variable.
723         (_dl_start): Use a differently named local BOOTSTRAP_MAP for the
724         bootstrapping.  Then copy data into `rtld_map'.
725         (dl_main): Finish filling in rtld_map and link it into the chain,
726         instead of allocating a new structure.
727         (dl_main): Call _dl_compat_init if it is defined (use weak ref).
729         * elf/dlsym.c: Fix last change: move REF out of `doit'.
731 Mon Nov  6 16:20:14 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
733         * elf/dlsym.c: Return the proper value, not just the defining
734         object's loadbase.
736 Sun Nov  5 16:09:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
738         * stdio-common/vfprintf.c (%c): Count the character itself towards
739         the field width in all cases.
741         * sysdeps/mach/hurd/getpriority.c (getpriority): Cast
742         __vm_deallocate arg to vm_address_t.
744 Fri Nov  3 17:27:49 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
746         * sysdeps/mach/hurd/sendto.c: Don't pass BINDING arg to
747         socket_create_address.
748         * sysdeps/mach/hurd/connect.c: Likewise.
749         * sysdeps/mach/hurd/bind.c: Likewise.
751         * hurd/hurdprio.c (_hurd_priority_which_map): Pass threadwaits
752         args to proc_getprocinfo.
753         * sysdeps/mach/hurd/getpriority.c: Likewise.
755         * hurd/hurdmsg.c (_S_msg_report_wait): New stub function.
757 Thu Nov  2 19:24:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
759         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno): Define as common.
761 Tue Oct 31 00:07:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
763         * sysdeps/mach/hurd/getpriority.c (getpriority): Pass
764         PI_FETCH_TASKINFO to proc_getprocinfo and through
765         _hurd_priority_which_map.
767         * sysdeps/mach/hurd/setpriority.c (setpriority): Pass new arg to
768         _hurd_priority_which_map.
769         * hurd/hurdprio.c (_hurd_priority_which_map): New arg PI_FLAGS,
770         passed through to proc_getprocinfo RPC.
771         * hurd/hurd/resource.h: Add PI_FLAGS arg in decl.
773         * sysdeps/mach/hurd/group_member.c: New file.
774         * sysdeps/generic/group_member.c: New file.
776         * Makerules (lib-noranlib): Don't depend on $(install-lib).
777         (others): Do.
778         * extra-lib.mk: Fix test of $(lib)-no-lib-dep.
780 Mon Oct 30 12:33:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
782         * Rules (others): Depend on $(extra-objs).
784         * posix/unistd.h [__USE_GNU]: Declare group_member, __group_member.
785         * posix/Makefile (routines): Add group_member.
787         * sysdeps/posix/euidaccess.c: New file, adapted from fileutils.
789         * sysdeps/unix/sysv/linux/i386/sigaction.c: Tighten constraint for
790         SIG operand in asm so it must be a register.
791         Add dead return to quiet gcc warning.
793         * Makerules (sysd-rules): Write a defn for sysd-rules-done.
794         [! sysd-rules-done]: Inhibit deps.
796 Thu Oct 26 23:11:11 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
798         * sysdeps/unix/sysv/linux/poll.c: Don't define as stub.  Use
799         simulation of system call using select.
801         * sysdeps/unix/sysv/linux/signal.c: Use POSIX implementation.
803         * sysdeps/unix/sysv/linux/statbuf.h: Define _STAT_VER.
805         * sysdeps/unix/sysv/linux/i386/sigaction.c: Correct parameter
806         name usage (new->act, old->oact).
807         Correct asm statement because of gcc strangeness.
809         * sysdeps/i386/i586/strchr.S: Correct typos: cmp -> cmpb.
811         * sunrpc/clnt_perr.c: Remove declaration of sys_errlist.  They
812         conflict with the ones in stdio.h.
814         * string/tester.c: %Z is no complete format.  Change to %Zd.
816 Thu Oct 26 18:13:33 1995  Miles Bader  <miles@gnu.ai.mit.edu>
818         * sysdeps/mach/hurd/bind.c (bind): Swap args to dir_link.
819         * sysdeps/mach/hurd/link.c (__link): Ditto.
820         * sysdeps/mach/hurd/symlink.c (__symlink): Ditto.
821         * sysdeps/mach/hurd/mknod.c (__mknod): Ditto.
822         Include "stdio-common/_itoa.h" instead of "stdio/_itoa.h".
824 Thu Oct 26 00:11:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
826         * sysdeps/unix/sysv/linux/i386/sigaction.c: New file.
828         * sysdeps/unix/sysv/linux/i386/xstat.S: Don't use JUMPTARGET macro
829         on syscall_error.  For PIC, it is a local label;
830         for non-PIC, JUMPTARGET expands to the unadorned name anyway.
831         * sysdeps/unix/sysv/linux/i386/xmknod.S: Likewise.
832         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
833         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
834         * sysdeps/unix/sysv/linux/i386/sbrk.S: Likewise.
835         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
836         * sysdeps/unix/sysv/linux/i386/brk.S: Likewise.
838 Thu Oct 26 03:01:22 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
840         * sysdeps/unix/sysv/linux/syscall.h: Strip list of syscalls in
841         comment to the necessary ones.  Add _readv and _writev.
843         * sysdeps/unix/configure.in: Change syntax for system call test
844         candidates and adapt sed script for this.  Now use : to separate
845         syscall name and file name.
847         * sysdeps/unix/sysv/linux/i386/sysdep.h (ENTRY): System call
848         number is now set is DO_CALL.  So call with additional argument.
849         (DO_CALL): Takes an additional argument.  Load system call
850         number according to new argument.
851         (SYSCALL_ERROR_HANDLER): Add ; after last ret statement.
852         * sysdeps/unix/sysv/linux/i386/brk.S [PIC]: Define __syscall_error
853         locally using SYSCALL_ERROR_HANDLER macro.
854         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
855         * sysdeps/unix/sysv/linux/i386/sbrk.S: Likewise.
856         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
857         * sysdeps/unix/sysv/linux/i386/xmknod.S: Likewise.
858         * sysdeps/unix/sysv/linux/i386/xstat.S: Likewise.
859         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
860         Don't use DO_CALL macro; instead use lower level macros for better
861         control.
863         * sysdeps/unix/sysv/linux/sigaction.h: New file.
864         * sysdeps/unix/sysv/linux/sigaction.S: File removed.
865         * sysdeps/unix/sysv/linux/signal.S: File removed.
867 Wed Oct 25 14:23:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
869         * hurd/hurdstartup.c (_hurd_startup): Use new
870         exec_startup_get_info RPC from exec_startup.defs
871         in place of old exec_startup from exec.defs.  Remove kludge to
872         guess user entry and phdr locations, since the new RPC gives us
873         that info.
875         * stdio/stdio.h (sys_errlist, _sys_errlist): Declare const.
876         * sysdeps/generic/_strerror.c: Undo last change.
878         * sysdeps/unix/sysv/linux/stat.c: New file.
879         * sysdeps/unix/sysv/linux/fstat.c: New file.
880         * sysdeps/unix/sysv/linux/lstat.c: New file.
881         * sysdeps/unix/sysv/linux/i386/stat.S: File removed.
882         * sysdeps/unix/sysv/linux/i386/fstat.S: File removed.
883         * sysdeps/unix/sysv/linux/i386/lstat.S: File removed.
885 Tue Oct 24 15:22:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
887         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
888         New macro.
889         (PSEUDO): Use it instead of SYSCALL_PIC_SETUP and jmp syscall_error.
891         * sysdeps/unix/sysv/linux/i386/sysdep.S (__syscall_error): Define
892         only #ifndef PIC.
894         * Makeconfig (built-program-cmd): New variable.
895         * sunrpc/Makefile (rpcgen-cmd): Use $(built-program-cmd).
896         * time/Makefile (zic-cmd): Likewise.
898         * hurd/Makefile (user-interfaces): Add hurd/exec_startup.
900         * sunrpc/Makefile (librpcsvc-no-lib-dep): New variable.
901         * extra-lib.mk: If $(lib)-no-lib-dep is defined and MAKELEVEL>0,
902         make `others' rather than `lib-noranlib' depend on the libraries.
904         * sysdeps/unix/configure.in: Check for fchdir syscall.
905         Improve sed script to allow / on rhs without / on lhs.
907 Thu Oct 19 03:47:32 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
909         * sysdeps/unix/sysv/linux/termbits.h: Don't define speed constants.
911         * elf/rtld.c: Include _itoa.h from stdio-common instead of stdio.
913         * sysdeps/unix/sysv/linux/select.S: New file.
915 Wed Oct 18 03:33:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
917         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Use
918         SYSCALL_PIC_SETUP before jumping to syscall_error.
919         * sysdeps/unix/i386/sysdep.h (SYSCALL_PIC_SETUP): New macro.
920         (PSEUDO): Use it before jumping to syscall_error.
921         * sysdeps/unix/i386/sysdep.S [! PIC]: Don't find GOT address;
922         expect it in %ebx on entry.  Pop old %ebx value off stack after
923         using it.
925         * signal/signal.h [__USE_BSD] (_sys_siglist, sys_siglist): Declare
926         them.
928         * sysdeps/generic/_strerror.c: Declare _sys_errlist and _sys_nerr.
930         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): For magic
931         `fd/', pass the right pointer to strtol to parse the number.
933 Tue Oct 17 23:00:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
935         * sysdeps/mach/_strerror.c: Include stdio-common/_itoa.h instead
936         of stdio/_itoa.h.
938 Tue Oct 17 19:51:17 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
940         * sysdeps/unix/sysv/linux/i386/stat.S [PIC] (__stat): Set GOT
941         register %ebx before calling __xstat through PLT.
943         * sysdeps/unix/sysv/linux/i386/sysdep.S: Fix typo in comment.
945         * sysdeps/unix/sysv/linux/sigset.h: Remove file.
947 Tue Oct 17 01:21:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
949         * hurd/hurdsock.c: Include stdio-common/_itoa.h instead of
950         stdio/_itoa.h.
951         * hurd/hurdlookup.c: Likewise.
953         * hurd/hurd/signal.h: Declare hurd_preempt_signals and
954         hurd_unpreempt_signals.
956         * stdio/stdio.h: Declare __snprintf and __vsnprintf.
958         * stdio-common/psignal.c: Translate signal description strings.
959         * string/strsignal.c: Likewise.
960         * sysdeps/generic/_strerror.c (_strerror_internal): Translate
961         error strings.
962         * sysdeps/mach/_strerror.c: Likewise.
964         * stdio-common/snprintf.c (__snprintf): Renamed from snprintf;
965         call __vsnprintf.
966         (snprintf): Define as weak alias.
967         * stdio/vsnprintf.c (__vsnprintf): Renamed from vsnprintf.
968         (vsnprintf): Define as weak alias.
970 Mon Oct 16 03:22:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
972         * Makerules (install-lib): Filter out %_pic.a; install only the
973         linked shared objects.
975         * locale/Makefile (aux): Add SYS_libc.
976         * locale/SYS_libc.c: New file.
977         * libc-symbols.h [! ASSEMBLER] (_): New macro.
979         * configure.in (libc_cv_asm_set_directive): Link program into
980         conftest instead of letting it default to a.out.
982         * elf/Makefile (install-others): Add missing slash.
984         * elf/ldd.sh.in: Prepend `./' to relative file names so ld.so
985         won't search LD_LIBRARY_PATH.
987         * Makefile (subdirs): Replace stdio with stdio-common and $(stdio).
988         * configure.in: Grok arg --enable-libio.
989         ($stdio = libio): Define USE_IN_LIBIO.
990         * config.h.in (USE_IN_LIBIO): Add #undef.
991         * config.make.in (stdio): New variable, set by configure.
992         * Makeconfig (stdio): New variable.
993         * stdio.h [USE_IN_LIBIO]: Include libio/stdio.h instead of
994         stdio/stdio.h.
995         * stdio-common/Makefile: New file.
996         * stdio/Makefile: Half the contents moved to stdio-common/Makefile.
997         * stdio/_itoa.c: Moved to stdio-common.
998         * stdio/_itoa.h: Moved to stdio-common.
999         * stdio/asprintf.c: Moved to stdio-common.
1000         * stdio/bug1.c: Moved to stdio-common.
1001         * stdio/bug1.input: Moved to stdio-common.
1002         * stdio/bug2.c: Moved to stdio-common.
1003         * stdio/bug3.c: Moved to stdio-common.
1004         * stdio/bug4.c: Moved to stdio-common.
1005         * stdio/bug5.c: Moved to stdio-common.
1006         * stdio/bug6.c: Moved to stdio-common.
1007         * stdio/bug6.input: Moved to stdio-common.
1008         * stdio/bug7.c: Moved to stdio-common.
1009         * stdio/dprintf.c: Moved to stdio-common.
1010         * stdio/errnobug.c: Moved to stdio-common.
1011         * stdio/getline.c: Moved to stdio-common.
1012         * stdio/getw.c: Moved to stdio-common.
1013         * stdio/perror.c: Moved to stdio-common.
1014         * stdio/printf-parse.h: Moved to stdio-common.
1015         * stdio/printf-prs.c: Moved to stdio-common.
1016         * stdio/printf.c: Moved to stdio-common.
1017         * stdio/printf.h: Moved to stdio-common.
1018         * stdio/printf_fp.c: Moved to stdio-common.
1019         * stdio/psignal.c: Moved to stdio-common.
1020         * stdio/putw.c: Moved to stdio-common.
1021         * stdio/reg-printf.c: Moved to stdio-common.
1022         * stdio/scanf.c: Moved to stdio-common.
1023         * stdio/snprintf.c: Moved to stdio-common.
1024         * stdio/sprintf.c: Moved to stdio-common.
1025         * stdio/sscanf.c: Moved to stdio-common.
1026         * stdio/tempnam.c: Moved to stdio-common.
1027         * stdio/temptest.c: Moved to stdio-common.
1028         * stdio/test-fseek.c: Moved to stdio-common.
1029         * stdio/test-fwrite.c: Moved to stdio-common.
1030         * stdio/test-popen.c: Moved to stdio-common.
1031         * stdio/test_rdwr.c: Moved to stdio-common.
1032         * stdio/tmpfile.c: Moved to stdio-common.
1033         * stdio/tmpnam.c: Moved to stdio-common.
1034         * stdio/tst-fileno.c: Moved to stdio-common.
1035         * stdio/tst-printf.c: Moved to stdio-common.
1036         * stdio/tstgetln.c: Moved to stdio-common.
1037         * stdio/tstgetln.input: Moved to stdio-common.
1038         * stdio/tstscanf.c: Moved to stdio-common.
1039         * stdio/tstscanf.input: Moved to stdio-common.
1040         * stdio/vfprintf.c: Moved to stdio-common.
1041         * stdio/vfscanf.c: Moved to stdio-common.
1042         * stdio/vprintf.c: Moved to stdio-common.
1043         * stdio/xbug.c: Moved to stdio-common.
1044         * sysdeps/generic/Makefile (siglist.c rules): Do this in subdir
1045         stdio-common instead of stdio.
1046         * sysdeps/unix/Makefile (errlist.c rules): Likewise.
1047         * stdio-common/asprintf.c [USE_IN_LIBIO]: Call libio primitive
1048         function.
1049         * stdio-common/dprintf.c: Likewise.
1050         * stdio-common/printf.c: Likewise.
1051         * stdio-common/scanf.c: Likewise.
1052         * stdio-common/snprintf.c: Likewise.
1053         * stdio-common/sprintf.c: Likewise.
1054         * stdio-common/sscanf.c: Likewise.
1055         * stdio-common/vprintf.c: Likewise.
1057         * Makerules: Include $(+depfiles) directly instead of generating
1058         depend-$(subdir).
1059         (depend-$(subdir)): Target removed.
1060         (common-clean): Don't remove depend-$(subdir).
1062         * sysdeps/unix/sysv/linux/Makefile (rtld-installed-name): New variable.
1063         (config-LDFLAGS): Variable removed.
1065         * sysdeps/mach/hurd/getcwd.c: Use __file_name_lookup_under.
1066         * sysdeps/mach/hurd/bind.c: Likewise.
1067         * sysdeps/mach/hurd/access.c: Use new __hurd_file_name_lookup
1068         calling convention.
1070         * hurd/hurdexec.c: Undo last change (10 Oct 95).
1072 Sun Oct 15 21:04:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1074         * hurd/hurd/lookup.h: New file.
1075         * hurd/hurdlookup.c (__file_name_lookup_under): New function.
1076         (__hurd_file_name_lookup, __hurd_file_name_lookup_retry,
1077         __hurd_file_name_split): Rewritten to take callback functions for
1078         using any needed init or dtable port, instead of passing in crdir
1079         and cwdir ports.
1080         (__file_name_lookup, __file_name_split): Use new calling
1081         convention; pass _hurd_ports_use and __getdport as the callback
1082         functions.
1084         * sysdeps/mach/hurd/chroot.c: Use __file_name_lookup_under instead
1085         of __hurd_file_name_lookup.
1086         * sysdeps/mach/hurd/chdir.c: Likewise.
1087         * sysdeps/mach/hurd/fchdir.c: Likewise.
1088         * hurd/fchroot.c: Likewise.
1090         * stdlib/Makefile (mpn-found): Don't omit %.s.
1091         (mpn-copy-sysdep): Omit files in nonexistent directories.
1092         (copy-mpn): Commit files to CVS.
1093         * stdlib/gen-mpn-copy (translations): Update translations for GMP
1094         1.906.7.
1096         * configure.in (machine): Translate alpha* to alpha/&, hppa* to hppa/&.
1098 Sat Oct 14 02:52:36 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
1100         * malloc/malloc.c (_malloc_internal): Performance fix.  Move
1101         if statement out of loop.
1103         * stdio/_itoa.c, stdio/_itoa.h: Complete rewrite.  Much faster
1104         implementation using GMP functions.  Contributed by
1105         Torbjorn Granlund and Ulrich Drepper.
1107         * stdio/test_rdwr.c: Include <errno.h>.
1109         * sysdeps/i386/i586/Implies: New file.
1111         New highly optimized string functions for i[345]86.
1112         * sysdeps/i386/memchr.S, sysdeps/i386/memcmp.S: New files.
1113         * sysdeps/i386/stpcpy.S, sysdeps/i386/stpncpy.S: New files.
1114         * sysdeps/i386/strchr.S, sysdeps/i386/strcspn.S: New files.
1115         * sysdeps/i386/strpbrk.S, sysdeps/i386/strrchr.S: New files.
1116         * sysdeps/i386/strspn.S, sysdeps/i386/i486/strcat.S: New files.
1117         * sysdeps/i386/i486/strlen.S, sysdeps/i386/i586/strchr.S: New files.
1118         * sysdeps/i386/i586/strlen.S: New file.
1119         * sysdeps/i386/memchr.c: Removed.  There is now an assembler version.
1121         * sysdeps/i386/i586/memcopy.h (WORD_COPY_BWD): Parameters did
1122         not correspond to used values.
1124         * sysdeps/unix/sysv/linux/nfs/nfs.h: New file.  Simply a wrapper
1125         around a kernel header file.
1126         * sysdeps/unix/sysv/linux/Dist: Add it.
1127         * sysdeps/unix/sysv/linux/Makefile [$(subdir)=sunrpc] (headers):
1128         Likewise.
1130         * sysdeps/unix/sysv/linux/local_lim.h: Rewrite.  Instead of
1131         defining ourself we use a kernel header file.
1133         * sysdeps/unix/sysv/linux/i386/sysdep.h (DO_CALL): Optimize system
1134         call handler for i586.
1136         * sysdeps/unix/sysv/linux/sys/param.h: Add copyright and clean up.
1138 Thu Oct 12 15:45:32 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1140         * hurd/hurd.h (file_name_lookup_under): Declare it.
1141         * hurd/Makefile (headers): Add hurd/lookup.h.
1143         * hurd/hurdinit.c (_hurd_ports_use): New function.
1144         * hurd/hurd.h (_hurd_ports_use): Declare it.
1145         (hurd_invoke_translator, hurd_file_name_lookup, hurd_file_name_split,
1146         hurd_file_name_lookup_retry): Remove these decls.
1147         * hurd/Makefile (routines): Remove invoke-trans.
1149 Wed Oct 11 00:00:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1151         * sysdeps/i386/dl-machine.h (elf_machine_rel): Use +=, not =, to
1152         apply R_386_PC32 reloc.
1154         * Makeconfig (config-LDFLAGS): Add missing slash.
1156         * sysdeps/mach/hurd/profil.c (fork_profil): Only call
1157         update_waiter if profiling was enabled in the parent.
1159         * csu/initfini.c: Don't pass -f flag to cp.
1161 Tue Oct 10 23:08:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1163         * Makerules (build-shlib): Pass -rpath and -rpath-link options.
1164         (LDFLAGS-c.so): Don't pass -dynamic-linker here.
1165         * Makeconfig (+link): Pass $(sysdep-LDFLAGS).
1166         (link-libc): Pass -rpath and -rpath-link options.
1168         * MakeTAGS (all-dirs): Omit CVS directories.
1169         Specify vpath directives to find source files in $(all-dirs).
1170         (sources, headers): Append sources and headers from $(all-dist) to
1171         these.
1172         (all-dist): Filter them out of this.
1173         (all-headers, all-sources): Use $(shell find ...) instead of
1174         $(wildcard ...).
1176         * sysdeps/mach/hurd/Makefile (sysdep-LDFLAGS): New variable; pass
1177         -rpath-link.
1179         * hurd/hurdexec.c: Pass poly and dealloc args to __file_exec.
1181         * elf/Makefile (install-others): Add missing $.
1183 Mon Oct  9 02:54:14 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1185         * mach/Makefile ($(objpfx)errsystems.c): Rule reenabled.
1187         * Makeconfig (config-LDFLAGS): Define to
1188         -Wl-dynamic-linker=$(libdir)$(rtld-installed-name).
1189         (rtld-installed-name): New variable.
1190         * elf/Makefile (install-lib): Variable removed.
1191         (install-others): Define this instead, to
1192         $(libdir)(rtld-installed-name).
1193         ($(libdir)(rtld-installed-name)): New target; install from ld.so.
1195         * elf/ldd.sh.in: New file.
1196         * elf/Makefile (distribute): Add ldd.sh.in.
1197         (install-bin): Add ldd.
1198         ($(objpfx)ldd: ldd.sh.in): New rule.
1200         * sysdeps/mach/hurd/dl-sysdep.c: Use __hurd_fail throughout.
1201         * hurd/hurd.h (__hurd_fail): Replace macro with inline function.
1202         Translate some Mach errors to Hurd errors.
1204         * elf/rtld.c (dl_main): Under --list, print msg if executable is
1205         statically linked.
1207         * elf/dl-load.c (_dl_map_object_from_fd): Rewrote program header
1208         table processing.
1210 Sat Oct  7 01:25:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1212         * sysdeps/stub/machine-gmon.h: Add #error.
1214 Fri Oct  6 01:49:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1216         * elf/dynamic-link.h (elf_get_dynamic_info): If DYN is null, don't
1217         examine it.
1219 Fri Sep 29 03:43:51 1995  Paul Eggert  <eggert@twinsun.com>
1221         Rewrite mktime from scratch for performance, and for correctness
1222         in the presence of leap seconds.
1224         * time/mktime.c (ydhms_tm_diff, not_equal_tm, print_tm, check_result):
1225         New functions.
1226         (LEAP_SECONDS_POSSIBLE, CHAR_BIT, INT_MIN, INT_MAX,
1227         TIME_T_MIN, TIME_T_MAX, TM_YEAR_BASE, EPOCH_YEAR): New macros.
1228         <limits.h>, <stdlib.h>: New #includes.
1229         (main): Support tests with given broken-down value; support benchmarks.
1230         (__mon_lengths, debugging_enabled, printtm, dist_tm, doit,
1231         do_normalization, normalize, BAD_STRUCT_TM, SKIP_VALUE,
1232         <ctype.h>): Remove.
1234         * time/time.h, time/mktime.c (__mktime_internal): New offset arg.
1235         * time/mktime.c (mktime), time/timegm.c (timegm): Use it.
1237         * time/mktime.c (__mon_yday): New variable; replaces `__mon_lengths'.
1238         time/offtime.c (__offtime), time/tzset.c (compute_change): Use it.
1240         * time/offtime.c (__offtime): Remove useless assignment
1241         `tp->tm_isdst = -1'.
1243         * manual/maint.texi: Update credits.
1245 Fri Oct  6 00:28:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1247         * sysdeps/unix/common/readv.S: Moved to sysdeps/unix/bsd.
1248         * sysdeps/unix/common/writev.S: Moved to sysdeps/unix/bsd.
1249         * sysdeps/unix/sysv/linux/readv.c: File removed.
1250         * sysdeps/unix/sysv/linux/writev.c: File removed.
1251         * sysdeps/unix/configure.in: Check for readv and writev syscalls.
1253         * sysdeps/unix/configure.in: If eval doesn't set $unix_srcname,
1254         set it to $unix_syscall instead of $unix_function.
1256 Thu Oct  5 00:59:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1258         * elf/rtld.c (dl_main): Grok --list flag.
1259         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Ignore -- args.
1261 Wed Oct  4 00:21:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1263         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_message): New function.
1264         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_message): New function.
1265         * elf/link.h (_dl_sysdep_message): Declare it.
1267         * sysdeps/unix/Makefile ($(common-objpfx)ioctls): Remove NULL from
1268         the list.
1270         * time/northamerica: Corrections to Canada data from ADO 95i.
1272         * sysdeps/unix/sysv/linux/Makefile (headers): Don't append to this
1273         unconditionally.  In socket subdir, append sys/socketcall.h; in
1274         time subdir, append sys/timex.h.
1275         (config-LDFLAGS): New variable.
1276         * sysdeps/unix/sysv/linux/Dist: New file.
1277         * Makeconfig (+link): Pass $(config-LDFLAGS) before $(LDFLAGS).
1279         * sysdeps/generic/stpncpy.c: Don't increment DEST when zero-filling.
1281         * elf/dlopen.c (dlopen): Don't pass USER_ENTRY arg to _dl_map_object.
1283 Sat Sep 30 11:47:05 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1285         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): If started by
1286         kernel with args on stack, point _dl_hurd_data at zero data
1287         instead of garbage.  When ld.so run as program, grok args
1288         -LIB=MEMOBJ and pre-load shared object files found in memory
1289         objects loaded by the boot loader.
1291         * elf/link.h (struct link_map): New member `l_entry'.
1292         (_dl_map_object, _dl_map_object_from_fd): Remove last arg ENTRY_POINT.
1293         * elf/dl-load.c (_dl_map_object, _dl_map_object_from_fd): Remove
1294         last arg ENTRY_POINT.  Store the entry point location in the
1295         `l_entry' member of the new map.
1296         * elf/rtld.c (dl_main): Don't pass USER_ENTRY arg to
1297         _dl_map_object.  When run as program, set *USER_ENTRY to L->l_entry.
1298         * elf/dl-init.c (_dl_init_next): Don't pass ENTRY_POINT arg to
1299         _dl_map_object.
1301         * posix/tstgetopt.c, posix/tstgetopt.args: Test long options too.
1303         * sysdeps/unix/sysv/linux/i386/init-first.c (init): Save, set, and
1304         restore %ebx by hand for personality syscall.
1305         GCC cannot deal with spilling the dedicated GOT register.
1307         * misc/Makefile (routines): Add mntent, which was somehow omitted.
1309 Fri Sep 29 15:07:10 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
1311         * sysdeps/unix/sysv/linux/adjtime.c (__adjtime):
1312         Change name of field `mode' in `struct timex' to `modes'.
1313         Linux-1.3.28 updates this name according to RFC 1489.
1315 Thu Sep 28 13:05:54 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1317         Merge new message handling code from GNU gettext, by Drepper.
1318         * intl: New directory.
1319         * Makefile (subdirs): Add intl.
1321         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Return
1322         USER_ENTRY instead of storing it on our stack.
1324         * elf/rtld.c (rtld_command): Variable removed.
1325         (_dl_skip_args): New variable.
1326         (dl_main): Increment _dl_skip_args instead of setting rtld_command.
1327         If the link_map for the executable itself is not first in the chain,
1328         make it so.
1329         * sysdeps/i386/dl-machine.h (RTLD_START): Use _dl_skip_args as
1330         count of args to skip.
1332 Thu Sep 28 09:20:04 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
1334         * stdlib/strtod.c (STRTOF): Fix handling of numbers with lots of
1335         leading zeroes.
1337 Wed Sep 27 00:27:25 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1339         * sysdeps/mach/hurd/getcwd.c (__getcwd): Renamed from getcwd.
1340         (getcwd): Define as weak alias.
1341         * sysdeps/posix/getcwd.c: Likewise.
1342         * sysdeps/stub/getcwd.c: Likewise.
1343         * posix/unistd.h: Declare __getcwd.
1345         * string/string.h: Declare __strcasecmp.
1346         * sysdeps/generic/strcasecmp.c (__strcasecmp): Renamed from
1347         strcasecmp.
1348         (strcasecmp): Define as weak alias.
1350         * string/string.h: Declare __stpcpy.
1351         * sysdeps/generic/stpcpy.c (__stpcpy): Renamed from stpcpy.
1352         (stpcpy): Define as weak alias.
1354         * sysdeps/unix/sysv/linux/Implies: Add unix/common.
1356         * sysdeps/unix/i386/sysdep.h [HAVE_ELF] (ASM_TYPE_DIRECTIVE):
1357         Don't use `type' for arg name, since we are using it as a keyword
1358         in the rhs.
1360         * sysdeps/unix/configure.in: Check for syscalls getpriority,
1361         setpriority, getrlimit, setrlimit.
1363         * sysdeps/posix/truncate.c: Include fcntl.h.
1365         * sysdeps/generic/getdomain.c: Include string.h for strncpy decl.
1367         * sysdeps/stub/getpriority.c: Don't include obsolete gnu-stabs.h;
1368         use new stub_warning syntax.
1369         * sysdeps/stub/setpriority.c: Likewise.
1370         * sysdeps/stub/__longjmp.c: Likewise.
1371         * sysdeps/stub/_exit.c: Likewise.
1372         * sysdeps/stub/accept.c: Likewise.
1373         * sysdeps/stub/acos.c: Likewise.
1374         * sysdeps/stub/alarm.c: Likewise.
1375         * sysdeps/stub/asin.c: Likewise.
1376         * sysdeps/stub/atan2.c: Likewise.
1377         * sysdeps/stub/bind.c: Likewise.
1378         * sysdeps/stub/cbrt.c: Likewise.
1379         * sysdeps/stub/chroot.c: Likewise.
1380         * sysdeps/stub/closedir.c: Likewise.
1381         * sysdeps/stub/connect.c: Likewise.
1382         * sysdeps/stub/cos.c: Likewise.
1383         * sysdeps/stub/cosh.c: Likewise.
1384         * sysdeps/stub/ctermid.c: Likewise.
1385         * sysdeps/stub/cuserid.c: Likewise.
1386         * sysdeps/stub/defs.c: Likewise.
1387         * sysdeps/stub/exp.c: Likewise.
1388         * sysdeps/stub/fmod.c: Likewise.
1389         * sysdeps/stub/frexp.c: Likewise.
1390         * sysdeps/stub/fsync.c: Likewise.
1391         * sysdeps/stub/getcwd.c: Likewise.
1392         * sysdeps/stub/getenv.c: Likewise.
1393         * sysdeps/stub/gethostid.c: Likewise.
1394         * sysdeps/stub/getlogin.c: Likewise.
1395         * sysdeps/stub/getpeername.c: Likewise.
1396         * sysdeps/stub/getrlimit.c: Likewise.
1397         * sysdeps/stub/getsockname.c: Likewise.
1398         * sysdeps/stub/getsockopt.c: Likewise.
1399         * sysdeps/stub/listen.c: Likewise.
1400         * sysdeps/stub/log.c: Likewise.
1401         * sysdeps/stub/log10.c: Likewise.
1402         * sysdeps/stub/mkfifo.c: Likewise.
1403         * sysdeps/stub/morecore.c: Likewise.
1404         * sysdeps/stub/nice.c: Likewise.
1405         * sysdeps/stub/nlist.c: Likewise.
1406         * sysdeps/stub/opendir.c: Likewise.
1407         * sysdeps/stub/pipestream.c: Likewise.
1408         * sysdeps/stub/ptrace.c: Likewise.
1409         * sysdeps/stub/putenv.c: Likewise.
1410         * sysdeps/stub/readdir.c: Likewise.
1411         * sysdeps/stub/reboot.c: Likewise.
1412         * sysdeps/stub/recv.c: Likewise.
1413         * sysdeps/stub/recvfrom.c: Likewise.
1414         * sysdeps/stub/rename.c: Likewise.
1415         * sysdeps/stub/rewinddir.c: Likewise.
1416         * sysdeps/stub/seekdir.c: Likewise.
1417         * sysdeps/stub/send.c: Likewise.
1418         * sysdeps/stub/sendto.c: Likewise.
1419         * sysdeps/stub/setegid.c: Likewise.
1420         * sysdeps/stub/seteuid.c: Likewise.
1421         * sysdeps/stub/setgroups.c: Likewise.
1422         * sysdeps/stub/sethostid.c: Likewise.
1423         * sysdeps/stub/sethostname.c: Likewise.
1424         * sysdeps/stub/setjmp.c: Likewise.
1425         * sysdeps/stub/setrlimit.c: Likewise.
1426         * sysdeps/stub/setsockopt.c: Likewise.
1427         * sysdeps/stub/shutdown.c: Likewise.
1428         * sysdeps/stub/signal.c: Likewise.
1429         * sysdeps/stub/sigsuspend.c: Likewise.
1430         * sysdeps/stub/sin.c: Likewise.
1431         * sysdeps/stub/sinh.c: Likewise.
1432         * sysdeps/stub/socket.c: Likewise.
1433         * sysdeps/stub/socketpair.c: Likewise.
1434         * sysdeps/stub/sqrt.c: Likewise.
1435         * sysdeps/stub/sync.c: Likewise.
1436 M sysd-stdio.c
1437         * sysdeps/stub/system.c: Likewise.
1438         * sysdeps/stub/tan.c: Likewise.
1439         * sysdeps/stub/tanh.c: Likewise.
1440         * sysdeps/stub/tcdrain.c: Likewise.
1441         * sysdeps/stub/tcflow.c: Likewise.
1442         * sysdeps/stub/tcgetpgrp.c: Likewise.
1443         * sysdeps/stub/tcsendbrk.c: Likewise.
1444         * sysdeps/stub/tcsetattr.c: Likewise.
1445         * sysdeps/stub/tcsetpgrp.c: Likewise.
1446         * sysdeps/stub/telldir.c: Likewise.
1447         * sysdeps/stub/tempname.c: Likewise.
1448         * sysdeps/stub/ttyname.c: Likewise.
1449         * sysdeps/stub/ttyname_r.c: Likewise.
1450         * sysdeps/stub/utime.c: Likewise.
1452         * gmon/gmon.c (moncontrol): Don't cast buffer arg to profil.
1454         * time/mktime.c (localtime_r): Use 0 instead of NULL.
1456         * config.make.in (AS): New variable; set to `$(CC) -c'.
1458         * posix/unistd.h [__USE_BSD]: Declare profil.
1460         * elf/dl-load.c (_dl_map_object_from_fd): New function, broken out
1461         of _dl_map_object.
1462         (_dl_map_object): Call it.
1463         * elf/link.h (_dl_map_object_from_fd): Declare it.
1465 Tue Sep 26 16:50:17 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1467         * locale/libintl.h: Rewritten by Ulrich Drepper for use with GNU
1468         gettext code.
1470         * sysdeps/unix/sysv/linux/sys/param.h: New file.
1471         * sysdeps/unix/sysv/linux/Subdirs: File removed.
1473         * libc-symbols.h (_LIBC): Define to 1, not just empty.
1475         * gmon: New directory of profiling code, incorporated from
1476         4.4BSD-Lite and modified.
1477         * sysdeps/i386/machine-gmon.h: New file.
1478         * sysdeps/stub/machine-gmon.h: New file.
1479         * sysdeps/mach/hurd/profil.c: New file.
1480         * sysdeps/stub/profil.c: New file.
1481         * sysdeps/unix/bsd/profil.S: New file.
1482         * Makefile (subdirs): Add gmon.
1483         * csu/gmon-start.c: New file.
1484         * csu/Makefile (extra-objs): Add gmon-start.o,
1485         g$(start-installed-name).
1486         (install-lib, omit-deps): Add g$(start-installed-name).
1487         ($(objpfx)g$(start-installed-name)): New target.
1489 Fri Sep 22 14:24:25 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1491         * sysdeps/mach/hurd/Makefile: Elide sunrpc from $(subdirs) for the
1492         time being.
1494 Thu Sep 21 00:03:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1496         * sysdeps/unix/configure.in: Check for `profil' syscall.
1498         * manual/Makefile (infodir, prefix, INSTALL, INSTALL_DATA): Variables
1499         removed.
1501         * time/africa, time/asia, time/europe, time/northamerica,
1502         time/yearistype: New data from ADO 95h.
1504         * Makerules (build-shlib): Use $(@F:lib%.so=%) in place of
1505         $(notdir $*), so it wins for the explicit libc.so rule as well as the
1506         pattern rule.
1508         * sysdeps/stub/sys/sem_buf.h (union semun): New type.
1510         * sysdeps/mach/hurd/i386/init-first.c (init1) [PIC]: Call
1511         __libc_global_ctors.
1512         * sysdeps/i386/init-first.c: Rewritten.
1513         * sysdeps/unix/sysv/linux/i386/init-first.S: File removed.
1514         * sysdeps/unix/sysv/linux/i386/init-first.c: New file.
1516         * sysdeps/unix/sysv/linux/i386/fpu_control.h: Fix name in decl of
1517         ___fpu_control.
1519         * Makerules (build-shlib): New canned sequence, broken out of
1520         lib%.so rule.  Link in $^ instead of just $<.
1521         (lib%.so: lib%_pic.a): Use it.
1522         (libc.so): New target; use $(build-shlib) for cmds, but also depend
1523         on soinit.so first and sofini.so last.
1525         * elf/soinit.c: New file.
1526         * elf/sofini.c: New file.
1527         * elf/Makefile (distribute): Add soinit.c and sofini.c.
1528         (extra-objs): Add soinit.so and sofini.so.
1530         * sysvipc/sys/shm.h (shmat): Fix return type to char *.
1531         * sysdeps/stub/sys/ipc_buf.h (key_t): Type removed.
1533         * misc/syslog.c (vsyslog): Rewritten using open_memstream to
1534         dynamically allocate buffers.
1536         * Makerules (install-lib-nosubdir): Make this, rather than
1537         install-no-libc.a, depend on the installed shared libraries.
1539 Wed Sep 20 18:02:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1541         * locale/locale.c: Include errno.h.
1542         * locale/localedef.c: Likewise.
1544 Tue Sep 19 00:02:06 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1546         * Makefile (distclean-1): Remove config.cache, config.log, config.h.
1547         (parent-mostlyclean): Remove all flavors of the parent library.
1549         * misc/mntent.c (getmntent): Skip multiple whitespace chars
1550         between fields.
1552         * hurd/hurdstartup.c (_hurd_startup): If RPC returns
1553         EXEC_STACK_ARGS flag, get args from stack.
1554         If args on stack but have info from RPC, relocate args on stack to make
1555         space for struct hurd_startup_data.
1557 Mon Sep 18 15:06:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1559         * elf/dl-object.c: Include errno.h.
1560         * posix/execvp.c: Likewise.
1561         * dirent/scandir.c: Likewise.
1562         * sysdeps/posix/system.c: Likewise.
1563         * sysdeps/generic/setenv.c: Likewise.
1564         * stdlib/msort.c: Likewise.
1565         * stdio/memstream.c: Likewise.
1566         * stdio/fclose.c: Likewise.
1567         * stdio/getdelim.c: Likewise.
1568         * stdio/setvbuf.c: Likewise.
1569         * sysdeps/ieee754/ldexp.c: Likewise.
1570         * locale/locfile-parse.c: Likewise.
1572         * stdlib/lcong48_r.c: Don't check for null argument; let it fault.
1573         * stdlib/seed48_r.c: Likewise.
1574         * stdlib/srand48_r.c: Likewise.
1575         * stdlib/jrand48_r.c: Likewise.
1576         * stdlib/nrand48_r.c: Likewise.
1578         * Makeconfig (+gccwarn): Remove -Wbad-function-cast, which seems
1579         to be useless.
1581 Mon Sep 18 12:39:22 1995  Paul Eggert  <eggert@twinsun.com>
1583         * mktime.c (localtime_r): Add substitute if the system doesn't
1584         provide one.
1586 Mon Sep 18 14:39:20 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1588         * time/gmtime.c (gmtime_r): Define as weak alias.
1589         * time/localtime.c (localtime_r): Define as weak alias.
1590         * time/time.h [__USE_REENTRANT] (gmtime_r, localtime_r): Declare them.
1592         * errno.h: Only define _ERRNO_H #ifndef __need_Emath.
1593         #undef __need_Emath after including errnos.h.
1594         [_ERRNO_H]: Protect decls with this.
1596 Sun Sep 17 08:22:12 1995  Paul Eggert  <eggert@twinsun.com>
1598         Fix mktime so that it does not write over localtime's returned value.
1599         * localtime.c (__localtime_r): New function, with extra arg
1600         specifying where to store result.
1601         (localtime): Use it.
1602         (_tmbuf): New var.
1603         * gmtime.c (__gmtime_r, gmtime, _tmbuf): Likewise.
1604         * mktime.c (__mktime_internal): Conversion function is now
1605         __localtime_r style, not localtime style.
1606         (mktime): Pass __localtime_r, not localtime.
1607         * timegm.c (timegm): Pass __gmtime_r, not gmtime.
1608         * offtime.c (__offtime): New arg specifying where to store result.
1609         * time.h (__mktime_internal, __offtime): Adjust decls accordingly.
1610         (__gmtime_r, __localtime_r): New decls.
1612         * time/localtime.c: <stddef.h>, <ctype.h>, <stdio.h>,
1613         <stdlib.h>, <string.h>: Remove includes.
1614         <errno.h>: Add include.
1616         * time/mktime.c, time/time.h, time/timegm.c (__mktime_internal):
1617         Renamed from _mktime_internal to avoid namespace pollution.
1619         * time/gmtime.c: Clear tm_isdst.
1621 Mon Sep 18 01:58:40 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1623         * misc/efgcvt_r.c (ecvt_r, fcvt_r): Last arg is size_t, not int.
1624         * stdlib/stdlib.h (ecvt_r, fcvt_r): Fix type of last arg: make it
1625         size_t.
1627         * sysdeps/mach/hurd/fpathconf.c: Call __io_pathconf instead of
1628         __file_pathconf.
1629         * sysdeps/mach/hurd/pathconf.c: Likewise.
1631         * Makefile (subdirs): Add sysvipc.
1633         * stdlib/srand48_r.c (srand48_r): Use UL suffix for huge constant.
1634         * stdlib/drand48-iter.c (__drand48_iterate): Likewise.
1636 Sun Sep 17 18:29:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1638         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): Call
1639          __file_set_size instead of __file_truncate.
1641         * features.h (__USE_REENTRANT): New macro.
1643         * sysdeps/mach/hurd/truncate.c: Call __file_set_size instead of
1644         __file_truncate.
1645         * sysdeps/mach/hurd/ftruncate.c: Likewise.
1647         * sysdeps/unix/sysv/linux/dl-machine.h: File removed.
1649 Sat Sep 16 17:47:19 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
1651         * elf/elf.h (AT_GID): Fix typo: Read -> Real.
1653         * misc/efgvt_r.c: New file.  Reentrant version of [efg]cvt functions.
1654         * misc/efgcvt.c: Rewrite to use reentrant functions.
1655         * misc/search.h: Many decls for hsearch functions.
1656         * misc/hsearch_r.c: New file.  Reentrant version of functions from
1657         hsearch family.
1658         * misc/hsearch.c, misc/tsearch.c: New files.
1659         * misc/Makefile (routines): Add efgcvt_r, hsearch_r, hsearch, tsearch.
1661         * posix/unistd.h (ttyname_r): Add prototype for new function.
1663         * stdlib/drand48_r.c, stdlib/erand48_r.c, stdlib/jrand48_r.c,
1664         stdlib/lrand48_r.c, stdlib/mrand48_r.c, stdlib/nrand48_r.c,
1665         stdlib/seed48_r.c, stdlib/srand48_r.c, stdlib/lcong48_r.c,
1666         stdlib/drand48-iter.c: New files implementing reentrant versions
1667         of functions from drand48 family.
1668         * stdlib/seed48.c, stdlib/drand48.c, stdlib/erand48.c,
1669         stdlib/jrand48.c, stdlib/lrand48.c, stdlib/mrand48.c,
1670         stdlib/nrand48.c, stdlib/srand48.c, stdlib/lcong48.c:
1671         Rewrite to use reentrant versions.
1672         * stdlib/a64l.c, stdlib/l64a.c: New files.  Implement a64l()
1673         and l64a() functions from SysV library.
1674         * stdlib/Makefile (routines): Add drand48_r, erand48_r, lrand48_r,
1675         nrand48_r, mrand48_r, jrand48_r, srand48_r, seed48_r, lcong48_r,
1676         drand48-iter, a64l, l64a.
1677         * stdlib/stdlib.h: Declare them.
1679         * stdlib/random_r.c: New file.  Reentrant version of functions
1680         from random family.
1681         * stdlib/stdlib.h: Declare them.
1682         * stdlib/random.c: Rewrite to use reentrant functions.
1684         * string/strerror_r.c: New file.  Reentrant version.
1685         * string/strerror.c: Change for new _strerror_internal form.
1686         * string/Makefile (routines): Add strerror_r.
1688         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Set default
1689         value of user_entry to `_start'.
1690         Close AT_ENTRY case with `break'.
1692         * sysdeps/generic/strstr.c: New and much faster implementation
1693         by Stephen R. van den Berg.
1695         * sysdeps/generic/_strerror.c: _strerror_internal now takes
1696         three argument and has and explicit buffer length.
1697         * sysdeps/mach/_strerror.c: Change for new interface with three
1698         arguments.
1699         * stdio/perror.c, stdio/vfprintf.c: Callers changed.
1701         * sysdeps/mach/hurd/ttyname_r.c: New file.  Reentrant version.
1702         * sysdeps/posix/ttyname_r.c: New file.  Reentrant version.
1703         * sysdeps/stub/ttyname_r: New file.  Define as dummy function.
1705         * sysdeps/posix/utimes.c: Include <utime.h> for prototype.
1706         (utimes): First parameter to utime must be file, not path.
1708         * sysdeps/posix/sysconf.c (__sysconf): Test for CLK_TCK in case
1709         _SC_CLK_TCK and return it when available.
1710         Test for STREAM_MAX in case _SC_STREAM_MAX and return it when
1711         available.
1712         Add case for _SC_2_LOCALEDEF which is now available.
1714         * posix/sys/types.h [__USE_SVID] (key_t): New type.
1715         * sysvipc/Makefile, sysvipc/ftok.c, sysvipc/sys/ipc.h,
1716         sysvipc/sys/msg.h, sysvipc/sys/sem.h, sysvipc/sys/shm.h,
1717         sysdeps/stub/sys/msq_buf.h, sysdeps/stub/sys/sem_buf.h,
1718         sysdeps/stub/sys/shm_buf.h, sysdeps/stub/sys/ipc_buf.h,
1719         sysdeps/stub/semctl.c, sysdeps/stub/semget.c, sysdeps/stub/semop.c,
1720         sysdeps/stub/shmat.c, sysdeps/stub/shmctl.c, sysdeps/stub/shmdt.c,
1721         sysdeps/stub/shmget.c, sysdeps/stub/msgctl.c, sysdeps/stub/msgget.c,
1722         sysdeps/stub/msgrcv.c, sysdeps/stub/msgsnd.c: New files.
1723         Add implementation of System V IPC.
1725 Fri Sep 15 21:34:28 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1727         * hurd/hurdsig.c: Include <hurd/crash.h> in place of <hurd/core.h>.
1728         (write_corefile): Call __crash_dump_task instead of __core_dump_task.
1729         Use envariable CRASHSERVER instead of CORESERVER.
1730         * hurd/Makefile (user-interfaces): Replace hurd/core with hurd/crash.
1732 Tue Sep 12 14:30:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1734         * misc/mntent.c: New file.
1735         * misc/mntent.h: New file.
1736         * misc/Makefile (headers): Added mntent.h.
1737         (routines): Added mntent.
1738         * misc/fstab.c: Rewritten using mntent functions.
1740 Mon Sep 11 14:00:14 1995  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
1742         * posix/glob.c (glob): Comment fix.
1744 Fri Sep  8 16:25:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1746         * libc-symbols.h [HAVE_ELF] (symbol_set_declare): Declare the
1747         symbols weak.
1749         * conf/portability.h (NEED_INETADDR, NEED_INETATON): Define to 1,
1750         not empty.
1752 Fri Sep  8 16:32:12 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
1754         * sysdeps/unix/sysv/linux/Implies,
1755         sysdeps/unix/sysv/linux/Makefile, sysdeps/unix/sysv/linux/Subdirs,
1756         sysdeps/unix/sysv/linux/accept.S, sysdeps/unix/sysv/linux/adjtime.c,
1757         sysdeps/unix/sysv/linux/adjtimex.S, sysdeps/unix/sysv/linux/bind.S,
1758         sysdeps/unix/sysv/linux/connect.S, sysdeps/unix/sysv/linux/direct.h,
1759         sysdeps/unix/sysv/linux/dl-machine.h, sysdeps/unix/sysv/linux/errnos.h,
1760         sysdeps/unix/sysv/linux/fork.S, sysdeps/unix/sysv/linux/gethostid.c,
1761         sysdeps/unix/sysv/linux/gethostname.C,
1762         sysdeps/unix/sysv/linux/getpeername.S,
1763         sysdeps/unix/sysv/linux/getpgid.S, sysdeps/unix/sysv/linux/getpgrp.S,
1764         sysdeps/unix/sysv/linux/getsockname.S,
1765         sysdeps/unix/sysv/linux/getsockopt.S, sysdeps/unix/sysv/linux/gtty.S,
1766         sysdeps/unix/sysv/linux/listen.S, sysdeps/unix/sysv/linux/local_lim.h,
1767         sysdeps/unix/sysv/linux/madvise.c, sysdeps/unix/sysv/linux/msgctl.c,
1768         sysdeps/unix/sysv/linux/msgget.c, sysdeps/unix/sysv/linux/msgrcv.c,
1769         sysdeps/unix/sysv/linux/msgsnd.c, sysdeps/unix/sysv/linux/pipe.S,
1770         sysdeps/unix/sysv/linux/poll.c, sysdeps/unix/sysv/linux/readv.c,
1771         sysdeps/unix/sysv/linux/recv.S, sysdeps/unix/sysv/linux/recvfrom.S,
1772         sysdeps/unix/sysv/linux/recvmsg.S, sysdeps/unix/sysv/linux/semctl.c,
1773         sysdeps/unix/sysv/linux/semget.c, sysdeps/unix/sysv/linux/semop.c,
1774         sysdeps/unix/sysv/linux/send.S, sysdeps/unix/sysv/linux/sendmsg.S,
1775         sysdeps/unix/sysv/linux/sendto.S, sysdeps/unix/sysv/linux/setegid.c,
1776         sysdeps/unix/sysv/linux/seteuid.c, sysdeps/unix/sysv/linux/sethostid.c,
1777         sysdeps/unix/sysv/linux/setpgid.c, sysdeps/unix/sysv/linux/setpgrp.c,
1778         sysdeps/unix/sysv/linux/setsid.S, sysdeps/unix/sysv/linux/setsockopt.S,
1779         sysdeps/unix/sysv/linux/settimeofday.S,
1780         sysdeps/unix/sysv/linux/shmat.c, sysdeps/unix/sysv/linux/shmctl.c,
1781         sysdeps/unix/sysv/linux/shmdt.c, sysdeps/unix/sysv/linux/shmget.c,
1782         sysdeps/unix/sysv/linux/shutdown.S,
1783         sysdeps/unix/sysv/linux/sigaction.S, sysdeps/unix/sysv/linux/signal.S,
1784         sysdeps/unix/sysv/linux/sigpending.S, sysdeps/unix/sysv/linux/sigset.h,
1785         sysdeps/unix/sysv/linux/sockaddrcom.h,
1786         sysdeps/unix/sysv/linux/socketpair.S, sysdeps/unix/sysv/linux/speed.c,
1787         sysdeps/unix/sysv/linux/statbuf.h, sysdeps/unix/sysv/linux/stty.S,
1788         sysdeps/unix/sysv/linux/syscall.h, sysdeps/unix/sysv/linux/sysconf.c,
1789         sysdeps/unix/sysv/linux/tcdrain.c, sysdeps/unix/sysv/linux/tcflow.c,
1790         sysdeps/unix/sysv/linux/tcflush.c, sysdeps/unix/sysv/linux/tcgetattr.c,
1791         sysdeps/unix/sysv/linux/tcsetattr.c,
1792         sysdeps/unix/sysv/linux/termbits.h, sysdeps/unix/sysv/linux/ualarm.c,
1793         sysdeps/unix/sysv/linux/ulimit.c, sysdeps/unix/sysv/linux/usleep.c,
1794         sysdeps/unix/sysv/linux/utsnamelen.h, sysdeps/unix/sysv/linux/vfork.c,
1795         sysdeps/unix/sysv/linux/wait.c, sysdeps/unix/sysv/linux/wait4.S,
1796         sysdeps/unix/sysv/linux/waitpid.c, sysdeps/unix/sysv/linux/writev.c:
1797         New Linux/ELF specific, architecture independent files.
1798         * sysdeps/unix/sysv/linux/i386/Dist,
1799         sysdeps/unix/sysv/linux/i386/Makefile,
1800         sysdeps/unix/sysv/linux/i386/brk.S,
1801         sysdeps/unix/sysv/linux/i386/fcntlbits.h,
1802         sysdeps/unix/sysv/linux/i386/fpu_control.c,
1803         sysdeps/unix/sysv/linux/i386/fpu_control.h,
1804         sysdeps/unix/sysv/linux/i386/fstat.S,
1805         sysdeps/unix/sysv/linux/i386/fxstat.S,
1806         sysdeps/unix/sysv/linux/i386/ieee_fpu.c,
1807         sysdeps/unix/sysv/linux/i386/init-first.S,
1808         sysdeps/unix/sysv/linux/i386/ipc.S,
1809         sysdeps/unix/sysv/linux/i386/lstat.S,
1810         sysdeps/unix/sysv/linux/i386/lxstat.S,
1811         sysdeps/unix/sysv/linux/i386/mknod.S,
1812         sysdeps/unix/sysv/linux/i386/mmap.S,
1813         sysdeps/unix/sysv/linux/i386/sbrk.S,
1814         sysdeps/unix/sysv/linux/i386/setfpucw.c,
1815         sysdeps/unix/sysv/linux/i386/signum.h,
1816         sysdeps/unix/sysv/linux/i386/socket.S,
1817         sysdeps/unix/sysv/linux/i386/stat.S,
1818         sysdeps/unix/sysv/linux/i386/syscall.S,
1819         sysdeps/unix/sysv/linux/i386/sysdep.S,
1820         sysdeps/unix/sysv/linux/i386/sysdep.h,
1821         sysdeps/unix/sysv/linux/i386/xmknod.S,
1822         sysdeps/unix/sysv/linux/i386/xstat.S:
1823         New Linux i386/ELF specific files.
1824         * sysdeps/unix/sysv/linux/sys/ipc_buf.h,
1825         sysdeps/unix/sysv/linux/sys/mman.h,
1826         sysdeps/unix/sysv/linux/sys/msq_buf.h,
1827         sysdeps/unix/sysv/linux/sys/sem_buf.h,
1828         sysdeps/unix/sysv/linux/sys/shm_buf.h,
1829         sysdeps/unix/sysv/linux/sys/socketcall.h,
1830         sysdeps/unix/sysv/linux/sys/timex.h:
1831         New Linux/ELF specific, architecture independent header files.
1832         * sysdeps/unix/sysv/sysv4/linux: Tree removed.
1834 Thu Sep  7 17:05:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1836         * stdlib/msort.c (msort_with_tmp): Fixed alignment test.  B1 and
1837         B2 are always congruent; just test that B1 is aligned.
1839 Wed Sep  6 19:41:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1841         * elf/dl-lookup.c (_dl_lookup_symbol): Test WEAK_VALUE.s rather
1842         than WEAK_VALUE.a to see if a weak value has been set.  A valid
1843         weak value may set WEAK_VALUE.a to 0.
1845 Fri Sep  1 16:16:12 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1847         * sysdeps/mach/hurd/i386/longjmp-ts.c: Use new array format for
1848         jmp_buf.
1850         * libc-symbols.h (link_warning): Take new first arg SYMBOL; ask
1851         for a warning on references to that specific symbol, not the
1852         entire containing object file.
1853         (stub_warning): Pass symbol name to link_warning.
1854         * stdio/gets.c: Pass function name in link_warning invocation.
1856         * hurd/intr-msg.c: Treat apparent EINTR return from msg trap like
1857         MACH_SEND_INTERRUPTED.  That indicates interrupt_operation was
1858         sent, but failed.
1860         * stdlib/msort.c: Include memcopy.h.
1861         (msort_with_tmp): If operating on aligned op_t words, use direct word
1862         fetches and stores.
1864         * sysdeps/i386/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC): Add
1865         missing backslash.
1867 Thu Aug 31 13:23:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1869         * sysdeps/unix/i386/brk.S [PIC]: Set __curbrk through the GOT.
1871         Rewrote i386 setjmp code in assembly, so as to avoid fighting
1872         with the compiler for the register values.
1873         * sysdeps/i386/setjmp.S, sysdeps/i386/__longjmp.S: New files.
1874         * sysdeps/i386/setjmp.c, sysdeps/i386/__longjmp.c: Files removed.
1875         * sysdeps/i386/jmp_buf.h [! _ASM] (__jmp_buf): Define as array of ints.
1876         [__USE_MISC || _ASM] (JB_*): New macros, for indices therein.
1877         (_JMPBUF_UNWINDS): Use JB_SP.
1879 Wed Aug 30 16:44:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1881         * sysdeps/mach/hurd/select.c: Deal with out of order replies
1882         during io_select request loop.
1883         Handle MACH_RCV_TIMED_OUT error from requests.
1884         * hurd/intr-msg.c: If the user passed the MACH_RCV_TIMEOUT option,
1885         distinguish MACH_RCV_TIMED_OUT from EINTR.
1887         * posix/glob.c (glob): Use realloc to extend strings for GLOB_MARK
1888         slash.
1889         (glob_in_dir): Don't allocate extra byte here.
1891         * sysdeps/i386/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC):
1892         Decrement the DT_RELSZ value for the skipped reloc.
1894 Tue Aug 29 12:35:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1896         * time/australasia: Updated data from ADO.
1898 Mon Aug 28 17:47:11 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1900         * dirent/dirent.h: Don't include <dirstream.h>.
1901         Instead, define DIR as typedef for (undefined) `struct __dirstream'.
1903 Fri Aug 25 12:12:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1905         * sysdeps/mach/hurd/dirstream.h: Define `struct __dirstream'
1906         instead of `DIR'.
1907         * sysdeps/unix/bsd/dirstream.h: Likewise.
1908         * sysdeps/stub/dirstream.h: Likewise.
1909         * sysdeps/unix/dirstream.h: Likewise.
1910         * sysdeps/mach/hurd/telldir.c: Include "dirstream.h".
1911         * sysdeps/mach/hurd/seekdir.c: Likewise.
1912         * sysdeps/mach/hurd/opendir.c: Likewise.
1913         * sysdeps/mach/hurd/closedir.c: Likewise.
1914         * sysdeps/mach/hurd/readdir.c: Likewise.
1915         * sysdeps/unix/telldir.c: Likewise.
1916         * sysdeps/unix/seekdir.c: Likewise.
1917         * sysdeps/unix/rewinddir.c: Likewise.
1918         * sysdeps/unix/readdir.c: Likewise.
1919         * sysdeps/unix/opendir.c: Likewise.
1920         * sysdeps/unix/closedir.c: Likewise.
1921         * sysdeps/unix/bsd/telldir.c: Likewise.
1922         * sysdeps/unix/bsd/readdir.c: Likewise.
1923         * dirent/Makefile (headers): Remove dirstream.h.
1924         (distribute): Put it here instead.
1926         * sysdeps/mach/hurd/mmap.c: Fix inverted test of MAP_FIXED.
1928         * stdio/vfscanf.c (number): Allow field width to inhibit first
1929         digit after base detection.
1931         * stdio/vfprintf.c (vfprintf: %s): Never search past the limit
1932         specified by the precision.
1934         * grp/grpread.c (__grpscan): New function.
1935         * grp/grp.h (__grpscan): Declare it.
1936         * grp/getgrgid.c: Use __grpscan.
1937         * grp/getgrnam.c: Likewise.
1938         * pwd/pwdread.c (__pwdscan): New function.
1939         * pwd/pwd.h (__pwdscan): Declare it.
1940         * pwd/getpwnam.c: Use __pwdscan.
1941         * pwd/getpwuid.c: Likewise.
1943 Thu Aug 24 16:29:40 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1945         * sysdeps/mach/hurd/mmap.c: Treat (FLAGS & MAP_TYPE) == 0 like
1946         MAP_FILE.
1948         * hurd/thread-cancel.c: Return EINTR when called on self.
1949         * sysdeps/i386/elf/start.S (data_start): Define as weak alias for
1950         __data_start.
1952 Tue Aug 22 16:49:12 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1954         * inet/netdb.h: Moved to resolv.
1955         * inet/Makefile (headers): Remove netdb.h.
1956         * resolv/Makefile (headers): Add netdb.h.
1957         * resolv/gethnamaddr.c, resolv/inet_addr.c, resolv/netdb.h,
1958         resolv/res_send.c: Updated from BIND-4.9.3-BETA26.
1960         * hurd/thread-cancel.c: If SS->cancel_hook is not null, call it before
1961         resuming the thread.
1962         * hurd/hurd/signal.h (struct hurd_sigstate): New member `cancel_hook'.
1964         * hurd/Makefile: Removed dep on hurd/signal.h for RPC stub objects.
1966 Mon Aug 21 16:37:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1968         * sysdeps/i386/dl-machine.h (elf_machine_rel): Grok R_386_NONE
1969         relocs, and do nothing.  Why the linker generates them we may
1970         never know.
1972 Thu Aug 17 16:18:38 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
1974         * sysdeps/mach/hurd/Makefile: Don't elide sunrpc and manual from
1975         `subdirs' variable.
1977         * sysdeps/mach/hurd/i386/intr-msg.h: New file.
1978         * hurd/intr-msg.c: Use INTR_MSG_TRAP macro from machine-dependent
1979         "intr-msg.h" for special syscall code, instead of i386-specific asm.
1980         * hurd/hurdsig.c: Use INTR_MSG_BACK_OUT macro from
1981         machine-dependent "intr-msg.h" before mutating thread state to
1982         skip RPC.
1984         * sysdeps/mach/hurd/i386/trampoline.c: If PC is inside
1985         _hurd_intr_rpc_mach_msg special syscall code, use real SP saved in
1986         %ecx.
1988         * Makeconfig (link-libc): New variable; use shared library if
1989         available.
1990         (+link): Use it.
1992         * sysdeps/mach/hurd/fork.c (_hurd_fork_locks): Variable removed.
1993         Instead, declare with `symbol_set_declare'.
1994         (fork): Use symbol_set_* macros for _hurd_fork_locks.
1995         Use SS->thread instead of __mach_thread_self ().  Suspend all
1996         other threads during task_create and port copying.
1998 Wed Aug 16 17:04:26 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2000         * hurd/intr-msg.c: Fixed calculation of syscall %esp.
2002 Tue Aug 15 12:26:18 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2004         * hurd/hurdsig.c (_hurdsig_abort_rpcs): Remove `static'.
2006         * hurd/Makefile (sig): Add intr-msg.
2008 Mon Aug 14 16:51:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2010         * hurd/thread-cancel.c: New file.
2011         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): In
2012         rpc_wait case, frob mach_msg args to set timeout on receive.
2013         (_hurdsig_rcv_interrupted_p): Function removed.
2014         * sysdeps/mach/hurd/alpha/trampoline.c: Likewise.
2015         * sysdeps/mach/hurd/hppa/trampoline.c: Likewise.
2016         * sysdeps/mach/hurd/mips/trampoline.c: Likewise.
2017         * hurd/intr-msg.c: New file.
2018         * hurd/hurd/signal.h (struct hurd_sigstate): New member `cancel'.
2019         (_hurdsig_rcv_interrupted_p): Declaration removed.
2020         (HURD_EINTR_RPC): Macro removed.
2021         (_hurd_longjmp_thread_state, _hurd_interrupted_rpc_timeout): Declare
2022         these.
2023         * hurd/intr-rpc.h: New file.
2024         * hurd/intr-rpc.defs: Just import intr-rpc.h.
2025         * hurd/hurdsig.c (_hurd_interrupted_rpc_timeout): New variable.
2026         (interrupted_reply_port_location): Take new flag arg; only catch
2027         faults if it's set.
2028         (abort_rpcs): Rename to _hurdsig_abort_rpcs; take same new flag arg.
2029         No longer use _hurdsig_rcv_interrupted_p; instead compare PC to
2030         &_hurd_intr_rpc_msg_in_trap.  If before it, mutate state to simulate
2031         MACH_SEND_INTERRUPTED return; on it, interrupt the operation.  All
2032         callers changed.
2033         * hurd/hurd.h (hurd_thread_cancel, hurd_check_cancel): Declare these.
2034         * hurd/Makefile (distribute): Remove intr-rpc.awk.
2035         (sig): Add thread-cancel.
2036         (transform-user-stub, transform-user-stub-output): Variables removed.
2037         * sysdeps/mach/hurd/dl-sysdep.c: Change all RPCs from
2038         `__hurd_intr_rpc_*' to `__*'.
2039         (_hurd_intr_rpc_mach_msg): New function.
2040         (_hurd_thread_sigstate): Function removed.
2041         * sysdeps/mach/hurd/ioctl.c: Use _hurd_intr_rpc_mach_msg function,
2042         instead of __mach_msg inside HURD_EINTR_RPC macro.
2044         * sysdeps/generic/morecore.c [__GNU_LIBRARY__]: Declare `__sbrk'
2045         to take ptrdiff_t arg.
2047         * sysdeps/mach/hurd/fork.c: Remove _hurd_longjmp_thread_state decl.
2049         * sysdeps/mach/hurd/kill.c (kill_pid): Don't make `inline'.
2051         * libc-symbols.h [GCC >= 2.7] (strong_alias, weak_symbol,
2052         weak_alias): Use `extern' storage class.
2054 Wed Aug  9 14:25:35 1995  Miles Bader  <miles@geech.gnu.ai.mit.edu>
2056         * sysdeps/mach/hurd/setuid.c (__setuid): Switch the port-type and
2057         port-count parameters to __auth_makeauth.
2058         * sysdeps/mach/hurd/setgid.c (__setgid): Ditto.
2060 Tue Aug  8 12:22:59 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2062         * hurd/sigunwind.c: Remove _hurd_longjmp_thread_state decl.
2064         * inet/netinet/tcp.h: New file, incorporated from 4.4BSD-Lite.
2066 Tue Aug  8 12:06:04 1995  Michael I. Bushnell, p/BSG  <mib@duality.gnu.ai.mit.edu>
2068         * inet/netinet/in.h (IP_MULTICAST_TTL, IP_MULTICAST_LOOP,
2069         IP_MULTICAST_IP, IP_ADD_MEMBERSHIP, IP_DROP_MEMBERSHIP): New IP
2070         layer socket options.
2071         (IPPROTO_GGP): Delete obsolote protocol.
2072         (IPPROTO_IGMP): Add new protocol (with same value [2] as old GGP).
2073         (struct ip_mreq): New type.
2075 Mon Aug  7 14:04:36 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2077         * stdlib/strtol.c: Use #ifdef, not #if, for HAVE_LIMITS_H.
2079         * posix/glob.c (glob_in_dir): Allocate GLOB_MARK byte in case when
2080         (NFOUND == 0 && (FLAGS & GLOB_NOCHECK)).
2082         * sysdeps/generic/sysd-stdio.c (__stdio_reopen): Return failure
2083         when __stdio_open fails with a code other than ENFILE or EMFILE.
2085 Fri Aug  4 16:01:59 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2087         * Makefile (headers): Added gnu-versions.h.
2089 Thu Aug  3 14:41:11 1995  Michael I. Bushnell  <mib@duality.gnu.ai.mit.edu>
2091         * inet/netinet/in.h (IN_CLASSD, IN_EXPERIMENTAL, IN_BADCLASS): Use
2092         equality, not assignment, to test bitfields.
2094 Sat Jul 29 10:41:06 1995  Miles Bader  <miles@churchy.gnu.ai.mit.edu>
2096         * sysdeps/mach/hurd/sendto.c (sendto): Use the ifsock protocol to
2097         resolve AF_LOCAL addresses.
2099         * sysdeps/mach/hurd/accept.c (accept): If the protocol family
2100         can't tell us what an address means, just return a zero-length
2101         buffer instead.
2102         * sysdeps/mach/hurd/recvfrom.c (recvfrom): Ditto.
2104 Fri Jul 28 15:29:11 1995  Miles Bader  <miles@churchy.gnu.ai.mit.edu>
2106         * sysdeps/mach/hurd/bind.c (bind): Don't use
2107         file_invoke_translator, as it doesn't work.  Instead just lookup
2108         the translated node again, and hope we're not hit by any race
2109         conditions.
2111 Wed Jul 26 02:00:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2113         * csu/Makefile [$(elf)=yes] (have-initfini): Set to yes.
2114         [$(have-initfini)=yes]: Test this rather than $(elf) for crtstuff.
2115         [start-installed-name-rule]: If this is defined, elide rule for
2116         $(objpfx)$(start-installed-name).
2117         * csu/initfini.c (SECTION): New macro, different definitions for
2118         #ifdef HAVE_ELF and not.
2119         (_init, _fini): Use that macro.
2120         * sysdeps/unix/sysv/sco3.2.4/Makefile [$(subdir)=csu]
2121         (start-installed-rule, start-installed-name-rule): New variables;
2122         specify crt1.o, created by our own rule.
2123         ($(objpfx)crt1.o): New rule.
2124         * configure.in: Require autoconf 2.4.2 or later.  Change all
2125         AC_CACHE_VAL uses to use new AC_CACHE_CHECK macro instead;
2126         prettify some messages.
2127         [$elf!=yes] (libc_cv_have_initfini): New test for `.init' and `.fini'
2128         sections.
2129         * munch-tmpl.c [HAVE_INITFINI]: Call _init and atexit (_fini) in
2130         this case rather than #ifdef HAVE_ELF.
2131         * config.h.in (HAVE_INITFINI): New macro.
2132         * config.make.in (have-initfini): New variable, set by configure.
2134         * stdio/vfscanf.c (conv_error): Simplify expression to avoid
2135         "value computed is not used" warning.
2137         * Makeconfig (+gccwarn): Removed -Wconversion.
2139         * csu/initfini.c (GLOBAL): Macro removed.
2140         (_init, _fini): Always define globally.
2141         * csu/Makefile (crtstuff, initfini): Don't make crt[in]_s.o.
2143         * asia, backward, europe, leapseconds, southamerica: New data from
2144         ADO's 95e.
2146         * inet/Makefile (routines): Removed inet_addr.
2147         * inet/inet_addr.c: Moved to resolv/ subdirectory.
2148         * resolv/Makefile (routines): Added inet_addr.
2149         * resolv/inet_addr.c: Incorporated from BIND 4.9.3-BETA24 release.
2150         * resolv/gethnamaddr.c: Likewise.
2151         * resolv/getnetbyaddr.c: Likewise.
2152         * resolv/getnetbyname.c: Likewise.
2153         * resolv/getnetent.c: Likewise.
2154         * resolv/getnetnamadr.c: Likewise.
2155         * resolv/herror.c: Likewise.
2156         * resolv/nsap_addr.c: Likewise.
2157         * resolv/res_comp.c: Likewise.
2158         * resolv/res_debug.c: Likewise.
2159         * resolv/res_init.c: Likewise.
2160         * resolv/res_mkquery.c: Likewise.
2161         * resolv/res_query.c: Likewise.
2162         * resolv/res_send.c: Likewise.
2163         * resolv/resolv.h: Likewise.
2164         * resolv/sethostent.c: Likewise.
2165         * resolv/arpa/nameser.h: Likewise.
2166         * inet/netdb.h: Incorporated from BIND 4.9.3-BETA24 release.
2167         [__GNU_LIBRARY__]: Include <rpc/netdb.h> instead of repeating
2168         its declarations (and doing so only #ifdef sun!).
2169         * conf/portability.h (NEED_INETADDR, NEED_INETATON): New macros.
2171         * posix/sys/types.h [__USE_BSD] (__BIT_TYPES_DEFINED__): New macro.
2172         [__USE_BSD] [__GNUC__] (int64_t, u_int64_t, register_t): New typedefs.
2174         * malloc/memalign.c: Allocate (SIZE + ALIGNMENT - 1) and then trim
2175         if possible.
2177         * mach/shortcut.awk: Emit decls for RPC.
2179         * libc-symbols.h [GCC >= 2.7 && !ASSEMBLER] (weak_symbol,
2180         weak_alias, strong_alias): Define using GCC __attribute__ syntax.
2182         * Makerules ($(installed-libcs)): Depend on `lib' (only).
2184 Tue Jul 25 09:14:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2186         * sysdeps/mach/hurd/pathconf.c: Declare VALUE as int, not long int.
2188         * stdlib/strtol.c [_LIBC]: Define STDC_HEADERS.
2190         * sysdeps/unix/sysv/ftime.S: New file.
2192         * locale/locfile-parse.c (categories_write): Cast "" to char *.
2194         * io/fcntl.h [__OPTIMIZE__] (creat): Macro removed.
2196         * time/strftime.c: Use year modulo 100 for %y.
2198         * time/sys/timeb.h: Add __BEGIN_DECLS and __END_DECLS.
2200         * sysdeps/unix/snarf-ioctls (snarfexclude): Use two sed's instead
2201         of one, to work around bug in sunos4.1.2 sed.
2203         * stdio/vfprintf.c (vfprintf): For %s with precision spec, use
2204         memchr instead of strlen to limit search for NUL by precision.
2206 Mon Jul 24 03:13:16 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2208         * sysdeps/posix/pathconf.c: New file.
2210 Sat Jul 22 20:53:18 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2212         * sysdeps/unix/i386/sysdep.h (JUMPTARGET): Use ## to avoid space
2213         before @PLT.
2214         * sysdeps/mach/i386/sysdep.h (JUMPTARGET): New macro.
2215         * sysdeps/i386/bsd-_setjmp.S: Use JUMPTARGET macro in jmp insn.
2216         * sysdeps/i386/bsd-setjmp.S: Likewise.
2218 Sat Jul 22 19:58:54 1995  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>
2220         * inet/Makefile (routines): Added `ruserpass'.
2221         * inet/ruserpass.c: New file, from BSD Net-2 sources for the FTP
2222         client.  Modified to remove the fourth arg AACCT.  Do nothing for
2223         the `account' and `macdef' keywords.  Other incidental changes
2224         because we are not in the FTP source tree.
2226 Sat Jul 22 01:56:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2228         * sysdeps/stub/init-posix.c: Removed stub warning.
2230         * Makefile (autoconf-it): Make it executable and unwritable.
2232         * configure.in (sysnames): Under --enable-debug-configure, spew
2233         potential sysnames.
2235         * sysdeps/unix/i386/sysdep.h (JUMPTARGET): New macro; use name@PLT
2236         #ifdef PIC.
2237         (PSEUDO): Use JUMPTARGET(syscall_error) in jump insn.
2238         * sysdeps/unix/i386/syscall.S: Use JUMPTARGET(syscall_error) in
2239         jump insn.
2241         * sysdeps/unix/sysv/sysv4/linux/i386/sysdep.h: Rewritten.
2242         * sysdeps/unix/sysv/sysv4/linux/i386/syscall.S: New file.
2243         * sysdeps/unix/sysv/sysv4/linux/i386/socket.S: Include
2244         <sys/socketcall.h>.  Save %ebx in call-clobbered %edx instead of
2245         stack.  Use JUMPTARGET(syscall_error) in jump insn.
2247         * Makeconfig (+gccwarn): Add -Wbad-function-cast -Wconversion.
2249         * sysdeps/unix/i386/sysdep.h (ENTRY): Use ASM_GLOBAL_DIRECTIVE and
2250         ASM_TYPE_DIRECTIVE.
2251         (ASM_TYPE_DIRECTIVE): New macro; defined using `.type' #ifdef ELF.
2253         * sysdeps/unix/sysv/sysv4/linux/i386/sysdep.S (__syscall_error):
2254         Rewritten, #include'ing unix/i386/sysdep.S for most of the code.
2255         * sysdeps/unix/i386/sysdep.S [PIC]: Store into `errno' through the GOT.
2257         * configure.in (os=linux*): Use unix/sysv/sysv4 for $base_os,
2258         instead of unix/sysv.
2259         * sysdeps/unix/sysv/linux/{accept,connect,getsockname,rename,
2260         socketpair,waitpid,bind,getpeername,listen,setsid,wait4}.S: Moved
2261         to new directory sysdeps/unix/sysv/sysv4/linux.
2262         * sysdeps/unix/sysv/linux: Directory removed.
2263         * sysdeps/unix/sysv/i386/linux/{socket.S,sysdep.h,sysdep.S}: Moved
2264         to new directory sysdeps/unix/sysv/sysv4/linux/i386.
2265         * sysdeps/unix/sysv/linux/i386: Directory removed.
2267         Fixes to help Linux, inspired by drepper's work:
2268         * sysdeps/posix/utimes.c: New file.
2269         * sysdeps/generic/getdomain.c: New file.
2270         * sysdeps/i386/init-first.c: Removed gratuitous #include <hurd.h>.
2271         * sysdeps/generic/dl-sysdep.c: Include <unistd.h> and declare
2272         externals _dl_argc, _dl_argc, and _environ.
2274 Fri Jul 21 12:57:29 1995  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>
2276         * sysdeps/mach/hurd/socket.c (socket): Consider MIG_BAD_ID and
2277         EOPNOTSUPP as indications that the server has died.
2278         * sysdeps/mach/hurd/pipe.c (__pipe): Likewise.
2279         * sysdeps/mach/hurd/socketpair.c (socketpair): Likewise.
2281 Mon Jul 17 08:45:40 1995  Jim Meyering  (meyering@comco.com)
2283         * strtol.c: Portability changes from Uli Drepper.
2284         [!STDC_HEADERS && !defined(NULL)]: Define NULL.
2286 Mon Jul 10 05:39:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2288         * sysdeps/mach/hurd/i386/init-first.c (init): Take just one arg,
2289         DATA for the entry SP; DATA[-1] is always the return address
2290         location.  In both cthreads and non-cthreads cases, use asm to
2291         force parameters into %eax and %ecx before return, and mutate
2292         DATA[-1] to return to specific asm code to set up the user from
2293         %eax and %ecx.
2294         [PIC] (_init): Caller changed.
2295         (__libc_init_first) [! PIC] (doinit): Use asm to effect call to init
2296         with SP unwound to argument data ptr.
2298 Thu Jul  6 14:28:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2300         * sysdeps/mach/hurd/dl-sysdep.c (fmh): Fixed this kludge to work
2301         when 0x08000000 and up are not mapped.
2303         * Makerules (stamp$o-$(subdir) rule): Remove the timestamp file
2304         before touching it.
2305         (lib%.so): Use -Wl to get -soname to ld.
2307         * elf/dlsym.c: Pass final arg to _dl_lookup_symbol.
2309         * elf/Makefile (libdl.so): Pass $(LDFLAGS.so).
2311 Tue Jun 20 02:18:19 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2313         * Makerules (lib%.so: lib%_pic.a): Pass -soname switch giving the
2314         library's name including $(libprefix) and major version number.
2316         * locale/locale-ctype.c (allocate_arrays): Use xmalloc and bzero
2317         in place of xcalloc.
2319         * Makeconfig (prefix, exec_prefix, libprefix): Instead of
2320         `ifndef', use the $(origin) function to only set these if they are
2321         undefined, and not if they are defined to empty.
2323         * gnu-versions.h: New file.
2324         * features.h (__GNU_LIBRARY__): Increase value to 5.
2326 Wed Jun 14 03:45:24 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2328         * stdio/stdio.h (__validfp): Use ({...}) rather than a comma
2329         expression, to avoid gcc's "value computed is not used" warning.
2331         * libc-symbols.h (_elf_set_element): Give the set-element variable
2332         an `unused' attribute.
2334         * hurd/hurd/threadvar.h (__hurd_threadvar_location): Declare with
2335         __attribute__ ((__const__)).
2336         * hurd/hurd/signal.h (_hurd_self_sigstate): Likewise.
2338         * hurd/hurd/userlink.h (_hurd_userlink_link): Properly set
2339         LINK->resource.next->resource.prevp when appropriate, not
2340         LINK->resource.next->thread.prevp!!!
2342 Tue Jun 13 15:45:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2344         * configure.in (libc_cv_asm_set_directive): Make sure that the
2345         `.set' directive really worked by linking against a reference to
2346         the alias.
2348         * sysdeps/stub/init-first.c: Don't include <hurd.h>.
2349         [PIC] (soinit): Renamed to (global) _init.
2351 Mon Jun 12 13:15:45 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2353         * malloc/Makefile (gmalloc-routines): Remove valloc.
2354         (dist-routines): Add it here.
2356         * malloc/malloc.h [_MALLOC_INTERNAL] [emacs] (valloc): #define to
2357         emacs_loser_valloc to inhibit valloc declaration below.
2359         * Makerules (lib%.so: lib%_pic.a): Moved this rule to after
2360         installation rules.
2362         * sysdeps/mach/sysdep.h [HAVE_ELF] (ENTRY): Redefine this macro so
2363         it uses the `.type' directive, which is necessary for shared
2364         libraries to work properly.
2366 Thu Jun  8 02:50:26 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2368         * elf/dl-load.c (_dl_map_object): Add MAP_INHERIT flag in mmap
2369         from zero fill.
2371         * elf/dl-lookup.c (_dl_lookup_symbol): Take new flag arg NOSELF;
2372         if nonzero, don't let *REF satisfy the reference itself.
2373         * elf/link.h (_dl_lookup_symbol): Add new arg NOSELF in decl.
2374         * sysdeps/i386/dl-runtime.c (_dl_runtime_resolve): Pass new arg to
2375         _dl_lookup_symbol.
2376         * elf/do-rel.h (elf_dynamic_do_rel): Pass new second arg of
2377         R->r_offset to RESOLVE callback.
2378         * elf/dl-reloc.c (_dl_relocate_object: resolve): Don't let *REF
2379         satisfy the reference itself if its value equals the reloc's
2380         offset.
2382         * elf/rtld.c (dl_main): Write a newline in fatal msg.
2384         * Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS.so).
2386         * elf/rtld.c [! NDEBUG] (__assert_perror_fail): New function.
2388         * hurd/hurdstartup.c (_hurd_startup): Fancier kludge to guess phdr
2389         and user entry point addresses.
2391         * elf/dl-load.c (open_path): Don't do strlen on DIRPATH if it's null.
2392         (_dl_map_object): DT_RPATH value is relative to DT_STRTAB value.
2394         * Makerules (install-lib.so): Don't include libc.so.
2395         [$(build-shared)=yes] (install): Depend on the installed libc.so file.
2396         [$(build-shared)=yes] (install-no-libc.a): Make this, rather than
2397         install, depend on the installed $(install-lib.so) files.
2398         [$(build-shared)=yes] (install-lib.so): Append libc.so after that rule.
2400         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Add kludge to
2401         allocate high addresses to avoid random mappings appearing there.
2402         (mmap): Comment out mask; always pass zero.
2404 Tue Jun  6 13:34:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2406         * sysdeps/i386/dl-machine.h (ELF_MACHINE_USER_ADDRESS_MASK): New macro.
2407         * sysdeps/mach/hurd/dl-sysdep.c (mmap): Use it as mask in vm_map call.
2409         * elf/dl-error.c (_dl_catch_error): Clear *ERRSTRING and *OBJNAME
2410         when successful.
2412         * sysdeps/mach/hurd/dl-sysdep.c (threadvars): New static variable.
2413         (__hurd_threadvar_max, __hurd_threadvar_stack_offset): Define these
2414         variables, using the `threadvars' buffer.
2416         * elf/dl-reloc.c: Don't dereference L->l_prev when it's null.
2417         * sysdeps/i386/dl-runtime.c: Likewise.
2419         * elf/rtld.c (dl_main): Add missing NULL terminating argument in
2420         _dl_sysdep_fatal call.
2421         (__assert_fail): Likewise.
2423         * locale/Makefile (localedef-modules): Renamed ctype to
2424         locale-ctype so as not to conflict with the object file for
2425         ctype/ctype.c in the build directory.
2427 Mon Jun  5 04:02:26 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2429         * elf/elf.h (ELFMAG): Use \177 instead of \x7f.  It seems GCC
2430         insists on seeing the following E as part of hex 7FE, and
2431         complaining that is wider than a byte.
2433 Sun Jun  4 22:14:11 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2435         * hurd/Makefile (sig): Added thread-self.
2436         * hurd/hurd.h: Declare hurd_thread_self.
2437         * hurd/thread-self.c: New file.
2439 Thu Jun  1 12:17:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2441         * elf/rtld.c: Initialize RTLD_MAP.l_type.
2442         * elf/dl-reloc.c (_dl_relocate_object): Clear LAZY if relocating
2443         the dynamic linker itself.
2444         * sysdeps/i386/dl-machine.h (elf_machine_rel): If MAP->l_type is
2445         lt_interpreter, first undo relocation done during bootstrapping.
2447 Tue May 30 15:52:32 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2449         * mach/Makefile (server-interfaces): Removed notify and
2450         device_reply.  For shlibs with eager binding, libmachuser.so must
2451         not refer to any functions not defined in libc.
2453 Sat May 27 16:23:22 1995  Jim Meyering  (meyering@comco.com)
2455         * sysdeps/generic/memchr.c: Cast RHS to const unsigned char *
2456         to avoid error from Irix-4.0.5's C compiler.  From Kaveh Ghazi.
2458 Fri May 26 13:00:08 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2460         * hurd/hurdsig.c (_hurd_internal_post_signal): Don't loop to check
2461         pending signals if the thread is in a critical section.  It will
2462         send us a msg when it finishes.
2464         * sysdeps/mach/hurd/pathconf.c: New file.
2465         * sysdeps/mach/hurd/fpathconf.c: New file.
2467         * sysdeps/mach/hurd/sigaction.c: Only notify the proc server for
2468         SIGCHLD when the SA_NOCLDSTOP bit actually changes.
2470 Sun May 21 05:05:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2472         * elf/Makefile (ld.so): Use -nostartfiles in addition to
2473         -nostdlib.
2475 Sun May 21 02:01:29 1995  Jim Meyering  (meyering@comco.com)
2477         * sysdeps/generic/memchr.c: Don't include <string.h> at all.
2478         HPUX-9.01 and IRIX-4.0.5 vendor C compilers get conflicting dcls for
2479         memchr unless one manually arranges for them to define __STDC__.
2481 Fri May 19 17:16:46 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2483         * sysdeps/mach/hurd/i386/init-first.c: In cthreads case, handle
2484         args on stack from kernel.
2486         * posix/Makefile, sysdeps/alpha/Makefile,
2487         * sysdeps/mach/hurd/Makefile, sysdeps/sparc/Makefile, Makefile,
2488         * Makerules, Make-dist: Fix "cvs commit" cmds in rules to not fail
2489         in the absence of CVS dirs.
2491         * hurd/hurdstartup.c: Don't call __mach_init.  Grok args from the
2492         kernel on the stack properly.
2494         * set-init.c: Never call _init/_fini; just run __libc_subinit.
2496         * Makerules (LDFLAGS-c.so): Add -nostartfiles.
2497         * mach/Machrules (LDFLAGS-$(interface.so)): Likewise.
2499         * configure.in: Move defaulting of --with-elf and --with-gnu-*
2500         based on host os outside the AC_CACHE_VAL for the sysdirs
2501         calculation.
2503         * Makeconfig (localedir, nlsdir): New variables.
2505         * values.h: New file.
2506         * Makefile (headers): Add values.h.
2508         * locale/Makefile (distribute): Add error.h.
2509         * locale/localedef.c: Include "error.h".
2510         (main): Use error_message_count instead of warning_cntr.
2512 Wed May 17 16:50:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2514         Merged 1003.2 locale and localedef programs by Ulrich Drepper.
2515         * locale/charmap.c: New file.
2516         * locale/collate.c: New file.
2517         * locale/config.h: New file.
2518         * locale/ctype.c: New file.
2519         * locale/ctypedump.c: New file.
2520         * locale/hash.c: New file.
2521         * locale/hash.h: New file.
2522         * locale/iso-4217.def: New file.
2523         * locale/keyword.gperf: New file.
2524         * locale/keyword.h: New file.
2525         * locale/libintl.h: New file.
2526         * locale/locale.c: New file.
2527         * locale/localedef.c: New file.
2528         * locale/localedef.h: New file.
2529         * locale/locfile-lex.c: New file.
2530         * locale/locfile-parse.c: New file.
2531         * locale/messages.c: New file.
2532         * locale/monetary.c: New file.
2533         * locale/numeric.c: New file.
2534         * locale/token.h: New file.
2536         * posix/regex.c, posix/regex.h: New files, incorporated from GNU regex.
2537         * posix/Makefile (headers): Add regex.h.
2538         (routines): Add regex.
2539         (gpl2lgpl): Add regex.c and regex.h.
2541 Tue May 16 17:35:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2543         * locale/loadlocale.c: Expect macro LOCALE_PATH to be defined,
2544         instead of hard-coding "/share/locale".
2546 Sat May 13 02:16:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2548         * configure.in (os=gnu*): Always set elf=yes, not just for os=gnu*elf*.
2550 Fri May 12 15:31:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2552         * elf/elf.h (ELFMAG, SELFMAG): New macros.
2554 Fri May 12 11:24:53 1995  Michael I Bushnell  <mib@duality.gnu.ai.mit.edu>
2556         * hurd/alloc-fd.c (_hurd_alloc_fd): Don't reduce FIRST_FD in
2557         the case where it starts out less than _hurd_dtablesize.
2559 Thu May 11 20:51:05 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2561         * hurd/alloc-fd.c (_hurd_alloc_fd): When expanding the dtable,
2562         make sure the new size exceeds FIRST_FD.
2564 Wed May 10 21:00:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2566         * sysdeps/mach/i386/sysdep.h (RETURN_TO): New macro.
2568 Tue May  9 01:26:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2570         * Makerules (install-lib.so): Add %.so for each %_pic.a.
2572         * sysdeps/i386/elf/start.S (__data_start): Define this symbol as
2573         the first thing in .data.
2575         * sysdeps/mach/_strerror.c (_strerror_internal): Eschew sprintf.
2577         * hurd/hurdstartup.h: New file.
2579         * sysdeps/i386/elf/start.S: Give two operands to `testl' when they
2580         are the same.  Use `jz' instead of `jeq'.
2582         * Makeconfig (config.make): Depend on config.status, and run it to
2583         update.
2584         (config.status): New target; depend on configure.
2585         If target (config.status) exists, run it with --recheck to update;
2586         if not, give error msg saying to run confiugre by hand.
2587         * Makerules [$(sysd-Makefile-sysdirs) != $(sysdirs)]
2588         (sysd-Makefile-force): Set this variable to FORCE in this case, to
2589         force a rebuild of sysd-Makefile.
2590         (sysd-Makefile): Depend on $(sysd-Makefile-force).
2591         Write into the file sysd-Makefile-sysdirs:=$(sysdirs).
2592         [$(sysd-rules-sysdirs) != $(sysdirs)] (sysd-rules-force): Set this
2593         variable to FORCE in this case, to force a rebuild of sysd-rules.
2594         (sysd-rules): Depend on $(sysd-rules-force).
2595         Write into the file sysd-rules-sysdirs:=$(sysdirs).
2597         * Makerules (LDFLAGS-c.so): Change ld option -interp to
2598         -dynamic-linker.
2600         * Makerules (do-install-program): New canned sequence.
2601         (install-bin, install-sbin): Use it.
2602         (install for lib*.so): Use it instead of $(do-install).
2603         Fix .so installation rules to handle lib*.so and *.so, deal with
2604         $(libprefix) right, and install *.so as *.so$($(*.so)-version);
2605         i.e. "libc.so-version = .1".
2607 Mon May  8 05:10:25 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2609         * elf/do-rel.h: New file, split out of dynamic-link.h.
2610         * elf/Makefile (distribute): Add do-rel.h.
2612 Sat May  6 11:06:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2614         * Makeconfig (+gccwarn): Add -Winline.
2616         * hurd/hurdsig.c (_hurd_internal_post_signal): If SS->context is
2617         set, avoid abort_rpcs, and use reply and intr ports saved in
2618         SS->context.
2619         * sysdeps/mach/hurd/i386/trampoline.c: Don't set SS->intr_port
2620         from SS->context.  Don't clear SS->context.
2621         * sysdeps/mach/hurd/i386/sigreturn.c: Don't set SS->intr_port when
2622         setting SS->context.  If msg_sig_post returns, re-lock and clear
2623         SS->context.
2625 Fri May  5 10:37:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2627         * mach/Makefile (errsystems.c): Comment out generation rule.
2629         * sysdeps/mach/_strerror.c: Consider a system unknown if its
2630         bad_sub member is null.
2632         * mach/mig-alloc.c: Add weak alias to non-__ name.
2634 Wed May  3 11:56:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2636         * sysdeps/mach/hurd/dup2.c: Fixed broken test in last change.
2638 Tue May  2 01:52:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2640         * elf/dl-error.c (_dl_catch_error): Actually call the OPERATE
2641         function.  Duh.
2643         * hurd/Makefile (distribute): Added hurdstartup.h.
2644         * hurd/hurd.h: Remove _hurd_startup decl.
2646         * hurd/hurd/ioctl.h (_HURD_HANDLE_IOCTLS): Use __attribute__
2647         ((__unused__)) instead of gratuitous self reference.
2649         * sysdeps/mach/hurd/dup2.c: Call _hurd_alloc_fd to expand the
2650         table if FD2 doesn't fit.
2652         * sysdeps/mach/hurd/getdtsz.c: Return the RLIM_NOFILE soft limit,
2653         not the current table size.
2655         * sysdeps/mach/i386/sysdep.h (SNARF_ARGS, CALL_WITH_SP): Rewritten.
2657         Implemented runtime dynamic linker to support ELF shared libraries.
2658         * elf/Makefile: Added rules to make ld.so and libdl.
2659         * elf/dl-error.c: New file.
2660         * elf/dl-fini.c: New file.
2661         * elf/dl-init.c: New file.
2662         * elf/dl-load.c: New file.
2663         * elf/dl-lookup.c: New file.
2664         * elf/dl-object.c: New file.
2665         * elf/dl-reloc.c: New file.
2666         * elf/dlclose.c: New file.
2667         * elf/dlerror.c: New file.
2668         * elf/dlopen.c: New file.
2669         * elf/dlsym.c: New file.
2670         * elf/dynamic-link.h: New file.
2671         * elf/link.h: New file.
2672         * elf/rtld.c: New file.
2673         * sysdeps/i386/dl-machine.h: New file.
2674         * sysdeps/stub/dl-machine.h: New file.
2675         * sysdeps/i386/dl-runtime.c: New file.
2676         * sysdeps/stub/dl-runtime.c: New file.
2677         * sysdeps/i386/elf/start.S: New file.
2678         * sysdeps/generic/dl-sysdep.c: New file.
2679         * sysdeps/mach/hurd/dl-sysdep.c: New file.
2680         * sysdeps/mach/hurd/i386/init-first.c: New file.
2681         * sysdeps/i386/init-first.c: New file.
2682         * sysdeps/stub/init-first.c: New file.
2684 Mon May  1 18:48:30 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2686         * Makerules (LDFLAGS-c.so): Add -interp and -e switches to make
2687         libc.so runnable.
2688         * version.c (__libc_print_version): Add "et al" and missing NL to
2689         author credit.
2691 Sat Apr 29 15:46:57 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2693         * posix/glob.c (S_ISDIR): Define if undefined.
2695 Thu Apr 27 01:24:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2697         * configure.in: Unless --without-fp, prepend */fpu before each
2698         machine dir in $mach; don't prepend FPU dirs at end.  If
2699         --with-elf, prepend MACHINE/elf directories at end; don't insert
2700         them into $mach.
2702         * Makerules (dist): Filter out *.[cSs] from $(distribute) in deps.
2704         * sysdeps/stub/clock.c: Added stub warning.
2705         * sysdeps/stub/dirfd.c: Likewise.
2706         * sysdeps/stub/exc2signal.c: Likewise.
2707         * sysdeps/stub/fdopen.c: Likewise.
2708         * sysdeps/stub/flock.c: Likewise.
2709         * sysdeps/stub/fpathconf.c: Likewise.
2710         * sysdeps/stub/ftruncate.c: Likewise.
2711         * sysdeps/stub/gtty.c: Likewise.
2712         * sysdeps/stub/isatty.c: Likewise.
2713         * sysdeps/stub/killpg.c: Likewise.
2714         * sysdeps/stub/madvise.c: Likewise.
2715         * sysdeps/stub/mkstemp.c: Likewise.
2716         * sysdeps/stub/mktemp.c: Likewise.
2717         * sysdeps/stub/mprotect.c: Likewise.
2718         * sysdeps/stub/msync.c: Likewise.
2719         * sysdeps/stub/pathconf.c: Likewise.
2720         * sysdeps/stub/poll.c: Likewise.
2721         * sysdeps/stub/raise.c: Likewise.
2722         * sysdeps/stub/readv.c: Likewise.
2723         * sysdeps/stub/setenv.c: Likewise.
2724         * sysdeps/stub/setlogin.c: Likewise.
2725         * sysdeps/stub/sigaltstack.c: Likewise.
2726         * sysdeps/stub/sigintr.c: Likewise.
2727         * sysdeps/stub/sigstack.c: Likewise.
2728         * sysdeps/stub/sleep.c: Likewise.
2729         * sysdeps/stub/sstk.c: Likewise.
2730         * sysdeps/stub/stime.c: Likewise.
2731         * sysdeps/stub/stty.c: Likewise.
2732         * sysdeps/stub/syscall.c: Likewise.
2733         * sysdeps/stub/sysconf.c: Likewise.
2734         * sysdeps/stub/truncate.c: Likewise.
2735         * sysdeps/stub/ualarm.c: Likewise.
2736         * sysdeps/stub/usleep.c: Likewise.
2737         * sysdeps/stub/utimes.c: Likewise.
2738         * sysdeps/stub/writev.c: Likewise.
2740         * sysdeps/stub/libc_fatal.c: Remove __NORETURN keyword.
2742 Wed Apr 26 16:06:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2744         * locale/loadlocale.c (_nl_free_locale): Do nothing if DATA is null.
2746 Tue Apr 25 17:17:19 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2748         * posix/glob.c (glob): If GLOB_MARK set, stat names to find
2749         directories and append slashes to them in final pass before
2750         sorting.
2751         (glob_in_dir): If GLOB_MARK set, just allocate the extra char for the
2752         slash; never append it here.
2754 Sat Apr 22 14:48:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2756         * mach/Machrules [interface-library]
2757         (LDFLAGS-$(interface-library:lib%=%.so)): New variable, set to
2758         -nostdlib.
2760         * sysdeps/mach/hurd/fork.c: Subfunction `unlockss' removed.  Lock
2761         _hurd_siglock only around initial task creation in parent.  Use
2762         _hurd_critical_section_unlock at end.  Handle dead name rights
2763         properly, and deal with a send right dying while we try to copy
2764         it.  For the time being, use assert_perror for kernel and proc RPC
2765         failures.
2767 Fri Apr 21 01:10:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2769         * extra-lib.mk: Don't include $(o-iterator); construct it by hand
2770         using $(object-suffixes-$(lib)) instead.
2772         * sysdeps/mach/hurd/Makefile (LDLIBS-c.so): New variable.
2774         * Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS-$(notdir $*).so).
2775         (LDFLAGS-c.so): New variable.
2777         * resolv/res_init.c (res_init): Don't clobber _res.options with
2778         RES_DEFAULT.  If RES_INIT is clear, OR in RES_DEFAULT.
2780         * hurd/hurd.h: Declare _hurd_startup.
2781         * hurd/hurdstartup.c: New file.
2782         * hurd/Makefile (routines): Add hurdstartup.
2784 Thu Apr 20 22:23:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2786         * hurd/hurdsig.c: Use assert_perror for many calls which should
2787         never fail and previously were not checked.
2789         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
2790         Point the return address for sigreturn's frame at a "hlt" insn so
2791         it will definitely crash if sigreturn returns.
2793 Wed Apr 19 18:40:11 1995  Brendan Kehoe  (brendan@zen.org)
2795         * time/tzset.c (__tzname, __daylight, __timezone): Don't check
2796         HAVE_WEAK_SYMBOLS for doing weak_alias.
2798 Wed Apr 19 18:12:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2800         * configure.in: Move $os tests to set $elf et al earlier, before
2801         construction of $sysnames.  Instead of prepending MACHINE/elf to
2802         $sysnames, append &/elf after each elt appended to $mach.
2804 Tue Apr 18 14:00:19 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2806         * configure.in (libc_cv_asm_global_directive): New check to define
2807         ASM_GLOBAL_DIRECTIVE.
2808         * config.h.in: Add #undef ASM_GLOBAL_DIRECTIVE.
2809         * libc-symbols.h (strong_alias_asm, strong_alias): Use
2810         ASM_GLOBAL_DIRECTIVE on the alias.
2812         * sysdeps/unix/make_errlist.c (main): Don't generate "#ifdef
2813         HAVE_WEAK_SYMBOLS" #defns.
2815 Mon Apr 17 12:02:49 1995  Brendan Kehoe  (brendan@zen.org)
2817         * sysdeps/alpha/strlen.c (strlen): Fix cmpbge insn, and returning
2818         of the byte that was zero, so we return a valid number.
2820 Sun Apr 16 03:23:09 1995  Brendan Kehoe  (brendan@zen.org)
2822         * sysdeps/unix/bsd/ultrix4/mips/sysdep.h: New file defining
2823         NO_UNDERSCORES then using sysdeps/unix/mips/sysdep.h.
2825 Fri Apr 14 18:49:03 1995  Brendan Kehoe  (brendan@zen.org)
2827         * sysdeps/ieee754/mpn2dbl.c (__mpn_construct_double)
2828         [BITS_PER_MP_LIMB == 64]: Refer to `u', not to non-existent `i'.
2829         * sysdeps/ieee754/mpn2ldbl.c (__mpn_construct_long_double)
2830         [BITS_PER_MP_LIMB == 64]: Likewise.
2832         * sysdeps/unix/bsd/osf/alpha/killpg.S (killpg): Add .end directive.
2833         * sysdeps/unix/bsd/osf/alpha/sigblock.S (__sigblock): Likewise.
2834         * sysdeps/unix/bsd/osf/alpha/sigsetmask.S (__sigsetmask): Likewise.
2835         * sysdeps/unix/bsd/osf/alpha/sigpause.S (__sigpause): Likewise.
2836         * sysdeps/unix/bsd/osf/alpha/sigvec.S (__sigvec): Likewise.
2837         * sysdeps/unix/bsd/osf/alpha/getdents.S (__getdirentries): Likewise.
2838         * sysdeps/unix/bsd/osf/alpha/fork.S (__fork): Likewise.
2839         * sysdeps/unix/bsd/osf/alpha/pipe.S (__pipe): Likewise.
2840         * sysdeps/unix/bsd/osf/alpha/recv.S (recv): Likewise.
2841         * sysdeps/unix/bsd/osf/alpha/send.S (send): Likewise.
2842         * sysdeps/unix/bsd/osf/alpha/vhangup.S (vhangup): Likewise.
2844         * sysdeps/unix/mips/brk.S (__brk, __curbrk): Add .end directive.
2845         * sysdeps/unix/mips/fork.S (fork): Likewise.
2846         * sysdeps/unix/mips/pipe.S (fork): Likewise.
2847         * sysdeps/unix/mips/sigreturn.S (__sigreturn): Likewise.
2848         * sysdeps/unix/mips/sysdep.S (sysdep_error): Likewise.
2849         * sysdeps/unix/mips/wait.S (__handler): Likewise.
2850         * sysdeps/mips/setjmp.S (__sigsetjmp): Likewise.
2851         * sysdeps/mips/bsd-setjmp.S (setjmp): Likewise.
2852         * sysdeps/unix/bsd/ultrix4/getsysinfo.S (getsysinfo): Likewise.
2853         * sysdeps/unix/bsd/ultrix4/wait3.S (waitpid): Likewise.
2854         * sysdeps/unix/bsd/ultrix4/waitpid.S (waitpid): Likewise.
2855         * sysdeps/unix/bsd/ultrix4/mips/__handler.S (__handler): Likewise.
2856         * sysdeps/unix/bsd/ultrix4/mips/sigvec.S (__raw_sigvec): Likewise.
2857         * sysdeps/unix/bsd/ultrix4/mips/start.S (__start): Likewise.
2858         * sysdeps/unix/bsd/ultrix4/mips/vfork.S (vfork): Likewise.
2859         * sysdeps/mips/bsd-_setjmp.S (setjmp): Likewise.  Use `$0'
2860         instead of `zero' for the li instruction.
2862         * sysdeps/unix/bsd/osf/alpha/start.S: Change comments to be
2863         preprocessor comments, not assembler comments.
2864         * sysdeps/unix/bsd/osf/alpha/brk.S: Likewise.
2865         * sysdeps/unix/bsd/osf/alpha/sysdep.h (NO_UNDERSCORES): Define.
2867 Fri Apr 14 15:53:46 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2869         * malloc/malloc.c (register_heapinfo) [__GNUC__]: Use __inline__
2870         in place of inline.
2872 Thu Apr 13 09:45:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2874         * Makefile (distribute): Add ChangeLog.[0-9].
2876         * configure.in: Add check for .set directive.
2877         * config.h.in: Add #undef HAVE_ASM_SET_DIRECTIVE.
2878         * libc-symbols.h [! HAVE_ASM_SET_DIRECTIVE] (strong_alias,
2879         strong_alias_asm): Use `foo = bar' syntax instead.
2881         * Makerules [! subdir] (O%-lib): Don't prepend ../.
2883         * sysdeps/generic/expm1.c: #undef expm1 before weak_alias.
2885         * configure.in: Fix AC_ARG_WITH uses; check for --with-fp.  Move
2886         $host_os checks to set gnu_ld/as and elf before sysdirs
2887         generation.  Fix $with_fp test.
2888         [$elf=yes]: Prepend MACHINE/elf directory.
2890         * elf/libelf.h (elf_hash): Use XOR instead of ANDN when the bits
2891         being cleared are already known to be set.  Thanks Ulrich.
2893 Wed Apr 12 23:27:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2895         * posix/environ.c: Add weak alias `_environ'.
2897 Tue Apr 11 20:38:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2899         * sysdeps/i386/add_n.S [PIC]: Use self-call to avoid generating reloc.
2900         * sysdeps/i386/sub_n.S [PIC]: Likewise.
2902 Mon Apr 10 14:53:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2904         * libc-symbols.h (_elf_set_element) [PIC]: Don't make the element
2905         word `const'.
2907         * Makeconfig (CPPFLAGS, CFLAGS): Fix swapped references to
2908         $(foo-$(suffix $@)).
2910         * manual/Makefile (chapters-incl): Filter out summary.texi.
2912         * stdlib/strtod.c (STRTOF): Use extra macro to make STRTOF's #defn
2913         a weak symbol instead of literal "STRTOF".
2915         * locale/setlocale.c: Work around ld bug: don't weakify refs to
2916         _nl_{current,C}_*.
2918 Sun Apr  9 01:24:33 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2920         * Makerules (+depfiles): Translate %.so to %.o in $(extra-objs).
2922         * malloc/free.c [emacs] (__malloc_safe_bcopy): Define to safe_bcopy.
2923         * malloc/realloc.c (__malloc_safe_bcopy): Undefine before defining.
2925         * malloc/free.c (memmove, __malloc_safe_bcopy): Do include these
2926         #ifdef emacs, but only #ifndef memmove.
2927         * malloc/realloc.c [emacs] (__malloc_safe_bcopy): Just #define to
2928         safe_bcopy.
2929         (memmove): Define only if undefined.
2931 Sat Apr  8 00:40:59 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2933         * extra-lib.mk (install-lib, extra-objs, alltypes-$(lib)): Make
2934         sure these are simply-expanded variables.
2936         * locale/loadlocale.c (_nl_load_locale): Use MAP_INHERIT flag in
2937         mmap call.
2939         * configure.in (os=freebsd*|bsdi*): Set base_os=unix/bsd/bsd4.4
2940         for these too.
2942         * sysdeps/unix/sysv/tcsetattr.c: Use |= instead of = to properly
2943         set c_oflag value.
2945         * Makeconfig [! objpfx] (csu-objpfx): Add trailing slash.
2947         * locale/Makefile (categories): Uncomment collate.
2948         * locale/lc-collate.c: New file.
2950         * malloc/free.c (__malloc_safe_bcopy, memmove): Don't define
2951         #ifdef emacs.
2952         * malloc/realloc.c: Likewise.
2954         * stdio/_itoa.h (_EXTERN_INLINE): Define if undefined.
2955         (_itoa): Use it in defn.
2956         * stdio/_itoa.c (_EXTERN_INLINE): Define to empty before #include
2957         "_itoa.h".
2958         (_itoa): Function removed.
2960         * malloc/free.c: Remove use of `assert'.
2962         * malloc/realloc.c [! emacs] (safe_bcopy): Renamed to
2963         __malloc_safe_bcopy; #define safe_bcopy.
2964         * malloc/free.c: Cope with systems lacking `memmove'.
2965         (_free_internal): Cast result of _malloc_internal.
2967 Wed Apr  5 00:13:45 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2969         * hurd/hurdinline.c: Include signal.h first, so we don't define
2970         its inlines too.
2972         * sysdeps/unix/sysv/sysv4/sigset.h (__sigfillset): Use ~0L instead
2973         of -1 to avoid compiler warning.
2975         * configure.in (host_os=linux*): Set elf=yes for this, not just
2976         linux*elf*.
2978         * misc/login_tty.c [! TIOCSCTTY]: Try an emulation using ttyname
2979         and open.
2981         * sysdeps/i386/bsd-_setjmp.S: Fix typo in name: setjmp -> _setjmp.
2983 Tue Apr  4 00:48:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2985         * sysdeps/unix/start.c: Remove spurious decl and #endif.
2987         * misc/progname.c (program_invocation_name,
2988         program_invocation_short_name): Make these initialized data
2989         definitions.
2991         * sysdeps/mach/hurd/setitimer.c (fork_itimer): Add self reference
2992         so gcc doesn't optimize out the function entirely.
2994 Sun Apr  2 13:13:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
2996         * posix/execvp.c: Don't use stat to search path; just try execv
2997         until it works.
2999         * sysdeps/mach/hurd/i386/trampoline.c: Add a link to
3000         SS->active_resources, so that _hurdsig_longjmp_from_handler will
3001         be called when a longjmp unwinds the signal frame.
3002         * sysdeps/mach/hurd/i386/sigreturn.c: Remove the link on the
3003         SS->active_resources chain added by _hurd_setup_sighandler.
3004         * hurd/sigunwind.c: New file.
3005         * hurd/Makefile (sig): Add sigunwind.
3007         * Makerules (lib%.so: lib%_pic.a): Remove dir name from $*.
3009         * MakeTAGS (tags-sources): Include $(all-dist).
3010         [subdir] (all-dist): Define to $(distribute).
3012 Sat Apr  1 00:08:06 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3014         * Makerules (lib%.so: lib%_pic.a): Pass -L options for subdir and
3015         parent objdirs.
3017         * extra-lib.mk (object-suffixes-$(lib)): New variable, produced by
3018         filtering out $($(lib)-inhibit-o); use that instead of
3019         $(object-suffixes) in all the other variables.
3021         * locale/loadlocale.c (_nl_load_locale) [MAP_FILE]: Define it zero
3022         if undefined.
3024         * string/strxfrm.c: Just copy the string (for now).
3025         * string/strcoll.c: Just call strcmp (for now).
3027         * mach/Makefile (lock): Add mutex-init.
3028         * mach/mutex-solid.c (_cthread_mutex_lock_routine,
3029         _cthread_mutex_unlock_routine): Variables removed.
3030         (__mutex_lock_solid, __mutex_unlock_solid): Don't use them; just stub.
3031         (__mutex_init): Function moved to new file mutex-init.c.
3032         * mach/mutex-init.c: New file, broken out of mutex-solid.c.
3034 Thu Mar 30 20:43:02 1995  Brendan Kehoe  <brendan@zen.org>
3036         * sysdeps/mips/__longjmp.c (__longjmp): Take out CONST.
3037         * sysdeps/alpha/__longjmp.c (__longjmp): Take out const.
3039 Thu Mar 30 01:38:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3041         * elf/elf.h (STN_UNDEF): New macro (distinct from SHN_UNDEF, though
3042         both are zero).
3044 Wed Mar 29 11:26:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3046         * elf/dlfcn.h: New file.
3048         * Make-dist (README): Commit it to CVS if there is a CVS directory.
3050         More changes from Germano Caronni <caronni@tik.ethz.ch>:
3051         * malloc/free.c: Relocate _heapinfo when that allows us to return
3052         core to the system.
3054         * malloc/malloc.c: Move #include <errno.h> outside #ifndef
3055         _MALLOC_INTERNAL.
3057 Mon Mar 27 02:23:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3059         * mach/Makefile (headers): Add mach/mach_traps.h.
3061         * Makerules ($(installed-libcs) rule): Fix typos.
3063         * sysdeps/unix/bsd/bsd4.4/revoke.S: New file.
3064         * sysdeps/stub/revoke.c: New file.
3065         * misc/Makefile (routines): Add revoke.
3066         * posix/unistd.h [__USE_BSD] (revoke): Declare it.
3067         * sysdeps/generic/pty.c (openpty, forkpty): Declare return types.
3068         (forkpty): Declare login_tty.
3069         * misc/logwtmp.c (logwtmp): Declare to return void.
3070         * misc/login_tty.c (login_tty): Include unistd.h.  Declare return type.
3072         * posix/unistd.h [__USE_BSD] (ttyslot): Declare it.
3074         * posix/unistd.h [__USE_BSD] (L_SET, L_INCR, L_XTND): Define
3075         unless L_SET already defined.
3076         * misc/sys/file.h (L_SET, L_INCR, L_XTND): Don't define if L_SET
3077         already defined.
3079         Incorporated -lutil library from 4.4-Lite.
3080         * misc/Makefile (extra-libs, libutil-routines): New variables.
3081         * misc/login.c, misc/login_tty.c, misc/logout.c, misc/logwtmp.c,
3082         sysdeps/generic/pty.c: New files for -lutil incorporated from 4.4-Lite.
3084         Support simple, light-weight unwind-protect mechanism for longjmp.
3085         * setjmp/longjmp.c: Call _longjmp_unwind first thing.
3086         * sysdeps/mach/hurd/jmp-unwind.c: New file.
3087         * sysdeps/stub/jmp-unwind.c: New file.
3088         * sysdeps/i386/jmp_buf.h (_JMPBUF_UNWINDS): New macro.
3089         * sysdeps/mips/jmp_buf.h (_JMPBUF_UNWINDS): New macro.
3090         * setjmp/Makefile (routines): Add jmp-unwind.
3091         * hurd/hurd/userlink.h (struct hurd_userlink): Move `next' and
3092         `prevp' members into new substructure `resource'; add another such
3093         substructure `thread' and members `cleanup' (function ptr) and
3094         `cleanup_data' (generic ptr).
3095         (_hurd_userlink_link, _hurd_userlink_unlink): Insert/remove LINK
3096         into the `_hurd_self_sigstate ()->active_resources' list via the
3097         `thread' substructure.
3098         * hurd/hurd/port.h (_hurd_port_cleanup): Declare it.
3099         (_hurd_port_locked_get): Set LINK->cleanup to _hurd_port_cleanup and
3100         LINK->cleanup_data' to the port extracted.
3101         * hurd/hurd/signal.h (struct hurd_sigstate): New member
3102         `active_resources'.
3103         * hurd/port-cleanup.c: New file.
3104         * hurd/Makefile (routines): Add port-cleanup.
3106         * malloc/malloc.c: Include errno.h.
3108 Sat Mar 25 18:24:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3110         * locale/loadlocale.c (_nl_load_locale): Avoid */ inside comment.
3112 Fri Mar 24 02:35:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3114         * misc/Makefile (headers): Add utmp.h.
3115         * misc/utmp.h: New file, incorporated from 4.4-Lite.
3117         * stdio/printf-parse.h: New file, mostly written by drepper.
3118         * stdio/vfprintf.c: Rewritten, mostly by drepper.
3119         * stdio/printf-prs.c: Rewritten.
3120         * stdio/Makefile (distribute): Add printf-parse.h.
3122 Thu Mar 23 22:03:44 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3124         * sysdeps/unix/start.c [! NO_UNDERSCORES]: Don't declare _start
3125         with asm name.  Just do a ".set start, __start".
3127         * malloc/realloc.c: Call _free_internal instead of free.
3129 Tue Mar 21 00:14:27 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3131         * locale/loadlocale.c (_nl_load_locale): If LOCALE/LC_* is a
3132         directory, open LOCALE/LC_*/SYS_LC_* instead.
3134 Mon Mar 20 03:19:23 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3136         * stdio/fpioconst.c, stdio/fpioconst.h, stdio/gmp-impl.h,
3137         stdio/gmp.h, stdio/longlong.h, stdio/mp_clz_tab.c,
3138         stdio/gen-mpn-copy: Files moved to stdlib.
3139         * stdio/Makefile: All mpn stuff moved to stdlib/Makefile.
3140         * stdlib/Makefile: All the mpn stuff moved here from stdio/Makefile.
3141         * stdio/printf_fp.c: Use ../stdlib to find fpioconst.h and gmp
3142         headers.
3143         * stdlib/strtod.c: Don't use ../stdio to find fpioconst.h and gmp
3144         headers.
3146         * Makefile (parent-mostlyclean): Don't use $(libc.a).
3147         (parent-clean): Use $(objpfx) to find sysd-*.
3148         * Rules (generated): Append dummy.o dummy.c.
3149         * Makerules (lib): Depend on lib-noranlib.
3150         (lib-noranlib): Depend on $(install-lib) in objdir.
3151         (common-mostlyclean): Remove $(install-lib) and stub-$(subdir)
3152         from objdir.  Don't remove TAGS; it comes in the distribution.
3154         * malloc/malloc.c (morecore): Save errno around call to
3155         _realloc_internal.  Don't account for the additional new blocks of
3156         the info table itself when choosing the new table size for the
3157         first crack; if it succeeds, the new blocks will have been found
3158         in existing free space already described by the existing info
3159         table.
3161         * stdio/vfscanf.c (%n): Use READ_IN - 1, so as not to count the
3162         read-ahead character.
3164 Sat Mar 18 14:07:08 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3166         * hurd/dtable.c, hurd/getdport.c, hurd/hurd.h, hurd/hurdexec.c,
3167           hurd/hurdinit.c, hurd/hurdprio.c, hurd/hurdsock.c,
3168           hurd/ports-get.c, hurd/ports-set.c, hurd/setauth.c,
3169           hurd/setuids.c, sysdeps/mach/hurd/i386/trampoline.c:
3170         Get anal with unsigned to pacify compiler.
3172         * stdio/vfscanf.c: Grok positional parameter specs (i.e. %3$d
3173         means %d from 3rd arg).
3175         * sysdeps/mach/hurd/closedir.c: Include hurd/fd.h.
3177         * stdlib/strtol.c: If !GROUP, set END to null.  In loop, test only
3178         END, not GROUP.
3180 Fri Mar 17 12:58:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3182         * Makefile (subdirs): Put elf last.
3184         * sunrpc/Makefile (install-lib): Variable removed.
3185         (rpcsvc-objs): Variable removed.
3186         (extra-objs): Don't include $(rpcsvc-objs).
3187         (extra-libs): New variable, contains librpcsvc.
3188         (librpcsvc-routines): New variable.
3189         (librpcsvc-inhibit-o): New variable, contains .so.
3190         (omit-deps): Set this to $(librpcsvc-routines).
3191         ($(objpfx)rpcgen): Don't use $(libc.a).
3192         (lib, $(objpfx)librpcsvc.a): Targets removed.
3194         * o-iterator.mk, extra-lib.mk: New files.
3195         * Makerules (o-iterator): New variable.
3196         [extra-libs]: Include extra-lib.mk to generate rules for each word
3197         of $(extra-libs).
3198         * Makefile (distribute): Add extra-lib.mk, o-iterator.mk.
3200 Fri Mar 17 13:28:04 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
3202         * sysdeps/ieee754/ldbl2mpn.c (__mpn_extract_long_double):
3203         Handle 80-bit denormalized numbers correctly.
3205         * stdlib/strtod.c, stdlib/strtof.c, stdlib/strtold.c:
3206         (IMPLICIT_ONE, *_MAX_10_EXP_LOG): Macros removed; no longer needed.
3207         * stdlib/strtod.c (RETURN): Add parentheses around return value.
3208         (round_and_return): Correct handling of denormalized numbers.
3210         * stdio/fpioconst.c, stdio/fpioconst.h: Don't use
3211         LDBL_MAX_10_EXP_LOG; LAST_POW10 defines the maximal available
3212         exponent.
3214 Thu Mar 16 00:04:41 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3216         * locale/C-ctype.c: New correct data generated by drepper.
3218         * Rules: Don't use $(libc.a).
3220         Parsing of grouped numbers contributed by Ulrich Drepper.
3221         * stdlib/strtol.c (__strtol_internal): Renamed from strtol.  Take
3222         new flag arg; if nonzero, parse locale-dependent thousands
3223         grouping and interpret only the prefix that is correctly grouped.
3224         (strtol): Define this to call _strtol_internal with zero for the flag.
3225         Use a weak symbol for the definition.
3226         * stdlib/strtod.c (strtod, __strtod_internal): Likewise.
3227         Check for the exponent of the number overflowing the float format.
3228         * stdlib/stdlib.h (__strtof, __strtold): Declarations removed.
3229         (__strto{f,d,ld,l,ul,q,uq}_internal): Declare these functions.
3230         [__OPTIMIZE__]: Define inline functions calling those.
3231         * stdlib/strtold.c (STRTOF): Set to strtold, not __strtold.
3232         (strtold): Remove weak alias.
3233         * stdlib/strtof.c (STRTOF): Set to strtof, not __strtof.
3234         (strtof): Remove weak alias.
3235         * stdlib/grouping.h: New file, written by drepper.
3236         * stdlib/Makefile (distribute): Add grouping.h.
3237         * stdio/vfscanf.c: Grok %' modifier to numeric conversions.  Call
3238         __strtoX_internal with the grouping flag set iff the modifier is
3239         present.
3241 Wed Mar 15 00:40:54 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3243         * sysdeps/generic/memchr.c: Fix typos: limit.h -> limits.h.
3245         * mach/Machrules: Produce static deps for all object flavors.
3246         [interface-library]: Remove all these variables and rules.
3247         ($(interface-library)-routines): Define this variable.
3248         (extra-libs): Append $(interface-library) to this.
3249         * mach/Makefile (interface-library): Omit .a suffix.
3250         * hurd/Makefile: Likewise.
3252 Tue Mar 14 23:40:31 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3254         * stdio/internals.c (flushbuf): If !FLUSH_ONLY, don't skip out
3255         early if no new data in buffer after priming.
3257 Mon Mar 13 01:48:16 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3259         * Makerules (object-suffixes, libtypes): Move all these variables
3260         to Makeconfig.
3261         * Makeconfig (object-suffixes, libtypes): Moved here from Makerules.
3263         * Makerules (build-extra-lib): New canned sequence.
3265         * sysdeps/mach/hurd/euidaccess.c: Include fcntl.h.  Declare ERR;
3266         fix uses of FILE and PORT.  Remove bogus weak alias for `access'.
3268         * sysdeps/mach/hurd/dirfd.c: Include hurd/fd.h and errno.h.
3269         Add missing semicolon.
3270         * sysdeps/mach/hurd/opendir.c: Include hurd/fd.h.  Use a `struct
3271         hurd_fd *' temp var, since DIRP->__fd is a `void *'.
3272         * sysdeps/mach/hurd/readdir.c: Include hurd/fd.h.
3274         * stdlib/wcstombs.c: #if 0 out code for non-ASCII chars until the
3275         locale data format is implemented.
3277         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
3278         Pass &__sigreturn on the stack to the trampoline code, so it is
3279         not position-dependent.
3281         * stdio/printf_fp.c (NDEBUG): Define this to disable assert.
3282         Don't include <stdarg.h>.
3283         (__printf_fp): Last arg ARGS is now `const void **const';
3284         dereference ARGS[0] instead of using va_arg.
3286         * locale/setlocale.c: In LC_ALL case, initialize CATEGORY before
3287         loop to install data.
3289         * locale/loadlocale.c (_nl_category_num_items): Use _NL_ITEM_INDEX
3290         to extract number from item code.
3291         (_nl_load_locale): Close the descriptor when finished.
3293         * malloc/realloc.c (_realloc_internal): Call _malloc_internal in
3294         place of malloc.
3296         * time/tzfile.c (__tzfile_default): Initialize RULE_STDOFF to zero.
3298         * stdio/printf_fp.c (group_number): Cast *GROUPING to unsigned int
3299         to avoid warning.
3300         * sysdeps/generic/sigset.h (__SIGSETFN): Cast result of sizeof to
3301         int to avoid warning.
3303         Support building several flavors of objects and libraries.
3304         * Makerules (libtypes, object-suffixes): New variables.
3305         (libtype.*, CFLAGS-*, CPPFLAGS-*): New variables for each object
3306         suffix.
3307         (CFLAGS, CPPFLAGS): Append $(C{,CPP}FLAGS-$(suffix $@)).
3308         (%.so, %.po, %.go): New compilation rules for %.S, %.s, %.c.
3309         (close-check-inhibit-asm): Append a semicolon.
3310         (sysd-rules): Generate rules for each object suffix.
3311         (compile.S, compile.c): Always assume gcc.
3312         (OUTPUT_OPTION): Define unconditionally.
3313         (+make-deps): In generated rule, produce a dependent for each
3314         object suffix.
3315         (.SUFFIXES): Add $(object-suffixes) in place of .o.
3316         (.PRECIOUS): Make all suffix flavors precious.
3317         ($(libc.a)): Target removed.
3318         (lib): Depend on each enabled libtype.
3319         (libobjs, objects, objs): Depend on all the enabled object flavors.
3320         (lib%.a): New pattern rule.
3321         [$(build-shared)=yes] (lib%.so: lib%_pic.a): New pattern rule.
3322         (stamp-$(subdir)): Rewritten to a pattern rule for stamp.%-$(subdir)
3323         to make one for each flavor; library dep rule likewise rewritten.
3324         ($(libc.a)(__.SYMDEF)): Target replaced with one target for each
3325         flavor.
3326         (symdef.%): New pattern rule; helper for __.SYMDEF targets.
3327         (installed-libcs): New variable.
3328         (install): Depend on that instead of
3329         $(libdir)/lib$(libprefix)$(libc-name).a;
3330         that file's rule rewritten to make each enabled libtype.
3331         (install-lib.so): New variable, filters lib%.so from $(install-lib).
3332         (install-lib): Filter out lib%.so after setting install-lib.so.
3333         [$(build-shared)=yes] (install): Install $(install-lib.so).
3334         (common-mostlyclean): Remove all flavors of objects.
3335         * Makefile ($(libc.a)(__.SYMDEF)): Target removed.
3336         [$(build-shared)=yes] (lib): Depend on $(common-objpfx)libc.so.
3338 Sun Mar 12 18:21:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3340         * sysdeps/stub/ulimit.c: Don't include gnu-stabs.h.
3341         * sysdeps/stub/pause.c: Likewise.
3342         * sysdeps/stub/time.c: Likewise.
3344         * stdlib/mbtowc.c: #if 0 out code for non-ASCII chars until the
3345         locale data format is implemented.
3346         * stdlib/wctomb.c: Likewise.
3348         * mach/Makefile ($(objpfx)errsystems.c): Reenable this rule; the
3349         gcc bug is fixed.
3350         * mach/errsystems.c: File removed.
3352         * Makeconfig (libc.a): Variable removed.
3353         (+link): Don't use it.
3355         * configure.in (AC_ARG_ENABLE calls): Use $enableval instead of
3356         assuming `yes'.
3358         * malloc/malloc.h (_malloc_internal, _realloc_internal): Declare these.
3359         * malloc/realloc.c (_realloc_internal): Renamed from realloc;
3360         don't use __realloc_hook.
3361         (realloc): New function; call __realloc_hook ?: _realloc_internal.
3362         * malloc/malloc.c (_malloc_internal): Renamed from malloc;
3363         don't use __malloc_hook.
3364         (malloc): New function; call __malloc_hook ?: _malloc_internal.
3365         Changes from Germano Caronni <caronni@tik.ethz.ch>:
3366         (initialize): Set up _heaplimit to cover the _heapinfo table.
3367         (morecore_recursing): New static variable.
3368         (morecore): If that is set, return null immediately.
3369         When growing the info table, before getting new core from the
3370         system for it, set morecore_recursing and try moving _heapinfo
3371         with _realloc_internal.  When that fails and we get new core, set
3372         _heaplimit to cover the core for the new _heapinfo table.
3373         (register_heapinfo): New function.  Record the _heapinfo table's
3374         own blocks in that table and in the statistics variables.
3375         (initialize, _malloc_internal): Use it after allocating new table.
3377 Fri Mar 10 22:26:28 1995  Jim Meyering  (meyering@comco.com)
3379         * sysdeps/generic/memchr.c: Remove ansidecl.h and clean up for use
3380         by other packages.
3381         [LONG_MAX <= LONG_MAX_32_BITS]: Don't compile 64-bit code.
3383 Fri Mar 10 13:31:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3385         * mach/errorlib.h (errors): Use const for decl.
3387         * time/tzfile.c (uc2ul, _uc2ul): Macros removed.
3388         (decode): New inline function; decode signed 32-bit integers, and
3389         sign-extend properly when long is longer than 32 bits.
3390         (__tzfile_read): Changed all uses of uc2ul to decode.
3391         Decode the transition times properly when sizeof (time_t) > 4.
3393         * stdio/printf.h: Doc fixes.  Don't #include <stddef.h>.
3394         (printf_function): Make last arg ARGS a vector of pointers instead of a
3395         pointer to va_list.
3397 Fri Mar 10 13:46:25 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
3399         * stdio/vfprintf.c [USE_IN_LIBIO] (PAD): Use return value of _IO_padn.
3400         (buffered_vfprintf): Remove line buffer when flush failed.
3402 Fri Mar 10 00:04:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3404         * time/tzfile.c (struct ttinfo): New member `isgmt'.
3405         (__tzfile_read): Read isgmt flags for each type.
3406         (__tzfile_default): When using TZDEFRULES DST rules, adjust
3407         transition times according to the isstd and isgmt flags for the
3408         types of each transition, and adjust each transition to point to
3409         type index either 0 or 1.  Reset type indices 0 and 1 to describe
3410         the user's settings.
3412 Thu Mar  9 22:29:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3414         * locale/categories.def (LC_CTYPE): Merge CLASS_EB and CLASS_EL
3415         into just CLASS.  Add standard/optional flag to all items.
3417         * locale/localeinfo.h (_NL_CURRENT_DEFINE): Fix typo.
3419         * ctype/ctype.h [__BYTE_ORDER == __LITTLE_ENDIAN] (_ISbit):
3420         Rearrange defn to satisfy compiler.
3422         * locale/localeinfo.h: Declare _nl_current.
3424         * configure.in: Use AC_CHECK_TOOL for CC, AR, RANLIB.  Accept args
3425         --enable-shared, --enable-profile, --enable-omitfp; pass settings
3426         through to config.make.
3427         * config.make.in (build-shared, build-profile, build-omitfp): New
3428         config vars.
3430         * elf/elf.h (STN_UNDEF): Renamed to SHN_UNDEF (typo).
3431         (DT_NUM): New macro.
3433         * locale/nl_langinfo.c: Include errno.h and stddef.h.  Fix typos.
3435         * locale/lc-ctype.c (_nl_postload_ctype): Fix macro insanity.
3437         * locale/loadlocale.c (_nl_load_locale) [! MAP_COPY]: Define
3438         MAP_COPY to MAP_PRIVATE.
3440 Thu Mar  9 17:16:53 1995  Brendan Kehoe  (brendan@zen.org)
3442         * sysdeps/alpha/divrem.m4: Undefine `ret' to avoid the definition
3443         that's used inside the alpha sysdep.h.
3445         * sysdeps/alpha/__longjmp.c (__longjmp): Remove obsolete __NORETURN
3446         keyword.
3447         * sysdeps/alpha/__math.h (__copysign): Remove obsolete __CONSTVALUE.
3449         * configure.in: Match `osf*', not `osf1*'.
3450         * configure: Likewise.
3451         * sysdeps/unix/bsd/osf: Renamed from `sysdeps/unix/bsd/osf1'.
3453 Wed Mar  8 13:38:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3455         * posix/glob/configure.bat: Fixes from DJ.
3457         * time/backward, time/europe, time/northamerica, time/pacificnew,
3458         time/zdump.c, time/zic.c, time/tzfile.h, time/private.h,
3459         time/ialloc.c: Code and data updated from ADO's 95b.
3460         * time/emkdir.c: File removed.
3461         * time/Makefile (distribute, extra-objs, zic): Omit it.
3463         * time/localtime.c: Deansideclized.  Never #define __tzname et al
3464         to non-__ names.
3466         * locale/lc-ctype.c (__ctype_tolower, __ctype_toupper): Use int *
3467         instead of short int *.
3468         * ctype/ctype-info.c: Likewise.
3469         * ctype/ctype.h: Likewise.
3471         * locale/langinfo.h (_NL_CTYPE_CLASS): Use this (just one) instead
3472         of EB and EL versions.
3474 Mon Mar  6 12:34:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3476         * ctype/ctype.h (_ISbit): New macro, defined dependent on byte order.
3477         (_IS* enum): Use _ISbit to produce values.
3479 Sun Mar  5 19:40:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3481         * locale/localeinfo.h: Rewritten for new locale system, using
3482         locale data files and with <langinfo.h> interface.
3483         * locale/setlocale.c: Rewritten to use locale data files.
3484         * langinfo.h: New file.
3485         * locale/langinfo.h: New file.
3486         * locale/nl_langinfo.c: New file.
3487         * locale/loadlocale.c: New file.
3488         * locale/lc-ctype.c: New file.
3489         * locale/lc-messages.c: New file.
3490         * locale/lc-monetary.c: New file.
3491         * locale/lc-numeric.c: New file.
3492         * locale/lc-time.c: New file.
3493         * locale/categories.def: New file.
3494         * locale/Makefile (headers): Remove localeinfo.h.
3495         (distribute): New variable; put localeinfo.h here, and categories.def.
3496         (routines): Add loadlocale.
3497         (categories): New variable.
3498         (aux): Use that to get C-category and lc-category.
3499         * ctype/ctype.h (_IS*): Use independent bits for all but _ISalnum.
3500         * ctype/ctype-info.c: For initial tables, use
3501         _nl_C_LC_CTYPE_{class,toupper,tolower} constant tables defined in
3502         locale/C-ctype.c.
3503         * locale/C-ctype.c, locale/C-messages.c: New files.
3504         * locale/C-monetary.c, locale/C-numeric.c, locale/C-time.c:
3505         Default "C" locale data updated for new locale system.
3506         * locale/C-collate.c: File removed.
3507         * locale/C-ctype_ct.c: File removed.
3508         * locale/C-ctype_mb.c: File removed.
3509         * locale/C-response.c: File removed.
3510         * locale/localeconv.c: Use _NL_CURRENT macro to access locale data.
3511         * stdio/printf_fp.c, stdio/vfprintf.c, stdio/vfscanf.c,
3512           stdlib/strtod.c, time/asctime.c, time/strftime.c:
3513         Include ../locale/localeinfo.h and use _NL_CURRENT macro to access
3514         locale data.
3515         * time/localtime.c: Don't include <localeinfo.h>.
3516         * time/tzset.c: Don't use locale items for default TZ value or
3517         "GMT" string (use "UTC").
3519         * stdio/vfprintf.c [USE_IN_LIBIO] (PAD): Only call the function if
3520         WIDTH>0; update DONE.
3522         * malloc/malloc.c (morecore): Fix last change to calculate by
3523         blocks instead of bytes.
3525 Fri Mar  3 12:24:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3527         * sysdeps/generic/sys/mman.h (__mmap, __munmap): Declare these.
3528         * sysdeps/unix/sysv/irix4/sys/mman.h: Likewise.
3529         * sysdeps/unix/bsd/ultrix4/sys/mman.h: Likewise.
3530         * sysdeps/unix/bsd/osf1/sys/mman.h: Likewise.
3531         * sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Likewise.
3532         * sysdeps/stub/munmap.c (munmap): Rename to __munmap, add weak
3533         alias munmap.
3534         * sysdeps/unix/mman/munmap.S: Likewise.
3535         * sysdeps/mach/munmap.c: Likewise.
3536         * sysdeps/mach/hurd/mmap.c (mmap): Rename to __mmap, add weak
3537         alias mmap.
3538         * sysdeps/unix/mman/mmap.S: Likewise.
3539         * sysdeps/unix/bsd/sun/sunos4/mmap.c: Likewise.
3540         * sysdeps/stub/mmap.c: Likewise.
3542         * sysdeps/unix/bsd/setsid.c: Use __getpgid instead of __getpgrp.
3544         * sysdeps/unix/dirfd.c: #undef dirfd before function defn.
3546 Thu Mar  2 12:15:24 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3548         * misc/search.h: Add missing semicolon.
3550         * sysdeps/unix/dirfd.c: Fix typo.
3552         * sysdeps/generic/sys/mman.h (mmap): Use __off_t instead of off_t
3553         in decl.
3555         * stdio/vfscanf.c (%c): In no-assign case, fix loop to decrement
3556         WIDTH before test.
3558 Wed Mar  1 00:57:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3560         * stdlib/strtod.c: Fixes from drepper.
3561         [IMPLICIT_ONE]: New macro, one for IEEE754 formats.
3562         * stdlib/strtold.c [IMPLICIT_ONE]: New macro, 0.
3563         * stdlib/strtof.c [IMPLICIT_ONE]: New macro, 1.
3565         * stdio/vfprintf.c: Correctly notice Z modifier.
3567         * misc/search.h: New file.
3568         * misc/Makefile (headers): Add search.h.
3569         * misc/insremque.c: Include search.h.
3570         (struct qelem): Type removed.
3572 Mon Feb 27 07:00:57 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3574         * elf/libelf.h: New file.
3575         * elf/elf_hash.c: New file.
3577 Sun Feb 26 15:51:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3579         Changes from Germano Caronni <caronni@tik.ethz.ch>:
3580         * malloc/malloc.c (morecore): Account in NEWSIZE for the
3581         malloc_info structures for each new block.
3583 Sat Feb 25 02:17:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3585         * sysdeps/mach/hurd/kill.c: When the process has no message port
3586         registered and we have its task port, translate a few signals to
3587         task_suspend/task_resume/task_terminate.
3589 Fri Feb 24 14:40:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3591         * io/Makefile (routines): Add euidaccess.
3592         * sysdeps/mach/hurd/euidaccess.c: New file.
3593         * sysdeps/stub/euidaccess.c: New file.
3594         * posix/unistd.h [__USE_GNU] (euidaccess): Declare it.
3596         * dirent/Makefile (routines): Add dirfd.
3597         * sysdeps/stub/dirfd.c: New file.
3598         * sysdeps/unix/dirfd.c: New file.
3599         * sysdeps/unix/dirstream.h (_DIR_dirfd): New macro.
3600         * dirent/dirent.h (dirfd): Declare new function.  Define as macro
3601         _DIR_dirfd if that is defined.
3602         * sysdeps/mach/hurd/dirstream.h (DIR): Replace `__port' member
3603         with `void *__fd'.
3604         * sysdeps/mach/hurd/opendir.c: Use DIRP->__fd instead of DIRP->__port.
3605         Open the file with `open'; set FD_CLOEXEC on the fd.
3606         * sysdeps/mach/hurd/closedir.c: Likewise.
3607         * sysdeps/mach/hurd/readdir.c: Likewise.
3608         * sysdeps/mach/hurd/dirfd.c: New file.
3610         * posix/Makefile (glob/configure): Do cvs commit if there is a CVS
3611         directory.
3612         (glob/ChangeLog): Likewise.
3614         * locale/locale.h (LC_*): Use small integers instead of bit masks.
3616         * stdio/bug4.c: Put temporary files in /tmp.
3617         * stdio/bug3.c: Likewise.
3618         * stdio/bug5.c: Likewise.
3619         * stdio/test-fseek.c: Likewise.
3620         * stdio/test-popen.c: Likewise.
3622 Wed Feb 22 00:44:41 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3624         * posix/glob/configure.in: Put AC_ISC_POSIX before AC_CONST.
3626         * libc-symbols.h (weak_symbol): New macro.
3628         * hurd/hurdsig.c (_hurd_internal_post_signal): Ignore preempter
3629         elts with null handlers.
3631         * sysdeps/mach/hurd/i386/sigreturn.c: Restore the FPU state.
3633 Tue Feb 21 21:53:30 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3635         * stdlib/random.c (__srandom): Change algorithm used to populate
3636         the state array.
3637         (randtbl): Recomputed with new algorithm.
3639         * sysdeps/sparc/Makefile [subdir=crypt] (crypt): Reset only if set
3640         to original value of `crypt'.
3641         * sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile [subdir=crypt]
3642         (crypt): New variable, set to crypt.solar.
3644 Tue Feb 21 11:50:37 1995  Brendan Kehoe  (brendan@zen.org)
3646         * sysdeps/sparc/Makefile (routines): Reference `dotmul', not `mul'.
3648         * config.h.in: Put comment around ^L to pacify Solaris as here too.
3650 Tue Feb 21 00:10:50 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3652         * string/Makefile (distribute): Add pagecopy.h.
3653         * sysdeps/mach/pagecopy.h: New file.
3654         * sysdeps/generic/pagecopy.h: New file.
3655         * sysdeps/generic/memcpy.c: Include pagecopy.h; call
3656         PAGE_COPY_FWD_MAYBE first when word aligned.
3657         * sysdeps/generic/memmove.c: Likewise.
3659         * misc/bsd-compat.c (longjmp, setjmp): Functions removed.
3660         (getpgrp): Call __getpgid instead of __getpgrp.
3662         * Makefile (subdirs): Add elf first.
3663         * elf/Makefile: New file.
3664         * elf/elf.h: New file.
3666         * sysdeps/unix/start.c (errno): Only define if it's not #define'd
3667         as a macro.
3668         [! NO_UNDERSCORES]: Define `start' as a weak alias, not a symbol
3669         indirection.
3671         * csu/Makefile (crtstuff): New variable consolidates crti, crtn;
3672         add crti_s, crtn_s.
3673         (install-lib, extra-objs, generated-, omit-deps): Use that.
3674         (initfini): New canned sequence, broken out of crt[in].s rule.
3675         (crt[in].s rule): Use it.
3676         (crt[in]_s.s): New rule.
3677         * csu/initfini.c (GLOBAL): New macro; define it to empty if undefined.
3678         (_init, _fini): Use GLOBAL as storage class.
3679         Add self reference to avoid GCC optimizing out the functions.
3681         * Makefile (headers): Remove $(stddef.h).
3682         * Makeconfig (stddef.h): Variable removed; now require gcc version
3683         >= 2.2.
3684         * stddef.h: File removed.
3686 Mon Feb 20 19:42:31 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3688         * sysdeps/unix/bsd/ultrix4/mips/start.S: Remove `__environ'
3689         definition.
3690         * sysdeps/unix/bsd/osf1/alpha/start.S: Likewise.
3692         * stdlib/strtod.c: Allow the string to start with a decimal point
3693         without a leading zero.
3695 Mon Feb 20 04:04:57 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
3697         * Makefile (subdirs): Put csu first.
3699         * sysdeps/mach/hurd/start.c: Include unistd.h for __environ decl.
3701         * Makeconfig [elf=yes] (+preinit, +postinit): New variables, set
3702         to crt[in].o.
3703         (csu-objpfx): New variable.
3704         (+link): Use it to find start.o and $(+preinit), $(+postinit).
3706         * Rules (subdir_lib, all): Depend on objs.
3708         * config.h.in [HAVE_ELF || HAVE_GNU_LD]: Define HAVE_WEAK_SYMBOLS.
3710         * stdlib/strtod.c (PASTE, PASTE1): New helper macros; use these in
3711         access to float.h macros.
3713         * misc/efgcvt.c: New file.
3714         * misc/Makefile (routines): Add efgcvt.
3716 Sun Feb 19 20:10:43 1995  Brendan Kehoe  <brendan@zen.org>
3718         * sysdeps/sparc/mul.S: Renamed to `dotmul.S'.
3719         * sysdeps/sparc/Makefile (routines): Reference `dotmul.S', not `mul.S',
3720         to avoid a misreference that would override sysdeps/generic/mul.c.
3721         * sysdeps/sparc/Dist: Likewise.
3723 Sun Feb 19 17:46:13 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
3725         * posix/Makefile (aux): Add environ.
3726         * posix/environ.c: New file.
3727         * sysdeps/unix/sparc/start.c: Remove __environ definition.
3728         * sysdeps/unix/start.c: Likewise.
3729         * sysdeps/unix/sysv/irix4/start.c: Likewise.
3730         * sysdeps/mach/hurd/start.c: Likewise.
3731         * sysdeps/mach/start.c: Likewise.
3732         * sysdeps/stub/start.c: Likewise.
3734         * sysdeps/unix/make_errlist.c: In produced program, test
3735         HAVE_WEAK_SYMBOLS instead of HAVE_GNU_LD.
3736         * sysdeps/unix/sysv/sysv4/dup2.c: Fix #include of renamed file.
3737         Remove extra weak alias.
3739         * sysdeps/unix/sysv/sysv4/sigaltstack.S: Fix unsquashed file name
3740         in #include.
3742         * libc-symbols.h: Put comment around ^L to pacify Solaris as.
3744         * sysdeps/posix/Makefile (cded-objdir-includes): New variable
3745         replaced cded-objdir-CPPFLAGS; transform $(+includes) instead of
3746         $(CPPFLAGS).
3747         (mk-stdiolim): Use it instead.
3749 Fri Feb 17 12:16:27 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
3751         * mach/mach_init.c (__vm_page_size): Make it initialized.  It does
3752         not work to make a weak alias to a bss symbol.
3754         * stdio/Makefile (distribute): Remove mpn-copy.mk; add gen-mpn-copy.
3755         (tests): Add test-fwrite.
3756         * stdio/test-fwrite.c: New file.
3758         * stdlib/stdlib.h [__USE_GNU]: Declare strtof, strtold, __strtof,
3759         __strtold.
3761         * Makefile (autoconf-it): New canned sequence.  Do cvs commit if
3762         there is a CVS directory.
3763         (configure, %/configure): Use $(autoconf-it) for cmds.
3764         * Make-dist: Likewise.
3765         * sysdeps/mach/hurd/Makefile (errlist.c, errnos.h): Do cvs commit
3766         if there is a CVS directory.
3767         * sysdeps/sparc/Makefile (divrem output): Likewise.
3768         * sysdeps/alpha/Makefile (divrem output): Likewise.
3769         * Makerules ($(gpl2lgpl)): Likewise.
3771         * Makerules (rule to install lib%.a from $(install-lib)): Fix
3772         patsubst to elide ranlib for $(non-lib.a).
3774         * stdio/tst-printf.c: Enable FP tests.  Add some new tests from rfg.
3776 Thu Feb 16 04:06:06 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
3778         * sysdeps/mach/hurd/mig-reply.c: Add weak aliases to non-__ names.
3779         * mach/mig-dealloc.c: Add weak alias mig_deallocate.
3781 Wed Feb 15 13:34:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3783         * hurd/hurd/signal.h (HURD_MSGPORT_RPC): Take new arg
3784         DEALLOC_REFPORT; deallocate the refport after use only if it
3785         evaluates to nonzero.
3786         * sysdeps/mach/hurd/kill.c: Pass DEALLOC_REFPORT arg of one.
3787         * hurd/hurdkill.c: Pass DEALLOC_REFPORT arg of zero.
3789         * hurd/hurdsig.c (abort_rpcs): Take new arg int *STATE_CHANGE; set
3790         *STATE_CHANGE to indicate whether or not we changed *STATE and it
3791         should be committed to the thread.
3792         (abort_all_rpcs): Take new arg LIVE; if nonzero and abort_rpcs changes
3793         state for a thread, do thread_set_state on that thread.  Don't use
3794         SS->intr_port for collecting reply ports, it is not safe to
3795         clobber that when suspending; instead, alloca a temporary array.
3796         (_hurd_internal_post_signal): Pass LIVE flag to abort_all_rpcs:
3797         zero when dying, one when suspending.  Pass new arg to abort_rpcs.
3799         * sysdeps/mach/hurd/stdio_init.c: Don't lock the file descriptor;
3800         HURD_FD_PORT_USE will.  Don't use critical sections around
3801         HURD_FD_PORT_USE invocations.
3803         * sysdeps/mach/hurd/stdio_init.c: Don't make pipes/FIFOs unbuffered.
3804         * sysdeps/posix/stdio_init.c: Likewise.
3806 Tue Feb 14 03:01:12 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3808         * hurd/hurd/fd.h (_hurd_fd_get): Don't do critical section
3809         locking; don't leave the descriptor locked on return.
3810         (HURD_FD_PORT_USE): Don't expect _hurd_fd_get to return the fd locked.
3811         Use a critical section around locking the descriptor.
3812         Check for an empty descriptor and return EBADF.
3813         * sysdeps/mach/hurd/dup2.c: Likewise.
3814         * sysdeps/mach/hurd/fcntl.c: Likewise.
3815         Use HURD_FD_PORT_USE macro for RPCs.
3816         * sysdeps/mach/hurd/sysd-stdio.c: Don't lock the descriptor before
3817         using HURD_FD_PORT_USE.
3818         * sysdeps/mach/hurd/defs.c (init_stdio): Don't expect _hurd_fd_get
3819         to lock the descriptor.
3820         * sysdeps/mach/hurd/stdio_init.c: Use critical sections while
3821         locking the descriptor.
3822         * sysdeps/mach/hurd/fdopen.c: Likewise.
3823         * hurd/fd-close.c: Likewise.
3824         Don't expect the descriptor to be locked on entry.
3825         Check for empty descriptor and return EBADF.
3827         Factor ctty RPC code for SIGTTIN/SIGTTOU generation out into
3828         new functions _hurd_ctty_input and _hurd_ctty_output, each
3829         called with (io_t port, io_t ctty, error_t (*rpc) (io_t)).
3830         * hurd/ctty-input.c: New file.
3831         * hurd/ctty-output.c: New file.
3832         * hurd/Makefile (dtable): Add ctty-input and ctty-output.
3833         * hurd/fd-read.c: Use _hurd_ctty_input.
3834         * hurd/fd-write.c: Use _hurd_ctty_output.
3835         * sysdeps/mach/hurd/ioctl.c: Likewise.
3836         * hurd/hurd/fd.h (_hurd_ctty_input, _hurd_ctty_output): Declare them.
3838 Mon Feb 13 11:36:12 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3840         * stdio/vfscanf.c (%e, %f, %g): Use strtod, __strtold, or __strtof
3841         as appropriate to the type.
3843         * sysdeps/ieee754/huge_val.h (__huge_val_t): New macro to avoid
3844         repeating the union.
3845         (HUGE_VAL, __huge_val): Use it.
3846         [__USE_GNU] (HUGE_VALf, HUGE_VALl): New macros, along with
3847         analogous macros to HUGE_VAL's: __huge_val[fl]_t, __HUGE_VAL[fl]_bytes.
3848         * stdlib/strtold.c (FLOAT_HUGE_VAL): Define this to HUGE_VALl.
3849         (STRTOF): Set to __strtold; define strtold as weak alias.
3850         * stdlib/strtof.c (FLOAT_HUGE_VAL): Define this to HUGE_VALf.
3851         (STRTOF): Set to __strtof; define strtof as weak alias.
3853         * sysdeps/ieee754/ieee754.h (union ieee754_float): New type.
3854         (IEEE754_FLOAT_BIAS): New macro.
3856         * sysdeps/ieee754/mpn2ldbl.c: Fix typos.
3858         * stdlib/testmb.c: Add tests from rfg for using normal chars as
3859         multibyte chars.
3861         * hurd/hurdmalloc.c (malloc_init): Add self reference to avoid not
3862         only the `defined but not used' warning, but also to avoid GCC
3863         optimizing out the entire function (!).
3865         * stdlib/wctomb.c: Include ctype.h.
3867         * Makerules (install-lib-non.a): Don't include $(non-lib.a).
3869         * hurd/hurdmalloc.c: Include string.h; #define bcopy using memcpy.
3871 Sat Feb 11 04:05:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3873         * stdio/printf_fp.c: Include "fpioconst.h".
3874         (_tens_p): Table moved to fpioconst.c, renamed to _fpioconst_pow10.
3875         (__printf_fp): All references changed.
3876         Don't bother computing THOUSANDS_SEP if GROUPING is empty.
3877         (group_number): Use memmove instead of memcpy, since operands overlap.
3878         * stdio/fpioconst.c: New file, tables broken out of stdio/printf_fp.c.
3879         * stdio/fpioconst.h: New file, header declaring the table data.
3880         * stdio/Makefile (aux): Add fpioconst.
3881         (distribute): Add fpioconst.h.
3882         * stdlib/strtod.c: Complete rewrite from drepper.
3883         * stdlib/strtof.c: New file.
3884         * stdlib/strtold.c: New file.
3885         * stdlib/Makefile (routines): Add strtof, strtold.
3886         * stdio/Makefile (routines): Add mpn2flt, mpn2dbl, mpn2ldbl.
3887         * sysdeps/stub/mpn2flt.c: New file.
3888         * sysdeps/stub/mpn2dbl.c: New file.
3889         * sysdeps/stub/mpn2ldbl.c: New file.
3890         * sysdeps/ieee754/mpn2flt.c: New file.
3891         * sysdeps/ieee754/mpn2dbl.c: New file.
3892         * sysdeps/ieee754/mpn2ldbl.c: New file.
3894         * Makerules (install-lib.a): Don't filter out $(non-lib.a).
3895         ($(install-lib.a) in $(libdir) rule): Elide ranlib command when $@
3896         appears in $(non-lib.a).
3898 Fri Feb 10 17:20:14 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3900         * stdlib/wctomb.c: A normal ASCII character translates to itself.
3901         * stdlib/mbtowc.c: Likewise.
3903 Thu Feb  9 03:55:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3905         * setjmp/setjmp.h (longjmp, _longjmp, __longjmp, siglongjmp):
3906         Remove `const' from prototypes.
3907         * sysdeps/m68k/__longjmp.c: Likewise.
3908         * setjmp/longjmp.c: Likewise.
3909         * sysdeps/i386/__longjmp.c: Likewise.
3911         * sysdeps/posix/tempname.c: Increment *IDX at beginning of loop,
3912         so when we return a name, it is incremented past the value that
3913         produces that same name.
3915         * stdio/fgets.c (fgets): Change `size_t' to `int' in prototype.  Sigh.
3916         * stdio/stdio.h (fgets): Likewise.
3918         * stdio/vfprintf.c (printf_unknown): Print ' for INFO->group flag.
3920         * hurd/fd-write.c: Don't clobber ERR with the msg_sig_post call
3921         when it's EBACKGROUND; we need to notice that it is EBACKGROUND
3922         and retry the RPC.
3923         * hurd/fd-read.c: Likewise.
3925 Wed Feb  8 05:01:11 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3927         * sysdeps/mach/sysdep.h (FATAL_PREPARE_INCLUDE): New macro, set to
3928         <mach/mig_support.h>.
3929         * assert/assert-perr.c [FATAL_PREPARE_INCLUDE]: Include it.
3930         * assert/assert.c: Likewise.
3931         * sysdeps/posix/libc_fatal.c: Likewise.
3933 Tue Feb  7 12:17:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3935         * stdio/stdio.h [__STRICT_ANSI__] (stdin, stdout, stderr): Define
3936         as macros, to satisfy ANSI pedants.
3938         * stdio/internals.c (flushbuf): When there is no new data after
3939         priming the stream, return without writing out the buffer.
3940         * stdio/Makefile (tests): Add bug7.
3941         * stdio/bug7.c: New file.
3943         * io/sys/stat.h (S_IFIFO, S_IFLNK, S_IFSOCK, S_ISFIFO, S_ISLNK,
3944         S_ISSOCK): Define only if the corresponding underlying __S_IF* macro
3945         is defined.
3947         * stdio/getdelim.c: Decrement COPY after getting a char from __fillbf.
3949         * stdio/Makefile (tests): Add errnobug.
3950         * stdio/errnobug.c: New file.
3952         * mach/mig_strncpy.c: Include string.h.
3954         * sysdeps/mach/sysdep.h: Don't #include <mach/mig_support.h>.  Its
3955         inlines cause trouble for files defining global register variables.
3957         * stdio/vfprintf.c: Use _strerror_internal for %m.
3959         * sysdeps/ieee754/dbl2mpn.c: Fixes from drepper for 64-bit limbs.
3961         * stdio/printf.h (struct printf_info): New member `group', for %' flag.
3962         * stdio/printf-prs.c (parse_printf_format): Grok %' flag and set flag.
3963         * stdio/vfprintf.c (group_number): New function.
3964         (vfprintf): Support %' flag for integer formats, by calling
3965         group_number after formatting the number in WORK.
3966         * stdio/printf_fp.c (guess_grouping, group_number): New functions.
3967         (__printf_fp): Implement `group' flag using them.
3969         * Makefile (include sysd-dirs): Protect with ifndef avoid-generated.
3970         (parent-clean): Remove sysd-rules, not sysdirs.
3971         (distclean): Pass avoid-generated=yes to submake.
3972         (distclean-1): Remove $(sysdep-$(distclean-1)).
3974         * Makerules (objects, objs): Depend on $(extra-objs) too.
3975         (include sysd-Makefile): Protect with ifndef avoid-generated.
3977         * Makeconfig (+defines, +gnu-stabs, gnu-as): Variables removed.
3978         (CPPFLAGS): Use $(defines) in place of $(+defines).
3979         Replace -D_LIBC with -include $(..)libc-symbols.h.
3981         * stdio/freopen.c: Set seen bit before calling fclose.
3983 Mon Feb  6 18:34:40 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
3985         * sysdeps/mach/hurd/setpriority.c: Keep track of numbers of
3986         successes and each kind of failure.  Return EPERM or EACCES only
3987         if every task failed that way.
3989         * sysdeps/mach/hurd/getpriority.c: Handle out of band buffers
3990         correctly.
3992         * sysdeps/mach/hurd/ptrace.c (PTRACE_ATTACH, PTRACE_DETACH): Stop
3993         or resume the process after frobbing.
3995         * hurd/hurdsig.c: Use spin lock operations on sigstate locks
3996         throughout.
3997         (_hurd_thread_sigstate): Don't lock the sigstate lock.
3998         (_hurd_internal_post_signal): New subfunction `mark_pending'; replace
3999         repeated sequences with calls to it.  Don't expect the sigstate
4000         lock to be held on entry; lock it just before examining sigaction.
4001         In handler case, check SS->critical_section after calling
4002         abort_rpcs; if set, mark the signal pending and resume the thread.
4003         * hurd/hurd/signal.h (_hurd_self_sigstate_unlocked): Function removed.
4004         (_hurd_self_sigstate): Don't lock the sigstate lock.
4005         (HURD_EINTR_RPC): Call _hurd_self_sigstate instead of
4006         _hurd_self_sigstate_unlocked.
4007         * hurd/msgportdemux.c: Don't expect _hurd_self_sigstate to lock
4008         the sigstate lock.
4009         * hurd/hurdexec.c: Use spin lock operations on sigstate lock.
4010         Don't expect _hurd_self_sigstate to lock it.  Fix critical section
4011         locking.
4012         * hurd/hurd-raise.c: Likewise.
4013         * sysdeps/mach/hurd/sigsuspend.c: Likewise.
4014         * sysdeps/mach/hurd/sigpending.c: Likewise.
4015         * sysdeps/mach/hurd/sigaltstack.c: Likewise.
4016         * sysdeps/mach/hurd/sigaction.c: Likewise.
4017         * sysdeps/mach/hurd/sigprocmask.c: Likewise.
4018         * hurd/fd-write.c: Likewise.
4019         * hurd/fd-read.c: Likewise.
4020         * sysdeps/mach/hurd/ioctl.c: Likewise.
4021         * sysdeps/mach/hurd/fork.c: Likewise.
4022         * sysdeps/mach/hurd/i386/sigreturn.c: Likewise.
4023         * sysdeps/mach/hurd/mips/sigreturn.c: Likewise.
4024         * sysdeps/mach/hurd/alpha/sigreturn.c: Likewise.
4025         * hurd/hurdmsg.c (get_int): Likewise.
4027         * stdio/vfprintf.c: Include stddef.h.  Fix typos in libio code.
4029         * stdio/vfprintf.c (__pad): Function renamed to __printf_pad, made
4030         global.
4031         (PAD): Caller changed.
4032         * stdio/printf_fp.c (__pad): Function removed.
4033         (PAD): Use __printf_pad instead.
4035 Sun Feb  5 17:59:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4037         Merged new FP printer by Ulrich Drepper.
4038         * stdio/printf_fp.c: Rewrite by drepper.
4039         * stdio/Makefile (routines): Add ldbl2mpn.
4040         * sysdeps/ieee754/ieee754.h (union ieee754_double): Add `ieee_nan'
4041         member.
4042         (union ieee854_long_double): New type, from drepper.
4043         (IEEE754_DOUBLE_BIAS, IEEE854_LONG_DOUBLE_BIAS): New macros.
4044         * sysdeps/ieee754/ldbl2mpn.c: New file, by drepper.
4045         * sysdeps/stub/ldbl2mpn.c: New file.
4046         * math/Makefile (routines): Add isinfl and isnanl.
4047         * sysdeps/ieee754/isinfl.c: New file.
4048         * sysdeps/stub/isinfl.c: New file.
4049         * sysdeps/ieee754/isnanl.c: New file.
4050         * sysdeps/stub/isnanl.c: New file.
4052         * malloc/malloc.c (__malloc_extra_blocks): New variable.
4053         (malloc): When getting more core, get __malloc_extra_blocks extra;
4054         put the new block at the end of the free list and let the next loop
4055         iteration use the initial portion of it.
4056         * malloc/free.c (_free_internal): Account for twice
4057         __malloc_extra_blocks in deciding if we have so much extra memory
4058         we should return it to the system.
4059         * malloc/malloc.h (__malloc_extra_blocks): Declare it.
4060         * posix/glob.c (prefix_array, glob_pattern_p): Remove gratuitous
4061         const in parameter decl.
4063         * sysdeps/unix/mips/sysdep.h (ENTRY): Add `.ent' directive.
4065 Fri Feb  3 18:15:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4067         * munch.awk (EXTERNS): Print decls using __P instead of EXFUN.
4069         * sysdeps/mips/setjmp_aux.c: Use ENV[0].__jmpbuf[0].
4070         * sysdeps/mips/bsd-_setjmp.S: Use `li' insn instead of `move'.
4071         * sysdeps/mips/bsd-setjmp.S: Likewise.
4072         * sysdeps/mips/__longjmp.c: Remove obsolete __NORETURN keyword.
4073         * sysdeps/mach/hurd/mips/trampoline.c (_hurd_setup_sighandler):
4074         Use `long int' for sigcode.  Use explicit register numbers instead
4075         of names.
4076         (_hurdsig_rcv_interrupted_p): Use _hurdsig_catch_fault.
4077         * sysdeps/mach/hurd/mips/exc2signal.c: Use `long int' for sigcode.
4079 Thu Feb  2 20:06:45 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4081         * hurd/hurdmalloc.c: Remove bogus bcopy decl.
4083         * mach/mig_strncpy.c: Add missing `const' in prototype.  Rewritten
4084         using __stpncpy.
4086         * io/ftw.c (ftw, ftw_dir): Treat ENOENT from stat like EACCES.
4088         * stdio/vfprintf.c: Set PREC to zero for %. without following digit.
4090 Tue Jan 31 13:49:57 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4092         * mach/mig_strncpy.c: Include mach.h instead of string.h.  Use
4093         vm_size_t instead of size_t for arg and return types.
4095         * mach/mach_init.c: Don't declare __mig_init; mach/mig_support.h
4096         already does.
4098 Mon Jan 30 00:33:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4100         * set-hooks.h (RUN_HOOK): Dereference PTR properly.
4102         * configure.in (friendly stddef.h check): Write override defn for
4103         `stddef.h' Make variable.
4104         (AC_LINK_FILES): Use `echo ...` to avoid " " appearing nonempty.
4106         * configure.in (host_os=sysv4*|solaris2*): Set elf=yes.
4108         * Rules ($(objpfx)dummy.o): Write an empty function, not just an
4109         empty file.
4111         * sysdeps/sparc/Makefile (sysdep-realclean): New variable.
4113 Sat Jan 28 03:38:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4115         * Makefile (distribute): Remove gnu-stabs.h; add libc-symbols.h.
4117         * sysdeps/mach/sysdep.h [ASSEMBLER]: Protect include of
4118         mach/machine/syscall_sw.h with this.
4120 Fri Jan 27 18:33:20 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4122         * hurd/hurd/signal.h: Include <hurd/msg.h>, and <spin-lock.h>
4123         instead of <lock-intern.h>.
4124         (struct hurd_sigstate): Member `lock' changed to a `spin_lock_t'.
4125         (_hurd_critical_section_lock): Use spin lock operators.
4126         Don't hold the sigstate lock, unlock it after setting the flag.
4127         (_hurd_critical_section_unlock): Take the sigstate lock
4128         to clear the flag; while holding it, check pending signals.  After
4129         unlocking, sig_post ourselves if there were pending signals.
4131         * hurd/catch-exc.c (_S_catch_exception_raise): Don't take the
4132         sigstate lock.  If it is locked, clear SS->critical_section and
4133         SS->context, and unlock it.
4135         * sysdeps/mach/sysdep.h (EXT, LEXT): New macros.
4137         * set-init.c (__libc_init) [HAVE_ELF]: Run _init and atexit (_fini).
4138         * munch-tmpl.c: Likewise.
4140         * mach/Makefile (routines): Don't filter out syscall_% from
4141         $(mach-syscalls).
4143 Fri Jan 27 17:53:49 1995  Jim Meyering  (meyering@comco.com)
4145         * posix/fnmatch.c: Declare errno if it's not defined.
4146         That's simpler than testing #if !defined(__GNU_LIBRARY__)
4147         && !defined(STDC_HEADERS).
4149 Fri Jan 27 15:40:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4151         * csu/Makefile: New file.
4152         * csu/initfini.c: New file.
4153         * Makefile (+other_dirs): Add csu.
4154         (+init): Variable renamed to libc-init.  All references changed.
4155         (aux): Remove start.
4156         (install-lib): Variable removed.
4157         (crt0.o, Mcrt1.o  crt1.o): Targets removed.
4159         * mach/Machrules (static deps of RPC_*.o): Add $(..)libc-symbols.h
4160         and $(objpfx)config.h.
4161         (static deps of RPC alias *.o): Removed.
4163         * sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h [ASSEMBLER]:
4164         Protect macros with this.
4165         * sysdeps/unix/bsd/osf1/alpha/sysdep.h: Likewise.
4166         * sysdeps/unix/bsd/sequent/i386/sysdep.h: Likewise.
4167         * sysdeps/unix/bsd/vax/sysdep.h: Likewise.
4168         * sysdeps/unix/bsd/sun/m68k/sysdep.h: Likewise.
4169         * sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h: Likewise.
4170         * sysdeps/unix/mips/sysdep.h: Likewise.
4172 Thu Jan 26 00:02:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4174         * Makerules (compile.[Sc]): Match gcc in $(CC) better.
4175         (BUILD_CFLAGS): Instead of $(config-defines), use -include config.h.
4177         * hurd/intr-rpc.awk: Emit weak alias.
4179         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Call getpgrp instead of
4180         __getpgrp.
4182         * sysdeps/unix/bsd/hp/m68k/sysdep.h [ASSEMBLER]: Protect macros with
4183         this.
4184         * sysdeps/unix/i386/sysdep.h: Likewise.
4185         * sysdeps/unix/sparc/sysdep.h: Likewise.
4187         * io/ftw.c: Avoid `ret' as variable name.
4188         * posix/glob.c: Likewise.
4190         * ctype/ctype.h (_ISalpha): Define as its own bit.
4191         * locale/C-ctype_ct.c (__ctype_b_C): Set _ISalpha bit in all letters.
4193         * stdlib/exit.c [HAVE_GNU_LD]: Protect #include "set-hooks.h" and
4194         DEFINE_HOOK with this.
4196 Wed Jan 25 00:45:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4198         * hurd/hurdinit.c: Use DECLARE_HOOK instead of `extern DEFINE_HOOK'.
4199         * mach/spin-solid.c (spin_lock_solid): Define as weak alias to __name.
4200         * mach/shortcut.awk: Emit weak alias.
4201         * mach/spin-lock.c: Add weak aliases for all spin-lock.h functions.
4202         * mach/mach_init.c (mach_init, vm_page_size): Defin weak aliases for
4203         __ names.
4204         * mach/Makefile (lock): Remove spin-syms.
4205         (routines): Remove __ names, vm_page_size, msgserver_t.
4206         ($(mach-syscalls) rule): Generate files without __, add weak alias.
4207         Remove symbol alias file rule.
4208         ($(mach-shortcuts) rule): Likewise.
4209         [!mach-shortcuts] (user-interfaces): Filter out mach/mach4 too.
4210         * mach/Machrules (if-calls.c): Variable and rule removed.
4211         (interface-headers): Don't add $($(if)-calls).
4212         (transform-user-stub): Define to add weak alias.
4213         * set-hooks.h: Use new libc-symbols.h set access macros.
4214         * time/Makefile (routines): Remove __ names.
4215         (aux): Variable removed.
4216         * hurd/Makefile: Likewise.
4217         * sysdeps/unix/start.c (environ): Define as weak alias for __environ.
4218         (data_start): Define as weak alias for __data_start.
4219         * sysdeps/mach/hurd/start.c: Likewise.
4220         * sysdeps/unix/sparc/start.c: Likewise.
4221         * sysdeps/unix/make_errlist.c: Emit weak aliases for sys_nerr and
4222         sys_errlist.
4223         * sysdeps/mach/hurd/errlist.awk: Likewise.
4224         * sysdeps/unix/bsd/osf1/alpha/start.S (environ): Define as weak
4225         alias for __environ.
4226         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
4227         * sysdeps/stub/setdomain.c: Use new stub_warning macro.
4228         * sysdeps/stub/getdomain.c: Likewise.
4229         * sysdeps/stub/vhangup.c: Likewise.
4230         * sysdeps/stub/swapon.c: Likewise.
4231         * sysdeps/stub/sendmsg.c: Likewise.
4232         * sysdeps/stub/recvmsg.c: Likewise.
4233         * sysdeps/stub/acct.c: Likewise.
4234         * sysdeps/stub/isinf.c: Likewise.  Add weak alias isinf for __isinf.
4235         * sysdeps/mach/hurd/_exit.c: Remove obsolete __NORETURN keyword.
4236         * sysdeps/posix/libc_fatal.c: Likewise.
4237         * sysdeps/i386/abort.c: Likewise.
4238         * sysdeps/i386/__longjmp.c: Likewise.
4239         * sysdeps/generic/make_siglist.c: Emit defn always for
4240         _sys_siglist.  Emit weak alias to sys_siglist.
4241         * sysdeps/generic/atan.c: Remove obsolete __CONSTVALUE keyword.
4242         * sysdeps/ieee754/log10.c: Likewise.
4243         * time/difftime.c: Likewise.
4244         * stdlib/random.c (srand): Define as weak alias for __srandom.
4245         * stdlib/exit.c: Remove obsolete __NORETURN keyword.  Use set-hooks
4246         macros for __libc_atexit.
4247         * stdlib/Makefile (routines): Remove __random, srand.
4248         * stdio/gets.c: Use new link_warning macro instead of old
4249         warn_references.
4250         * stdio/Makefile (routines): Remove __ names.
4251         (aux): Remove syms-stdio.
4252         * socket/Makefile (routines): Added e on getpeernam and getsocknam.
4253         * setjmp/longjmp.c: Remove obsolete __NORETURN keyword.
4254         * setjmp/Makefile (routines): Remove _longjmp, siglongjmp.
4255         * setjmp/setjmp.h: Replace __NORETURN keyword with __attribute__ uses.
4256         * stdio/stdio.h: Likewise.
4257         * misc/Makefile (routines): Remove __ names.
4258         (aux): Remove data_start.
4259         * sysdeps/mach/hurd/defs.c: Don't include gnu-stabs.h.
4260         * sysdeps/mach/hurd/brk.c: Likewise.
4261         * hurd/hurdid.c: Likewise.
4262         * hurd/hurdpid.c: Likewise.
4263         * hurd/openport.c: Likewise.
4264         * hurd/hurdsock.c: Likewise.
4265         * hurd/hurdsig.c: Likewise.
4266         * hurd/hurdrlimit.c: Likewise.
4267         * hurd/hurdmalloc.c: Likewise.
4268         * hurd/dtable.c: Likewise.
4269         * hurd/setauth.c: Likewise.
4270         * misc/progname.c: Likewise.
4271         * misc/init-misc.c: Likewise.
4272         * sysdeps/generic/vfork.c: Likewise.
4273         * sysdeps/unix/bsd/init-posix.c: Likewise.
4274         * math/math.h: Replace __CONSTVALUE keyword with __attribute__ uses.
4275         * time/time.h: Likewise.
4276         * math/Makefile (routines): Remove __ names.
4277         * io/Makefile: Likewise.
4278         * termios/Makefile: Likewise.
4279         * resource/Makefile: Likewise.
4280         * signal/Makefile: Likewise.
4281         * dirent/Makefile: Likewise.
4282         * assert/assert.h: Replace __NORETURN keyword with __attribute__
4283         uses.  Functions return void and macros deal with this.
4284         * assert/assert-perr.c: Remove obsolete __NORETURN keyword.
4285         Return void.  Don't include gnu-stabs.h.
4286         * assert/assert.c: Likewise.
4287         * posix/Makefile (routines): Remove __ names, setpgrp.  Add
4288         getpgid.
4289         (aux): Remove environ.
4290         * stdlib/stdlib.h (abort, exit): Replace __NORETURN keyword with
4291         __attribute__ use.
4292         * posix/unistd.h (_exit): Likewise.
4293         (__getpgrp, __setpgrp): Declarations removed.
4294         (__getpgid, getpid): Declare these.
4296         * configure.in (host_os=gnuelf|linuxelf): Set elf=yes.  Do AC_SUBST
4297         for gnu_ld, gnu_as, elf, and weak.  Call AC_LINK_FILEES on
4298         $libc_link_{sources,dests}.
4299         * sysdeps/unix/configure.in: Remove __ from file names.  Don't
4300         create files, just add to libc_link_{dests,sources}.
4302         * config.make.in (gnu-as, gnu-ld, elf, weak-symbols): New variables.
4304         * config.h.in: Add #undefs used by sysdeps configures.
4306         * sysdeps/unix/sysv/sysv4/Makefile (sysdep_routines): Removed
4307         __setpgid, __getpgid.
4308         * sysdeps/unix/sysv/sco3.2.4/setpgid.c: Included file was renamed
4309         from setpgrp.c.
4310         * sysdeps/unix/sysv/sco3.2.4/getpgid.c: Included file was renamed
4311         from __getpgrp.c.
4312         * sysdeps/unix/bsd/getpgrp.c: File removed.
4313         * sysdeps/generic/getpgrp.c: Moved from sysdeps/stub/getpgrp.c.
4314         Call __getpgid with zero.
4315         * sysdeps/stub/setpgid.c: Renamed __setpgrp to __setpgid, added
4316         weak aliases setpgid and setpgrp.
4317         * sysdeps/unix/sysv/irix4/setpgid.S: Likewise.
4318         * sysdeps/unix/common/setpgid.S: Likewise.
4319         * sysdeps/mach/hurd/setpgid.c: Likewise.
4320         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
4321         Use subcall 5 to __pgrpsys.
4322         * sysdeps/stub/getpgid.c: Renamed __getpgrp to __getpgid, added
4323         weak alias getpgid.
4324         * sysdeps/mach/hurd/getpgid.c: Likewise.
4325         * sysdeps/unix/sysv/irix4/getpgid.S: Likewise.
4326         * sysdeps/unix/common/getpgid.S: Likewise.
4327         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
4328         Use subcall 4 to __pgrpsys.
4329         * sysdeps/stub/__getpgrp.c: Renamed to getpgid.c.
4330         * sysdeps/unix/sysv/sysv4/__getpgrp.c: Renamed to getpgid.c.
4331         * sysdeps/unix/sysv/sco3.2.4/__getpgrp.c: Renamed to getpgid.c.
4332         * sysdeps/unix/sysv/irix4/__getpgrp.S: Renamed to getpgid.S.
4333         * sysdeps/unix/common/__getpgrp.S: Renamed to getpgid.S.
4334         * sysdeps/mach/hurd/__getpgrp.c: Renamed to getpgid.c.
4335         * sysdeps/stub/setpgrp.c: Renamed to setpgid.c.
4336         * sysdeps/unix/sysv/sysv4/setpgrp.c: Renamed to setpgid.c.
4337         * sysdeps/unix/sysv/sco3.2.4/setpgrp.c: Renamed to setpgid.c.
4338         * sysdeps/unix/sysv/irix4/setpgrp.S: Renamed to setpgid.S.
4339         * sysdeps/unix/common/setpgrp.S: Renamed to setpgid.S.
4340         * sysdeps/mach/hurd/setpgrp.c: Renamed to setpgid.c.
4342         * sysdeps/unix/bsd/hp/m68k/getdents.S: Included file was renamed
4343         from __getdents.S.
4345         * sysdeps/posix/defs.c: Don't include gnu-stabs.h.
4346         * sysdeps/stub/sigpending.c: Use new libc-symbols.h macro for stub
4347         warning.
4348         * sysdeps/stub/fexecve.c: Likewise.
4349         * sysdeps/stub/fchdir.c: Likewise.
4350         * sysdeps/stub/fchflags.c: Likewise.
4351         * sysdeps/stub/chflags.c: Likewise.
4353         * sysdeps/m68k/__longjmp.c: Remove __NORETURN; it's obsolete.
4354         * sysdeps/generic/abort.c: Likewise.
4355         * sysdeps/ieee754/ldexp.c: Remove __CONSTVALUE; it's obsolete.
4357         * hurd/hurdioctl.c: Include hurd/ioctl.h.
4358         (_hurd_ioctl_handler_lists): Define this set.
4359         (_hurd_lookup_ioctl_handler): New function.
4360         * hurd/hurd/fd.h: ioctl handler stuff moved to hurd/ioctl.h.
4361         * hurd/hurd/ioctl.h: New file, broken out of hurd/fd.h.
4362         (_hurd_lookup_ioctl_handler): Declare it.
4363         (ioctl_handler_t): New typedef.  Use it throughout.
4364         * sysdeps/mach/hurd/ioctl.c: Include hurd/ioctl.h.
4365         (_hurd_ioctl_handler_lists): Don't define.
4366         (__ioctl): Call _hurd_lookup_ioctl_handler.
4368         * stdlib/strtol.c (maxquad): Make this const.
4369         [__GNUC__ == 2 && __GNUC_MINOR__ < 7]: Only use maxquad in this case.
4371         * posix/glob/configure.in: Put AC_AIX and AC_MINIX early, before
4372         any compile tests.
4374         * sysdeps/mach/hurd/setitimer.c (timer_thread): Call
4375         __msg_sig_post_request, not __sig_post_request.
4377         * misc/getusersh.c: Renamed to getusershell.c.
4378         * sysdeps/stub/sethostnam.c: Renamed to sethostname.c.
4379         * sysdeps/unix/inet/sethostnam.S: Renamed to sethostname.S.
4380         * sysdeps/unix/sysv/sysv4/sethostnam.c: Renamed to sethostname.c.
4381         * sysdeps/mach/hurd/sethostnam.c: Renamed to sethostname.c.
4383 Tue Jan 24 00:14:30 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4385         * sysdeps/stub/settod.c: Renamed to settimeofday.c.
4386         * sysdeps/unix/bsd/settod.S: Renamed to settimeofday.c.
4387         * sysdeps/unix/sysv/settod.c: Renamed to settimeofday.c.
4388         * sysdeps/mach/hurd/settod.c: Renamed to settimeofday.c.
4389         * sysdeps/stub/setitmr.c: Renamed to setitimer.c.
4390         * sysdeps/unix/common/setitmr.S: Renamed to setitimer.S.
4391         * sysdeps/mach/hurd/setitmr.c: Renamed to setitimer.c.
4392         * sysdeps/posix/fpathcon.c: Renamed to fpathconf.c.
4393         * sysdeps/stub/fpathcon.c: Renamed to fpathconf.c.
4394         * sysdeps/unix/sysv/irix4/fpathcon.c: Renamed to fpathconf.c.
4395         * sysdeps/stub/getprio.c: Renamed to getpriority.c.
4396         * sysdeps/unix/sysv/irix4/getprio.c: Renamed to getpriority.c.
4397         * sysdeps/unix/common/getprio.S: Renamed to getpriority.S.
4398         * sysdeps/mach/hurd/getprio.c: Renamed to getpriority.c.
4399         * sysdeps/stub/setprio.c: Renamed to setpriority.c.
4400         * sysdeps/unix/sysv/irix4/setprio.c: Renamed to setpriority.c.
4401         * sysdeps/unix/common/setprio.S: Renamed to setpriority.S.
4402         * sysdeps/mach/hurd/setprio.c: Renamed to setpriority.c.
4403         * sysdeps/stub/getpeernam.c: Renamed to getpeername.c.
4404         * sysdeps/unix/inet/getpeernam.S: Renamed to getpeername.S.
4405         * sysdeps/unix/sysv/linux/getpeernam.S: Renamed to getpeername.S.
4406         * sysdeps/mach/hurd/getpeernam.c: Renamed to getpeername.c.
4407         * sysdeps/stub/getsocknam.c: Renamed to getsockname.c.
4408         * sysdeps/unix/inet/getsocknam.S: Renamed to getsockname.S.
4409         * sysdeps/unix/sysv/linux/getsocknam.S: Renamed to getsockname.S.
4410         * sysdeps/mach/hurd/getsocknam.c: Renamed to getsockname.c.
4411         * sysdeps/stub/sigaltstk.c: Renamed to sigaltstack.c.
4412         * sysdeps/unix/bsd/bsd4.4/sigaltstk.S: Renamed to sigaltstack.S.
4413         * sysdeps/unix/sysv/sysv4/sigaltstk.S: Renamed to sigaltstack.S.
4414         * sysdeps/mach/hurd/sigaltstk.c: Renamed to sigaltstack.c.
4416         * sysdeps/mach/hurd/i386/sigreturn.c: Call __msg_sig_post instead
4417         of __sig_post.
4418         * sysdeps/mach/hurd/sigsuspend.c: Likewise.
4419         * sysdeps/mach/hurd/kill.c: Likewise.
4420         * sysdeps/mach/hurd/sigprocmask.c: Likewise.
4422         * misc/sys/cdefs.h (__NORETURN, __CONSTVALUE): Macros removed.
4423         [!__GNUC__ || __GNUC__<2] (__attribute__): Define to empty.
4425         * sysdeps/stub/remove.c: New file.
4426         * sysdeps/posix/remove.c: New file.
4428 Mon Jan 23 03:26:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4430         * time/mktime.c [weak_alias] (timelocal): Define as weak alias for
4431         mktime.
4432         * mach/mig_strncpy.c (mig_strncpy): Define as weak alias for
4433         __mig_strncpy.
4434         * mach/msg-destroy.c: Renamed from __msg_dest.c.
4435         (mach_msg_destroy): Define as weak alias for __mach_msg_destroy.
4436         * mach/setup-thread.c (mach_setup_thread): Define as weak alias.
4437         * time/tzset.c (tzname, daylight, timezone): Define as weak
4438         aliases for __ names.
4439         * hurd/hurdkill.c (hurd_sig_post): Define as weak alias.
4440         * hurd/hurdlookup.c: Add weak aliases for non-__ names.
4441         * Makefile (+init): Test $(gnu-ld)=yes, not for $(+gnu-stabs)
4442         being defined.
4444 Sun Jan 22 15:19:51 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4446         * string/Makefile (routines): Remove __ names, index, rindex, and
4447         bcmp.
4448         * sysdeps/alpha/strchr.c [weak_alias] (index): Define as weak
4449         alias for strchr.
4450         * sysdeps/generic/strchr.c: Likewise.
4451         * sysdeps/generic/strrchr.c [weak_alias] (rindex): Define as weak
4452         alias for strrchr.
4453         * sysdeps/generic/memcmp.c [weak_alias] (bcmp): Define as weak
4454         alias for memcmp.
4456         * malloc/free.c (cfree): Define this function, with weak_alias if
4457         available, otherwise a C function.
4458         * malloc/Makefile (gmalloc-routines): Remove cfree.
4460 Sat Jan 21 08:08:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
4462         * stdio/fseek.c: Do move bufp by O when that puts it exactly at
4463         get_limit.  This has the effect of no-op'ing properly for zero.
4465         * configure.in: Add AC_CONFIG_HEADER(config.h).
4466         (--with-elf, --with-weak-symbols): Grok these and define HAVE_*.
4467         * config.h.in: New file.
4469         * setjmp/longjmp.c: Add weak aliases _longjmp, siglongjmp.
4470         All code converted to use weak symbols, defined in the files which
4471         define the real code (with the __ names, the non-__ names are weak).
4472         All old symbol alias files removed.
4473         Many files renamed to remove __ prefix since there is now just
4474         the one file for both the __ and non-__ name for each function.
4475         * libc-symbols.h: New file.
4476         * set-hooks.h: Use libc-symbols.h macros for accessing symbol
4477         sets.
4478         * gnu-stabs.h: Prepend #error this file is obsolete.
4479         * sysdeps/ieee754/ldexp.c: Add weak aliases scalb and __scalb.
4480         * sysdeps/stub/__access.c: Renamed to access.c; added weak alias
4481         access.
4482         * sysdeps/unix/common/__access.S: Likewise.
4483         * sysdeps/mach/hurd/__access.c: Likewise.
4484         * sysdeps/stub/__adjtime.c: Renamed to adjtime.c; added weak alias
4485         adjtime.
4486         * sysdeps/unix/common/__adjtime.S: Likewise.
4487         * sysdeps/mach/__adjtime.c: Likewise.
4488         * sysdeps/mach/hurd/__adjtime.c: Likewise.
4489         * sysdeps/stub/__brk.c: Renamed to brk.c; added weak alias brk.
4490         * sysdeps/unix/bsd/sun/m68k/__brk.S: Likewise.
4491         * sysdeps/unix/bsd/vax/__brk.S: Likewise.
4492         * sysdeps/unix/bsd/hp/m68k/__brk.S: Likewise.
4493         * sysdeps/unix/bsd/osf1/alpha/__brk.S: Likewise.
4494         * sysdeps/unix/i386/__brk.S: Likewise.
4495         * sysdeps/unix/sparc/__brk.S: Likewise.
4496         * sysdeps/unix/mips/__brk.S: Likewise.
4497         * sysdeps/mach/hurd/__brk.c: Likewise.
4498         * sysdeps/standalone/__brk.c: Likewise.
4499         * sysdeps/stub/__chdir.c: Renamed to chdir.c; added weak alias chdir.
4500         * sysdeps/unix/__chdir.S: Likewise.
4501         * sysdeps/mach/hurd/__chdir.c: Likewise.
4502         * sysdeps/stub/__chmod.c: Renamed to chmod.c; added weak alias chmod.
4503         * sysdeps/unix/__chmod.S: Likewise.
4504         * sysdeps/mach/hurd/__chmod.c: Likewise.
4505         * sysdeps/stub/__chown.c: Renamed to chown.c; added weak alias chown.
4506         * sysdeps/unix/__chown.S: Likewise.
4507         * sysdeps/mach/hurd/__chown.c: Likewise.
4508         * sysdeps/stub/__close.c: Renamed to close.c; added weak alias close.
4509         * sysdeps/unix/__close.S: Likewise.
4510         * sysdeps/mach/hurd/__close.c: Likewise.
4511         * sysdeps/standalone/__close.c: Likewise.
4512         * sysdeps/generic/__copysign.c: Renamed to copysign.c; added weak
4513         alias copysign.
4514         * sysdeps/ieee754/__copysign.c: Likewise.
4515         * sysdeps/alpha/__copysign.c: Likewise.
4516         * sysdeps/ieee754/__drem.c: Renamed to drem.c; added weak alias drem.
4517         * sysdeps/m68k/fpu/__drem.c: Likewise.
4518         * sysdeps/stub/__drem.c: Likewise.
4519         * sysdeps/posix/__dup.c: Renamed to dup.c; added weak alias dup.
4520         * sysdeps/stub/__dup.c: Likewise.
4521         * sysdeps/unix/__dup.S: Likewise.
4522         * sysdeps/posix/__dup2.c: Renamed to dup2.c; added weak alias dup2.
4523         * sysdeps/stub/__dup2.c: Likewise.
4524         * sysdeps/unix/sysv/sysv4/__dup2.c: Likewise.
4525         * sysdeps/unix/sysv/irix4/__dup2.c: Likewise.
4526         * sysdeps/unix/common/__dup2.S: Likewise.
4527         * sysdeps/mach/hurd/__dup2.c: Likewise.
4528         * sysdeps/stub/__execve.c: Renamed to execve.c; added weak alias
4529         execve.
4530         * sysdeps/unix/__execve.S: Likewise.
4531         * sysdeps/mach/hurd/__execve.c: Likewise.
4532         * sysdeps/generic/__expm1.c: Renamed to expm1.c; added weak alias
4533         expm1.
4534         * sysdeps/m68k/fpu/__expm1.c: Likewise.
4535         * sysdeps/stub/__fchmod.c: Renamed to fchmod.c; added weak alias
4536         fchmod.
4537         * sysdeps/unix/common/__fchmod.S: Likewise.
4538         * sysdeps/mach/hurd/__fchmod.c: Likewise.
4539         * sysdeps/stub/__fchown.c: Renamed to fchown.c; added weak alias
4540         fchown.
4541         * sysdeps/unix/common/__fchown.S: Likewise.
4542         * sysdeps/mach/hurd/__fchown.c: Likewise.
4543         * sysdeps/stub/__fcntl.c: Renamed to fcntl.c; added weak alias fcntl.
4544         * sysdeps/unix/__fcntl.S: Likewise.
4545         * sysdeps/mach/hurd/__fcntl.c: Likewise.
4546         * math/__finite.c: Renamed to finite.c; added weak alias finite.
4547         * sysdeps/posix/__flock.c: Renamed to flock.c; added weak alias flock.
4548         * sysdeps/stub/__flock.c: Likewise.
4549         * sysdeps/unix/bsd/__flock.S: Likewise.
4550         * sysdeps/mach/hurd/__flock.c: Likewise.
4551         * hurd/__fopenport.c: Renamed to fopenport.c; added weak alias
4552         fopenport.
4553         * sysdeps/stub/__fork.c: Renamed to fork.c; added weak alias fork.
4554         * sysdeps/unix/__fork.S: Likewise.
4555         * sysdeps/unix/bsd/osf1/alpha/__fork.S: Likewise.
4556         * sysdeps/unix/i386/__fork.S: Likewise.
4557         * sysdeps/unix/sparc/__fork.S: Likewise.
4558         * sysdeps/unix/mips/__fork.S: Likewise.
4559         * sysdeps/mach/hurd/__fork.c: Likewise.
4560         * sysdeps/posix/__fpathcon.c: Renamed to fpathcon.c; added weak
4561         alias fpathconf.
4562         * sysdeps/stub/__fpathcon.c: Likewise.
4563         * sysdeps/unix/sysv/irix4/__fpathcon.c: Likewise.
4564         * sysdeps/stub/__fstat.c: Renamed to fstat.c; added weak alias fstat.
4565         * sysdeps/unix/__fstat.S: Likewise.
4566         * sysdeps/unix/sysv/sysv4/i386/__fstat.S: Likewise.
4567         * sysdeps/mach/hurd/__fstat.c: Likewise.
4568         * stdio/__getdelim.c: Renamed to getdelim.c; added weak alias
4569         getdelim.
4570         * sysdeps/stub/__getdents.c: Renamed to getdents.c; added weak
4571         alias getdents.
4572         * sysdeps/unix/__getdents.c: Likewise.
4573         * sysdeps/unix/bsd/sun/__getdents.S: Likewise.
4574         * sysdeps/unix/bsd/hp/m68k/__getdents.S: Likewise.
4575         * sysdeps/unix/bsd/ultrix4/__getdents.S: Likewise.
4576         * sysdeps/unix/bsd/bsd4.4/__getdents.S: Likewise.
4577         * sysdeps/unix/bsd/osf1/alpha/__getdents.S: Likewise.
4578         * sysdeps/unix/sysv/__getdents.c: Likewise.
4579         * sysdeps/mach/hurd/__getdents.c: Likewise.
4580         * hurd/__getdport.c: Renamed to getdport.c; added weak alias getdport.
4581         * sysdeps/posix/__getdtsz.c: Renamed to getdtsz.c; added weak
4582         alias getdtablesize.
4583         * sysdeps/stub/__getdtsz.c: Likewise.
4584         * sysdeps/unix/bsd/__getdtsz.S: Likewise.
4585         * sysdeps/unix/sysv/sysv4/__getdtsz.c: Likewise.
4586         * sysdeps/mach/hurd/__getdtsz.c: Likewise.
4587         * sysdeps/stub/__getegid.c: Renamed to getegid.c; added weak alias
4588         getegid.
4589         * sysdeps/unix/__getegid.S: Likewise.
4590         * sysdeps/mach/hurd/__getegid.c: Likewise.
4591         * sysdeps/stub/__geteuid.c: Renamed to geteuid.c; added weak alias
4592         geteuid.
4593         * sysdeps/unix/__geteuid.S: Likewise.
4594         * sysdeps/mach/hurd/__geteuid.c: Likewise.
4595         * sysdeps/stub/__getgid.c: Renamed to getgid.c; added weak alias
4596         getgid.
4597         * sysdeps/unix/__getgid.S: Likewise.
4598         * sysdeps/mach/hurd/__getgid.c: Likewise.
4599         * sysdeps/stub/__getgrps.c: Renamed to getgroups.c; added weak
4600         alias getgroups.
4601         * sysdeps/unix/bsd/sequent/i386/__getgrps.S: Likewise.
4602         * sysdeps/unix/sysv/sco3.2.4/__getgrps.c: Likewise.
4603         * sysdeps/unix/sysv/irix4/__getgrps.c: Likewise.
4604         * sysdeps/unix/common/__getgrps.S: Likewise.
4605         * sysdeps/mach/hurd/__getgrps.c: Likewise.
4606         * sysdeps/stub/__gethstnm.c: Renamed to gethostname.c; added weak
4607         alias gethostname.
4608         * sysdeps/unix/inet/__gethstnm.S: Likewise.
4609         * sysdeps/unix/sysv/__gethstnm.c: Likewise.
4610         * sysdeps/unix/sysv/sysv4/__gethstnm.c: Likewise.
4611         * sysdeps/mach/hurd/__gethstnm.c: Likewise.
4612         * sysdeps/stub/__getitmr.c: Renamed to getitimer.c; added weak
4613         alias getitimer.
4614         * sysdeps/unix/common/__getitmr.S: Likewise.
4615         * sysdeps/mach/hurd/__getitmr.c: Likewise.
4616         * stdio/__getline.c: Renamed to getline.c; added weak alias getline.
4617         * sysdeps/posix/__getpgsz.c: Renamed to getpagesize.c; added weak
4618         alias getpagesize.
4619         * sysdeps/stub/__getpgsz.c: Likewise.
4620         * sysdeps/unix/__getpgsz.c: Likewise.
4621         * sysdeps/unix/bsd/__getpgsz.S: Likewise.
4622         * sysdeps/unix/sysv/sysv4/__getpgsz.c: Likewise.
4623         * sysdeps/mach/__getpgsz.c: Likewise.
4624         * sysdeps/stub/__getpid.c: Renamed to getpid.c; added weak alias
4625         getpid.
4626         * sysdeps/unix/__getpid.S: Likewise.
4627         * sysdeps/mach/hurd/__getpid.c: Likewise.
4628         * sysdeps/stub/__getppid.c: Renamed to getppid.c; added weak alias
4629         getppid.
4630         * sysdeps/unix/__getppid.S: Likewise.
4631         * sysdeps/mach/hurd/__getppid.c: Likewise.
4632         * sysdeps/posix/__gettod.c: Renamed to gettimeofday.c; added weak
4633         alias gettimeofday.
4634         * sysdeps/stub/__gettod.c: Likewise.
4635         * sysdeps/unix/sysv/irix4/__gettod.c: Likewise.
4636         * sysdeps/unix/common/__gettod.S: Likewise.
4637         * sysdeps/mach/__gettod.c: Likewise.
4638         * sysdeps/stub/__getuid.c: Renamed to getuid.c; added weak alias
4639         getuid.
4640         * sysdeps/unix/__getuid.S: Likewise.
4641         * sysdeps/mach/hurd/__getuid.c: Likewise.
4642         * sysdeps/generic/__infnan.c: Renamed to infnan.c; added weak
4643         alias infnan.
4644         * sysdeps/ieee754/__infnan.c: Likewise.
4645         * sysdeps/vax/__infnan.c: Likewise.
4646         * sysdeps/stub/__ioctl.c: Renamed to ioctl.c; added weak alias ioctl.
4647         * sysdeps/unix/__ioctl.S: Likewise.
4648         * sysdeps/mach/hurd/__ioctl.c: Likewise.
4649         * sysdeps/posix/__isatty.c: Renamed to isatty.c; added weak alias
4650         isatty.
4651         * sysdeps/stub/__isatty.c: Likewise.
4652         * sysdeps/unix/bsd/__isatty.c: Likewise.
4653         * sysdeps/mach/hurd/__isatty.c: Likewise.
4654         * sysdeps/ieee754/__isinf.c: Renamed to isinf.c; added weak alias
4655         isinf.
4656         * sysdeps/m68k/fpu/__isinf.c: Likewise.
4657         * sysdeps/stub/__isinf.c: Likewise.
4658         * sysdeps/generic/__isnan.c: Renamed to isnan.c; added weak alias
4659         isnan.
4660         * sysdeps/ieee754/__isnan.c: Likewise.
4661         * sysdeps/m68k/fpu/__isnan.c: Likewise.
4662         * sysdeps/stub/__kill.c: Renamed to kill.c; added weak alias kill.
4663         * sysdeps/unix/__kill.S: Likewise.
4664         * sysdeps/mach/hurd/__kill.c: Likewise.
4665         * sysdeps/stub/__link.c: Renamed to link.c; added weak alias link.
4666         * sysdeps/unix/__link.S: Likewise.
4667         * sysdeps/mach/hurd/__link.c: Likewise.
4668         * sysdeps/ieee754/__logb.c: Renamed to logb.c; added weak alias logb.
4669         * sysdeps/m68k/fpu/__logb.c: Likewise.
4670         * sysdeps/stub/__logb.c: Likewise.
4671         * sysdeps/stub/__lseek.c: Renamed to lseek.c; added weak alias lseek.
4672         * sysdeps/unix/__lseek.S: Likewise.
4673         * sysdeps/mach/hurd/__lseek.c: Likewise.
4674         * sysdeps/generic/__lstat.c: Renamed to lstat.c; added weak alias
4675         lstat.
4676         * sysdeps/stub/__lstat.c: Likewise.
4677         * sysdeps/unix/sysv/sysv4/i386/__lstat.S: Likewise.
4678         * sysdeps/unix/common/__lstat.S: Likewise.
4679         * sysdeps/mach/hurd/__lstat.c: Likewise.
4680         * sysdeps/generic/__memccpy.c: Renamed to memccpy.c; added weak
4681         alias memccpy.
4682         * sysdeps/vax/__memccpy.c: Likewise.
4683         * sysdeps/stub/__mkdir.c: Renamed to mkdir.c; added weak alias mkdir.
4684         * sysdeps/unix/sysv/__mkdir.c: Likewise.
4685         * sysdeps/unix/common/__mkdir.S: Likewise.
4686         * sysdeps/mach/hurd/__mkdir.c: Likewise.
4687         * sysdeps/stub/__mknod.c: Renamed to mknod.c; added weak alias mknod.
4688         * sysdeps/unix/__mknod.S: Likewise.
4689         * sysdeps/unix/sysv/sysv4/i386/__mknod.S: Likewise.
4690         * sysdeps/mach/hurd/__mknod.c: Likewise.
4691         * mach/__msg.c: Renamed to msg.c; added weak alias mach_msg.
4692         * mach/__msgserver.c: Renamed to msgserver.c; added weak alias
4693         mach_msg_server.
4694         * sysdeps/stub/__open.c: Renamed to open.c; added weak alias open.
4695         * sysdeps/unix/__open.S: Likewise.
4696         * sysdeps/mach/hurd/__open.c: Likewise.
4697         * sysdeps/standalone/__open.c: Likewise.
4698         * sysdeps/stub/__pathconf.c: Renamed to pathconf.c; added weak
4699         alias pathconf.
4700         * sysdeps/unix/sysv/sco3.2.4/__pathconf.S: Likewise.
4701         * sysdeps/unix/sysv/irix4/__pathconf.c: Likewise.
4702         * hurd/__pid2task.c: Renamed to pid2task.c; added weak alias pid2task.
4703         * sysdeps/stub/__pipe.c: Renamed to pipe.c; added weak alias pipe.
4704         * sysdeps/unix/bsd/vax/__pipe.S: Likewise.
4705         * sysdeps/unix/bsd/m68k/__pipe.S: Likewise.
4706         * sysdeps/unix/bsd/osf1/alpha/__pipe.S: Likewise.
4707         * sysdeps/unix/i386/__pipe.S: Likewise.
4708         * sysdeps/unix/sparc/__pipe.S: Likewise.
4709         * sysdeps/unix/mips/__pipe.S: Likewise.
4710         * sysdeps/mach/hurd/__pipe.c: Likewise.
4711         * stdlib/__random.c: Renamed to random.c; added weak alias random.
4712         * sysdeps/stub/__read.c: Renamed to read.c; added weak alias read.
4713         * sysdeps/unix/__read.S: Likewise.
4714         * sysdeps/mach/hurd/__read.c: Likewise.
4715         * sysdeps/standalone/__read.c: Likewise.
4716         * sysdeps/stub/__readlink.c: Renamed to readlink.c; added weak
4717         alias readlink.
4718         * sysdeps/unix/common/__readlink.S: Likewise.
4719         * sysdeps/mach/hurd/__readlink.c: Likewise.
4720         * sysdeps/generic/__rint.c: Renamed to rint.c; added weak alias rint.
4721         * sysdeps/m68k/fpu/__rint.c: Likewise.
4722         * sysdeps/stub/__rmdir.c: Renamed to rmdir.c; added weak alias rmdir.
4723         * sysdeps/unix/sysv/__rmdir.c: Likewise.
4724         * sysdeps/unix/common/__rmdir.S: Likewise.
4725         * sysdeps/mach/hurd/__rmdir.c: Likewise.
4726         * sysdeps/generic/__sbrk.c: Renamed to sbrk.c; added weak alias sbrk.
4727         * sysdeps/stub/__sbrk.c: Likewise.
4728         * sysdeps/mach/hurd/__sbrk.c: Likewise.
4729         * math/__scalb.c: Renamed to scalb.c; added weak alias scalb.
4730         * sysdeps/stub/__select.c: Renamed to select.c; added weak alias
4731         select.
4732         * sysdeps/unix/common/__select.S: Likewise.
4733         * sysdeps/mach/hurd/__select.c: Likewise.
4734         * hurd/__setauth.c: Renamed to setauth.c; added weak alias setauth.
4735         * sysdeps/stub/__setgid.c: Renamed to setgid.c; added weak alias
4736         setgid.
4737         * sysdeps/unix/__setgid.S: Likewise.
4738         * sysdeps/unix/bsd/__setgid.c: Likewise.
4739         * sysdeps/mach/hurd/__setgid.c: Likewise.
4740         * sysdeps/stub/__setitmr.c: Renamed to setitmr.c; added weak alias
4741         setitmr
4742         * sysdeps/unix/common/__setitmr.S: Likewise.
4743         * sysdeps/mach/hurd/__setitmr.c: Likewise.
4744         * sysdeps/stub/__setpgrp.c: Renamed to setpgrp.c; added weak alias
4745         setpgrp
4746         * sysdeps/unix/sysv/sysv4/__setpgrp.c: Likewise.
4747         * sysdeps/unix/sysv/sco3.2.4/__setpgrp.c: Likewise.
4748         * sysdeps/unix/sysv/irix4/__setpgrp.S: Likewise.
4749         * sysdeps/unix/common/__setpgrp.S: Likewise.
4750         * sysdeps/mach/hurd/__setpgrp.c: Likewise.
4751         * sysdeps/stub/__setregid.c: Renamed to setregid.c; added weak
4752         alias setregid.
4753         * sysdeps/unix/common/__setregid.S: Likewise.
4754         * sysdeps/mach/hurd/__setregid.c: Likewise.
4755         * sysdeps/stub/__setreuid.c: Renamed to setreuid.c; added weak
4756         alias setreuid.
4757         * sysdeps/unix/common/__setreuid.S: Likewise.
4758         * sysdeps/mach/hurd/__setreuid.c: Likewise.
4759         * sysdeps/stub/__setsid.c: Renamed to setsid.c; added weak alias
4760         setsid.
4761         * sysdeps/unix/bsd/__setsid.c: Likewise.
4762         * sysdeps/unix/bsd/sun/sunos4/__setsid.S: Likewise.
4763         * sysdeps/unix/bsd/ultrix4/__setsid.S: Likewise.
4764         * sysdeps/unix/bsd/bsd4.4/__setsid.S: Likewise.
4765         * sysdeps/unix/sysv/linux/__setsid.S: Likewise.
4766         * sysdeps/unix/sysv/sysv4/__setsid.c: Likewise.
4767         * sysdeps/unix/sysv/sco3.2.4/__setsid.c: Likewise.
4768         * sysdeps/mach/hurd/__setsid.c: Likewise.
4769         * sysdeps/stub/__settod.c: Renamed to settod.c; added weak alias
4770         settimeofday.
4771         * sysdeps/unix/bsd/__settod.S: Likewise.
4772         * sysdeps/unix/sysv/__settod.c: Likewise.
4773         * sysdeps/mach/hurd/__settod.c: Likewise.
4774         * sysdeps/stub/__setuid.c: Renamed to setuid.c; added weak alias
4775         setuid.
4776         * sysdeps/unix/__setuid.S: Likewise.
4777         * sysdeps/unix/bsd/__setuid.c: Likewise.
4778         * sysdeps/mach/hurd/__setuid.c: Likewise.
4779         * sysdeps/posix/__sigblock.c: Renamed to sigblock.c; added weak
4780         alias sigblock.
4781         * sysdeps/stub/__sigblock.c: Likewise.
4782         * sysdeps/unix/bsd/__sigblock.S: Likewise.
4783         * sysdeps/unix/bsd/bsd4.4/__sigblock.c: Likewise.
4784         * sysdeps/unix/bsd/osf1/alpha/__sigblock.S: Likewise.
4785         * sysdeps/posix/__sigpause.c: Renamed to sigpause.c; added weak
4786         alias sigpause.
4787         * sysdeps/stub/__sigpause.c: Likewise.
4788         * sysdeps/unix/bsd/__sigpause.S: Likewise.
4789         * sysdeps/unix/bsd/osf1/alpha/__sigpause.S: Likewise.
4790         * sysdeps/stub/__sigproc.c: Renamed to sigprocmask.c; added weak
4791         alias sigprocmask.
4792         * sysdeps/unix/bsd/__sigproc.c: Likewise.
4793         * sysdeps/unix/sysv/sysv4/__sigproc.S: Likewise.
4794         * sysdeps/unix/sysv/sco3.2.4/__sigproc.S: Likewise.
4795         * sysdeps/mach/hurd/__sigproc.c: Likewise.
4796         * sysdeps/stub/__sigret.c: Renamed to sigreturn.c; added weak
4797         alias sigreturn.
4798         * sysdeps/unix/bsd/sun/__sigret.S: Likewise.
4799         * sysdeps/unix/sysv/i386/__sigret.S: Likewise.
4800         * sysdeps/unix/sysv/irix4/__sigret.S: Likewise.
4801         * sysdeps/unix/i386/__sigret.S: Likewise.
4802         * sysdeps/unix/mips/__sigret.S: Likewise.
4803         * sysdeps/mach/hurd/i386/__sigret.c: Likewise.
4804         * sysdeps/mach/hurd/alpha/__sigret.c: Likewise.
4805         * sysdeps/mach/hurd/mips/__sigret.c: Likewise.
4806         * sysdeps/posix/__sigvec.c: Renamed to sigvec.c; added weak alias
4807         sigvec.
4808         * sysdeps/stub/__sigvec.c: Likewise.
4809         * sysdeps/unix/bsd/__sigvec.S: Likewise.
4810         * sysdeps/unix/bsd/sun/__sigvec.S: Likewise.
4811         * sysdeps/unix/bsd/sequent/i386/__sigvec.S: Likewise.
4812         * sysdeps/unix/bsd/ultrix4/mips/__sigvec.S: Likewise.
4813         * sysdeps/unix/bsd/bsd4.4/__sigvec.c: Likewise.
4814         * sysdeps/unix/bsd/osf1/alpha/__sigvec.S: Likewise.
4815         * sysdeps/stub/__stat.c: Renamed to stat.c; added weak alias stat.
4816         * sysdeps/unix/__stat.S: Likewise.
4817         * sysdeps/unix/sysv/sysv4/i386/__stat.S: Likewise.
4818         * sysdeps/mach/hurd/__stat.c: Likewise.
4819         * sysdeps/generic/__stpncpy.c: Renamed to stpncpy.c; added weak
4820         alias stpncpy.
4821         * sysdeps/stub/__symlink.c: Renamed to symlink.c; added weak alias
4822         symlink.
4823         * sysdeps/unix/common/__symlink.S: Likewise.
4824         * sysdeps/mach/hurd/__symlink.c: Likewise.
4825         * sysdeps/posix/__sysconf.c: Renamed to sysconf.c; added weak
4826         alias sysconf.
4827         * sysdeps/stub/__sysconf.c: Likewise.
4828         * sysdeps/unix/bsd/ultrix4/__sysconf.c: Likewise.
4829         * sysdeps/unix/sysv/sysv4/__sysconf.c: Likewise.
4830         * sysdeps/unix/sysv/sco3.2.4/__sysconf.S: Likewise.
4831         * sysdeps/unix/sysv/irix4/__sysconf.c: Likewise.
4832         * hurd/__task2pid.c: Renamed to task2pid.c; added weak alias task2pid.
4833         * sysdeps/stub/__times.c: Renamed to times.c; added weak alias times.
4834         * sysdeps/unix/bsd/__times.c: Likewise.
4835         * sysdeps/unix/sysv/__times.S: Likewise.
4836         * time/__tzset.c: Renamed to tzset.c; added weak alias tzset.
4837         * sysdeps/stub/__umask.c: Renamed to umask.c; added weak alias umask.
4838         * sysdeps/unix/__umask.S: Likewise.
4839         * sysdeps/mach/hurd/__umask.c: Likewise.
4840         * sysdeps/stub/__unlink.c: Renamed to unlink.c; added weak alias
4841         unlink.
4842         * sysdeps/unix/__unlink.S: Likewise.
4843         * sysdeps/mach/hurd/__unlink.c: Likewise.
4844         * sysdeps/stub/__utimes.c: Renamed to utimes.c; added weak alias
4845         utimes.
4846         * sysdeps/unix/bsd/__utimes.S: Likewise.
4847         * sysdeps/unix/sysv/sysv4/solaris2/__utimes.S: Likewise.
4848         * sysdeps/mach/hurd/__utimes.c: Likewise.
4849         * sysdeps/generic/__vfork.c: Renamed to vfork.c; added weak alias
4850         vfork.
4851         * sysdeps/unix/bsd/sun/m68k/__vfork.S: Likewise.
4852         * sysdeps/unix/bsd/vax/__vfork.S: Likewise.
4853         * sysdeps/unix/bsd/i386/__vfork.S: Likewise.
4854         * sysdeps/unix/bsd/hp/m68k/__vfork.S: Likewise.
4855         * sysdeps/unix/bsd/ultrix4/mips/__vfork.S: Likewise.
4856         * sysdeps/unix/sysv/sysv4/i386/__vfork.S: Likewise.
4857         * sysdeps/unix/sparc/__vfork.S: Likewise.
4858         * stdio/__vfscanf.c: Renamed to vfscanf.c; added weak alias vfscanf.
4859         * stdio/__vsscanf.c: Renamed to vsscanf.c; added weak alias vsscanf.
4860         * sysdeps/posix/__wait.c: Renamed to wait.c; added weak alias wait.
4861         * sysdeps/stub/__wait.c: Likewise.
4862         * sysdeps/unix/bsd/sony/newsos4/__wait.c: Likewise.
4863         * sysdeps/unix/bsd/sun/sunos4/__wait.c: Likewise.
4864         * sysdeps/unix/bsd/sun/sunos3/m68k/__wait.S: Likewise.
4865         * sysdeps/unix/bsd/vax/__wait.S: Likewise.
4866         * sysdeps/unix/bsd/m68k/__wait.S: Likewise.
4867         * sysdeps/unix/bsd/bsd4.4/__wait.c: Likewise.
4868         * sysdeps/unix/sysv/i386/linux/__wait.S: Likewise.
4869         * sysdeps/unix/sysv/irix4/__wait.S: Likewise.
4870         * sysdeps/unix/i386/__wait.S: Likewise.
4871         * sysdeps/unix/mips/__wait.S: Likewise.
4872         * sysdeps/posix/__wait3.c: Renamed to wait3.c; added weak alias wait3.
4873         * sysdeps/stub/__wait3.c: Likewise.
4874         * sysdeps/unix/bsd/sony/newsos4/__wait3.c: Likewise.
4875         * sysdeps/unix/bsd/sun/sunos4/__wait3.c: Likewise.
4876         * sysdeps/unix/bsd/vax/__wait3.S: Likewise.
4877         * sysdeps/unix/bsd/i386/__wait3.S: Likewise.
4878         * sysdeps/unix/bsd/hp/m68k/__wait3.S: Likewise.
4879         * sysdeps/unix/bsd/ultrix4/__wait3.S: Likewise.
4880         * sysdeps/unix/bsd/bsd4.4/__wait3.c: Likewise.
4881         * sysdeps/unix/sysv/irix4/__wait3.S: Likewise.
4882         * sysdeps/stub/__wait4.c: Renamed to wait4.c; added weak alias wait4.
4883         * sysdeps/unix/bsd/sony/newsos4/__wait4.c: Likewise.
4884         * sysdeps/unix/bsd/sun/sunos4/__wait4.c: Likewise.
4885         * sysdeps/unix/bsd/bsd4.4/__wait4.S: Likewise.
4886         * sysdeps/unix/bsd/osf1/alpha/__wait4.S: Likewise.
4887         * sysdeps/unix/sysv/linux/__wait4.S: Likewise.
4888         * sysdeps/mach/hurd/__wait4.c: Likewise.
4889         * sysdeps/stub/__waitpid.c: Renamed to waitpid.c; added weak alias
4890         waitpid.
4891         * sysdeps/unix/bsd/sun/sunos4/__waitpid.c: Likewise.
4892         * sysdeps/unix/bsd/ultrix4/__waitpid.S: Likewise.
4893         * sysdeps/unix/bsd/bsd4.4/__waitpid.c: Likewise.
4894         * sysdeps/unix/bsd/osf1/alpha/__waitpid.c: Likewise.
4895         * sysdeps/unix/sysv/linux/__waitpid.S: Likewise.
4896         * sysdeps/unix/sysv/sysv4/__waitpid.c: Likewise.
4897         * sysdeps/unix/sysv/sco3.2.4/__waitpid.S: Likewise.
4898         * sysdeps/unix/sysv/irix4/__waitpid.c: Likewise.
4899         * sysdeps/stub/__write.c: Renamed to write.c; added weak alias write.
4900         * sysdeps/unix/__write.S: Likewise.
4901         * sysdeps/mach/hurd/__write.c: Likewise.
4902         * sysdeps/standalone/__write.c: Likewise.
4903         * sysdeps/stub/__tcgetatr.c: Renamed to tcgetattr.c; added weak
4904         alias tcgetattr.
4905         * sysdeps/unix/bsd/__tcgetatr.c: Likewise.
4906         * sysdeps/unix/bsd/sun/sunos4/__tcgetatr.c: Likewise.
4907         * sysdeps/unix/bsd/bsd4.4/__tcgetatr.c: Likewise.
4908         * sysdeps/unix/sysv/__tcgetatr.c: Likewise.
4909         * sysdeps/stub/__sigact.c: Renamed to sigaction.c; added weak
4910         alias sigaction.
4911         * sysdeps/unix/bsd/__sigact.c: Likewise.
4912         * sysdeps/unix/sysv/__sigact.c: Likewise.
4913         * sysdeps/unix/sysv/sysv4/__sigact.c: Likewise.
4914         * sysdeps/unix/sysv/sco3.2.4/__sigact.S: Likewise.
4915         * sysdeps/mach/hurd/__sigact.c: Likewise.
4916         * sysdeps/posix/__sigstmsk.c: Renamed to sigsetmask.c; added weak
4917         alias sigsetmask.
4918         * sysdeps/stub/__sigstmsk.c: Likewise.
4919         * sysdeps/unix/bsd/__sigstmsk.S: Likewise.
4920         * sysdeps/unix/bsd/bsd4.4/__sigstmsk.c: Likewise.
4921         * sysdeps/unix/bsd/osf1/alpha/__sigstmsk.S: Likewise.
4922         * sysdeps/stub/__getrusag.c: Renamed to getrusage.c; added weak
4923         alias getrusage.
4924         * sysdeps/unix/sysv/irix4/__getrusag.c: Likewise.
4925         * sysdeps/unix/common/__getrusag.S: Likewise.
4926         * hurd/task2pid.c: File removed.
4927         * hurd/setauth.c: File removed.
4928         * hurd/pid2task.c: File removed.
4929         * hurd/hurdsyms.c: File removed.
4930         * hurd/getdport.c: File removed.
4931         * hurd/fopenport.c: File removed.
4932         * mach/thread-sym.c: File removed.
4933         * mach/spin-syms.c: File removed.
4934         * mach/msgserver_t.c: File removed.
4935         * mach/msgserver.c: File removed.
4936         * mach/msg.c: File removed.
4937         * mach/mig_syms.c: File removed.
4938         * malloc/mcheck-init.c: File removed.
4939         * malloc/cfree.c: File removed.
4940         * io/flock.c: File removed.
4941         * io/write.c: File removed.
4942         * io/unlink.c: File removed.
4943         * io/umask.c: File removed.
4944         * io/symlink.c: File removed.
4945         * io/rmdir.c: File removed.
4946         * io/readlink.c: File removed.
4947         * io/read.c: File removed.
4948         * io/pipe.c: File removed.
4949         * io/open.c: File removed.
4950         * io/mkdir.c: File removed.
4951         * io/lstat.c: File removed.
4952         * io/lseek.c: File removed.
4953         * io/link.c: File removed.
4954         * io/isatty.c: File removed.
4955         * io/stat.c: File removed.
4956         * io/fstat.c: File removed.
4957         * io/fchown.c: File removed.
4958         * io/fchmod.c: File removed.
4959         * io/dup2.c: File removed.
4960         * io/dup.c: File removed.
4961         * io/close.c: File removed.
4962         * io/fcntl.c: File removed.
4963         * io/chmod.c: File removed.
4964         * io/chdir.c: File removed.
4965         * io/access.c: File removed.
4966         * io/chown.c: File removed.
4967         * time/tzset.c: File removed.
4968         * time/timelocal.c: File removed.
4969         * time/syms-time.c: File removed.
4970         * time/settod.c: File removed.
4971         * time/setitmr.c: File removed.
4972         * time/gettod.c: File removed.
4973         * time/getitmr.c: File removed.
4974         * time/adjtime.c: File removed.
4975         * termios/tcgetattr.c: File removed.
4976         * string/stpncpy.c: File removed.
4977         * string/rindex.c: File removed.
4978         * string/memccpy.c: File removed.
4979         * string/index.c: File removed.
4980         * string/bcmp.c: File removed.
4981         * stdlib/srand.c: File removed.
4982         * stdlib/random.c: File removed.
4983         * stdio/vsscanf.c: File removed.
4984         * stdio/vfscanf.c: File removed.
4985         * stdio/syms-stdio.c: File removed.
4986         * stdio/remove.c: File removed.
4987         * stdio/getline.c: File removed.
4988         * stdio/getdelim.c: File removed.
4989         * signal/ssignal.c: File removed.
4990         * signal/sigvec.c: File removed.
4991         * signal/sigsetmask.c: File removed.
4992         * signal/sigret.c: File removed.
4993         * signal/sigproc.c: File removed.
4994         * signal/sigpause.c: File removed.
4995         * signal/sigblock.c: File removed.
4996         * signal/sigaction.c: File removed.
4997         * signal/kill.c: File removed.
4998         * signal/gsignal.c: File removed.
4999         * setjmp/siglongjmp.c: File removed.
5000         * setjmp/_longjmp.c: File removed.
5001         * resource/getrusage.c: File removed.
5002         * posix/waitpid.c: File removed.
5003         * posix/wait4.c: File removed.
5004         * posix/wait3.c: File removed.
5005         * posix/wait.c: File removed.
5006         * posix/times.c: File removed.
5007         * posix/sysconf.c: File removed.
5008         * posix/setuid.c: File removed.
5009         * posix/setsid.c: File removed.
5010         * posix/setpgrp.c: File removed.
5011         * posix/setpgid.c: File removed.
5012         * posix/setgid.c: File removed.
5013         * posix/pathconf.c: File removed.
5014         * posix/getuid.c: File removed.
5015         * posix/getppid.c: File removed.
5016         * posix/getpid.c: File removed.
5017         * posix/getgrps.c: File removed.
5018         * posix/getgid.c: File removed.
5019         * posix/geteuid.c: File removed.
5020         * posix/getegid.c: File removed.
5021         * posix/fpathcon.c: File removed.
5022         * posix/fork.c: File removed.
5023         * posix/execve.c: File removed.
5024         * posix/environ.c: File removed.
5025         * misc/utimes.c: File removed.
5026         * misc/setreuid.c: File removed.
5027         * misc/setregid.c: File removed.
5028         * misc/select.c: File removed.
5029         * misc/sbrk.c: File removed.
5030         * misc/mknod.c: File removed.
5031         * misc/ioctl.c: File removed.
5032         * misc/getpgsz.c: File removed.
5033         * misc/gethstnm.c: File removed.
5034         * misc/getdtsz.c: File removed.
5035         * misc/data_start.c: File removed.
5036         * misc/brk.c: File removed.
5037         * math/scalb.c: File removed.
5038         * math/rint.c: File removed.
5039         * math/logb.c: File removed.
5040         * math/isnan.c: File removed.
5041         * math/isinf.c: File removed.
5042         * math/infnan.c: File removed.
5043         * math/finite.c: File removed.
5044         * math/expm1.c: File removed.
5045         * math/drem.c: File removed.
5046         * math/copysign.c: File removed.
5047         * math/__scalb.c: File removed.
5048         * dirent/getdents.c: File removed.
5050 Fri Jan 20 16:11:06 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5052         * sysdeps/generic/morecore.c (__default_morecore): Use
5053         __malloc_ptrdiff_t; don't cast arg to int.
5055         * resolv/getnetnamadr.c: Include "conf/portability.h".
5057 Thu Jan 19 02:20:04 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5059         * stdlib/strtol.c: Include errno.h.
5060         [QUAD] (ULONG_MAX): Define to a static variable initialized to
5061         ULONG_LONG_MAX. This is to work around a GCC bug in using the
5062         constant in arithmetic.
5064         * posix/unistd.h (daemon): Declare it.
5066         * malloc/mcheck-init.c: Remove GNU ld hacks.
5067         (__malloc_initialize_hook): Initialize this hook to turn_on_mcheck.
5068         * malloc/malloc.c (__malloc_initialize_hook): New hook variable.
5069         (initialize): Call the hook if set.
5070         * malloc/malloc.h: Use __malloc_{size,ptrdiff}_t in prototypes.
5071         (__malloc_initialize_hook): Declare new hook variable.
5073 Wed Jan 18 01:43:39 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5075         * hurd/hurdsig.c: Prepend `msg_' to server RPC names.
5076         * hurd/hurdpid.c: Likewise.
5077         * hurd/hurdauth.c: Likewise.
5079 Tue Jan 17 03:16:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5081         * sysdeps/mach/hurd/__select.c: If some replies are EINTR, succeed
5082         if any are successful.
5084         * hurd/hurdmsg.c: Prepend `msg_' to all RPC names.
5085         (_S_msg_get_exec_flags, _S_msg_set_exec_flags,
5086         _S_msg_set_some_exec_flags, _S_msg_clear_some_exec_flags): New
5087         functions.
5088         (_S_io_select_done, _S_dir_changed, _S_file_changed): Stubs removed.
5090         * hurd/hurdkill.c: __sig_post renamed to __msg_sig_post.
5091         * hurd/hurd-raise.c: Likewise.
5092         * hurd/hurdsig.c (post_reply): Prepend `msg_' to RPC names.
5094         * sysdeps/mach/hurd/ptrace.c: New file.
5096         * sysdeps/mach/hurd/__select.c: Revamped to use new io_select
5097         interface, which has normal EINTR semantics.  Instead of waiting
5098         for io_select_done notification messages, send io_select messages
5099         with short reply timeout and then wait for io_select_reply
5100         messages.
5102         * hurd/hurdexec.c (_hurd_exec): Pass (_hurd_exec_flags &
5103         EXEC_INHERITED) to file_exec.
5105         * hurd/hurdsig.c (post_reply): Take new arg UNTRACED; if nonzero,
5106         use sig_post_untraced_reply.  All callers changed.
5107         (abort_thread, abort_rpcs): Take same new arg and pass it through.
5108         All callers changed.
5109         (_hurd_internal_post_signal): Take new arg UNTRACED.
5110         If zero and process is traced, stop with SIGNO as stop signal.  If
5111         nonzero, resume process before delivering signal (unless
5112         ACT==stop).  Expand local fn sigwakeup into block at end taken iff
5113         SIGNO!=0.
5114         (signal_allowed): New function, broken out of _S_sig_post.
5115         (_S_sig_post): Call it.  Pass UNTRACED arg of false to
5116         _hurd_internal_post_signal.
5117         (_S_sig_post_untraced): New function.  Just like _S_sig_post, but
5118         pass true for UNTRACED.
5119         * hurd/hurd/signal.h (_hurd_internal_post_signal): Take new arg
5120         UNTRACED.
5121         * hurd/catch-exc.c (_S_catch_exception_raise): Pass UNTRACED arg
5122         to _hurd_internal_post_signal (value zero).
5124 Mon Jan 16 16:40:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5126         * hurd/hurdinit.c (_hurd_exec_flags): New variable.
5127         (_hurd_init): Initialize it from FLAGS arg.
5128         (_hurd_proc_init): If EXEC_TRACED is set in _hurd_exec_flags,
5129         raise a SIGTRAP signal (with a sigcode of zero).
5130         * hurd/hurd.h (_hurd_exec_flags): Declare it.
5132         * Version 1.09.5.
5134 Mon Jan 16 16:16:55 1995  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5136         * malloc/malloc.c (malloc): Fix 1-off in previous change.
5138 Mon Jan 16 15:49:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5140         * posix/glob/Makefile.in: Remove config.h and config.log.
5142 Sun Jan 15 06:56:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5144         * posix/glob/configure.in: Add AC_CONST check.
5146         * conf/portability.h: #undef sun.
5147         * resolv/res_query.c: Updated from BIND-4.9.3-BETA17.
5148         * resolv/getnetnamadr.c: Likewise.
5150         * socket/Makefile (headers): Add sockaddrcom.h.
5151         * inet/netinet/in.h: Include <sockaddrcom.h>.
5152         (struct sockaddr_in): Use the __SOCKADDR_COMMON macro.
5153         * socket/sys/un.h (struct sockaddr_in): Likewise.
5154         * socket/sys/socket.h (struct sockaddr): Likewise.
5155         * sysdeps/unix/bsd/bsd4.4/sockaddrcom.h: New file.
5156         * sysdeps/generic/sockaddrcom.h: New file.
5158         * sysdeps/unix/sysv/sysv4/ftruncate.c: New file.
5159         * sysdeps/unix/common/fcntlbits.h [__USE_SVID] (F_ALLOCSP,
5160         F_FREESP): New macros.
5161         * sysdeps/posix/truncate.c: New file.
5163         * malloc/malloc.c (malloc): Fix typos in RMS's change.
5165         * malloc/Makefile (dist-routines): Add malloc-find.
5166         * malloc/malloc.h (malloc_find_object_address): Declare it.
5167         * malloc/malloc-find.c: New file.
5169         * malloc/malloc.h (__malloc_ptrdiff_t): New macro, defined a la
5170         __malloc_size_t.
5171         (malloc_info): Use that type for member `busy.info.size'.
5173         * stdlib/strtol.c: Change uses of `long' keyword throughout to use
5174         `LONG' macro.
5175         [! QUAD] (LONG): Define as long.
5176         [QUAD] (LONG): Define as long long.
5177         [QUAD] (LONG_MIN, LONG_MAX, ULONG_MAX): Redefine to long long
5178         versions.
5179         [QUAD] (strtoul, strtol): Define to strtouq, strtoq.
5180         * stdlib/Makefile (routines): Add strtoq and strtouq.
5181         * stdlib/strtoq.c, stdlib/strtouq.c: New files.
5182         * stdlib/stdlib.h [__GNUC__ && __USE_BSD] (strtoq, strtouq):
5183         Declare them.
5185         * stdio/vfprintf.c: If there was a precision specified, ignore the
5186         0 flag and always pad with spaces.
5188         * stdio/vfprintf.c: Don't use strchr to skip text until next %.
5189         Use a loop and also stop on first !isascii char.
5191 Wed Jan 11 00:07:10 1995  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
5193         * malloc/malloc.h (malloc_info): Change usage of .busy.info.size.
5195         * malloc/malloc.c (malloc): For a multi-block object, store a
5196         negative number into the busy.info.size of all but the first block.
5198 Tue Jan 10 13:45:20 1995  Brendan Kehoe  <brendan@zen.org>
5200         * sysdeps/unix/bsd/ultrix4/mips/start.S: Use s0, s1, and s2
5201         instead of t0, t1, and t2.
5203 Tue Jan 10 05:53:50 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5205         * malloc/memalign.c (__memalign_hook): New variable.
5206         (memalign): Call it if set.
5207         * malloc/malloc.h (__memalign_hook): Declare new variable.
5209 Wed Dec 28 03:27:21 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5211         * conf/portability.h: Include string.h and stdlib.h.
5212         * inet/netdb.h (NETDB_INTERNAL, NETDB_SUCCESS): New macros.
5213         * resolv/resolv.h, resolv/arpa/nameser.h, resolv/gethnamaddr.c,
5214         resolv/getnetbyname.c, resolv/getnetent.c, resolv/herror.c,
5215         resolv/res_mkquery.c, resolv/res_send.c, resolv/res_comp.c,
5216         resolv/res_debug.c, resolv/res_init.c: Updated from BIND 4.9.3-BETA14.
5218         * sysdeps/m68k/fpu/__math.h (__m81_inline): New macro.  Replace
5219         all uses of `extern __inline' with `__m81_inline'.
5221         * sysdeps/unix/bsd/hp/m68k/__vfork.S: Use subl, not decl.
5222         * sysdeps/unix/__fork.S: Swap args in subl.
5224         * posix/sys/types.h [__USE_MISC] (ushort, uint): New typedefs, for
5225         compatibility.
5227 Tue Dec 20 13:33:20 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>
5229         * sysdeps/mach/hurd/__setpgrp.c (__setpgrp): Use __swtch_pri instead
5230         of swtch.
5231         * sysdeps/mach/hurd/__setsid.c (__setsid): Likewise.
5232         * mach/spin-solid.c (__spin_lock_solid): Likewise.
5234 Thu Dec 15 12:01:07 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5236         * inet/rcmd.c (iruserok): Use alloca instead of fixed-size buffer
5237         for PBUF.
5238         (__ivaliduser): Use getline instead of fgets with fixed-size buffer.
5240         * sysdeps/mach/hurd/Makefile (subdirs): Don't elide inet.
5242 Wed Dec 14 18:20:56 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5244         * sysdeps/alpha/bsd-setjmp.S: Reverse register and immediate args
5245         in `bis' insn; immediate must be second.
5247         * sysdeps/unix/__fork.S: Use subl instead of decl.
5248         * sysdeps/unix/i386/__fork.S: New file.
5250         * sysdeps/mach/hurd/alpha/trampoline.c (_hurd_setup_sighandler):
5251         Remove A macro; just use `asm volatile' with proper quotes in each
5252         line.
5253         * sysdeps/mach/alpha/sysdep.h (CALL_WITH_SP): Put parens around
5254         jmp target register.
5256         * time/africa, time/asia, time/australasia, time/emkdir.c,
5257         time/europe, time/ialloc.c, time/northamerica, time/private.h,
5258         time/scheck.c, time/yearistype, time/zdump.c, time/zic.c: New code
5259         and data from ADO 94h distribution.
5261         * sysdeps/sparc/setjmp.S: Use sethi and or to put address of
5262         __sigjmp_save in %g1 and jmp there.  jmp cannot contain a complete
5263         absolute pointer.  Put second store in jmp delay slot.
5265 Tue Dec 13 15:47:52 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
5267         * sysdeps/sparc/bsd-_setjmp.S: Use sethi and or to put address of
5268         __sigsetjmp in %g1 and jmp there.  jmp cannot contain a complete
5269         absolute pointer.
5270         * sysdeps/sparc/bsd-setjmp.S: Likewise.
5272         * configure.in: Use ; before } in { ... } exprs.
5276 See ChangeLog.4 for earlier changes.