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