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