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