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