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