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