*** empty log message ***
[kopensolaris-gnu/glibc.git] / ChangeLog
1 Wed Jun  5 15:42:51 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2
3         * mach/Machrules (%_server.uh, %_server.__h): New rules, so that the
4         corrsponding .defs file with without the `_server' will be used.
5         
6         * mach/Makefile (mach/mach_interface.defs): Renamed from mach_interface.defs.
7         (mach/memory_object_user.defs): New variable.
8
9 Wed Jun  5 00:01:19 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
10
11         * Makerules (distinfo-vars): Add sysdep_routines.
12
13         * mach/Machrules (include-%.defs): New canned sequence.
14         Change all uses of `#include <$*.defs>' in cmds to use it.
15         * mach/Makefile (mach_interface.defs): New variable, set to mach.defs.
16
17         * sysdeps/i386/dl-machine.h (elf_machine_rel): Handle RESOLVE being
18         null in all cases but R_386_COPY.
19         (elf_machine_rel):
20
21         * sysdeps/unix/bsd/ultrix4/mips/Dist: Updated.
22         * sysdeps/unix/bsd/ultrix4/Dist: Removed.
23         * sysdeps/unix/sysv/sysv4/Dist: Updated.
24         * sysdeps/unix/sysv/sco3.2.4/Dist: Removed.
25         * sysdeps/unix/sysv/irix4/Dist: Updated.
26         * sysdeps/unix/sysv/linux/i386/Dist: Removed.
27         * sysdeps/unix/sysv/Dist: Updated.
28         * sysdeps/unix/bsd/sun/sunos4/Dist: Removed.
29         * sysdeps/unix/bsd/sony/newsos4/Dist: Removed.
30         * sysdeps/gnu/Dist: New file.
31         * sysdeps/alpha/Dist: Updated.
32         * sysdeps/mach/hurd/Dist: Updated.
33
34         * Make-dist [subdir-dirs]: Set a vpath for %.c.
35
36         * Make-dist (README): Fix typo in cvs cmd.
37
38         * elf/dl-lookup.c (_dl_lookup_symbol): Fix typos in last change.
39         Comment out ref to nonexistent _dl_close.
40
41 Tue Jun  4 21:01:20 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
42
43         * math/Makefile (libm-support, libm-calls): New variables.
44         (libm-routines): Construct this from those.
45         (calls): New variable.
46         (routines): Construct this from it.
47
48         * resolv/res_debug.c: Add missing #include <ctype.h>.
49
50         * sysdeps/unix/getlogin.c: Must pass struct utmp ptr to getutline_r.
51         * sysdeps/unix/getlogin_r.c: Likewise.
52
53         * sysdeps/libm-ieee754/w_hypotl.c: Fix typo.
54
55         * sysdeps/libm-ieee754/w_cabsl.c: __cabsl_complex -> __cabs_complexl
56
57         * math/Makefile (long-m-routines): Define recursive variable as
58         $(long-m-$(long-double-fcts)).
59         (long-m-yes): Put list of routines here.
60         (long-c-routines, long-c-yes): Likewise.
61
62         * sysdeps/unix/sysv/linux/schedbits.h: File removed.
63
64         * sysdeps/i386/Makefile (long-double-fcts): New variable, set to yes.
65         * sysdeps/m68k/Makefile: Likewise.
66
67         * math/Makefile [$(long-double-fcts)!=yes] (CPPFLAGS): Append
68         -DNO_LONG_DOUBLE.
69
70         * sysdeps/mach/hurd/getlogin_r.c: New file.
71
72 Wed Jun  5 02:11:30 1996  Ulrich Drepper  <drepper@cygnus.com>
73
74         * io/Makefile (routines): Add ttyname_r.
75
76         * resolv/res_debug.c, resolv/resolv.h: Update from bind-4.3.4-T4A.
77
78         * sysdeps/libm-i387/e_asinl.S, sysdeps/libm-i387/e_atan2l.S,
79         sysdeps/libm-i387/e_expl.S, sysdeps/libm-i387/e_fmodl.S,
80         sysdeps/libm-i387/e_log10l.S, sysdeps/libm-i387/e_logl.S,
81         sysdeps/libm-i387/e_remainderl.S, sysdeps/libm-i387/e_scalbl.S,
82         sysdeps/libm-i387/e_sqrtl.S, sysdeps/libm-i387/s_atanl.S,
83         sysdeps/libm-i387/s_cosl.S, sysdeps/libm-i387/s_ilogbl.S,
84         sysdeps/libm-i387/s_log1pl.S, sysdeps/libm-i387/s_logbl.S,
85         sysdeps/libm-i387/s_scalbnl.S, sysdeps/libm-i387/s_sinl.S,
86         sysdeps/libm-i387/s_tanl.S: New files.  i387 assembler versions
87         of `long double' math functions.
88
89         * sysdeps/libm-ieee754/k_standard.c: Add handling for errors
90         in long double functions.
91
92         * sysdeps/libm-ieee754/s_ilogbl.c, sysdeps/libm-ieee754/s_logbl.c,
93         sysdeps/libm-ieee754/s_modfl.c:  New files.  Generic versions
94         of `long double' math functions.
95
96         * sysdeps/libm-ieee754/s_isinf.c [NO_LONG_DOUBLE]: Add string
97         alias for __isinfl.
98
99         * sysdeps/libm-ieee754/w_acoshl.c, sysdeps/libm-ieee754/w_acosl.c,
100         sysdeps/libm-ieee754/w_asinl.c, sysdeps/libm-ieee754/w_atan2l.c,
101         sysdeps/libm-ieee754/w_atanhl.c, sysdeps/libm-ieee754/w_cabsl.c,
102         sysdeps/libm-ieee754/w_coshl.c, sysdeps/libm-ieee754/w_dreml.c,
103         sysdeps/libm-ieee754/w_expl.c, sysdeps/libm-ieee754/w_fmodl.c,
104         sysdeps/libm-ieee754/w_gammal.c, sysdeps/libm-ieee754/w_gammal_r.c,
105         sysdeps/libm-ieee754/w_hypotl.c, sysdeps/libm-ieee754/w_j0l.c,
106         sysdeps/libm-ieee754/w_j1l.c, sysdeps/libm-ieee754/w_jnl.c,
107         sysdeps/libm-ieee754/w_lgammal.c, sysdeps/libm-ieee754/w_lgammal_r.c,
108         sysdeps/libm-ieee754/w_log10l.c, sysdeps/libm-ieee754/w_logl.c,
109         sysdeps/libm-ieee754/w_powl.c, sysdeps/libm-ieee754/w_remainderl.c,
110         sysdeps/libm-ieee754/w_scalbl.c, sysdeps/libm-ieee754/w_sinhl.c,
111         sysdeps/libm-ieee754/w_sqrtl.c: New files.  Wrapper functions
112         around long double function implementations.
113
114         * sysdeps/posix/ttyname_r.c (ttyname_r): Use _D_EXACT_NAMLEN
115         to determine length of directory entry name.
116
117         * posix/Makefile (routines): Add getlogin_r.
118         * posix/unistd.h: Add prototype for getlogin_r.
119         * sysdeps/stub/getlogin_r.c: New file.  Reentrant version of
120         getlogin function, specified in P1003.1c/D6.  Stub version.
121         * sysdeps/unix/getlogin.c (getlogin): Use ttyname_r instead of
122         ttyname.  This avoids saving and restoring the old content.
123         Also use setutent_r, getutline_r and endutent_r instead of
124         accing UTMP file directly.
125         * sysdeps/unix/getlogin_r.c: New file.  Reentrant version of
126         getlogin function, specified in P1003.1c/D6.
127
128 Tue Jun  4 20:10:09 1996  J.T. Conklin  <jtc@cygnus.com>
129
130         * sysdeps/libm-i387/s_finitef.S: Fix mask for exponent.
131
132 Tue Jun  4 18:57:57 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
133
134         * elf/dl-lookup.c (_dl_lookup_symbol): Grok magical undefined symbols
135         _GNU_libc_dl_{open,close,symbol} and resolve them to dl functions.
136
137         * elf/rtld.c (rtld_map): Renamed to _dl_rtld_map, made global.
138         * elf/link.h: Declare _dl_rtld_map.
139
140         * elf/dl-lookup.c (_dl_symbol_value): New function.
141         * elf/link.h: Declare it.
142
143         * elf/dladdr.c: Remove #include <setjmp.h>, we don't use it.
144
145         * shlib-versions: Set libdl=2.
146
147         * elf/dl-deps.c (_dl_map_object_deps): Use a linked list of alloca'd
148         elements and then scan it to fill the single malloc'd array, instead
149         of using realloc to grow the array in the first pass.  _dl_map_object
150         may do some mallocs that break our stream of reallocs, and the minimal
151         realloc can't handle that.
152
153         * elf/dl-init.c (_dl_init_next): Take argument, link_map whose
154         searchlist describes the piece of the DT_NEEDED graph to be
155         initialized.
156         * elf/link.h: Update prototype.
157         * sysdeps/i386/dl-machine.h (RTLD_START): Pass _dl_loaded as argument
158         to _dl_init_next.
159         * sysdeps/m68k/dl-machine.h: Likewise.
160         * elf/dl-deps.c (_dl_open): Pass new object as arg to _dl_init_next.
161
162         * elf/link.h (struct link_map): Add `l_reserved' member, soaking up
163         extra bits in last byte.
164         * elf/dl-deps.c (_dl_map_object_deps): Use that for mark bit to avoid
165         putting dup elts in search list.
166
167         * elf/dlclose.c: Use MAP->l_searchlist to find deps to close.
168
169         * elf/dlsym.c: Don't tweak linked list.  Scope array given to
170         _dl_lookup_symbol does the right thing.
171
172         * elf/Makefile (subdir_lib): Change this target to lib-noranlib.
173         (lib-noranlib): Depend on on $(extra-objs).
174
175         * errno.h: Move __END_DECLS out of #ifdef's so it matches
176         __BEGIN_DECLS.
177
178 Tue Jun  4 02:25:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
179
180         * stdio-common/vfprintf.c [USE_IN_LIBIO] (size_t): Don't define as
181         macro.  _IO_size_t is just an alias for the real size_t anyway.
182
183         * elf/Makefile (libdl-routines): Add dladdr.
184         * elf/dladdr.c: New file.
185         * elf/dlfcn.h (Dl_info): New typedef.
186         (dladdr): Declare it.
187
188         * sysdeps/libm-i387/s_finite.S: Use `setne' instead of `setnel'.
189
190         * intl/l10nflist.c: Fix conditional on #include <argz.h>.
191
192         * libio/stdio.h (FOPEN_MAX, FILENAME_MAX, TMP_MAX, L_tmpnam): Macros
193         removed.  Instead, include <stdio_lim.h>.
194
195         * libio/_G_config.h: New file.
196         * libio/Makefile (headers): Add _G_config.h.
197
198         * MakeTAGS (po/errlist.pot): Extract from sysdeps/gnu/errlist.c.
199
200         * sysdeps/unix/sysv/linux/gnu/types.h (__KERNEL_STRICT_NAMES): Define
201         this macro too; current Linux kernels test that instead of
202         _LINUX_TYPES_DONT_EXPORT.
203
204         * elf/linux-compat.c (_init): Pass reloc_addr arg to _dl_lookup_symbol.
205
206         * elf/dl-lookup.c (_dl_lookup_symbol): Use l_searchlist.
207
208         * elf/dl-deps.c: New file.
209         * elf/Makefile (rtld-routines): Add dl-deps.
210         * elf/link.h: Declare _dl_map_object_deps, _dl_open.
211         * elf/rtld.c (dl_main): Use _dl_map_object_deps.
212         * elf/dlopen.c: Use _dl_open.
213
214         * elf/rtld.c (dl_main): Remove BEFORE_RTLD variable and list
215         frobnication based on its value.  Detach RTLD_MAP from the chain if
216         its l_opencount is zero after loading deps.
217
218         * elf/dlfcn.h (RTLD_BINDING_MASK): New macro.
219
220         * elf/link.h (struct link_map): Replace l_deps_loaded flag member with
221         `struct link_map **l_searchlist' and `unsigned int l_nsearchlist'.
222         * elf/dl-lookup.c (_dl_lookup_symbol): Make SYMBOL_SCOPE arg an array
223         of two link_map ptrs.  Search the maps in the l_searchlist of each
224         elt that is not null.
225         * elf/dl-reloc.c (_dl_relocate_object): Pass proper SCOPE array.
226         * elf/dl-runtime.c: Likewise.
227         * elf/dlsym.c: Likewise.
228         * elf/rtld.c (dl_main): Likewise.
229
230         * elf/dl-minimal.c (realloc): Support realloc of the block most
231         recently returned by the minimal malloc.
232
233 Tue Jun  4 00:16:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
234
235         * sysdeps/gnu/errlist.awk: Produce N_("..."), not _N("...").
236
237         * intl: Updated from gettext-0.10.13.
238         * intl/localealias.c, intl/dcgettext.c [_LIBC]: Define HAVE_ALLOCA.
239
240         * signal/siggetmask.c: New file.  Wrapper around sigblock with
241         link_warning about obsolescence.
242         * signal/Makefile (routines): Add siggetmask.
243
244         * sysdeps/gnu/errlist.awk: New file, adapted from ...
245         * sysdeps/mach/hurd/errlist.awk: File removed, above file replaces it.
246         * sysdeps/mach/hurd/Makefile (errlist.c): Target removed.
247         * sysdeps/gnu/Makefile: New file.
248         (sysdeps/gnu/errlist.c): Make the errlist.c generation rule into this.
249
250 Mon Jun  3 21:03:54 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
251
252         * manual/errno.texi (Error Codes): Add placeholder items for missing
253         Linux/i386 errno codes, with perror text but no documentation.
254         Some existing perror texts changed.
255
256         * malloc/mcheck.c (freehook, reallochook): Handle null pointer args.
257
258         * hurd/hurdsig.c (_hurd_internal_post_signal): When setting ACT to
259         `ignore, resume the thread if SS_SUSPENDED, regardless of old action.
260
261 Sun Jun  2 20:14:30 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
262
263         * locale/programs/linereader.c (lr_open): Don't pass NULL to
264         xstrdup; fix memory leak.
265         (lr_close): Fix memory leak.
266
267 Mon Jun  3 15:58:22 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
268
269         * hurd/hurdsig.c (_hurd_internal_post_signal): When turning the action
270         for a HANDLE signal to IGNORE because the signal is blocked, clean
271         up any pending suspension left over from a call to resume.
272
273 Mon Jun  3 00:30:35 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
274
275         * elf/dl-lookup.c (_dl_lookup_symbol): Take new arg RELOC_ADDR and
276         don't allow a defn resolving to that address.
277
278         * elf/link.h: Update prototype and comment.
279         * elf/dl-runtime.c (fixup): Define local `resolve' function and pass
280         it to elf_machine_relplt.
281         * elf/dl-reloc.c (_dl_relocate_object: resolve): Take new arg
282         RELOC_ADDR and pass it through to _dl_lookup_symbol.
283         * elf/do-rel.h (elf_dynamic_do_rel): Pass RESOLVE to elf_machine_rel
284         instead of calling it ourselves and passing its results.
285         (elf_dynamic_do_rel): RESOLVE fn takes new arg RELOC_ADDR.
286         * elf/rtld.c (dl_main): Pass 0 for RELOC_ADDR to _dl_lookup_symbol.
287         * sysdeps/i386/dl-machine.h (elf_machine_rel): Remove SYM_LOADADDR
288         arg.  Add RESOLVE function ptr arg.  Call *RESOLVE as necessary.
289         * sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise.
290         * sysdeps/stub/dl-machine.h: Likewise.
291
292 Sun Jun  2 14:56:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
293
294         * csu/initfini.c (_fini): Add extern decl for i_am_not_a_leaf.
295
296         * elf/dlfcn.h (dl_open_mode): Enumerated type removed.
297         (RTLD_LAZY, RTLD_NOW): Define these as macros instead.
298         (RTLD_GLOBAL): New macro.
299         (dlopen): Take arg of type int instead of dl_open_mode.
300         * elf/dlopen.c: Likewise.
301
302         * math/math.h (_Mldbl): New macro, either produces L suffix or not.
303         (M_*): Use it for these constants.
304
305         * elf/dl-lookup.c (_dl_lookup_symbol): Arg NOSELF renamed to NOPLT.
306         Reject SHN_UNDEF defns iff NOPLT is nonzero.
307         * elf/link.h (_dl_lookup_symbol): Update prototype and comment.
308         * elf/dl-runtime.c (fixup): Pass 1 to _dl_lookup_symbol for NOPLT.
309         * elf/dlsym.c (dlsym): Pass 0.
310         * elf/rtld.c (dl_main): Likewise.
311         * elf/dl-reloc.c (_dl_relocate_object: resolve): Second arg R_OFFSET
312         replaced with NOPLT flag.  Pass it through to _dl_lookup_symbol.
313         * elf/do-rel.h (elf_dynamic_do_rel): Update prototype of RESOLVE arg.
314         Pass `elf_machine_pltrel_p (R->r_type)' result as NOPLT flag value.
315         * sysdeps/i386/dl-machine.h (elf_machine_pltrel_p): New macro.
316         * sysdeps/m68k/dl-machine.h (elf_machine_pltrel_p): Likewise.
317         * sysdeps/stub/dl-machine.h (elf_machine_pltrel_p): Likewise.
318
319         * login/pututline_r.c: Fix typo in sizeof for DATA_TMP alloca.
320
321         * sysdeps/generic/gnu/types.h (__clock_t): New type.
322
323 Wed May 29 00:57:37 1996  David Mosberger-Tang  <davidm@azstarnet.com>
324
325         * sysdeps/unix/sysv/linux/gnu/types.h (__clock_t, __fsid_t): Define
326         using kernel types.
327         * time/time.h (clock_t): Include <gnu/types.h> and define using
328         __clock_t.
329
330         * time/Makefile (tests): Add test-tz.
331
332         * time/test-tz.c: New test.
333
334         * time/clocktest.c: Rewrite to test more meaningfully.
335
336         * sysdeps/unix/sysv/linux/syscalls.list: Add bdflush,
337         create_module, delete_module, get_kernel_syms, init_module,
338         klogctl.
339
340         * sysdeps/unix/sysv/linux/sys/param.h (MAXSYMLINKS): Define as 5
341         instead of SYMLOOP_MAX, which is nowhere to be found.
342
343         * sysdeps/unix/sysv/linux/sys/msq_buf.h,
344         sysdeps/unix/sysv/linux/sys/sem_buf.h,
345         sysdeps/unix/sysv/linux/sys/shm_buf.h [__USE_MISC]: Add more
346         control ops and datastructures.
347
348         * sysdeps/unix/sysv/linux/sys/io.h: New file declaring low-level
349         I/O related functions.
350
351         * sysdeps/unix/sysv/linux/sys/kdaemon.h: New file declaring kernel
352         daemon related functions/operations.
353
354         * sysdeps/unix/sysv/linux/sys/klog.h: New file declaring kernel
355         logging related functions/operations.
356
357         * sysdeps/unix/sysv/linux/sys/module.h: New file declaring kernel
358         module related functions/operations.
359
360         * sysdeps/unix/sysv/linux/speed.c: Only do "mention this twice" hack
361         for non-Alpha based Linux systems.
362
363         * sysdeps/unix/sysv/linux/alpha/speed.c: Remove.
364
365         * sysdeps/unix/sysv/linux/Makefile (headers): Add sys/module.h,
366         sys/io.h, sys/klog.h, and sys/kdaemon.h.
367
368         * sysdeps/unix/sysdep.h (END): Define empty END macro for
369         platforms that don't need some sort of end directive at the
370         end of functions.
371
372         * sysdeps/unix/make-syscalls.sh: Emit END($strong) at end of
373         syscall wrapper to allow correct generation of debugging
374         information.
375
376         * sysdeps/unix/alpha/sysdep.h (END): Redefine to use .end
377         directive for both ELF and ECOFF.
378         (ret): Delete macro.  It was a dangerous macro and unnecessary
379         since the Alpha assemblers recognizes "ret" as a macro themselves.
380
381         * sysdeps/gnu/utmpbits.h (struct utmp): Move ut_tv behind
382         ut_session to guarantee long alignment.  This is important for
383         Linux/Alpha since ut_tv.tv_sec is 32 bits and time_t is 64 bits.
384         This will all get cleaned up as programs start to use ut_tv
385         instead ut_time.
386
387         * sysdeps/alpha/divrem.h: Include <sysdep.h> instead of <*/regdef.h>.
388
389         * sysdeps/alpha/bsd-_setjmp.S (setjmp): Renamed entry point to
390         _setjmp.
391
392         * sysdeps/alpha/_mcount.S, sysdeps/alpha/bb_init_func.S,
393         sysdeps/alpha/bsd-_setjmp.S, sysdeps/alpha/bsd-setjmp.S,
394         sysdeps/alpha/copysign.S, sysdeps/alpha/divrem.h,
395         sysdeps/alpha/fabs.S, sysdeps/alpha/ffs.S, sysdeps/alpha/htonl.S,
396         sysdeps/alpha/htons.S, sysdeps/alpha/memchr.S,
397         sysdeps/alpha/setjmp.S, sysdeps/alpha/strlen.S,
398         sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S,
399         sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S,
400         sysdeps/unix/sysv/linux/alpha/llseek.S,
401         sysdeps/unix/sysv/linux/alpha/pipe.S,
402         sysdeps/unix/sysv/linux/alpha/sigsuspend.S,
403         sysdeps/unix/sysv/linux/alpha/sysdep.S: Use END macro instead of
404         .end directive.
405
406         * csu/initfini.c (_fini): Tell gcc that _fini is not a leaf
407         function by having it contain a dummy function call.
408
409         * configure.in (config_machine): Don't make ELF the default for
410         Linux/Alpha just yet (use --with-elf instead).
411         (.init/.fini check): Generate .text to ensure function start and
412         end are in same section.
413
414         * sysdeps/unix/bsd/osf/alpha/brk.S,
415         sysdeps/unix/sysv/linux/alpha/brk.S (__curbrk): Store the entire
416         break value, not just the low 32 bits to accomodate large
417         memories.
418
419 Tue May 28 10:46:04 1996  Richard Henderson  <rth@tamu.edu>
420
421         * sysdeps/unix/sysv/linux/alpha/brk.S: Rather than attempt to
422         dynamically resolve _end for initializing __curbrk, support the
423         brk(0) query idiom.
424
425         * sysdeps/alpha/bb_init_func.S: Don't make `init' an external symbol.
426
427         * sysdeps/alpha/bsd-_setjmp.S: The function is _setjmp not setjmp.
428
429 Sun May 26 22:17:38 1996  Richard Henderson  <rth@tamu.edu>
430
431         * stdlib/lcong48_r.c, stdlib/seed48_r.c, stdlib/strtod.c,
432         stdlib/strtol.c: Include <string.h> for mem* and str* fns used.
433
434 Thu May 23 02:15:56 1996  David Mosberger-Tang  <davidm@azstarnet.com>
435
436         * sysdeps/unix/sysv/linux/Makefile (headers): Add sys/io.h,
437         sys/klog.h, and sys/kdaemon.h.
438
439         * sysdeps/unix/sysv/linux/sys/io.h: New file.
440         * sysdeps/unix/sysv/linux/sys/klog.h: Ditto.
441         * sysdeps/unix/sysv/linux/sys/kdaemon.h: Ditto.
442
443         * sysdeps/unix/alpha/sysdep.h (ret): Remove macro.  It is
444         dangerous and unnecessary since both OSF/1 as and gas define "ret"
445         as a pseudo-instruction.
446
447 Sat Jun  1 17:18:21 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
448
449         * time/tzset.c (__tzset): Clear tz_rules name pointers after freeing
450         them.  Bug found by David Mosberger-Tang.
451
452         * sysdeps/posix/tempname.c (__stdio_gen_tempname): Use __ptr_t instead
453         of PTR.
454
455         * extra-lib.mk (extra-objs): Use patsubst intead of $(A:=B) syntax
456         to work around Make bug when A contains var ref.
457
458 Fri May 31 18:27:52 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
459
460         * string/string.h [__USE_MISC]: Declare basename; OSF/1 puts it here.
461
462         * sysdeps/unix/sysv/linux/syscalls.list (getpgid, setpgid): Define __
463         strong names and [gs]etpgid as weak aliases.
464
465 Thu May 30 11:24:05 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
466
467         * math/math_private.h (GET_LDOUBLE_EXP): Add missing backslash.
468
469         * po/header.pot: Replace with exact boilerplate pinard dictates.
470
471         * sysdeps/i386/strtok.S (Lillegal_argument): Remove this code to set
472         errno and the check that jumped to it.
473
474         * sysdeps/mach/hurd/Makefile (errnos.d): Use $(sed-remove-objpfx).
475
476 Thu May 30 03:21:57 1996  Ulrich Drepper  <drepper@cygnus.com>
477
478         * FAQ: Document need of gperf program for developers.
479
480         * elf/elf.h: Fix typos in comments.
481
482         * libio/stdio.h [!__STRICT_ANSI__ || _POSIX_SOURCE]: Add
483         prototypes for `ctermid' and `cuserid'.
484
485         * locale/programs/locale.c: Switch to user selected locale
486         before printing variables.
487
488         * math/Makefile [$(long-double-fcts)==yes]: Define long-m-routines
489         and long-c-routines.  Only if the `long double' data type is
490         available we need to compile the functions.
491         (libm-routines): Add $(long-m-routines).
492         (routines): Remove isinfl, isnanl.  Use new file s_isinfl and
493         s_isnanl instead if `long double' is available.
494
495         * math/math.h: Include <mathcalls.h> again to define `long double'
496         functions.
497
498         * math/math_private.h: Define data types, prototypes and access
499         macros for `long double'.
500
501         * stdlib/stdlib.h: Add prototypes for `strtoll' and `strtoull'.
502         [GCC2 && OPTIMIZE]: Define strto{,u}ll as inline function which
503         calls __strto{,u}q_internal.
504
505         * stdlib/strfmon.c: Replace PTR by `void *'.
506
507         * stdlib/strtoq.c: Define strtoll as weak alias.
508         * stdlib/strtouq.c: Define strtoull as weak alias.
509
510         * string/tester.c: Correct `strsep' test.
511
512         * sysdeps/generic/strsep.c: Make compatible with BSD version.
513         Trailing characters of skip set are not skipped.  In this case
514         empty tokens are returned.
515
516         * sysdeps/i386/isinfl.c, sysdeps/i386/isnanl.c,
517         sysdeps/ieee754/isinf.c, sysdeps/ieee754/isinfl.c,
518         sysdeps/ieee754/isnan.c, sysdeps/ieee754/isnanl.c: Removed.  We
519         now use the versions part of libm.
520
521         * sysdeps/i386/strsep.S: Removed.  Generic C version is of
522         similar speed.
523         * sysdeps/i386/strtok.S: Remove support for `strsep'.
524
525         * sysdeps/libm-i387/e_acosl.S, sysdeps/libm-i387/s_ceill.S,
526         sysdeps/libm-i387/s_copysignl.S, sysdeps/libm-i387/s_finitel.S,
527         sysdeps/libm-i387/s_floorl.S, sysdeps/libm-i387/s_isinfl.c,
528         sysdeps/libm-i387/s_isnanl.c, sysdeps/libm-i387/s_nextafterl.c,
529         sysdeps/libm-i387/s_rintl.S, sysdeps/libm-i387/s_significandl.S:
530         New i387 specific math functions implementing `long double'
531         versions.
532
533         * sysdeps/libm-ieee754/s_ceill.c,
534         sysdeps/libm-ieee754/s_copysignl.c,
535         sysdeps/libm-ieee754/s_fabsl.c, sysdeps/libm-ieee754/s_finitel.c,
536         sysdeps/libm-ieee754/s_floorl.c, sysdeps/libm-ieee754/s_isinfl.c,
537         sysdeps/libm-ieee754/s_isnanl.c,
538         sysdeps/libm-ieee754/s_nextafterl.c,
539         sysdeps/libm-ieee754/s_rintl.c, sysdeps/libm-ieee754/s_scalbnl.c,
540         sysdeps/libm-ieee754/s_significandl.c: New generic `long double'
541         versions of libm functions.
542
543         * sysdeps/libm-i387/e_exp.S: Add a few comments to explain the
544         Intel FPU nonsense.
545
546         * sysdeps/libm-i387/s_ceil.S, sysdeps/libm-i387/s_ceilf.S,
547         sysdeps/libm-i387/s_floor.S, sysdeps/libm-i387/s_floorf.S: Correct
548         handling of local variables.  The old version created a stack
549         frame but stored the values outside.
550
551         * sysdeps/libm-ieee754/s_isinf.c, sysdeps/libm-ieee754/s_isnan.c
552         [!NO_LONG_DOUBLE]: Define alias with `long double' versions name.
553
554 Wed May 29 12:53:10 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
555
556         * login/pututline_r.c: Include sys/stat.h.  Fix typos.
557
558         * version.h (VERSION): Set to 1.90.
559
560         * Makerules (distinfo-vars): Write extra-libs and *-routines for each
561         of its elts.
562         * MakeTAGS (sources): Add those sources.
563
564         * MakeTAGS (all-sources): Add $(others:=.c) and $(tests:=.c).
565
566 Wed May 29 08:53:08 1996  Miles Bader  <miles@gnu.ai.mit.edu>
567
568         * hurd/report-wait.c (_S_msg_report_wait): Return `itimer' for the
569         itimer thread.
570
571         * hurd/hurdinit.c (_hurd_init): Set _HURDSIG_TRACED before calling
572         _hurd_proc_init.
573
574 Wed May 29 00:52:20 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
575
576         * string/tester.c (main): Fix strsep tests 6, 7, 20 to expect null
577         token instead of it being implicitly skipped.
578
579         * sysdeps/i386/fpu/__math.h (logb): Correct contraint from =u to =t.
580         Must operate on top of fp reg stack, not second from top.
581
582         * extra-lib.mk (alltypes-$(lib)): Don't append $(objpfx)$(lib).so.
583         (others): Instead, make this depend on it.
584
585 Tue May 28 04:38:10 1996  Ulrich Drepper  <drepper@cygnus.com>
586
587         * limits.h: Change MB_LEN_MAX to 6.  A 31-bit ISO 10646
588         character in UTF-8 encoding has that many bytes.
589
590         * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX.
591         * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX.
592         * locale/Makefile (routines): Add mb_cur_max.
593         * locale/mb_cur_max.c: New file.  This function gets called
594         when the macro MB_CUR_MAX is used.
595         * locale/C-ctype.c: Initialize new mb_cur_max field.
596         * locale/localeinfo.h: Change magic value because of incompatible
597         change.
598         * locale/programs/ld-ctype.c: Determine value of mb_cur_max
599         according to current character set and write it out with the rest.
600         * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore.  Get value
601         according to currently used locale for category LC_CTYPE by
602         calling the function __ctype_get_mb_cur_max.
603
604 Tue May 28 03:27:46 1996  Ulrich Drepper  <drepper@cygnus.com>
605
606         * FAQ:  Fix some typos.
607         Tell that for Linux the kernel header files are necessary.
608
609         * PROJECTS: New file.  List of open jobs for glibc.
610         * Makefile (distribute): Add PROJECTS.
611
612         * crypt/GNUmakefile (headers): New variable.  Mention crypt.h.
613         * crypt/crypt.h: Header for crypt functions.
614
615         * elf/elf.h: Add some new constants from recent Cygnus ELF
616         header files.
617
618         * login/getutid_r.c: Test for correct type.
619         Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and
620         _HAVE_UT_ID resp. are defined.
621         Make really compliant with specification.
622
623         * login/getutline_r.c, login/pututline_r.c: Don't depend on
624         ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are
625         defined.
626         Make really compliant with specification.
627
628         * login/setutent_r.c: Don't depend on ut_type and ut_id unless
629         _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined.
630
631         * login/login.c, login/logout.c, login/logwtmp.c: Complete
632         rewrite.  Now based on getut*/setut* functions.
633
634         * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996.
635         This prevented using this file in other GNU packages.
636
637         * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID,
638         and _HAVE_UT_TV because struct utmp has these members.
639
640         * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case.
641
642         * utmp.h: New file.  Wrapper around login/utmp.h.
643
644 Tue May 28 13:11:19 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
645
646         * elf/dl-error.c (struct catch): New type.
647         (catch): New static variable, struct catch *.
648         (catch_env, signalled_errstring, signalled_objname): Variables removed.
649         (_dl_signal_error): If CATCH is non-null, set its errstring and
650         objname members and jump to CATCH->env.  If it is null, call
651         _dl_sysdep_fatal with a standard message.
652         * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body.
653         No longer use _dl_catch_error.
654
655         * Makerules (sed-remove-objpfx): Avoid extra space in regexp due to
656         continuation line.
657
658         * sysdeps/unix/sysv/linux/i386/socket.S: Fix off-by-one error in
659         setting %ecx to 2nd syscall arg: we have pushed nothing, so function
660         args are found at 4(%esp), not 8(%esp).
661
662 Mon May 27 10:10:00 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
663
664         * Makefile ($(includedir)/stubs.h): Add missing backslash.
665
666         * sysdeps/unix/sysv/linux/i386/brk.c (__curbrk): Initialize it so it
667         can be aliased.
668
669         * sysdeps/unix/sysv/linux/Makefile [$(subdir)=termios] (headers):
670         Append termio.h.
671
672         * Makefile ($(includedir)/stubs.h): Print a msg if we do nothing.
673
674         * misc/sgtty.h: Add forward decl of struct sgttyb in case it is never
675         defined.
676
677         * sysdeps/unix/sysv/linux/termio.h: New file.
678         * sysdeps/unix/sysv/linux/Dist: Add it.
679
680         * sysdeps/unix/sysv/linux/ioctl-types.h: New file, wrapper around
681         kernel header <asm/termios.h>.
682
683         * misc/Makefile (headers): Add ioctl-types.h.
684         * sysdeps/generic/ioctl-types.h: New file.
685         * misc/sys/ioctl.h: Include <ioctl-types.h>.
686         (struct tchars, struct ltchars, struct sgttyb, struct winsize,
687         struct ttysize): Types moved there.
688
689         * Makefile ($(includedir)/stubs.h): Don't touch target if new one is
690         identical.
691
692         * time/Makefile (z.% rule): Generate generic zone%/ rule after
693         zone%/right/ and zone%/posix/ rules so they match first.
694
695 Sun May 26 15:15:08 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
696
697         * features.h [_GNU_SOURCE] (_BSD_SOURCE, _SVID_SOURCE,
698         _POSIX_SOURCE, _POSIX_C_SOURCE): Define these.
699
700         * time/Makefile (tzcompile): Add missing backslash.
701
702         * stdlib/ldiv.c: Deansideclized.
703
704         * wctype/wctype.h (__need_wint_t): Define this and include stddef.h.
705         [! _WINT_T] (wint_t): Conditionalize typedef on this in case pre-2.7.3
706         stddef.h doesn't define it.
707         * wcsmbs/wchar.h: Likewise.
708         * stdlib/strtod.c: Likewise.
709
710         * wcsmbs/wcstok.c: Fix argument name typo.
711
712 Sun May 26 19:39:53 1996  Ulrich Drepper  <drepper@cygnus.com>
713
714         * intl/loadmsgcat.c (_nl_load_domain): Test correct variable
715         after malloc.
716
717         * string/Makefile (tester-ENV): New variable to suppress message
718         translation in test.
719
720         * string/tester.c: Add tests for strtok_r and strsep.
721
722         * sysdeps/i386/i486/strcat.S: Correct some more 8bit operation
723         <-> 32 bit operand conflicts.
724
725         * sysdeps/i386/strsep.S: Wrapper around <sysdeps/i386/strtok.S>
726         to produce strsep function.
727         * sysdeps/i386/strtok.S: Optimized implementation of strtok
728         function.
729         * sysdeps/i386/strtok_r.S: Wrapper around <sysdeps/i386/strtok.S>
730         to produce strtok_r function.
731
732         * sysdeps/generic/strtok.c: Moved here from string/strtok.c.
733         Corrected example in comment.
734
735         * string/Makefile (routines): Add strtok_r.
736         * sysdeps/generic/strtok_r.c: New file.  Implement reentrant version
737         of strtok_r.
738         * string/string.h: Add prototype for strtok_r.
739         * wcsmbs/wcstok.c: Handle illegal SAVE_PTR argument the same
740         as in strtok_r.
741
742 Sun May 26 13:28:23 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
743
744         * time/tzset.c (__tzset): Ignore leading : in $TZ; always try tzfile
745         first and fall back to 1003.1 syntax only if it fails.
746
747         * time/Makefile (install-others): Also install posix/ZONE and
748         right/ZONE for each ZONE in $(zonenames).
749         (z.% rule): Generate rules for right/ZONE and posix/ZONE targets too,
750         the difference begin leapseconds vs /dev/null as 3rd dep.  For
751         original ZONE targets use $(leapseconds), to be set in Makeconfig.
752         (target-zone-flavor): New variable.
753         (tzcompile): Use it to get the right -d for posix/ and right/ flavors.
754         * Makeconfig (leapseconds): New variable.
755
756         * mach/Machrules (%.udeps rule): Depend on Machrules.
757         Emit deps for .uh and .__h files.
758         (%.uh, %.__h rules): Don't depend on %.defs; use #include <$*.defs>
759         instead.
760
761 Sun May 26 01:06:47 1996  Ulrich Drepper  <drepper@cygnus.com>
762
763         * stdlib/Makefile (routines): Add llabs, lldiv.
764         * stdlib/llabs.c: New file.  Implementation of return
765         absolute value of long long argument.
766         * stdlib/lldiv.c: New file.  Implementation of division with remainder
767         of long long argument.
768         * stdlib/stdlib.h [__USE_GNU] (lldiv_t): New type for lldiv
769         function.
770         Define prototypes for lldiv and llabs functions.
771
772         * locale/C-collate.c: Initialize _NL_COLLATE_NRULES element.
773
774         * stdlib/strtod.c: Replace wchar_t with wint_t.  The later is
775         really the type for a single wide character.
776
777         * string/strxfrm.c (print_val): Define separate version for
778         use as wcsxfrm.  Here we don't need UTF8 encoding.
779
780         * wcsmbs/wchar.h:  gcc-2.7.2-960517 finally introduces wint_t
781         in <stddef.h>.  Use this value and only for older gcc version
782         define in place.
783         (uwchar_t): Remove definition.
784
785         * wcsmbs/wcscmp.c, wcsmbs/wcscoll.c, wcsmbs/wcsncmp.c,
786         wcsmbs/wcsxfrm.c, wcsmbs/wmemcmp.c: : Don't use uwchar_t as unsigned
787         type.  wint_t is intended for this.
788
789 Sat May 25 14:10:19 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
790
791         * sysdeps/unix/bsd/direntry.h: Use [1] instead of [0] for d_name to
792         quiet -ansi -pedantic.
793         * sysdeps/unix/common/direntry.h: Likewise.
794
795         * login/Makefile (headers): Add lastlog.h.
796         * login/lastlog.h: New file.
797
798         * login/Makefile (CFLAGS): Don't append -D_THREAD_SAFE.
799         * login/utmp.h [_REENTRANT || _THREAD_SAFE]: Replace this conditional
800         with #ifdef __USE_REENTRANT.
801
802         * features.h (__GNU_LIBRARY__): Set to 6.
803         [_GNU_SOURCE] (_POSIX_SOURCE, _POSIX_C_SOURCE, _BSD_SOURCE,
804         _SVID_SOURCE): Make sure they are all defined.
805
806         * sysdeps/unix/sysv/linux/gnu/types.h: Instead of including
807         <linux/posix_types.h>, define _LINUX_TYPES_DONT_EXPORT and then
808         include <linux/types.h>.
809
810         * resource/sys/resource.h: Remove trailing commas from enums.
811
812 Fri May 24 17:30:50 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
813
814         * sysdeps/generic/netinet/in.h: Remove trailing commas from enums.
815         * sysdeps/unix/sysv/linux/netinet/in.h: Likewise.
816
817         * login/getutline_r.c: Include string.h.
818
819         * Rules (static-only-routines): Restore the rule to make these .so's
820         empty objects.
821
822         * login/pututline_r.c: Use struct assignment instead of memcpy.
823
824         * login/getutline_r.c: Use strncmp instead of comparing two pointers
825         that will only be equal if you are overwriting the data and screwing
826         yourself anyway.
827
828 Fri May 24 02:31:36 1996  Ulrich Drepper  <drepper@cygnus.com>
829
830         * sysdeps/unix/sysv/linux/speed.c: Add new speed value 460800.
831
832 Thu May 23 23:09:33 1996  Ulrich Drepper  <drepper@cygnus.com>
833
834         * FAQ: Add answer for 100% source code compatibility to Linux
835         libc by David Mosberger-Tang.
836
837         Update from bind-4.3.4-T3B.
838         * inet/arpa/inet.h: Add prototypes for inet_pton, inet_ntop,
839         inet_nsap_addr, and inet_nsap_ntoa.
840         * resolv/gethnamaddr.c: Correct compatibility problems (sprintf),
841         remove fourth argument to inet_pton and correct handling of
842         host_addr passing.
843         * resolv/inet_ntop.c: Correct compatibility problems (sprintf).
844         * resolv/inet_pton.c: Remove fourth argument.
845         * resolv/resolv.h: Remove prototypes for inet_nsap_addr and
846         inet_nsap_ntoa.  Now in <arpa/inet.h>.
847
848         * stdlib/gmp-impl.h: Add prototypes for internal functions.
849
850 Thu May 23 22:49:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
851
852         * Rules (subdir_install): Remove dep on sor-$(subdir).
853         (static-only-routines): Removed variable and associated rules.
854
855 Wed May 22 00:40:50 1996  David Mosberger-Tang  <davidm@azstarnet.com>
856
857         * sysdeps/unix/sysv/linux/alpha/speed.c (speeds): Add entry for
858         460800 baud.
859
860         * sysdeps/unix/sysv/linux/alpha/statbuf.h: New file.
861
862         * sysdeps/unix/sysv/linux/alpha/Makefile (headers): Add
863         alpha/ptrace.h.
864         * sysdeps/unix/sysv/linux/alpha/alpha/ptrace.h: New file.
865
866         * sysdeps/libm-ieee754/s_scalbnf.c: Call __scalbnf instead of
867         scalbnf.
868
869         * sysdeps/generic/sigset.h (__sigismember, __sigaddset,
870         __sigdelset): Add declaration to keep ANSI compilers quiet.
871
872         * sysdeps/alpha/__math.h (cabs): Remove underscores from struct
873         __cabs_complex member names in call to __hypot().
874
875         * sysdeps/alpha/copysign.S, sysdeps/alpha/fabs.S: New files.
876
877         * sysdeps/alpha/divrem.h: Renamed from sysdeps/alpha/divrem.S to avoid
878         name collision with math library.
879
880         * sysdeps/alpha/divl.S, sysdeps/alpha/divlu.S, sysdeps/alpha/divq.S,
881         sysdeps/alpha/divqu.S, sysdeps/alpha/reml.S, sysdeps/alpha/remlu.S,
882         sysdeps/alpha/remq.S, sysdeps/alpha/remqu.S: Include divrem.h instead
883         of divrem.S.
884
885         * sysdeps/unix/alpha/sysdep.h: Include regdef.h.  Define LEAF macro
886         to simplify declaration of leaf functions.
887
888         * sysdeps/alpha/_mcount.S, sysdeps/alpha/bb_init_func.S,
889         sysdeps/alpha/bsd-_setjmp.S, sysdeps/alpha/ffs.S,
890         sysdeps/alpha/htonl.S, sysdeps/alpha/htons.S, sysdeps/alpha/memchr.S,
891         sysdeps/alpha/setjmp.S, sysdeps/alpha/strlen.S,
892         sysdeps/alpha/udiv_qrnnd.S, sysdeps/unix/sysv/linux/alpha/brk.S,
893         sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S,
894         sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S,
895         sysdeps/unix/sysv/linux/alpha/pipe.S,
896         sysdeps/unix/sysv/linux/alpha/sigsuspend.S,
897         sysdeps/unix/sysv/linux/alpha/syscall.S,
898         sysdeps/unix/sysv/linux/alpha/start.S,
899         sysdeps/unix/sysv/linux/alpha/sysdep.S: Remove include of regdef.h.
900         sysdep.h includes it now. Replace ENTRY by LEAF with appropriate
901         framesize declaration.  Replace "lda pv,sym/jsr pv" by "jsr sym".
902
903         * sysdeps/unix/sysv/linux/alpha/sysdep.h (NO_UNDERSCORES): Don't
904         define.
905
906         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Added getsockopt,
907         ptrace, and sysctl.
908
909         * sysdeps/unix/sysv/linux/alpha/profil-counter.h: File removed.
910
911         * sysdeps/unix/sysv/linux/alpha/ioperm.c: Modify to support
912         dynamic recognition of platform type.
913         (_bus_base): New function.
914
915         * sysdeps/unix/sysv/linux/alpha/llseek.S: New file.
916
917         * sunrpc/rpc/rpc.h, sunrpc/rpc/svc.h: Avoid nested comments since
918         they produce ugly warnings by gcc.
919
920         * posix/sys/types.h [__USE_MISC]: Add typedef for ulong.
921
922 Wed Mar 27 10:26:21 1996  David Mosberger-Tang  <davidm@azstarnet.com>
923
924         * sysdeps/alpha/setjmp.S: Must establish global pointer before
925         address of __sigsetjmp_aux can be loaded.
926
927 Wed May 22 22:10:01 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
928
929         * stdlib/canonicalize.c: New file.
930         * stdlib/stdlib.h: Declare canonicalize_file_name, realpath.
931         * stdlib/Makefile (routines): Add canonicalize.
932
933         * posix/unistd.h: Declare __canonicalize_directory_name_internal.
934
935 Thu May 23 00:01:10 1996  Ulrich Drepper  <drepper@cygnus.com>
936
937         * db/recno/rec_seq.c: Prevent `sccsid' definition by using the
938         same #if condition as in the other db files.
939
940         * intl/Makefile: Add -Wno-unused CFLAGS for compilation of
941         bindtextdom.c, finddomain.c, and localealias.c.
942
943         * intl/dcgettext.c: Don't define prototype for getcwd() when
944         compiling in glibc.
945
946         * libio/cleanup.c: Add prototype for _IO_register_cleanup.
947
948         * libio/filedoalloc.c, libio/fileops.c, libio/iopopen.c: Don't
949         define _POSIX_SOURCE unconditionally.
950
951         * libio/filedoalloc.c, libio/iopopen.c: Include <unistd.h> if
952         compiling in glibc.
953
954         * libio/fileops.c (_IO_file_close_it): Don't sync file, call
955         flush instead.  This relaxes the rules from POSIX.1 about
956         changing the active handle a bit.
957
958         * libio/iofopncook.c (struct _IO_cookie_file): Move definition
959         into <libio.h>.
960         Add prototypes for local functions to prevent warnings.
961
962         * libio/iopopen.c: Change prototypes for _IO_fork, _IO_pipe, and
963         _IO_dup2 to contain complete parameter list.
964
965         * libio/libio.h: Add definition of struct _IO_cookie_file.
966
967         * libio/libioP.h: Add prototypes for _IO_vasprintf, _IO_vdprintf,
968         and _IO_vsnprintf.
969
970         * libio/memstream.c: Include <stdio.h>.
971
972         * libio/stdio.h: Add prototypes for fopencookie,
973         __stdio_gen_tempname, __vfscanf, __vsscanf, and __vsnprintf.
974
975         * libio/strops.c: Avoid useless expression in `for' initializer.
976
977         * locale/findlocale.c: Add some casts to prevent warnings.
978
979         * locale/programs/locfile.c (write_locale_data): Don't use
980         double `/' in locale binary file.
981
982         * posix/unistd.h: Remove prototype for `reboot'.
983
984         Update from bind-4.9.4-T1A.
985         * resolv/Makefile (routines): Add inet_ntop and inet_pton.
986         * resolv/arpa/nameser.h: Add definition of IN6ADDRSZ.
987         * resolv/gethnamaddr.c, resolv/getnetnamadr.c, resolv/res_comp.c,
988         resolv/res_debug.c, resolv/res_init.c
989
990         * resolv/inet_ntop.c, resolv/inet_pton.c: New files.
991
992         * resolv/resolv.h: Add RES_USE_INET6 flag.
993         (__dn_isvalid): Renamed to __res_dnok.
994         Add prototypes for __res_ownok and __res_mailok.
995
996         * stdio-common/Makefile: Add -Wno-unused to CFLAGS for _itoa.c.
997
998         * stdio-common/getline.c, stdio-common/vfscanf.c,
999         sysdeps/posix/tempname.c: Don't use <ansidecl.h> anymore.
1000
1001         * sysdeps/unix/sysv/linux/Makefile [$subdir == misc]
1002         (sysdep_routines): Add s_reboot.
1003         (install-others): Add $(includedir)/sys/syscall.h.
1004         New rule for $(includedir)/sys/syscall.h to produce from
1005         <asm/unistd.h>.
1006
1007         * sysdeps/unix/sysv/linux/reboot.c: New file.  Make single
1008         argument function call 3 argument system call.
1009
1010         * sysdeps/unix/sysv/linux/sys/reboot.h: New file.  Linux specific
1011         definition for reboot function.
1012
1013         * sysdeps/unix/sysv/linux/syscall.h: Remove old and obsolete
1014         comment.
1015
1016         * sysdeps/unix/sysv/linux/syscalls.list: Rename function for
1017         reboot syscall to __syscall_reboot.
1018
1019         * wcsmbs/wchar.h: Protect prototypes for wcstof and wcstold by
1020         __USE_GNU, not USE_GNU.
1021
1022 Tue May 21 21:55:49 1996  David Mosberger-Tang  <davidm@AZStarNet.com>
1023
1024         * locale/programs/charset.c, locale/programs/ld-collate.c:
1025         Add casts to prevent warnings on 64-bit machines.
1026
1027         * locale/programs/ld-monetary.c: Don't do unnecessary tests for
1028         int_frac_digits and frac_digits which only produce warnings.
1029
1030 Mon May 13 23:45:29 1996  David Mosberger-Tang  <davidm@AZStarNet.com>
1031
1032         * inet/arpa/inet.h: Backup return type of inet_addr to u_long.
1033         * resolv/inet_addr.c: Likewise.
1034
1035         * resolv/Makefile (distribute): Add res_hconf.h
1036         (routines): Add res_hconf.
1037
1038         * resolv/gethnamaddr.c: Add support for /etc/host.conf.
1039
1040         * resolv/res_init.c: Initialize /etc/host.conf reader.
1041
1042         * resolv/res_hconf.c, resolv/res_hconf.h: New files.
1043         Implementation of reading /etc/host.conf.
1044
1045 Wed May 22 21:21:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1046
1047         * Rules (%.out rules): Prepend $($*-ENV) to the command.
1048
1049         * sysdeps/unix/sysv/linux/i386/brk.c (___brk_addr): Define as weak
1050         alias for __curbrk.
1051
1052 Wed May 22 19:37:27 1996  Miles Bader  <miles@gnu.ai.mit.edu>
1053
1054         * hurd/hurdexec.c (_hurd_exec): Pass INIT_TRACEMASK.
1055         * hurd/hurdmsg.c (set_int): Support INIT_TRACEMASK.
1056
1057 Wed May 22 18:47:31 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1058
1059         * sysdeps/mach/hurd/getcwd.c
1060         (_hurd_canonicalize_directory_name_internal): New function, broken out
1061         of __getcwd.
1062         (__getcwd): Use it.
1063         (__canonicalize_directory_name_internal): New function using it.
1064
1065         * sysdeps/posix/getcwd.c (__canonicalize_directory_name_internal): New
1066         function, broken out of __getcwd.
1067         (__getcwd): Use it.
1068
1069 Wed May 22 18:14:05 1996  Miles Bader  <miles@gnu.ai.mit.edu>
1070
1071         * string/argz-create.c (__argz_create): Correctly calculate length.
1072
1073         * string/argz-extract.c (__argz_extract): Add terminating 0 entry.
1074         * hurd/hurdstartup.c (_hurd_startup): ... and don't so here.
1075
1076 Wed May 22 17:22:14 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1077
1078         * posix/glob.c [VMS]: Don't include <pwd.h>.
1079         [HAVE_VMSDIR_H]: Include "vmsdir.h".
1080         (glob) [VMS]: Don't grok ~.
1081
1082 Wed May 22 14:46:53 1996  Miles Bader  <miles@gnu.ai.mit.edu>
1083
1084         * hurd/hurdstartup.c (_hurd_startup): Terminate the vectors we get
1085         back from argz_extract.
1086
1087 Wed May 22 13:56:42 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1088
1089         * configure.in: Remove checks for objdump, objcopy, and awk.
1090         * config.make.in (OBJDUMP, OBJCOPY, AWK): Variables removed.
1091         * Makefile (distribute): Remove extract-dynsym.
1092         * extract-dynsym: File removed.
1093
1094 Tue May 21 22:17:45 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1095
1096         * termios/cfmakeraw.c: Set MIN to 1 and TIME to 0.
1097
1098 Wed May 22 01:48:54 1996  Ulrich Drepper  <drepper@cygnus.com>
1099
1100         * stdlib/strtol.c [!QUAD] (ULONG_MAX, LONG_MAX): Define these
1101         macros if they are not available.
1102         (WEAKNAME): New macro to declare argument as weak.
1103         Define function with __ prefix and add normal name as weak alias.
1104
1105         * sysdeps/posix/euidaccess.c (S_IROTH, S_IWOTH, S_IXOTH): Defines
1106         these macros if not already available based on R_OK, W_OK, and
1107         X_OK.
1108
1109 Tue May 21 18:48:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1110
1111         * misc/sys/syslog.h (__need___va_list): Define this instead of
1112         __need_va_list before including <stdarg.h>.
1113
1114         * Makerules (o-iterator): Use $(object-suffixes-left) instead
1115         of $(object-suffixes) to produce repetitions; this is used for other
1116         lists than just that one.
1117         [versioned]: Use $(o-iterator) properly.
1118
1119         * sysdeps/unix/sysv/linux/Implies: Include `gnu'.
1120         * sysdeps/mach/hurd/Implies: Likewise.
1121
1122 Sat May 18 02:57:46 1996  Ulrich Drepper  <drepper@cygnus.com>
1123
1124         * login/Makefile: New file.  This directory contains functions
1125         for user administration.
1126         * Makefile (subdirs): Add login.
1127
1128         * misc/Makefile (headers): Remove utmp.h.  Now in login/utmp.h.
1129         (extra-libs, libutil-routines): Ditto.
1130         * misc/login.c, misc/login_tty.c, misc/logout.c, misc/logwtmp.c,
1131         misc/utmp.h: Moved to misc/.
1132         * login/login.c, login/login_tty.c, login/logout.c,
1133         login/logwtmp.c, login/utmp.h: Moved to here from misc/.
1134
1135         * login/utmp.h: Split file.  Definitions of data structures
1136         and constants are now in the system dependent utmpbits.h file.
1137
1138         * login/setutent_r.c, login/setutent.c, login/endutent_r.c,
1139         login/endutent.c, login/getutent_r.c, login/getutent.c,
1140         login/getutid_r.c, login/getutid.c, login/getutline_r.c,
1141         login/getutline.c, login/pututline_r.c, login/pututline.c:
1142         New files.  Routines to handle utmp-style files.
1143
1144         * sysdeps/gnu/utmpbits.h: New file.  Contains GNU/Linux
1145         specific definitions of utmp data structures and constants.
1146
1147         * sysdeps/unix/sysv/utmpbits.h: Renamed from sysdeps/unix/sysv/utmp.h.
1148
1149         * sysdeps/generic/utmpbits.h: New file.  Generic (BSDish) version of
1150         definitions of utmp data structures and constants.
1151
1152 Fri May 17 00:01:31 1996  Ulrich Drepper  <drepper@cygnus.com>
1153
1154         * locale/C-monetary.c: Default value for mon_decimal_point should be
1155         '.'.
1156
1157         * stdio-common/printf.h: Remove Linux libc compatibility stuff.
1158         Add `extra' flag.  Currently used in __printf_fp.
1159
1160         * stdio-common/printf_fp.c (__guess_grouping): Renamed from
1161         `guess_grouping' and extend visibility to extern.  This function
1162         is now used in `strfmon'.
1163         (__printf_fp): Recognize new bit flag in info struct.  This
1164         triggers to use the grouping information and decimal point from
1165         the LC_MONETARY category instead of the LC_NUMERIC category.
1166
1167         * stdio-common/vfprintf.c (process_arg): Correct major bug.  In
1168         `complicated' loop we must not use the varargs because the args
1169         are already available in the ARGS_VALUE array.
1170
1171         * stdlib/Makefile (headers): Add monetary.h.
1172         (routines): Add strfmon.
1173         * stdlib/monetary.h: New file.  Header for strfmon function.
1174         * stdlib/strfmon.c: New file.  Implement strfmon function to print
1175         monetary amounts according to current locale's rules.
1176
1177         * sysdeps/unix/sysv/linux/i386/sys/vm86.h: The kernel header is
1178         now (>= Linux-1.3.100) called <asm/vm86.h>.
1179
1180 Thu May 16 00:31:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1181
1182         * Makerules [versioned]: Make symlinks in the build directory, because
1183         the versioned names might be referenced by a DT_NEEDED in another
1184         library.
1185
1186 Wed May 15 18:59:38 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1187
1188         * manual/examples/longopt.c: Include stdlib.h and getopt.h.
1189
1190 Tue May 14 03:36:21 1996  Ulrich Drepper  <drepper@cygnus.com>
1191
1192         * sysdeps/unix/sysv/linux/Makefile [$subdir == misc] (headers):
1193         Add sys/acct.h and sys/sysctl.h.
1194
1195 Tue May 14 19:42:04 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1196
1197         * sysdeps/generic/strrchr.c: Deansideclized.
1198
1199         * elf/Makefile (ldd): Depend on Makefile.
1200         Find ld.so in $(slibdir) instead of $(libdir).
1201
1202         * sysdeps/i386/strrchr.S: Use `testl $3, %esi' instead of `testb $3,
1203         %esi'; gas misassembles the latter into `testb $3, %dh'.
1204
1205         * mach/Machrules (%.udeps rule): Do $(make-target-directory) first.
1206
1207 Tue May 14 16:38:44 1996  David Mosberger-Tang <davidm@AZStarNet.com>
1208
1209         * sunrpc/getrpcent.c (interpret): Declare args.  Rewrite parsing using
1210         strpbrk.
1211
1212 Tue May 14 20:18:38 1996  Ulrich Drepper  <drepper@cygnus.com>
1213
1214         * time/Makefile (routines): Add strptime.
1215         * time/time.h: Add prototype for strptime.
1216         * time/strptime.c: New file.  Implementation according to XPG4.
1217
1218 Tue May 14 14:07:10 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1219
1220         * libc-symbols.h (lint): Macro removed.  The sunrpc code does some
1221         really stupid things #ifdef lint.
1222
1223         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter): Fix
1224         struct member name: sc_eip -> eip.
1225
1226 Mon May 13 19:52:33 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1227
1228         * Makerules (stub-$(subdir)): Put cmds including cd inside (...) with
1229         output redirect outside it.
1230
1231         * elf/Makefile (subdir_lib): Depend on ld.so.
1232
1233 Sun May 12 22:52:22 1996  Bruce Elliott  <belliott@accessone.com>
1234
1235         * stdio-common/vfprintf.c: Correct handling of unsigned short
1236         values.
1237
1238 Mon May 13 12:03:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1239
1240         * extra-lib.mk (alltype-$(lib)): Put libs in $(objpfx) instead of
1241         $(common-objpfx).
1242         * Makerules [install-lib.a]: Find them there.
1243
1244         * sysdeps/unix/sysv/linux/i386/profil-counter.h: New file.
1245
1246         * extra-lib.mk: Skip the hair if $(object-suffixes-$(lib)) is empty.
1247
1248         * posix/glob.h [_AMIGA]: Remove `struct stat;' forward decl.
1249
1250         * configure.in (--with-fp): Note in help string that it's the default.
1251
1252         * locale/programs/ld-ctype.c (struct locale_ctype_t): Use u_int32_t
1253         instead of unsigned int for map_collection_max and map_collection_act.
1254
1255         * stdio-common/vfprintf.c [USE_IN_LIBIO] (flockfile, funlockfile):
1256         Macros removed; they are in <stdio.h>.
1257         * stdio-common/vfscanf.c: Likewise.
1258
1259         * posix/glob.c [_AMIGA]: Don't include <pwd.h>.
1260         (glob): Remove bogus & in call to globfree.
1261         [_AMIGA]: Use AmigaDOS file name conventions.
1262
1263         * time/Makefile (zonenames): Target removed.
1264         (extra-objs): Remove it from here.
1265         Include the z.* files directly instead of including zonenames; use
1266         `-include' to not complain before they exist.
1267
1268         * sysdeps/unix/Makefile: Find sysd-syscalls and s-proto.d with
1269         $(common-objpfx) instead of $(objpfx).
1270
1271         * sysdeps/unix/bsd/telldir.c (seekdir, telldir): Use new struct member
1272         names without __.
1273
1274         * Makerules [install-lib-non.a]: Find these things with $(objpfx)
1275         instead of $(common-objpfx).
1276
1277         * Makeconfig (sysdep-configures): New variable.
1278         (config.status): Depend on $(sysdep-configures).
1279
1280 Fri May 10 20:07:52 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1281
1282         * sysdeps/unix/sysv/linux/profil.c: New file.
1283
1284 Fri May 10 19:59:50 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1285
1286         * sysdeps/m68k/Makefile (CFLAGS-setjmp.c): New variable.
1287
1288 Fri May 10 19:55:42 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1289
1290         * shlib-versions: Use libm=6 and libc=6 for m68k-linux.
1291
1292 Sun May 12 11:16:58 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1293
1294         * string/envz.c: Fix uses of unsigned to size_t.
1295
1296         * Makerules ($(libdir)/libc.so): Make the file an ld script.
1297
1298         * sysdeps/mach/hurd/configure.in: Don't grok --with-hurd option.
1299
1300         * sysdeps/mach/configure.in: File removed.
1301         * sysdeps/mach/configure: File removed.
1302
1303         * mach/Machrules (%.udeps rule): Write deps for %_server.[ch] too.
1304         (%_server.[ch] rule): Don't depend on %.defs; use #include to get
1305         installed .defs file.
1306
1307         * stdio-common/vfprintf.c (flockfile, funlockfile): Define to
1308         nothing for stdio.  Fix fUNlockfile -> funlockfile for libio.
1309         * stdio-common/vfscanf.c: Likewise.
1310
1311 Sat May 11 13:43:41 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1312
1313         * hurd/hurdfault.c: Include faultexc_server.h instead of faultexc.h.
1314
1315         * mach/Machrules (%.ir rule): Don't produce deps for imports.
1316
1317         * elf/dl-fini.c (_dl_fini): Clear L->l_init_called after calling fn.
1318
1319         * Makerules (install): Depend on $(slibdir)/libc.so$(libc.so-version).
1320         [!subdir] ($(libdir)/libc.so, $(common-objpfx)/libc-syms.so): Protect
1321         these targets and install dep on $(libdir)/libc.so with this.
1322
1323         * hurd/Makefile: Removed all rules and defns for using code from Hurd
1324         sources and installing headers from there.
1325
1326         * sysdeps/mach/hurd/errnos.awk: Set in_mach_errors to FILENAME when we
1327         set it.  In Mach error matching clause, only match if FILENAME is
1328         still the same value.
1329
1330         * sysdeps/mach/hurd/Makefile: Don't include sysdeps/mach/Makefile;
1331         $(mach-srcdir) no longer exists.
1332         (hurd-srcdir): Variable removed.
1333         (includes): Don't append -I$(hurd-srcdir).
1334         (last-includes): Variable removed.
1335         Remove vpath specs using $(hurd-srcdir).
1336         (mach-errno-h): New canned sequence.
1337         ($(common-objpfx)errnos.d): New target, generated included makefile
1338         to determine absolute file names of Mach headers to search for error
1339         codes and set variable mach-errnos-deps.
1340         ($(common-objpfx)stamp-errnos): Depend on $(mach-errnos-deps) instead
1341         of prior explicit list.
1342         (generated): Add errnos.d, stamp-errnos.
1343
1344         * mach/Machrules (some-if-rtn): New variable and target; compute deps
1345         of some if routine and make all if routines depend on that .d file
1346         instead of static list of .h files.
1347
1348         * mach/Makefile (mach/mach_interface.defs,
1349         mach/memory_object_user.defs): Targets removed.
1350         ($(objpfx)mach-syscalls.mk): Tweak this kludge so it doesn't depend
1351         directly on Mach sources.
1352
1353         * sysdeps/mach/Makefile (mach-srcdir): Variable removed.
1354         (includes): Don't append -I$(mach-srcdir).
1355         Remove vpath specs using $(mach-srcdir).
1356
1357         * hurd/Makefile (server-interfaces): Add faultexc.
1358         (sig): Remove it from here.
1359         (fault%.[ch]): Rule removed.
1360         (MIGFLAGS-faultexc): New variable.
1361
1362         * hurd/faultexc.defs: New file.
1363
1364         * mach/Machrules (%.ustamp rule): Pass $(MIGFLAGS-$*) to mig.
1365         (%_server.[ch] rule): Likewise.
1366
1367         * mach/Makefile: Removed all rules and defns for using code from Mach
1368         sources and installing headers from there.
1369
1370         * Makeconfig [$(build-shared)=yes] (link-libc): Append
1371         $(libc.so-version) to libc.so.
1372
1373 Fri May 10 18:36:14 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1374
1375         * mach/Machrules (%.ustamp rule): Don't depend on %.defs.
1376         (%.udeps): New rule parallel to that one, generating included
1377         makefiles with -M output from `#include <%.defs>'.
1378
1379         * Makerules (sed-remove-objpfx): Remove space before \ at eol.
1380
1381         * Makefile (distribute): Add FAQ.
1382         * FAQ: New file contributed by drepper.
1383
1384         * time/Makefile (headers): Add timebits.h.
1385         * sysdeps/unix/sysv/linux/timebits.h: New file.
1386         * sysdeps/stub/timebits.h: New file.
1387         * time/time.h (CLK_TCK): Define to CLOCKS_PER_SEC.
1388         (CLOCKS_PER_SEC): Remove this macro.  Instead #include <timebits.h>.
1389
1390 Fri May 10 16:22:44 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
1391
1392         * string/argz-create.c (__argz_create): Restore const keyword to
1393         ARGV parm.
1394         * string/argz.h (__argz_create, argz_create): Restore const
1395         keyword.
1396         * string/envz.c (envz_get): Don't declare ENTRY const.
1397
1398 Fri May 10 11:48:03 1996  Miles Bader  <miles@gnu.ai.mit.edu>
1399
1400         * string/argz.h (argz_create): Fix param type.
1401         * string/argz-create.c (__argz_create): Remove const from param type.
1402         * string/envz.c (envz_get): Remove const from return type.
1403
1404 Fri May 10 09:41:54 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
1405
1406         * string/argz.h (__argz_create, argz_create): Omit const keyword
1407         from declaration of ARGV.
1408         * string/envz.h (envz_get): Omit const from declaration of return
1409         type.
1410
1411 Thu May  9 09:17:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1412
1413         * aclocal.m4 (AC_FD_MSG, AC_FD_CC): Fix these for autoconf weirdness.
1414
1415         Cleanups in sunrpc code from NIIBE Yutaka <gniibe@mri.co.jp>.
1416         * sunrpc/clnt_tcp.c (clnttcp_create): Don't close *SOCKP if it's -1.
1417         * sunrpc/clnt_simp.c (callrpc): Don't close CRP->socket if it's
1418         RPC_ANYSOCK.
1419         * sunrpc/pmap_clnt.c (pmap_set): Don't close SOCKET, since
1420         CLNT_DESTROY already has.
1421         (pmap_unset): Likewise.
1422         * sunrpc/pm_getmaps.c (pmap_getmaps): Likewise.
1423         * sunrpc/pm_getport.c (pmap_getport): Likewise.
1424         * sunrpc/pmap_rmt.c (pmap_rmtcall): Likewise.
1425         * sunrpc/portmap.c (callit): Likewise.
1426
1427         * Makerules (versioned): Strip whitespace.
1428
1429         * Rules (static-only-routines rule): Remove spurious space in dep.
1430
1431         * misc/getusershell.c: Undo changes of 7 May 96 (rev 1.6).
1432         Cast string constants to char *.
1433
1434         * posix/glob/SMakefile, posix/glob/SCOPTIONS, posix/glob/Makefile.ami:
1435         New files, AmigaDOS support from Aaron Digulla.
1436         * posix/Makefile (glob.tar): Add AmigaDOS support files.
1437
1438         * sysdeps/unix/sysv/linux/net/if.h: New file.
1439         * sysdeps/unix/sysv/linux/Dist: Add it.
1440         * sysdeps/unix/sysv/linux/Makefile [$(subdir)=socket] (headers): Add
1441         net/if.h.
1442
1443         * Makeconfig (link-libc): Add libc.a after libc.so in link.
1444
1445         * Rules (static-only-routines rule): Use empty.o instead of dummy.o.
1446         (empty.o): New target.
1447         (generated): Add empty.c, empty.o.
1448
1449         * resolv: Code updated from BIND-4.9.3P2C3.
1450
1451         * Rules (static-only-routines rule): Use dummy.o, not dummy.so.
1452
1453 Wed May  8 20:04:29 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1454
1455         * extract-dynsym: New file.
1456         * Makefile (distribute): Add it.
1457         * Rules (subdir_install): Depend on $(common-objpfx)sor-$(subdir).
1458         [! libc.so-version]: Clear static-only-routines.
1459         ($(common-objpfx)sor-$(subdir)): New target.
1460         [static-only-routines]: New static pattern rule for these .so's.
1461         * Makerules [libc.so-version] ($(slibdir)/libc.so): Target removed.
1462         [libc.so-version] ($(libdir)/libc.so, $(common-objpfx)libc-syms.so):
1463         New targets replace it.
1464         (install) [libc.so-version]: Depend on $(libdir)/libc.so instead of
1465         $(slibdir)/libc.so.
1466         * io/Makefile (static-only-routines): New variable.
1467         * configure.in: Check for tools objdump and objcopy, and for awk.
1468         * config.make.in (OBJDUMP, OBJCOPY, AWK): New variables.
1469
1470 Thu May  9 01:24:00 1996  Ulrich Drepper  <drepper@cygnus.com>
1471
1472         * locale/programs/config.h: Remove definition of wint_t.
1473
1474         * locale/programs/ld-collate.c: Include <wchar.h> instead of
1475         <wcstr.h>.
1476
1477         * manual/time.texi: Add some more description for %U and %W
1478         format of strftime.  Describe new format %V of strftime.
1479
1480         * resolv/gethnamaddr.c: Prevent warning by preventing variable
1481         definition.
1482         * stdio-common/_itoa.c: Ditto.
1483
1484 Tue May  7 23:43:07 1996  Ulrich Drepper  <drepper@cygnus.com>
1485
1486         * libio/clearerr.c, libio/feof.c, libio/ferror.c, libio/fgetc.c,
1487         libio/fileno.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
1488         libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
1489         libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
1490         libio/iofputs.c, libio/iofread.c, libio/iofsetpos.c,
1491         libio/ioftell.c, libio/iofwrite.c, libio/iogetdelim.c,
1492         libio/iogets.c, libio/ioputs.c, libio/iosetbuffer.c,
1493         libio/iosetvbuf.c, libio/ioungetc.c, libio/iovsprintf.c,
1494         libio/libio.h, libio/putc.c, libio/putchar.c, libio/rewind.c,
1495         libio/stdio.h, stdio-common/printf_fp.c, stdio-common/vfprintf.c,
1496         stdio-common/vfscanf.c: Prepare for reentrant libio.
1497
1498         * libio/clearerr_u.c, libio/feof_u.c, libio/ferror_u.c,
1499         libio/fputc_u.c, libio/getc_u.c, libio/getchar_u.c,
1500         libio/iofflush_u.c, libio/putc_u.c, libio/putchar_u.c: New files.
1501         Used in reentrant libio.
1502
1503         * misc/getusershell.c: Prevent warnings.
1504
1505 Wed May  8 12:08:35 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1506
1507         * Makerules (install-lib.so rules): Undouble $s in target and dep
1508         parts of o-iterator-doit defns.
1509         (unversioned libraries install rule): Fix pattern.
1510
1511         * mach/Makefile (mach-src-headers): Use $(base-machine) instead of
1512         $(config-machine).
1513         ($(includedir)/machine): Likewise.
1514
1515         * config.make.in (base-machine): New variable.
1516         * configure.in (machine): Move case stmt to set $machine out of sysdep
1517         dirs AC_CACHE_CHECK.
1518         (base_machine): New variable, set in that switch and AC_SUBST'd.
1519
1520         * Makerules (stub-$(subdir)): Use file name in directory as output,
1521         since cmd is cd'd.
1522
1523         * configure.in (MSGFMT): Use : if none found.
1524
1525         * po/Makefile: Include ../Rules instead of ../Makerules.
1526
1527 Tue May  7 23:18:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1528
1529         * po/Makefile: New file.
1530         * Makefile (subdirs): Add po.
1531
1532         * configure.in: Check for msgfmt.
1533         * config.make.in (MSGFMT): New variable.
1534
1535 Sun May  5 23:49:10 1996  Ulrich Drepper  <drepper@cygnus.com>
1536
1537         * misc/Makefile (routines): Add swapoff.
1538
1539         * sysdeps/unix/sysv/linux/Dist: Add sys/quota.h.
1540
1541         * sysdeps/unix/sysv/linux/sys/quota.h: New file.  Wrapper around
1542         kernel header file.
1543
1544 Tue May  7 19:00:01 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1545
1546         * string/argz-extract.c: Remove const from decl.
1547         * string/argz.h: Here too.
1548
1549         * Makeconfig (version.mk): Fix regexp in sed cmd.
1550         Depend on $(..)Makeconfig.
1551
1552         * GMP code updated from gmp-2.0 release.
1553         * stdlib/Makefile (mpn-routines): Removed add_1, added inlines.
1554         * sysdeps/generic/add_1.c: File removed.
1555         * stdlib/strtod.c: mp_limb is now mp_limb_t.
1556         * stdlib/fpioconst.c, stdlib/fpioconst.h: Likewise.
1557         * stdio-common/_itoa.c: Likewise.
1558         * stdio-common/printf_fp.c: Likewise.
1559         Don't include ansidecl.h.
1560
1561         * sysdeps/mach/hurd/getcwd.c: Use io_identity instead of io_stat.
1562
1563         * shlib-versions: New file.
1564         * Makerules (soversions.mk): New target, include file generated from
1565         shlib-versions.  Moved shared library rules before installation rules.
1566         Rewrote shared library installation rules for versioned libraries.
1567         * math/Makefile (libm.so-version): Variable removed.
1568
1569         * sysdeps/mach/hurd/i386/exc2signal.c: Use struct hurd_signal_detail.
1570
1571         * hurd/report-wait.c (_S_msg_describe_ports): New function.
1572
1573         * configure.in: Add AC_PROG_LN_S check.
1574         * config.make.in (LN_S): New variable.
1575
1576 Sun May  5 03:10:44 1996  Ulrich Drepper  <drepper@cygnus.com>
1577
1578         * misc/efgcvt_r.c (ecvt_r): Work aroung gcc bug.  gcc does
1579         not know about weak aliases now and optimizes necessary `if'
1580         statement away.
1581
1582         * posix/unistd.h: Add swapoff prototype.
1583
1584         * sysdeps/generic/confname.h: Add even more POSIX.4 symbols.
1585
1586         * sysdeps/posix/fpathconf.c (__fpathconf): Get information
1587         for _PC_PATH_MAX from fstatfs function if available.
1588
1589         * sysdeps/posix/sysconf.c: Add code to handle _SC_AIO_LISTIO_MAX,
1590         _SC_AIO_MAX, _SC_AIO_PRIO_DELTA_MAX, _SC_DELAYTIMER_MAX,
1591         _SC_MQ_OPEN_MAX, _SC_MQ_PRIO_MAX, _SC_RTSIG_MAX,
1592         _SC_SEM_NSEMS_MAX, _SC_SEM_VALUE_MAX, _SC_SIGQUEUE_MAX, and
1593         _SC_TIMER_MAX.
1594         * sysdeps/unix/sysv/sysv4/sysconf.c: Ditto.
1595
1596         * sysdeps/stub/swapoff.c: New file.  Stub version for swapoff
1597         function.
1598
1599         * sysdeps/unix/syscalls.list:  Add swapoff.
1600
1601         * sysdeps/unix/sysv/linux/Dist: Add sys/acct.h.
1602
1603         * sysdeps/unix/sysv/linux/Makefile [$(subdir) == misc]
1604         (sysdep_routines): Add mount, umount, llseek, setfsgid, setfsuid,
1605         sysinfo, and uselib.
1606         (headers): Add sys/sysinfo.h.
1607
1608         * sysdeps/unix/sysv/linux/gethostid.c: Prevent warning.
1609
1610         * sysdeps/unix/sysv/linux/i386/Makefile [$(subdir) == misc]
1611         (sysdep_routines): Add ioperm, iopl, and vm86.
1612         (headers): Add sys/perm.h and sys/vm86.h.
1613
1614         * sysdeps/unix/sysv/linux/i386/sys/perm.h: New file.  Contains
1615         prototypes for iopl and ioperm.
1616
1617         * sysdeps/unix/sysv/linux/i386/sys/vm86.h:  New file.  Contains
1618         prototype for vm86.
1619
1620         * sysdeps/unix/sysv/linux/i386/syscalls.list: New file.  Add
1621         vm86 system call.
1622
1623         * sysdeps/unix/sysv/linux/sys/acct.h: New file.  Contains
1624         prototypes for acct function.
1625
1626         * sysdeps/unix/sysv/linux/sys/socket.h: Provide real header
1627         file with prototypes.
1628
1629         * sysdeps/unix/sysv/linux/sys/sysinfo.h: New file.  Contains
1630         prototype for sysinfo function.
1631
1632         * sysdeps/unix/sysv/linux/syscalls.list: Add flock, ioperm, iopl,
1633         llseek, setfsgid, setfsuid, sysinfo, and uselib.
1634
1635         * sysdeps/unix/sysv/linux/sysconf.c: Instead of duplicating
1636         posix/sysconf.c now only handle cases different to that
1637         implementation.
1638
1639 Tue May  7 15:08:19 1996  Miles Bader  <miles@gnu.ai.mit.edu>
1640
1641         * stdio/linewrap.c (__line_wrap_output): Renamed from lwoutput
1642         (all references changed).  Now exported.
1643
1644         * stdio/linewrap.c (struct data): Type deleted (moved to linewrap.h).
1645         (wrap_stream, unwrap_stream, lwclose, lwfileno, lwoutput,
1646         line_wrap_stream, line_unwrap_stream): Use struct line_wrap_data
1647         instead of struct data.
1648         (lwoutput, line_wrap_stream, line_unwrap_stream): Rename various
1649         occurences of `wrap' and `wrapmargin' to `wmargin'.
1650         (line_wrapped, line_wrap_lmargin, line_wrap_set_lmargin,
1651         line_wrap_rmargin, line_wrap_set_rmargin, line_wrap_wmargin,
1652         line_wrap_set_wmargin, line_wrap_point): New functions.
1653         * stdio/linewrap.h: New file.
1654         * stdio/Makefile (headers): Add linewrap.h.
1655
1656 Tue May  7 14:19:12 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1657
1658         * sysdeps/unix/sysv/linux/i386/Makefile: File removed.
1659
1660         * stdio/stdio.h: Remove line_wrap_stream, line_unwap_stream decls.
1661
1662         * sysdeps/unix/sysv/linux/schedbits.h: New file.
1663
1664 Tue May  7 13:47:02 1996  Miles Bader  <miles@gnu.ai.mit.edu>
1665
1666         * stdio/linewrap.c (struct data): Make margin fields not-pointers.
1667         (lwoutput): Adjust uses acordingly.
1668
1669 Tue May  7 10:51:52 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1670
1671         * sysdeps/mach/hurd/fdatasync.c: New file.
1672         * sysdeps/mach/hurd/fsync.c: Pass new flag to file_sync.
1673
1674         * sysdeps/mach/hurd/xmknod.c: Pass new flag to dir_link.
1675         * sysdeps/mach/hurd/symlink.c: Likewise.
1676         * sysdeps/mach/hurd/link.c: Likewise.
1677         * sysdeps/mach/hurd/bind.c: Likewise.
1678         * hurd/hurdsig.c (write_corefile): Likewise.
1679
1680         * hurd/hurdsig.c (write_corefile): Pass cttyid port to crash server.
1681
1682         * sysdeps/mach/hurd/fpathconf.c: RPC takes int pointer, not long int.
1683
1684         * sysdeps/mach/hurd/_exit.c (_hurd_exit): Pass sigcode arg to
1685         proc_mark_exit.
1686         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Likewise.
1687
1688         * sysdeps/mach/hurd/wait4.c: Pass sigcode arg to proc_wait.
1689
1690         * sysdeps/mach/hurd/rename.c: Pass new flag to dir_rename.
1691
1692         * hurd/hurdfault.c (_hurdsig_fault_catch_exception_raise): Use struct
1693         hurd_signal_detail.
1694         * hurd/catch-exc.c (_S_catch_exception_raise): Likewise.
1695         * hurd/hurd-raise.c (_hurd_raise_signal): Likewise.
1696         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
1697         Likewise.
1698         * sysdeps/mach/hurd/setitimer.c (restart_itimer): Likewise.
1699
1700         * hurd/hurd/signal.h: Fix _hurd_exception2signal prototype.
1701
1702         * hurd/hurdsig.c (write_corefile): Take const struct
1703         hurd_signal_detail * arg.  Pass all details to crash_dump_task.
1704         (_hurd_internal_post_signal): Pass DETAIL to write_corefile.
1705         (_hurd_internal_post_signal: suspend): Pass code and error to
1706         proc_mark_stop.
1707
1708         * hurd/hurdprio.c (_hurd_priority_which_map): Pass flags arg to
1709         proc_getprocinfo by reference.
1710
1711         * wcsmbs/wcwidth.c, wcsmbs/wcswidth.c: Fixed typos.
1712
1713         * sysdeps/unix/sysv/linux/sys/mman.h: Fixed typo.
1714
1715         * sysdeps/stub/sched_getp.c: Add missing #include <sys/types.h>.
1716         * sysdeps/stub/sched_sets.c: Likewise.
1717         * sysdeps/stub/sched_setp.c: Likewise.
1718         * sysdeps/stub/sched_rr_gi.c: Likewise.
1719         * sysdeps/stub/sched_gets.c: Likewise.
1720
1721         * hurd/hurdsig.c: Use struct hurd_signal_detail.
1722         * hurd/hurd/fd.h (_hurd_fd_error): Likewise.
1723         * sysdeps/mach/hurd/sysd-stdio.c (fd_fail): Likewise.
1724
1725 Mon May  6 09:51:05 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1726
1727         * stdio/linewrap.c: New file.
1728         * stdio/Makefile (routines): Add linewrap.
1729         * stdio/stdio.h [__USE_GNU]: Declare line_wrap_stream,
1730         line_unwrap_stream.
1731
1732 Mon May  6 14:53:26 1996  Ulrich Drepper  <drepper@cygnus.com>
1733
1734         * time/strftime.c (week): Add third parameter telling how
1735         many days must be in new year so that it is called week 1.
1736         (Following ISO 8601).
1737         Correct computation for %U and %V formats when day was first
1738         day of the week.
1739         (strftime): Implement %V format according to Spec1170.
1740
1741 Mon May  6 17:01:09 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
1742
1743         * hurd/hurd/signal.h (_hurd_intr_rpc_mach_msg): New declaration.
1744
1745 Sat May  4 05:44:25 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1746
1747         * hurd/hurd/sigpreempt.h (struct hurd_signal_preempter): Change
1748         prototype of `preempter' elt to use struct hurd_signal_detail.
1749
1750         * hurd/hurd/signal.h (struct hurd_signal_detail): New type.
1751         (struct hurd_sigstate): Make `pending_data' member an array of that.
1752         Use the new type in several decls.
1753
1754         * locale/setlocale.c (_nl_C_name): Variable removed.
1755         * locale/C_name.c: New file.
1756         (_nl_C_name): Put it here instead.
1757         * locale/Makefile (aux): Add C_name.
1758
1759         * sysdeps/mach/hurd/dl-sysdep.c (open): Don't pass io port in
1760         auth_user_authenticate rpc.
1761         (open): Avoid using strtol in digit conversion for "fd/N" magic.
1762         (_dl_sysdep_start): Likewise for memobj name in magic switches.
1763
1764         * elf/Makefile (reloc-link): New variable.
1765         (dl-allobjs.so): New target, link together $(rtld-routines).
1766         (librtld.so): Depend on that instead of the rtld components.
1767         (generated): Add dl-allobjs.so.
1768
1769         * hurd/hurd-raise.c (_hurd_raise_signal): Pass sigcode in msg_sig_post
1770         rpc.
1771
1772         * hurd/hurdmsg.c (_S_msg_set_environment): Use argz.h functions
1773         instead of _hurd_split_args.
1774         (_S_msg_*_exec_flags): Functions removed.
1775         (_S_msg_startup_dosync): Stub removed.
1776
1777 Sat May  4 02:11:55 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1778
1779         * sysdeps/mach/hurd/ptrace.c: Set _hurdsig_traced instead of
1780         EXEC_TRACED bit in _hurd_exec_flags.
1781         Pass sigcode arg in msg_sig_post_untraced rpc.
1782
1783         * sysdeps/mach/hurd/access.c: Don't pass io port in
1784         auth_user_authenticate rpc.
1785
1786         * posix/sched.h: Fix typos.
1787
1788         * sysdeps/mach/hurd/fork.c: Use new critical section lock.
1789         Clear _hurdsig_traced instead of EXEC_TRACED.
1790
1791         * sysdeps/stub/nanosleep.c (nanosleep): Fix typo.
1792
1793         * wcsmbs/wcstol.c: Find strtol.c in ../stdlib.
1794         * wcsmbs/wcstof.c: Find strtod.c in ../stdlib.
1795         * wcsmbs/wcstod.c: Likewise.
1796         * wcsmbs/wcstold.c: Likewise.
1797
1798         * wcsmbs/wcwidth.h: Find cname-lookup.h in ../wctype.
1799
1800         * string/envz.c (envz_entry): Use const.
1801         (envz_get, envz_remove): Likewise.
1802         (envz_entry): Return char *, not const char *.
1803
1804         * string/envz.h: Fix decl.
1805
1806         * string/argz-create.c: Use const in prototype.
1807         * string/argz-next.c: Likewise.
1808
1809 Fri May  3 13:32:08 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1810
1811         * sysdeps/mach/hurd/sigprocmask.c: Pass sigcode arg to msg_sig_post.
1812         * sysdeps/mach/hurd/i386/sigreturn.c: Likewise.
1813         * sysdeps/mach/hurd/sigsuspend.c: Likewise.
1814         * sysdeps/mach/hurd/kill.c: Likewise.
1815
1816         * hurd/hurdexec.c (_hurd_exec): Use new critical section lock.
1817         * hurd/catch-exc.c (_S_catch_exception_raise): Likewise.
1818         * hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Likewise.
1819         * hurd/thread-cancel.c (hurd_thread_cancel, hurd_check_cancel):
1820         Likewise.
1821         * sysdeps/mach/hurd/jmp-unwind.c (_longjmp_unwind): Likewise.
1822         * sysdeps/mach/hurd/sigaction.c: Likewise.
1823
1824         * sysdeps/mach/hurd/errnos.awk: Don't use ARGV in comment; it can
1825         change meaninglessly.
1826
1827         * hurd/hurd/signal.h (struct hurd_sigstate): Replace critical section
1828         flag with a spin lock.
1829         (_hurd_critical_section_lock): Use spin_try_lock on that to see if we
1830         get it.  No need to take SS->lock at all.
1831         (_hurd_critical_section_unlock): Unlock SS->critical_section_lock
1832         instead of clearing the old flag member.
1833         * hurd/hurdsig.c (_hurd_internal_post_signal): Use spin_lock_locked to
1834         test the critical section state.
1835
1836         * hurd/hurdinit.c (_hurd_init): Set _hurdsig_traced from the intarray.
1837
1838         * hurd/hurdkill.c (_hurd_sig_post): Pass 0 sigcode in msg_sig_post.
1839
1840         * hurd/hurdsig.c (_hurd_internal_post_signal): Test _hurdsig_traced
1841         instead of testing (_hurd_exec_flags & EXEC_TRACED).
1842         (_S_msg_sig_post): Take sigcode arg and pass it through.
1843         (_S_msg_sig_post_untraced): Likewise.
1844         (reauth_proc): Don't pass proc port in auth_user_authenticate.
1845
1846         * hurd/setauth.c (_hurd_setauth): Don't pass object ports in
1847         auth_user_authenticate RPCs, just the one-off rendezvous port.
1848         * hurd/dtable.c (reauth_dtable): Likewise.
1849         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): Likewise.
1850
1851         * hurd/hurdexec.c (_hurd_exec): Pass 0 flags to file_exec.
1852         Pass sigcode arg to msg_sig_post.
1853
1854         * string/argz.h (argz_create): Use const in prototype.
1855
1856         * hurd/hurdinit.c (_hurd_proc_init): Test _hurdsig_traced instead of
1857         testing (_hurd_exec_flags & EXEC_TRACED).
1858         Pass sigcode arg to msg_sig_post.
1859
1860         * hurd/hurd.h: Declare _hurdsig_traced.
1861
1862         * string/argz.h (__argz_next): Cast ENTRY before returning it.
1863
1864         * hurd/hurd/signal.h (_hurd_critical_section_unlock): Pass sigcode arg
1865         to msg_sig_post.
1866
1867         * hurd/path-lookup.c: New file.
1868         * hurd/Makefile (routines): Add path-lookup.
1869         * hurd/hurd/lookup.h: Declare file_name_path_scan,
1870         hurd_file_name_path_lookup.
1871         * hurd/hurd.h: Declare file_name_path_lookup.
1872
1873         * sysdeps/mach/hurd/select.c: The io_select rpc no longer has a TAG_ID
1874         argument.  Instead, use a separate reply port for each RPC and put them
1875         all in a port set to wait for slow replies.
1876
1877         * intl/Makefile (CPPFLAGS): Change $(nlsdir) to $(i18ndir) in
1878         LOCALE_ALIAS_PATH.
1879
1880 Fri May  3 03:14:02 1996  Ulrich Drepper  <drepper@cygnus.com>
1881
1882         * intl/Makefile (routines): Add l10nflist and explodename.
1883         (distribute): Add loadinfo.h and locale.alias.
1884         (install-others): New variable to install locale.alias.
1885
1886         * intl/dcgettext.c, intl/finddomain.c, intl/gettextP.h,
1887         intl/loadmsgcat.c: Adapt for upcoming gettext-0.10.13.  Some code
1888         is now shared with the locale implementation.
1889
1890         * intl/explodename.c, intl/l10nflist.c, intl/loadinfo.h: New file.
1891         Extracted from finddomain.c.  This is also used in the locale
1892         implementation.
1893
1894         * intl/locale.alias: New file.  Locale alias database compatible
1895         with X Window System's locale alias file.  Can now be used in
1896         locale and gettext code.
1897
1898         * libio/stdio.h: Add prototypes for asprint and vasprintf.
1899
1900         * locale/C-collate.c, locale/C-ctype.c, locale/C-messages.c,
1901         locale/C-monetary.c, locale/C-numeric.c, locale/C-time.c: Add new
1902         field in structure with name of locale ("C" in this case).
1903
1904         * locale/Makefile (routines): Add findlocale.
1905
1906         * locale/findlocale.c: New file.  Instead of trying to load the
1907         directly described file we now try to be much smarter when this
1908         fails.  Use the same code as gettext does.
1909
1910         * locale/loadlocale.c, locale/setlocale.c: Rewrite to know about
1911         new loading scheme.
1912
1913         * locale/localeinfo.h: Adapt prototypes and declarations for new
1914         setlocale implementation.  Remove definition of u32_t type.  We
1915         now use u_int32_t from <sys/types.h>.
1916
1917         * locale/programs/charset.h (ILLEGAL_CHAR_VALUE): Provide type
1918         with constant.
1919
1920         * locale/programs/config.h, locale/lc-collate.c,
1921         locale/localeinfo.h, locale/programs/ld-collate.c,
1922         locale/programs/ld-ctype.c, locale/programs/ld-messages.c,
1923         locale/programs/ld-monetary.c, locale/programs/ld-numeric.c,
1924         locale/programs/ld-time.c, locale/weight.h, string/strcoll.c:
1925         Change to use u_int32_t and u_int16_t.
1926
1927         * locale/programs/localedef.c (construct_output_path): Change name
1928         of output locale to contain normalized form of the character set
1929         portion.
1930
1931         * string/Makefile (routines): Add agrz-ctsep and argz-next.
1932         (tests): Add tst-strlen.
1933
1934         * string/argz-ctsep.c: New file.  Implement reverse operation
1935         from argz-stringify.
1936
1937         * string/argz-next.c: Non-inline version of function from argz.h.
1938
1939         * string/argz.h, string/envz.h: Make usable as global header file.
1940
1941         * string/envz.c: Fix declarations to use size_t where prototypes
1942         say so.
1943
1944         * string/tst-strlen.c: New file.  Another test for critical
1945         situation in strlen implementations.
1946
1947         * sysdeps/i386/i586/strlen.S: Fix bug with highest byte in word
1948         being zero.
1949
1950         * wctype/test_wctype.c: Fix controlling comparison after change to
1951         32 bit character class array.
1952
1953 Fri May  3 12:53:12 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1954
1955         * sysdeps/unix/sysv/linux/sys/socket.h: Remove spurious doubled line.
1956
1957 Thu May  2 22:50:52 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1958
1959         * sysdeps/unix/sysv/linux/getpriority.c: New file.
1960         * sysdeps/unix/sysv/linux/syscalls.list: Add s_getpriority.
1961
1962 Thu May  2 22:41:31 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1963
1964         * sysdeps/unix/sysv/linux/m68k/fpu_control.h (_FPU_DEFAULT):
1965         Disable all exceptions.
1966
1967 Thu May  2 22:33:14 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1968
1969         * sysdeps/m68k/fpu/e_acos.c, sysdeps/m68k/fpu/e_acosf.c,
1970         sysdeps/m68k/fpu/e_fmod.c, sysdeps/m68k/fpu/e_fmodf.c,
1971         sysdeps/m68k/fpu/isinfl.c, sysdeps/m68k/fpu/isnanl.c,
1972         sysdeps/m68k/fpu/s_atan.c, sysdeps/m68k/fpu/s_atanf.c,
1973         sysdeps/m68k/fpu/s_frexp.c, sysdeps/m68k/fpu/s_frexpf.c,
1974         sysdeps/m68k/fpu/s_ilogb.c, sysdeps/m68k/fpu/s_ilogbf.c,
1975         sysdeps/m68k/fpu/s_isinf.c, sysdeps/m68k/fpu/s_isinff.c,
1976         sysdeps/m68k/fpu/s_ldexp.c, sysdeps/m68k/fpu/s_ldexpf.c,
1977         sysdeps/m68k/fpu/s_modf.c, sysdeps/m68k/fpu/s_modff.c: Don't
1978         define __NO_MATH_INLINES, which is already defined on command
1979         line.
1980
1981 Thu May  2 22:18:28 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1982
1983         * sysdeps/libm-ieee754/e_j0f.c (__ieee754_j0f, __ieee754_y0f):
1984         Replace 0x80000000 by 0x48000000.
1985         * sysdeps/libm-ieee754/e_j1f.c (__ieee754_j1f): Likewise.
1986
1987 Thu May  2 21:30:33 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1988
1989         * sunrpc/svc_simple.c: Make global variable pl local to
1990         registerrpc.
1991
1992 Thu May  2 00:24:04 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1993
1994         * time/Makefile (tz-cflags): New variable.
1995         (CFLAGS-tzfile.c): New variable.
1996         (CFLAGS-zic.c): Add $(tz-cflags).
1997         (tz-cc): Remove variable.
1998         ($(objpfx)tzfile.o, $(objpfx)zic.o): Remove targets.
1999
2000 Wed May  1 09:10:04 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2001
2002         * sysdeps/mach/hurd/getcwd.c: Jump out of both loops when we find a
2003         name, instead of checking for reaching end of buffer, which happens
2004         when the match is the last entry in the buffer.
2005
2006         * time/strftime.c: Use canonical autoconf nugget for time.h+sys/time.h
2007         include.
2008
2009 Mon Apr 29 02:48:26 1996  Ulrich Drepper  <drepper@cygnus.com>
2010
2011         * ctype/ctype-info.c: (__ctype_width): New variable.
2012         (__ctype_names): Initialize correctly without offset.
2013
2014         * locale/C-collate.c, locale/C-ctype.c,
2015         locale/C-messages.c, locale/C-monetary.c,
2016         locale/C-numeric.c, locale/C-time.c: Change copyright.
2017
2018         * locale/C-ctype.c (_nl_C_LC_CTYPE_class32): Correct
2019         endianess for initialization value.
2020
2021         * locale/lc-ctype.c (current): Add parameter for offset.
2022         (__ctype32_b, __ctype_width): Add initialization for these
2023         variables.
2024
2025         * locale/programs/charmap.c: Finish support for WIDTH information.
2026         (new_width): New function.
2027
2028         * locale/programs/charset.h (width_rule): new data structure.
2029         (charset_t): Add elements for width information.
2030
2031         * locale/programs/ld-ctype.c (locale_ctype_t): Add element
2032         for width information.
2033         (allocate_arrays): Add new argument for charset.
2034         (ctype_finish): Make sure all characters named in charset
2035         width table are known to name table.
2036         (ctype_output): Correct handling of class and map name
2037         information and write out width information.
2038         (find_idx): Prepare for being called with NULL pointer as
2039         TABLE argument.  This means only allocate name entry.
2040         (allocate_arrays): Correct handling of array element -1.
2041         Because EOF == -1 the value of element 127 must *not* be
2042         mirrored here.
2043         Fill width information from charset tables.
2044
2045         * locale/programs/localedef.c (main): Correct loop over all
2046         categories after change of order from Thu Mar 28 14:22:51 1996.
2047         Add new charset argument to call of `write_all_categories'.
2048
2049         * locale/programs/locales.h (ctype_finish, ctype_output): New
2050         charset argument.
2051
2052         * locale/programs/locfile.c (write_all_categories): Call
2053         `ctype_output' with additional argument charset.
2054
2055         * posix/getconf.c (vars): Add _POSIX_SYNC_IO, _POSIX_ASYNC_IO,
2056         and _POSIX_PRIO_IO definitions.
2057
2058         * posix/posix2_lim.h: Add definition of _POSIX2_CHARCLASS_NAME_MAX
2059         and CHARCLASS_NAME_MAX.
2060
2061         * posix/unistd.h: Document _POSIX_SYNC_IO, _POSIX_ASYNC_IO,
2062         and _POSIX_PRIO_IO.
2063
2064         * stdlib/grouping.h: Prepare for use in wide string functions.
2065
2066         * stdlib/stdlib.h: Correct prototypes for __strto*_internal
2067         functions.
2068
2069         * stdlib/strtod.c: Extend for use as `wcsto{f,d,ld}'.
2070
2071         * stdlib/strtol.c: Extend for use as `wcsto{l,ul,q,uq}'.
2072
2073         * string/strcoll.c: Extend for use as `wcscoll'.
2074
2075         * string/strxfrm.c: Extend for use as `wcsxfrm'.
2076
2077         * sysdeps/generic/confname.h: Add definition of _PC_SYNC_IO,
2078         _PC_ASYNC_IO, _PC_PRIO_IO and _SC_CHARCLASS_NAME_MAX.
2079
2080         * sysdeps/generic/stpncpy.c: Correct return value.
2081
2082         * sysdeps/posix/fpathconf.c: Add handling of _PC_SYNC_IO,
2083         _PC_ASYNC_IO, and _PC_PRIO_IO.
2084
2085         * sysdeps/posix/sysconf.c: Add handling of _SC_REALTIME_SIGNALS,
2086         _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
2087         _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC,
2088         _SC_MAPPED_FILES, _SC_MEMLOCK, _SC_MEMLOCK_RANGE,
2089         _SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING, _SC_SEMAPHORES,
2090         _SC_SHARED_MEMORY_OBJECTS, and _SC_CHARCLASS_NAME_MAX.
2091         * sysdeps/stub/sysconf.c: Ditto.
2092         * sysdeps/unix/sysv/sysv4/sysconf.c: Ditto.
2093
2094         * sysdeps/unix/sysv/linux/Dist: Add sys/sysctl.h.
2095
2096         * sysdeps/unix/sysv/linux/Makefile [subdir == misc]
2097         (sysdep_routines): Add s_sysctl and sysctl.
2098
2099         * sysdeps/unix/sysv/linux/sys/mman.h: Add declaration of mremap.
2100
2101         * sysdeps/unix/sysv/linux/sys/socket.h: New file.  Wrapper
2102         around kernel header.
2103
2104         * sysdeps/unix/sysv/linux/sys/sysctl.h: New file.  Define
2105         interface to `sysctl' function.
2106
2107         * sysdeps/unix/sysv/linux/syscalls.list: Add mremap and _sysctl.
2108
2109         * sysdeps/unix/sysv/linux/sysconf.c: Add handling of
2110         _SC_CHARCLASS_NAME_MAX.
2111
2112         * sysdeps/unix/sysv/linux/sysctl.c: new file.  Implement caller
2113         of _sysctl system call.
2114
2115         * sysvipc/Makefile (routines): Add ftok.
2116
2117         * sysvipc/ftok.c: use variable `proj_id' not `id'.  Patch by
2118         David Mosberger-Tang.
2119
2120         * wcsmbs/Makefile (routines): Add wcpcpy, wcpncpy, wcstol,
2121         wcstoul, wcstoq, wcstouq, wcstod, wcstold, wcstof, wcscoll,
2122         wcsxfrm, wcwidth, and wcswidth.
2123
2124         * wcsmbs/wchar.h: Add declarations for wcpcpy, wcpncpy, wcstol,
2125         wcstoul, wcstoq, wcstouq, wcstod, wcstold, wcstof, wcscoll,
2126         wcsxfrm, wcwidth, and wcswidth.
2127         Declare internal interfaces for wcsto* functions.
2128         [OPTIMIZE]: Define inline functions for wcsto* functions to
2129         call internal interface functions.
2130
2131         * wcsmbs/wcpcpy.c, wcsmbs/wcpncpy.c: New files.  Implement non-
2132         standard function equivalent to stpcpy/stpncpy.
2133
2134         * wcsmbs/wcscoll.c: Implement `wcscoll' function by using
2135         `strcoll' implementation.
2136
2137         * wcsmbs/wcscpy.c, wcsmbs/wcsncpy.c: Use wint_t instead of
2138         wchar_t.
2139
2140         * wcsmbs/wcstod.c: Implement `wcstod' function by using `strtod'
2141         implementation.
2142         * wcsmbs/wcstof.c: Same for `wcstof'.
2143         * wcsmbs/wcstold.c: Same for `strtold'.
2144
2145         * wcsmbs/wcstol.c: Implement `wcstol' function by using `strtol'
2146         implementation.
2147         * wcsmbs/wcstoq.c: Same for `wcstoq'.
2148         * wcsmbs/wcstoul.c: Same for `wcstoul'.
2149         * wcsmbs/wcstouq.c: Same for `wcstouq'.
2150
2151         * wcsmbs/wcswidth.c: Implement `wcswidth' function from X/Open
2152         CAE.
2153         * wcsmbs/wcwidth.c: Ditto for `wcwidth'.
2154         * wcsmbs/wcwidth.h: Common function for definitions of above two
2155         functions.
2156
2157         * wcsmbs/wcsxfrm.c: Implement `wcsxfrm function by using
2158         `strxfrm implementation.
2159
2160         * wctype/wctype.c: Remove case for `wctype_t' being 16 bit type.
2161
2162         * wctype/wctype.h (wint_t): Protect against multiple definition.
2163         (wctype_t): Always define as `unsigned long int'.
2164
2165         * wctype.h: New file.  Wrapper around wctype/wctype.h.
2166
2167 Tue Apr 30 17:30:46 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2168
2169         * hurd/hurdsig.c (_hurdsig_abort_rpcs): Add timeout argument to
2170         interrupt_operation call.
2171         (_hurdsig_interrupt_timeout): New variable.
2172
2173         * hurd/report-wait.c (describe_number): Correctly allocate space
2174         in DESCRIPTION for the digits in I.
2175
2176 Mon Apr 29 00:11:59 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2177
2178         * hurd/hurdstartup.c (_hurd_split_args): Function removed.
2179         (_hurd_startup): Use argz functions.
2180
2181         * hurd/hurdexec.c: Use argz functions.
2182
2183         * errno.h [!__error_t_defined] (error_t): New type.
2184         * sysdeps/mach/hurd/errnos.awk: #define __error_t_defined after the
2185         typedef in errnos.h.
2186
2187         * string/envz.c, string/envz.h: New files.
2188         * string/argz.h, string/argz-append.c, string/argz-count.c,
2189         string/argz-create.c, string/argz-delete.c, string/argz-extract.c,
2190         string/argz-insert.c, string/argz-stringify.c: New files.
2191         * string/Makefile (routines): Add envz, argz-*.
2192         (headers): Add argz.h, envz.h.
2193
2194 Sun Apr 28 14:14:35 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2195
2196         * sysdeps/unix/sysv/linux/i386/Makefile: New file.
2197
2198 Wed Apr 24 17:35:30  Ulrich Drepper  <drepper@cygnus.com>
2199
2200         * inet/netinet/in.h, socket/sys/socket.h: Move to
2201         sysdeps/generic/netinet/in.h, sysdeps/generic/sys/socket.h.
2202         * netinet/in.h, sys/socket.h: Remove file.
2203
2204         * misc/Makefile (routines): Add fdatasync.
2205
2206         * posix/Makefile (headers): Add sched.h.
2207         (routines): Add nanosleep, sched_setp, sched_getp, sched_sets,
2208         sched_gets, sched_yield, sched_primax, sched_primin, sched_rr_gi.
2209
2210         * posix/getconf.c (vars): Add entries for _POSIX_REALTIME_SIGNALS,
2211         _POSIX_PRIORITY_SCHEDULING, _POSIX_TIMERS, _POSIX_ASYNCHRONOUS_IO,
2212         _POSIX_PRIORITIZED_IO, _POSIX_SYNCHRONIZED_IO, _POSIX_FSYNC,
2213         _POSIX_MAPPED_FILES, _POSIX_MEMLOCK, _POSIX_MEMLOCK_RANGE,
2214         _POSIX_MEMORY_PROTECTION, _POSIX_MESSAGE_PASSING,
2215         _POSIX_SEMAPHORES, _POSIX_SHARED_MEMORY_OBJECTS.
2216
2217         * posix/sched.h: New file.  Header for POSIX scheduling interface.
2218
2219         * posix/unistd.h: Describe options from POSIX.4.
2220         Add declaration of fdatasync.
2221
2222         * sysdeps/generic/confname.h: Add definition for
2223          _SC_REALTIME_SIGNALS, _SC_PRIORITY_SCHEDULING, _SC_TIMERS,
2224         _SC_ASYNCHRONOUS_IO, _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO,
2225         _SC_FSYNC, _SC_MAPPED_FILES, _SC_MEMLOCK, _SC_MEMLOCK_RANGE,
2226         _SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING,
2227         _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS.
2228
2229         * sysdeps/generic/fdatasync.c: New file.  Default implementation
2230         simply uses fsync.
2231
2232         * sysdeps/generic/netinit/in.h: Moved to here from inet/netinet/in.h.
2233
2234         * sysdeps/generic/schedbits.h: New file.  System dependent
2235         defintion for POSIX.4 scheduling interface.
2236
2237         * sysdeps/generic/sys/socket.h: Moved to here from socket/sys/socket.h.
2238
2239         * sysdeps/stub/nanosleep.c, sysdeps/stub/sched_getp.c,
2240         sysdeps/stub/sched_gets.c, sysdeps/stub/sched_primax.c,
2241         sysdeps/stub/sched_primin.c, sysdeps/stub/sched_rr_gi.c,
2242         sysdeps/stub/sched_setp.c, sysdeps/stub/sched_sets.c,
2243         sysdeps/stub/sched_yield.c: New file:  Stub implementation
2244         for systems missing these POSIX.4 system calls.
2245
2246         * sysdeps/unix/sysv/linux/gnu/types.h,
2247         sysdeps/unix/sysv/linux/ioctls.h: Use kernel header for
2248         data type definitions.
2249
2250         * sysdeps/unix/sysv/linux/netinet/in.h: New file.  Linux
2251         specific version.
2252
2253         * sysdeps/unix/sysv/linux/posix_opt.h: New file.  Define POSIX
2254         options applicable for Linux.
2255
2256         * sysdeps/unix/sysv/linux/syscalls.list: Add definitions for
2257         fdatasync, nanosleep, sched_setparam, sched_getparam,
2258         sched_setscheduler, sched_getscheduler, sched_yield,
2259         sched_get_priority_max, sched_get_priority_min, and
2260         sched_rr_get_interval.
2261
2262         * sysdeps/unix/sysv/linux/sysconf.c: Add handling of POSIX.4
2263         options.
2264
2265         * sysdeps/unix/sysv/linux/termbits.h: Use kernel headers.
2266
2267         * time/sys/time.h: Remove definition of `struct timespec'.
2268
2269         * time/time.h (struct timespec): Move definition to here.
2270
2271 Fri Apr 26 01:55:07 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2272
2273         * malloc/mcheck.c (mabort): Use __libc_fatal only #ifdef _LIBC.
2274
2275 Thu Apr 25 15:49:57 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2276
2277         * sysdeps/mach/hurd/getcwd.c (__getcwd): When we find a match in
2278         the scan for a name, avoid doing another readdir (which overwrites
2279         NENTRIES, and was resulting in a bogus ENOENT).
2280
2281         * sysdeps/mach/hurd/fcntl.c (__fcntl): Add missing break after F_SETFL.
2282
2283 Wed Apr 24 00:22:42 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2284
2285         * stdio/internals.c (seek_to_target): Set errno if seek function
2286         returns the wrong offset.
2287
2288         * wcsmbs/wcsrtombs.c [! EILSEQ] (EILSEQ): Define to EINVAL.
2289         * wcsmbs/wcrtomb.c: Likewise.
2290
2291         * stdio-common/vfprintf.c: Include errno.h.
2292
2293 Tue Apr 23 21:09:14 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2294
2295         * hurd/hurdsig.c (signal_allowed): For SIGIO/SIGURG, add a new
2296         variable, LUCKY, to use instead of setting D to -1 (which fouls
2297         things up).
2298
2299 Tue Apr 23 15:56:56 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2300
2301         * config.h.in (HAVE_REGEX): New macro.
2302
2303         * sysdeps/unix/syscalls.list: Add statfs, fstatfs.
2304         * io/Makefile (headers): Add sys/statfs.h, statfsbuf.h.
2305         (routines): Add statfs, fstatfs.
2306         * sysdeps/mach/hurd/statfs.c: New file.
2307         * sysdeps/mach/hurd/fstatfs.c: New file.
2308         * sysdeps/stub/fstatfs.c: New file.
2309         * sysdeps/stub/statfs.c: New file.
2310         * io/sys/statfs.h: New file.
2311         * sysdeps/generic/statfsbuf.h: New file.
2312         * sysdeps/unix/sysv/linux/statfsbuf.h: New file.
2313
2314 Tue Apr 23 00:06:47 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2315
2316         * malloc/Makefile (gmalloc-routines): Add valloc back here.
2317         (dist-routines): Remove it here.
2318         * malloc/valloc.c [_MALLOC_INTERNAL && GMALLOC_INHIBIT_VALLOC]
2319         (ELIDE_VALLOC): Define it.
2320         [! ELIDE_VALLOC]: Make whole file conditional on this.
2321         * malloc/malloc.h (valloc): Make decl conditional on
2322         [!GMALLOC_INHIBIT_VALLOC] instead of [!emacs].
2323
2324 Mon Apr 22 00:02:19 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2325
2326         * MakeTAGS: Include version.mk.
2327         (po/SYS_libc.pot): Add missing / in sed s cmd.
2328
2329 Sat Apr 20 18:13:00 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2330
2331         * Makerules (no-whole-archive): Test $(have-no-whole-archive), not
2332         $(libc_cv_ld_no_whole_archive).
2333
2334 Sat Apr 20 17:07:17 1996  Ulrich Drepper  <drepper@cygnus.com>
2335
2336         * assert/assert.h, ctype/ctype.h, dirent/dirent.h, errno.h,
2337         grp/grp.h, io/fcntl.h, io/sys/stat.h, io/utime.h, locale/locale.h,
2338         math/math.h, misc/nlist.h, misc/sgtty.h, misc/sys/file.h,
2339         misc/sys/ioctl.h, misc/sys/uio.h, posix/sys/times.h,
2340         posix/sys/types.h, posix/sys/utsname.h, posix/sys/wait.h,
2341         posix/tar.h, posix/wordexp.h, pwd/pwd.h, resource/sys/vlimit.h,
2342         resource/sys/vtimes.h, setjmp/setjmp.h, signal/signal.h,
2343         stdio-common/printf.h, stdlib/alloca.h, stdlib/stdlib.h,
2344         string/string.h, sysdeps/generic/sigaction.h,
2345         sysdeps/generic/sigset.h, sysdeps/generic/sys/ptrace.h,
2346         sysdeps/generic/sys/ptrace.h, sysdeps/unix/bsd/osf/sigaction.h,
2347         sysdeps/unix/sysv/linux/sys/ptrace.h,
2348         sysdeps/unix/sysv/minix/sigaction.h,
2349         sysdeps/unix/sysv/sco3.2.4/sigaction.h,
2350         sysdeps/unix/sysv/sysv4/sigaction.h,
2351         sysdeps/unix/sysv/sysv4/sigset.h, termios/termios.h,
2352         time/sys/time.h, time/time.h: Fix copyright comment.
2353
2354 Fri Apr 19 00:49:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2355
2356         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): If uids and gids are
2357         not given in stack aux vector, fetch them with syscalls.
2358
2359         * stdlib/rpmatch.c (rpmatch: try): Take new arg NOMATCH, return value
2360         for nonmatching nonerror (instead of !MATCH).
2361         (rpmatch): Use it, so we return -1 when NOEXPR doesn't match either.
2362
2363         * resolv/getnetnamadr.c (getnetbyaddr): Use u_int32_t instead of
2364         unsigned long for variable NET2.
2365
2366         * time/etcetera, time/europe, time/solar89: Updated from ADO's 96e.
2367
2368 Tue Apr  9 14:37:31 1996  Ulrich Drepper  <drepper@cygnus.com>
2369
2370         * catgets/Makefile, catgets/catgets.c, catgets/catgetsinfo.h,
2371         catgets/config.h, catgets/gencat.c, catgets/nl_types.h,
2372         catgets/open_catalog.c: New files.  Implementation of XPG4
2373         compliant catgets() function and needed tools.
2374         * Makefile (subdirs): Add catgets.
2375
2376 Thu Apr 18 23:36:11 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2377
2378         * math/Makefile (CPPFLAGS): Append -D__NO_MATH_INLINES.
2379
2380 Wed Apr 10 20:48:43 1996  Ulrich Drepper  <drepper@cygnus.com>
2381
2382         * stdio-common/vfprintf.c: Correct some typos.
2383
2384         * sysdeps/libm-ieee754/w_gammaf.c, sysdeps/libm-ieee754/w_lgamma.c,
2385         sysdeps/libm-ieee754/w_lgammaf.c: Reference signgam instead of
2386         __signgam.
2387
2388 Thu Apr 18 21:07:27 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2389
2390         * Makerules (no-whole-archive): New variable.
2391         (build-shlib): Use it.
2392         * elf/Makefile (libdl.so): Use it.
2393         * configure.in (libc_cv_ld_no_whole_archive): New check for
2394         --no-whole-archive.
2395         * config.make.in (have-no-whole-archive): New variable.
2396
2397         * stdio-common/printf_fp.c: Increase fudge factor for BIGNUM_SIZE calc
2398         from 3 to 4.
2399
2400         * Make-dist: Include version.mk.
2401         (version, release): Variables removed.
2402         * Makeconfig (version.mk): New target.
2403
2404 Fri Apr 19 01:42:18 1996  Ulrich Drepper  <drepper@cygnus.com>
2405
2406         * locale/Makefile (headers): Add langinfo.h.
2407         (CPPFLAGS): Remove -Iliblib.
2408
2409 Mon Apr 15 16:49:04 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
2410
2411         * malloc/memalign.c, malloc/malloc.h [__DJGPP__ == 1]: Elide memalign
2412         function and its declaration.
2413
2414 Wed Apr 10 14:13:45 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2415
2416         * hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Store
2417         MACH_PORT_DEAD in the thread reply-port variable before destroying
2418         the signal handler's reply port, to avoid infinite recursion.
2419
2420 Mon Apr  8 18:27:17 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2421
2422         * sysdeps/mach/gettimeofday.c (__gettimeofday): Don't fail if the
2423         user passes in TZ, just zero it (emacs passes in a dummy variable,
2424         and rms says the hurd should be the one to change).
2425
2426 Sun Apr  7 10:37:30 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
2427
2428         * sysdeps/mach/hurd/fork.c: Don't leak send rights to the child's proc
2429         port in the parent.
2430
2431 Fri Apr  5 17:43:41 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2432
2433         * sysdeps/mach/hurd/i386/sigreturn.c (__sigreturn): Store
2434         MACH_PORT_DEAD in the thread reply-port variable before destroying
2435         the signal handler's reply port to avoid infinite recursion.
2436         * sysdeps/mach/hurd/mig-reply.c (__mig_dealloc_reply_port): Only
2437         attempt to destroy PORT if it's a valid port name.
2438
2439 Wed Apr  3 17:10:44 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
2440
2441         * extra-lib.mk: Put libs in $(common-objpfx) instead of $(objpfx).
2442         * Makerules ($(install-lib) rules): Find libs with $(common-objpfx)
2443         instead of $(objpfx).
2444
2445 Tue Apr  2 21:27:01 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2446
2447         * posix/glob.c (glob_pattern_p): Avoid scanning past eos if
2448         the pattern ends with a backslash and quoting is enabled.
2449         * posix/fnmatch.c (fnmatch): Likewise; return FNM_NOMATCH for such
2450         patterns.
2451
2452 Mon Apr  1 13:34:55 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
2453
2454         * stdio-common/tst-printf.c (main): Add new test case.
2455
2456         * sysdeps/generic/setenv.c (unsetenv): Use old-style definition.
2457
2458 Mon Apr  1 11:39:10  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
2459
2460         * stdlib/strtod.c (STRTOD): Fix handling of American style FP
2461         numbers.
2462
2463         * stdio-common/vfprintf.c (vfprintf): Don't increment format
2464         string pointer twice after seeing `*'.
2465
2466 Sun Mar 31 17:31:54 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
2467
2468         * MakeTAGS (po/SYS_libc.pot): Prepend header processed from
2469         po/header.pot.
2470
2471 Sun Mar 31 18:07:32 1996  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
2472
2473         * locale/Makefile (others, install-bin): Compiling locale works
2474         again.
2475         (locale-modules): locale has no --dump option anymore.  Remove
2476         ctypedump.
2477
2478         * locale/programs/config.h: Don't declare euidaccess.
2479         Use #include_next to get libc's config.h.
2480
2481         * locale/programs/ctypedump.c: Not needed anymore.  Dump option
2482         of locale is removed.
2483
2484         * locale/programs/locale.c: Adapt for new locale implementation.
2485
2486         * stdio-common/_itoa.h (_itoa_word): Define as inline function.
2487         * stdio-common/_itoa.c (_itoa_lower_digits, _itoa_upper_digits):
2488         Don't declare static because used in _itoa_word inline function.
2489
2490         * stdio-common/printf-parse.h: Prepare for use in wide-char
2491         stdio implementation.
2492         (find_spec): Take additional argument to work with mbrlen instead
2493         of mblen.
2494         (parse_one_spec): Ditto.
2495
2496         * stdio-common/printf-prs.c: Prepare for use in wide-char
2497         stdio implementation.
2498
2499         * stdio-common/printf.h: Mark change for wide-char handling.
2500         Changing it now would result in incompatibilities.
2501
2502         * stdio-common/vfprintf.c: New and fast implementation.
2503
2504         * wcsmbs/Makefile (routines): Remove pre-ISO C multibyte functions
2505         mbsadvance, mbscat, mbschr, mbscmp, mbscpy, mbsdup, mbslen,
2506         mbsncat, mbsncmp, mbsncpy, mbsrchr, mbstomb.
2507         Change wcswcs to wcsstr.
2508         Add wmemchr, wmemcmp, wmemcpy, wmemmove, wmemset, btowc, wctob,
2509         mbsinit, mbrlen, mbrtowc, wcrtomb, mbsrtowcs, wcsrtombs.
2510
2511         * wcsmbs/btowc.c, wcsmbs/mbrlen.c, wcsmbs/mbrtowc.c,
2512         wcsmbs/mbsinit.c, wcsmbs/mbsrtowcs.c, wcsmbs/wchar.h,
2513         wcsmbs/wcrtomb.c, wcsmbs/wcsrtombs.c, wcsmbs/wcsstr.c,
2514         wcsmbs/wctob.c, wcsmbs/wmemchr.c, wcsmbs/wmemcmp.c,
2515         wcsmbs/wmemcpy.c, wcsmbs/wmemmove.c, wcsmbs/wmemset.c: New
2516         function according to ISO C amendment 1.
2517         * wchar.h: Wrapper around "wcsmbs/wchar.h".
2518
2519         * wcsmbs/wcscat.c, wcsmbs/wcschr.c, wcsmbs/wcscmp.c,
2520         wcsmbs/wcscpy.c, wcsmbs/wcscspn.c, wcsmbs/wcsdup.c,
2521         wcsmbs/wcslen.c, wcsmbs/wcsncat.c, wcsmbs/wcsncmp.c,
2522         wcsmbs/wcsncpy.c, wcsmbs/wcspbrk.c, wcsmbs/wcsrchr.c,
2523         wcsmbs/wcsspn.c, wcsmbs/wcstok.c: Changed to conform with ISO C
2524         amendment 1.
2525
2526         * wcsmbs/mbsadvance.c, wcsmbs/mbscat.c, wcsmbs/mbschr.c,
2527         wcsmbs/mbscmp.c, wcsmbs/mbscpy.c, wcsmbs/mbsdup.c,
2528         wcsmbs/mbslen.c, wcsmbs/mbsncat.c, wcsmbs/mbsncmp.c,
2529         wcsmbs/mbsncpy.c, wcsmbs/mbsrchr.c, wcsmbs/mbstomb.c,
2530         wcsmbs/mbstr.h, wcsmbs/wcstr.h, wcsmbs/wcswcs.c: Removed.
2531         Implement functions from early drafts, not part of final standard.
2532
2533 Sun Mar 31 16:50:41 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
2534
2535         * setjmp/setjmp.h (jmp_buf): Change gratuitous struct tag name to
2536         __jmp_bug_tag so its C++ implicit typedef does not conflict with the
2537         __jmp_buf typedef.
2538
2539         * Makerules (BUILD_CFLAGS) [! objdir]: Use $(..)config.h when
2540         compiling in the source directories.
2541
2542 Fri Mar 29 16:26:35 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
2543
2544         * sysdeps/libm-ieee754/w_gamma.c: Use signgam instead of __signgam.
2545         * sysdeps/libm-ieee754/s_signgam.c: Undo last change.
2546
2547 Fri Mar 29 11:29:46 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
2548
2549         * sysdeps/libm-ieee754/s_signgam.c (signgam): Renamed to __signgam,
2550         with weak alias signgam.
2551
2552 Thu Mar 28 18:32:34 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
2553
2554         * Makeconfig (+cflags, +gcc-nowarn): Use gcc flags unconditionally.
2555
2556 Thu Mar 28 14:22:51 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
2557
2558         * sunrpc/rpc_main.c (main): Call textdomain.
2559
2560         * MakeTAGS (XGETTEXTFLAGS-siglist.pot, XGETTEXTFLAGS-errlist.pot): Add
2561         --no-location.
2562         (all-pot): Replace $(subdirs) files with $P/subdirs.pot.
2563         ($P/subdirs.pot): New target.
2564         ($P/SYS_libc.pot): Add -n switch.
2565
2566         * locale/locale.h (LC_*): Values reordered to match Linux libc.
2567
2568         * sysdeps/mach/hurd/kill.c: If proc_pid2task gives us MACH_PORT_NULL
2569         the process is a zombie; send no messages and return success.
2570
2571 Thu Mar 28 11:53:26 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
2572
2573         * wctype/cname-lookup.h: Find localeinfo.h in ../locale.
2574         * wctype/wctype.c: Likewise.
2575         * wctype/wctrans.c: Likewise.
2576
2577 Thu Mar 28 03:00:43 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
2578
2579         * locale/nl_langinfo.c (nl_langinfo): Use DATA->values instead of
2580         DATA->strings.
2581
2582         * Makerules (BUILD_CFLAGS): Remove $(common-objpfx) from config.h.
2583
2584         * configure.in (.weakext check): Fix asm code to use .weakext instead
2585         of .weak!  Fix bogus test calls.
2586         * configure: Regenerated.
2587
2588 Thu Mar 28 03:25:10 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
2589
2590         * locale/programs/xmalloc.c: Test _LIBC as well as STDC_HEADERS.
2591
2592         * locale/programs/ld-collate.c (collate_finish): Use error_at_line
2593         instead of error_with_loc.
2594
2595         * locale/weight.h: Use u_int32_t instead of u32_t.
2596         * string/strxfrm.c: Likewise.
2597
2598         * string/strxfrm.c: Find weight.h in ../locale; don't #include
2599         "localeinfo.h".
2600         * string/strcoll.c: Likewise.
2601
2602         * intl/Makefile (copysrc): Add missing > in sed cmd.
2603
2604 Sat Mar 23 17:52:49 1996  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
2605
2606         * Makeconfig: Rename Makefile variable nlsdir to i18ndir and
2607         change value to $(datadir)/i18n.  `nls' is not an appropriate
2608         name.
2609
2610         * Makefile (subdirs): Add new subdir wctype.
2611
2612         * ctype/ctype-info.c: Add new global variable __ctype_names
2613         and initialize from _nl_C_LC_CTYPE.
2614
2615         * ctype/ctype.h: In P1003.3b/D11 `alnum' is a separate character
2616         class.  Use bit 11.
2617         [_ISbit]: Protect definition of bitmasks because they are also
2618         used in wctype.h.
2619
2620         * libio/genops.c (_IO_sputbackc, _IO_sungetc): Clear EOF flag
2621         after successfully pushing back a character.
2622
2623         Fundamental changes in locale implementation.  Almost nothing
2624         from the old code is used anymore.
2625         * locale/charmap.c, locale/collate.c, locale/config.h,
2626         locale/ctypedump.c, locale/hash.h, locale/keyword.gperf,
2627         locale/keyword.h, locale/loadlocale.c, locale/locale-ctype.c,
2628         locale/locale.c locale/localeconv.c, locale/localedef.c,
2629         locale/localedef.h, locale/locfile-hash.c, locale/locfile-lex.c,
2630         locale/locfile-parse.c, locale/messages.c, locale/monetary.c,
2631         locale/numeric.c, locale/setlocale.c, locale/token.h,
2632         locale/xmalloc.c: Removed.
2633
2634         * locale/Makefile: Update for new locale implementation with
2635         program source code distributed in subdir.
2636
2637         * locale/categories.def, locale/iso-4217.def: Updated file
2638         for new locale implementation.
2639
2640         * locale/langinfo.h: Updated for new locale implementation.
2641         (ERA_D_T_FMT, ERA_T_FMT): New official values according to
2642         P1003.2b/D11.
2643         (_NL_COLLATE_NRULES, _NL_COLLATE_RULES, _NL_COLLATE_HASH_SIZE,
2644         _NL_COLLATE_HASH_LAYERS, _NL_COLLATE_TABLE_EB,
2645         _NL_COLLATE_TABLE_EL, _NL_COLLATE_UNDEFINED, _NL_COLLATE_EXTRA_EB,
2646         _NL_COLLATE_EXTRA_EL, _NL_CTYPE_NAMES_EB, _NL_CTYPE_NAMES_EL,
2647         _NL_CTYPE_HASH_SIZE, _NL_CTYPE_HASH_LAYERS, _NL_CTYPE_CLASS_NAMES,
2648         _NL_CTYPE_MAP_NAMES, _NL_CTYPE_WIDTH): New internal values for
2649         extended LC_CTYPE and LC_COLLATE implementation.
2650
2651         * locale/programs/simple-hash.c, locale/programs/simple-hash.h,
2652         locale/programs/xmalloc.c, locale/programs/xstrdup.c: Helper functions
2653         for locale related programs.
2654
2655         * locale/C-collate.c, locale/C-ctype.c,
2656         locale/C-messages.c, locale/C-monetary.c,
2657         locale/C-numeric.c, locale/C-time.c,
2658         locale/lc-collate.c, locale/lc-ctype.c,
2659         locale/lc-messages.c, locale/lc-monetary.c,
2660         locale/lc-numeric.c, locale/lc-time.c: New implementation of locale
2661         functions, and new generated "C" locale data.
2662
2663         * locale/loadlocale.c: Now handles word fields in locale binary
2664         automatically by changing the endianess if necessary.
2665
2666         * locale/localeinfo.h (LIMAGIC): Changed magic number because
2667         of incompatible changes.
2668         (locale_data): Changed definition to allow word as a value type.
2669         (coll_sort_rule): Values for collation sorting mode.
2670         (_NL_CURRENT_WORD): New macro to access word value of locale entry.
2671         (__collate_table, __collate_extra): Declare new global variables
2672         for collation tables.
2673
2674         * locale/programs/charmap-kw.gperf, locale/programs/charmap-kw.h,
2675         locale/programs/charmap.c, locale/programs/charset.c,
2676         locale/programs/charset.h, locale/programs/config.h,
2677         locale/programs/ctypedump.c, locale/programs/ld-collate.c,
2678         locale/programs/ld-ctype.c, locale/programs/ld-messages.c,
2679         locale/programs/ld-monetary.c, locale/programs/ld-numeric.c,
2680         locale/programs/ld-time.c, locale/programs/linereader.c,
2681         locale/programs/linereader.h, locale/programs/locale.c,
2682         locale/programs/localedef.c, locale/programs/locales.h,
2683         locale/programs/locfile-kw.gperf, locale/programs/locfile-kw.h,
2684         locale/programs/locfile-token.h, locale/programs/locfile.c,
2685         locale/programs/locfile.h, locale/programs/stringtrans.c,
2686         locale/programs/stringtrans.h: Implementation of locale related
2687         programs.
2688
2689         * locale/weight.h: Functions to access collation tables.
2690
2691         * posix/unistd.h: Define _POSIX2_LOCALEDEF.
2692
2693         * stdio-common/printf_fp.c: Fix bug with printing certain numbers
2694         < 10^-1.  Reported by Bill Metzenthen.
2695
2696         * stdio-common/tfformat.c: Add new test for above bug.
2697
2698         * string/strcoll.c, string/strxfrm.c: Real implementation of
2699         string collation according to ISO C.
2700
2701         * wctype/Makefile, wctype/cname-lookup.h, wctype/iswctype.c,
2702         wctype/test_wctype.c, wctype/towctrans.c, wctype/wcfuncs.c,
2703         wctype/wctrans.c, wctype/wctype.c, wctype/wctype.h: New files.
2704         Implementation of wide character classes and mapping.
2705
2706 Wed Mar 27 14:52:11 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
2707
2708         * elf/rtld.c (dl_main): Call _dl_sysdep_start_cleanup after
2709         _dl_relocate_object loop.  Avoid relocating RTLD_MAP in that loop, and
2710         do it individually if necessary after _dl_sysdep_start_cleanup call.
2711
2712         * stdlib/Makefile (mpn-routines): Add divrem.
2713
2714 Tue Mar 26 22:54:14  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
2715
2716         * stdio-common/printf_fp.c (__printf_fp): Use mpn_divmod
2717         instead of __mpn_divmod.
2718
2719 Wed Mar 27 10:26:21 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2720
2721         * sysdeps/alpha/setjmp.S: Must establish global pointer before
2722         address of __sigsetjmp_aux can be loaded.
2723
2724 Wed Mar 27 02:23:19 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu>
2725
2726         * sysdeps/i386/i586/memset.S: New file.  Highly optimized
2727         version for i586 contributed by Torbjorn Granlund.
2728         Adapted for use as bzero.
2729         * sysdeps/i386/i586/bzero.S: Use sysdeps/i386/i586/memset.S
2730         code to implement bzero().
2731
2732 Tue Mar 26 20:01:17 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
2733
2734         * stdlib/Makefile (mpn-routines): Remove divmod.
2735
2736 Tue Mar 26 15:40:14 1996  Brendan Kehoe  <brendan@zen.org>
2737
2738         * sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h (NO_UNDERSCORES): Use
2739         wrapped with #ifndef, to avoid config.h defining it.
2740
2741 Mon Mar 25 13:10:04 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
2742
2743         * malloc/realloc.c (_realloc_internal): In case of growing large
2744         block, leave _heaplimit zero across _malloc_internal call.
2745
2746         * intl/Makefile [gettext-srcdir]: Use gpl2lgpl.sed on copied sources.
2747
2748 Mon Mar 25 03:35:16 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
2749
2750         * malloc/malloc.c (morecore): Don't attempt recursive realloc of info
2751         table when _heaplimit==0 during realloc growing large block.
2752
2753         * MakeTAGS (extract): Remove /dev/null from xgettext command line.
2754         (text-srcs): New variable: extract only C sources from $(tags_sources).
2755         (po/$(domain).pot): Depend on that.
2756         If it's empty, cp /dev/null $@ instead of $(extract).
2757
2758         * misc/Makefile (headers): Add iovec.h.
2759         * sysdeps/unix/sysv/linux/iovec.h: New file.
2760         * sysdeps/generic/iovec.h: New file.
2761         * misc/sys/uio.h (struct iovec): Type replaced with #include <iovec.h>.
2762
2763         * configure.in (NO_UNDERSCORES check): Use AC_TRY_LINK instead of
2764         AC_TRY_COMPILE.
2765
2766         * misc/sys/cdefs.h [__USE_BSD] (const, signed, volatile): Move these
2767         macros inside [! __STDC__].
2768
2769         * stdlib/rpmatch.c: New file.
2770         * stdlib/Makefile (routines): Add rpmatch.
2771         * stdlib/stdlib.h [__USE_SVID]: Declare rpmatch.
2772
2773         * MakeTAGS (MSGJOIN): Variable removed.
2774         (po/SYS_libc.pot): Use $(XGETTEXT) instead of $(MSGJOIN).
2775
2776 Wed Mar 20 20:08:46 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2777
2778         * sysdeps/unix/sysdep.h: Don't define C_SYMBOL_NAME.
2779
2780         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Don't define
2781         NO_UNDERSCORES.
2782
2783 Thu Mar 21 11:19:15 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
2784
2785         * mach/devstream.c (input): Translate \r to \n on input.
2786
2787 Wed Mar 20 11:28:49 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2788
2789         * stdio-common/printf.h, stdio-common/printf_fp.c,
2790         stdio-common/vfprintf.c: Place const in parameter list at
2791         correct place.
2792
2793 Wed Mar 20 23:58.12 1996  Ulrich Drepper <drepper@gnu.ai.mit.edu>
2794
2795         * sysdeps/i386/ldbl2mpn.c: Copy of former version of
2796         sysdeps/ieee754/ldbl2mpn.c.
2797         * sysdeps/ieee754/ldbl2mpn.c: Remove i386 specific unification.
2798         Reported by Andreas Schwab.
2799
2800 Wed Mar 20 19:58:43 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
2801
2802         * version.c: Include version.h to define RELEASE and VERSION macros.
2803         (__libc_release, __libc_version): Use them.
2804         * locale/SYS_libc.c (_libc_intl_domainname): Include ../version.h and
2805         use VERSION to define domainname as `SYS_GNU_libc-VERSION'.
2806         * Make-dist (rel+vers): Snarf the macro values from version.h.
2807
2808         * MakeTAGS (extract): Pass $(XGETTEXTFLAGS-$(@F)).
2809         (XGETTEXTFLAGS-siglist.pot, XGETTEXTFLAGS-errlist.pot): New variables;
2810         pass -a for these files.
2811
2812         * Makerules (po/%.pot): Depend on FORCE target so recursive make is
2813         always run.
2814
2815 Mon Mar 18 22:54:32 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2816
2817         * sysdeps/unix/sysv/linux/wait3.c: New file.
2818         * sysdeps/unix/sysv/linux/wait.c: Use the bsd4.4 wait, not the
2819         one from sysdeps/posix.
2820
2821 Wed Mar 20 09:42:11 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
2822
2823         * sysdeps/unix/bsd/waitflags.h (WNOREAP): New macro.
2824
2825         * elf/dl-load.c (_dl_map_object_from_fd): Always set L->l_type; if not
2826         lt_executable, then lt_library.
2827         * elf/rtld.c (dl_main): Don't set NEW->l_type after _dl_map_object.
2828
2829 Wed Mar 20 00:08:23 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2830
2831         * sysdeps/unix/sysv/linux/syscalls.list: Remove gtty and stty.
2832
2833 Tue Mar 19 16:31:06 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2834
2835         * sysdeps/unix/sysv/linux/termbits.h (CRTSCTS, CBAUDEX, VEOL,
2836         VEOL2, VMIN, VTIME): Corrected.
2837         (PAGEOUT, WRAP, VDSUSP): Deleted.
2838
2839 Tue Mar 19 14:18:42 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
2840
2841         * sysdeps/unix/readdir.c: Test [! _DIRENT_HAVE_D_RECLEN] instead of
2842         (sizeof (DP->d_name) > 1) to detect fixed-size dir entries.
2843
2844         * sysdeps/i386/fpu/__math.h (asinh): Call log1p instead of __log1p.
2845
2846         * math/math.h: Move M_* constants before __math.h include.
2847         [__NO_MATH_INLINES || __OPTIMIZE__]: Include __math.h only #if this.
2848
2849         * misc/efgcvt_r.c (ecvt_r): Declare floor, log10, fabs as weak extern.
2850         If log10 is not defined (i.e. no -lm), use stupid loop instead.
2851
2852         * features.h (__FAVOR_BSD): Define only if _BSD_SOURCE is defined
2853         and no other _*_SOURCE macro is.
2854         (_GNU_SOURCE): Don't define by default.
2855         * libc-symbols.h (_GNU_SOURCE): Define it.
2856
2857         * configure.in (alpha*-*-linux*): Unset $gnu_ld and $elf.
2858
2859         * config.make.in (weak-symbols): Variable removed.
2860         * configure.in (--with-weak-symbols): Option removed.
2861         (NO_UNDERSCORES, HAVE_ASM_WEAK_DIRECTIVE, HAVE_ASM_WEAKEXT_DIRECTIVE):
2862         New tests.
2863
2864         * config.h.in (HAVE_WEAK_SYMBOLS): #undef removed.
2865         (NO_UNDERSCORES, HAVE_ASM_WEAK_DIRECTIVE, HAVE_ASM_WEAKEXT_DIRECTIVE):
2866         New #undefs.
2867         * libc-symbols.h: Use them instead of HAVE_WEAK_SYMBOLS.
2868
2869         * sysdeps/unix/bsd/pause.c: Moved to sysdeps/unix/common/pause.c.
2870
2871 Mon Mar  4 20:17:28 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2872
2873         * inet/inet_lnaof.c: Use u_int32_t instead of u_long.
2874         * inet/inet_mkadr.c: Likewise.
2875         * inet/inet_net.c: Likewise.
2876         * inet/inet_netof.c: Likewise.
2877         * inet/rcmd.c: Likewise.
2878         * inet/arpa/inet.h: Likewise.
2879         * inet/netinet/in.h: Likewise.
2880         * inet/netinet/tcp.h: Likewise.
2881         * inet/protocols/rwhod.h: Likewise.
2882         * inet/protocols/talkd.h: Likewise.
2883         * resolv/inet_addr.c: Likewise.
2884
2885         * sysdeps/unix/sysv/linux/adjtime.c: Use INT_MAX instead of LONG_MAX.
2886
2887         * sysdeps/unix/sysv/Makefile (sysdep_routines): Don't add s_getdents.
2888
2889         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Don't add mount,
2890         umount.
2891
2892         * sysdeps/alpha/__math.h (atan, cabs): New functions.
2893
2894         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: new file (syscall
2895         expects set-value, not pointer to it).
2896
2897 Sun Feb 25 22:36:10 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2898
2899         * sysdeps/unix/sysv/linux/alpha/profil-counter.h: New file.
2900
2901         * gmon/gmon.c (__bb_head): new variable.
2902         (write_hist, write_call_graph, write_bb_counts): new functions.
2903         (_mcleanup): modified to call above functions instead of directly
2904         writing out gmon.out.
2905         * gmon/sys/gmon.h (struct __bb): New type.
2906         (struct gmonhdr): Type removed.
2907         (struct gmonparam): New member `log_hashfraction'.
2908         (GMONVERSION): Macro removed.
2909
2910         * gmon/sys/gmon_out.h, gmon/bb_exit_func.c,
2911         sysdeps/generic/bb_init_func.c, sysdeps/alpha/bb_init_func.S: new
2912         files.
2913         * gmon/Makefile (headers): Add sys/gmon_out.h.
2914         (routines): Add bb_init_func, bb_exit_func.
2915
2916         * gmon/mcount.c: Avoid integer division.
2917
2918 Wed Feb 21 23:56:41 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2919
2920         * sysdeps/alpha/setjmp.S: switched order in which sp and fp are
2921         passed to match what __sigsetjmp_aux() expects.
2922
2923 Tue Feb 20 11:33:46 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2924
2925         * sysdeps/unix/sysv/linux/alpha/syscalls.list (select, bind,
2926         connect, getpeername, getsockname, listen, recv, recvfrom,
2927         recvmsg, send, sendmsg, sendto, setsockopt, shutdown, socketpair):
2928         added to override same-name assembly file in the parent directory.
2929
2930         * stdlib/stdlib.h: add include of sys/types.h in front of random
2931         etc declarations to ensure int32_t is declared.
2932
2933         * stdlib/random.c, stdlib/random_r.c: replaced "long int" by int32_t
2934         where 32 bit integers are required.  Also change LONG_MAX into
2935         0x7fffffff since the intent is to turn off the sign bit in a
2936         32 bit integer.
2937
2938         * time/offtime.c (__offtime): Use Paul Eggert's code to deal
2939         with very large values for "days" (e.g., 64 bit values).
2940
2941 Mon Feb 19 22:22:12 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2942
2943         * stdlib/stdlib.h (__random, __random_r, random_r, struct
2944         random_data): use int32_t instead of `long int'.
2945
2946 Sat Feb 17 11:29:29 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2947
2948         * sysdeps/unix/sysv/linux/alpha/ioperm.c: new file.
2949
2950         * sysdeps/alpha/ffs.S: new file.
2951
2952         * sysdeps/alpha/fabs.c: File removed.
2953
2954         * time/tzfile.c (__tzfile_read): counter variable is i, *not*
2955         num_transitions!
2956
2957         * time/offtime.c: make capable of dealing with very large (64 bit)
2958         time_t values.  Use old algorithm until a year is reached that
2959         is an integer multiple of 400, then use DAYS_PER_400_YEARS to
2960         do the remainder in a single division.
2961
2962         * sysdeps/generic/ffs.c (ffs): fix variable declarations to
2963         be unsigned int, not unsigned long.
2964
2965         * string/test-ffs.c (main): add test case with all upper bits
2966         set.
2967
2968         * stdlib/tst-strtol.c: add tests cases for machines where
2969         sizeof(long)==8.
2970
2971         * stdlib/testrand.c (main): disallow rand() to return negative
2972         integers.
2973
2974         * stdlib/testmb.c (main): fix format to use %lx instead of %x.
2975
2976         * stdlib/stdlib.h: on 64 bit machines, declare
2977         struct random_data, __random(),  __random_r, and random_r to
2978         return "int" instead of "long int".
2979
2980         * stdlib/random_r.c: 64 bit machines use "int" instead of "long
2981         int".  Similarly, use INT_MAX instead of LONG_MAX.
2982
2983         * stdlib/random.c: on 64 bit machines, randtbl[] and __random[]
2984         need to operate on "int" instead of "long int".
2985
2986         * locale/locfile-hash.c (compute_hashval): make shifted constant
2987         a long to avoid loosing bits on 64 bit machines.
2988
2989         * dirent/tst-seekdir.c (main): fix confusing comment; print
2990         a line to mark point where directory is rewound.
2991
2992 Fri Feb 16 15:01:49 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2993
2994         * time/strftime.c (strftime): any hour > 11 is PM (not > 12!).
2995
2996 Wed Feb 14 00:21:17 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2997
2998         * sysdeps/unix/sysv/linux/alpha/Makefile,
2999         sysdeps/unix/sysv/linux/alpha/brk.S,
3000         sysdeps/unix/sysv/linux/alpha/fpu_control.c,
3001         sysdeps/unix/sysv/linux/alpha/fpu_control.h,
3002         sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S,
3003         sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S,
3004         sysdeps/unix/sysv/linux/alpha/pipe.S,
3005         sysdeps/unix/sysv/linux/alpha/setfpucw.c,
3006         sysdeps/unix/sysv/linux/alpha/sigprocmask.c,
3007         sysdeps/unix/sysv/linux/alpha/speed.c,
3008         sysdeps/unix/sysv/linux/alpha/start.S,
3009         sysdeps/unix/sysv/linux/alpha/syscall.S,
3010         sysdeps/unix/sysv/linux/alpha/syscalls.list,
3011         sysdeps/unix/sysv/linux/alpha/alpha/regdef.h,
3012         sysdeps/unix/sysv/linux/alpha/sysdep.S,
3013         sysdeps/unix/sysv/linux/alpha/sysdep.h: New files.
3014
3015         * sysdeps/alpha/setjmp_aux.c (__sigsetjmp_aux): restore return
3016         address register before returning (gcc 2.7.1 doesn't do it,
3017         presumably because $26 is declared as a global variable).
3018
3019         * sysdeps/unix/sysv/linux/sys/mman.h: msync was missing "flags"
3020         argument.
3021
3022         * sysdeps/unix/alarm.c (alarm): do roundup using test & increment
3023         instead of multiplication.
3024
3025         * sysdeps/posix/sleep.c (sleep): initialize sa_mask to mask of
3026         currently blocked signals instead of the empty mask to ensure
3027         that execution of alarm handler occurs with none of the currently
3028         blocked signals enabled.
3029
3030         * sysdeps/unix/alpha/sysdep.h: new file (adapted from OSF/1 version).
3031
3032         * sysdeps/unix/bsd/osf/alpha/sysdep.h: include
3033         sysdeps/unix/alpha/sysdep.h and removed definitions now in that file.
3034
3035         * sysdeps/alpha/divrem.S, sysdeps/alpha/htonl.S,
3036         sysdeps/alpha/htons.S, sysdeps/alpha/machine-gmon.h,
3037         sysdeps/alpha/_mcount.S, sysdeps/alpha/ntohl.s, sysdeps/alpha/ntohs.s,
3038         sysdeps/alpha/strlen.S: New files.
3039
3040         * sysdeps/alpha/divl.S, sysdeps/alpha/divlu.S, sysdeps/alpha/divq.S,
3041         sysdeps/alpha/divqu.S, sysdeps/alpha/divrem.m4,
3042         sysdeps/alpha/macros.m4, sysdeps/alpha/reml.S, sysdeps/alpha/remlu.S,
3043         sysdeps/alpha/remq.S, sysdeps/alpha/remqu.S, sysdeps/alpha/strlen.c:
3044         Removed.
3045
3046         * sysdeps/generic/sbrk.c (__sbrk): argument is of type ptrdiff_t, not
3047         int.
3048
3049         * sysdeps/alpha/__longjmp.c (__longjmp): moved dummy while loop
3050         to end of function to avoid a jump across NOPs.
3051
3052         * sysdeps/alpha/Makefile (sysdep_routines): Removed all rules
3053         pertaining to integer division/remainder routines since new code
3054         doesn't require them.
3055
3056         * sunrpc/xdr_mem.c, sunrpc/xdr_stdio.c: Use 4 instead of sizeof(long)
3057         where 32 bit quantities are consumed/stored.  Various other minor
3058         64-bit cleanups (casting).
3059
3060         * sunrpc/xdr.c (xdr_int): test for sizeof(int)==4 to determine
3061         whether xdr_long or xdr_short should be used to encode an int.
3062         Notice that an xdr_long is 4 bytes independent of the architecture
3063         (otherwise no Alpha could interoperate with existing NFS servers,
3064         for example).  Ditto for enums.
3065
3066         * sunrpc/svc_udp.c (svcudp_recv): changed test from 4*sizeof(u_long)
3067         to 16 since it really wants 16 bytes.
3068
3069         * sunrpc/svc.c (maskp): changed from u_long* to u_int32*.
3070
3071         * sunrpc/rpc/xdr.h (IXDR_GET_LONG, IXDR_PUT_LONG): change casts to
3072         u_int32_t (instead of u_long).
3073
3074         * sunrpc/rpc_cmsg.c (xdr_callmsg), sunrpc/svc_authux.c: increment
3075         "buf" pointer by casting it to a char* first since a long* may be 8
3076         bytes or more and oa->oa_length may be any multiple of 4.
3077
3078         * sunrpc/clnt_udp.c (clntudp_call): replaced sizeof(u_long) by 4
3079         since it really is testing for 32 bits.  Fixed casts to use
3080         u_int32 instead of u_long.
3081         * sunrpc/xdr_rec.c: Likewise.
3082
3083         * sunrpc/clnt_tcp.c (clnttcp_call): replaced u_long by u_int32.
3084         * sunrpc/rpc/auth.h: Likewise.
3085
3086         * limits.h (LONG_MAX, LONG_MIN, ULONG_MAX): use 64 bit values
3087         for Alpha.
3088
3089 Tue Mar 19 13:27:49 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3090
3091         * sysdeps/i386/fpu/__math.h: New file.
3092         Contributed by John C. Bowman <bowman@hagar.ph.utexas.edu>.
3093
3094 Sun Mar 17 00:28:16 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3095
3096         * sysdeps/posix/clock.c: Don't multiply the return value by
3097         CLOCKS_PER_SEC or CLK_TCK.
3098
3099 Mon Mar 18 13:20:46 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3100
3101         * sysdeps/mach/hurd/getcwd.c: Fail with ENOENT if a parent directory
3102         scan finds no match.
3103
3104         * posix/unistd.h (setpgrp): Declare no-arg version unless __FAVOR_BSD.
3105         * misc/bsd-compat.c (setpgrp): New function, two arg version.
3106         * sysdeps/stub/setpgid.c: Remove setpgrp alias.
3107         * sysdeps/mach/hurd/setpgid.c: Likewise.
3108         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
3109         * sysdeps/unix/common/syscalls.list (setpgid): Remove setpgrp alias.
3110         * sysdeps/unix/sysv/irix4/syscalls.list: Likewise.
3111         * sysdeps/unix/sysv/linux/setpgrp.c: Obsolete file removed.
3112         * posix/setpgrp.c (setpgrp): New file.
3113         * posix/Makefile (routines): Add setpgrp.
3114
3115         * elf/Makefile (rtld-link): New canned sequence.
3116         (ld.so, ld-linux.so.1): Use it.  Pass -soname option.
3117
3118         * sysdeps/i386/setjmp.S (__setjmp): Define compatibility entry point.
3119
3120 Sun Mar 17 23:15:32 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3121
3122         * sysdeps/unix/sysv/linux/tcgetpgrp.c,
3123         sysdeps/unix/sysv/linux/tcsetpgrp.c: New files.
3124
3125 Sun Mar 17 07:19:33 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3126
3127         * db/Makefile (CFLAGS-hash_func.c): New variable; pass -Wno-unused.
3128         (CFLAGS): Append -Wno-unitialized.
3129
3130 Sat Mar 16 20:58:43 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3131
3132         * stdlib/erand48_r.c: Use FP division by powers of two to distribute
3133         short bits into double.
3134
3135 Sat Mar 16 20:08:22 1996  David Mosberger-Tang  <davidm@azstarnet.com>
3136
3137         * sysdeps/alpha/memchr.S: New file.
3138         * sysdeps/alpha/memchr.c: Obsolete file removed.
3139         * string/tester.c: Soup up memchr tests.
3140
3141 Sat Mar 16 16:26:09 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3142
3143         * misc/Makefile (headers): Add sysexits.h.
3144         * misc/sysexits.h: New file.
3145
3146 Thu Mar 14 15:20:45 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3147
3148         * sysdeps/libm-ieee754/e_atan2.c (__ieee754_atan2): Change atan
3149         call to __atan.
3150         * sysdeps/libm-ieee754/e_atan2f.c (__ieee754_atan2f): Change atanf
3151         call to __atanf.
3152
3153         * sysdeps/m68k/fpu/e_acos.c, sysdeps/m68k/fpu/e_acosf.c,
3154         sysdeps/m68k/fpu/e_asin.c, sysdeps/m68k/fpu/e_asinf.c,
3155         sysdeps/m68k/fpu/e_atanh.c, sysdeps/m68k/fpu/e_atanhf.c,
3156         sysdeps/m68k/fpu/e_cosh.c, sysdeps/m68k/fpu/e_coshf.c,
3157         sysdeps/m68k/fpu/e_exp.c, sysdeps/m68k/fpu/e_expf.c,
3158         sysdeps/m68k/fpu/e_fmod.c, sysdeps/m68k/fpu/e_fmodf.c,
3159         sysdeps/m68k/fpu/e_log.c, sysdeps/m68k/fpu/e_log10.c,
3160         sysdeps/m68k/fpu/e_log10f.c, sysdeps/m68k/fpu/e_logf.c,
3161         sysdeps/m68k/fpu/e_pow.c, sysdeps/m68k/fpu/e_powf.c,
3162         sysdeps/m68k/fpu/e_remainder.c, sysdeps/m68k/fpu/e_remainderf.c,
3163         sysdeps/m68k/fpu/e_scalb.c, sysdeps/m68k/fpu/e_scalbf.c,
3164         sysdeps/m68k/fpu/e_sinh.c, sysdeps/m68k/fpu/e_sinhf.c,
3165         sysdeps/m68k/fpu/e_sqrt.c, sysdeps/m68k/fpu/e_sqrtf.c,
3166         sysdeps/m68k/fpu/k_cos.c, sysdeps/m68k/fpu/k_cosf.c,
3167         sysdeps/m68k/fpu/k_sin.c, sysdeps/m68k/fpu/k_sinf.c,
3168         sysdeps/m68k/fpu/k_tan.c, sysdeps/m68k/fpu/k_tanf.c,
3169         sysdeps/m68k/fpu/s_atan.c, sysdeps/m68k/fpu/s_atanf.c,
3170         sysdeps/m68k/fpu/s_ceil.c, sysdeps/m68k/fpu/s_ceilf.c,
3171         sysdeps/m68k/fpu/s_cos.c, sysdeps/m68k/fpu/s_cosf.c,
3172         sysdeps/m68k/fpu/s_expm1.c, sysdeps/m68k/fpu/s_expm1f.c,
3173         sysdeps/m68k/fpu/s_fabs.c, sysdeps/m68k/fpu/s_fabsf.c,
3174         sysdeps/m68k/fpu/s_finite.c, sysdeps/m68k/fpu/s_finitef.c,
3175         sysdeps/m68k/fpu/s_floor.c, sysdeps/m68k/fpu/s_floorf.c,
3176         sysdeps/m68k/fpu/s_frexp.c, sysdeps/m68k/fpu/s_frexpf.c,
3177         sysdeps/m68k/fpu/s_ilogb.c, sysdeps/m68k/fpu/s_ilogbf.c,
3178         sysdeps/m68k/fpu/s_isinf.c, sysdeps/m68k/fpu/s_isinff.c,
3179         sysdeps/m68k/fpu/s_isnan.c, sysdeps/m68k/fpu/s_isnanf.c,
3180         sysdeps/m68k/fpu/s_ldexp.c, sysdeps/m68k/fpu/s_ldexpf.c,
3181         sysdeps/m68k/fpu/s_log1p.c, sysdeps/m68k/fpu/s_log1pf.c,
3182         sysdeps/m68k/fpu/s_logb.c, sysdeps/m68k/fpu/s_logbf.c,
3183         sysdeps/m68k/fpu/s_modf.c, sysdeps/m68k/fpu/s_modff.c,
3184         sysdeps/m68k/fpu/s_rint.c, sysdeps/m68k/fpu/s_rintf.c,
3185         sysdeps/m68k/fpu/s_scalbn.c, sysdeps/m68k/fpu/s_scalbnf.c,
3186         sysdeps/m68k/fpu/s_significand.c,
3187         sysdeps/m68k/fpu/s_significandf.c, sysdeps/m68k/fpu/s_sin.c,
3188         sysdeps/m68k/fpu/s_sinf.c, sysdeps/m68k/fpu/s_tan.c,
3189         sysdeps/m68k/fpu/s_tanf.c, sysdeps/m68k/fpu/s_tanh.c,
3190         sysdeps/m68k/fpu/s_tanhf.c: New files, for m68881 port of fdlibm.
3191
3192         * sysdeps/m68k/fpu/__math.h: Rewritten for fdlibm.
3193
3194         * sysdeps/m68k/fpu/isinfl.c: Rewritten to get argument type right.
3195         * sysdeps/m68k/fpu/isnanl.c: Likewise.
3196
3197 Thu Mar 14 06:01:07 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3198
3199         * posix/glob.c (glob): In GLOB_BRACE brace expansion, fix buffer size
3200         calculation to include trailing invariant portion.  Don't use alloca;
3201         instead use a dynamic auto array for GCC, malloc for non-GCC.
3202         Handle nested braces properly.
3203
3204         * elf/elf.h (Elf32_auxv_t): Specify prototype (void) for `a_un.a_fcn'.
3205
3206         * libc-symbols.h (lint): New macro.
3207
3208 Fri Mar 15 01:18:00 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3209
3210         * libio/iosetvbuf.c: Add weak alias setvbuf.
3211
3212 Thu Mar 14 06:01:07 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3213
3214         * string/strnlen.c: New file.
3215         * string/Makefile (routines): Add strnlen.
3216         * string/string.h [__USE_GNU] (strnlen): Declare new function.
3217         [__OPTIMIZE__]: Define extern inline implementation of it.
3218
3219         * stdlib/erand48_r.c: Use __mpn_construct_double instead of ldexp and
3220         addition, to avoid using anything from -lm.
3221
3222 Mon Mar  4 21:57:14 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3223
3224         * sysdeps/unix/sysv/linux/m68k/Makefile: New file.
3225
3226         * sysdeps/unix/sysv/linux/m68k/sysdep.h (SYS_ify): Redefine.
3227         (CALL_MCOUNT): New macro, empty unless [PROF].
3228         (ENTRY): Do CALL_MCOUNT just after the label.
3229         (JUMPTARGET): New macro.
3230         (SYSCALL_ERROR_HANDLER): Fix syntax.
3231
3232 Thu Mar 14 04:20:48 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3233
3234         * sysdeps/unix/sysv/linux/init-first.c (init): Call `__personality'
3235         function instead of using inline asm i386 syscall.
3236         * sysdeps/unix/sysv/linux/syscalls.list: Add personality syscall.
3237
3238         * posix/unistd.h [__USE_BSD]: Declare usleep.
3239
3240 Tue Mar 12 04:57:57 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3241
3242         * misc/efgcvt.c (MAXDIG): New macro computed from <floats.h> constants.
3243         (fcvt, ecvt): Use it for buffer size.
3244
3245         * stdlib/drand48-iter.c (__drand48_iterate): Use u_int64_t instead of
3246         conditionalizing long vs long long.
3247
3248         * stdlib/drand48-iter.c (__drand48_iterate): Don't check for null
3249         pointers; never return EFAULT.
3250         * stdlib/drand48_r.c (drand48_r): Likewise.
3251         * stdlib/erand48_r.c (erand48_r): Likewise.
3252
3253         * setjmp/Makefile (tests): Add jmpbug.
3254         * setjmp/jmpbug.c: New file.
3255
3256 Tue Mar 12 04:42:01 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3257
3258         * sysdeps/sparc/jmp_buf.h: Rewritten; use array of ints, not struct.
3259         * sysdeps/sparc/setjmp.S: Rewritten; store %fp value as well.
3260         * sysdeps/sparc/__longjmp.S: Rewritten; unwind frames one by one with
3261         `restore' until the target frame is hit.
3262
3263 Sun Mar 10 20:29:40 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3264
3265         * sysdeps/unix/sysv/linux/sigsuspend.c: New file.
3266         * sysdeps/unix/sysv/linux/syscalls.list: Remove sigsuspend, add
3267         s_sigsuspend.
3268
3269 Thu Mar  7 21:30:58 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3270
3271         * Makerules (+make-deps, sed-remove-objpfx): Quote periods on the
3272         left side of sed substitutions.
3273
3274 Sun Mar 10 16:58:10 1996  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
3275
3276         * stdio-common/printf_fp.c (hack_digit): __mpn_normal_size
3277         is not available anymore.  Do it ourselves.
3278
3279         * sysdeps/unix/sysv/linux/i386/fpu_control.h (_FPU_SETCW):
3280         Correct GCC `asm' syntax.
3281
3282 Tue Mar 12 03:15:02 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3283
3284         * stdio-common/Makefile (tests): Add tst-ungetc.
3285         * stdio-common/tst-ungetc.c: New test from drepper.
3286         * stdio-common/tstscanf.c (main): New %[ test case from drepper.
3287
3288         * sysdeps/libm-ieee754/s_scalbn.c (scalbn): Rename to __scalbn;
3289         somehow this was missed, though the weak alias is already there.
3290
3291         * sysdeps/unix/sysv/linux/i386/fpu_control.h (_FPU_DEFAULT): Change
3292         default to double precision, all interrupts masked; fdlibm requires.
3293
3294 Sat Mar  9 18:44:27 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3295
3296         * sysdeps/unix/sysv/linux/i386/setfpucw.c: Obsolete file removed.
3297
3298 Fri Mar  8 22:16:48 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3299
3300         * stdio-common/printf_fp.c (HAVE_ALLOCA): New macro.
3301
3302 Tue Mar  5 18:45:14 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3303
3304         * sysdeps/mach/hurd/select.c (__select): Include LASTFD in the
3305         final loop.
3306
3307 Mon Mar  4 20:54:40 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3308
3309         * Makeconfig ($(common-objpfx)config.make): Depend on config.h.in.
3310
3311 Tue Mar  5 12:14:57 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3312
3313         * sysdeps/mach/hurd/select.c (__select): Also don't fault just
3314         because some fdmask is 0.
3315
3316 Mon Mar  4 17:35:35 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3317
3318         * sysdeps/mach/hurd/select.c (__select):
3319         Don't increment GOT only because READ/WRITE/EXCEPTFDS is 0!
3320         Don't return without frobbing the bitmasks after a timeout.
3321         When clearing the bitmasks, only loop from FIRSTFD to LASTFD.
3322
3323 Mon Mar  4 17:35:09 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3324
3325         * hurd/catch-signal.c (hurd_safe_memmove): New function.
3326         (hurd_safe_copyin, hurd_safe_copyout): New functions.
3327         * hurd/hurd/sigpreempt.h: Declare them.
3328
3329 Sun Mar  3 08:43:44 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3330
3331         Replace math code with fdlibm from Sun as modified for netbsd by
3332         JT Conklin and Ian Taylor, including x86 FPU support.
3333         * sysdeps/libm-ieee754, sysdeps/libm-i387: New directories.
3334         * math/math_private.h: New file.
3335         * sysdeps/i386/fpu/Implies: New file.
3336         * sysdeps/ieee754/Implies: New file.
3337         * math/machine/asm.h, math/machine/endian.h: New files.
3338         * math/Makefile, math/math.h: Rewritten.
3339         * mathcalls.h, math/mathcalls.h: New file, broken out of math.h.
3340         * math/finite.c: File removed.
3341         * sysdeps/generic/Makefile [$(subdir)=math]: Frobnication removed.
3342
3343         * math/test-math.c: Include errno.h and string.h.
3344
3345         * sysdeps/unix/bsd/dirstream.h: File removed.
3346         * sysdeps/unix/bsd/readdir.c: File removed.
3347
3348 Sat Mar  2 16:35:40 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3349
3350         * sysdeps/unix/sysv/linux/m68k/profil-counter.h: File removed.
3351         * sysdeps/unix/sysv/sysv4/solaris2/sparc/profil-counter.h: File
3352         removed.
3353         * sysdeps/generic/profil-counter.h: New file.
3354
3355 Fri Mar  1 17:11:59 1996  Brendan Kehoe  <brendan@zen.org>
3356
3357         * sysdeps/unix/sysv/sysv4/solaris2/sparc/sigcontext.h: New file,
3358         including <sysdeps/unix/bsd/sun/sparc/sigcontext.h>.
3359         * sysdeps/unix/sysv/sysv4/solaris2/sparc/profil-counter.h: New file,
3360         same as linux/m68k/profil-counter.h except the comment.
3361
3362 Fri Mar  1 10:09:46 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3363
3364         * stdlib/Makefile (mpn-stuff): New target.
3365         (copy-mpn): Use it.
3366
3367         * Code copied from GMP updated to 1.937 version.
3368         * stdlib/strtod.c (HAVE_ALLOCA): Define this for gmp headers.
3369
3370         * posix/glob.c: Use canonical code from autoconf manual for dirent
3371         include.
3372         [_D_NAMLEN]: Redefine NAMLEN using this.
3373         (glob_in_dir): Use NAMLEN macro.
3374
3375         * sysdeps/posix/profil.c: New file.
3376
3377 Thu Feb 29 20:55:57 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3378
3379         * sysdeps/unix/sysv/linux/m68k/profil-counter.h: New file.
3380
3381 Tue Feb 27 12:14:59 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3382
3383         * libc-symbols.h [GCC >= 2.8] (strong_alias, weak_alias): Remove
3384         `extern' keyword.
3385
3386         * time/strftime.c: Support - and _ flags to affect number padding.
3387
3388         * sysdeps/unix/common/tcsendbrk.c: New file.
3389
3390 Mon Feb 26 10:22:30 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3391
3392         * sysdeps/unix/dirstream.h: Rewritten.
3393         * sysdeps/unix/readdir.c: Rewritten.
3394         * sysdeps/unix/telldir.c: Rewritten.
3395         * sysdeps/unix/closedir.c: Use <...> instead of "..." for dirstream.h.
3396         Remove __ from DIR struct member names.
3397         * sysdeps/unix/dirfd.c: Likewise.
3398         * sysdeps/unix/seekdir.c: Likewise.
3399         * sysdeps/unix/rewinddir.c: Likewise.
3400         * sysdeps/unix/opendir.c: Likewise.  Don't allocate extra space after
3401         DIR structure.
3402         * sysdeps/stub/direct.h: File removed.
3403         * sysdeps/unix/bsd/bsd4.4/direct.h: File removed.
3404         * sysdeps/unix/bsd/direct.h: File removed.
3405         * sysdeps/unix/common/direct.h: File removed.
3406         * sysdeps/unix/sysv/irix4/direct.h: File removed.
3407         * sysdeps/unix/sysv/isc3/direct.h: File removed.
3408         * sysdeps/unix/sysv/sco3.2.4/direct.h: File removed.
3409         * sysdeps/unix/sysv/sysv4/solaris2/direct.h: File removed.
3410         * sysdeps/unix/common/direntry.h: New file.
3411         * sysdeps/unix/bsd/direntry.h: New file.
3412         * sysdeps/unix/bsd/bsd4.4/direntry.h: New file.
3413         * sysdeps/unix/sysv/direntry.h: New file.
3414         * sysdeps/stub/direntry.h: New file.
3415         * dirent/dirent.h (struct dirent): Type removed.  Include <direntry.h>
3416         to define it.
3417         (_D_EXACT_NAMLEN, _D_ALLOC_NAMLEN): New macros.
3418         * dirent/Makefile (headers): Add direntry.h.
3419         (distribute): Remove direct.h.
3420         * sysdeps/posix/getcwd.c: Use new macros instead of d_namlen.
3421         * dirent/scandir.c: Likewise.
3422         * io/fts.c (fts_build): Likewise.
3423         * io/ftw.c (ftw_dir): Likewise.
3424         * sysdeps/posix/ttyname.c: Likewise.
3425
3426         * sysdeps/unix/sysv/sysv4/solaris2/syscalls.list: New file.
3427
3428         * sysdeps/mach/hurd/profil.c (MAX_PC_SAMPLES): New macro.
3429         (collector_timeout): New static variable.
3430         (update_waiter): Actually call __task_enable_pc_sampling.
3431         Set collector_timeout based on the `tick' count returned.
3432         (profile_waiter): Use MAX_PC_SAMPLES.  Set nsamples before RPC.
3433         Use collector_timeout in __mach_msg call.
3434
3435         * gmon/Makefile (noprof): New variable containing mcount.
3436         Append profil unless it is in $(unix-syscalls).
3437         (mcount.po): Use $(noprof) for list of targets in this rule.
3438
3439         * libc-symbols.h: Define _LIBC before #include <config.h>.
3440
3441 Sun Feb 25 12:29:23 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3442
3443         * config.h.in [_LIBC] (HAVE_STRERROR): Define it.
3444         Protect 2nd page of #undef's for generator programs with #ifndef _LIBC.
3445
3446         * time/zic.c, time/zdump.c, time/private.h: Updated from ADO 96e.
3447
3448 Fri Feb  9 12:40:19 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
3449
3450         * libio/cleanup.c (_IO_cleanup_registration_needed)
3451         [!_G_HAVE_ATEXIT]: Init to NULL.
3452         * libio/filedoalloc.c (_IO_cleanup_registration_needed): Remove decl.
3453
3454 Thu Feb  8 08:12:50 1996  Brendan Kehoe  <brendan@cygnus.com>
3455
3456         * libio/filedoalloc.c (_IO_cleanup_registration_needed): Revert
3457         previous change, since cleanup.c only defines it if _G_HAVE_ATEXIT.
3458
3459 Wed Feb  7 15:10:17 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
3460
3461         * libio/filedoalloc.c (_IO_cleanup_registration_needed): Declare as
3462         extern.
3463
3464 Sat Feb 24 11:34:13 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3465
3466         * sysdeps/i386/memcmp.S: Fix argument %esp offsets.
3467
3468         * time/sys/time.h (timeradd, timersub): New macros; BSD has these.
3469
3470 Wed Feb 21 02:25:07 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3471
3472         * Rules (others): Depend on $(extra-objs), $(install-lib),
3473         $(install-bin), $(install-sbin), in object directory.
3474
3475         * Makeconfig (link-libc): Don't pass -rpath option with default
3476         path, since ld.so should use the same default.
3477         * Makerules (build-shlib): Likewise.
3478
3479         * Makerules (make-target-directory): Use mkinstalldirs.
3480
3481         * sysdeps/mach/i386/sysdep.h: Include unix/i386/sysdep.h to
3482         redefine ENTRY et al.
3483
3484         * sysdeps/unix/sysv/linux/i386/sysdep.h (NO_UNDERSCORES, ENTRY):
3485         Macros removed.  The code in unix/i386/sysdep.h should now suffice.
3486
3487         * sysdeps/unix/i386/sysdep.h (ALIGNARG): New macro, defns for
3488         [HAVE_ELF] and not.
3489         (ENTRY): Use it in .align directive.
3490         (CALL_MCOUNT): New macro, empty unless [PROF].
3491         (ENTRY): Do CALL_MCOUNT just after the label.
3492
3493         * Makeconfig (CPPFLAGS-.po): New variable, use -DPROF so assembly
3494         code can call mcount.
3495
3496 Tue Feb 20 23:05:16 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3497
3498         * time/private.h, time/zdump.c, time/zic.c: Updated verbatim from ADO;
3499         translation markings are now integrated in his distribution.
3500
3501         * stdlib/strtod.c (round_and_return): Add missing (mp_limb) 1 cast.
3502
3503 Mon Feb 19 18:31:59 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
3504
3505         * po: New directory where `LANG.po' files for message translations
3506         will reside.
3507         * po/SYS_libc.pot: New file, template of message strings as in source.
3508         * MakeTAGS: New rules to build po/SYS_libc.pot automatically from
3509         the source using xgettext.
3510         * Makerules ($(..)po/%.pot): New rule.
3511         * manual/Makefile (../po/manual.pot): New target, make it empty.
3512
3513         * sysdeps/unix/bsd/alarm.c: Moved to sysdeps/unix/alarm.c.
3514         * sysdeps/unix/bsd/nice.c: Moved to sysdeps/unix/nice.c.
3515         * sysdeps/unix/bsd/stime.c: Moved to sysdeps/unix/stime.c.
3516         * sysdeps/unix/bsd/time.c: Moved to sysdeps/unix/time.c.
3517         * sysdeps/unix/bsd/utime.c: Moved to sysdeps/unix/utime.c.
3518
3519         * time/zic.c, time/scheck.c, time/private.h, time/tzfile.h:
3520         Updated from ADO 96d.
3521
3522 Sun Feb 18 14:08:04 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3523
3524         * csu/initfini.c (_init): Remove bogus volatile declarations and
3525         extra variable, take the address of __gmon_start__ only implicitly