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