Wed Jul 17 17:08:48 1996 Roland McGrath <roland@delasyd.gnu.ai.mit.edu>
[platform/upstream/glibc.git] / ChangeLog
1 Wed Jul 17 17:08:48 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2
3         * version.h (VERSION): Update to 1.93.
4
5         * Makerules ($(libdir)/libc.so): Depend on
6         $(common-objpfx)libcrypt.so$(libcrypt.so-version).
7
8         * crypt/nocrypt.c: New file.
9         * Makefile (subdirs): Add crypt.
10         * crypt/Makefile: New file.
11
12         * Makerules (soversions.mk): Move this target, include of it, and
13         include of version.mk to ...
14         * Makeconfig: ... here.
15         (soversions.mk): Depend on Makeconfig instead of Makerules.
16
17         * shlib-versions (*-*-*): Set libcrypt=0.
18
19 Wed Jul 17 11:29:26 1996  Miles Bader  <miles@gnu.ai.mit.edu>
20
21         * stdio/linewrap.c (lwupdate): Fix boundary condition where a
22         word extends right up to rmargin.
23
24         * stdio/linewrap.c (lwupdate): When we've done a word wrap and
25         output the wrap margin, set point_col to wmargin.
26         Use negative point_col to deal with a wmargin of 0.
27         (line_wrap_point): Return 0 for a negative point_col.
28         (line_wrap_stream): Make wmargin ssize_t.
29         * stdio/linewrap.h (struct line_wrap_data): Make wmargin &
30         point_col ssize_t.
31         (line_wrap_stream): Make wmargin ssize_t.
32         (line_wrap_point): Return 0 for a negative point_col.
33
34 Wed Jul 17 02:43:28 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
35
36         * shlib-versions (*-*-gnu*): Set libc=0.0
37
38 Tue Jul 16 01:52:42 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
39
40         * sysdeps/m68k/dl-machine.h: Follow Jul 14 change in
41         sysdeps/i386/dl-machine.h.
42
43 Tue Jul 16 00:18:19 1996  Miles Bader  <miles@gnu.ai.mit.edu>
44
45         * stdio/linewrap.c (__line_wrap_update): Add hackery from flshfp
46         to fiddle __put_limit in conjunction with __linebuf_active.
47
48 Tue Jul 16 00:14:07 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
49
50         * sysdeps/unix/inet/syscalls.list (connect, send): Add underscores
51         to the strong name, not the file name.
52
53 Tue Jul 16 16:43:58 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
54
55         * csu/initfini.c: More magic.  Detect if .end is produced and put it
56         in the output iff the compiler does.
57
58         * elf/dl-lookup.c (_dl_lookup_symbol): Avoid sizeof dynamic auto array
59         because that is broken on alpha.
60
61         * sysdeps/mach/hurd/mmap.c: Use same inheritance arg in second vm_map
62         call as in first.
63
64         * Makerules (make-link): Install the new link with atomic mv -f in
65         case ln itself requires the library being installed.
66
67 Tue Jul 16 00:31:31 1996  Richard Henderson  <rth@tamu.edu>
68
69         * sysdeps/alpha/dl-machine.h: Mirror Roland's changes to
70         i386/dl-machine.h of 960713.
71
72         * sysdeps/generic/dl-sysdep.c:  Include <sys/mman.h>.
73         (_dl_sysdep_read_whole_file): Fix result variable declaration.
74
75 Tue Jul 16 00:53:57 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
76
77         * sysdeps/mach/hurd/uname.c: Call __gethostname to fill in the
78         `nodename' member.
79
80 Mon Jul 15 17:23:53 1996  Ulrich Drepper  <drepper@cygnus.com>
81
82         * stdio-common/vfprintf.c (vfprintf): Call parse_one_spec
83         with pointer to local variable instead of NULL.
84
85 1996-07-15  Paul Eggert  <eggert@twinsun.com>
86
87         * time/strftime.c (strftime): Don't pass empty macro argument to `add'.
88
89 Sat Jul 13 09:53:39 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
90
91         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Remove names
92         that are already added by other means.
93
94         * sysdeps/unix/sysv/linux/syscalls.list: Add more EXTRA's in the
95         caller column to get those syscalls added automagically.
96
97 Mon Jul 15 12:24:54 1996  Miles Bader  <miles@gnu.ai.mit.edu>
98
99         * login/logout.c (logout): Initialize DATA to a state that will
100         make setutent_r happy.
101
102 Sun Jul 14 01:51:39 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
103
104         * elf/rtld.c (dl_main) [ELF_MACHINE_DEBUG_SETUP]: Use this macro
105         instead of setting the DT_DEBUG pointer.
106
107         * csu/initfini.c (_init, _fini): Generate .end directives after
108         standalone prologues and filter them out from epilogues.
109
110         * Makeconfig (rtld-installed-name): Set to ld.so.1.
111         * sysdeps/unix/sysv/linux/Makefile (rtld-installed-name): Variable
112         removed.
113
114         * manual/Makefile (glibc-targets): Remove subdir_ from elts.
115
116         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_read_whole_file): New fn.
117
118         * MakeTAGS (extract): Pass --add-comments=TRANS.
119         * sysdeps/gnu/errlist.awk: Write comments into the output with the
120         descriptive paragraphs from the manual preceded by TRANS.
121
122         * elf/rtld.c (RESOLVE): Use the dl's load address, not a constant zero!
123         (_dl_start): Move RESOLVE defn inside this function and #include
124         "dynamic-link.h" a second time there.
125         [RTLD_START]: Move use of this after _dl_start function.
126
127         * elf/dl-reloc.c: Include "dynamic-link.h" at file scope.
128
129         * elf/rtld.c: Include <string.h>.
130
131         * elf/dynamic-link.h (ELF_DYNAMIC_DO_REL, ELF_DYNAMIC_DO_RELA,
132         ELF_DYNAMIC_RELOCATE): No longer take RESOLVE argument.
133         Conditionalize defns on [RESOLVE].
134         * elf/do-rel.h (elf_dynamic_do_rel): Likewise.
135         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
136         Instead use RESOLVE macro with same args.
137         (elf_machine_rel): Conditionalize defn on [RESOLVE].
138         * elf/dl-reloc.c (RESOLVE): New macro, define before including
139         "dynamic-link.h".  It replaces `resolve' local function.
140         * elf/dl-runtime.c: Likewise.
141         * elf/rtld.c: Likewise.
142
143         * elf/dl-deps.c (_dl_map_object_deps): Start TAILP at last preload.
144
145         * elf/dl-open.c (_dl_open): Force an indirect call for
146         _dl_relocate_object so there is no chance a PLT fixup will be done
147         and clobber _dl_global_scope before our call happens.
148
149         * sysdeps/i386/fpu/__math.h (tan): Correct output constraint from =u
150         to =t; must operate on top of fp reg stack, not second from top.
151         Correct input constraint to 0 from t; must be explicit when input and
152         output are the same register.
153         (floor): Use __volatile instead of volatile.
154         (ceil): Likewise.
155
156         * manual/Makefile ($(objpfx)stamp%-$(subdir)): Separate rule from
157         other targets.
158
159 Sat Jul 13 23:50:17 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
160
161         * manual/Makefile (lib): New phony target.  Depend on stamp files.
162         ($(objpfx)stamp%-$(subdir)): New rule to create them when necessary.
163
164 1996-07-13  Paul Eggert  <eggert@twinsun.com>
165
166         * time/strftime.c (strftime): Use space padding for %e, %k, %l,
167         to match Emacs format-time-string specification.
168         (DO_NUMBER_SPACEPAD): Renamed from DO_NUMBER_NOPAD.
169
170 Sat Jul 13 20:17:38 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
171
172         * elf/dl-deps.c (_dl_map_object_deps): Take new args PRELOADS and
173         NPRELOADS, vector of `struct link_map *'s; add them to the searchlist
174         between MAP and its deps.
175         * elf/link.h: Fix decl.
176         * elf/rtld.c (dl_main): If not secure, parse LD_PRELOAD for
177         colon-separated list of names, map those and pass vector of ptrs as
178         PRELOADS list to _dl_map_object_deps.
179         * elf/dl-runtime.c (_dl_object_relocation_scope): Pass new args to
180         _dl_map_object_deps with empty preload list.
181         * elf/dl-open.c (_dl_open): Likewise.
182
183         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_open_zero_fill): Function
184         removed.
185         (__mmap): Pass MACH_PORT_NULL for memobj port when (flags & MAP_ANON).
186         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_open_zero_fill):
187         Conditionalize defn on [! MAP_ANON].
188         * elf/dl-minimal.c (malloc): Conditionalize use of _dl_zerofd
189         on [! MAP_ANON].
190         * elf/rtld.c (dl_main): Likewise.
191         * elf/dl-load.c (_dl_zerofd): Conditionalize defn on [! MAP_ANON].
192         (_dl_map_object_from_fd): Conditionalize initialization of _dl_zerofd.
193
194         * elf/dl-fini.c (_dl_fini): Skip finalizer for executable itself.
195
196 Sat Jul 13 02:47:53 1996  David Mosberger-Tang  <davidm@azstarnet.com>
197
198         * stdlib/random.c (__random): Declare as int32_t to be in sync
199         with declaration.
200
201         * socket/Makefile (headers): Add socketbits.h.
202
203         * misc/mntent.c (endmntent): Allow for NULL stream.  SunOS does
204         it that way.
205
206         * grp/initgroups.c (initgroups): Add groups that user is a member
207         of, not the ones he is _not_ a member of.
208
209         * nss/nsswitch.c (known_compare): Make known_compare() a static
210         instead of a local function.  The latter are difficult to debug
211         and slow to execute on certain platforms.
212
213         * sysdeps/posix/ttyname_r.c (ttyname_r): Use sizeof (dev) - 1 in
214         place of sizeof (dev).  The size of a literal string includes the
215         NUL byte.
216
217         * sysdeps/unix/getlogin.c (getlogin): Initialize ut_fd with -1.
218
219 Thu Jul 11 16:59:10 1996  David Mosberger-Tang  <davidm@azstarnet.com>
220
221         * misc/mntent.c (addmntent): Seek to end of file before writing
222         entry.  Return 1 on error, not -1.
223
224 Tue Jul  9 19:08:05 1996  David Mosberger-Tang  <davidm@azstarnet.com>
225
226         * sysdeps/unix/sysv/linux/syscalls.list: Mark bdflush as EXTRA
227         syscall.
228
229 Fri Jul  5 18:44:55 1996  David Mosberger-Tang  <davidm@azstarnet.com>
230
231         * sysdeps/unix/sysv/linux/alpha/ioperm.c (port_to_cpu_addr): Size
232         shift amount for Jensen must be 5 not 4.
233
234 Sat Jul 13 20:04:28 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
235
236         * socket/sys/socket.h (struct osockaddr): New type.
237
238 Sat Jul 13 03:50:53 1996  Ulrich Drepper  <drepper@cygnus.com>
239
240         * misc/Makefile (routines): Add qefgcvt and qefgcvt_r.
241         * misc/efgcvt.c, misc/efgcvt_r.c: Change code so that the `double'
242         and `long double' versions can be generated.
243         * misc/qefgcvt.c, misc/qefgcvt_r.c: New files.  Define macros
244         so that included efgcvt{,_r}.c file generate `long double'
245         versions.
246         * stdlib/stdlib.h: Add prototypes for q[efg]cvt() and q[ef]cvt_r()
247         functions.
248
249         * manual/startup.texi: Document new getsubopt function.
250         * manual/examples/subopt.c: New example program for documenting
251         getsubopt function.
252
253 Fri Jul 12 23:58:37 1996  Ulrich Drepper  <drepper@cygnus.com>
254
255         * stdlib/Makefile (routines): Add getsubopt.
256         * stdlib/stdlib.h: Add prototype for getsubopt.
257         * stdlib/getsubopt.c: New file.  Implement getsubopt function
258         to handle suboption parsing.
259
260 Thu Jul 11 20:09:55 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
261
262         * inet/getnetent_r.c: Define NEED_H_ERRNO.
263         * inet/getnetbynm_r.c: Likewise.
264         * inet/getnetent.c: Likewise.
265         * inet/getnetbyad_r.c: Likewise.
266         * inet/getnetbyad.c: Likewise.
267         * inet/getnetbynm.c: Likewise.
268
269         * sysdeps/generic/pselect.c: Include <sys/time.h>.
270
271         * misc/sys/select.h: Include <time.h> instead of <sys/time.h> for
272         `struct timespec'.
273
274         * math/Makefile (calls): Add s_frexp, s_ldexp.
275         (routines): Remove them and &f from here.
276
277         * sys/socket.h: New file, wrapper for socket/sys/socket.h.
278
279         * nss/nss_files/files-service.c (getservbyname): Take second arg PROTO
280         and check it.
281
282         * nss/nss_files/files-XXX.c: Comment fix.
283
284 Fri Jul 12 01:28:35 1996  Ulrich Drepper  <drepper@cygnus.com>
285
286         * nss/getXXent_r.c (GETFUNC_NAME_STRING): Define with name
287         of reentrant function.
288         (setup): Pass additional argument with function name we are
289         looking for.
290         (SETFUNC_NAME, ENDFUNC_NAME, GETFUNC_NAME): Call setup with
291         new argument {SET,END,GET}FUNC_NAME_STRING.
292
293         * nss/getXXent.c (GETFUNC_NAME): RESULT must be static because
294         we return a pointer.
295
296 Thu Jul 11 18:20:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
297
298         * nss/nss_files/files-parse.c: Add comment about things to #define.
299
300         * nss/nss_files/files-hosts.c (NEED_H_ERRNO): Define it.
301
302         * nss/nss_files/files-parse.c (STRING_FIELD): Don't flag NUL before
303         terminator char as an error.
304
305         * nss/getXXbyYY_r.c (REENTRANT_NAME): Set *H_ERRNOP, not h_errno.
306
307 Thu Jul 11 03:21:10 1996  Ulrich Drepper  <drepper@cygnus.com>
308
309         * catgets/gencat.c (write_out): Move code to determine new
310         best size out of inner loop.
311
312 Thu Jul 11 00:22:40 1996  Ulrich Drepper  <drepper@cygnus.com>
313
314         * sysdeps/libm-ieee754/s_frexpl.c: New file.  `long double'
315         implementation of frexp() function.
316         * sysdeps/libm-ieee754/s_ldexpl.c: New file.  `long double'
317         implementation of ldexp() function.
318
319         * sysdeps/libm-i387/s_isnanl.c (isnanl): Mask explicit one
320         out before or'ing.
321
322 Wed Jul 10 05:24:40 1996  David Mosberger-Tang  <davidm@azstarnet.com>
323
324         * misc/mntent.c: Include <sys/types.h>.
325         (endmntent): Return 1 one success, 0 on failure.
326         (getmntent): Chop newline and ignore empty lines.
327
328 Mon Jul  8 21:18:40 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
329
330         * sysdeps/m68k/dl-machine.h (RESOLVE): New macro, defined
331         differently based on [RTLD_BOOTSTRAP].
332         (elf_machine_rela): Use it instead of the fn ptr arg directly.
333
334 Tue Jul  9 09:37:55 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
335
336         * posix/glob.h (__glob_opendir_hook, __glob_readdir_hook,
337         __glob_closedir_hook): Remove decls.
338
339         * sysdeps/generic/machine-gmon.h: Declare mcount_internal.
340
341         * sysdeps/unix/inet/syscalls.list: Define __ names with weak aliases
342         for send and connect syscalls.
343
344         * socket/sys/socket.h: New file, taken from non-sysdep parts of
345         linux/sys/socket.h; break sysdeps parts out into socketbits.h.
346         Declare __ names for send and connect.
347         * sysdeps/generic/socketbits.h: New file.
348         * sysdeps/unix/sysv/linux/socketbits.h: New file.
349         * sysdeps/unix/sysv/linux/sys/socket.h: File removed.
350         * sysdeps/generic/sys/socket.h: File removed.
351
352         * sysdeps/mach/hurd/connect.c: Define __ name and weak alias.
353         * sysdeps/mach/hurd/send.c: Likewise.
354
355         * sysdeps/mach/libc-lock.h: New file.
356         * sysdeps/unix/readdir.c: Do locking.
357         * sysdeps/unix/seekdir.c: Likewise.
358         * sysdeps/unix/rewinddir.c:  Likewise.
359         * sysdeps/unix/closedir.c: Likewise.
360         * sysdeps/unix/bsd/telldir.c: Likewise.
361         * sysdeps/mach/hurd/seekdir.c: Likewise.
362         * sysdeps/mach/hurd/readdir.c: Likewise.
363         * sysdeps/mach/hurd/closedir.c: Likewise.
364         * sysdeps/mach/hurd/opendir.c: Initialize the lock.
365         * sysdeps/unix/opendir.c: Likewise.
366         * sysdeps/mach/hurd/dirstream.h: Include <libc-lock.h>.
367         (struct __dirstream): Add lock member using __libc_lock_define.
368         * sysdeps/unix/dirstream.h: Likewise.
369
370         * sysdeps/stub/libc-lock.h (__libc_lock_fini): New macro.
371
372         * stdlib/mbstowcs.c: Pass address of pointer to mbsrtowcs.
373
374         * stdlib/wcstombs.c: Use wcsrtombs instead of mbsrtowcs.
375
376 Thu Jul  4 01:34:04 1996  Ulrich Drepper  <drepper@cygnus.com>
377
378         * locale/programs/stringtrans.c: Fix typo in copyright.
379
380         * stdio-common/printf-prs.c: Add casts to prevent
381         signed<->unsigned warnings.
382
383         * stdio-common/printf-parse.h: Initialize state variable before
384         calling mbrlen.
385         * stdio-common/printf-prs.c: Don't initialize state variable here.
386         * stdio-common/vfprintf.c: Don't initialize state variable.
387         (vfprintf): While determining length of multibyte string don't
388         try to be clever in determining characters to use for first
389         call.
390
391         Add real implementation of multibyte<->wide char conversion
392         functions.  The functions always convert between the fixed wide
393         char format (ISO 10646 in UCS4) and the UTF8 representation of
394         this character set.  Conversion between the currently used
395         8bit character set and ISO 10646 will not take place.  This is
396         what iconv() is for.
397         * wcsmbs/wchar.h (mbstate_t): Define as structure to replace
398         dummy definition.
399         Add optimized version of `mbrlen' function.
400         * wcsmbs/btowc.c (btowc): Restrict range of legal characters
401         to 0...0x7f.
402         * wcsmbs/wctob.c (wctob): Restrict range of legal characters
403         to 0..0x7f.
404         * wcsmbs/mbrlen.c: Make mbrlen a weak alias of __mbrlen.
405         This is needed in the wchar.h header.
406         * wcsmbs/mbrtowc.c: Replace dummy implementation.  Convert UTF8
407         encoded character to UCS4.
408         * wcsmbs/mbsinit.c: Replace dummy implementation.  Test COUNT
409         element of `mbstate_t' for initial state.
410         * wcsmbs/mbsrtowcs.c: Replace dummy implementation.  Convert UTF8
411         encoded string to UCS4 string.
412         * wcsmbs/wcrtomb.c: Replace dummy implementation.  Convert UCS4
413         character to UTF8 encoded form.
414         * wcsmbs/wcsrtombs.c: Replace dummy implementation.  Convert UCS4
415         encoded string to UTF8 encoded form.
416
417 Tue Jul  9 06:19:29 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
418
419         * sysdeps/unix/sysv/linux/configure.in: Use version number in cache
420         variable name, so new a libc with new requirements won't fail to
421         notice an insufficient Linux version.
422
423         * sysdeps/unix/sysv/linux/direntry.h: New file from David Mosberger.
424
425         * sysdeps/unix/sysv/linux/configure.in: Check for Linux 2.0.1 headers,
426         instead of 2.0 headers.
427
428         * sysdeps/mach/hurd/Makefile (stamp-errnos): Uncomment CVS commit cmds.
429
430         * sysdeps/gnu/errlist.awk: Undo mib's bogus changes.  The
431         sysdeps/mach/hurd/errnos.awk bug fix was the only correct change.
432
433         * sysdeps/generic/machine-gmon.h [NO_UNDERSCORES]: Declare _mcount
434         before using it in lhs of weak_alias.
435
436         * nss/getXXent_r.c (setup): New function, broken out of SETFUNC_NAME.
437         Call __nss_lookup when not setting STARTP.
438         (SETFUNC_NAME, ENDFUNC_NAME, REENTRANT_GETNAME): Call it to set up for
439         function-calling loop.
440
441 Tue Jul  9 00:14:52 1996  Michael I. Bushnell p/BSG  <mib@gnu.ai.mit.edu>
442
443         * sysdeps/mach/hurd/ioctls.h (MDMBUF, ECHO, TOSTOP, FLUSHO,
444         PENDIN, NOFLSH): Undefine these at start if they are already
445         defined to avoid collision with termbits.h.
446         * sysdeps/generic/termbits.h (ECHO, TOSTOP, NOFLSH): Likewise.
447         (MDMBUF, FLUSHO, PENDIN) [__USE_BSD]: Likewise.
448
449 Mon Jul  8 13:37:40 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
450
451         * math/math.h (_Mfloat_, _Mlong_double_): New macros, defined iff not
452         already defined to float, long double.  Use those macros for _Mdouble_
453         defns when including mathcalls.h.
454         * math/Makefile [$(long-double-fcts) != yes] (CPPFLAGS): Append
455         -D_Mlong_double_=double.
456
457         Add more -lm functions to -lc because ldexp uses them.
458         * math/Makefile (calls): Add s_finite, s_copysign, s_scalbn, s_modf.
459         (routines): Remove s_modf, add s_frexpf, s_ldexpf; all but frexp and
460         ldexp have both f and l code, and those have f though not l code.
461
462 Mon Jul  8 13:10:50 1996  Michael I. Bushnell p/BSG  <mib@gnu.ai.mit.edu>
463
464         * sysdeps/mach/hurd/errnos.awk: Skip entries where the
465         error is 0.  The "placeholder" entries recently added to
466         errno.texi convert to zero since `???/' is at the front of them.
467         * sysdeps/gnu/errlist.awk (errnoh): Likewise.
468
469         * sysdeps/stub/setdomain.c (setdomainname): Declare NAME parm
470         __const to conform with unistd.h.
471
472         * stdlib/stdlib.h (random): Declare return type to be int32_t.
473
474         * string/argz-delete.c (argz_delete): Use memmove instead of
475         memcpy for possibly overlapping strings.
476
477 Mon Jul  8 02:14:25 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
478
479         * libc-symbols.h [GCC >= 2.7] (strong_alias, weak_alias): Use extern
480         storage class.  GCC gives an error for non-extern data defns with the
481         alias attribute.
482
483 Mon Jul  8 01:37:34 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
484
485         * string/argz-insert.c (__argz_insert): (__argz_insert): Use
486         memmove instead of memcpy for possible overlapping strings.
487
488 Mon Jul  8 00:11:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
489
490         * libc-symbols.h (weak_function): New macro.
491         For GCC 2.7+ define as __attribute__ ((weak)).
492         * elf/dl-minimal.c: Use weak_function as keyword in function defns
493         instead of weak_symbol (NAME) after the defn.
494         * stdlib/strtol.c: Likewise.
495         * stdlib/strtod.c: Likewise.
496         * sysdeps/mach/hurd/dl-sysdep.c: Likewise.
497
498         * sysdeps/alpha/dl-machine.h (elf_machine_rela) [RTLD_BOOTSTRAP]:
499         If this is defined, don't declare _dl_rtld_map as weak, and
500         don't check for MAP pointing to it.  RESOLVE is always null in this
501         case, so test with #ifdef instead of if.
502
503         * libc-symbols.h (symbol_set_declare): Use weak_extern instead of
504         weak_symbol.
505         * csu/initfini.c (_init): Likewise.
506         * locale/setlocale.c (DEFINE_CATEGORY): Likewise.
507         * misc/efgcvt_r.c: Likewise.
508         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Likewise.
509         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
510
511         * libc-symbols.h [ASSEMBLER] (weak_symbol): Macro removed.
512         It was not used in any assembler code.
513         (weak_symbol_asm): Renamed to weak_extern_asm.
514         (weak_extern): New macro replaces weak_symbol for weak extern refs;
515         define to weak_extern_asm for [!ASSEMBLER].
516
517 Sun Jul  7 18:42:06 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
518
519         * libc-symbols.h [! ASSEMBLER] [HAVE_WEAK_SYMBOLS] (weak_symbol_asm,
520         weak_alias_asm): New macros, renamed from weak_symbol/weak_alias;
521         define those now as aliases.
522         Change conditional to use __attribute__ syntax for GCC 2.7+, not 2.8+
523         [GCC >= 2.7] [HAVE_WEAK_SYMBOLS] (weak_symbol): Do weak_symbol_asm
524         after GCC weak attribute decl.
525
526         * sysdeps/gnu/errlist.awk (BEGIN): Initialize associative array ALIAS,
527         map EWOULDBLOCK->EAGAIN, EDEADLOCK->EDEADLK.
528         (element printer): Check for elt in ALIAS, instead of special case
529         for EWOULDBLOCK.
530
531         * io/Makefile (headers): Add sys/vfs.h.
532         * io/sys/vfs.h: New file.
533
534         * sysdeps/mach/hurd/jmp-unwind.c (_longjmp_unwind): Don't unlock the
535         critical section lock before unlinking dying active resources.
536         The unlock just before return is right (i.e. old code unlocked twice).
537
538 Sun Jun  2 22:28:43 1996  Miles Bader  <miles@gnu.ai.mit.edu>
539
540         * stdio/linewrap.c (lwupdate): Update D->point_offs when done.
541         Use memmove instead of memcpy where overlap is possible (not
542         necessary using current implementation of memcpy, but...).
543         (__line_wrap_update): Don't update D->point_offs (lwupdate does it).
544
545 Fri May 31 11:48:46 1996  Miles Bader  <miles@gnu.ai.mit.edu>
546
547         * stdio/linewrap.c (lwupdate): New function, mostly was
548         __line_wrap_update.  Use POINT_COL field instead of POINT.
549         (__line_wrap_output): Use lwupdate.
550         (__line_wrap_update): New function.
551         (ensure_unwrapped, ensure_wrapped): New functions.
552         (line_wrap_set_lmargin, line_wrap_set_rmargin,
553         line_wrap_set_wmargin, line_wrap_point): Use __line_wrap_update.
554
555         * stdio/linewrap.h (struct line_wrap_data): Rename POINT field to
556         POINT_COL. Add POINT_OFFS field.
557         (__line_wrap_update): New decl.
558         (line_wrap_set_lmargin, line_wrap_set_rmargin,
559         line_wrap_set_wmargin, line_wrap_point): Use __line_wrap_update.
560
561 Fri Jul  5 17:34:47 1996  Miles Bader  <miles@gnu.ai.mit.edu>
562
563         * login/logout.c (logout): Do nothing if getutline_r returns ESRCH.
564
565         * login/pututline_r.c (pututline_r): Since we assign RESULT from
566         lseek now, check that it's >= 0, not == 0.
567
568 Wed Jul  3 13:28:04 1996  Miles Bader  <miles@gnu.ai.mit.edu>
569
570         * login/login.c (login): Make a copy of *UT, fill in various
571         fields that we supply (ut_line, ut_type, ut_pid), and use the copy
572         in place of UT.
573
574         * login/getutline_r.c (getutline_r): When we return ESRCH, mark
575         UTMP_DATA->ubuf invalid (by setting UTMP_DATA->loc_utmp to 0).
576
577 Fri Jul  5 12:22:51 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
578
579         * hurd/hurdsig.c (_hurd_internal_post_signal): In case of handled
580         signal during critical section doing interruptible RPC, if
581         _hurdsig_abort_rpcs wants to change thread state, do thread_set_state
582         before thread_resume.  If in critical section, pass 0 for SIGNO to
583         _hurdsig_abort_rpcs so rpc is interrupted regardless of SA_RESTART.
584
585         * extra-lib.mk: Fix typo in $(extra-libs-others) conditional.
586
587         * sysdeps/unix/sysv/linux/sys/user.h: New file.
588         * sysdeps/unix/sysv/linux/Dist: Add it.
589         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add sys/user.h.
590
591         * nss/nss_files/files-parse.c (parse_list): Set EOL from LINE if it
592         points within DATA->linebuffer; otherwise use all of DATA->linebuffer
593         itself, no need to skip past a NUL.
594
595         * nss/nsswitch.h (known_function): Comment fix.
596         * nss/nsswitch.c (nss_lookup_function): Rewritten using __tsearch
597         directly.  Do the lookup and insertion with a single call, and fill in
598         the tree node afterwards if new.
599         (known_compare, nss_find_entry, nss_insert_entry): Functions removed.
600
601         * misc/sys/select.h: #define __need_timespec before <sys/time.h> incl.
602         (struct timeval): Add bodiless decl for scope.
603
604         * time/time.h (struct timespec): Rename members from `ts_*' to `tv_*'.
605         Move struct timespec defn outside [_TIME_H] so it can be got with
606         #define __need_timespec.
607
608         * time/sys/time.h (TIMEVAL_TO_TIMESPEC): Use `tv_*' instead of `ts_*'
609         for `struct timespec' member names.
610         (TIMESPEC_TO_TIMEVAL): Likewise.
611
612         * nss/Makefile (extra-libs-others): New variable.
613
614         * extra-lib.mk: Don't test for $($(lib)-no-lib-dep).  Instead match
615         $(lib) in $(extra-libs-others).
616         * sunrpc/Makefile (extra-libs-others): New variable.
617         (librpcsvc-no-lib-dep): Variable removed.
618
619         * elf/rtld.c: Define RTLD_BOOTSTRAP before #include "dynamic-link.h".
620         * sysdeps/i386/dl-machine.h (elf_machine_rel): Remove weak decl for
621         _dl_rtld_map.
622         (RESOLVE): New macro, defined differently based on [RTLD_BOOTSTRAP].
623         (elf_machine_rel): Use it instead of testing fn ptr arg at runtime.
624         (elf_machine_rel: case R_386_32) [! RTLD_BOOTSTRAP]: Declare
625         _dl_rtld_map weak only here.
626
627         * posix/unistd.h [__USE_BSD]: Declare getdomainname, setdomainname.
628
629 Thu Jul  4 05:21:59 1996  David Mosberger-Tang  <davidm@azstarnet.com>
630
631         * login/utmp.h: Fix typos.
632
633         * misc/syslog.c (vsyslog): Use __send instead of send and
634         __connect instead of connect to avoid name-space collisions (e.g.,
635         with psgetty).
636
637 Wed Jul  3 16:29:41 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
638
639         * nss/getXXbyYY_r.c (REENTRANT_NAME): Cast FCT in __nss_next call.
640
641         * sysdeps/generic/sbrk.c: Always call __brk (0) to update __curbrk.
642
643         * malloc/malloc-size.c (malloc_usable_size): Renamed from
644         malloc_object_allocation_size.
645         * malloc/malloc.h: Fix decl.
646
647         * sys/select.h: New file, wrapper header.
648
649         * posix/sys/types.h [__USE_BSD]: Include <sys/select.h>; remove
650         fd_set, associated macros, and select decl.
651
652         * sysdeps/posix/isfdtype.c: New file.
653
654 Tue Jul  2 23:45:14 1996  Ulrich Drepper  <drepper@cygnus.com>
655
656         The latest Japanese proposal for POSIX locales renames the
657         CHARMAP keyword in locale definition files to CHARCONV.
658         * locale/programs/ld-ctype.c, locale/programs/locales.h: Rename
659         function ctype_is_charmap to ctype_is_charconv.
660         * locale/programs/locfile-kw.gperf: Replace charmap keyword with
661         charconv.
662         * locale/programs/locfile-token.h: Add definition of token
663         charconv.
664         * locale/programs/locfile.c: Recognize charconv keyword.  Rename
665         lables according to this.
666
667         * locale/weight.h (get_weight): Cast constants to prevent
668         warnings.
669
670         * stdlib/strtod.c, stdlib/strtol.c, string/strcoll.c,
671         string/strxfrm.c: Add some more casts to prevent signed<->unsigned
672         warnings.
673
674         New stuff described in P1003.1g.
675         * misc/Makefile (headers): Add sys/select.h.
676         (routines): Add pselect.
677         * misc/sys/select.h: New file.  Declare select functions and
678         needed data types and macros.
679         * sysdeps/generic/pselect.c: New file.  Add generic implementation
680         of pselect() function which uses select().
681
682         * posix/getconf.c: Recognize new variables from P1003.1g.
683         * posix/posix1_lim.h: Define _POSIX_FD_SETSIZE, _POSIX_QLIMIT,
684         _POSIX_HIWAT, and _POSIX_UIO_MAXIOV.
685         * posix/unistd.h: Add description of the P1003.1g variables.
686         * sysdeps/generic/confname.h: Define _SC_* values for new
687         variables.
688         * sysdeps/posix/fpathconf.c (fpathconf): Add handling of
689         _PC_SOCK_MAXBUF.
690         * sysdeps/stub/fpathconf.c (fpathconf): Ditto.
691         * sysdeps/posix/sysconf.c (sysconf): Add handling of new
692         P1003.1g variables.
693         * sysdeps/stub/sysconf.c (sysconf): Ditto.
694         * sysdeps/unix/sysv/linux/posix_opt.h: Define _POSIX_POLL and
695         _POSIX_SELECT since Linux has this.
696
697         * socket/Makefile (routines): Add isfdtype.
698         * sysdeps/generic/sys/socket.h: Add prototype for isfdtype.
699         * sysdeps/stub/isfdtype.c: New file.  Stub implementation of
700         isfdtype.
701
702         * wcsmbs/wcrtomb.c (wcrtomb): Fix typo.
703
704 Wed Jul  3 11:26:28 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
705
706         * elf/Makefile (LDFLAGS-dl.so): New variable.
707         (libdl.so): Depend on eval.so.
708         (distribute): Add eval.c.
709         * elf/eval.c: New file.
710
711         * time/strftime.c (strftime: do_number): Adjust P and I after sprintf
712         in case it wrote fewer than MAXDIGITS chars.
713
714         * stdio/fwrite.c (fwrite: fill_buffer): Separate flushing for last
715         newline from flushing full buffer in loop, fix test so no fflush is
716         done when last byte written exactly fills the buffer.
717
718         * nss/Makefile ($(services:%=$(objpfx)libnss_%.so)): Depend on libc.so.
719
720         * sysdeps/mach/hurd/Makefile (LDLIBS-c.so): Variable removed.
721         (libc.so): Instead, give this deps on lib{mach,hurd}user.so.
722
723         * elf/dl-debug.c (_dl_debug_initialize): Use LDBASE arg instead of
724         extracting _dl_rtld_map.l_addr.
725
726         * sysdeps/i386/dl-machine.h (elf_machine_rel): Declare _dl_rtld_map as
727         weak.
728         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Likewise.
729
730         * shlib-versions (*-*-*): Set libnss_db=1.
731
732 Tue Jul  2 10:44:37 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
733
734         * elf/rtld.c (dl_main): Set _dl_rtld_map's DT_DEBUG location too.
735
736         * rpm/template (%build): Use @prefix@ instead of always /usr.
737         Set up configparms only if @prefix@ is in fact /usr.
738         * rpm/Makefile ($(config)): Substitute $(prefix) for @prefix@.
739
740         * elf/Makefile: Add missing endif.
741
742         * nss/nss_files/files-ethers.c (ntohost): Fix db key.
743
744         * nss/nss_files/files-network.c: Pass empty for new DB_LOOKUP args.
745         (DATABASE): Define this instead of DATAFILE.
746         * nss/nss_files/files-hosts.c: Likewise.
747         (hostbyname): Use LOOKUP_NAME macro.
748
749         * nss/nss_db/db-XXX.c: New file.
750         * nss/Makefile (services): Add db.
751         (libnss_db-inhibit-o): New variable.
752         (libnss_db-routines): New variable.
753         (distribute): Append db-XXX.c.
754         (libnss_db.so): Depend on libdb.so and libnss_files.so.
755         ($(libnss_db-routines:%=$(objpfx)%.c)): New static pattern rule.
756
757         * nss/nss_files/files-XXX.c (DB_LOOKUP): Add KEYSIZE and KEYPATTERN
758         args, ignored.
759         (DATAFILE): New macro.
760         * nss/nss_files/files-parse.c (GENERIC): If undefined, define to
761         "files-XXX.c".
762         * nss/nss_files/files-rpc.c: Include GENERIC instead of "files-XXX.c".
763         Pass db key args to DB_LOOKUP.
764         (DATAFILE): Macro removed.
765         (DATABASE): New macro replaces it, lacks "/etc/" prefix.
766         * nss/nss_files/files-service.c: Likewise.
767         * nss/nss_files/files-pwd.c: Likewise.
768         * nss/nss_files/files-proto.c: Likewise.
769         * nss/nss_files/files-grp.c: Likewise.
770         * nss/nss_files/files-ethers.c: Likewise.
771
772         * elf/linux-compat.c: File removed.
773         * elf/Makefile (distribute): Remove linux-compat.c.
774         (ld-linux.so.1): Remove target and associated variables.
775
776         * sunrpc/xdr.c: Remove malloc decl.
777         * sunrpc/portmap.c: Likewise.
778
779         * sunrpc/svc_tcp.c (abort): Don't declare.  Instead define as macro
780         casting abort to fn returning bool_t.
781
782         * nss/nss_files/files-parse.c [EXTERN_PARSER]: Do an extern decl of
783         the parser function.
784         [EXTERN_PARSER] (LINE_PARSER): Define to empty.
785         * nss/nss_files/files-pwd.c (EXTERN_PARSER): Define it.
786         * nss/nss_files/files-grp.c: Likewise.
787
788         * Makeconfig (BUILD_CC): If undefined, define to $(CC).
789
790         * sunrpc/rpc/types.h: Include stdlib.h instead of declaring malloc.
791
792         * Makeconfig (built-program-cmd): Use $(rtld-installed-name) in place
793         of ld.so so lookups for that soname find it.
794
795         * nss/Makefile (libnss_dns.so): Depend on libresolv.so.
796         (resobjdir, LDLIBS-nss_dns.so): Variables removed.
797
798         * pwd/fgetpwent.c: Don't include ../nss/nss_files/files-parse.c to
799         define parse_line function.
800         (parse_line): #define to _nss_files_parse_pwent and
801         add extern decl for that.
802
803         * nss/nss_files/files-XXX.c (internal_getent): Return
804         NSS_STATUS_TRYAGAIN for ERANGE error.
805
806         * sysdeps/i386/strtok.S (LreturnNULL): Save current state ptr instead
807         of null, so next round returns null again instead of bombing.  Fix
808         from drepper.
809
810         * nss/nss_files/files-parse.c (LINE_PARSER): Take new first arg EOLSET.
811         Remove ; after `ENTDATA_DECL (data)'.
812         Truncate line at strpbrk (line, EOLSET "\n").
813         (ENTDATA_DECL): Put ; at end.
814         (MIDLINE_COMMENTS): Macro removed.
815         * nss/nss_files/files-ethers.c: Pass new argument.
816         * nss/nss_files/files-hosts.c: Likewise.
817         * nss/nss_files/files-network.c: Likewise.
818         * nss/nss_files/files-parse.c: Likewise.
819         * nss/nss_files/files-proto.c: Likewise.
820         * nss/nss_files/files-rpc.c: Likewise.
821         * nss/nss_files/files-service.c: Likewise.
822         * grp/fgetgrent.c: Likewise.
823         * pwd/fgetpwent.c: Likewise.
824         * nss/nss_files/files-pwd.c: Get parse_line with extern decl, since
825         fgetpwent.c already defines it.
826         * nss/nss_files/files-grp.c: Likewise.
827
828         * elf/dl-load.c (_dl_map_object): Use any object with matching l_name
829         as well as any matching with l_libname.  Fix DT_SONAME lookup to use
830         string table properly.
831
832         * elf/rtld.c (dl_main): Set _dl_rtld_map.l_name from _dl_argv[0] when
833         invoked directly, and l_libname from that if PT_INTERP missing.
834         Set l_name from l_libname only if not set from argv.
835
836         * time/europe, time/northamerica: Updated from ADO 96i.
837
838 Mon Jul  1 15:44:34 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
839
840         * stdio-common/tst-ungetc.c: Include unistd.h.
841
842         * inet/Makefile (routines): Change getnetbypt to getnetbyad.
843
844 Mon Jul  1 13:32:42 1996  Miles Bader  <miles@gnu.ai.mit.edu>
845
846         * hurd/report-wait.c (describe_number): Make I unsigned long.
847
848         * login/login.c (login): Only Frob OLD->ut_type if getutline_r
849         actually found any entry.
850
851         * login/pututline_r.c (pututline_r): If not located after any
852         entry don't use UTMP_DATA->ubuf, and seek to the end before adding.
853         Lock the file before stating.
854
855 Mon Jul  1 12:29:50 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
856
857         * nss/Makefile (databases): Change host to hosts.
858         * nss/host-lookup.c: Renamed to nss/hosts-lookup.c.
859
860         * nss/nsswitch.c (nss_parse_service_list): Use const for NAME.
861
862         * nss/nss_files/files-parse.c (parse_list): Correct alignment fixup.
863
864         * string/string.h (strndupa): Pass missing arg to strnlen.
865
866         * inet/getnetbypt_r.c: Renamed to ...
867         * inet/getnetbyad_r.c: this; fixed function name.
868         * inet/getnetbypt.c: Renamed to ...
869         * inet/getnetbyad.c: this; fixed function name.
870
871 Sat Jun 29 01:08:35 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
872
873         * grp/getgrgid_r.c (LOOKUP_TYPE): Define to struct group, not
874         struct passwd.
875
876 Fri Jun 28 23:25:35 1996  Miles Bader  <miles@gnu.ai.mit.edu>
877
878         * login/login.c (login): Initialize DATA so that setutent_r will
879         actually do something.
880
881 Fri Jun 28 16:53:01 1996  David Mosberger-Tang  <davidm@azstarnet.com>
882
883         * resolv/res_hconf.c (strndup): Remove function.
884
885         * nss/nsswitch.c (nss_lookup_function): Declare loadbase and ref
886         using ElfW() instead of Elf32_*.
887
888         * sysdeps/unix/sysv/linux/alpha/init-first.h,
889         sysdeps/unix/sysv/linux/m68k/init-first.h,
890         sysdeps/unix/sysv/linux/i386/init-first.h: New files.
891         * sysdeps/unix/sysv/linux/init-first.c: Use platform-dependent
892         init-first.h to make abstract machine dependent parts of
893         initialization.
894
895         * sysdeps/unix/alpha/sysdep.h: Undo PIC-optimization of syscall
896         error handling.  It's safer that way.
897
898         * sysdeps/unix/alpha/sysdep.S: Make ldgp part of the prologue.
899         Fix by Richard Henderson.
900
901         * sysdeps/alpha/dl-machine.h (elf_alpha_fix_plt): Fix
902         typo/extraneous whitespace.
903
904         * sunrpc/xdr.c (xdr_int, xdr_u_int): Use <limits.h> to test
905         determine what integer sizes we're dealing with.
906
907 Fri Jun 28 15:46:02 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
908
909         * hurd/hurdsig.c (_hurd_internal_post_signal): In pending signal
910         check for signal zero, repair logical sense of test by
911         parenthesizing correctly.
912
913         * hurd/hurdsig.c (_hurd_internal_post_signal): In
914         check-for-pending signals code, release _hurd_siglock before
915         jumping to deliver_pending.
916
917 Thu Jun 27 04:04:27 1996  David Mosberger-Tang  <davidm@azstarnet.com>
918
919         * configure.in (config_machine): Make ELF the default even for
920         Linux/Alpha unless a configuration of the form *-*-linux*ecoff
921         is specified.
922
923 Fri Jun 28 07:27:10 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
924
925         * nss/nss_files/files-hosts.c (ENTDATA): Define it.
926         * nss/nss_files/files-parse.c (struct parser_data): Define entdata
927         member only #ifdef ENTDATA.
928         (ENTDATA_DECL): New macro.
929         (LINE_PARSER): Use it for entdata decl.
930         (parse_list): Find the space for LIST from DATA->linebuffer instead of
931         from the input LINE, which might not be writable buffer space.
932         (LINE_PARSER): Use `parser_stclass' in place of `static inline'.
933         [ENTDATA] (parser_stclass): #define to `static inline'.
934         [!ENDATA] (parser_stclass): #define to empty.
935         [!ENTDATA] (parse_line): #define to _nss_files_parse_ENTNAME; the
936         function is exported to -lnss_files users.
937
938         * string/strndup.c: Add missing arg.
939
940         * string/string.h (strndupa): Likewise.
941         * string/strndup.c (strndup): Always terminate the string.
942
943 Thu Jun 27 14:22:31 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
944
945         * stdio/Makefile (routines): Add vscanf.
946         * stdio-common/Makefile (routines): Remove vscanf.
947         * stdio-common/vscanf.c: Move to ...
948         * stdio/vscanf.c: here.
949
950         * rpm/Makefile (headers, install-lib, install-lib.so,
951         versioned, install-bin, install-sbin, install-data,
952         install-others): Add $(-VARIABLE).
953
954 Fri Jun 28 02:41:08 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
955
956         * nss/Makefile (databases): New variable.
957         (routines, libnss_files-routines): Use it.
958         (subdir-dirs): Compute from $(services).
959
960         * sysdeps/unix/sysv/linux/syscalls.list (create_module, delete_module,
961         init_module, klogctl): Use EXTRA in the "caller" column so these get
962         added to unix-extra-syscalls and thus compiled in misc.
963
964         * string/Makefile (routines): Add strndup.
965         * string/strndup.c: New file.
966         * string/string.h: Declare strndup.
967         (strndupa): New macro.
968
969         * string/string.h: Declare __strdup.
970         * string/strdup.c: Deansideclized.  Define __ name and weak alias.
971
972         * string/string.h: Don't define memccpy as macro for [__OPTIMIZE__].
973
974 Thu Jun 27 02:49:28 1996  Ulrich Drepper  <drepper@cygnus.com>
975
976         * catgets/gencat.c: Add casts to avoid signed<->unsigned warnings.
977
978         * grp/initgroups.c (initgroups): De-ansi-fy.
979         Move declaration of NGROUPS and GROUPS outside #if so that
980         the code compiles for NGROUPS_MAX != 0.
981
982         * inet/Makefile (headers): Add netinet/ether.h and netinet/if_ether.h.
983         (routines): Add ether_aton, ether_aton_r, ether_hton, ether_line,
984         ether_ntoa, ether_ntoa_r, and ether_ntoh.
985         * inet/ether_aton.c, inet/ether_aton_r.c, inet/ether_hton.c,
986         inet/ether_line.c, inet/ether_ntoa.c, inet/ether_ntoa_r.c,
987         inet/ether_ntoh.c: New files.  Implementation of functions to
988         handle Ethernet address to host mapping.
989         * inet/netinet/ether.h: New file.  Declare ether_* functions.
990         * netinet/ether.h: Wrapper around inet/netinet/ether.h for glibc
991         compilation.
992         * nss/ethers-lookup.c: New file.  Lookup function for ethers database.
993         * nss/Makefile (routines): Add ethers-lookup.
994         (libnss_files-routines): Add files-ethers.
995
996         * nss/getXXent_r.c: Don't define set*ent and end*ent function
997         with _r suffix.
998
999         * nss/nss_files/files-XXX.c (internal_endent): Don't reset
1000         KEEP_STREAM every time called.
1001         (_nss_files_end): Reset KEEP_STREAM here instead.
1002         (internal_getent): If STREAM == NULL try to open instead of
1003         signalling error.
1004         Use cast to prevent warning.
1005         Terminate read line in case the buffer is too small.
1006
1007         * nss/nss_files/files-ethers.c: New file.  Implementation of
1008         Ethernet adress<->hostname lookup through files interface.
1009
1010         * stdlib/mbstowcs.c: Define based on mbsrtowcs().
1011         * stdlib/mbtowc.c: Define based on mbrtowc().
1012         * stdlib/wcstombs.c: Define based on wcsrtombs().
1013         * stdlib/wctomb.c: Define based on wcrtomb().
1014
1015         * sunrpc/xdr.c (xdr_u_int): Avoid bogus call to
1016         unexpected_sizes_in_xdr_u_int.
1017
1018         * sysdeps/generic/netinet/if_ether.h: New file.  Generic declaration
1019         of `struct ether_addr'.
1020         * sysdeps/unix/sysv/linux/netinet/if_ether.h: New file.  Linux specific
1021         declaration of `struct ether_addr'.
1022
1023         * wcsmbs/mbrtowc.c: Handle case where argument PS is NULL.
1024         * wcsmbs/mbsrtowcs.c: Ditto.
1025         * wcsmbs/wcrtomb.c: Ditto.
1026         * wcsmbs/wcsrtombs.c: Ditto.
1027
1028         * wcsmbs/mbsinit.c: Prepare for PS being NULL.
1029
1030 Wed Jun 26 13:19:35 1996  Miles Bader  <miles@gnu.ai.mit.edu>
1031
1032         * hurd/get-host.c <fcntl.h>: New include.
1033         * hurd/set-host.c <fcntl.h>: New include.
1034         (_hurd_set_host_config): Include NEW in args to dir_link.
1035         Return NWROTE, not NREAD.
1036
1037         * sysdeps/mach/hurd/getcwd.c
1038         (_hurd_canonicalize_directory_name_internal): Don't deallocate
1039         DOTID & DOTDEVID until we're finished with them (we need to keep
1040         them at least until we've fetched the next level of id ports, so
1041         that mach will be able to use the same name if they're the same).
1042         Add inner_errlose: label, which deallocates DOTID & DOTDEVID and
1043         jumps to errlose, for those places where such cleanup is needed.
1044
1045 Wed Jun 26 01:58:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1046
1047         * nss/nss_files/files-parse.c (parse_list): Count null in EOL calc.
1048
1049         Move DB code into separate -ldb library.
1050         * db/Makefile (extra-libs): New variable, list libdb.
1051         (routines): Renamed to libdb-routines.
1052         * shlib-versions: Add libdb=2.
1053
1054         * nss/network-lookup.c (DEFAULT_CONFIG): New macro.
1055         * nss/host-lookup.c (DEFAULT_CONFIG): New macro.
1056
1057         * nss/nsswitch.c (nss_parse_service_list): Use __strncasecmp instead
1058         of strncasecmp.  Extend syntax to grok [!foo=bar].
1059
1060         * sysdeps/generic/strncase.c: Define __strncasecmp with strncasecmp as
1061         weak alias.
1062         * string/string.h: Declare __strncasecmp.
1063
1064         * nss/nsswitch.c (nss_parse_file): Call __getline, not getline.
1065         (service_alias): Variable removed.
1066         (nss_parse_service_list): New function, broken out of nss_getline.
1067         Remove alias conversion; we will just use symlinks.
1068         (__nss_database_lookup): Take new string arg DEFCONFIG.
1069         If no entry exists, make one with service list parsed from that.
1070         * nss/nsswitch.h: Update protocol for __nss_database_lookup.
1071         * nss/XXX-lookup.c (DEFAULT_CONFIG): New macro, set to 0 if undefined.
1072         (DB_LOOKUP_FCT): Pass it to _nss_database_lookup.
1073
1074         * grp/initgroups.c: Rewritten using getgrent.  Handle unlimited group
1075         list size.
1076
1077         * sunrpc/xdr.c (xdr_int): #if 0 out unresolved references in dead code.
1078
1079 Wed Jun 26 01:56:50 1996  Ulrich Drepper  <drepper@cygnus.com>
1080
1081         * locale/programs/locale.c (long_options): Short form of
1082         --version option is `-V'.
1083         (main): Recognize `-V' as option, not `-v'.
1084         Call `usage' instead of printing error message for illegal
1085         option.
1086         (usage): Document `-V'.
1087
1088 Tue Jun 25 17:22:55 1996  Miles Bader  <miles@gnu.ai.mit.edu>
1089
1090         * sysdeps/mach/hurd/getcwd.c
1091         (_hurd_canonicalize_directory_name_internal): Initialize PARENT to
1092         THISDIR, and don't ever deallocate PARENT unless it's != THISDIR.
1093
1094 Tue Jun 25 10:58:23 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1095
1096         * inet/getrpcent.c: Fix macros.
1097         * inet/getrpcent_r.c: Fix macros.
1098
1099         * elf/dlsym.c (dlsym): Search the global scope if HANDLE is null.
1100
1101         * elf/dl-load.c (_dl_map_object_from_fd): Initialize L.
1102
1103 Tue Jun 25 09:55:47 1996  David Mosberger-Tang  <davidm@AZStarNet.com>
1104
1105         * catgets/gencat.c (write_out): Use %Zu to print variables of type
1106         size_t.
1107         * resolv/res_debug.c (__p_rr): Print size_t variable as %lu and
1108         cast it to (unsigned long) to make it work both on 32 and 64
1109         bit architectures.
1110
1111 Sat Jun 22 13:05:25 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1112
1113         * locale/Makefile (distribute): Add `programs/' prefix to all
1114         files in that directory.
1115
1116         * Makerules (distinfo-vars): Assign subdir directly so that `ifdef
1117         subdir' works.
1118
1119         * MakeTAGS (sources, headers): Make them simply expanded variables
1120         so that all-dist is expanded before it is changed.
1121
1122 Tue Jun 25 02:59:11 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1123
1124         * Make-dist (dist): Don't depend on crypt tar file.  Remove that rule.
1125         * Makefile (subdirs): Remove crypt.
1126         * crypt: Directory removed.  It will be made an independent library
1127         distribution.
1128
1129         * Makefile (distribute): Add rpm/{Makefile,teplate,rpmrc}.
1130
1131         * inet/getrpcent_r.c (DATABASE_NAME): New macro.
1132
1133         * inet/getrpcbynumber.c (BUFLEN): New macro.
1134
1135         * configure.in (--no-whole-archive check): Remove backslashes in cmd.
1136
1137         * Makefile (headers): Add libc-lock.h.
1138         * sysdeps/stub/libc-lock.h: New file.
1139
1140         * inet/getrpcbynumber.c: Remove _r typo.
1141
1142         * elf/dl-load.c (_dl_map_object): Fix typo in last change.
1143
1144         * nss/nss_files/files-parse.c (parse_list): Reset ELT for elements
1145         after the first!
1146
1147         * nss/nsswitch.c (__nss_database_lookup): If nsswitch.conf is missing
1148         or doesn't mention DATABASE, use an internal default equivalent to
1149         "DATABASE: compat [NOTFOUND=return] dns [NOTFOUND=return] files".
1150         (nss_lookup_function): Call nss_new_service as needed.
1151         (nss_parse_file): Don't bother calling nss_new_service here.
1152
1153         * grp/fgetgrent.c (LINE_PARSER): Pass zero SWALLOW arg for fields.
1154         * pwd/fgetpwent.c: Likewise.
1155
1156         * malloc/malloc.h: Declare malloc_object_allocated_size, malloc_walk.
1157         * malloc/Makefile (dist-routines): Add malloc-size, malloc-walk.
1158         * malloc/malloc-size.c: New file.
1159         * malloc/malloc-walk.c: New file.
1160
1161         * malloc/malloc-find.c (malloc_find_object_address): Return null if
1162         PTR is outside the heap.
1163
1164         * elf/dl-load.c (_dl_map_object): If the requested name matches the
1165         soname of a loaded object, use that object.
1166
1167 Mon Jun 24 19:57:01 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1168
1169         * Makefile (subdirs): Add nss.
1170
1171         * inet/Makefile (routines): Add getrpcent, getrpcbyname,
1172         getrpcbynumber, getrpcent_r, getrpcbyname_r, getrpcbynumber_r.
1173         * inet/getrpcbynumber_r.c: New file.
1174         * inet/getrpcbynumber.c: New file.
1175         * inet/getrpcbyname.c: New file.
1176         * inet/getrpcbyname_r.c: New file.
1177         * inet/getrpcent_r.c: New file.
1178         * inet/getrpcent.c: New file.
1179         * nss/rpc-lookup.c: New file.
1180         * nss/nss_files/files-rpc.c: New file.
1181         * nss/Makefile (routines): Add rpc-lookup.
1182         (libnss_files-routines): Add files-rpc.
1183         * sunrpc/Makefile (routines): Remove getrpcent.
1184         * sunrpc/getrpcent.c: File removed.
1185
1186         * nss/getXXent_r.c (REENTRANT_GETNAME): Clear NO_MORE when NIP is
1187         non-null on entry.
1188
1189         * Makeconfig (rpath-link): Add $(nssobjdir).
1190         (nssobjdir): New variable.
1191
1192         * Makerules: Move shared library building before objects rules, so
1193         versions are known before extra-lib.mk gets included.
1194         * extra-lib.mk (lib-noranlib): Depend on the shared object too.
1195
1196         * pwd/getpwuid.c: Rewritten using nss.
1197         * pwd/getpwnam.c: Likewise.
1198         * pwd/getpwent.c: Likewise.
1199         * grp/getgrnam.c: Likewise.
1200         * grp/getgrgid.c: Likewise.
1201         * grp/getgrent.c: Likewise.
1202         * pwd/Makefile (routines): Add getpwent_r, getpwnam_r, getpwuid_r.
1203         * pwd/getpwent_r.c: New file.
1204         * pwd/getpwnam_r.c: New file.
1205         * pwd/getpwuid_r.c: New file.
1206         * grp/Makefile (routines): Add getgrent_r, getgrgid_r, getgrnam_r.
1207         * grp/getgrnam_r.c: New file.
1208         * grp/getgrgid_r.c: New file.
1209         * grp/getgrent_r.c: New file.
1210         * grp/Makefile (routines): Remove grpopen, grpread.
1211         * pwd/Makefile (routines): Remove pwdopen, pwdread.
1212         * grp/grpopen.c, grp/grpread.c, pwd/pwdopen.c, pwd/pwdread.c: Removed.
1213
1214         * pwd/fgetpwent.c: Rewritten using files-parse.c.
1215         * grp/fgetgrent.c: Likewise.
1216
1217         * nss/Makefile (routines): Add grp-lookup and pwd-lookup.
1218         * nss/pwd-lookup.c, nss/grp-lookup.c: New files.
1219         * nss/nss_files/files-grp.c: New file.
1220         * nss/nss_files/files-pwd.c: New file.
1221
1222         * nss/Makefile (subdir-dirs): New variable; use it in vpath.
1223
1224         * nss/nss_files/files-parse.c: New file.
1225         * nss/nss_files/files-XXX.c: New file.
1226         * nss/nss_files/files-hosts.c, nss/nss_files/files-proto.c,
1227         nss/nss_files/files-service.c, nss/nss_files/files-network.c:
1228         Rewritten using them.
1229
1230         * nss/Makefile (libnss_files-routines): Remove files-host.
1231         Add files-hosts, files-grp, files-pwd.
1232
1233         * nss/nss_dns/dns-network.c: Don't include <pthread.h>.
1234
1235 Mon Jun 24 22:39:12 1996  Richard Henderson  <rth@tamu.edu>
1236
1237         * sysdeps/alpha/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
1238         A .plt entry now loads the .rela.plt offset directly rather
1239         than making us calculate it.
1240
1241 Sun Jun 23 15:24:05 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1242
1243         * time/Makefile ($(installed-localtime-file) rule): Do
1244         $(make-target-directory) first.
1245
1246         * resolv.h: Fix wrapper for resolv/resolv.h.
1247
1248         * configure.in (ld --no-whole-archive check): Use AC_TRY_COMMAND.
1249         Compile dummy file and pass -nostdlib -nostartfiles so as not to
1250         require installed libraries.
1251
1252         * shlib-versions (*-*-*): Set libresolv=2, libnss_files=1,
1253         libnss_dns=1.
1254
1255 Sun Jun 23 19:42:05 1996  Ulrich Drepper  <drepper@cygnus.com>
1256
1257         * resolv/Makefile (distribute): Remove res_hconf.h; add mapv4v6addr.h
1258         and mapv4v6hostent.h.
1259         (routines): Move res* and gethnamaddr into libresolv-routines.
1260         (libresolv-routines): New variable, put them there.
1261         (extra-libs): New variable, list libresolv.
1262         (CPPFLAGS): Add -D for get*by* to res_get*by*.
1263
1264         * resolv/netdb.h (_PATH_NSSWITCH_CONF): New macro.
1265
1266         * inet/herrno.c: New file.
1267
1268         * resolv/res_init.c: Remove res_hconf calls.
1269
1270         * nss/Makefile, nss/XXX-lookup.c, nss/file-lookup.c,
1271         nss/getXXbyYY.c, nss/getXXbyYY_r.c, nss/getXXent.c,
1272         nss/getXXent_r.c, nss/host-lookup.c, nss/network-lookup.c,
1273         nss/nsswitch.c, nss/nsswitch.h, nss/proto-lookup.c,
1274         nss/service-lookup.c: New files.  Implementation of name
1275         service switch, following the approach in Solaris.
1276         Interface specification and general structure inspired by Peter
1277         Eriksson <pen@lysator.liu.se>.
1278         * nss/nss_files/files-host.c, nss/nss_files/files-network.c,
1279         nss/nss_files/files-proto.c, nss/nss_files/files-service.c:
1280         Implementation of libnss_files.so module for file based databases
1281         in NSS service.
1282         * nss/nss_dns/dns-host.c, nss/nss_dns/dns-network.c: Implementation
1283         if libnss_dns.so module for DNS name lookup in NSS service.
1284
1285         * inet/getproto.c, inet/getprtent.c, inet/getprtname.c,
1286         inet/getservent.c, inet/getsrvbynm.c, inet/getsrvbypt.c:
1287         Changed to serve as interface to NSS.
1288         * inet/gethstbyad.c, inet/gethstbyad_r.c, inet/gethstbynm.c,
1289         inet/gethstbynm2.c, inet/gethstbynm2_r.c, inet/gethstbynm_r.c,
1290         inet/gethstent.c, inet/gethstent_r.c, inet/getnetbynm.c,
1291         inet/getnetbynm_r.c, inet/getnetbypt.c, inet/getnetbypt_r.c,
1292         inet/getnetent.c, inet/getnetent_r.c, inet/getproto_r.c,
1293         inet/getprtent_r.c, inet/getprtname_r.c, inet/getservent_r.c,
1294         inet/getsrvbynm_r.c, inet/getsrvbypt_r.c: New files.  Implement
1295         interfaces to NSS, including reentrant functions.
1296
1297         * resolv/getnetbyaddr.c, resolv/getnetbyname.c, resolv/getnetent.c,
1298         resolv/sethostent.c: Removed:  Obsoleted by NSS.
1299
1300         * resolv/mapv4v6addr.h, resolv/mapv4v6hostent.h: Extracted from
1301         gethnamaddr.c.  These private functions are now used in more
1302         than one file.
1303
1304         * resolv/inet_pton.c, resolv/gethnamaddr.c: Updated to bind-4.9.4-T5B.
1305
1306 Sat Jun 22 16:49:47 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1307
1308         * rpm/Makefile ($(config)): Make sure the word list in the for
1309         loop is syntactically non-empty.
1310
1311 Sat Jun 22 21:29:52 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1312
1313         * Version 1.92 test release.
1314
1315 Sat Jun 22 23:30:07 1996  David Mosberger-Tang  <davidm@azstarnet.com>
1316
1317         * sysdeps/unix/sysv/linux/syscalls.list (ksyslog_ctl): Rename
1318         to klogctl to match prototype in sys/klog.h.
1319
1320         * sysdeps/posix/libc_fatal.c: Add include of <string.h>.
1321         * sysdeps/unix/sysv/linux/gethostid.c: Ditto.
1322
1323         * sysdeps/posix/getcwd.c (__canonicalize_directory_name_internal):
1324         Remove.  Code is now part of __getcwd again.  The old function
1325         never really worked for anything but THISDIR==".".
1326
1327         * sysdeps/alpha/Makefile (CFLAGS-rtld.c): Add -mbuild-constants
1328         only when building ELF version of library.
1329
1330         * libio/libioP.h (_IO_vscanf): Add prototype.
1331
1332         * posix/unistd.h (syscall): Change sysno arg and return value
1333         to int long.
1334
1335 Sat Jun 22 10:44:09 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1336
1337         * version.h (VERSION): Updated to 1.92.
1338
1339         * misc/Makefile (headers): Add ar.h.
1340         * misc/ar.h: New file.
1341
1342         * config.make.in (BUILD_CC): New variable.
1343         * configure.in: Check for BUILD_CC if $host != $build.
1344
1345         * posix/glob.c: Include <alloca.h> only [HAVE_ALLOCA_H], not [sparc].
1346
1347         * Makerules [! objects] (subdir_lib): Depend on the stamp$o files.
1348         (stamp$o files): New targets, create them empty, no deps.
1349
1350         * rpm/template (Source): New field.
1351         (%prep, %build, %install): New sections.
1352         (%files): Add %doc FAQ NEWS NOTES README.
1353         * rpm/rpmrc (builddir): Removed.
1354
1355 Fri Jun 21 00:27:51 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1356
1357         * elf/dl-load.c (_dl_map_object_from_fd): Fix mapping and l_phdr
1358         guessing to not assume p_vaddr of first load cmd is zero.
1359
1360         * sysdeps/sparc/elf/start.S: New file.
1361         * sysdeps/sparc/dl-machine.h: New file.
1362
1363         * posix/fnmatch.c (fnmatch): Fix \*[*?]+ case to increment name ptr
1364         only for ?s, not for *s.  Fix from Chet Ramey.
1365
1366         Fixes thanks to Raja R Harinath <harinath@cs.umn.edu>:
1367         * sysdeps/unix/sysv/utmpbits.h: Define _HAVE_UT_{TYPE,ID,TV,HOST}.
1368         Use __{BEGIN,END}_DECLS.
1369         (_PATH_WTMP, _PATH_UTMP, _PATH_LASTLOG): New macros.
1370         * login/utmp.h (UTMP_FILE, UTMP_FILENAME, WTMP_FILE, WTMP_FILENAME):
1371         New macros, moved here from sysdeps/gnu/utmpbits.h.
1372         * sysdeps/generic/utmpbits.h (_HAVE_UT_HOST): Define it.
1373         * sysdeps/gnu/utmpbits.h (_HAVE_UT_HOST): Likewise.
1374         * login/logout.c: Use ut_host only #if _HAVE_UT_HOST.
1375         Use sizeof instead of UT_*SIZE.
1376         * login/logwtmp.c: Likewise.
1377
1378         * misc/tsearch.c (tdelete): Define as weak alias to __tdelete.
1379
1380         * version.c (banner): Add trailing newline.
1381
1382         * login/utmp.h: Declare login_tty.
1383
1384 Thu Jun 20 21:19:07 1996  Richard Henderson  <rth@tamu.edu>
1385
1386         * sysdeps/alpha/dl-machine.h (elf_alpha_fix_plt):
1387         Changed to a 12-byte PLT entry to remove dependency on $gp.
1388         Take a new got_addr parameter.
1389         (elf_machine_rela): Pass the new parameter.
1390         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Do arithmetic for 12-byte PLT.
1391         (RTLD_START): Do normal linkage with program entry.
1392
1393 Thu Jun 20 12:18:21 1996  Miles Bader  <miles@gnu.ai.mit.edu>
1394
1395         * sysdeps/mach/hurd/brk.c (_hurd_brk): Initialize to 0.
1396
1397         * hurd/getuids.c (getuids): New weak link to __getuids.
1398
1399 Wed Jun 19 10:21:24 1996  Miles Bader  <miles@gnu.ai.mit.edu>
1400
1401         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry,
1402         __hurd_file_name_lookup, __hurd_file_name_split): Add & use LOOKUP
1403         argument.
1404         Rename nested function lookup to lookup_op.
1405         (__file_name_lookup, __file_name_lookup_under):
1406         Pass 0 for lookup arg to __hurd_file_name_lookup.
1407         (__file_name_split): Likewise for __hurd_file_name_split.
1408         * hurd/path-lookup.c (hurd_file_name_path_lookup): Add LOOKUP argument.
1409         Rename nested function lookup to scan_lookup.
1410         (file_name_path_lookup): Pass 0 for lookup arg to
1411         hurd_file_name_path_lookup.
1412         * hurd/hurd/lookup.h (__hurd_file_name_lookup, hurd_file_name_lookup,
1413         __hurd_file_name_lookup_retry, hurd_file_name_lookup_retry:
1414         __hurd_file_name_split, hurd_file_name_split, hurd_file_name_lookup):
1415         Add LOOKUP argument.
1416         * sysdeps/mach/hurd/access.c (__access): Pass 0 lookup arg to
1417         __hurd_file_name_lookup.
1418
1419 Mon Jun 17 19:09:49 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1420
1421         * Make-dist (+sysdeps): Move wildcard inside loop to avoid consing
1422         up a huge list just to discard most of it.
1423
1424         * configure.in (sysnames): Avoid fgrep by using the case shell
1425         builtin.
1426
1427         * Makeconfig (config.status): Fix dependency on Implies files.
1428
1429 Wed Jun 19 01:27:57 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1430
1431         * math/Makefile (distribute): Add ieee-math.c.
1432
1433 Wed Jun 19 03:24:58 1996  Ulrich Drepper  <drepper@cygnus.com>
1434
1435         * locale/codeset_name.c: New file.  Provide function for information
1436         about currently used character set.
1437         * locale/Makefile (routines): Add codeset_name.
1438         * locale/langinfo.h (_NL_CTYPE_CODESET_NAME): Add new constant.
1439         * locale/localeinfo.h: Change magic number because of incompatible
1440         change.
1441         * locale/C-ctype.c: Add initializer for new field `codeset_name'.
1442         * locale/programs/ld-ctype.c: Implement handling of `codeset_name'.
1443
1444         * locale/programs/locfile.c: Don't depend in pre-2.0 Linux specific
1445         name `MAX_IOVEC'.  Instead use standard name `UIO_MAXIOV'.
1446
1447         * locale/setlocale.c (setlocale): Initialize local variables to
1448         prevent warnings.
1449
1450 Thu Jun 13 17:25:11 1996  David Mosberger-Tang  <davidm@azstarnet.com>
1451
1452         * sysdeps/generic/memcmp.c: Add prototype decls for internal fns.
1453
1454         * locale/programs/locale.c: Include string.h.
1455
1456         * sunrpc/xdr_stdio.c (xdrstdio_getlong), sunrpc/xdr_rec.c
1457         (xdrrec_getlong), sunrpc/xdr_mem.c (xdrmem_getlong): Make sure
1458         appropriate sign-extension is performed on machines with
1459         sizeof(long) > 4.
1460
1461         * sunrpc/xdr.c (xdr_int, xdr_u_int): If sizeof(long)==8 and
1462         sizeof(int)<sizeof(long), we need to go through a temporary
1463         variable.
1464
1465         * locale/programs/ld-numeric.c: Include <alloca.h>
1466
1467         * libio/stdio.h (__libc_fatal): Add prototype.
1468
1469         * libio/cleanup.c: Use __P() to declare prototype when __STDC__ is
1470         in efect.
1471
1472         * libio/iopopen.c (read_or_write, parent_end, child_end): Declare
1473         volatile to avoid "might get clobbered by longjmp" warning.
1474
1475         * features.h (__KERNEL_STRICT_NAMES): Define __KERNEL_STRICT_NAMES
1476         unless _LOOSE_KERNEL_NAMES is in effect (which, with high
1477         probability is a sure loser).
1478         * sysdeps/unix/sysv/linux/gnu/types.h (__KERNEL_STRICT_NAMES): Remove.
1479
1480         * sysdeps/unix/bsd/osf/alpha/start.S (errno): Removed.
1481         * sysdeps/unix/sysv/linux/alpha/start.S: Ditto.
1482
1483         * misc/paths.h (_PATH_MAN): Change from /usr/share/man to /usr/man
1484         to be Linux FSSTND compliant.
1485
1486 Mon Jun 10 17:50:31 1996  David Mosberger-Tang  <davidm@azstarnet.com>
1487
1488         * sysdeps/unix/sysv/linux/alpha/pipe.S: Use PSEUDO.
1489
1490         * sysdeps/unix/sysv/linux/alpha/sysdep.S,
1491         sysdeps/unix/sysv/linux/alpha/brk.S,
1492         sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S,
1493         sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S,
1494         sysdeps/unix/sysv/linux/alpha/llseek.S,
1495         sysdeps/unix/sysv/linux/alpha/sigsuspend.S,
1496         sysdeps/unix/sysv/linux/alpha/syscall.S: Rename syscall_error to
1497         __syscall_error to avoid intruding application name space.
1498
1499         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Rename __NR_get?id
1500         to SYS_get?id so that syscall stubs in sysdeps/unix define
1501         these syscalls in terms of getxpid/getxuid/getxgid.
1502
1503         * sysdeps/unix/_exit.S, sysdeps/unix/getegid.S,
1504         sysdeps/unix/geteuid.S, sysdeps/unix/getppid.S,
1505         sysdeps/unix/execve.S, sysdeps/unix/fork.S,
1506         sysdeps/unix/syscall.S: Terminate syscall with PSEUDO_END.
1507
1508         * sysdeps/unix/make-syscalls.sh, sysdeps/unix/sysdep.h
1509         (PSEUDO_END): Rename END() to PSEUDO_END().
1510
1511         * sysdeps/unix/alpha/sysdep.h: Move error-handling code in PSEUDO
1512         to PSEUDO_END to improve branch-prediction.  Include .frame
1513         directive to make syscalls debugabble.
1514         (PSEUDO_END): New macro.
1515
1516         * sysdeps/unix/alpha/sysdep.h, sysdeps/alpha/bb_init_func.S,
1517         sysdeps/unix/sysv/linux/alpha/brk.S: Use ldiq instead of ldi since
1518         latter is illegal under DEC Unix.
1519
1520         * sysdeps/unix/alpha/sysdep.S: Renamed from
1521         sysdeps/unix/sysv/linux/alpha/sysdep.S.  This file works for OSF/1
1522         as well.
1523         * sysdeps/unix/bsd/osf/alpha/sysdep.S: Remove (note that the
1524         EWOULDBLOCK -> EAGAIN mapping was unnecessary since
1525         EWOULDBLOCK==EAGAIN under DEC Unix and Linux/Alpha).
1526
1527         * sysdeps/alpha/divrem.h: Use retaddr instead of ra as the return
1528         address register in the .frame directive.
1529
1530         * sysdeps/alpha/copysign.c: Remove.
1531
1532         * sunrpc/rpc/types.h: Include <sys/param.h> and <netinet/in.h> to
1533         avoid RPC definitions of INADDR_LOOPBACK and/or MAXHOSTNAMELEN.
1534
1535         * errno.h: Move __END_DECLS to correct place to make file
1536         compilable under c++.
1537
1538         * dirent/dirent.h: Document _DIRENT_HAVE_D_OFF macro.  Define
1539         d_ino only if <direntry.h> hasn't defined d_fileno.
1540
1541         * configure.in (HAVE_ASM_WEAKEXT_DIRECTIVE): Reverse order of
1542         arguments to weakext to make .weakext detection work on ECOFF systems.
1543
1544         * FAQ: Add Linux/Alpha to list of supported platforms.  Mention
1545         that _validuser() has been replaced by __ivaliduser().
1546
1547 Thu Jun  6 21:39:38 1996  David Mosberger-Tang  <davidm@azstarnet.com>
1548
1549         * sysdeps/unix/bsd/sun/sunos4/tcsetattr.c (tcsetattr): Declare cmd
1550         as unsigned long, not as int (to avoid incorrect int->long
1551         promotion).
1552
1553 Tue Jun 18 17:56:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1554
1555         * Version 1.91 test release.
1556
1557         * Makerules ($(common-objpfx)distinfo-$(subdir)): Change target from
1558         distinfo to this.
1559         (distinfo): Make phony target depending on that.
1560         (TAGS, po/%.pot, dist): Change deps.
1561         (common-clean): Remove that file.
1562         * rpm/Makefile (distinfo): Change names.
1563
1564         * rpm/Makefile (clean): New target.
1565
1566         * stdlib/test-canon.c: New test program contributed by David Mosberger.
1567         * stdlib/Makefile (tests): Add test-canon.
1568         * stdlib/canonicalize.c: Rewritten by David Mosberger.
1569
1570 Mon Jun 17 17:53:21 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1571
1572         * mach/Machrules (%_server.c %_server.h rule): Remove gratuitous
1573         mention of $< in mig cmd.  Thanks to Shantanu Goel.
1574
1575         * sysdeps/mach/hurd/brk.c (___brk_addr): Define as weak alias for
1576         _hurd_brk.
1577
1578         * libio/stdio.h [__USE_SVID]: Declare tempnam.
1579
1580 Fri Jun 14 19:28:33 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1581
1582         * sysdeps/unix/sysv/linux/syscalls.list: Add swapon with two
1583         parameters.
1584
1585 Wed Jun 12 20:40:51 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
1586
1587         * sysdeps/m68k/dl-machine.h (RTLD_START): Fix access to
1588         _dl_default_scope.
1589
1590 Sun Jun 16 03:22:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1591
1592         * sysdeps/stub/elfclass.h: New file.
1593
1594         * Make-dist (subdir): Make empty value really empty.
1595
1596         * version.h (VERSION): Update to 1.91.
1597
1598         * hurd/hurdinit.c (map0): Remove [!PIC] conditional.
1599
1600         * shlib-versions (*-*-*): Add libutil=1.
1601
1602         * rpm/Makefile (install-lib): Add libc.a et al.
1603         (install-others): Only add libc.so if $(build-shared) is yes.
1604
1605         * math/Makefile (install-lib): New variable, list libieee.a.
1606         (non-lib.a): Likewise.
1607         (extra-objs): Likewise, and ieee-math.o.
1608         ($(objpfx)libieee.a): New target, link to ieee-math.o.
1609         * math/ieee-math.c: New file.
1610         * sysdeps/unix/sysv/linux/Makefile [$(subdir)=math]: Remove setfpucw
1611         and libieee.a stuff.
1612         * sysdeps/unix/sysv/linux/ieee-fpucw.c: File removed.
1613         * sysdeps/unix/sysv/linux/i386/ieee_fpu.c: File removed.
1614
1615         * sysdeps/unix/sysv/Makefile (sysdep_headers): Make append of termio.h
1616         and rule for it conditional on termio.h not already being in
1617         sysdep_headers.
1618
1619         * rpm/Makefile (install-others) [libc.so-version]: Get libc.so from
1620         $(libdir), only the versioned named from $(slibdir).
1621         (instfiles): New variable.
1622         (glibc-$(version).$(config).rpm): New target.  Run rpm -bb.
1623         * rpm/rpmrc: New file.  A third of the options controlling rpm can
1624         only be given here (another third is on the command line, and a third
1625         cannot be specified in any way shape or form).
1626
1627 Sun Jun 16 02:44:22 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1628
1629         * rpm/template: New file.
1630         * rpm/Makefile: New file.
1631
1632         * Makeconfig (sysdep-configures): Remove empty variable.
1633
1634         * Makerules (distinfo-vars): Write defns for $(install-lib.so) and
1635         $(versioned).
1636
1637         * manual/Makefile (subdir_%): Add new rule with no deps, secondary to
1638         to rule w/dep on %, with no-op commands.
1639
1640         * Makerules (subdir_distinfo): New phony target; depend on distinfo.
1641         * Makefile (rpm/%): New rule.
1642         (+subdir_targets): Add subdir_distinfo.
1643
1644 Sun Jun 16 00:40:20 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1645
1646         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Don't add
1647         fpu_control.h here.
1648
1649         * time/Makefile ($(installed-localtime-file)): If target exists, do
1650         nothing but print a message; if not, make it an absolute symlink.
1651
1652         * time/tzset.c (__tzset): After stripping leading :, call
1653         __tzfile_read on TZ even if it's empty or null.
1654         * time/tzfile.c (__tzfile_read): Use "Universal" if passed "".
1655
1656 Sat Jun 15 18:13:43 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1657
1658         * hurd/Makefile (routines): Add get-host, set-host.
1659         (distribute): Add hurdhost.h.
1660         * hurd/hurdhost.h: New file.
1661         * sysdeps/mach/hurd/gethostname.c: Use _hurd_get_host_config.
1662         * sysdeps/mach/hurd/gethostid.c: Likewise.
1663         * sysdeps/mach/hurd/sethostname.c: Use _hurd_set_host_config.
1664         * sysdeps/mach/hurd/sethostid.c: Likewise.
1665         * hurd/get-host.c: New file.
1666         * hurd/set-host.c: New file.
1667
1668         * math/Makefile (headers): Add fpu_control.h.
1669         (aux): New variable, list fpu_control and setfpucw.
1670         * sysdeps/generic/fpu_control.c: New file.
1671         * sysdeps/stub/fpu_control.h: New file.
1672         * sysdeps/unix/sysv/linux/m68k/fpu_control.h: Moved to ...
1673         * sysdeps/m68k/fpu_control.h: here.
1674         * sysdeps/unix/sysv/linux/i386/fpu_control.h: Moved to ...
1675         * sysdeps/i386/fpu_control.h: here.
1676         * sysdeps/unix/sysv/linux/alpha/fpu_control.h: Moved to ...
1677         * sysdeps/alpha/fpu/fpu_control.h: here.  Fixed copyright.
1678         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
1679         setfpucw, fpu_control.
1680         * sysdeps/unix/sysv/linux/alpha/fpu_control.c: File removed.
1681         * sysdeps/unix/sysv/linux/setfpucw.c: Moved to ...
1682         * sysdeps/generic/setfpucw.c: here.
1683         (__fpu_control): Variable removed.
1684         (__setfpucw): Use SET even if zero.
1685
1686         * elf/dl-deps.c (_dl_map_object_deps): Set MAP's mark bit before loop.
1687         Set mark bits of deps as opened, instead of as scanned.
1688
1689         * elf/rtld.c (dl_main): Remove _dl_rtld_map from chain unconditionally.
1690         Then if it has a nonzero l_opencount, add it back in search order.
1691
1692         * elf/dl-load.c (_dl_map_object): Don't use _dl_loaded's DT_RPATH if
1693         it ain't got one!
1694
1695         * sysdeps/unix/sysv/linux/Dist: Add sys/klog.h.
1696
1697         * elf/dl-open.c (_dl_open): Remove PARENT argument, pass null.
1698         * elf/link.h: Update prototype.
1699         * elf/dl-load.c (_dl_map_object): If dependents' DT_RPATHs don't find
1700         NAME, try the DT_RPATH of the executable itself if dynamic.
1701         * elf/dlopen.c (dlopen): Don't pass first arg to _dl_open.
1702
1703         * elf/dl-load.c (_dl_map_object): Exit DT_RPATH checking loop when an
1704         open succeeds.
1705
1706         * Makerules (build-shlib): Give -L opts for each elt of $(rpath-link).
1707
1708         * sysdeps/mach/hurd/Makefile (sysdep-LDFLAGS): Variable removed.
1709         (rpath-link): Append to this instead.
1710
1711 Fri Jun 14 01:51:47 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1712
1713         * version.c (banner): New static const variable, complete version
1714         banner text.
1715         (__libc_print_version): Use it, and use __write instead of printf.
1716
1717         * configure.in (sysnames): Don't cache the value, because it
1718         depends only on libc sources.  Merge uniquifying third pass into
1719         Implies/parent expansion second pass.  Report each unique name as
1720         it is added in partial report string, terminated when finished.
1721
1722         * Makeconfig (sysdep_dir): Move defn before config.status rule that
1723         expands it.
1724         (sysdep-configures): Variable removed.
1725         (config.status): Use its contents directly, tighten up a bit, and
1726         include Implies files.
1727
1728         * elf/dl-open.c (_dl_open) [PIC]: Set PARENT to _dl_loaded if null.
1729
1730         * elf/Makefile ($(objpfx)$(rtld-installed-name)): Make a symlink.
1731
1732 Thu Jun 13 14:29:56 1996  Miles Bader  <miles@gnu.ai.mit.edu>
1733
1734         * hurd/hurdsig.c (_hurd_internal_post_signal): Rename `deliver:'
1735         label to `deliver_pending:' to match goto.
1736
1737 Thu Jun 13 00:02:25 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1738
1739         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_open_zero_fill):
1740         Add comment.
1741
1742         * elf/rtld.c (dl_main): Close _dl_zerofd after mapping deps.
1743
1744         * sysdeps/generic/machine-gmon.h [NO_UNDERSCORES]: Define mcount as
1745         weak alias for _mcount.
1746         * sysdeps/alpha/_mcount.S (mcount): Define as weak alias.
1747
1748         * elf/dl-lookup.c (_dl_lookup_symbol): If no value and *REF is
1749         null, consider it a strong reference and give the error.
1750
1751 Wed Jun 12 15:52:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1752
1753         * elf/dl-open.c (_dl_open): Correctly terminate relocating loop
1754         after relocating NEW when it's the only new object.
1755
1756         * elf/dl-init.c (_dl_init_next): When out of initializers, set
1757         _r_debug.r_state to RT_CONSISTENT and call _dl_debug_state just
1758         before return.
1759
1760         * elf/rtld.c (dl_main): Move _dl_debug_initialize call after
1761         relocation.  Call it unconditionally and only fill in DT_DEBUG
1762         if it's present.  Then call _dl_debug_state with r_state RT_ADD
1763         before running initializers.
1764
1765         * elf/dl-open.c (_dl_open): Call _dl_debug_initialize and then call
1766         _dl_debug_state with r_state RT_ADD before running initializers
1767         * elf/dl-close.c (_dl_close): Call _dl_debug_state with r_state
1768         RT_DELETE before running finalizers and with RT_CONSISTENT just
1769         before return.
1770
1771         * elf/Makefile (dl-routines): Add dl-debug.
1772         * elf/dl-debug.c: New file.
1773         * elf/rtld.c (_dl_r_debug): Rename to _r_debug and move to dl-debug.c.
1774         (_dl_r_debug_state): Rename to _dl_debug_state and likewise move.
1775         (dl_main): Use _dl_debug_initialize.
1776         * elf/link.h: Fix name to _dl_debug_state in decl.
1777         (_dl_debug_initialize): Declare new function from dl-debug.c.
1778         (_r_debug): Declare it.
1779
1780         * Makerules (distinfo-vars): Add install-{lib,data,bin,sbin,others}.
1781         In distinfo set $(subdir)-VAR and then set VAR to $($(subdir)-VAR).
1782
1783         * Makeconfig (rpath-link): New variable; add $(elfobjdir).
1784         (default-rpath): Use it.
1785         (built-program-cmd): Use it in LD_LIBRARY_PATH.
1786
1787         * Makeconfig (sysdep-configures): Prepend $(sysdep_dir) to names tried.
1788
1789         * sysdeps/unix/Dist: Add make-syscalls.sh.
1790
1791         * misc/Makefile (headers): Add sys/swap.h.
1792         * posix/unistd.h: Remove decls for swapon, swapoff.
1793         * sysdeps/generic/sys/swap.h: New file.
1794         * sysdeps/unix/sysv/linux/sys/swap.h: New file.
1795
1796         * sysdeps/unix/sysv/linux/gnu/types.h: Remove temporary hack #define
1797         of __kernel_fsid_t.  It is correctly defines in <linux/types.h> now.
1798
1799 Tue Jun 11 23:23:30 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1800
1801         * Makerules (LDFLAGS-c.so): Use __libc_main instead of
1802         __libc_print_version as entry point for shared object.
1803         * version.c [HAVE_ELF] (__libc_main): New function.
1804
1805         * elf/dl-load.c (_dl_map_object_from_fd): Relocate l_entry with the
1806         load address.
1807
1808 Tue Jun 11 19:13:04 1996  Richard Henderson  <rth@tamu.edu>
1809
1810         * sysdeps/alpha/dl-machine.h: New file.
1811
1812         * elf/dl-close.c: Include <string.h> for memcpy.
1813         * elf/dl-lookup.c: Same.
1814
1815         * elf/elf.h: Add Elfxx_Symndx for symbol indices.
1816         * elf/dl-lookup.c (_dl_lookup_symbol): Use it.
1817         (_dl_setup_hash): Use it.
1818         * elf/link.h (struct link_map): Use it.
1819
1820         * elf/rtld.c (_dl_start): Don't rely on pointer-to-first-arg hack
1821         for getting the argc/argv/envp block.  Instead, make it the argument.
1822         sysdeps/i386/dl-machine.h (RTLD_START): Do that.
1823         sysdeps/m68k/dl-machine.h (RTLD_START): Same.
1824
1825         * shlib-versions: Add version numbers for alpha-linux.  To avoid
1826         user confusion, make them the same as i386-linux.
1827
1828         * sysdeps/alpha/Makefile [subdir elf]: Add -mno-fp-regs to
1829         sysdep-CFLAGS so that _dl_runtime_resolve doesn't have to save them.
1830         Add -mbuild-constants to CFLAGS-rtld.c to that we can bootstrap
1831         without using literal data.
1832
1833         * sysdeps/generic/dl-sysdep.c: Include <string.h> for memcpy.
1834         Finish Elf32 -> ElfW migration.
1835
1836 Tue Jun 11 15:09:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1837
1838         * Makerules (elfobjdir): Use $(objdir) if set, even in elf subdir.
1839
1840         * elf/Makefile (routines): Remove init-first.
1841         * csu/Makefile (routines): New variable; put it here instead.
1842
1843         * config.make.in (CFLAGS): New variable.
1844
1845         * io/sys/stat.h (S_ISLNK, S_ISSOCK): Make conditional on __USE_BSD,
1846         not __USE_GNU.
1847         * string/string.h (strncasecmp): Likewise.
1848
1849         * elf/Makefile (lib-noranlib): Move rule adding deps for ld.so et al
1850         to after `include ../Rules', so $(rtld-installed-name) is defined.
1851
1852         * string/basename.c (basename): Cast FILENAME to char * for return.
1853
1854         * Makerules ($(libdir)/libc.so): Put $(rtld-installed) name between
1855         libc.so and libc.a in the deps.
1856
1857         * elf/Makefile ($(objpfx)$(rtld-installed-name)): New target to make
1858         link to ld.so if that is not the installed name.
1859         (lib-noranlib): Depend on the installed name in the build directory
1860         instead of on ld.so.
1861
1862         * Makeconfig (link-libc): Include $(elfobjdir)/$(rtld-installed-name)
1863         between libc.so and libc.a, because with libc.so's DT_NEEDED for ld.so
1864         ld searches libc.a before ld.so (is that an ld bug?).
1865         Add $(elfobjdir) to -rpath-link.
1866
1867         * Makerules (elfobjdir): Define as . when $(subdir) is elf.
1868
1869         * sysdeps/i386/dl-machine.h (elf_machine_rel): In R_386_32 case when
1870         relocating _dl_rtld_map, subtract SYM's value from final reloc value,
1871         but don't change *RELOC_ADDR before calling *RESOLVE, because it might
1872         call the function we are relocating!
1873
1874         * string/basename.c: New file.
1875         * string/Makefile (routines): Add basename.
1876
1877 Mon Jun 10 06:14:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1878
1879         * Makerules ($(common-objpfx)libc.so): Depend on $(elfobjdir)/ld.so.
1880
1881         * elf/dl-close.c: New file.
1882         * elf/link.h: Declare _dl_close.
1883         * elf/Makefile (routines): Add dl-close.
1884         * elf/dlclose.c (dlclose): Use _dl_close.
1885
1886         * elf/Makefile ($(objpfx)librtld.so): Remove libelf from deps.
1887
1888         * elf/dl-runtime.c (_dl_global_scope): New variable.
1889         (_dl_object_relocation_scope): New function.
1890         (fixup): Use it.
1891         * elf/rtld.c (dl_main): Use it.
1892         * elf/dl-open.c (_dl_open): Use it.  If (MODE & RTLD_GLOBAL), set the
1893         l_global bit and append the new map to _dl_global_scope.
1894         * elf/link.h: Declare _dl_global_scope, _dl_global_scope_alloc,
1895         and _dl_object_relocation_scope.
1896
1897         * elf/link.h (struct link_map): Add l_loader member.
1898         Remove _dl_map_object_from_fd decl.
1899         * elf/dl-load.c (_dl_map_object): Pass LOADER to ...
1900         (_dl_map_object_from_fd): Take new arg LOADER and set l_loader member.
1901         (_dl_map_object): Try DT_RPATH from all loaders up the chain.
1902
1903         * elf/dl-object.c (_dl_loaded): Variable removed.
1904         (_dl_default_scope): New variable replaces it.
1905         * elf/link.h (_dl_loaded): Remove variable decl; instead define as
1906         macro for _dl_default_scope[2].
1907         (_dl_default_scope): Declare it.
1908         * sysdeps/i386/dl-machine.h (RTLD_START): Use _dl_default_scope[2]
1909         instead of _dl_loaded.
1910         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
1911         * elf/rtld.c (dl_main): Use _dl_default_scope for symbol lookups.
1912
1913         * elf/dl-reloc.c (_dl_relocate_object): Remove check for _dl_rtld_map.
1914         * elf/rtld.c (dl_main): Pass 0 for LAZY flag when re-relocating self.
1915
1916         * elf/link.h (struct link_map.l_type): Remove lt_interpreter.
1917         (struct link_map): Add new flag member l_global.
1918
1919         * elf/dl-reloc.c (_dl_relocate_object): Check for _dl_rtld_map
1920         directly instead of looking for lt_interpreter.
1921         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
1922         * elf/rtld.c (_dl_start): Don't bother setting BOOTSTRAP_MAP.l_type.
1923         (dl_main): Set _dl_rtld_map.l_type to lt_library.
1924
1925         * elf/dl-deps.c (_dl_map_object_deps): Propagate MAP->l_type to
1926         dependencies loaded, downgrading lt_executable -> lt_library.
1927
1928         * elf/dl-load.c (_dl_map_object_from_fd): Take new arg TYPE and set
1929         l_type from that, translating lt_library->lt_executable based on the
1930         file's ELF type.
1931         (_dl_map_object): Likewise.
1932         * elf/link.h: Update prototypes.
1933         * elf/dl-open.c: Pass type lt_loaded.
1934         * elf/rtld.c: Pass type lt_library.
1935
1936         * elf/dl-load.c (_dl_map_object_from_fd): Handle null return from
1937         _dl_new_object.
1938         (_dl_map_object_from_fd: lose): Unchain and free L if it's not null.
1939         Free REALNAME, and just use NAME in error message.
1940         * elf/dl-object.c (_dl_new_object): If malloc fails, return null
1941         instead of calling _dl_signal_error.
1942
1943         * elf/dl-load.c (_dl_map_object_from_fd): Close FD before signalling
1944         error for _dl_zerofd setup failure.
1945
1946         * elf/dl-object.c (_dl_startup_loaded): Variable removed.
1947         * elf/link.h: Remove its decl.
1948
1949         * elf/dl-reloc.c (_dl_relocate_object): Take new SCOPE arg and pass it
1950         through to _dl_lookup_symbol.
1951         * elf/link.h (_dl_relocate_object): Update comment and prototype.
1952         * elf/rtld.c (dl_main): Pass scope vector to _dl_relocate_object.
1953
1954         * elf/dl-lookup.c (_dl_lookup_symbol): Arg SYMBOL_SCOPE is now a
1955         null-terminated vector of pointers, no longer a vector of exactly two.
1956         * elf/link.h (_dl_lookup_symbol): Update comment and prototype.
1957
1958         * elf/dl-runtime.c (fixup): Set up scope for symbol lookup properly as
1959         done in _dl_relocate_object.
1960
1961         * elf/dlopen.c: Pass "" to _dl_open when FILE is null.
1962
1963         * elf/link.h: Include elfclass.h to define __ELF_NATIVE_CLASS.
1964         (ElfW, ELFW): Use it.
1965         * elf/Makefile (headers): Add elfclass.h.
1966         * sysdeps/wordsize-32/elfclass.h: New file.
1967         * sysdeps/wordsize-64/elfclass.h: New file.
1968         * sysdeps/alpha/Implies: Add wordsize-64.
1969         * sysdeps/i386/Implies: Add wordsize-32.
1970         * sysdeps/m68k/Implies: Add wordsize-32.
1971         * sysdeps/mips/Implies: Add wordsize-32.
1972         * sysdeps/sparc/Implies: Add wordsize-32.
1973
1974         * sysdeps/mach/hurd/dl-sysdep.c (__open): Define this instead of open.
1975         (__close, __mmap): Likewise define with __ names now.
1976
1977 Mon Jun 10 05:13:18 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1978
1979         * elf/dl-support.c: New file.
1980         * elf/Makefile (CFLAGS-dl-support.c): New variable.
1981         (routines, elide-routines.so): Add dl-support.
1982
1983         * elf/dl-minimal.c (_dl_pagesize): Remove common defn.
1984         * elf/dl-load.c (_dl_pagesize): Define it here.
1985         (_dl_map_object_from_fd): Initialize it if zero.
1986         * elf/link.h (_dl_pagesize): Remove const.
1987
1988 Sun Jun  9 04:04:26 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
1989
1990         * elf/Makefile (routines): Add dl-symbol.
1991         * elf/dl-lookup.c (_dl_symbol_value): Moved to ...
1992         * elf/dl-symbol.c: New file.
1993
1994         * elf/elf.h (Elf32_Xword, Elf32_Sxword): New types.
1995         (Elf32_Section, Elf64_Section): New types, 16 bits.
1996         (Elf32_Sym, Elf64_Sym): Use it.
1997
1998         * elf/dl-deps.c (_dl_open): Moved to ...
1999         * elf/dl-open.c: New file.
2000         * Makefile (routines): Add dl-open.
2001
2002         * elf/Makefile (dl-routines): New variable.
2003         (routines): Add $(dl-routines).
2004         (elide-routines.so): New variable, set to $(dl-routines).
2005         (libdl-inhibit-o): Variable removed; build all flavors of -ldl.
2006         (rtld-routines): All but rtld, dl-sysdep, and dl-minimal moved to
2007         $(dl-routines).
2008
2009         * elf/dl-lookup.c (_dl_lookup_symbol): Remove magic symbol grokage.
2010
2011         * elf/dladdr.c: Use ELFW(ST_BIND) in place of ELF32_ST_BIND.
2012
2013         * elf/dl-load.c (open_path): Use __ names for open and close.  Avoid
2014         using strdup.
2015         (_dl_map_object): Likewise.
2016         (_dl_map_object_from_fd): Use __ names for mmap, munmap, and mprotect.
2017         * elf/dl-minimal.c (malloc): Likewise.
2018         * elf/dl-reloc.c (_dl_relocate_object): Likewise.
2019
2020         * elf/dl-minimal.c (_dl_pagesize): New variable.
2021         (malloc): Use that instead of a static variable.
2022         * elf/dl-reloc.c (_dl_relocate_object): Use _dl_pagesize instead of
2023         calling getpagesize.
2024         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
2025         * elf/link.h: Declare _dl_pagesize.
2026
2027         * elf/rtld.c (dl_r_debug): Renamed to _dl_r_debug.
2028
2029         * elf/link.h (struct link_map): Use Half for l_phnum instead of Word.
2030         * elf/rtld.c (dl_main): Use Half for phdr count arg.
2031         (_dl_sysdep_start): Update prototype of DL_MAIN function ptr arg.
2032
2033         * elf/dl-load.c (_dl_map_object_from_fd): Use explicit Elf32_Word to
2034         extract 4-byte magic number, not ElfW(Word).  Match EI_CLASS against
2035         native wordsize, either 32 or 64.
2036
2037         * elf/elf.h (Elf64_Byte, Elf64_Section): Typedefs removed.  In C a
2038         char is always a byte, no need for a typedef.  Section indices are
2039         16-bit quantities in elf64, which already have a typedef Elf64_Half.
2040
2041         Remove partial -lelf implementation.  There is now a
2042         separately-distributed `libelf' package that implements it.
2043         * elf/dl-lookup.c: Don't #include <libelf.h> any more.
2044         (_dl_elf_hash): New function, moved from
2045         libelf.h:elf_hash.
2046         (_dl_lookup_symbol): Use it instead of elf_hash.
2047         * elf/libelf.h: File removed.
2048         * elf/elf_hash.c: File removed.
2049         * elf/Makefile (headers): Remove libelf.h.
2050         (extra-libs): Remove libelf.
2051         (libelf-routines): Variable removed.
2052
2053         * elf/Makefile (libdl.so): Remove commands from this target.  The
2054         implicit rule commands are correct, this explicit rule just serves to
2055         add some dependencies.
2056
2057         * elf/dl-lookup.c (_dl_lookup_symbol): Use ELFW(ST_TYPE) in place of
2058         ELF32_ST_TYPE.  Likewise ST_BIND.
2059         * elf/do-rel.h (elf_dynamic_do_rel): Likewise R_SYM.
2060
2061         * elf/link.h (ElfW): New macro for wordsize-independent ElfXX_* type
2062         naming.
2063         (ELFW): New macro, likewise for ELFXX_* macro naming.
2064         (_ElfW, _ElfW_1): New macros, subroutines of ElfW and ELF.
2065
2066 Sat Jun  8 20:52:38 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2067
2068         * elf/link.h, elf/do-rel.h, elf/dynamic-link.h, elf/dl-deps.c,
2069         elf/dl-init.c, elf/dl-load.c, elf/dl-lookup.c, elf/dl-reloc.c,
2070         elf/dl-runtime.c, elf/dladdr.c, elf/dlclose.c, elf/dlsym.c,
2071         elf/linux-compat.c, elf/rtld.c: Change all uses of `Elf32_XXX' to
2072         `ElfW(XXX)' for wordsize-independence.
2073
2074 Sat Jun  8 20:50:42 1996  Richard Henderson  <rth@tamu.edu>
2075
2076         * elf/elf.h: Move Elf64_* types in parity with Elf32 counterparts.
2077         (Elf64_auxv_t): New type.
2078         (EM_ALPHA, R_ALPHA_*): New macros for elf64-alpha format.
2079
2080 Mon Jun 10 02:22:24 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2081
2082         * sysdeps/unix/sysv/linux/configure.in: New file, start with configure.
2083         Add check for installed <linux/version.h> being v2.0 or later.
2084
2085         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_open_zero_fill): Call __open
2086         instead of open.
2087         (_dl_sysdep_fatal): Call __write instead of write.
2088         (_dl_sysdep_message): Likewise.
2089
2090 Sun Jun  9 20:40:00 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2091
2092         * sysdeps/m68k/fpu/e_acosl.c: New file.
2093
2094 Sun Jun  9 01:11:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2095
2096         * Makerules (o-objects): New variable.  Use it in place of
2097         $(objects:.o=$o); it filters out $(elide-routines$o).
2098         Use o-iterator for ar and ranlib rules so they use the per-type object
2099         list.
2100
2101         * elf/dl-load.c (_dl_map_object_from_fd): Close FD before return.
2102
2103         * sysdeps/mach/mprotect.c: Define with __ name and weak alias.
2104         * sysdeps/stub/mprotect.c: Likewise.
2105         * sysdeps/unix/mman/syscalls.list (mprotect): Likewise.
2106         * sysdeps/generic/sys/mman.h: Declare __mprotect.
2107         * sysdeps/unix/sysv/irix4/sys/mman.h: Likewise.
2108         * sysdeps/unix/sysv/linux/sys/mman.h: Likewise.
2109         * sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Likewise.
2110         * sysdeps/unix/bsd/osf/sys/mman.h: Likewise.
2111         * sysdeps/unix/bsd/ultrix4/sys/mman.h: Likewise.
2112
2113         * Make-dist ($(tardir).tar): Use sed to check for file names longer
2114         than 14 chars, instead of doschk which checks for other things we
2115         don't care about.
2116
2117         * Version 1.90 test release.
2118
2119         * Makerules (make-target-directory): Use ./mkinstalldirs so we do not
2120         assume . is in PATH.
2121
2122 Sat Jun  8 22:05:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2123
2124         * math/Makefile (distribute): Comment out addition of
2125         $(long-m-routines) sources until they are all written.
2126
2127         * math/Makefile (distribute): Append long double source names to this
2128         instead of using elided-routines.
2129
2130 Sat Jun  8 15:15:07 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2131
2132         * mach/mach_shortcuts.c: Obsolete file removed.
2133         * mach/mach_syscalls.h: Likewise.
2134
2135         * hurd/Makefile (distribute): Consolidate defns into one.
2136
2137         * time/Makefile (tzfiles): Add solar87 solar88 solar89.
2138
2139 Fri Jun  7 16:48:13 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2140
2141         * sysdeps/unix/sysv/linux/i386/Dist: New file, list sys/perm.h and
2142         sys/vm86.h.
2143
2144         Removed old math code no longer used since the fdlibm integration.
2145         * sysdeps/stub/acos.c: File removed.
2146         * sysdeps/stub/asin.c: File removed.
2147         * sysdeps/stub/atan2.c: File removed.
2148         * sysdeps/stub/cosh.c: File removed.
2149         * sysdeps/stub/exp.c: File removed.
2150         * sysdeps/stub/fmod.c: File removed.
2151         * sysdeps/stub/frexp.c: File removed.
2152         * sysdeps/stub/log.c: File removed.
2153         * sysdeps/stub/log10.c: File removed.
2154         * sysdeps/stub/sinh.c: File removed.
2155         * sysdeps/stub/tan.c: File removed.
2156         * sysdeps/stub/tanh.c: File removed.
2157         * sysdeps/generic/acos.c: File removed.
2158         * sysdeps/generic/acosh.c: File removed.
2159         * sysdeps/generic/asin.c: File removed.
2160         * sysdeps/generic/asinh.c: File removed.
2161         * sysdeps/generic/atan.c: File removed.
2162         * sysdeps/generic/atan2.c: File removed.
2163         * sysdeps/generic/atanh.c: File removed.
2164         * sysdeps/generic/cabs.c: File removed.
2165         * sysdeps/generic/ceil.c: File removed.
2166         * sysdeps/generic/copysign.c: File removed.
2167         * sysdeps/generic/cosh.c: File removed.
2168         * sysdeps/generic/exp.c: File removed.
2169         * sysdeps/generic/expm1.c: File removed.
2170         * sysdeps/generic/fabs.c: File removed.
2171         * sysdeps/generic/floor.c: File removed.
2172         * sysdeps/generic/fmod.c: File removed.
2173         * sysdeps/generic/frexp.c: File removed.
2174         * sysdeps/generic/hypot.c: File removed.
2175         * sysdeps/generic/infnan.c: File removed.
2176         * sysdeps/generic/isnan.c: File removed.
2177         * sysdeps/generic/ldexp.c: File removed.
2178         * sysdeps/generic/log.c: File removed.
2179         * sysdeps/generic/log10.c: File removed.
2180         * sysdeps/generic/log1p.c: File removed.
2181         * sysdeps/generic/modf.c: File removed.
2182         * sysdeps/generic/pow.c: File removed.
2183         * sysdeps/generic/rint.c: File removed.
2184         * sysdeps/generic/sinh.c: File removed.
2185         * sysdeps/generic/tan.c: File removed.
2186         * sysdeps/generic/tanh.c: File removed.
2187         * sysdeps/ieee754/cabs.c: File removed.
2188         * sysdeps/ieee754/copysign.c: File removed.
2189         * sysdeps/ieee754/frexp.c: File removed.
2190         * sysdeps/ieee754/hypot.c: File removed.
2191         * sysdeps/ieee754/infnan.c: File removed.
2192         * sysdeps/ieee754/ldexp.c: File removed.
2193         * sysdeps/ieee754/log10.c: File removed.
2194
2195         * posix/Makefile (headers): Add schedbits.h.
2196
2197         * math/Makefile (elided-routines): Add long double routines.
2198
2199 Fri Jun  7 11:02:22 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2200
2201         * sysdeps/mach/hurd/getpriority.c (getpriority): Use new interface
2202         to __proc_getprocinfo.
2203
2204         * login/login.c (tty_name): New function.
2205         (login): Use it.
2206         (PATH_MAX): MACRO removed.
2207         <stdlib.h>: New include.
2208
2209 Fri Jun  7 09:11:17 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2210
2211         * sysdeps/unix/sysv/linux/Dist: Add sys/sysinfo.h, sys/mount.h,
2212         sys/kdaemon.h, sys/io.h, sys/mount.h, sysctl.c.
2213
2214         * gmon/Makefile (distribute): Add profil-counter.h.
2215
2216         * sysdeps/unix/sysv/linux/alpha/Dist: New file.
2217
2218         * sysdeps/unix/Dist: Add s-proto.S.
2219
2220         * sysdeps/unix/common/mk-local_lim.c: Obsolete file removed.
2221
2222         * Make-dist (+sysdep-tsrcs): Get all syscalls.list files too.
2223
2224         * csu/Makefile (distribute): Add start.c.
2225
2226         * elf/Makefile (distribute): Add dl-machine.h.
2227
2228         * sysdeps/alpha/Dist: Add _mcount.S.
2229
2230         * sysdeps/alpha/Makefile (sysdep_routines): Append instead of
2231         resetting; don't add bb_init_func.
2232
2233         * string/Makefile (routines): Add strerror_r.
2234         * string/string.h (strerror_r): Use int for BUFLEN arg.
2235
2236         * Makefile (distribute): Add shlib-versions.
2237
2238         * po/Makefile (distribute): Add SYS_libc.pot.
2239
2240         * misc/Makefile (routines): Add lsearch.
2241
2242         * manual/lang.texi (Consistency Checking): Merge in assert_perror defn
2243         and other changes inadvertently made to the obsolete assert.texi.
2244         * manual/assert.texi: File removed.
2245
2246         * mach/mach_syscalls.c: Obsolete file removed.
2247         * mach/mach_syscalls.h: Likewise.
2248         * mach/mach_traps.S: Likewise.
2249         * mach/msg_destroy.c: Likewise.
2250         * mach/vm_page_size.c: Likewise.
2251
2252         * locale/Makefile (distribute): Add weight.h, charset.h.
2253
2254         * Makefile (distribute): Add version.h.
2255
2256         * hurd/Makefile (headers): Add hurd/ioctl.h.
2257         (distribute): Add intr-rpc.d, intr-rpc.h, faultexc.defs.
2258
2259         * csu/Makefile (distribute): Add gmon-start.c.
2260
2261         * Makefile (distribute): Add config.h.in.
2262
2263 Wed Jun  5 22:06:21 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2264
2265         * sysdeps/m68k/dl-machine.h (elf_machine_rela): Fix type of reloc
2266         argument.
2267         [case R_68K_32]: Check for resolve being null.
2268         (RTLD_START): Add missing label.
2269
2270 Fri Jun  7 1996 05:29:32  Ulrich Drepper  <drepper@cygnus.com>
2271
2272         * misc/lsearch.c: New file.  Implementation of lfind and
2273         lsearch functions.
2274
2275         * misc/search.h: Add prototype for functions from tsearch
2276         family with __ prefix.
2277         Correct prototype for lsearch: BASE parameter must not be
2278         const.
2279
2280         * misc/tsearch.c: prepend all global function names with __
2281         and make normal names weak aliases.
2282
2283 Fri Jun  7 00:15:24 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2284
2285         * Make-dist (sysdep_dirs): Skip CVS dirs.
2286
2287 Thu Jun  6 16:12:39 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2288
2289         * malloc/Makefile (distribute): Change malloc/gmalloc-head.c to
2290         gmalloc-head.c.
2291         (malloc/gmalloc.c): Depend on malloc/gmalloc-head.c.
2292         (malloc/Makefile): Do $(make-target-directory) first.
2293         * malloc/gmalloc-head.c: New file.
2294
2295         * po/Makefile (linguas.mo): Don't commit .mo files to cvs.
2296
2297         * hurd/hurdsig.c (_hurd_internal_post_signal): For SIGNO==0 pending
2298         check, deliver a pending blocked signal if its action might be to
2299         ignore.
2300         * sysdeps/mach/hurd/sigaction.c: If new action is SIG_IGN or SIG_DFL
2301         and SIG is pending, wake up signal thread to check us.
2302
2303         * hurd/hurdsig.c (_hurd_internal_post_signal): Don't mark a signal
2304         pending while blocked or stopped when the action is to ignore it.
2305
2306 Thu Jun  6 12:56:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2307
2308         * hurd/hurdsig.c (_hurd_internal_post_signal: resume): Only set
2309         SS_SUSPENDED when the thread is really suspended.
2310
2311         * elf/rtld.c (dl_main): Don't dereference _dl_rtld_map.l_next if null.
2312
2313         * Makerules (headers): Move append of $(sysdep_headers) after include
2314         of sysdep makefiles.
2315
2316         * sysdeps/mach/hurd/errlist.c: File removed.
2317
2318 Thu Jun  6 07:32:14 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2319
2320         * resolv/gethnamaddr.c (struct hstorage): Make NAME field a pointer.
2321         (_gethtbyname2): Remove ALIAS variable.
2322         Initialize NAME field of SELF and TARGET to 0.
2323         Add SELF_NAME_SIZE static variable.
2324         Add loop to call gethostname until the space we allocated is enough.
2325         Use malloced strings instead of fixed size buffers.
2326         <stdlib.h>, <unistd.h>: New includes.
2327         * sysdeps/generic/sys/socket.h (PF_INET6, AF_INET6): New macros.
2328
2329         * sysdeps/mach/hurd/errlist.c (_sys_errlist): Add EILSEQ.
2330         (_sys_nerr): Initialize to 107.
2331         Update _HURD_ERRNOS consistency check.
2332
2333         * stdlib/canonicalize.c (canonicalize): Use pathconf for PATH_MAX,
2334         not sysconf.
2335
2336         * login/login.c [!PATH_MAX] (PATH_MAX): Define to be 1024 if not
2337         already defined.
2338
2339         * sysdeps/mach/hurd/setitimer.c (timer_thread): Supply SIGCODE
2340         argument to __msg_sig_post_request.
2341
2342         * hurd/hurdmalloc.c: Changes to bring in line with the hurd
2343         libthreads/malloc.c:
2344         (more_memory): Use assert_perror instead of MACH_CALL.
2345         "cthread_internals.h": Include removed.
2346         (realloc): Use LOG2_MIN_SIZE.
2347         (LOG2_MIN_SIZE): New macro.
2348         (realloc): Don't bother allocating a new block if the
2349         new size request fits in the old one and doesn't waste any space.
2350         Only free the old block if we successfully got a new one.
2351         [MCHECK] (struct header): New type.
2352         (union header): Only define if !MCHECK.
2353         (HEADER_SIZE, HEADER_NEXT, HEADER_FREE, HEADER_CHECK): New macros.
2354         [MCHECK] (MIN_SIZE): Add correct definition for this case.
2355         (more_memory, malloc, free, realloc): Use above macros, and add
2356         appropiate checks & frobs in MCHECK case.
2357
2358 Thu Jun  6 02:00:42 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2359
2360         * Makerules (distinfo-vars): Don't write constant line to frob sources.
2361         * Make-dist (sources): Append $(elided-routines) and $(extra-libs)
2362         routines.
2363
2364 Tue Jun  4 22:03:02 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2365
2366         * sysdeps/m68k/fpu/__math.h: Define long double versions of
2367         the inline functions.
2368         * sysdeps/m68k/fpu/e_asinl.c, sysdeps/m68k/fpu/e_atanl.c,
2369         sysdeps/m68k/fpu/e_acosl.c, sysdeps/m68k/fpu/e_expl.c,
2370         sysdeps/m68k/fpu/e_fmodl.c, sysdeps/m68k/fpu/e_log10l.c,
2371         sysdeps/m68k/fpu/e_logl.c, sysdeps/m68k/fpu/e_powl.c,
2372         sysdeps/m68k/fpu/e_remainderl.c, sysdeps/m68k/fpu/e_scalbl.c,
2373         sysdeps/m68k/fpu/e_sinhl.c, sysdeps/m68k/fpu/e_sqrtl.c,
2374         sysdeps/m68k/fpu/k_cosl.c, sysdeps/m68k/fpu/k_sinl.c,
2375         sysdeps/m68k/fpu/k_tanl.c, sysdeps/m68k/fpu/s_atanl.c,
2376         sysdeps/m68k/fpu/s_ceill.c, sysdeps/m68k/fpu/s_cosl.c,
2377         sysdeps/m68k/fpu/s_expm1l.c, sysdeps/m68k/fpu/s_fabsl.c,
2378         sysdeps/m68k/fpu/s_finitel.c, sysdeps/m68k/fpu/s_floorl.c,
2379         sysdeps/m68k/fpu/s_frexpl.c, sysdeps/m68k/fpu/s_ilogbl.c,
2380         sysdeps/m68k/fpu/s_isinfl.c, sysdeps/m68k/fpu/s_isnanl.c,
2381         sysdeps/m68k/fpu/s_ldexpl.c, sysdeps/m68k/fpu/s_log1pl.c,
2382         sysdeps/m68k/fpu/s_logbl.c, sysdeps/m68k/fpu/s_modfl.c,
2383         sysdeps/m68k/fpu/s_rintl.c, sysdeps/m68k/fpu/s_scalbnl.c,
2384         sysdeps/m68k/fpu/s_significandl.c, sysdeps/m68k/fpu/s_sinl.c,
2385         sysdeps/m68k/fpu/e_atanhl.c, sysdeps/m68k/fpu/e_coshl.c: New files.
2386
2387         * sysdeps/m68k/fpu/e_acos.c, sysdeps/m68k/fpu/e_fmod.c,
2388         sysdeps/m68k/fpu/k_cos.c, sysdeps/m68k/fpu/k_sin.c,
2389         sysdeps/m68k/fpu/k_tan.c, sysdeps/m68k/fpu/s_atan.c,
2390         sysdeps/m68k/fpu/s_frexp.c, sysdeps/m68k/fpu/s_ilogb.c,
2391         sysdeps/m68k/fpu/s_isinf.c, sysdeps/m68k/fpu/s_ldexp.c,
2392         sysdeps/m68k/fpu/s_modf.c: Define generic functions using FUNC and
2393         float_type with appropriate defaults.
2394
2395         * sysdeps/m68k/fpu/e_acosf.c, sysdeps/m68k/fpu/e_fmodf.c,
2396         sysdeps/m68k/fpu/k_cosf.c, sysdeps/m68k/fpu/k_sinf.c,
2397         sysdeps/m68k/fpu/k_tanf.c, sysdeps/m68k/fpu/s_atanf.c,
2398         sysdeps/m68k/fpu/s_frexpf.c, sysdeps/m68k/fpu/s_ilogbf.c,
2399         sysdeps/m68k/fpu/s_isinff.c, sysdeps/m68k/fpu/s_ldexpf.c,
2400         sysdeps/m68k/fpu/s_modff.c: Include the corresponding double
2401         versions with appropriate definitions to get float functions,
2402         instead of defining them directly.
2403
2404         * sysdeps/m68k/fpu/acos.c: File removed.
2405         * sysdeps/m68k/fpu/asin.c: File removed.
2406         * sysdeps/m68k/fpu/atan.c: File removed.
2407         * sysdeps/m68k/fpu/atan2.c: File removed.
2408         * sysdeps/m68k/fpu/atanh.c: File removed.
2409         * sysdeps/m68k/fpu/ceil.c: File removed.
2410         * sysdeps/m68k/fpu/cos.c: File removed.
2411         * sysdeps/m68k/fpu/cosh.c: File removed.
2412         * sysdeps/m68k/fpu/drem.c: File removed.
2413         * sysdeps/m68k/fpu/exp.c: File removed.
2414         * sysdeps/m68k/fpu/expm1.c: File removed.
2415         * sysdeps/m68k/fpu/fabs.c: File removed.
2416         * sysdeps/m68k/fpu/fl.h: File removed.
2417         * sysdeps/m68k/fpu/floor.c: File removed.
2418         * sysdeps/m68k/fpu/fmod.c: File removed.
2419         * sysdeps/m68k/fpu/frexp.c: File removed.
2420         * sysdeps/m68k/fpu/isinf.c: File removed.
2421         * sysdeps/m68k/fpu/isinfl.c: File removed.
2422         * sysdeps/m68k/fpu/isnan.c: File removed.
2423         * sysdeps/m68k/fpu/isnanl.c: File removed.
2424         * sysdeps/m68k/fpu/ldexp.c: File removed.
2425         * sysdeps/m68k/fpu/log.c: File removed.
2426         * sysdeps/m68k/fpu/log10.c: File removed.
2427         * sysdeps/m68k/fpu/log1p.c: File removed.
2428         * sysdeps/m68k/fpu/logb.c: File removed.
2429         * sysdeps/m68k/fpu/pow.c: File removed.
2430         * sysdeps/m68k/fpu/rint.c: File removed.
2431         * sysdeps/m68k/fpu/sin.c: File removed.
2432         * sysdeps/m68k/fpu/sinh.c: File removed.
2433         * sysdeps/m68k/fpu/sqrt.c: File removed.
2434         * sysdeps/m68k/fpu/tan.c: File removed.
2435         * sysdeps/m68k/fpu/tanh.c: File removed.
2436
2437 Thu Jun  6 00:02:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2438
2439         * sysdeps/unix/sysv/linux/syscalls.list: Add select (the syscall name
2440         is _newselect).
2441         * sysdeps/unix/sysv/linux/select.S: File removed.
2442
2443         * sysdeps/unix/sysv/linux/m68k/select.S: File removed; obsolete with
2444         current kernels, generic linux version is fine.
2445
2446         * locale/Makefile: Add vpath for %.gperf to programs.
2447
2448         * Make-dist (+tsrcs): Variable removed.
2449         (dist): Process $^ here instead of using $(+tsrcs).
2450
2451         * sysdeps/unix/sysv/linux/Makefile (install-others): Don't set.
2452         ($(includedir)/sys/syscall.h): Target removed.
2453         (sysdep_headers): Add syscall-list.h.
2454         ($(objpfx)syscall-%.[dh]): New rule to build syscall-list.[dh].
2455         (generated): Add those.
2456         * sysdeps/unix/sysv/linux/syscall.h: Include <syscall-list.h>.
2457
2458 Wed Jun  5 15:57:28 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2459
2460         * misc/sys/syscall.h: New file.
2461         * misc/Makefile (headers): Add sys/syscall.h.
2462
2463         * time/tzfile.h, time/private.h, time/zdump.c, time/zic.c,
2464         time/africa, time/asia, time/australasia, time/europe,
2465         time/northamerica, time/southamerica: Updated from ADO 96h.
2466
2467         * Make-dist (all-headers): Filter $(sysdep_headers) out of $(headers).
2468         (try-sysdeps, +sysdep-names): Check sysdeps/libm-ieee754 too.
2469
2470         * Makerules (distinfo-vars): Add sysdep_headers.
2471         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Append to
2472         this instead of $(headers).
2473         * sysdeps/unix/sysv/linux/alpha/Makefile: Likewise.
2474         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
2475
2476         * Make-dist [subdirs-dirs]: Don't prefix $(subdir-dirs) with
2477         $(subdir); we are already there.
2478
2479         * sysdeps/unix/sysv/sysv4/solaris2/sparc/Dist: Removed.
2480
2481         * mach/Machrules: Undo last change.
2482         (mach-generated): List .uh and .__h files only for $(user-interfaces),
2483         not for each .h in $(interface-headers); server-interfaces have no .uh
2484         or .__h files.
2485
2486 Wed Jun  5 15:42:51 1996  Miles Bader  <miles@gnu.ai.mit.edu>
2487
2488         * mach/Machrules (%_server.uh, %_server.__h): New rules, so that the
2489         corrsponding .defs file with without the `_server' will be used.
2490
2491         * mach/Makefile (mach/mach_interface.defs): Renamed from
2492         mach_interface.defs.
2493         (mach/memory_object_user.defs): New variable.
2494
2495 Wed Jun  5 15:10:58 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2496
2497         * Make-dist [subdir-dirs]: Set vpath for %, not just %.c.
2498
2499         * locale/Makefile (subdir-dirs): New variable.
2500
2501 Wed Jun  5 00:01:19 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2502
2503         * Makerules (distinfo-vars): Add sysdep_routines.
2504
2505         * mach/Machrules (include-%.defs): New canned sequence.
2506         Change all uses of `#include <$*.defs>' in cmds to use it.
2507         * mach/Makefile (mach_interface.defs): New variable, set to mach.defs.
2508
2509         * sysdeps/i386/dl-machine.h (elf_machine_rel): Handle RESOLVE being
2510         null in all cases but R_386_COPY.
2511         (elf_machine_rel):
2512
2513 Wed Jun  5 00:01:19 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2514
2515         * sysdeps/unix/bsd/ultrix4/mips/Dist: Updated.
2516         * sysdeps/unix/bsd/ultrix4/Dist: Removed.
2517         * sysdeps/unix/sysv/sysv4/Dist: Updated.
2518         * sysdeps/unix/sysv/sco3.2.4/Dist: Removed.
2519         * sysdeps/unix/sysv/irix4/Dist: Updated.
2520         * sysdeps/unix/sysv/linux/i386/Dist: Removed.
2521         * sysdeps/unix/sysv/Dist: Updated.
2522         * sysdeps/unix/bsd/sun/sunos4/Dist: Removed.
2523         * sysdeps/unix/bsd/sony/newsos4/Dist: Removed.
2524         * sysdeps/gnu/Dist: New file.
2525         * sysdeps/alpha/Dist: Updated.
2526         * sysdeps/mach/hurd/Dist: Updated.
2527
2528         * Make-dist [subdir-dirs]: Set a vpath for %.c.
2529
2530         * Make-dist (README): Fix typo in cvs cmd.
2531
2532         * elf/dl-lookup.c (_dl_lookup_symbol): Fix typos in last change.
2533         Comment out ref to nonexistent _dl_close.
2534
2535 Tue Jun  4 21:01:20 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2536
2537         * math/Makefile (libm-support, libm-calls): New variables.
2538         (libm-routines): Construct this from those.
2539         (calls): New variable.
2540         (routines): Construct this from it.
2541
2542         * resolv/res_debug.c: Add missing #include <ctype.h>.
2543
2544         * sysdeps/unix/getlogin.c: Must pass struct utmp ptr to getutline_r.
2545         * sysdeps/unix/getlogin_r.c: Likewise.
2546
2547         * sysdeps/libm-ieee754/w_hypotl.c: Fix typo.
2548
2549         * sysdeps/libm-ieee754/w_cabsl.c: __cabsl_complex -> __cabs_complexl
2550
2551         * math/Makefile (long-m-routines): Define recursive variable as
2552         $(long-m-$(long-double-fcts)).
2553         (long-m-yes): Put list of routines here.
2554         (long-c-routines, long-c-yes): Likewise.
2555
2556         * sysdeps/unix/sysv/linux/schedbits.h: File removed.
2557
2558         * sysdeps/i386/Makefile (long-double-fcts): New variable, set to yes.
2559         * sysdeps/m68k/Makefile: Likewise.
2560
2561         * math/Makefile [$(long-double-fcts)!=yes] (CPPFLAGS): Append
2562         -DNO_LONG_DOUBLE.
2563
2564         * sysdeps/mach/hurd/getlogin_r.c: New file.
2565
2566 Wed Jun  5 02:11:30 1996  Ulrich Drepper  <drepper@cygnus.com>
2567
2568         * io/Makefile (routines): Add ttyname_r.
2569
2570         * resolv/res_debug.c, resolv/resolv.h: Update from bind-4.3.4-T4A.
2571
2572         * sysdeps/libm-i387/e_asinl.S, sysdeps/libm-i387/e_atan2l.S,
2573         sysdeps/libm-i387/e_expl.S, sysdeps/libm-i387/e_fmodl.S,
2574         sysdeps/libm-i387/e_log10l.S, sysdeps/libm-i387/e_logl.S,
2575         sysdeps/libm-i387/e_remainderl.S, sysdeps/libm-i387/e_scalbl.S,
2576         sysdeps/libm-i387/e_sqrtl.S, sysdeps/libm-i387/s_atanl.S,
2577         sysdeps/libm-i387/s_cosl.S, sysdeps/libm-i387/s_ilogbl.S,
2578         sysdeps/libm-i387/s_log1pl.S, sysdeps/libm-i387/s_logbl.S,
2579         sysdeps/libm-i387/s_scalbnl.S, sysdeps/libm-i387/s_sinl.S,
2580         sysdeps/libm-i387/s_tanl.S: New files.  i387 assembler versions
2581         of `long double' math functions.
2582
2583         * sysdeps/libm-ieee754/k_standard.c: Add handling for errors
2584         in long double functions.
2585
2586         * sysdeps/libm-ieee754/s_ilogbl.c, sysdeps/libm-ieee754/s_logbl.c,
2587         sysdeps/libm-ieee754/s_modfl.c:  New files.  Generic versions
2588         of `long double' math functions.
2589
2590         * sysdeps/libm-ieee754/s_isinf.c [NO_LONG_DOUBLE]: Add string
2591         alias for __isinfl.
2592
2593         * sysdeps/libm-ieee754/w_acoshl.c, sysdeps/libm-ieee754/w_acosl.c,
2594         sysdeps/libm-ieee754/w_asinl.c, sysdeps/libm-ieee754/w_atan2l.c,
2595         sysdeps/libm-ieee754/w_atanhl.c, sysdeps/libm-ieee754/w_cabsl.c,
2596         sysdeps/libm-ieee754/w_coshl.c, sysdeps/libm-ieee754/w_dreml.c,
2597         sysdeps/libm-ieee754/w_expl.c, sysdeps/libm-ieee754/w_fmodl.c,
2598         sysdeps/libm-ieee754/w_gammal.c, sysdeps/libm-ieee754/w_gammal_r.c,
2599         sysdeps/libm-ieee754/w_hypotl.c, sysdeps/libm-ieee754/w_j0l.c,
2600         sysdeps/libm-ieee754/w_j1l.c, sysdeps/libm-ieee754/w_jnl.c,
2601         sysdeps/libm-ieee754/w_lgammal.c, sysdeps/libm-ieee754/w_lgammal_r.c,
2602         sysdeps/libm-ieee754/w_log10l.c, sysdeps/libm-ieee754/w_logl.c,
2603         sysdeps/libm-ieee754/w_powl.c, sysdeps/libm-ieee754/w_remainderl.c,
2604         sysdeps/libm-ieee754/w_scalbl.c, sysdeps/libm-ieee754/w_sinhl.c,
2605         sysdeps/libm-ieee754/w_sqrtl.c: New files.  Wrapper functions
2606         around long double function implementations.
2607
2608         * sysdeps/posix/ttyname_r.c (ttyname_r): Use _D_EXACT_NAMLEN
2609         to determine length of directory entry name.
2610
2611         * posix/Makefile (routines): Add getlogin_r.
2612         * posix/unistd.h: Add prototype for getlogin_r.
2613         * sysdeps/stub/getlogin_r.c: New file.  Reentrant version of
2614         getlogin function, specified in P1003.1c/D6.  Stub version.
2615         * sysdeps/unix/getlogin.c (getlogin): Use ttyname_r instead of
2616         ttyname.  This avoids saving and restoring the old content.
2617         Also use setutent_r, getutline_r and endutent_r instead of
2618         accing UTMP file directly.
2619         * sysdeps/unix/getlogin_r.c: New file.  Reentrant version of
2620         getlogin function, specified in P1003.1c/D6.
2621
2622 Tue Jun  4 20:10:09 1996  J.T. Conklin  <jtc@cygnus.com>
2623
2624         * sysdeps/libm-i387/s_finitef.S: Fix mask for exponent.
2625
2626 Tue Jun  4 18:57:57 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2627
2628         * elf/dl-lookup.c (_dl_lookup_symbol): Grok magical undefined symbols
2629         _GNU_libc_dl_{open,close,symbol} and resolve them to dl functions.
2630
2631         * elf/rtld.c (rtld_map): Renamed to _dl_rtld_map, made global.
2632         * elf/link.h: Declare _dl_rtld_map.
2633
2634         * elf/dl-lookup.c (_dl_symbol_value): New function.
2635         * elf/link.h: Declare it.
2636
2637         * elf/dladdr.c: Remove #include <setjmp.h>, we don't use it.
2638
2639         * shlib-versions: Set libdl=2.
2640
2641         * elf/dl-deps.c (_dl_map_object_deps): Use a linked list of alloca'd
2642         elements and then scan it to fill the single malloc'd array, instead
2643         of using realloc to grow the array in the first pass.  _dl_map_object
2644         may do some mallocs that break our stream of reallocs, and the minimal
2645         realloc can't handle that.
2646
2647         * elf/dl-init.c (_dl_init_next): Take argument, link_map whose
2648         searchlist describes the piece of the DT_NEEDED graph to be
2649         initialized.
2650         * elf/link.h: Update prototype.
2651         * sysdeps/i386/dl-machine.h (RTLD_START): Pass _dl_loaded as argument
2652         to _dl_init_next.
2653         * sysdeps/m68k/dl-machine.h: Likewise.
2654         * elf/dl-deps.c (_dl_open): Pass new object as arg to _dl_init_next.
2655
2656         * elf/link.h (struct link_map): Add `l_reserved' member, soaking up
2657         extra bits in last byte.
2658         * elf/dl-deps.c (_dl_map_object_deps): Use that for mark bit to avoid
2659         putting dup elts in search list.
2660
2661         * elf/dlclose.c: Use MAP->l_searchlist to find deps to close.
2662
2663         * elf/dlsym.c: Don't tweak linked list.  Scope array given to
2664         _dl_lookup_symbol does the right thing.
2665
2666         * elf/Makefile (subdir_lib): Change this target to lib-noranlib.
2667         (lib-noranlib): Depend on on $(extra-objs).
2668
2669         * errno.h: Move __END_DECLS out of #ifdef's so it matches
2670         __BEGIN_DECLS.
2671
2672 Tue Jun  4 02:25:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2673
2674         * stdio-common/vfprintf.c [USE_IN_LIBIO] (size_t): Don't define as
2675         macro.  _IO_size_t is just an alias for the real size_t anyway.
2676
2677         * elf/Makefile (libdl-routines): Add dladdr.
2678         * elf/dladdr.c: New file.
2679         * elf/dlfcn.h (Dl_info): New typedef.
2680         (dladdr): Declare it.
2681
2682         * sysdeps/libm-i387/s_finite.S: Use `setne' instead of `setnel'.
2683
2684         * intl/l10nflist.c: Fix conditional on #include <argz.h>.
2685
2686         * libio/stdio.h (FOPEN_MAX, FILENAME_MAX, TMP_MAX, L_tmpnam): Macros
2687         removed.  Instead, include <stdio_lim.h>.
2688
2689         * libio/_G_config.h: New file.
2690         * libio/Makefile (headers): Add _G_config.h.
2691
2692         * MakeTAGS (po/errlist.pot): Extract from sysdeps/gnu/errlist.c.
2693
2694         * sysdeps/unix/sysv/linux/gnu/types.h (__KERNEL_STRICT_NAMES): Define
2695         this macro too; current Linux kernels test that instead of
2696         _LINUX_TYPES_DONT_EXPORT.
2697
2698         * elf/linux-compat.c (_init): Pass reloc_addr arg to _dl_lookup_symbol.
2699
2700         * elf/dl-lookup.c (_dl_lookup_symbol): Use l_searchlist.
2701
2702         * elf/dl-deps.c: New file.
2703         * elf/Makefile (rtld-routines): Add dl-deps.
2704         * elf/link.h: Declare _dl_map_object_deps, _dl_open.
2705         * elf/rtld.c (dl_main): Use _dl_map_object_deps.
2706         * elf/dlopen.c: Use _dl_open.
2707
2708         * elf/rtld.c (dl_main): Remove BEFORE_RTLD variable and list
2709         frobnication based on its value.  Detach RTLD_MAP from the chain if
2710         its l_opencount is zero after loading deps.
2711
2712         * elf/dlfcn.h (RTLD_BINDING_MASK): New macro.
2713
2714         * elf/link.h (struct link_map): Replace l_deps_loaded flag member with
2715         `struct link_map **l_searchlist' and `unsigned int l_nsearchlist'.
2716         * elf/dl-lookup.c (_dl_lookup_symbol): Make SYMBOL_SCOPE arg an array
2717         of two link_map ptrs.  Search the maps in the l_searchlist of each
2718         elt that is not null.
2719         * elf/dl-reloc.c (_dl_relocate_object): Pass proper SCOPE array.
2720         * elf/dl-runtime.c: Likewise.
2721         * elf/dlsym.c: Likewise.
2722         * elf/rtld.c (dl_main): Likewise.
2723
2724         * elf/dl-minimal.c (realloc): Support realloc of the block most
2725         recently returned by the minimal malloc.
2726
2727 Tue Jun  4 00:16:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2728
2729         * sysdeps/gnu/errlist.awk: Produce N_("..."), not _N("...").
2730
2731         * intl: Updated from gettext-0.10.13.
2732         * intl/localealias.c, intl/dcgettext.c [_LIBC]: Define HAVE_ALLOCA.
2733
2734         * signal/siggetmask.c: New file.  Wrapper around sigblock with
2735         link_warning about obsolescence.
2736         * signal/Makefile (routines): Add siggetmask.
2737
2738         * sysdeps/gnu/errlist.awk: New file, adapted from ...
2739         * sysdeps/mach/hurd/errlist.awk: File removed, above file replaces it.
2740         * sysdeps/mach/hurd/Makefile (errlist.c): Target removed.
2741         * sysdeps/gnu/Makefile: New file.
2742         (sysdeps/gnu/errlist.c): Make the errlist.c generation rule into this.
2743
2744 Mon Jun  3 21:03:54 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2745
2746         * manual/errno.texi (Error Codes): Add placeholder items for missing
2747         Linux/i386 errno codes, with perror text but no documentation.
2748         Some existing perror texts changed.
2749
2750         * malloc/mcheck.c (freehook, reallochook): Handle null pointer args.
2751
2752         * hurd/hurdsig.c (_hurd_internal_post_signal): When setting ACT to
2753         `ignore, resume the thread if SS_SUSPENDED, regardless of old action.
2754
2755 Sun Jun  2 20:14:30 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
2756
2757         * locale/programs/linereader.c (lr_open): Don't pass NULL to
2758         xstrdup; fix memory leak.
2759         (lr_close): Fix memory leak.
2760
2761 Mon Jun  3 15:58:22 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
2762
2763         * hurd/hurdsig.c (_hurd_internal_post_signal): When turning the action
2764         for a HANDLE signal to IGNORE because the signal is blocked, clean
2765         up any pending suspension left over from a call to resume.
2766
2767 Mon Jun  3 00:30:35 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2768
2769         * elf/dl-lookup.c (_dl_lookup_symbol): Take new arg RELOC_ADDR and
2770         don't allow a defn resolving to that address.
2771
2772         * elf/link.h: Update prototype and comment.
2773         * elf/dl-runtime.c (fixup): Define local `resolve' function and pass
2774         it to elf_machine_relplt.
2775         * elf/dl-reloc.c (_dl_relocate_object: resolve): Take new arg
2776         RELOC_ADDR and pass it through to _dl_lookup_symbol.
2777         * elf/do-rel.h (elf_dynamic_do_rel): Pass RESOLVE to elf_machine_rel
2778         instead of calling it ourselves and passing its results.
2779         (elf_dynamic_do_rel): RESOLVE fn takes new arg RELOC_ADDR.
2780         * elf/rtld.c (dl_main): Pass 0 for RELOC_ADDR to _dl_lookup_symbol.
2781         * sysdeps/i386/dl-machine.h (elf_machine_rel): Remove SYM_LOADADDR
2782         arg.  Add RESOLVE function ptr arg.  Call *RESOLVE as necessary.
2783         * sysdeps/m68k/dl-machine.h (elf_machine_rela): Likewise.
2784         * sysdeps/stub/dl-machine.h: Likewise.
2785
2786 Sun Jun  2 14:56:49 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2787
2788         * csu/initfini.c (_fini): Add extern decl for i_am_not_a_leaf.
2789
2790         * elf/dlfcn.h (dl_open_mode): Enumerated type removed.
2791         (RTLD_LAZY, RTLD_NOW): Define these as macros instead.
2792         (RTLD_GLOBAL): New macro.
2793         (dlopen): Take arg of type int instead of dl_open_mode.
2794         * elf/dlopen.c: Likewise.
2795
2796         * math/math.h (_Mldbl): New macro, either produces L suffix or not.
2797         (M_*): Use it for these constants.
2798
2799         * elf/dl-lookup.c (_dl_lookup_symbol): Arg NOSELF renamed to NOPLT.
2800         Reject SHN_UNDEF defns iff NOPLT is nonzero.
2801         * elf/link.h (_dl_lookup_symbol): Update prototype and comment.
2802         * elf/dl-runtime.c (fixup): Pass 1 to _dl_lookup_symbol for NOPLT.
2803         * elf/dlsym.c (dlsym): Pass 0.
2804         * elf/rtld.c (dl_main): Likewise.
2805         * elf/dl-reloc.c (_dl_relocate_object: resolve): Second arg R_OFFSET
2806         replaced with NOPLT flag.  Pass it through to _dl_lookup_symbol.
2807         * elf/do-rel.h (elf_dynamic_do_rel): Update prototype of RESOLVE arg.
2808         Pass `elf_machine_pltrel_p (R->r_type)' result as NOPLT flag value.
2809         * sysdeps/i386/dl-machine.h (elf_machine_pltrel_p): New macro.
2810         * sysdeps/m68k/dl-machine.h (elf_machine_pltrel_p): Likewise.
2811         * sysdeps/stub/dl-machine.h (elf_machine_pltrel_p): Likewise.
2812
2813         * login/pututline_r.c: Fix typo in sizeof for DATA_TMP alloca.
2814
2815         * sysdeps/generic/gnu/types.h (__clock_t): New type.
2816
2817 Wed May 29 00:57:37 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2818
2819         * sysdeps/unix/sysv/linux/gnu/types.h (__clock_t, __fsid_t): Define
2820         using kernel types.
2821         * time/time.h (clock_t): Include <gnu/types.h> and define using
2822         __clock_t.
2823
2824         * time/Makefile (tests): Add test-tz.
2825
2826         * time/test-tz.c: New test.
2827
2828         * time/clocktest.c: Rewrite to test more meaningfully.
2829
2830         * sysdeps/unix/sysv/linux/syscalls.list: Add bdflush,
2831         create_module, delete_module, get_kernel_syms, init_module,
2832         klogctl.
2833
2834         * sysdeps/unix/sysv/linux/sys/param.h (MAXSYMLINKS): Define as 5
2835         instead of SYMLOOP_MAX, which is nowhere to be found.
2836
2837         * sysdeps/unix/sysv/linux/sys/msq_buf.h,
2838         sysdeps/unix/sysv/linux/sys/sem_buf.h,
2839         sysdeps/unix/sysv/linux/sys/shm_buf.h [__USE_MISC]: Add more
2840         control ops and datastructures.
2841
2842         * sysdeps/unix/sysv/linux/sys/io.h: New file declaring low-level
2843         I/O related functions.
2844
2845         * sysdeps/unix/sysv/linux/sys/kdaemon.h: New file declaring kernel
2846         daemon related functions/operations.
2847
2848         * sysdeps/unix/sysv/linux/sys/klog.h: New file declaring kernel
2849         logging related functions/operations.
2850
2851         * sysdeps/unix/sysv/linux/sys/module.h: New file declaring kernel
2852         module related functions/operations.
2853
2854         * sysdeps/unix/sysv/linux/speed.c: Only do "mention this twice" hack
2855         for non-Alpha based Linux systems.
2856
2857         * sysdeps/unix/sysv/linux/alpha/speed.c: Remove.
2858
2859         * sysdeps/unix/sysv/linux/Makefile (headers): Add sys/module.h,
2860         sys/io.h, sys/klog.h, and sys/kdaemon.h.
2861
2862         * sysdeps/unix/sysdep.h (END): Define empty END macro for
2863         platforms that don't need some sort of end directive at the
2864         end of functions.
2865
2866         * sysdeps/unix/make-syscalls.sh: Emit END($strong) at end of
2867         syscall wrapper to allow correct generation of debugging
2868         information.
2869
2870         * sysdeps/unix/alpha/sysdep.h (END): Redefine to use .end
2871         directive for both ELF and ECOFF.
2872         (ret): Delete macro.  It was a dangerous macro and unnecessary
2873         since the Alpha assemblers recognizes "ret" as a macro themselves.
2874
2875         * sysdeps/gnu/utmpbits.h (struct utmp): Move ut_tv behind
2876         ut_session to guarantee long alignment.  This is important for
2877         Linux/Alpha since ut_tv.tv_sec is 32 bits and time_t is 64 bits.
2878         This will all get cleaned up as programs start to use ut_tv
2879         instead ut_time.
2880
2881         * sysdeps/alpha/divrem.h: Include <sysdep.h> instead of <*/regdef.h>.
2882
2883         * sysdeps/alpha/bsd-_setjmp.S (setjmp): Renamed entry point to
2884         _setjmp.
2885
2886         * sysdeps/alpha/_mcount.S, sysdeps/alpha/bb_init_func.S,
2887         sysdeps/alpha/bsd-_setjmp.S, sysdeps/alpha/bsd-setjmp.S,
2888         sysdeps/alpha/copysign.S, sysdeps/alpha/divrem.h,
2889         sysdeps/alpha/fabs.S, sysdeps/alpha/ffs.S, sysdeps/alpha/htonl.S,
2890         sysdeps/alpha/htons.S, sysdeps/alpha/memchr.S,
2891         sysdeps/alpha/setjmp.S, sysdeps/alpha/strlen.S,
2892         sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S,
2893         sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S,
2894         sysdeps/unix/sysv/linux/alpha/llseek.S,
2895         sysdeps/unix/sysv/linux/alpha/pipe.S,
2896         sysdeps/unix/sysv/linux/alpha/sigsuspend.S,
2897         sysdeps/unix/sysv/linux/alpha/sysdep.S: Use END macro instead of
2898         .end directive.
2899
2900         * csu/initfini.c (_fini): Tell gcc that _fini is not a leaf
2901         function by having it contain a dummy function call.
2902
2903         * configure.in (config_machine): Don't make ELF the default for
2904         Linux/Alpha just yet (use --with-elf instead).
2905         (.init/.fini check): Generate .text to ensure function start and
2906         end are in same section.
2907
2908         * sysdeps/unix/bsd/osf/alpha/brk.S,
2909         sysdeps/unix/sysv/linux/alpha/brk.S (__curbrk): Store the entire
2910         break value, not just the low 32 bits to accomodate large
2911         memories.
2912
2913 Tue May 28 10:46:04 1996  Richard Henderson  <rth@tamu.edu>
2914
2915         * sysdeps/unix/sysv/linux/alpha/brk.S: Rather than attempt to
2916         dynamically resolve _end for initializing __curbrk, support the
2917         brk(0) query idiom.
2918
2919         * sysdeps/alpha/bb_init_func.S: Don't make `init' an external symbol.
2920
2921         * sysdeps/alpha/bsd-_setjmp.S: The function is _setjmp not setjmp.
2922
2923 Sun May 26 22:17:38 1996  Richard Henderson  <rth@tamu.edu>
2924
2925         * stdlib/lcong48_r.c, stdlib/seed48_r.c, stdlib/strtod.c,
2926         stdlib/strtol.c: Include <string.h> for mem* and str* fns used.
2927
2928 Thu May 23 02:15:56 1996  David Mosberger-Tang  <davidm@azstarnet.com>
2929
2930         * sysdeps/unix/sysv/linux/Makefile (headers): Add sys/io.h,
2931         sys/klog.h, and sys/kdaemon.h.
2932
2933         * sysdeps/unix/sysv/linux/sys/io.h: New file.
2934         * sysdeps/unix/sysv/linux/sys/klog.h: Ditto.
2935         * sysdeps/unix/sysv/linux/sys/kdaemon.h: Ditto.
2936
2937         * sysdeps/unix/alpha/sysdep.h (ret): Remove macro.  It is
2938         dangerous and unnecessary since both OSF/1 as and gas define "ret"
2939         as a pseudo-instruction.
2940
2941 Sat Jun  1 17:18:21 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2942
2943         * time/tzset.c (__tzset): Clear tz_rules name pointers after freeing
2944         them.  Bug found by David Mosberger-Tang.
2945
2946         * sysdeps/posix/tempname.c (__stdio_gen_tempname): Use __ptr_t instead
2947         of PTR.
2948
2949         * extra-lib.mk (extra-objs): Use patsubst intead of $(A:=B) syntax
2950         to work around Make bug when A contains var ref.
2951
2952 Fri May 31 18:27:52 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2953
2954         * string/string.h [__USE_MISC]: Declare basename; OSF/1 puts it here.
2955
2956         * sysdeps/unix/sysv/linux/syscalls.list (getpgid, setpgid): Define __
2957         strong names and [gs]etpgid as weak aliases.
2958
2959 Thu May 30 11:24:05 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
2960
2961         * math/math_private.h (GET_LDOUBLE_EXP): Add missing backslash.
2962
2963         * po/header.pot: Replace with exact boilerplate pinard dictates.
2964
2965         * sysdeps/i386/strtok.S (Lillegal_argument): Remove this code to set
2966         errno and the check that jumped to it.
2967
2968         * sysdeps/mach/hurd/Makefile (errnos.d): Use $(sed-remove-objpfx).
2969
2970 Thu May 30 03:21:57 1996  Ulrich Drepper  <drepper@cygnus.com>
2971
2972         * FAQ: Document need of gperf program for developers.
2973
2974         * elf/elf.h: Fix typos in comments.
2975
2976         * libio/stdio.h [!__STRICT_ANSI__ || _POSIX_SOURCE]: Add
2977         prototypes for `ctermid' and `cuserid'.
2978
2979         * locale/programs/locale.c: Switch to user selected locale
2980         before printing variables.
2981
2982         * math/Makefile [$(long-double-fcts)==yes]: Define long-m-routines
2983         and long-c-routines.  Only if the `long double' data type is
2984         available we need to compile the functions.
2985         (libm-routines): Add $(long-m-routines).
2986         (routines): Remove isinfl, isnanl.  Use new file s_isinfl and
2987         s_isnanl instead if `long double' is available.
2988
2989         * math/math.h: Include <mathcalls.h> again to define `long double'
2990         functions.
2991
2992         * math/math_private.h: Define data types, prototypes and access
2993         macros for `long double'.
2994
2995         * stdlib/stdlib.h: Add prototypes for `strtoll' and `strtoull'.
2996         [GCC2 && OPTIMIZE]: Define strto{,u}ll as inline function which
2997         calls __strto{,u}q_internal.
2998
2999         * stdlib/strfmon.c: Replace PTR by `void *'.
3000
3001         * stdlib/strtoq.c: Define strtoll as weak alias.
3002         * stdlib/strtouq.c: Define strtoull as weak alias.
3003
3004         * string/tester.c: Correct `strsep' test.
3005
3006         * sysdeps/generic/strsep.c: Make compatible with BSD version.
3007         Trailing characters of skip set are not skipped.  In this case
3008         empty tokens are returned.
3009
3010         * sysdeps/i386/isinfl.c, sysdeps/i386/isnanl.c,
3011         sysdeps/ieee754/isinf.c, sysdeps/ieee754/isinfl.c,
3012         sysdeps/ieee754/isnan.c, sysdeps/ieee754/isnanl.c: Removed.  We
3013         now use the versions part of libm.
3014
3015         * sysdeps/i386/strsep.S: Removed.  Generic C version is of
3016         similar speed.
3017         * sysdeps/i386/strtok.S: Remove support for `strsep'.
3018
3019         * sysdeps/libm-i387/e_acosl.S, sysdeps/libm-i387/s_ceill.S,
3020         sysdeps/libm-i387/s_copysignl.S, sysdeps/libm-i387/s_finitel.S,
3021         sysdeps/libm-i387/s_floorl.S, sysdeps/libm-i387/s_isinfl.c,
3022         sysdeps/libm-i387/s_isnanl.c, sysdeps/libm-i387/s_nextafterl.c,
3023         sysdeps/libm-i387/s_rintl.S, sysdeps/libm-i387/s_significandl.S:
3024         New i387 specific math functions implementing `long double'
3025         versions.
3026
3027         * sysdeps/libm-ieee754/s_ceill.c,
3028         sysdeps/libm-ieee754/s_copysignl.c,
3029         sysdeps/libm-ieee754/s_fabsl.c, sysdeps/libm-ieee754/s_finitel.c,
3030         sysdeps/libm-ieee754/s_floorl.c, sysdeps/libm-ieee754/s_isinfl.c,
3031         sysdeps/libm-ieee754/s_isnanl.c,
3032         sysdeps/libm-ieee754/s_nextafterl.c,
3033         sysdeps/libm-ieee754/s_rintl.c, sysdeps/libm-ieee754/s_scalbnl.c,
3034         sysdeps/libm-ieee754/s_significandl.c: New generic `long double'
3035         versions of libm functions.
3036
3037         * sysdeps/libm-i387/e_exp.S: Add a few comments to explain the
3038         Intel FPU nonsense.
3039
3040         * sysdeps/libm-i387/s_ceil.S, sysdeps/libm-i387/s_ceilf.S,
3041         sysdeps/libm-i387/s_floor.S, sysdeps/libm-i387/s_floorf.S: Correct
3042         handling of local variables.  The old version created a stack
3043         frame but stored the values outside.
3044
3045         * sysdeps/libm-ieee754/s_isinf.c, sysdeps/libm-ieee754/s_isnan.c
3046         [!NO_LONG_DOUBLE]: Define alias with `long double' versions name.
3047
3048 Wed May 29 12:53:10 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3049
3050         * login/pututline_r.c: Include sys/stat.h.  Fix typos.
3051
3052         * version.h (VERSION): Set to 1.90.
3053
3054         * Makerules (distinfo-vars): Write extra-libs and *-routines for each
3055         of its elts.
3056         * MakeTAGS (sources): Add those sources.
3057
3058         * MakeTAGS (all-sources): Add $(others:=.c) and $(tests:=.c).
3059
3060 Wed May 29 08:53:08 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3061
3062         * hurd/report-wait.c (_S_msg_report_wait): Return `itimer' for the
3063         itimer thread.
3064
3065         * hurd/hurdinit.c (_hurd_init): Set _HURDSIG_TRACED before calling
3066         _hurd_proc_init.
3067
3068 Wed May 29 00:52:20 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3069
3070         * string/tester.c (main): Fix strsep tests 6, 7, 20 to expect null
3071         token instead of it being implicitly skipped.
3072
3073         * sysdeps/i386/fpu/__math.h (logb): Correct contraint from =u to =t.
3074         Must operate on top of fp reg stack, not second from top.
3075
3076         * extra-lib.mk (alltypes-$(lib)): Don't append $(objpfx)$(lib).so.
3077         (others): Instead, make this depend on it.
3078
3079 Tue May 28 04:38:10 1996  Ulrich Drepper  <drepper@cygnus.com>
3080
3081         * limits.h: Change MB_LEN_MAX to 6.  A 31-bit ISO 10646
3082         character in UTF-8 encoding has that many bytes.
3083
3084         * locale/langinfo.h: New element _NL_CTYPE_MB_CUR_MAX.
3085         * locale/categories.def: Add description of field _NL_CTYPE_MB_CUR_MAX.
3086         * locale/Makefile (routines): Add mb_cur_max.
3087         * locale/mb_cur_max.c: New file.  This function gets called
3088         when the macro MB_CUR_MAX is used.
3089         * locale/C-ctype.c: Initialize new mb_cur_max field.
3090         * locale/localeinfo.h: Change magic value because of incompatible
3091         change.
3092         * locale/programs/ld-ctype.c: Determine value of mb_cur_max
3093         according to current character set and write it out with the rest.
3094         * stdlib/stdlib.h (MB_CUR_MAX): Not constant anymore.  Get value
3095         according to currently used locale for category LC_CTYPE by
3096         calling the function __ctype_get_mb_cur_max.
3097
3098 Tue May 28 03:27:46 1996  Ulrich Drepper  <drepper@cygnus.com>
3099
3100         * FAQ:  Fix some typos.
3101         Tell that for Linux the kernel header files are necessary.
3102
3103         * PROJECTS: New file.  List of open jobs for glibc.
3104         * Makefile (distribute): Add PROJECTS.
3105
3106         * crypt/GNUmakefile (headers): New variable.  Mention crypt.h.
3107         * crypt/crypt.h: Header for crypt functions.
3108
3109         * elf/elf.h: Add some new constants from recent Cygnus ELF
3110         header files.
3111
3112         * login/getutid_r.c: Test for correct type.
3113         Don't depend on ut_type and ut_id unless _HAVE_UT_TYPE and
3114         _HAVE_UT_ID resp. are defined.
3115         Make really compliant with specification.
3116
3117         * login/getutline_r.c, login/pututline_r.c: Don't depend on
3118         ut_type and ut_id unless _HAVE_UT_TYPE and _HAVE_UT_ID resp. are
3119         defined.
3120         Make really compliant with specification.
3121
3122         * login/setutent_r.c: Don't depend on ut_type and ut_id unless
3123         _HAVE_UT_TYPE and _HAVE_UT_ID resp. are defined.
3124
3125         * login/login.c, login/logout.c, login/logwtmp.c: Complete
3126         rewrite.  Now based on getut*/setut* functions.
3127
3128         * stdlib/strtol.c: Undo changes of Wed May 22 01:48:54 1996.
3129         This prevented using this file in other GNU packages.
3130
3131         * sysdeps/gnu/utmpbits.h: Define _HAVE_UT_TYPE, _HAVE_UT_ID,
3132         and _HAVE_UT_TV because struct utmp has these members.
3133
3134         * sysdeps/libm-i387/e_exp.S: Correct exp(+-Inf) case.
3135
3136         * utmp.h: New file.  Wrapper around login/utmp.h.
3137
3138 Tue May 28 13:11:19 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3139
3140         * elf/dl-error.c (struct catch): New type.
3141         (catch): New static variable, struct catch *.
3142         (catch_env, signalled_errstring, signalled_objname): Variables removed.
3143         (_dl_signal_error): If CATCH is non-null, set its errstring and
3144         objname members and jump to CATCH->env.  If it is null, call
3145         _dl_sysdep_fatal with a standard message.
3146         * elf/rtld.c (dl_main): Explode `doit' function into dl_main's body.
3147         No longer use _dl_catch_error.
3148
3149         * Makerules (sed-remove-objpfx): Avoid extra space in regexp due to
3150         continuation line.
3151
3152         * sysdeps/unix/sysv/linux/i386/socket.S: Fix off-by-one error in
3153         setting %ecx to 2nd syscall arg: we have pushed nothing, so function
3154         args are found at 4(%esp), not 8(%esp).
3155
3156 Mon May 27 10:10:00 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3157
3158         * Makefile ($(includedir)/stubs.h): Add missing backslash.
3159
3160         * sysdeps/unix/sysv/linux/i386/brk.c (__curbrk): Initialize it so it
3161         can be aliased.
3162
3163         * sysdeps/unix/sysv/linux/Makefile [$(subdir)=termios] (headers):
3164         Append termio.h.
3165
3166         * Makefile ($(includedir)/stubs.h): Print a msg if we do nothing.
3167
3168         * misc/sgtty.h: Add forward decl of struct sgttyb in case it is never
3169         defined.
3170
3171         * sysdeps/unix/sysv/linux/termio.h: New file.
3172         * sysdeps/unix/sysv/linux/Dist: Add it.
3173
3174         * sysdeps/unix/sysv/linux/ioctl-types.h: New file, wrapper around
3175         kernel header <asm/termios.h>.
3176
3177         * misc/Makefile (headers): Add ioctl-types.h.
3178         * sysdeps/generic/ioctl-types.h: New file.
3179         * misc/sys/ioctl.h: Include <ioctl-types.h>.
3180         (struct tchars, struct ltchars, struct sgttyb, struct winsize,
3181         struct ttysize): Types moved there.
3182
3183         * Makefile ($(includedir)/stubs.h): Don't touch target if new one is
3184         identical.
3185
3186         * time/Makefile (z.% rule): Generate generic zone%/ rule after
3187         zone%/right/ and zone%/posix/ rules so they match first.
3188
3189 Sun May 26 15:15:08 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3190
3191         * features.h [_GNU_SOURCE] (_BSD_SOURCE, _SVID_SOURCE,
3192         _POSIX_SOURCE, _POSIX_C_SOURCE): Define these.
3193
3194         * time/Makefile (tzcompile): Add missing backslash.
3195
3196         * stdlib/ldiv.c: Deansideclized.
3197
3198         * wctype/wctype.h (__need_wint_t): Define this and include stddef.h.
3199         [! _WINT_T] (wint_t): Conditionalize typedef on this in case pre-2.7.3
3200         stddef.h doesn't define it.
3201         * wcsmbs/wchar.h: Likewise.
3202         * stdlib/strtod.c: Likewise.
3203
3204         * wcsmbs/wcstok.c: Fix argument name typo.
3205
3206 Sun May 26 19:39:53 1996  Ulrich Drepper  <drepper@cygnus.com>
3207
3208         * intl/loadmsgcat.c (_nl_load_domain): Test correct variable
3209         after malloc.
3210
3211         * string/Makefile (tester-ENV): New variable to suppress message
3212         translation in test.
3213
3214         * string/tester.c: Add tests for strtok_r and strsep.
3215
3216         * sysdeps/i386/i486/strcat.S: Correct some more 8bit operation
3217         <-> 32 bit operand conflicts.
3218
3219         * sysdeps/i386/strsep.S: Wrapper around <sysdeps/i386/strtok.S>
3220         to produce strsep function.
3221         * sysdeps/i386/strtok.S: Optimized implementation of strtok
3222         function.
3223         * sysdeps/i386/strtok_r.S: Wrapper around <sysdeps/i386/strtok.S>
3224         to produce strtok_r function.
3225
3226         * sysdeps/generic/strtok.c: Moved here from string/strtok.c.
3227         Corrected example in comment.
3228
3229         * string/Makefile (routines): Add strtok_r.
3230         * sysdeps/generic/strtok_r.c: New file.  Implement reentrant version
3231         of strtok_r.
3232         * string/string.h: Add prototype for strtok_r.
3233         * wcsmbs/wcstok.c: Handle illegal SAVE_PTR argument the same
3234         as in strtok_r.
3235
3236 Sun May 26 13:28:23 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3237
3238         * time/tzset.c (__tzset): Ignore leading : in $TZ; always try tzfile
3239         first and fall back to 1003.1 syntax only if it fails.
3240
3241         * time/Makefile (install-others): Also install posix/ZONE and
3242         right/ZONE for each ZONE in $(zonenames).
3243         (z.% rule): Generate rules for right/ZONE and posix/ZONE targets too,
3244         the difference begin leapseconds vs /dev/null as 3rd dep.  For
3245         original ZONE targets use $(leapseconds), to be set in Makeconfig.
3246         (target-zone-flavor): New variable.
3247         (tzcompile): Use it to get the right -d for posix/ and right/ flavors.
3248         * Makeconfig (leapseconds): New variable.
3249
3250         * mach/Machrules (%.udeps rule): Depend on Machrules.
3251         Emit deps for .uh and .__h files.
3252         (%.uh, %.__h rules): Don't depend on %.defs; use #include <$*.defs>
3253         instead.
3254
3255 Sun May 26 01:06:47 1996  Ulrich Drepper  <drepper@cygnus.com>
3256
3257         * stdlib/Makefile (routines): Add llabs, lldiv.
3258         * stdlib/llabs.c: New file.  Implementation of return
3259         absolute value of long long argument.
3260         * stdlib/lldiv.c: New file.  Implementation of division with remainder
3261         of long long argument.
3262         * stdlib/stdlib.h [__USE_GNU] (lldiv_t): New type for lldiv
3263         function.
3264         Define prototypes for lldiv and llabs functions.
3265
3266         * locale/C-collate.c: Initialize _NL_COLLATE_NRULES element.
3267
3268         * stdlib/strtod.c: Replace wchar_t with wint_t.  The later is
3269         really the type for a single wide character.
3270
3271         * string/strxfrm.c (print_val): Define separate version for
3272         use as wcsxfrm.  Here we don't need UTF8 encoding.
3273
3274         * wcsmbs/wchar.h:  gcc-2.7.2-960517 finally introduces wint_t
3275         in <stddef.h>.  Use this value and only for older gcc version
3276         define in place.
3277         (uwchar_t): Remove definition.
3278
3279         * wcsmbs/wcscmp.c, wcsmbs/wcscoll.c, wcsmbs/wcsncmp.c,
3280         wcsmbs/wcsxfrm.c, wcsmbs/wmemcmp.c: : Don't use uwchar_t as unsigned
3281         type.  wint_t is intended for this.
3282
3283 Sat May 25 14:10:19 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3284
3285         * sysdeps/unix/bsd/direntry.h: Use [1] instead of [0] for d_name to
3286         quiet -ansi -pedantic.
3287         * sysdeps/unix/common/direntry.h: Likewise.
3288
3289         * login/Makefile (headers): Add lastlog.h.
3290         * login/lastlog.h: New file.
3291
3292         * login/Makefile (CFLAGS): Don't append -D_THREAD_SAFE.
3293         * login/utmp.h [_REENTRANT || _THREAD_SAFE]: Replace this conditional
3294         with #ifdef __USE_REENTRANT.
3295
3296         * features.h (__GNU_LIBRARY__): Set to 6.
3297         [_GNU_SOURCE] (_POSIX_SOURCE, _POSIX_C_SOURCE, _BSD_SOURCE,
3298         _SVID_SOURCE): Make sure they are all defined.
3299
3300         * sysdeps/unix/sysv/linux/gnu/types.h: Instead of including
3301         <linux/posix_types.h>, define _LINUX_TYPES_DONT_EXPORT and then
3302         include <linux/types.h>.
3303
3304         * resource/sys/resource.h: Remove trailing commas from enums.
3305
3306 Fri May 24 17:30:50 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3307
3308         * sysdeps/generic/netinet/in.h: Remove trailing commas from enums.
3309         * sysdeps/unix/sysv/linux/netinet/in.h: Likewise.
3310
3311         * login/getutline_r.c: Include string.h.
3312
3313         * Rules (static-only-routines): Restore the rule to make these .so's
3314         empty objects.
3315
3316         * login/pututline_r.c: Use struct assignment instead of memcpy.
3317
3318         * login/getutline_r.c: Use strncmp instead of comparing two pointers
3319         that will only be equal if you are overwriting the data and screwing
3320         yourself anyway.
3321
3322 Fri May 24 02:31:36 1996  Ulrich Drepper  <drepper@cygnus.com>
3323
3324         * sysdeps/unix/sysv/linux/speed.c: Add new speed value 460800.
3325
3326 Thu May 23 23:09:33 1996  Ulrich Drepper  <drepper@cygnus.com>
3327
3328         * FAQ: Add answer for 100% source code compatibility to Linux
3329         libc by David Mosberger-Tang.
3330
3331         Update from bind-4.9.4-T3B.
3332         * inet/arpa/inet.h: Add prototypes for inet_pton, inet_ntop,
3333         inet_nsap_addr, and inet_nsap_ntoa.
3334         * resolv/gethnamaddr.c: Correct compatibility problems (sprintf),
3335         remove fourth argument to inet_pton and correct handling of
3336         host_addr passing.
3337         * resolv/inet_ntop.c: Correct compatibility problems (sprintf).
3338         * resolv/inet_pton.c: Remove fourth argument.
3339         * resolv/resolv.h: Remove prototypes for inet_nsap_addr and
3340         inet_nsap_ntoa.  Now in <arpa/inet.h>.
3341
3342         * stdlib/gmp-impl.h: Add prototypes for internal functions.
3343
3344 Thu May 23 22:49:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3345
3346         * Rules (subdir_install): Remove dep on sor-$(subdir).
3347         (static-only-routines): Removed variable and associated rules.
3348
3349 Wed May 22 00:40:50 1996  David Mosberger-Tang  <davidm@azstarnet.com>
3350
3351         * sysdeps/unix/sysv/linux/alpha/speed.c (speeds): Add entry for
3352         460800 baud.
3353
3354         * sysdeps/unix/sysv/linux/alpha/statbuf.h: New file.
3355
3356         * sysdeps/unix/sysv/linux/alpha/Makefile (headers): Add
3357         alpha/ptrace.h.
3358         * sysdeps/unix/sysv/linux/alpha/alpha/ptrace.h: New file.
3359
3360         * sysdeps/libm-ieee754/s_scalbnf.c: Call __scalbnf instead of
3361         scalbnf.
3362
3363         * sysdeps/generic/sigset.h (__sigismember, __sigaddset,
3364         __sigdelset): Add declaration to keep ANSI compilers quiet.
3365
3366         * sysdeps/alpha/__math.h (cabs): Remove underscores from struct
3367         __cabs_complex member names in call to __hypot().
3368
3369         * sysdeps/alpha/copysign.S, sysdeps/alpha/fabs.S: New files.
3370
3371         * sysdeps/alpha/divrem.h: Renamed from sysdeps/alpha/divrem.S to avoid
3372         name collision with math library.
3373
3374         * sysdeps/alpha/divl.S, sysdeps/alpha/divlu.S, sysdeps/alpha/divq.S,
3375         sysdeps/alpha/divqu.S, sysdeps/alpha/reml.S, sysdeps/alpha/remlu.S,
3376         sysdeps/alpha/remq.S, sysdeps/alpha/remqu.S: Include divrem.h instead
3377         of divrem.S.
3378
3379         * sysdeps/unix/alpha/sysdep.h: Include regdef.h.  Define LEAF macro
3380         to simplify declaration of leaf functions.
3381
3382         * sysdeps/alpha/_mcount.S, sysdeps/alpha/bb_init_func.S,
3383         sysdeps/alpha/bsd-_setjmp.S, sysdeps/alpha/ffs.S,
3384         sysdeps/alpha/htonl.S, sysdeps/alpha/htons.S, sysdeps/alpha/memchr.S,
3385         sysdeps/alpha/setjmp.S, sysdeps/alpha/strlen.S,
3386         sysdeps/alpha/udiv_qrnnd.S, sysdeps/unix/sysv/linux/alpha/brk.S,
3387         sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S,
3388         sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S,
3389         sysdeps/unix/sysv/linux/alpha/pipe.S,
3390         sysdeps/unix/sysv/linux/alpha/sigsuspend.S,
3391         sysdeps/unix/sysv/linux/alpha/syscall.S,
3392         sysdeps/unix/sysv/linux/alpha/start.S,
3393         sysdeps/unix/sysv/linux/alpha/sysdep.S: Remove include of regdef.h.
3394         sysdep.h includes it now. Replace ENTRY by LEAF with appropriate
3395         framesize declaration.  Replace "lda pv,sym/jsr pv" by "jsr sym".
3396
3397         * sysdeps/unix/sysv/linux/alpha/sysdep.h (NO_UNDERSCORES): Don't
3398         define.
3399
3400         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Added getsockopt,
3401         ptrace, and sysctl.
3402
3403         * sysdeps/unix/sysv/linux/alpha/profil-counter.h: File removed.
3404
3405         * sysdeps/unix/sysv/linux/alpha/ioperm.c: Modify to support
3406         dynamic recognition of platform type.
3407         (_bus_base): New function.
3408
3409         * sysdeps/unix/sysv/linux/alpha/llseek.S: New file.
3410
3411         * sunrpc/rpc/rpc.h, sunrpc/rpc/svc.h: Avoid nested comments since
3412         they produce ugly warnings by gcc.
3413
3414         * posix/sys/types.h [__USE_MISC]: Add typedef for ulong.
3415
3416 Wed Mar 27 10:26:21 1996  David Mosberger-Tang  <davidm@azstarnet.com>
3417
3418         * sysdeps/alpha/setjmp.S: Must establish global pointer before
3419         address of __sigsetjmp_aux can be loaded.
3420
3421 Wed May 22 22:10:01 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3422
3423         * stdlib/canonicalize.c: New file.
3424         * stdlib/stdlib.h: Declare canonicalize_file_name, realpath.
3425         * stdlib/Makefile (routines): Add canonicalize.
3426
3427         * posix/unistd.h: Declare __canonicalize_directory_name_internal.
3428
3429 Thu May 23 00:01:10 1996  Ulrich Drepper  <drepper@cygnus.com>
3430
3431         * db/recno/rec_seq.c: Prevent `sccsid' definition by using the
3432         same #if condition as in the other db files.
3433
3434         * intl/Makefile: Add -Wno-unused CFLAGS for compilation of
3435         bindtextdom.c, finddomain.c, and localealias.c.
3436
3437         * intl/dcgettext.c: Don't define prototype for getcwd() when
3438         compiling in glibc.
3439
3440         * libio/cleanup.c: Add prototype for _IO_register_cleanup.
3441
3442         * libio/filedoalloc.c, libio/fileops.c, libio/iopopen.c: Don't
3443         define _POSIX_SOURCE unconditionally.
3444
3445         * libio/filedoalloc.c, libio/iopopen.c: Include <unistd.h> if
3446         compiling in glibc.
3447
3448         * libio/fileops.c (_IO_file_close_it): Don't sync file, call
3449         flush instead.  This relaxes the rules from POSIX.1 about
3450         changing the active handle a bit.
3451
3452         * libio/iofopncook.c (struct _IO_cookie_file): Move definition
3453         into <libio.h>.
3454         Add prototypes for local functions to prevent warnings.
3455
3456         * libio/iopopen.c: Change prototypes for _IO_fork, _IO_pipe, and
3457         _IO_dup2 to contain complete parameter list.
3458
3459         * libio/libio.h: Add definition of struct _IO_cookie_file.
3460
3461         * libio/libioP.h: Add prototypes for _IO_vasprintf, _IO_vdprintf,
3462         and _IO_vsnprintf.
3463
3464         * libio/memstream.c: Include <stdio.h>.
3465
3466         * libio/stdio.h: Add prototypes for fopencookie,
3467         __stdio_gen_tempname, __vfscanf, __vsscanf, and __vsnprintf.
3468
3469         * libio/strops.c: Avoid useless expression in `for' initializer.
3470
3471         * locale/findlocale.c: Add some casts to prevent warnings.
3472
3473         * locale/programs/locfile.c (write_locale_data): Don't use
3474         double `/' in locale binary file.
3475
3476         * posix/unistd.h: Remove prototype for `reboot'.
3477
3478         Update from bind-4.9.4-T1A.
3479         * resolv/Makefile (routines): Add inet_ntop and inet_pton.
3480         * resolv/arpa/nameser.h: Add definition of IN6ADDRSZ.
3481         * resolv/gethnamaddr.c, resolv/getnetnamadr.c, resolv/res_comp.c,
3482         resolv/res_debug.c, resolv/res_init.c
3483
3484         * resolv/inet_ntop.c, resolv/inet_pton.c: New files.
3485
3486         * resolv/resolv.h: Add RES_USE_INET6 flag.
3487         (__dn_isvalid): Renamed to __res_dnok.
3488         Add prototypes for __res_ownok and __res_mailok.
3489
3490         * stdio-common/Makefile: Add -Wno-unused to CFLAGS for _itoa.c.
3491
3492         * stdio-common/getline.c, stdio-common/vfscanf.c,
3493         sysdeps/posix/tempname.c: Don't use <ansidecl.h> anymore.
3494
3495         * sysdeps/unix/sysv/linux/Makefile [$subdir == misc]
3496         (sysdep_routines): Add s_reboot.
3497         (install-others): Add $(includedir)/sys/syscall.h.
3498         New rule for $(includedir)/sys/syscall.h to produce from
3499         <asm/unistd.h>.
3500
3501         * sysdeps/unix/sysv/linux/reboot.c: New file.  Make single
3502         argument function call 3 argument system call.
3503
3504         * sysdeps/unix/sysv/linux/sys/reboot.h: New file.  Linux specific
3505         definition for reboot function.
3506
3507         * sysdeps/unix/sysv/linux/syscall.h: Remove old and obsolete
3508         comment.
3509
3510         * sysdeps/unix/sysv/linux/syscalls.list: Rename function for
3511         reboot syscall to __syscall_reboot.
3512
3513         * wcsmbs/wchar.h: Protect prototypes for wcstof and wcstold by
3514         __USE_GNU, not USE_GNU.
3515
3516 Tue May 21 21:55:49 1996  David Mosberger-Tang  <davidm@AZStarNet.com>
3517
3518         * locale/programs/charset.c, locale/programs/ld-collate.c:
3519         Add casts to prevent warnings on 64-bit machines.
3520
3521         * locale/programs/ld-monetary.c: Don't do unnecessary tests for
3522         int_frac_digits and frac_digits which only produce warnings.
3523
3524 Mon May 13 23:45:29 1996  David Mosberger-Tang  <davidm@AZStarNet.com>
3525
3526         * inet/arpa/inet.h: Backup return type of inet_addr to u_long.
3527         * resolv/inet_addr.c: Likewise.
3528
3529         * resolv/Makefile (distribute): Add res_hconf.h
3530         (routines): Add res_hconf.
3531
3532         * resolv/gethnamaddr.c: Add support for /etc/host.conf.
3533
3534         * resolv/res_init.c: Initialize /etc/host.conf reader.
3535
3536         * resolv/res_hconf.c, resolv/res_hconf.h: New files.
3537         Implementation of reading /etc/host.conf.
3538
3539 Wed May 22 21:21:15 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3540
3541         * Rules (%.out rules): Prepend $($*-ENV) to the command.
3542
3543         * sysdeps/unix/sysv/linux/i386/brk.c (___brk_addr): Define as weak
3544         alias for __curbrk.
3545
3546 Wed May 22 19:37:27 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3547
3548         * hurd/hurdexec.c (_hurd_exec): Pass INIT_TRACEMASK.
3549         * hurd/hurdmsg.c (set_int): Support INIT_TRACEMASK.
3550
3551 Wed May 22 18:47:31 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3552
3553         * sysdeps/mach/hurd/getcwd.c
3554         (_hurd_canonicalize_directory_name_internal): New function, broken out
3555         of __getcwd.
3556         (__getcwd): Use it.
3557         (__canonicalize_directory_name_internal): New function using it.
3558
3559         * sysdeps/posix/getcwd.c (__canonicalize_directory_name_internal): New
3560         function, broken out of __getcwd.
3561         (__getcwd): Use it.
3562
3563 Wed May 22 18:14:05 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3564
3565         * string/argz-create.c (__argz_create): Correctly calculate length.
3566
3567         * string/argz-extract.c (__argz_extract): Add terminating 0 entry.
3568         * hurd/hurdstartup.c (_hurd_startup): ... and don't so here.
3569
3570 Wed May 22 17:22:14 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3571
3572         * posix/glob.c [VMS]: Don't include <pwd.h>.
3573         [HAVE_VMSDIR_H]: Include "vmsdir.h".
3574         (glob) [VMS]: Don't grok ~.
3575
3576 Wed May 22 14:46:53 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3577
3578         * hurd/hurdstartup.c (_hurd_startup): Terminate the vectors we get
3579         back from argz_extract.
3580
3581 Wed May 22 13:56:42 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3582
3583         * configure.in: Remove checks for objdump, objcopy, and awk.
3584         * config.make.in (OBJDUMP, OBJCOPY, AWK): Variables removed.
3585         * Makefile (distribute): Remove extract-dynsym.
3586         * extract-dynsym: File removed.
3587
3588 Tue May 21 22:17:45 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3589
3590         * termios/cfmakeraw.c: Set MIN to 1 and TIME to 0.
3591
3592 Wed May 22 01:48:54 1996  Ulrich Drepper  <drepper@cygnus.com>
3593
3594         * stdlib/strtol.c [!QUAD] (ULONG_MAX, LONG_MAX): Define these
3595         macros if they are not available.
3596         (WEAKNAME): New macro to declare argument as weak.
3597         Define function with __ prefix and add normal name as weak alias.
3598
3599         * sysdeps/posix/euidaccess.c (S_IROTH, S_IWOTH, S_IXOTH): Defines
3600         these macros if not already available based on R_OK, W_OK, and
3601         X_OK.
3602
3603 Tue May 21 18:48:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3604
3605         * misc/sys/syslog.h (__need___va_list): Define this instead of
3606         __need_va_list before including <stdarg.h>.
3607
3608         * Makerules (o-iterator): Use $(object-suffixes-left) instead
3609         of $(object-suffixes) to produce repetitions; this is used for other
3610         lists than just that one.
3611         [versioned]: Use $(o-iterator) properly.
3612
3613         * sysdeps/unix/sysv/linux/Implies: Include `gnu'.
3614         * sysdeps/mach/hurd/Implies: Likewise.
3615
3616 Sat May 18 02:57:46 1996  Ulrich Drepper  <drepper@cygnus.com>
3617
3618         * login/Makefile: New file.  This directory contains functions
3619         for user administration.
3620         * Makefile (subdirs): Add login.
3621
3622         * misc/Makefile (headers): Remove utmp.h.  Now in login/utmp.h.
3623         (extra-libs, libutil-routines): Ditto.
3624         * misc/login.c, misc/login_tty.c, misc/logout.c, misc/logwtmp.c,
3625         misc/utmp.h: Moved to misc/.
3626         * login/login.c, login/login_tty.c, login/logout.c,
3627         login/logwtmp.c, login/utmp.h: Moved to here from misc/.
3628
3629         * login/utmp.h: Split file.  Definitions of data structures
3630         and constants are now in the system dependent utmpbits.h file.
3631
3632         * login/setutent_r.c, login/setutent.c, login/endutent_r.c,
3633         login/endutent.c, login/getutent_r.c, login/getutent.c,
3634         login/getutid_r.c, login/getutid.c, login/getutline_r.c,
3635         login/getutline.c, login/pututline_r.c, login/pututline.c:
3636         New files.  Routines to handle utmp-style files.
3637
3638         * sysdeps/gnu/utmpbits.h: New file.  Contains GNU/Linux
3639         specific definitions of utmp data structures and constants.
3640
3641         * sysdeps/unix/sysv/utmpbits.h: Renamed from sysdeps/unix/sysv/utmp.h.
3642
3643         * sysdeps/generic/utmpbits.h: New file.  Generic (BSDish) version of
3644         definitions of utmp data structures and constants.
3645
3646 Fri May 17 00:01:31 1996  Ulrich Drepper  <drepper@cygnus.com>
3647
3648         * locale/C-monetary.c: Default value for mon_decimal_point should be
3649         '.'.
3650
3651         * stdio-common/printf.h: Remove Linux libc compatibility stuff.
3652         Add `extra' flag.  Currently used in __printf_fp.
3653
3654         * stdio-common/printf_fp.c (__guess_grouping): Renamed from
3655         `guess_grouping' and extend visibility to extern.  This function
3656         is now used in `strfmon'.
3657         (__printf_fp): Recognize new bit flag in info struct.  This
3658         triggers to use the grouping information and decimal point from
3659         the LC_MONETARY category instead of the LC_NUMERIC category.
3660
3661         * stdio-common/vfprintf.c (process_arg): Correct major bug.  In
3662         `complicated' loop we must not use the varargs because the args
3663         are already available in the ARGS_VALUE array.
3664
3665         * stdlib/Makefile (headers): Add monetary.h.
3666         (routines): Add strfmon.
3667         * stdlib/monetary.h: New file.  Header for strfmon function.
3668         * stdlib/strfmon.c: New file.  Implement strfmon function to print
3669         monetary amounts according to current locale's rules.
3670
3671         * sysdeps/unix/sysv/linux/i386/sys/vm86.h: The kernel header is
3672         now (>= Linux-1.3.100) called <asm/vm86.h>.
3673
3674 Thu May 16 00:31:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3675
3676         * Makerules [versioned]: Make symlinks in the build directory, because
3677         the versioned names might be referenced by a DT_NEEDED in another
3678         library.
3679
3680 Wed May 15 18:59:38 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3681
3682         * manual/examples/longopt.c: Include stdlib.h and getopt.h.
3683
3684 Tue May 14 03:36:21 1996  Ulrich Drepper  <drepper@cygnus.com>
3685
3686         * sysdeps/unix/sysv/linux/Makefile [$subdir == misc] (headers):
3687         Add sys/acct.h and sys/sysctl.h.
3688
3689 Tue May 14 19:42:04 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3690
3691         * sysdeps/generic/strrchr.c: Deansideclized.
3692
3693         * elf/Makefile (ldd): Depend on Makefile.
3694         Find ld.so in $(slibdir) instead of $(libdir).
3695
3696         * sysdeps/i386/strrchr.S: Use `testl $3, %esi' instead of `testb $3,
3697         %esi'; gas misassembles the latter into `testb $3, %dh'.
3698
3699         * mach/Machrules (%.udeps rule): Do $(make-target-directory) first.
3700
3701 Tue May 14 16:38:44 1996  David Mosberger-Tang <davidm@AZStarNet.com>
3702
3703         * sunrpc/getrpcent.c (interpret): Declare args.  Rewrite parsing using
3704         strpbrk.
3705
3706 Tue May 14 20:18:38 1996  Ulrich Drepper  <drepper@cygnus.com>
3707
3708         * time/Makefile (routines): Add strptime.
3709         * time/time.h: Add prototype for strptime.
3710         * time/strptime.c: New file.  Implementation according to XPG4.
3711
3712 Tue May 14 14:07:10 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3713
3714         * libc-symbols.h (lint): Macro removed.  The sunrpc code does some
3715         really stupid things #ifdef lint.
3716
3717         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter): Fix
3718         struct member name: sc_eip -> eip.
3719
3720 Mon May 13 19:52:33 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3721
3722         * Makerules (stub-$(subdir)): Put cmds including cd inside (...) with
3723         output redirect outside it.
3724
3725         * elf/Makefile (subdir_lib): Depend on ld.so.
3726
3727 Sun May 12 22:52:22 1996  Bruce Elliott  <belliott@accessone.com>
3728
3729         * stdio-common/vfprintf.c: Correct handling of unsigned short
3730         values.
3731
3732 Mon May 13 12:03:03 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3733
3734         * extra-lib.mk (alltype-$(lib)): Put libs in $(objpfx) instead of
3735         $(common-objpfx).
3736         * Makerules [install-lib.a]: Find them there.
3737
3738         * sysdeps/unix/sysv/linux/i386/profil-counter.h: New file.
3739
3740         * extra-lib.mk: Skip the hair if $(object-suffixes-$(lib)) is empty.
3741
3742         * posix/glob.h [_AMIGA]: Remove `struct stat;' forward decl.
3743
3744         * configure.in (--with-fp): Note in help string that it's the default.
3745
3746         * locale/programs/ld-ctype.c (struct locale_ctype_t): Use u_int32_t
3747         instead of unsigned int for map_collection_max and map_collection_act.
3748
3749         * stdio-common/vfprintf.c [USE_IN_LIBIO] (flockfile, funlockfile):
3750         Macros removed; they are in <stdio.h>.
3751         * stdio-common/vfscanf.c: Likewise.
3752
3753         * posix/glob.c [_AMIGA]: Don't include <pwd.h>.
3754         (glob): Remove bogus & in call to globfree.
3755         [_AMIGA]: Use AmigaDOS file name conventions.
3756
3757         * time/Makefile (zonenames): Target removed.
3758         (extra-objs): Remove it from here.
3759         Include the z.* files directly instead of including zonenames; use
3760         `-include' to not complain before they exist.
3761
3762         * sysdeps/unix/Makefile: Find sysd-syscalls and s-proto.d with
3763         $(common-objpfx) instead of $(objpfx).
3764
3765         * sysdeps/unix/bsd/telldir.c (seekdir, telldir): Use new struct member
3766         names without __.
3767
3768         * Makerules [install-lib-non.a]: Find these things with $(objpfx)
3769         instead of $(common-objpfx).
3770
3771         * Makeconfig (sysdep-configures): New variable.
3772         (config.status): Depend on $(sysdep-configures).
3773
3774 Fri May 10 20:07:52 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3775
3776         * sysdeps/unix/sysv/linux/profil.c: New file.
3777
3778 Fri May 10 19:59:50 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3779
3780         * sysdeps/m68k/Makefile (CFLAGS-setjmp.c): New variable.
3781
3782 Fri May 10 19:55:42 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
3783
3784         * shlib-versions: Use libm=6 and libc=6 for m68k-linux.
3785
3786 Sun May 12 11:16:58 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3787
3788         * string/envz.c: Fix uses of unsigned to size_t.
3789
3790         * Makerules ($(libdir)/libc.so): Make the file an ld script.
3791
3792         * sysdeps/mach/hurd/configure.in: Don't grok --with-hurd option.
3793
3794         * sysdeps/mach/configure.in: File removed.
3795         * sysdeps/mach/configure: File removed.
3796
3797         * mach/Machrules (%.udeps rule): Write deps for %_server.[ch] too.
3798         (%_server.[ch] rule): Don't depend on %.defs; use #include to get
3799         installed .defs file.
3800
3801         * stdio-common/vfprintf.c (flockfile, funlockfile): Define to
3802         nothing for stdio.  Fix fUNlockfile -> funlockfile for libio.
3803         * stdio-common/vfscanf.c: Likewise.
3804
3805 Sat May 11 13:43:41 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3806
3807         * hurd/hurdfault.c: Include faultexc_server.h instead of faultexc.h.
3808
3809         * mach/Machrules (%.ir rule): Don't produce deps for imports.
3810
3811         * elf/dl-fini.c (_dl_fini): Clear L->l_init_called after calling fn.
3812
3813         * Makerules (install): Depend on $(slibdir)/libc.so$(libc.so-version).
3814         [!subdir] ($(libdir)/libc.so, $(common-objpfx)/libc-syms.so): Protect
3815         these targets and install dep on $(libdir)/libc.so with this.
3816
3817         * hurd/Makefile: Removed all rules and defns for using code from Hurd
3818         sources and installing headers from there.
3819
3820         * sysdeps/mach/hurd/errnos.awk: Set in_mach_errors to FILENAME when we
3821         set it.  In Mach error matching clause, only match if FILENAME is
3822         still the same value.
3823
3824         * sysdeps/mach/hurd/Makefile: Don't include sysdeps/mach/Makefile;
3825         $(mach-srcdir) no longer exists.
3826         (hurd-srcdir): Variable removed.
3827         (includes): Don't append -I$(hurd-srcdir).
3828         (last-includes): Variable removed.
3829         Remove vpath specs using $(hurd-srcdir).
3830         (mach-errno-h): New canned sequence.
3831         ($(common-objpfx)errnos.d): New target, generated included makefile
3832         to determine absolute file names of Mach headers to search for error
3833         codes and set variable mach-errnos-deps.
3834         ($(common-objpfx)stamp-errnos): Depend on $(mach-errnos-deps) instead
3835         of prior explicit list.
3836         (generated): Add errnos.d, stamp-errnos.
3837
3838         * mach/Machrules (some-if-rtn): New variable and target; compute deps
3839         of some if routine and make all if routines depend on that .d file
3840         instead of static list of .h files.
3841
3842         * mach/Makefile (mach/mach_interface.defs,
3843         mach/memory_object_user.defs): Targets removed.
3844         ($(objpfx)mach-syscalls.mk): Tweak this kludge so it doesn't depend
3845         directly on Mach sources.
3846
3847         * sysdeps/mach/Makefile (mach-srcdir): Variable removed.
3848         (includes): Don't append -I$(mach-srcdir).
3849         Remove vpath specs using $(mach-srcdir).
3850
3851         * hurd/Makefile (server-interfaces): Add faultexc.
3852         (sig): Remove it from here.
3853         (fault%.[ch]): Rule removed.
3854         (MIGFLAGS-faultexc): New variable.
3855
3856         * hurd/faultexc.defs: New file.
3857
3858         * mach/Machrules (%.ustamp rule): Pass $(MIGFLAGS-$*) to mig.
3859         (%_server.[ch] rule): Likewise.
3860
3861         * mach/Makefile: Removed all rules and defns for using code from Mach
3862         sources and installing headers from there.
3863
3864         * Makeconfig [$(build-shared)=yes] (link-libc): Append
3865         $(libc.so-version) to libc.so.
3866
3867 Fri May 10 18:36:14 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3868
3869         * mach/Machrules (%.ustamp rule): Don't depend on %.defs.
3870         (%.udeps): New rule parallel to that one, generating included
3871         makefiles with -M output from `#include <%.defs>'.
3872
3873         * Makerules (sed-remove-objpfx): Remove space before \ at eol.
3874
3875         * Makefile (distribute): Add FAQ.
3876         * FAQ: New file contributed by drepper.
3877
3878         * time/Makefile (headers): Add timebits.h.
3879         * sysdeps/unix/sysv/linux/timebits.h: New file.
3880         * sysdeps/stub/timebits.h: New file.
3881         * time/time.h (CLK_TCK): Define to CLOCKS_PER_SEC.
3882         (CLOCKS_PER_SEC): Remove this macro.  Instead #include <timebits.h>.
3883
3884 Fri May 10 16:22:44 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
3885
3886         * string/argz-create.c (__argz_create): Restore const keyword to
3887         ARGV parm.
3888         * string/argz.h (__argz_create, argz_create): Restore const
3889         keyword.
3890         * string/envz.c (envz_get): Don't declare ENTRY const.
3891
3892 Fri May 10 11:48:03 1996  Miles Bader  <miles@gnu.ai.mit.edu>
3893
3894         * string/argz.h (argz_create): Fix param type.
3895         * string/argz-create.c (__argz_create): Remove const from param type.
3896         * string/envz.c (envz_get): Remove const from return type.
3897
3898 Fri May 10 09:41:54 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
3899
3900         * string/argz.h (__argz_create, argz_create): Omit const keyword
3901         from declaration of ARGV.
3902         * string/envz.h (envz_get): Omit const from declaration of return
3903         type.
3904
3905 Thu May  9 09:17:46 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3906
3907         * aclocal.m4 (AC_FD_MSG, AC_FD_CC): Fix these for autoconf weirdness.
3908
3909         Cleanups in sunrpc code from NIIBE Yutaka <gniibe@mri.co.jp>.
3910         * sunrpc/clnt_tcp.c (clnttcp_create): Don't close *SOCKP if it's -1.
3911         * sunrpc/clnt_simp.c (callrpc): Don't close CRP->socket if it's
3912         RPC_ANYSOCK.
3913         * sunrpc/pmap_clnt.c (pmap_set): Don't close SOCKET, since
3914         CLNT_DESTROY already has.
3915         (pmap_unset): Likewise.
3916         * sunrpc/pm_getmaps.c (pmap_getmaps): Likewise.
3917         * sunrpc/pm_getport.c (pmap_getport): Likewise.
3918         * sunrpc/pmap_rmt.c (pmap_rmtcall): Likewise.
3919         * sunrpc/portmap.c (callit): Likewise.
3920
3921         * Makerules (versioned): Strip whitespace.
3922
3923         * Rules (static-only-routines rule): Remove spurious space in dep.
3924
3925         * misc/getusershell.c: Undo changes of 7 May 96 (rev 1.6).
3926         Cast string constants to char *.
3927
3928         * posix/glob/SMakefile, posix/glob/SCOPTIONS, posix/glob/Makefile.ami:
3929         New files, AmigaDOS support from Aaron Digulla.
3930         * posix/Makefile (glob.tar): Add AmigaDOS support files.
3931
3932         * sysdeps/unix/sysv/linux/net/if.h: New file.
3933         * sysdeps/unix/sysv/linux/Dist: Add it.
3934         * sysdeps/unix/sysv/linux/Makefile [$(subdir)=socket] (headers): Add
3935         net/if.h.
3936
3937         * Makeconfig (link-libc): Add libc.a after libc.so in link.
3938
3939         * Rules (static-only-routines rule): Use empty.o instead of dummy.o.
3940         (empty.o): New target.
3941         (generated): Add empty.c, empty.o.
3942
3943         * resolv: Code updated from BIND-4.9.3P2C3.
3944
3945         * Rules (static-only-routines rule): Use dummy.o, not dummy.so.
3946
3947 Wed May  8 20:04:29 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
3948
3949         * extract-dynsym: New file.
3950         * Makefile (distribute): Add it.
3951         * Rules (subdir_install): Depend on $(common-objpfx)sor-$(subdir).
3952         [! libc.so-version]: Clear static-only-routines.
3953         ($(common-objpfx)sor-$(subdir)): New target.
3954         [static-only-routines]: New static pattern rule for these .so's.
3955         * Makerules [libc.so-version] ($(slibdir)/libc.so): Target removed.
3956         [libc.so-version] ($(libdir)/libc.so, $(common-objpfx)libc-syms.so):
3957         New targets replace it.
3958         (install) [libc.so-version]: Depend on $(libdir)/libc.so instead of
3959         $(slibdir)/libc.so.
3960         * io/Makefile (static-only-routines): New variable.
3961         * configure.in: Check for tools objdump and objcopy, and for awk.
3962         * config.make.in (OBJDUMP, OBJCOPY, AWK): New variables.
3963
3964 Thu May  9 01:24:00 1996  Ulrich Drepper  <drepper@cygnus.com>
3965
3966         * locale/programs/config.h: Remove definition of wint_t.
3967
3968         * locale/programs/ld-collate.c: Include <wchar.h> instead of
3969         <wcstr.h>.
3970
3971         * manual/time.texi: Add some more description for %U and %W
3972         format of strftime.  Describe new format %V of strftime.
3973
3974         * resolv/gethnamaddr.c: Prevent warning by preventing variable
3975         definition.
3976         * stdio-common/_itoa.c: Ditto.
3977
3978 Tue May  7 23:43:07 1996  Ulrich Drepper  <drepper@cygnus.com>
3979
3980         * libio/clearerr.c, libio/feof.c, libio/ferror.c, libio/fgetc.c,
3981         libio/fileno.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
3982         libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
3983         libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
3984         libio/iofputs.c, libio/iofread.c, libio/iofsetpos.c,
3985         libio/ioftell.c, libio/iofwrite.c, libio/iogetdelim.c,
3986         libio/iogets.c, libio/ioputs.c, libio/iosetbuffer.c,
3987         libio/iosetvbuf.c, libio/ioungetc.c, libio/iovsprintf.c,
3988         libio/libio.h, libio/putc.c, libio/putchar.c, libio/rewind.c,
3989         libio/stdio.h, stdio-common/printf_fp.c, stdio-common/vfprintf.c,
3990         stdio-common/vfscanf.c: Prepare for reentrant libio.
3991
3992         * libio/clearerr_u.c, libio/feof_u.c, libio/ferror_u.c,
3993         libio/fputc_u.c, libio/getc_u.c, libio/getchar_u.c,
3994         libio/iofflush_u.c, libio/putc_u.c, libio/putchar_u.c: New files.
3995         Used in reentrant libio.
3996
3997         * misc/getusershell.c: Prevent warnings.
3998
3999 Wed May  8 12:08:35 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4000
4001         * Makerules (install-lib.so rules): Undouble $s in target and dep
4002         parts of o-iterator-doit defns.
4003         (unversioned libraries install rule): Fix pattern.
4004
4005         * mach/Makefile (mach-src-headers): Use $(base-machine) instead of
4006         $(config-machine).
4007         ($(includedir)/machine): Likewise.
4008
4009         * config.make.in (base-machine): New variable.
4010         * configure.in (machine): Move case stmt to set $machine out of sysdep
4011         dirs AC_CACHE_CHECK.
4012         (base_machine): New variable, set in that switch and AC_SUBST'd.
4013
4014         * Makerules (stub-$(subdir)): Use file name in directory as output,
4015         since cmd is cd'd.
4016
4017         * configure.in (MSGFMT): Use : if none found.
4018
4019         * po/Makefile: Include ../Rules instead of ../Makerules.
4020
4021 Tue May  7 23:18:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4022
4023         * po/Makefile: New file.
4024         * Makefile (subdirs): Add po.
4025
4026         * configure.in: Check for msgfmt.
4027         * config.make.in (MSGFMT): New variable.
4028
4029 Sun May  5 23:49:10 1996  Ulrich Drepper  <drepper@cygnus.com>
4030
4031         * misc/Makefile (routines): Add swapoff.
4032
4033         * sysdeps/unix/sysv/linux/Dist: Add sys/quota.h.
4034
4035         * sysdeps/unix/sysv/linux/sys/quota.h: New file.  Wrapper around
4036         kernel header file.
4037
4038 Tue May  7 19:00:01 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4039
4040         * string/argz-extract.c: Remove const from decl.
4041         * string/argz.h: Here too.
4042
4043         * Makeconfig (version.mk): Fix regexp in sed cmd.
4044         Depend on $(..)Makeconfig.
4045
4046         * GMP code updated from gmp-2.0 release.
4047         * stdlib/Makefile (mpn-routines): Removed add_1, added inlines.
4048         * sysdeps/generic/add_1.c: File removed.
4049         * stdlib/strtod.c: mp_limb is now mp_limb_t.
4050         * stdlib/fpioconst.c, stdlib/fpioconst.h: Likewise.
4051         * stdio-common/_itoa.c: Likewise.
4052         * stdio-common/printf_fp.c: Likewise.
4053         Don't include ansidecl.h.
4054
4055         * sysdeps/mach/hurd/getcwd.c: Use io_identity instead of io_stat.
4056
4057         * shlib-versions: New file.
4058         * Makerules (soversions.mk): New target, include file generated from
4059         shlib-versions.  Moved shared library rules before installation rules.
4060         Rewrote shared library installation rules for versioned libraries.
4061         * math/Makefile (libm.so-version): Variable removed.
4062
4063         * sysdeps/mach/hurd/i386/exc2signal.c: Use struct hurd_signal_detail.
4064
4065         * hurd/report-wait.c (_S_msg_describe_ports): New function.
4066
4067         * configure.in: Add AC_PROG_LN_S check.
4068         * config.make.in (LN_S): New variable.
4069
4070 Sun May  5 03:10:44 1996  Ulrich Drepper  <drepper@cygnus.com>
4071
4072         * misc/efgcvt_r.c (ecvt_r): Work aroung gcc bug.  gcc does
4073         not know about weak aliases now and optimizes necessary `if'
4074         statement away.
4075
4076         * posix/unistd.h: Add swapoff prototype.
4077
4078         * sysdeps/generic/confname.h: Add even more POSIX.4 symbols.
4079
4080         * sysdeps/posix/fpathconf.c (__fpathconf): Get information
4081         for _PC_PATH_MAX from fstatfs function if available.
4082
4083         * sysdeps/posix/sysconf.c: Add code to handle _SC_AIO_LISTIO_MAX,
4084         _SC_AIO_MAX, _SC_AIO_PRIO_DELTA_MAX, _SC_DELAYTIMER_MAX,
4085         _SC_MQ_OPEN_MAX, _SC_MQ_PRIO_MAX, _SC_RTSIG_MAX,
4086         _SC_SEM_NSEMS_MAX, _SC_SEM_VALUE_MAX, _SC_SIGQUEUE_MAX, and
4087         _SC_TIMER_MAX.
4088         * sysdeps/unix/sysv/sysv4/sysconf.c: Ditto.
4089
4090         * sysdeps/stub/swapoff.c: New file.  Stub version for swapoff
4091         function.
4092
4093         * sysdeps/unix/syscalls.list:  Add swapoff.
4094
4095         * sysdeps/unix/sysv/linux/Dist: Add sys/acct.h.
4096
4097         * sysdeps/unix/sysv/linux/Makefile [$(subdir) == misc]
4098         (sysdep_routines): Add mount, umount, llseek, setfsgid, setfsuid,
4099         sysinfo, and uselib.
4100         (headers): Add sys/sysinfo.h.
4101
4102         * sysdeps/unix/sysv/linux/gethostid.c: Prevent warning.
4103
4104         * sysdeps/unix/sysv/linux/i386/Makefile [$(subdir) == misc]
4105         (sysdep_routines): Add ioperm, iopl, and vm86.
4106         (headers): Add sys/perm.h and sys/vm86.h.
4107
4108         * sysdeps/unix/sysv/linux/i386/sys/perm.h: New file.  Contains
4109         prototypes for iopl and ioperm.
4110
4111         * sysdeps/unix/sysv/linux/i386/sys/vm86.h:  New file.  Contains
4112         prototype for vm86.
4113
4114         * sysdeps/unix/sysv/linux/i386/syscalls.list: New file.  Add
4115         vm86 system call.
4116
4117         * sysdeps/unix/sysv/linux/sys/acct.h: New file.  Contains
4118         prototypes for acct function.
4119
4120         * sysdeps/unix/sysv/linux/sys/socket.h: Provide real header
4121         file with prototypes.
4122
4123         * sysdeps/unix/sysv/linux/sys/sysinfo.h: New file.  Contains
4124         prototype for sysinfo function.
4125
4126         * sysdeps/unix/sysv/linux/syscalls.list: Add flock, ioperm, iopl,
4127         llseek, setfsgid, setfsuid, sysinfo, and uselib.
4128
4129         * sysdeps/unix/sysv/linux/sysconf.c: Instead of duplicating
4130         posix/sysconf.c now only handle cases different to that
4131         implementation.
4132
4133 Tue May  7 15:08:19 1996  Miles Bader  <miles@gnu.ai.mit.edu>
4134
4135         * stdio/linewrap.c (__line_wrap_output): Renamed from lwoutput
4136         (all references changed).  Now exported.
4137
4138         * stdio/linewrap.c (struct data): Type deleted (moved to linewrap.h).
4139         (wrap_stream, unwrap_stream, lwclose, lwfileno, lwoutput,
4140         line_wrap_stream, line_unwrap_stream): Use struct line_wrap_data
4141         instead of struct data.
4142         (lwoutput, line_wrap_stream, line_unwrap_stream): Rename various
4143         occurences of `wrap' and `wrapmargin' to `wmargin'.
4144         (line_wrapped, line_wrap_lmargin, line_wrap_set_lmargin,
4145         line_wrap_rmargin, line_wrap_set_rmargin, line_wrap_wmargin,
4146         line_wrap_set_wmargin, line_wrap_point): New functions.
4147         * stdio/linewrap.h: New file.
4148         * stdio/Makefile (headers): Add linewrap.h.
4149
4150 Tue May  7 14:19:12 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4151
4152         * sysdeps/unix/sysv/linux/i386/Makefile: File removed.
4153
4154         * stdio/stdio.h: Remove line_wrap_stream, line_unwap_stream decls.
4155
4156         * sysdeps/unix/sysv/linux/schedbits.h: New file.
4157
4158 Tue May  7 13:47:02 1996  Miles Bader  <miles@gnu.ai.mit.edu>
4159
4160         * stdio/linewrap.c (struct data): Make margin fields not-pointers.
4161         (lwoutput): Adjust uses acordingly.
4162
4163 Tue May  7 10:51:52 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4164
4165         * sysdeps/mach/hurd/fdatasync.c: New file.
4166         * sysdeps/mach/hurd/fsync.c: Pass new flag to file_sync.
4167
4168         * sysdeps/mach/hurd/xmknod.c: Pass new flag to dir_link.
4169         * sysdeps/mach/hurd/symlink.c: Likewise.
4170         * sysdeps/mach/hurd/link.c: Likewise.
4171         * sysdeps/mach/hurd/bind.c: Likewise.
4172         * hurd/hurdsig.c (write_corefile): Likewise.
4173
4174         * hurd/hurdsig.c (write_corefile): Pass cttyid port to crash server.
4175
4176         * sysdeps/mach/hurd/fpathconf.c: RPC takes int pointer, not long int.
4177
4178         * sysdeps/mach/hurd/_exit.c (_hurd_exit): Pass sigcode arg to
4179         proc_mark_exit.
4180         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Likewise.
4181
4182         * sysdeps/mach/hurd/wait4.c: Pass sigcode arg to proc_wait.
4183
4184         * sysdeps/mach/hurd/rename.c: Pass new flag to dir_rename.
4185
4186         * hurd/hurdfault.c (_hurdsig_fault_catch_exception_raise): Use struct
4187         hurd_signal_detail.
4188         * hurd/catch-exc.c (_S_catch_exception_raise): Likewise.
4189         * hurd/hurd-raise.c (_hurd_raise_signal): Likewise.
4190         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
4191         Likewise.
4192         * sysdeps/mach/hurd/setitimer.c (restart_itimer): Likewise.
4193
4194         * hurd/hurd/signal.h: Fix _hurd_exception2signal prototype.
4195
4196         * hurd/hurdsig.c (write_corefile): Take const struct
4197         hurd_signal_detail * arg.  Pass all details to crash_dump_task.
4198         (_hurd_internal_post_signal): Pass DETAIL to write_corefile.
4199         (_hurd_internal_post_signal: suspend): Pass code and error to
4200         proc_mark_stop.
4201
4202         * hurd/hurdprio.c (_hurd_priority_which_map): Pass flags arg to
4203         proc_getprocinfo by reference.
4204
4205         * wcsmbs/wcwidth.c, wcsmbs/wcswidth.c: Fixed typos.
4206
4207         * sysdeps/unix/sysv/linux/sys/mman.h: Fixed typo.
4208
4209         * sysdeps/stub/sched_getp.c: Add missing #include <sys/types.h>.
4210         * sysdeps/stub/sched_sets.c: Likewise.
4211         * sysdeps/stub/sched_setp.c: Likewise.
4212         * sysdeps/stub/sched_rr_gi.c: Likewise.
4213         * sysdeps/stub/sched_gets.c: Likewise.
4214
4215         * hurd/hurdsig.c: Use struct hurd_signal_detail.
4216         * hurd/hurd/fd.h (_hurd_fd_error): Likewise.
4217         * sysdeps/mach/hurd/sysd-stdio.c (fd_fail): Likewise.
4218
4219 Mon May  6 09:51:05 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4220
4221         * stdio/linewrap.c: New file.
4222         * stdio/Makefile (routines): Add linewrap.
4223         * stdio/stdio.h [__USE_GNU]: Declare line_wrap_stream,
4224         line_unwrap_stream.
4225
4226 Mon May  6 14:53:26 1996  Ulrich Drepper  <drepper@cygnus.com>
4227
4228         * time/strftime.c (week): Add third parameter telling how
4229         many days must be in new year so that it is called week 1.
4230         (Following ISO 8601).
4231         Correct computation for %U and %V formats when day was first
4232         day of the week.
4233         (strftime): Implement %V format according to Spec1170.
4234
4235 Mon May  6 17:01:09 1996  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
4236
4237         * hurd/hurd/signal.h (_hurd_intr_rpc_mach_msg): New declaration.
4238
4239 Sat May  4 05:44:25 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4240
4241         * hurd/hurd/sigpreempt.h (struct hurd_signal_preempter): Change
4242         prototype of `preempter' elt to use struct hurd_signal_detail.
4243
4244         * hurd/hurd/signal.h (struct hurd_signal_detail): New type.
4245         (struct hurd_sigstate): Make `pending_data' member an array of that.
4246         Use the new type in several decls.
4247
4248         * locale/setlocale.c (_nl_C_name): Variable removed.
4249         * locale/C_name.c: New file.
4250         (_nl_C_name): Put it here instead.
4251         * locale/Makefile (aux): Add C_name.
4252
4253         * sysdeps/mach/hurd/dl-sysdep.c (open): Don't pass io port in
4254         auth_user_authenticate rpc.
4255         (open): Avoid using strtol in digit conversion for "fd/N" magic.
4256         (_dl_sysdep_start): Likewise for memobj name in magic switches.
4257
4258         * elf/Makefile (reloc-link): New variable.
4259         (dl-allobjs.so): New target, link together $(rtld-routines).
4260         (librtld.so): Depend on that instead of the rtld components.
4261         (generated): Add dl-allobjs.so.
4262
4263         * hurd/hurd-raise.c (_hurd_raise_signal): Pass sigcode in msg_sig_post
4264         rpc.
4265
4266         * hurd/hurdmsg.c (_S_msg_set_environment): Use argz.h functions
4267         instead of _hurd_split_args.
4268         (_S_msg_*_exec_flags): Functions removed.
4269         (_S_msg_startup_dosync): Stub removed.
4270
4271 Sat May  4 02:11:55 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4272
4273         * sysdeps/mach/hurd/ptrace.c: Set _hurdsig_traced instead of
4274         EXEC_TRACED bit in _hurd_exec_flags.
4275         Pass sigcode arg in msg_sig_post_untraced rpc.
4276
4277         * sysdeps/mach/hurd/access.c: Don't pass io port in
4278         auth_user_authenticate rpc.
4279
4280         * posix/sched.h: Fix typos.
4281
4282         * sysdeps/mach/hurd/fork.c: Use new critical section lock.
4283         Clear _hurdsig_traced instead of EXEC_TRACED.
4284
4285         * sysdeps/stub/nanosleep.c (nanosleep): Fix typo.
4286
4287         * wcsmbs/wcstol.c: Find strtol.c in ../stdlib.
4288         * wcsmbs/wcstof.c: Find strtod.c in ../stdlib.
4289         * wcsmbs/wcstod.c: Likewise.
4290         * wcsmbs/wcstold.c: Likewise.
4291
4292         * wcsmbs/wcwidth.h: Find cname-lookup.h in ../wctype.
4293
4294         * string/envz.c (envz_entry): Use const.
4295         (envz_get, envz_remove): Likewise.
4296         (envz_entry): Return char *, not const char *.
4297
4298         * string/envz.h: Fix decl.
4299
4300         * string/argz-create.c: Use const in prototype.
4301         * string/argz-next.c: Likewise.
4302
4303 Fri May  3 13:32:08 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4304
4305         * sysdeps/mach/hurd/sigprocmask.c: Pass sigcode arg to msg_sig_post.
4306         * sysdeps/mach/hurd/i386/sigreturn.c: Likewise.
4307         * sysdeps/mach/hurd/sigsuspend.c: Likewise.
4308         * sysdeps/mach/hurd/kill.c: Likewise.
4309
4310         * hurd/hurdexec.c (_hurd_exec): Use new critical section lock.
4311         * hurd/catch-exc.c (_S_catch_exception_raise): Likewise.
4312         * hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Likewise.
4313         * hurd/thread-cancel.c (hurd_thread_cancel, hurd_check_cancel):
4314         Likewise.
4315         * sysdeps/mach/hurd/jmp-unwind.c (_longjmp_unwind): Likewise.
4316         * sysdeps/mach/hurd/sigaction.c: Likewise.
4317
4318         * sysdeps/mach/hurd/errnos.awk: Don't use ARGV in comment; it can
4319         change meaninglessly.
4320
4321         * hurd/hurd/signal.h (struct hurd_sigstate): Replace critical section
4322         flag with a spin lock.
4323         (_hurd_critical_section_lock): Use spin_try_lock on that to see if we
4324         get it.  No need to take SS->lock at all.
4325         (_hurd_critical_section_unlock): Unlock SS->critical_section_lock
4326         instead of clearing the old flag member.
4327         * hurd/hurdsig.c (_hurd_internal_post_signal): Use spin_lock_locked to
4328         test the critical section state.
4329
4330         * hurd/hurdinit.c (_hurd_init): Set _hurdsig_traced from the intarray.
4331
4332         * hurd/hurdkill.c (_hurd_sig_post): Pass 0 sigcode in msg_sig_post.
4333
4334         * hurd/hurdsig.c (_hurd_internal_post_signal): Test _hurdsig_traced
4335         instead of testing (_hurd_exec_flags & EXEC_TRACED).
4336         (_S_msg_sig_post): Take sigcode arg and pass it through.
4337         (_S_msg_sig_post_untraced): Likewise.
4338         (reauth_proc): Don't pass proc port in auth_user_authenticate.
4339
4340         * hurd/setauth.c (_hurd_setauth): Don't pass object ports in
4341         auth_user_authenticate RPCs, just the one-off rendezvous port.
4342         * hurd/dtable.c (reauth_dtable): Likewise.
4343         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): Likewise.
4344
4345         * hurd/hurdexec.c (_hurd_exec): Pass 0 flags to file_exec.
4346         Pass sigcode arg to msg_sig_post.
4347
4348         * string/argz.h (argz_create): Use const in prototype.
4349
4350         * hurd/hurdinit.c (_hurd_proc_init): Test _hurdsig_traced instead of
4351         testing (_hurd_exec_flags & EXEC_TRACED).
4352         Pass sigcode arg to msg_sig_post.
4353
4354         * hurd/hurd.h: Declare _hurdsig_traced.
4355
4356         * string/argz.h (__argz_next): Cast ENTRY before returning it.
4357
4358         * hurd/hurd/signal.h (_hurd_critical_section_unlock): Pass sigcode arg
4359         to msg_sig_post.
4360
4361         * hurd/path-lookup.c: New file.
4362         * hurd/Makefile (routines): Add path-lookup.
4363         * hurd/hurd/lookup.h: Declare file_name_path_scan,
4364         hurd_file_name_path_lookup.
4365         * hurd/hurd.h: Declare file_name_path_lookup.
4366
4367         * sysdeps/mach/hurd/select.c: The io_select rpc no longer has a TAG_ID
4368         argument.  Instead, use a separate reply port for each RPC and put them
4369         all in a port set to wait for slow replies.
4370
4371         * intl/Makefile (CPPFLAGS): Change $(nlsdir) to $(i18ndir) in
4372         LOCALE_ALIAS_PATH.
4373
4374 Fri May  3 03:14:02 1996  Ulrich Drepper  <drepper@cygnus.com>
4375
4376         * intl/Makefile (routines): Add l10nflist and explodename.
4377         (distribute): Add loadinfo.h and locale.alias.
4378         (install-others): New variable to install locale.alias.
4379
4380         * intl/dcgettext.c, intl/finddomain.c, intl/gettextP.h,
4381         intl/loadmsgcat.c: Adapt for upcoming gettext-0.10.13.  Some code
4382         is now shared with the locale implementation.
4383
4384         * intl/explodename.c, intl/l10nflist.c, intl/loadinfo.h: New file.
4385         Extracted from finddomain.c.  This is also used in the locale
4386         implementation.
4387
4388         * intl/locale.alias: New file.  Locale alias database compatible
4389         with X Window System's locale alias file.  Can now be used in
4390         locale and gettext code.
4391
4392         * libio/stdio.h: Add prototypes for asprint and vasprintf.
4393
4394         * locale/C-collate.c, locale/C-ctype.c, locale/C-messages.c,
4395         locale/C-monetary.c, locale/C-numeric.c, locale/C-time.c: Add new
4396         field in structure with name of locale ("C" in this case).
4397
4398         * locale/Makefile (routines): Add findlocale.
4399
4400         * locale/findlocale.c: New file.  Instead of trying to load the
4401         directly described file we now try to be much smarter when this
4402         fails.  Use the same code as gettext does.
4403
4404         * locale/loadlocale.c, locale/setlocale.c: Rewrite to know about
4405         new loading scheme.
4406
4407         * locale/localeinfo.h: Adapt prototypes and declarations for new
4408         setlocale implementation.  Remove definition of u32_t type.  We
4409         now use u_int32_t from <sys/types.h>.
4410
4411         * locale/programs/charset.h (ILLEGAL_CHAR_VALUE): Provide type
4412         with constant.
4413
4414         * locale/programs/config.h, locale/lc-collate.c,
4415         locale/localeinfo.h, locale/programs/ld-collate.c,
4416         locale/programs/ld-ctype.c, locale/programs/ld-messages.c,
4417         locale/programs/ld-monetary.c, locale/programs/ld-numeric.c,
4418         locale/programs/ld-time.c, locale/weight.h, string/strcoll.c:
4419         Change to use u_int32_t and u_int16_t.
4420
4421         * locale/programs/localedef.c (construct_output_path): Change name
4422         of output locale to contain normalized form of the character set
4423         portion.
4424
4425         * string/Makefile (routines): Add agrz-ctsep and argz-next.
4426         (tests): Add tst-strlen.
4427
4428         * string/argz-ctsep.c: New file.  Implement reverse operation
4429         from argz-stringify.
4430
4431         * string/argz-next.c: Non-inline version of function from argz.h.
4432
4433         * string/argz.h, string/envz.h: Make usable as global header file.
4434
4435         * string/envz.c: Fix declarations to use size_t where prototypes
4436         say so.
4437
4438         * string/tst-strlen.c: New file.  Another test for critical
4439         situation in strlen implementations.
4440
4441         * sysdeps/i386/i586/strlen.S: Fix bug with highest byte in word
4442         being zero.
4443
4444         * wctype/test_wctype.c: Fix controlling comparison after change to
4445         32 bit character class array.
4446
4447 Fri May  3 12:53:12 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4448
4449         * sysdeps/unix/sysv/linux/sys/socket.h: Remove spurious doubled line.
4450
4451 Thu May  2 22:50:52 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4452
4453         * sysdeps/unix/sysv/linux/getpriority.c: New file.
4454         * sysdeps/unix/sysv/linux/syscalls.list: Add s_getpriority.
4455
4456 Thu May  2 22:41:31 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4457
4458         * sysdeps/unix/sysv/linux/m68k/fpu_control.h (_FPU_DEFAULT):
4459         Disable all exceptions.
4460
4461 Thu May  2 22:33:14 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4462
4463         * sysdeps/m68k/fpu/e_acos.c, sysdeps/m68k/fpu/e_acosf.c,
4464         sysdeps/m68k/fpu/e_fmod.c, sysdeps/m68k/fpu/e_fmodf.c,
4465         sysdeps/m68k/fpu/isinfl.c, sysdeps/m68k/fpu/isnanl.c,
4466         sysdeps/m68k/fpu/s_atan.c, sysdeps/m68k/fpu/s_atanf.c,
4467         sysdeps/m68k/fpu/s_frexp.c, sysdeps/m68k/fpu/s_frexpf.c,
4468         sysdeps/m68k/fpu/s_ilogb.c, sysdeps/m68k/fpu/s_ilogbf.c,
4469         sysdeps/m68k/fpu/s_isinf.c, sysdeps/m68k/fpu/s_isinff.c,
4470         sysdeps/m68k/fpu/s_ldexp.c, sysdeps/m68k/fpu/s_ldexpf.c,
4471         sysdeps/m68k/fpu/s_modf.c, sysdeps/m68k/fpu/s_modff.c: Don't
4472         define __NO_MATH_INLINES, which is already defined on command
4473         line.
4474
4475 Thu May  2 22:18:28 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4476
4477         * sysdeps/libm-ieee754/e_j0f.c (__ieee754_j0f, __ieee754_y0f):
4478         Replace 0x80000000 by 0x48000000.
4479         * sysdeps/libm-ieee754/e_j1f.c (__ieee754_j1f): Likewise.
4480
4481 Thu May  2 21:30:33 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4482
4483         * sunrpc/svc_simple.c: Make global variable pl local to
4484         registerrpc.
4485
4486 Thu May  2 00:24:04 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4487
4488         * time/Makefile (tz-cflags): New variable.
4489         (CFLAGS-tzfile.c): New variable.
4490         (CFLAGS-zic.c): Add $(tz-cflags).
4491         (tz-cc): Remove variable.
4492         ($(objpfx)tzfile.o, $(objpfx)zic.o): Remove targets.
4493
4494 Wed May  1 09:10:04 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4495
4496         * sysdeps/mach/hurd/getcwd.c: Jump out of both loops when we find a
4497         name, instead of checking for reaching end of buffer, which happens
4498         when the match is the last entry in the buffer.
4499
4500         * time/strftime.c: Use canonical autoconf nugget for time.h+sys/time.h
4501         include.
4502
4503 Mon Apr 29 02:48:26 1996  Ulrich Drepper  <drepper@cygnus.com>
4504
4505         * ctype/ctype-info.c: (__ctype_width): New variable.
4506         (__ctype_names): Initialize correctly without offset.
4507
4508         * locale/C-collate.c, locale/C-ctype.c,
4509         locale/C-messages.c, locale/C-monetary.c,
4510         locale/C-numeric.c, locale/C-time.c: Change copyright.
4511
4512         * locale/C-ctype.c (_nl_C_LC_CTYPE_class32): Correct
4513         endianess for initialization value.
4514
4515         * locale/lc-ctype.c (current): Add parameter for offset.
4516         (__ctype32_b, __ctype_width): Add initialization for these
4517         variables.
4518
4519         * locale/programs/charmap.c: Finish support for WIDTH information.
4520         (new_width): New function.
4521
4522         * locale/programs/charset.h (width_rule): new data structure.
4523         (charset_t): Add elements for width information.
4524
4525         * locale/programs/ld-ctype.c (locale_ctype_t): Add element
4526         for width information.
4527         (allocate_arrays): Add new argument for charset.
4528         (ctype_finish): Make sure all characters named in charset
4529         width table are known to name table.
4530         (ctype_output): Correct handling of class and map name
4531         information and write out width information.
4532         (find_idx): Prepare for being called with NULL pointer as
4533         TABLE argument.  This means only allocate name entry.
4534         (allocate_arrays): Correct handling of array element -1.
4535         Because EOF == -1 the value of element 127 must *not* be
4536         mirrored here.
4537         Fill width information from charset tables.
4538
4539         * locale/programs/localedef.c (main): Correct loop over all
4540         categories after change of order from Thu Mar 28 14:22:51 1996.
4541         Add new charset argument to call of `write_all_categories'.
4542
4543         * locale/programs/locales.h (ctype_finish, ctype_output): New
4544         charset argument.
4545
4546         * locale/programs/locfile.c (write_all_categories): Call
4547         `ctype_output' with additional argument charset.
4548
4549         * posix/getconf.c (vars): Add _POSIX_SYNC_IO, _POSIX_ASYNC_IO,
4550         and _POSIX_PRIO_IO definitions.
4551
4552         * posix/posix2_lim.h: Add definition of _POSIX2_CHARCLASS_NAME_MAX
4553         and CHARCLASS_NAME_MAX.
4554
4555         * posix/unistd.h: Document _POSIX_SYNC_IO, _POSIX_ASYNC_IO,
4556         and _POSIX_PRIO_IO.
4557
4558         * stdlib/grouping.h: Prepare for use in wide string functions.
4559
4560         * stdlib/stdlib.h: Correct prototypes for __strto*_internal
4561         functions.
4562
4563         * stdlib/strtod.c: Extend for use as `wcsto{f,d,ld}'.
4564
4565         * stdlib/strtol.c: Extend for use as `wcsto{l,ul,q,uq}'.
4566
4567         * string/strcoll.c: Extend for use as `wcscoll'.
4568
4569         * string/strxfrm.c: Extend for use as `wcsxfrm'.
4570
4571         * sysdeps/generic/confname.h: Add definition of _PC_SYNC_IO,
4572         _PC_ASYNC_IO, _PC_PRIO_IO and _SC_CHARCLASS_NAME_MAX.
4573
4574         * sysdeps/generic/stpncpy.c: Correct return value.
4575
4576         * sysdeps/posix/fpathconf.c: Add handling of _PC_SYNC_IO,
4577         _PC_ASYNC_IO, and _PC_PRIO_IO.
4578
4579         * sysdeps/posix/sysconf.c: Add handling of _SC_REALTIME_SIGNALS,
4580         _SC_PRIORITY_SCHEDULING, _SC_TIMERS, _SC_ASYNCHRONOUS_IO,
4581         _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO, _SC_FSYNC,
4582         _SC_MAPPED_FILES, _SC_MEMLOCK, _SC_MEMLOCK_RANGE,
4583         _SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING, _SC_SEMAPHORES,
4584         _SC_SHARED_MEMORY_OBJECTS, and _SC_CHARCLASS_NAME_MAX.
4585         * sysdeps/stub/sysconf.c: Ditto.
4586         * sysdeps/unix/sysv/sysv4/sysconf.c: Ditto.
4587
4588         * sysdeps/unix/sysv/linux/Dist: Add sys/sysctl.h.
4589
4590         * sysdeps/unix/sysv/linux/Makefile [subdir == misc]
4591         (sysdep_routines): Add s_sysctl and sysctl.
4592
4593         * sysdeps/unix/sysv/linux/sys/mman.h: Add declaration of mremap.
4594
4595         * sysdeps/unix/sysv/linux/sys/socket.h: New file.  Wrapper
4596         around kernel header.
4597
4598         * sysdeps/unix/sysv/linux/sys/sysctl.h: New file.  Define
4599         interface to `sysctl' function.
4600
4601         * sysdeps/unix/sysv/linux/syscalls.list: Add mremap and _sysctl.
4602
4603         * sysdeps/unix/sysv/linux/sysconf.c: Add handling of
4604         _SC_CHARCLASS_NAME_MAX.
4605
4606         * sysdeps/unix/sysv/linux/sysctl.c: new file.  Implement caller
4607         of _sysctl system call.
4608
4609         * sysvipc/Makefile (routines): Add ftok.
4610
4611         * sysvipc/ftok.c: use variable `proj_id' not `id'.  Patch by
4612         David Mosberger-Tang.
4613
4614         * wcsmbs/Makefile (routines): Add wcpcpy, wcpncpy, wcstol,
4615         wcstoul, wcstoq, wcstouq, wcstod, wcstold, wcstof, wcscoll,
4616         wcsxfrm, wcwidth, and wcswidth.
4617
4618         * wcsmbs/wchar.h: Add declarations for wcpcpy, wcpncpy, wcstol,
4619         wcstoul, wcstoq, wcstouq, wcstod, wcstold, wcstof, wcscoll,
4620         wcsxfrm, wcwidth, and wcswidth.
4621         Declare internal interfaces for wcsto* functions.
4622         [OPTIMIZE]: Define inline functions for wcsto* functions to
4623         call internal interface functions.
4624
4625         * wcsmbs/wcpcpy.c, wcsmbs/wcpncpy.c: New files.  Implement non-
4626         standard function equivalent to stpcpy/stpncpy.
4627
4628         * wcsmbs/wcscoll.c: Implement `wcscoll' function by using
4629         `strcoll' implementation.
4630
4631         * wcsmbs/wcscpy.c, wcsmbs/wcsncpy.c: Use wint_t instead of
4632         wchar_t.
4633
4634         * wcsmbs/wcstod.c: Implement `wcstod' function by using `strtod'
4635         implementation.
4636         * wcsmbs/wcstof.c: Same for `wcstof'.
4637         * wcsmbs/wcstold.c: Same for `strtold'.
4638
4639         * wcsmbs/wcstol.c: Implement `wcstol' function by using `strtol'
4640         implementation.
4641         * wcsmbs/wcstoq.c: Same for `wcstoq'.
4642         * wcsmbs/wcstoul.c: Same for `wcstoul'.
4643         * wcsmbs/wcstouq.c: Same for `wcstouq'.
4644
4645         * wcsmbs/wcswidth.c: Implement `wcswidth' function from X/Open
4646         CAE.
4647         * wcsmbs/wcwidth.c: Ditto for `wcwidth'.
4648         * wcsmbs/wcwidth.h: Common function for definitions of above two
4649         functions.
4650
4651         * wcsmbs/wcsxfrm.c: Implement `wcsxfrm function by using
4652         `strxfrm implementation.
4653
4654         * wctype/wctype.c: Remove case for `wctype_t' being 16 bit type.
4655
4656         * wctype/wctype.h (wint_t): Protect against multiple definition.
4657         (wctype_t): Always define as `unsigned long int'.
4658
4659         * wctype.h: New file.  Wrapper around wctype/wctype.h.
4660
4661 Tue Apr 30 17:30:46 1996  Miles Bader  <miles@gnu.ai.mit.edu>
4662
4663         * hurd/hurdsig.c (_hurdsig_abort_rpcs): Add timeout argument to
4664         interrupt_operation call.
4665         (_hurdsig_interrupt_timeout): New variable.
4666
4667         * hurd/report-wait.c (describe_number): Correctly allocate space
4668         in DESCRIPTION for the digits in I.
4669
4670 Mon Apr 29 00:11:59 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4671
4672         * hurd/hurdstartup.c (_hurd_split_args): Function removed.
4673         (_hurd_startup): Use argz functions.
4674
4675         * hurd/hurdexec.c: Use argz functions.
4676
4677         * errno.h [!__error_t_defined] (error_t): New type.
4678         * sysdeps/mach/hurd/errnos.awk: #define __error_t_defined after the
4679         typedef in errnos.h.
4680
4681         * string/envz.c, string/envz.h: New files.
4682         * string/argz.h, string/argz-append.c, string/argz-count.c,
4683         string/argz-create.c, string/argz-delete.c, string/argz-extract.c,
4684         string/argz-insert.c, string/argz-stringify.c: New files.
4685         * string/Makefile (routines): Add envz, argz-*.
4686         (headers): Add argz.h, envz.h.
4687
4688 Sun Apr 28 14:14:35 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4689
4690         * sysdeps/unix/sysv/linux/i386/Makefile: New file.
4691
4692 Wed Apr 24 17:35:30  Ulrich Drepper  <drepper@cygnus.com>
4693
4694         * inet/netinet/in.h, socket/sys/socket.h: Move to
4695         sysdeps/generic/netinet/in.h, sysdeps/generic/sys/socket.h.
4696         * netinet/in.h, sys/socket.h: Remove file.
4697
4698         * misc/Makefile (routines): Add fdatasync.
4699
4700         * posix/Makefile (headers): Add sched.h.
4701         (routines): Add nanosleep, sched_setp, sched_getp, sched_sets,
4702         sched_gets, sched_yield, sched_primax, sched_primin, sched_rr_gi.
4703
4704         * posix/getconf.c (vars): Add entries for _POSIX_REALTIME_SIGNALS,
4705         _POSIX_PRIORITY_SCHEDULING, _POSIX_TIMERS, _POSIX_ASYNCHRONOUS_IO,
4706         _POSIX_PRIORITIZED_IO, _POSIX_SYNCHRONIZED_IO, _POSIX_FSYNC,
4707         _POSIX_MAPPED_FILES, _POSIX_MEMLOCK, _POSIX_MEMLOCK_RANGE,
4708         _POSIX_MEMORY_PROTECTION, _POSIX_MESSAGE_PASSING,
4709         _POSIX_SEMAPHORES, _POSIX_SHARED_MEMORY_OBJECTS.
4710
4711         * posix/sched.h: New file.  Header for POSIX scheduling interface.
4712
4713         * posix/unistd.h: Describe options from POSIX.4.
4714         Add declaration of fdatasync.
4715
4716         * sysdeps/generic/confname.h: Add definition for
4717          _SC_REALTIME_SIGNALS, _SC_PRIORITY_SCHEDULING, _SC_TIMERS,
4718         _SC_ASYNCHRONOUS_IO, _SC_PRIORITIZED_IO, _SC_SYNCHRONIZED_IO,
4719         _SC_FSYNC, _SC_MAPPED_FILES, _SC_MEMLOCK, _SC_MEMLOCK_RANGE,
4720         _SC_MEMORY_PROTECTION, _SC_MESSAGE_PASSING,
4721         _SC_SEMAPHORES, _SC_SHARED_MEMORY_OBJECTS.
4722
4723         * sysdeps/generic/fdatasync.c: New file.  Default implementation
4724         simply uses fsync.
4725
4726         * sysdeps/generic/netinit/in.h: Moved to here from inet/netinet/in.h.
4727
4728         * sysdeps/generic/schedbits.h: New file.  System dependent
4729         defintion for POSIX.4 scheduling interface.
4730
4731         * sysdeps/generic/sys/socket.h: Moved to here from socket/sys/socket.h.
4732
4733         * sysdeps/stub/nanosleep.c, sysdeps/stub/sched_getp.c,
4734         sysdeps/stub/sched_gets.c, sysdeps/stub/sched_primax.c,
4735         sysdeps/stub/sched_primin.c, sysdeps/stub/sched_rr_gi.c,
4736         sysdeps/stub/sched_setp.c, sysdeps/stub/sched_sets.c,
4737         sysdeps/stub/sched_yield.c: New file:  Stub implementation
4738         for systems missing these POSIX.4 system calls.
4739
4740         * sysdeps/unix/sysv/linux/gnu/types.h,
4741         sysdeps/unix/sysv/linux/ioctls.h: Use kernel header for
4742         data type definitions.
4743
4744         * sysdeps/unix/sysv/linux/netinet/in.h: New file.  Linux
4745         specific version.
4746
4747         * sysdeps/unix/sysv/linux/posix_opt.h: New file.  Define POSIX
4748         options applicable for Linux.
4749
4750         * sysdeps/unix/sysv/linux/syscalls.list: Add definitions for
4751         fdatasync, nanosleep, sched_setparam, sched_getparam,
4752         sched_setscheduler, sched_getscheduler, sched_yield,
4753         sched_get_priority_max, sched_get_priority_min, and
4754         sched_rr_get_interval.
4755
4756         * sysdeps/unix/sysv/linux/sysconf.c: Add handling of POSIX.4
4757         options.
4758
4759         * sysdeps/unix/sysv/linux/termbits.h: Use kernel headers.
4760
4761         * time/sys/time.h: Remove definition of `struct timespec'.
4762
4763         * time/time.h (struct timespec): Move definition to here.
4764
4765 Fri Apr 26 01:55:07 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4766
4767         * malloc/mcheck.c (mabort): Use __libc_fatal only #ifdef _LIBC.
4768
4769 Thu Apr 25 15:49:57 1996  Miles Bader  <miles@gnu.ai.mit.edu>
4770
4771         * sysdeps/mach/hurd/getcwd.c (__getcwd): When we find a match in
4772         the scan for a name, avoid doing another readdir (which overwrites
4773         NENTRIES, and was resulting in a bogus ENOENT).
4774
4775         * sysdeps/mach/hurd/fcntl.c (__fcntl): Add missing break after F_SETFL.
4776
4777 Wed Apr 24 00:22:42 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4778
4779         * stdio/internals.c (seek_to_target): Set errno if seek function
4780         returns the wrong offset.
4781
4782         * wcsmbs/wcsrtombs.c [! EILSEQ] (EILSEQ): Define to EINVAL.
4783         * wcsmbs/wcrtomb.c: Likewise.
4784
4785         * stdio-common/vfprintf.c: Include errno.h.
4786
4787 Tue Apr 23 21:09:14 1996  Miles Bader  <miles@gnu.ai.mit.edu>
4788
4789         * hurd/hurdsig.c (signal_allowed): For SIGIO/SIGURG, add a new
4790         variable, LUCKY, to use instead of setting D to -1 (which fouls
4791         things up).
4792
4793 Tue Apr 23 15:56:56 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4794
4795         * config.h.in (HAVE_REGEX): New macro.
4796
4797         * sysdeps/unix/syscalls.list: Add statfs, fstatfs.
4798         * io/Makefile (headers): Add sys/statfs.h, statfsbuf.h.
4799         (routines): Add statfs, fstatfs.
4800         * sysdeps/mach/hurd/statfs.c: New file.
4801         * sysdeps/mach/hurd/fstatfs.c: New file.
4802         * sysdeps/stub/fstatfs.c: New file.
4803         * sysdeps/stub/statfs.c: New file.
4804         * io/sys/statfs.h: New file.
4805         * sysdeps/generic/statfsbuf.h: New file.
4806         * sysdeps/unix/sysv/linux/statfsbuf.h: New file.
4807
4808 Tue Apr 23 00:06:47 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4809
4810         * malloc/Makefile (gmalloc-routines): Add valloc back here.
4811         (dist-routines): Remove it here.
4812         * malloc/valloc.c [_MALLOC_INTERNAL && GMALLOC_INHIBIT_VALLOC]
4813         (ELIDE_VALLOC): Define it.
4814         [! ELIDE_VALLOC]: Make whole file conditional on this.
4815         * malloc/malloc.h (valloc): Make decl conditional on
4816         [!GMALLOC_INHIBIT_VALLOC] instead of [!emacs].
4817
4818 Mon Apr 22 00:02:19 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4819
4820         * MakeTAGS: Include version.mk.
4821         (po/SYS_libc.pot): Add missing / in sed s cmd.
4822
4823 Sat Apr 20 18:13:00 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4824
4825         * Makerules (no-whole-archive): Test $(have-no-whole-archive), not
4826         $(libc_cv_ld_no_whole_archive).
4827
4828 Sat Apr 20 17:07:17 1996  Ulrich Drepper  <drepper@cygnus.com>
4829
4830         * assert/assert.h, ctype/ctype.h, dirent/dirent.h, errno.h,
4831         grp/grp.h, io/fcntl.h, io/sys/stat.h, io/utime.h, locale/locale.h,
4832         math/math.h, misc/nlist.h, misc/sgtty.h, misc/sys/file.h,
4833         misc/sys/ioctl.h, misc/sys/uio.h, posix/sys/times.h,
4834         posix/sys/types.h, posix/sys/utsname.h, posix/sys/wait.h,
4835         posix/tar.h, posix/wordexp.h, pwd/pwd.h, resource/sys/vlimit.h,
4836         resource/sys/vtimes.h, setjmp/setjmp.h, signal/signal.h,
4837         stdio-common/printf.h, stdlib/alloca.h, stdlib/stdlib.h,
4838         string/string.h, sysdeps/generic/sigaction.h,
4839         sysdeps/generic/sigset.h, sysdeps/generic/sys/ptrace.h,
4840         sysdeps/generic/sys/ptrace.h, sysdeps/unix/bsd/osf/sigaction.h,
4841         sysdeps/unix/sysv/linux/sys/ptrace.h,
4842         sysdeps/unix/sysv/minix/sigaction.h,
4843         sysdeps/unix/sysv/sco3.2.4/sigaction.h,
4844         sysdeps/unix/sysv/sysv4/sigaction.h,
4845         sysdeps/unix/sysv/sysv4/sigset.h, termios/termios.h,
4846         time/sys/time.h, time/time.h: Fix copyright comment.
4847
4848 Fri Apr 19 00:49:44 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4849
4850         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): If uids and gids are
4851         not given in stack aux vector, fetch them with syscalls.
4852
4853         * stdlib/rpmatch.c (rpmatch: try): Take new arg NOMATCH, return value
4854         for nonmatching nonerror (instead of !MATCH).
4855         (rpmatch): Use it, so we return -1 when NOEXPR doesn't match either.
4856
4857         * resolv/getnetnamadr.c (getnetbyaddr): Use u_int32_t instead of
4858         unsigned long for variable NET2.
4859
4860         * time/etcetera, time/europe, time/solar89: Updated from ADO's 96e.
4861
4862 Tue Apr  9 14:37:31 1996  Ulrich Drepper  <drepper@cygnus.com>
4863
4864         * catgets/Makefile, catgets/catgets.c, catgets/catgetsinfo.h,
4865         catgets/config.h, catgets/gencat.c, catgets/nl_types.h,
4866         catgets/open_catalog.c: New files.  Implementation of XPG4
4867         compliant catgets() function and needed tools.
4868         * Makefile (subdirs): Add catgets.
4869
4870 Thu Apr 18 23:36:11 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4871
4872         * math/Makefile (CPPFLAGS): Append -D__NO_MATH_INLINES.
4873
4874 Wed Apr 10 20:48:43 1996  Ulrich Drepper  <drepper@cygnus.com>
4875
4876         * stdio-common/vfprintf.c: Correct some typos.
4877
4878         * sysdeps/libm-ieee754/w_gammaf.c, sysdeps/libm-ieee754/w_lgamma.c,
4879         sysdeps/libm-ieee754/w_lgammaf.c: Reference signgam instead of
4880         __signgam.
4881
4882 Thu Apr 18 21:07:27 1996  Roland McGrath  <roland@delasyd.gnu.ai.mit.edu>
4883
4884         * Makerules (no-whole-archive): New variable.
4885         (build-shlib): Use it.
4886         * elf/Makefile (libdl.so): Use it.
4887         * configure.in (libc_cv_ld_no_whole_archive): New check for
4888         --no-whole-archive.
4889         * config.make.in (have-no-whole-archive): New variable.
4890
4891         * stdio-common/printf_fp.c: Increase fudge factor for BIGNUM_SIZE calc
4892         from 3 to 4.
4893
4894         * Make-dist: Include version.mk.
4895         (version, release): Variables removed.
4896         * Makeconfig (version.mk): New target.
4897
4898 Fri Apr 19 01:42:18 1996  Ulrich Drepper  <drepper@cygnus.com>
4899
4900         * locale/Makefile (headers): Add langinfo.h.
4901         (CPPFLAGS): Remove -Iliblib.
4902
4903 Mon Apr 15 16:49:04 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
4904
4905         * malloc/memalign.c, malloc/malloc.h [__DJGPP__ == 1]: Elide memalign
4906         function and its declaration.
4907
4908 Wed Apr 10 14:13:45 1996  Miles Bader  <miles@gnu.ai.mit.edu>
4909
4910         * hurd/sigunwind.c (_hurdsig_longjmp_from_handler): Store
4911         MACH_PORT_DEAD in the thread reply-port variable before destroying
4912         the signal handler's reply port, to avoid infinite recursion.
4913
4914 Mon Apr  8 18:27:17 1996  Miles Bader  <miles@gnu.ai.mit.edu>
4915
4916         * sysdeps/mach/gettimeofday.c (__gettimeofday): Don't fail if the
4917         user passes in TZ, just zero it (emacs passes in a dummy variable,
4918         and rms says the hurd should be the one to change).
4919
4920 Sun Apr  7 10:37:30 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
4921
4922         * sysdeps/mach/hurd/fork.c: Don't leak send rights to the child's proc
4923         port in the parent.
4924
4925 Fri Apr  5 17:43:41 1996  Miles Bader  <miles@gnu.ai.mit.edu>
4926
4927         * sysdeps/mach/hurd/i386/sigreturn.c (__sigreturn): Store
4928         MACH_PORT_DEAD in the thread reply-port variable before destroying
4929         the signal handler's reply port to avoid infinite recursion.
4930         * sysdeps/mach/hurd/mig-reply.c (__mig_dealloc_reply_port): Only
4931         attempt to destroy PORT if it's a valid port name.
4932
4933 Wed Apr  3 17:10:44 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
4934
4935         * extra-lib.mk: Put libs in $(common-objpfx) instead of $(objpfx).
4936         * Makerules ($(install-lib) rules): Find libs with $(common-objpfx)
4937         instead of $(objpfx).
4938
4939 Tue Apr  2 21:27:01 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
4940
4941         * posix/glob.c (glob_pattern_p): Avoid scanning past eos if
4942         the pattern ends with a backslash and quoting is enabled.
4943         * posix/fnmatch.c (fnmatch): Likewise; return FNM_NOMATCH for such
4944         patterns.
4945
4946 Mon Apr  1 13:34:55 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
4947
4948         * stdio-common/tst-printf.c (main): Add new test case.
4949
4950         * sysdeps/generic/setenv.c (unsetenv): Use old-style definition.
4951
4952 Mon Apr  1 11:39:10  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
4953
4954         * stdlib/strtod.c (STRTOD): Fix handling of American style FP
4955         numbers.
4956
4957         * stdio-common/vfprintf.c (vfprintf): Don't increment format
4958         string pointer twice after seeing `*'.
4959
4960 Sun Mar 31 17:31:54 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
4961
4962         * MakeTAGS (po/SYS_libc.pot): Prepend header processed from
4963         po/header.pot.
4964
4965 Sun Mar 31 18:07:32 1996  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
4966
4967         * locale/Makefile (others, install-bin): Compiling locale works
4968         again.
4969         (locale-modules): locale has no --dump option anymore.  Remove
4970         ctypedump.
4971
4972         * locale/programs/config.h: Don't declare euidaccess.
4973         Use #include_next to get libc's config.h.
4974
4975         * locale/programs/ctypedump.c: Not needed anymore.  Dump option
4976         of locale is removed.
4977
4978         * locale/programs/locale.c: Adapt for new locale implementation.
4979
4980         * stdio-common/_itoa.h (_itoa_word): Define as inline function.
4981         * stdio-common/_itoa.c (_itoa_lower_digits, _itoa_upper_digits):
4982         Don't declare static because used in _itoa_word inline function.
4983
4984         * stdio-common/printf-parse.h: Prepare for use in wide-char
4985         stdio implementation.
4986         (find_spec): Take additional argument to work with mbrlen instead
4987         of mblen.
4988         (parse_one_spec): Ditto.
4989
4990         * stdio-common/printf-prs.c: Prepare for use in wide-char
4991         stdio implementation.
4992
4993         * stdio-common/printf.h: Mark change for wide-char handling.
4994         Changing it now would result in incompatibilities.
4995
4996         * stdio-common/vfprintf.c: New and fast implementation.
4997
4998         * wcsmbs/Makefile (routines): Remove pre-ISO C multibyte functions
4999         mbsadvance, mbscat, mbschr, mbscmp, mbscpy, mbsdup, mbslen,
5000         mbsncat, mbsncmp, mbsncpy, mbsrchr, mbstomb.
5001         Change wcswcs to wcsstr.
5002         Add wmemchr, wmemcmp, wmemcpy, wmemmove, wmemset, btowc, wctob,
5003         mbsinit, mbrlen, mbrtowc, wcrtomb, mbsrtowcs, wcsrtombs.
5004
5005         * wcsmbs/btowc.c, wcsmbs/mbrlen.c, wcsmbs/mbrtowc.c,
5006         wcsmbs/mbsinit.c, wcsmbs/mbsrtowcs.c, wcsmbs/wchar.h,
5007         wcsmbs/wcrtomb.c, wcsmbs/wcsrtombs.c, wcsmbs/wcsstr.c,
5008         wcsmbs/wctob.c, wcsmbs/wmemchr.c, wcsmbs/wmemcmp.c,
5009         wcsmbs/wmemcpy.c, wcsmbs/wmemmove.c, wcsmbs/wmemset.c: New
5010         function according to ISO C amendment 1.
5011         * wchar.h: Wrapper around "wcsmbs/wchar.h".
5012
5013         * wcsmbs/wcscat.c, wcsmbs/wcschr.c, wcsmbs/wcscmp.c,
5014         wcsmbs/wcscpy.c, wcsmbs/wcscspn.c, wcsmbs/wcsdup.c,
5015         wcsmbs/wcslen.c, wcsmbs/wcsncat.c, wcsmbs/wcsncmp.c,
5016         wcsmbs/wcsncpy.c, wcsmbs/wcspbrk.c, wcsmbs/wcsrchr.c,
5017         wcsmbs/wcsspn.c, wcsmbs/wcstok.c: Changed to conform with ISO C
5018         amendment 1.
5019
5020         * wcsmbs/mbsadvance.c, wcsmbs/mbscat.c, wcsmbs/mbschr.c,
5021         wcsmbs/mbscmp.c, wcsmbs/mbscpy.c, wcsmbs/mbsdup.c,
5022         wcsmbs/mbslen.c, wcsmbs/mbsncat.c, wcsmbs/mbsncmp.c,
5023         wcsmbs/mbsncpy.c, wcsmbs/mbsrchr.c, wcsmbs/mbstomb.c,
5024         wcsmbs/mbstr.h, wcsmbs/wcstr.h, wcsmbs/wcswcs.c: Removed.
5025         Implement functions from early drafts, not part of final standard.
5026
5027 Sun Mar 31 16:50:41 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
5028
5029         * setjmp/setjmp.h (jmp_buf): Change gratuitous struct tag name to
5030         __jmp_bug_tag so its C++ implicit typedef does not conflict with the
5031         __jmp_buf typedef.
5032
5033         * Makerules (BUILD_CFLAGS) [! objdir]: Use $(..)config.h when
5034         compiling in the source directories.
5035
5036 Fri Mar 29 16:26:35 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
5037
5038         * sysdeps/libm-ieee754/w_gamma.c: Use signgam instead of __signgam.
5039         * sysdeps/libm-ieee754/s_signgam.c: Undo last change.
5040
5041 Fri Mar 29 11:29:46 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5042
5043         * sysdeps/libm-ieee754/s_signgam.c (signgam): Renamed to __signgam,
5044         with weak alias signgam.
5045
5046 Thu Mar 28 18:32:34 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
5047
5048         * Makeconfig (+cflags, +gcc-nowarn): Use gcc flags unconditionally.
5049
5050 Thu Mar 28 14:22:51 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5051
5052         * sunrpc/rpc_main.c (main): Call textdomain.
5053
5054         * MakeTAGS (XGETTEXTFLAGS-siglist.pot, XGETTEXTFLAGS-errlist.pot): Add
5055         --no-location.
5056         (all-pot): Replace $(subdirs) files with $P/subdirs.pot.
5057         ($P/subdirs.pot): New target.
5058         ($P/SYS_libc.pot): Add -n switch.
5059
5060         * locale/locale.h (LC_*): Values reordered to match Linux libc.
5061
5062         * sysdeps/mach/hurd/kill.c: If proc_pid2task gives us MACH_PORT_NULL
5063         the process is a zombie; send no messages and return success.
5064
5065 Thu Mar 28 11:53:26 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
5066
5067         * wctype/cname-lookup.h: Find localeinfo.h in ../locale.
5068         * wctype/wctype.c: Likewise.
5069         * wctype/wctrans.c: Likewise.
5070
5071 Thu Mar 28 03:00:43 1996  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
5072
5073         * locale/nl_langinfo.c (nl_langinfo): Use DATA->values instead of
5074         DATA->strings.
5075
5076         * Makerules (BUILD_CFLAGS): Remove $(common-objpfx) from config.h.
5077
5078         * configure.in (.weakext check): Fix asm code to use .weakext instead
5079         of .weak!  Fix bogus test calls.
5080         * configure: Regenerated.
5081
5082 Thu Mar 28 03:25:10 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5083
5084         * locale/programs/xmalloc.c: Test _LIBC as well as STDC_HEADERS.
5085
5086         * locale/programs/ld-collate.c (collate_finish): Use error_at_line
5087         instead of error_with_loc.
5088
5089         * locale/weight.h: Use u_int32_t instead of u32_t.
5090         * string/strxfrm.c: Likewise.
5091
5092         * string/strxfrm.c: Find weight.h in ../locale; don't #include
5093         "localeinfo.h".
5094         * string/strcoll.c: Likewise.
5095
5096         * intl/Makefile (copysrc): Add missing > in sed cmd.
5097
5098 Sat Mar 23 17:52:49 1996  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
5099
5100         * Makeconfig: Rename Makefile variable nlsdir to i18ndir and
5101         change value to $(datadir)/i18n.  `nls' is not an appropriate
5102         name.
5103
5104         * Makefile (subdirs): Add new subdir wctype.
5105
5106         * ctype/ctype-info.c: Add new global variable __ctype_names
5107         and initialize from _nl_C_LC_CTYPE.
5108
5109         * ctype/ctype.h: In P1003.3b/D11 `alnum' is a separate character
5110         class.  Use bit 11.
5111         [_ISbit]: Protect definition of bitmasks because they are also
5112         used in wctype.h.
5113
5114         * libio/genops.c (_IO_sputbackc, _IO_sungetc): Clear EOF flag
5115         after successfully pushing back a character.
5116
5117         Fundamental changes in locale implementation.  Almost nothing
5118         from the old code is used anymore.
5119         * locale/charmap.c, locale/collate.c, locale/config.h,
5120         locale/ctypedump.c, locale/hash.h, locale/keyword.gperf,
5121         locale/keyword.h, locale/loadlocale.c, locale/locale-ctype.c,
5122         locale/locale.c locale/localeconv.c, locale/localedef.c,
5123         locale/localedef.h, locale/locfile-hash.c, locale/locfile-lex.c,
5124         locale/locfile-parse.c, locale/messages.c, locale/monetary.c,
5125         locale/numeric.c, locale/setlocale.c, locale/token.h,
5126         locale/xmalloc.c: Removed.
5127
5128         * locale/Makefile: Update for new locale implementation with
5129         program source code distributed in subdir.
5130
5131         * locale/categories.def, locale/iso-4217.def: Updated file
5132         for new locale implementation.
5133
5134         * locale/langinfo.h: Updated for new locale implementation.
5135         (ERA_D_T_FMT, ERA_T_FMT): New official values according to
5136         P1003.2b/D11.
5137         (_NL_COLLATE_NRULES, _NL_COLLATE_RULES, _NL_COLLATE_HASH_SIZE,
5138         _NL_COLLATE_HASH_LAYERS, _NL_COLLATE_TABLE_EB,
5139         _NL_COLLATE_TABLE_EL, _NL_COLLATE_UNDEFINED, _NL_COLLATE_EXTRA_EB,
5140         _NL_COLLATE_EXTRA_EL, _NL_CTYPE_NAMES_EB, _NL_CTYPE_NAMES_EL,
5141         _NL_CTYPE_HASH_SIZE, _NL_CTYPE_HASH_LAYERS, _NL_CTYPE_CLASS_NAMES,
5142         _NL_CTYPE_MAP_NAMES, _NL_CTYPE_WIDTH): New internal values for
5143         extended LC_CTYPE and LC_COLLATE implementation.
5144
5145         * locale/programs/simple-hash.c, locale/programs/simple-hash.h,
5146         locale/programs/xmalloc.c, locale/programs/xstrdup.c: Helper functions
5147         for locale related programs.
5148
5149         * locale/C-collate.c, locale/C-ctype.c,
5150         locale/C-messages.c, locale/C-monetary.c,
5151         locale/C-numeric.c, locale/C-time.c,
5152         locale/lc-collate.c, locale/lc-ctype.c,
5153         locale/lc-messages.c, locale/lc-monetary.c,
5154         locale/lc-numeric.c, locale/lc-time.c: New implementation of locale
5155         functions, and new generated "C" locale data.
5156
5157         * locale/loadlocale.c: Now handles word fields in locale binary
5158         automatically by changing the endianess if necessary.
5159
5160         * locale/localeinfo.h (LIMAGIC): Changed magic number because
5161         of incompatible changes.
5162         (locale_data): Changed definition to allow word as a value type.
5163         (coll_sort_rule): Values for collation sorting mode.
5164         (_NL_CURRENT_WORD): New macro to access word value of locale entry.
5165         (__collate_table, __collate_extra): Declare new global variables
5166         for collation tables.
5167
5168         * locale/programs/charmap-kw.gperf, locale/programs/charmap-kw.h,
5169         locale/programs/charmap.c, locale/programs/charset.c,
5170         locale/programs/charset.h, locale/programs/config.h,
5171         locale/programs/ctypedump.c, locale/programs/ld-collate.c,
5172         locale/programs/ld-ctype.c, locale/programs/ld-messages.c,
5173         locale/programs/ld-monetary.c, locale/programs/ld-numeric.c,
5174         locale/programs/ld-time.c, locale/programs/linereader.c,
5175         locale/programs/linereader.h, locale/programs/locale.c,
5176         locale/programs/localedef.c, locale/programs/locales.h,
5177         locale/programs/locfile-kw.gperf, locale/programs/locfile-kw.h,
5178         locale/programs/locfile-token.h, locale/programs/locfile.c,
5179         locale/programs/locfile.h, locale/programs/stringtrans.c,
5180         locale/programs/stringtrans.h: Implementation of locale related
5181         programs.
5182
5183         * locale/weight.h: Functions to access collation tables.
5184
5185         * posix/unistd.h: Define _POSIX2_LOCALEDEF.
5186
5187         * stdio-common/printf_fp.c: Fix bug with printing certain numbers
5188         < 10^-1.  Reported by Bill Metzenthen.
5189
5190         * stdio-common/tfformat.c: Add new test for above bug.
5191
5192         * string/strcoll.c, string/strxfrm.c: Real implementation of
5193         string collation according to ISO C.
5194
5195         * wctype/Makefile, wctype/cname-lookup.h, wctype/iswctype.c,
5196         wctype/test_wctype.c, wctype/towctrans.c, wctype/wcfuncs.c,
5197         wctype/wctrans.c, wctype/wctype.c, wctype/wctype.h: New files.
5198         Implementation of wide character classes and mapping.
5199
5200 Wed Mar 27 14:52:11 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5201
5202         * elf/rtld.c (dl_main): Call _dl_sysdep_start_cleanup after
5203         _dl_relocate_object loop.  Avoid relocating RTLD_MAP in that loop, and
5204         do it individually if necessary after _dl_sysdep_start_cleanup call.
5205
5206         * stdlib/Makefile (mpn-routines): Add divrem.
5207
5208 Tue Mar 26 22:54:14  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
5209
5210         * stdio-common/printf_fp.c (__printf_fp): Use mpn_divmod
5211         instead of __mpn_divmod.
5212
5213 Wed Mar 27 10:26:21 1996  David Mosberger-Tang  <davidm@azstarnet.com>
5214
5215         * sysdeps/alpha/setjmp.S: Must establish global pointer before
5216         address of __sigsetjmp_aux can be loaded.
5217
5218 Wed Mar 27 02:23:19 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu>
5219
5220         * sysdeps/i386/i586/memset.S: New file.  Highly optimized
5221         version for i586 contributed by Torbjorn Granlund.
5222         Adapted for use as bzero.
5223         * sysdeps/i386/i586/bzero.S: Use sysdeps/i386/i586/memset.S
5224         code to implement bzero().
5225
5226 Tue Mar 26 20:01:17 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5227
5228         * stdlib/Makefile (mpn-routines): Remove divmod.
5229
5230 Tue Mar 26 15:40:14 1996  Brendan Kehoe  <brendan@zen.org>
5231
5232         * sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h (NO_UNDERSCORES): Use
5233         wrapped with #ifndef, to avoid config.h defining it.
5234
5235 Mon Mar 25 13:10:04 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5236
5237         * malloc/realloc.c (_realloc_internal): In case of growing large
5238         block, leave _heaplimit zero across _malloc_internal call.
5239
5240         * intl/Makefile [gettext-srcdir]: Use gpl2lgpl.sed on copied sources.
5241
5242 Mon Mar 25 03:35:16 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5243
5244         * malloc/malloc.c (morecore): Don't attempt recursive realloc of info
5245         table when _heaplimit==0 during realloc growing large block.
5246
5247         * MakeTAGS (extract): Remove /dev/null from xgettext command line.
5248         (text-srcs): New variable: extract only C sources from $(tags_sources).
5249         (po/$(domain).pot): Depend on that.
5250         If it's empty, cp /dev/null $@ instead of $(extract).
5251
5252         * misc/Makefile (headers): Add iovec.h.
5253         * sysdeps/unix/sysv/linux/iovec.h: New file.
5254         * sysdeps/generic/iovec.h: New file.
5255         * misc/sys/uio.h (struct iovec): Type replaced with #include <iovec.h>.
5256
5257         * configure.in (NO_UNDERSCORES check): Use AC_TRY_LINK instead of
5258         AC_TRY_COMPILE.
5259
5260         * misc/sys/cdefs.h [__USE_BSD] (const, signed, volatile): Move these
5261         macros inside [! __STDC__].
5262
5263         * stdlib/rpmatch.c: New file.
5264         * stdlib/Makefile (routines): Add rpmatch.
5265         * stdlib/stdlib.h [__USE_SVID]: Declare rpmatch.
5266
5267         * MakeTAGS (MSGJOIN): Variable removed.
5268         (po/SYS_libc.pot): Use $(XGETTEXT) instead of $(MSGJOIN).
5269
5270 Wed Mar 20 20:08:46 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5271
5272         * sysdeps/unix/sysdep.h: Don't define C_SYMBOL_NAME.
5273
5274         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Don't define
5275         NO_UNDERSCORES.
5276
5277 Thu Mar 21 11:19:15 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5278
5279         * mach/devstream.c (input): Translate \r to \n on input.
5280
5281 Wed Mar 20 11:28:49 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5282
5283         * stdio-common/printf.h, stdio-common/printf_fp.c,
5284         stdio-common/vfprintf.c: Place const in parameter list at
5285         correct place.
5286
5287 Wed Mar 20 23:58.12 1996  Ulrich Drepper <drepper@gnu.ai.mit.edu>
5288
5289         * sysdeps/i386/ldbl2mpn.c: Copy of former version of
5290         sysdeps/ieee754/ldbl2mpn.c.
5291         * sysdeps/ieee754/ldbl2mpn.c: Remove i386 specific unification.
5292         Reported by Andreas Schwab.
5293
5294 Wed Mar 20 19:58:43 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5295
5296         * version.c: Include version.h to define RELEASE and VERSION macros.
5297         (__libc_release, __libc_version): Use them.
5298         * locale/SYS_libc.c (_libc_intl_domainname): Include ../version.h and
5299         use VERSION to define domainname as `SYS_GNU_libc-VERSION'.
5300         * Make-dist (rel+vers): Snarf the macro values from version.h.
5301
5302         * MakeTAGS (extract): Pass $(XGETTEXTFLAGS-$(@F)).
5303         (XGETTEXTFLAGS-siglist.pot, XGETTEXTFLAGS-errlist.pot): New variables;
5304         pass -a for these files.
5305
5306         * Makerules (po/%.pot): Depend on FORCE target so recursive make is
5307         always run.
5308
5309 Mon Mar 18 22:54:32 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5310
5311         * sysdeps/unix/sysv/linux/wait3.c: New file.
5312         * sysdeps/unix/sysv/linux/wait.c: Use the bsd4.4 wait, not the
5313         one from sysdeps/posix.
5314
5315 Wed Mar 20 09:42:11 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5316
5317         * sysdeps/unix/bsd/waitflags.h (WNOREAP): New macro.
5318
5319         * elf/dl-load.c (_dl_map_object_from_fd): Always set L->l_type; if not
5320         lt_executable, then lt_library.
5321         * elf/rtld.c (dl_main): Don't set NEW->l_type after _dl_map_object.
5322
5323 Wed Mar 20 00:08:23 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5324
5325         * sysdeps/unix/sysv/linux/syscalls.list: Remove gtty and stty.
5326
5327 Tue Mar 19 16:31:06 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5328
5329         * sysdeps/unix/sysv/linux/termbits.h (CRTSCTS, CBAUDEX, VEOL,
5330         VEOL2, VMIN, VTIME): Corrected.
5331         (PAGEOUT, WRAP, VDSUSP): Deleted.
5332
5333 Tue Mar 19 14:18:42 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5334
5335         * sysdeps/unix/readdir.c: Test [! _DIRENT_HAVE_D_RECLEN] instead of
5336         (sizeof (DP->d_name) > 1) to detect fixed-size dir entries.
5337
5338         * sysdeps/i386/fpu/__math.h (asinh): Call log1p instead of __log1p.
5339
5340         * math/math.h: Move M_* constants before __math.h include.
5341         [__NO_MATH_INLINES || __OPTIMIZE__]: Include __math.h only #if this.
5342
5343         * misc/efgcvt_r.c (ecvt_r): Declare floor, log10, fabs as weak extern.
5344         If log10 is not defined (i.e. no -lm), use stupid loop instead.
5345
5346         * features.h (__FAVOR_BSD): Define only if _BSD_SOURCE is defined
5347         and no other _*_SOURCE macro is.
5348         (_GNU_SOURCE): Don't define by default.
5349         * libc-symbols.h (_GNU_SOURCE): Define it.
5350
5351         * configure.in (alpha*-*-linux*): Unset $gnu_ld and $elf.
5352
5353         * config.make.in (weak-symbols): Variable removed.
5354         * configure.in (--with-weak-symbols): Option removed.
5355         (NO_UNDERSCORES, HAVE_ASM_WEAK_DIRECTIVE, HAVE_ASM_WEAKEXT_DIRECTIVE):
5356         New tests.
5357
5358         * config.h.in (HAVE_WEAK_SYMBOLS): #undef removed.
5359         (NO_UNDERSCORES, HAVE_ASM_WEAK_DIRECTIVE, HAVE_ASM_WEAKEXT_DIRECTIVE):
5360         New #undefs.
5361         * libc-symbols.h: Use them instead of HAVE_WEAK_SYMBOLS.
5362
5363         * sysdeps/unix/bsd/pause.c: Moved to sysdeps/unix/common/pause.c.
5364
5365 Mon Mar  4 20:17:28 1996  David Mosberger-Tang  <davidm@azstarnet.com>
5366
5367         * inet/inet_lnaof.c: Use u_int32_t instead of u_long.
5368         * inet/inet_mkadr.c: Likewise.
5369         * inet/inet_net.c: Likewise.
5370         * inet/inet_netof.c: Likewise.
5371         * inet/rcmd.c: Likewise.
5372         * inet/arpa/inet.h: Likewise.
5373         * inet/netinet/in.h: Likewise.
5374         * inet/netinet/tcp.h: Likewise.
5375         * inet/protocols/rwhod.h: Likewise.
5376         * inet/protocols/talkd.h: Likewise.
5377         * resolv/inet_addr.c: Likewise.
5378
5379         * sysdeps/unix/sysv/linux/adjtime.c: Use INT_MAX instead of LONG_MAX.
5380
5381         * sysdeps/unix/sysv/Makefile (sysdep_routines): Don't add s_getdents.
5382
5383         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Don't add mount,
5384         umount.
5385
5386         * sysdeps/alpha/__math.h (atan, cabs): New functions.
5387
5388         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: new file (syscall
5389         expects set-value, not pointer to it).
5390
5391 Sun Feb 25 22:36:10 1996  David Mosberger-Tang  <davidm@azstarnet.com>
5392
5393         * sysdeps/unix/sysv/linux/alpha/profil-counter.h: New file.
5394
5395         * gmon/gmon.c (__bb_head): new variable.
5396         (write_hist, write_call_graph, write_bb_counts): new functions.
5397         (_mcleanup): modified to call above functions instead of directly
5398         writing out gmon.out.
5399         * gmon/sys/gmon.h (struct __bb): New type.
5400         (struct gmonhdr): Type removed.
5401         (struct gmonparam): New member `log_hashfraction'.
5402         (GMONVERSION): Macro removed.
5403
5404         * gmon/sys/gmon_out.h, gmon/bb_exit_func.c,
5405         sysdeps/generic/bb_init_func.c, sysdeps/alpha/bb_init_func.S: new
5406         files.
5407         * gmon/Makefile (headers): Add sys/gmon_out.h.
5408         (routines): Add bb_init_func, bb_exit_func.
5409
5410         * gmon/mcount.c: Avoid integer division.
5411
5412 Wed Feb 21 23:56:41 1996  David Mosberger-Tang  <davidm@azstarnet.com>
5413
5414         * sysdeps/alpha/setjmp.S: switched order in which sp and fp are
5415         passed to match what __sigsetjmp_aux() expects.
5416
5417 Tue Feb 20 11:33:46 1996  David Mosberger-Tang  <davidm@azstarnet.com>
5418
5419         * sysdeps/unix/sysv/linux/alpha/syscalls.list (select, bind,
5420         connect, getpeername, getsockname, listen, recv, recvfrom,
5421         recvmsg, send, sendmsg, sendto, setsockopt, shutdown, socketpair):
5422         added to override same-name assembly file in the parent directory.
5423
5424         * stdlib/stdlib.h: add include of sys/types.h in front of random
5425         etc declarations to ensure int32_t is declared.
5426
5427         * stdlib/random.c, stdlib/random_r.c: replaced "long int" by int32_t
5428         where 32 bit integers are required.  Also change LONG_MAX into
5429         0x7fffffff since the intent is to turn off the sign bit in a
5430         32 bit integer.
5431
5432         * time/offtime.c (__offtime): Use Paul Eggert's code to deal
5433         with very large values for "days" (e.g., 64 bit values).
5434
5435 Mon Feb 19 22:22:12 1996  David Mosberger-Tang  <davidm@azstarnet.com>
5436
5437         * stdlib/stdlib.h (__random, __random_r, random_r, struct
5438         random_data): use int32_t instead of `long int'.
5439
5440 Sat Feb 17 11:29:29 1996  David Mosberger-Tang  <davidm@azstarnet.com>
5441
5442         * sysdeps/unix/sysv/linux/alpha/ioperm.c: new file.
5443
5444         * sysdeps/alpha/ffs.S: new file.
5445
5446         * sysdeps/alpha/fabs.c: File removed.
5447
5448         * time/tzfile.c (__tzfile_read): counter variable is i, *not*
5449         num_transitions!
5450
5451         * time/offtime.c: make capable of dealing with very large (64 bit)
5452         time_t values.  Use old algorithm until a year is reached that
5453         is an integer multiple of 400, then use DAYS_PER_400_YEARS to
5454         do the remainder in a single division.
5455
5456         * sysdeps/generic/ffs.c (ffs): fix variable declarations to
5457         be unsigned int, not unsigned long.
5458
5459         * string/test-ffs.c (main): add test case with all upper bits
5460         set.
5461
5462         * stdlib/tst-strtol.c: add tests cases for machines where
5463         sizeof(long)==8.
5464
5465         * stdlib/testrand.c (main): disallow rand() to return negative
5466         integers.
5467
5468         * stdlib/testmb.c (main): fix format to use %lx instead of %x.
5469
5470         * stdlib/stdlib.h: on 64 bit machines, declare
5471         struct random_data, __random(),  __random_r, and random_r to
5472         return "int" instead of "long int".
5473
5474         * stdlib/random_r.c: 64 bit machines use "int" instead of "long
5475         int".  Similarly, use INT_MAX instead of LONG_MAX.
5476
5477         * stdlib/random.c: on 64 bit machines, randtbl[] and __random[]
5478         need to operate on "int" instead of "long int".
5479
5480         * locale/locfile-hash.c (compute_hashval): make shifted constant
5481         a long to avoid loosing bits on 64 bit machines.
5482
5483         * dirent/tst-seekdir.c (main): fix confusing comment; print
5484         a line to mark point where directory is rewound.
5485
5486 Fri Feb 16 15:01:49 1996  David Mosberger-Tang  <davidm@azstarnet.com>
5487
5488         * time/strftime.c (strftime): any hour > 11 is PM (not > 12!).
5489
5490 Wed Feb 14 00:21:17 1996  David Mosberger-Tang  <davidm@azstarnet.com>
5491
5492         * sysdeps/unix/sysv/linux/alpha/Makefile,
5493         sysdeps/unix/sysv/linux/alpha/brk.S,
5494         sysdeps/unix/sysv/linux/alpha/fpu_control.c,
5495         sysdeps/unix/sysv/linux/alpha/fpu_control.h,
5496         sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S,
5497         sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S,
5498         sysdeps/unix/sysv/linux/alpha/pipe.S,
5499         sysdeps/unix/sysv/linux/alpha/setfpucw.c,
5500         sysdeps/unix/sysv/linux/alpha/sigprocmask.c,
5501         sysdeps/unix/sysv/linux/alpha/speed.c,
5502         sysdeps/unix/sysv/linux/alpha/start.S,
5503         sysdeps/unix/sysv/linux/alpha/syscall.S,
5504         sysdeps/unix/sysv/linux/alpha/syscalls.list,
5505         sysdeps/unix/sysv/linux/alpha/alpha/regdef.h,
5506         sysdeps/unix/sysv/linux/alpha/sysdep.S,
5507         sysdeps/unix/sysv/linux/alpha/sysdep.h: New files.
5508
5509         * sysdeps/alpha/setjmp_aux.c (__sigsetjmp_aux): restore return
5510         address register before returning (gcc 2.7.1 doesn't do it,
5511         presumably because $26 is declared as a global variable).
5512
5513         * sysdeps/unix/sysv/linux/sys/mman.h: msync was missing "flags"
5514         argument.
5515
5516         * sysdeps/unix/alarm.c (alarm): do roundup using test & increment
5517         instead of multiplication.
5518
5519         * sysdeps/posix/sleep.c (sleep): initialize sa_mask to mask of
5520         currently blocked signals instead of the empty mask to ensure
5521         that execution of alarm handler occurs with none of the currently
5522         blocked signals enabled.
5523
5524         * sysdeps/unix/alpha/sysdep.h: new file (adapted from OSF/1 version).
5525
5526         * sysdeps/unix/bsd/osf/alpha/sysdep.h: include
5527         sysdeps/unix/alpha/sysdep.h and removed definitions now in that file.
5528
5529         * sysdeps/alpha/divrem.S, sysdeps/alpha/htonl.S,
5530         sysdeps/alpha/htons.S, sysdeps/alpha/machine-gmon.h,
5531         sysdeps/alpha/_mcount.S, sysdeps/alpha/ntohl.s, sysdeps/alpha/ntohs.s,
5532         sysdeps/alpha/strlen.S: New files.
5533
5534         * sysdeps/alpha/divl.S, sysdeps/alpha/divlu.S, sysdeps/alpha/divq.S,
5535         sysdeps/alpha/divqu.S, sysdeps/alpha/divrem.m4,
5536         sysdeps/alpha/macros.m4, sysdeps/alpha/reml.S, sysdeps/alpha/remlu.S,
5537         sysdeps/alpha/remq.S, sysdeps/alpha/remqu.S, sysdeps/alpha/strlen.c:
5538         Removed.
5539
5540         * sysdeps/generic/sbrk.c (__sbrk): argument is of type ptrdiff_t, not
5541         int.
5542
5543         * sysdeps/alpha/__longjmp.c (__longjmp): moved dummy while loop
5544         to end of function to avoid a jump across NOPs.
5545
5546         * sysdeps/alpha/Makefile (sysdep_routines): Removed all rules
5547         pertaining to integer division/remainder routines since new code
5548         doesn't require them.
5549
5550         * sunrpc/xdr_mem.c, sunrpc/xdr_stdio.c: Use 4 instead of sizeof(long)
5551         where 32 bit quantities are consumed/stored.  Various other minor
5552         64-bit cleanups (casting).
5553
5554         * sunrpc/xdr.c (xdr_int): test for sizeof(int)==4 to determine
5555         whether xdr_long or xdr_short should be used to encode an int.
5556         Notice that an xdr_long is 4 bytes independent of the architecture
5557         (otherwise no Alpha could interoperate with existing NFS servers,
5558         for example).  Ditto for enums.
5559
5560         * sunrpc/svc_udp.c (svcudp_recv): changed test from 4*sizeof(u_long)
5561         to 16 since it really wants 16 bytes.
5562
5563         * sunrpc/svc.c (maskp): changed from u_long* to u_int32*.
5564
5565         * sunrpc/rpc/xdr.h (IXDR_GET_LONG, IXDR_PUT_LONG): change casts to
5566         u_int32_t (instead of u_long).
5567
5568         * sunrpc/rpc_cmsg.c (xdr_callmsg), sunrpc/svc_authux.c: increment
5569         "buf" pointer by casting it to a char* first since a long* may be 8
5570         bytes or more and oa->oa_length may be any multiple of 4.
5571
5572         * sunrpc/clnt_udp.c (clntudp_call): replaced sizeof(u_long) by 4
5573         since it really is testing for 32 bits.  Fixed casts to use
5574         u_int32 instead of u_long.
5575         * sunrpc/xdr_rec.c: Likewise.
5576
5577         * sunrpc/clnt_tcp.c (clnttcp_call): replaced u_long by u_int32.
5578         * sunrpc/rpc/auth.h: Likewise.
5579
5580         * limits.h (LONG_MAX, LONG_MIN, ULONG_MAX): use 64 bit values
5581         for Alpha.
5582
5583 Tue Mar 19 13:27:49 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5584
5585         * sysdeps/i386/fpu/__math.h: New file.
5586         Contributed by John C. Bowman <bowman@hagar.ph.utexas.edu>.
5587
5588 Sun Mar 17 00:28:16 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5589
5590         * sysdeps/posix/clock.c: Don't multiply the return value by
5591         CLOCKS_PER_SEC or CLK_TCK.
5592
5593 Mon Mar 18 13:20:46 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5594
5595         * sysdeps/mach/hurd/getcwd.c: Fail with ENOENT if a parent directory
5596         scan finds no match.
5597
5598         * posix/unistd.h (setpgrp): Declare no-arg version unless __FAVOR_BSD.
5599         * misc/bsd-compat.c (setpgrp): New function, two arg version.
5600         * sysdeps/stub/setpgid.c: Remove setpgrp alias.
5601         * sysdeps/mach/hurd/setpgid.c: Likewise.
5602         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
5603         * sysdeps/unix/common/syscalls.list (setpgid): Remove setpgrp alias.
5604         * sysdeps/unix/sysv/irix4/syscalls.list: Likewise.
5605         * sysdeps/unix/sysv/linux/setpgrp.c: Obsolete file removed.
5606         * posix/setpgrp.c (setpgrp): New file.
5607         * posix/Makefile (routines): Add setpgrp.
5608
5609         * elf/Makefile (rtld-link): New canned sequence.
5610         (ld.so, ld-linux.so.1): Use it.  Pass -soname option.
5611
5612         * sysdeps/i386/setjmp.S (__setjmp): Define compatibility entry point.
5613
5614 Sun Mar 17 23:15:32 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5615
5616         * sysdeps/unix/sysv/linux/tcgetpgrp.c,
5617         sysdeps/unix/sysv/linux/tcsetpgrp.c: New files.
5618
5619 Sun Mar 17 07:19:33 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5620
5621         * db/Makefile (CFLAGS-hash_func.c): New variable; pass -Wno-unused.
5622         (CFLAGS): Append -Wno-unitialized.
5623
5624 Sat Mar 16 20:58:43 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5625
5626         * stdlib/erand48_r.c: Use FP division by powers of two to distribute
5627         short bits into double.
5628
5629 Sat Mar 16 20:08:22 1996  David Mosberger-Tang  <davidm@azstarnet.com>
5630
5631         * sysdeps/alpha/memchr.S: New file.
5632         * sysdeps/alpha/memchr.c: Obsolete file removed.
5633         * string/tester.c: Soup up memchr tests.
5634
5635 Sat Mar 16 16:26:09 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5636
5637         * misc/Makefile (headers): Add sysexits.h.
5638         * misc/sysexits.h: New file.
5639
5640 Thu Mar 14 15:20:45 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5641
5642         * sysdeps/libm-ieee754/e_atan2.c (__ieee754_atan2): Change atan
5643         call to __atan.
5644         * sysdeps/libm-ieee754/e_atan2f.c (__ieee754_atan2f): Change atanf
5645         call to __atanf.
5646
5647         * sysdeps/m68k/fpu/e_acos.c, sysdeps/m68k/fpu/e_acosf.c,
5648         sysdeps/m68k/fpu/e_asin.c, sysdeps/m68k/fpu/e_asinf.c,
5649         sysdeps/m68k/fpu/e_atanh.c, sysdeps/m68k/fpu/e_atanhf.c,
5650         sysdeps/m68k/fpu/e_cosh.c, sysdeps/m68k/fpu/e_coshf.c,
5651         sysdeps/m68k/fpu/e_exp.c, sysdeps/m68k/fpu/e_expf.c,
5652         sysdeps/m68k/fpu/e_fmod.c, sysdeps/m68k/fpu/e_fmodf.c,
5653         sysdeps/m68k/fpu/e_log.c, sysdeps/m68k/fpu/e_log10.c,
5654         sysdeps/m68k/fpu/e_log10f.c, sysdeps/m68k/fpu/e_logf.c,
5655         sysdeps/m68k/fpu/e_pow.c, sysdeps/m68k/fpu/e_powf.c,
5656         sysdeps/m68k/fpu/e_remainder.c, sysdeps/m68k/fpu/e_remainderf.c,
5657         sysdeps/m68k/fpu/e_scalb.c, sysdeps/m68k/fpu/e_scalbf.c,
5658         sysdeps/m68k/fpu/e_sinh.c, sysdeps/m68k/fpu/e_sinhf.c,
5659         sysdeps/m68k/fpu/e_sqrt.c, sysdeps/m68k/fpu/e_sqrtf.c,
5660         sysdeps/m68k/fpu/k_cos.c, sysdeps/m68k/fpu/k_cosf.c,
5661         sysdeps/m68k/fpu/k_sin.c, sysdeps/m68k/fpu/k_sinf.c,
5662         sysdeps/m68k/fpu/k_tan.c, sysdeps/m68k/fpu/k_tanf.c,
5663         sysdeps/m68k/fpu/s_atan.c, sysdeps/m68k/fpu/s_atanf.c,
5664         sysdeps/m68k/fpu/s_ceil.c, sysdeps/m68k/fpu/s_ceilf.c,
5665         sysdeps/m68k/fpu/s_cos.c, sysdeps/m68k/fpu/s_cosf.c,
5666         sysdeps/m68k/fpu/s_expm1.c, sysdeps/m68k/fpu/s_expm1f.c,
5667         sysdeps/m68k/fpu/s_fabs.c, sysdeps/m68k/fpu/s_fabsf.c,
5668         sysdeps/m68k/fpu/s_finite.c, sysdeps/m68k/fpu/s_finitef.c,
5669         sysdeps/m68k/fpu/s_floor.c, sysdeps/m68k/fpu/s_floorf.c,
5670         sysdeps/m68k/fpu/s_frexp.c, sysdeps/m68k/fpu/s_frexpf.c,
5671         sysdeps/m68k/fpu/s_ilogb.c, sysdeps/m68k/fpu/s_ilogbf.c,
5672         sysdeps/m68k/fpu/s_isinf.c, sysdeps/m68k/fpu/s_isinff.c,
5673         sysdeps/m68k/fpu/s_isnan.c, sysdeps/m68k/fpu/s_isnanf.c,
5674         sysdeps/m68k/fpu/s_ldexp.c, sysdeps/m68k/fpu/s_ldexpf.c,
5675         sysdeps/m68k/fpu/s_log1p.c, sysdeps/m68k/fpu/s_log1pf.c,
5676         sysdeps/m68k/fpu/s_logb.c, sysdeps/m68k/fpu/s_logbf.c,
5677         sysdeps/m68k/fpu/s_modf.c, sysdeps/m68k/fpu/s_modff.c,
5678         sysdeps/m68k/fpu/s_rint.c, sysdeps/m68k/fpu/s_rintf.c,
5679         sysdeps/m68k/fpu/s_scalbn.c, sysdeps/m68k/fpu/s_scalbnf.c,
5680         sysdeps/m68k/fpu/s_significand.c,
5681         sysdeps/m68k/fpu/s_significandf.c, sysdeps/m68k/fpu/s_sin.c,
5682         sysdeps/m68k/fpu/s_sinf.c, sysdeps/m68k/fpu/s_tan.c,
5683         sysdeps/m68k/fpu/s_tanf.c, sysdeps/m68k/fpu/s_tanh.c,
5684         sysdeps/m68k/fpu/s_tanhf.c: New files, for m68881 port of fdlibm.
5685
5686         * sysdeps/m68k/fpu/__math.h: Rewritten for fdlibm.
5687
5688         * sysdeps/m68k/fpu/isinfl.c: Rewritten to get argument type right.
5689         * sysdeps/m68k/fpu/isnanl.c: Likewise.
5690
5691 Thu Mar 14 06:01:07 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5692
5693         * posix/glob.c (glob): In GLOB_BRACE brace expansion, fix buffer size
5694         calculation to include trailing invariant portion.  Don't use alloca;
5695         instead use a dynamic auto array for GCC, malloc for non-GCC.
5696         Handle nested braces properly.
5697
5698         * elf/elf.h (Elf32_auxv_t): Specify prototype (void) for `a_un.a_fcn'.
5699
5700         * libc-symbols.h (lint): New macro.
5701
5702 Fri Mar 15 01:18:00 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5703
5704         * libio/iosetvbuf.c: Add weak alias setvbuf.
5705
5706 Thu Mar 14 06:01:07 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5707
5708         * string/strnlen.c: New file.
5709         * string/Makefile (routines): Add strnlen.
5710         * string/string.h [__USE_GNU] (strnlen): Declare new function.
5711         [__OPTIMIZE__]: Define extern inline implementation of it.
5712
5713         * stdlib/erand48_r.c: Use __mpn_construct_double instead of ldexp and
5714         addition, to avoid using anything from -lm.
5715
5716 Mon Mar  4 21:57:14 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5717
5718         * sysdeps/unix/sysv/linux/m68k/Makefile: New file.
5719
5720         * sysdeps/unix/sysv/linux/m68k/sysdep.h (SYS_ify): Redefine.
5721         (CALL_MCOUNT): New macro, empty unless [PROF].
5722         (ENTRY): Do CALL_MCOUNT just after the label.
5723         (JUMPTARGET): New macro.
5724         (SYSCALL_ERROR_HANDLER): Fix syntax.
5725
5726 Thu Mar 14 04:20:48 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5727
5728         * sysdeps/unix/sysv/linux/init-first.c (init): Call `__personality'
5729         function instead of using inline asm i386 syscall.
5730         * sysdeps/unix/sysv/linux/syscalls.list: Add personality syscall.
5731
5732         * posix/unistd.h [__USE_BSD]: Declare usleep.
5733
5734 Tue Mar 12 04:57:57 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5735
5736         * misc/efgcvt.c (MAXDIG): New macro computed from <floats.h> constants.
5737         (fcvt, ecvt): Use it for buffer size.
5738
5739         * stdlib/drand48-iter.c (__drand48_iterate): Use u_int64_t instead of
5740         conditionalizing long vs long long.
5741
5742         * stdlib/drand48-iter.c (__drand48_iterate): Don't check for null
5743         pointers; never return EFAULT.
5744         * stdlib/drand48_r.c (drand48_r): Likewise.
5745         * stdlib/erand48_r.c (erand48_r): Likewise.
5746
5747         * setjmp/Makefile (tests): Add jmpbug.
5748         * setjmp/jmpbug.c: New file.
5749
5750 Tue Mar 12 04:42:01 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5751
5752         * sysdeps/sparc/jmp_buf.h: Rewritten; use array of ints, not struct.
5753         * sysdeps/sparc/setjmp.S: Rewritten; store %fp value as well.
5754         * sysdeps/sparc/__longjmp.S: Rewritten; unwind frames one by one with
5755         `restore' until the target frame is hit.
5756
5757 Sun Mar 10 20:29:40 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5758
5759         * sysdeps/unix/sysv/linux/sigsuspend.c: New file.
5760         * sysdeps/unix/sysv/linux/syscalls.list: Remove sigsuspend, add
5761         s_sigsuspend.
5762
5763 Thu Mar  7 21:30:58 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5764
5765         * Makerules (+make-deps, sed-remove-objpfx): Quote periods on the
5766         left side of sed substitutions.
5767
5768 Sun Mar 10 16:58:10 1996  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
5769
5770         * stdio-common/printf_fp.c (hack_digit): __mpn_normal_size
5771         is not available anymore.  Do it ourselves.
5772
5773         * sysdeps/unix/sysv/linux/i386/fpu_control.h (_FPU_SETCW):
5774         Correct GCC `asm' syntax.
5775
5776 Tue Mar 12 03:15:02 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5777
5778         * stdio-common/Makefile (tests): Add tst-ungetc.
5779         * stdio-common/tst-ungetc.c: New test from drepper.
5780         * stdio-common/tstscanf.c (main): New %[ test case from drepper.
5781
5782         * sysdeps/libm-ieee754/s_scalbn.c (scalbn): Rename to __scalbn;
5783         somehow this was missed, though the weak alias is already there.
5784
5785         * sysdeps/unix/sysv/linux/i386/fpu_control.h (_FPU_DEFAULT): Change
5786         default to double precision, all interrupts masked; fdlibm requires.
5787
5788 Sat Mar  9 18:44:27 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5789
5790         * sysdeps/unix/sysv/linux/i386/setfpucw.c: Obsolete file removed.
5791
5792 Fri Mar  8 22:16:48 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5793
5794         * stdio-common/printf_fp.c (HAVE_ALLOCA): New macro.
5795
5796 Tue Mar  5 18:45:14 1996  Miles Bader  <miles@gnu.ai.mit.edu>
5797
5798         * sysdeps/mach/hurd/select.c (__select): Include LASTFD in the
5799         final loop.
5800
5801 Mon Mar  4 20:54:40 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5802
5803         * Makeconfig ($(common-objpfx)config.make): Depend on config.h.in.
5804
5805 Tue Mar  5 12:14:57 1996  Miles Bader  <miles@gnu.ai.mit.edu>
5806
5807         * sysdeps/mach/hurd/select.c (__select): Also don't fault just
5808         because some fdmask is 0.
5809
5810 Mon Mar  4 17:35:35 1996  Miles Bader  <miles@gnu.ai.mit.edu>
5811
5812         * sysdeps/mach/hurd/select.c (__select):
5813         Don't increment GOT only because READ/WRITE/EXCEPTFDS is 0!
5814         Don't return without frobbing the bitmasks after a timeout.
5815         When clearing the bitmasks, only loop from FIRSTFD to LASTFD.
5816
5817 Mon Mar  4 17:35:09 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5818
5819         * hurd/catch-signal.c (hurd_safe_memmove): New function.
5820         (hurd_safe_copyin, hurd_safe_copyout): New functions.
5821         * hurd/hurd/sigpreempt.h: Declare them.
5822
5823 Sun Mar  3 08:43:44 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5824
5825         Replace math code with fdlibm from Sun as modified for netbsd by
5826         JT Conklin and Ian Taylor, including x86 FPU support.
5827         * sysdeps/libm-ieee754, sysdeps/libm-i387: New directories.
5828         * math/math_private.h: New file.
5829         * sysdeps/i386/fpu/Implies: New file.
5830         * sysdeps/ieee754/Implies: New file.
5831         * math/machine/asm.h, math/machine/endian.h: New files.
5832         * math/Makefile, math/math.h: Rewritten.
5833         * mathcalls.h, math/mathcalls.h: New file, broken out of math.h.
5834         * math/finite.c: File removed.
5835         * sysdeps/generic/Makefile [$(subdir)=math]: Frobnication removed.
5836
5837         * math/test-math.c: Include errno.h and string.h.
5838
5839         * sysdeps/unix/bsd/dirstream.h: File removed.
5840         * sysdeps/unix/bsd/readdir.c: File removed.
5841
5842 Sat Mar  2 16:35:40 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5843
5844         * sysdeps/unix/sysv/linux/m68k/profil-counter.h: File removed.
5845         * sysdeps/unix/sysv/sysv4/solaris2/sparc/profil-counter.h: File
5846         removed.
5847         * sysdeps/generic/profil-counter.h: New file.
5848
5849 Fri Mar  1 17:11:59 1996  Brendan Kehoe  <brendan@zen.org>
5850
5851         * sysdeps/unix/sysv/sysv4/solaris2/sparc/sigcontext.h: New file,
5852         including <sysdeps/unix/bsd/sun/sparc/sigcontext.h>.
5853         * sysdeps/unix/sysv/sysv4/solaris2/sparc/profil-counter.h: New file,
5854         same as linux/m68k/profil-counter.h except the comment.
5855
5856 Fri Mar  1 10:09:46 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5857
5858         * stdlib/Makefile (mpn-stuff): New target.
5859         (copy-mpn): Use it.
5860
5861         * Code copied from GMP updated to 1.937 version.
5862         * stdlib/strtod.c (HAVE_ALLOCA): Define this for gmp headers.
5863
5864         * posix/glob.c: Use canonical code from autoconf manual for dirent
5865         include.
5866         [_D_NAMLEN]: Redefine NAMLEN using this.
5867         (glob_in_dir): Use NAMLEN macro.
5868
5869         * sysdeps/posix/profil.c: New file.
5870
5871 Thu Feb 29 20:55:57 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
5872
5873         * sysdeps/unix/sysv/linux/m68k/profil-counter.h: New file.
5874
5875 Tue Feb 27 12:14:59 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5876
5877         * libc-symbols.h [GCC >= 2.8] (strong_alias, weak_alias): Remove
5878         `extern' keyword.
5879
5880         * time/strftime.c: Support - and _ flags to affect number padding.
5881
5882         * sysdeps/unix/common/tcsendbrk.c: New file.
5883
5884 Mon Feb 26 10:22:30 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5885
5886         * sysdeps/unix/dirstream.h: Rewritten.
5887         * sysdeps/unix/readdir.c: Rewritten.
5888         * sysdeps/unix/telldir.c: Rewritten.
5889         * sysdeps/unix/closedir.c: Use <...> instead of "..." for dirstream.h.
5890         Remove __ from DIR struct member names.
5891         * sysdeps/unix/dirfd.c: Likewise.
5892         * sysdeps/unix/seekdir.c: Likewise.
5893         * sysdeps/unix/rewinddir.c: Likewise.
5894         * sysdeps/unix/opendir.c: Likewise.  Don't allocate extra space after
5895         DIR structure.
5896         * sysdeps/stub/direct.h: File removed.
5897         * sysdeps/unix/bsd/bsd4.4/direct.h: File removed.
5898         * sysdeps/unix/bsd/direct.h: File removed.
5899         * sysdeps/unix/common/direct.h: File removed.
5900         * sysdeps/unix/sysv/irix4/direct.h: File removed.
5901         * sysdeps/unix/sysv/isc3/direct.h: File removed.
5902         * sysdeps/unix/sysv/sco3.2.4/direct.h: File removed.
5903         * sysdeps/unix/sysv/sysv4/solaris2/direct.h: File removed.
5904         * sysdeps/unix/common/direntry.h: New file.
5905         * sysdeps/unix/bsd/direntry.h: New file.
5906         * sysdeps/unix/bsd/bsd4.4/direntry.h: New file.
5907         * sysdeps/unix/sysv/direntry.h: New file.
5908         * sysdeps/stub/direntry.h: New file.
5909         * dirent/dirent.h (struct dirent): Type removed.  Include <direntry.h>
5910         to define it.
5911         (_D_EXACT_NAMLEN, _D_ALLOC_NAMLEN): New macros.
5912         * dirent/Makefile (headers): Add direntry.h.
5913         (distribute): Remove direct.h.
5914         * sysdeps/posix/getcwd.c: Use new macros instead of d_namlen.
5915         * dirent/scandir.c: Likewise.
5916         * io/fts.c (fts_build): Likewise.
5917         * io/ftw.c (ftw_dir): Likewise.
5918         * sysdeps/posix/ttyname.c: Likewise.
5919
5920         * sysdeps/unix/sysv/sysv4/solaris2/syscalls.list: New file.
5921
5922         * sysdeps/mach/hurd/profil.c (MAX_PC_SAMPLES): New macro.
5923         (collector_timeout): New static variable.
5924         (update_waiter): Actually call __task_enable_pc_sampling.
5925         Set collector_timeout based on the `tick' count returned.
5926         (profile_waiter): Use MAX_PC_SAMPLES.  Set nsamples before RPC.
5927         Use collector_timeout in __mach_msg call.
5928
5929         * gmon/Makefile (noprof): New variable containing mcount.
5930         Append profil unless it is in $(unix-syscalls).
5931         (mcount.po): Use $(noprof) for list of targets in this rule.
5932
5933         * libc-symbols.h: Define _LIBC before #include <config.h>.
5934
5935 Sun Feb 25 12:29:23 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5936
5937         * config.h.in [_LIBC] (HAVE_STRERROR): Define it.
5938         Protect 2nd page of #undef's for generator programs with #ifndef _LIBC.
5939
5940         * time/zic.c, time/zdump.c, time/private.h: Updated from ADO 96e.
5941
5942 Fri Feb  9 12:40:19 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
5943
5944         * libio/cleanup.c (_IO_cleanup_registration_needed)
5945         [!_G_HAVE_ATEXIT]: Init to NULL.
5946         * libio/filedoalloc.c (_IO_cleanup_registration_needed): Remove decl.
5947
5948 Thu Feb  8 08:12:50 1996  Brendan Kehoe  <brendan@cygnus.com>
5949
5950         * libio/filedoalloc.c (_IO_cleanup_registration_needed): Revert
5951         previous change, since cleanup.c only defines it if _G_HAVE_ATEXIT.
5952
5953 Wed Feb  7 15:10:17 1996  Brendan Kehoe  <brendan@lisa.cygnus.com>
5954
5955         * libio/filedoalloc.c (_IO_cleanup_registration_needed): Declare as
5956         extern.
5957
5958 Sat Feb 24 11:34:13 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5959
5960         * sysdeps/i386/memcmp.S: Fix argument %esp offsets.
5961
5962         * time/sys/time.h (timeradd, timersub): New macros; BSD has these.
5963
5964 Wed Feb 21 02:25:07 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5965
5966         * Rules (others): Depend on $(extra-objs), $(install-lib),
5967         $(install-bin), $(install-sbin), in object directory.
5968
5969         * Makeconfig (link-libc): Don't pass -rpath option with default
5970         path, since ld.so should use the same default.
5971         * Makerules (build-shlib): Likewise.
5972
5973         * Makerules (make-target-directory): Use mkinstalldirs.
5974
5975         * sysdeps/mach/i386/sysdep.h: Include unix/i386/sysdep.h to
5976         redefine ENTRY et al.
5977
5978         * sysdeps/unix/sysv/linux/i386/sysdep.h (NO_UNDERSCORES, ENTRY):
5979         Macros removed.  The code in unix/i386/sysdep.h should now suffice.
5980
5981         * sysdeps/unix/i386/sysdep.h (ALIGNARG): New macro, defns for
5982         [HAVE_ELF] and not.
5983         (ENTRY): Use it in .align directive.
5984         (CALL_MCOUNT): New macro, empty unless [PROF].
5985         (ENTRY): Do CALL_MCOUNT just after the label.
5986
5987         * Makeconfig (CPPFLAGS-.po): New variable, use -DPROF so assembly
5988         code can call mcount.
5989
5990 Tue Feb 20 23:05:16 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5991
5992         * time/private.h, time/zdump.c, time/zic.c: Updated verbatim from ADO;
5993         translation markings are now integrated in his distribution.
5994
5995         * stdlib/strtod.c (round_and_return): Add missing (mp_limb) 1 cast.
5996
5997 Mon Feb 19 18:31:59 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
5998
5999         * po: New directory where `LANG.po' files for message translations
6000         will reside.
6001         * po/SYS_libc.pot: New file, template of message strings as in source.
6002         * MakeTAGS: New rules to build po/SYS_libc.pot automatically from
6003         the source using xgettext.
6004         * Makerules ($(..)po/%.pot): New rule.
6005         * manual/Makefile (../po/manual.pot): New target, make it empty.
6006
6007         * sysdeps/unix/bsd/alarm.c: Moved to sysdeps/unix/alarm.c.
6008         * sysdeps/unix/bsd/nice.c: Moved to sysdeps/unix/nice.c.
6009         * sysdeps/unix/bsd/stime.c: Moved to sysdeps/unix/stime.c.
6010         * sysdeps/unix/bsd/time.c: Moved to sysdeps/unix/time.c.
6011         * sysdeps/unix/bsd/utime.c: Moved to sysdeps/unix/utime.c.
6012
6013         * time/zic.c, time/scheck.c, time/private.h, time/tzfile.h:
6014         Updated from ADO 96d.
6015
6016 Sun Feb 18 14:08:04 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
6017
6018         * csu/initfini.c (_init): Remove bogus volatile declarations and
6019         extra variable, take the address of __gmon_start__ only implicitly
6020         to avoid the test being optimized out.
6021
6022 Sun Feb 18 15:08:10 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
6023
6024         * sysdeps/posix/utimes.c (__utimes): There are 1000000 usecs in a
6025         sec.
6026
6027 Sun Feb 18 13:56:00 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
6028
6029         * elf/Makefile, time/Makefile: Make `all' the default target.
6030
6031 Mon Feb 19 18:09:04 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
6032
6033         * misc/sys/ptrace.h: Moved to ...
6034         * sysdeps/generic/sys/ptrace.h: ... here.
6035         * sys/ptrace.h: File removed.
6036
6037 Sun Feb 18 12:13:07 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
6038
6039         * sysdeps/unix/sysv/linux/Makefile (headers): Add fpu_control.h.
6040
6041         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno): Put it into .bss
6042         so that the symbol alias works.
6043
6044         * sysdeps/unix/sysv/linux/m68k/fpu_control.h (_FPU_SETCW): Corrected.
6045
6046         * sysdeps/unix/sysv/linux/resourcebits.h: New file.
6047
6048         * sysdeps/unix/sysv/linux/sys/ptrace.h: New file.
6049
6050         * sysdeps/unix/sysv/linux/syscalls.list: Add getegid, geteuid,
6051         getppid and reboot.
6052
6053         * sysdeps/unix/sysv/linux/sysconf.c: Special version that does not
6054         use getdtablesize.
6055
6056 Sat Feb 17 10:30:21 1996  David Mosberger-Tang  <davidm@AZStarNet.com>
6057
6058         * stdio-common/printf_fp.c, stdlib/strtod.c, sysdeps/ieee754/dbl2mpn.c,
6059         sysdeps/ieee754/ldbl2mpn.c, sysdeps/ieee754/mpn2dbl.c,
6060         sysdeps/ieee754/mpn2ldbl.c: Cast left operands of shift instructions
6061         to `long' where necessary.
6062
6063 Thu Feb 15 20:04:50 1996  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
6064
6065         * stdlib/fpioconst.h: Introduce new constant _FPIO_CONST_OFFSET.
6066         * stdio-common/printf_fp.c, stdlib/strtod.c: Use _FPIO_CONST_OFFSET
6067         to correctly access MPN array depending on architecture.
6068
6069 Mon Feb 19 15:30:26 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
6070
6071         * stdio-common/tstscanf.c (main): Add check for "0" as %d.
6072
6073         * sysdeps/stub/msync.c: Undo change of Jan 29; just two args.
6074         Only some systems have three args; let them define their own stub.
6075
6076         * sysdeps/generic/dl-sysdep.c: Declare _dl_secure.
6077
6078         * sysdeps/generic/machine-gmon.h: New file.
6079         * gmon/Makefile (distribute): Add machine-gmon.h.
6080         * gmon/mcount.c: Undo changes of Feb 13.
6081         Include "machine-gmon.h".
6082
6083 Sun Feb 18 13:24:06 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
6084
6085         * sysdeps/unix/sysv/linux/direct.h: File removed, since it is
6086         identical to unix/common/direct.h.
6087
6088         * sysdeps/unix/Makefile [no_deps]: Don't include s-proto.d.
6089
6090         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Don't add ipc.
6091
6092         * stdio-common/Makefile (tests): Remove scanf6.
6093
6094         * sysdeps/unix/sysv/linux/Makefile (non-lib.a): Append libieee.a.
6095
6096         * time/mktime.c (mktime): Move static variable localtime_offset to
6097         file scope.
6098
6099         * stdio-common/vfscanf.c: Put '0' in buffer before scanning for %i
6100         base indicator.
6101
6102 Thu Feb 15 16:56:17 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
6103
6104         * sysdeps/m68k/dl-machine.h (elf_machine_load_address): Corrected.
6105         (ELF_MACHINE_BEFORE_RTLD_RELOC): Define.
6106         (_dl_runtime_resolve): Save %a1 as well.
6107         (ELF_MACHINE_RUNTIME_FIXUP_ARGS): Add second dummy arg.
6108         (elf_machine_relplt): Define.
6109
6110         * elf/dl-runtime.c: Include possible extra args in declaration of
6111         fixup.
6112
6113 Fri Feb 16 11:01:59 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
6114
6115         * time/tzset.c: Limit hours to 23, not 12.  From jaffer.
6116
6117 Fri Feb 16 10:14:05 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
6118
6119         * Makeconfig (CFLAGS-.po): Use -pg instead of -p.
6120
6121 Thu Feb 15 13:57:08 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
6122
6123         * mach/Machrules: Use -include for $(*.ir).
6124
6125         * hurd/hurd/ioctl.h (_HURD_HANDLE_IOCTLS): Mask off type bits in
6126         request values.
6127         * sysdeps/mach/hurd/ioctls.h (_IOC_NOTYPE): New macro.
6128         (_IOT_COUNT2): Field is 3 bits, not 2.
6129         * sysdeps/mach/hurd/ioctl.c: Ignore handler if it fails with ENOTTY.
6130         * hurd/hurdioctl.c (_hurd_lookup_ioctl_handler): Mask off type
6131         bits before looking up handler.
6132         (fioctl): Use __hurd_dfail.
6133         (fioctl, fioclex): Use ENOTTY for bogus request instead of EGRATUITOUS.
6134
6135 Thu Feb 15 11:49:45 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
6136
6137         * sysdeps/unix/sysv/sysv4/Makefile [$(subdir)-signal]
6138         (sysdep_routines): Don't add sys-sig.
6139
6140         * sysdeps/unix/sysv/sysv4/solaris2/syscalls.list: New file.
6141
6142 Wed Feb 14 00:21:17 1996 David Mosberger-Tang  <davidm@azstarnet.com>
6143
6144         * sysdeps/alpha/memchr.c (memchr): loop searching for matching
6145         character bailed out one too early; changed constant 6 to
6146         7 to fix this.
6147
6148 Wed Feb 14 01:08:58 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
6149
6150         * posix/execvp.c: When executing shell on script, first arg is
6151         full file name, not argv[0].
6152
6153         * mach/Makefile [no_deps]: Inhibit inclusion of mach-syscalls.mk.
6154         * mach/Machrules [no_deps]: Inhibit interface rules.
6155
6156         * malloc/Makefile (distribute): Removed TODO.
6157
6158 Tue Feb 13 05:12:02 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
6159
6160         * sysdeps/unix/sysv/linux/syscalls.list (ipc): Specify msgget in
6161         caller column.
6162
6163         * sysdeps/unix/common/syscalls.list: Add sigaction syscall.
6164
6165         * sysdeps/unix/sysv/linux/gnu/types.h: Moved from linux/i386.
6166
6167         * sysdeps/unix/sysv/linux/Makefile [$(subdir)=math]
6168         (sysdep_routines): Append setfpucw.
6169         (extra-objs): Append ieee-fpucw.o.
6170         (install-lib): Append libieee.a.
6171         (libieee.a): New target.
6172         * sysdeps/unix/sysv/linux/ieee-fpucw.c: New file.
6173         * sysdeps/unix/sysv/linux/i386/fpu_control.h
6174         (_FPU_GETCW, _FPU_SETCW): New macros.
6175         (fpu_control_t): New typedef.
6176         (__setfpucw): Use fpu_control_t for argument type.
6177         * sysdeps/unix/sysv/linux/fpu_control.c: Moved from linux/i386.
6178
6179         * sysdeps/unix/sysv/linux/init-first.c: Moved from linux/i386.
6180
6181         * sysdeps/unix/sysv/linux/syscalls.list: Add ipc syscall.
6182         * sysdeps/unix/sysv/linux/i386/syscalls.list: File removed.
6183
6184 Sat Feb 10 13:09:03 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
6185
6186         * sysdeps/unix/sysv/linux/m68k/brk.c,
6187         sysdeps/unix/sysv/linux/m68k/mmap.S,
6188         sysdeps/unix/sysv/linux/m68k/select.S,
6189         sysdeps/unix/sysv/linux/m68k/sigcontext.h,
6190         sysdeps/unix/sysv/linux/m68k/sigreturn.S,
6191         sysdeps/unix/sysv/linux/m68k/socket.S,
6192         sysdeps/unix/sysv/linux/m68k/syscall.S,
6193         sysdeps/unix/sysv/linux/m68k/sysdep.S,
6194         sysdeps/unix/sysv/linux/m68k/sysdep.h: New files.
6195
6196         * sysdeps/unix/sysv/linux/m68k/fpu_control.h: New file.
6197
6198         * sysdeps/m68k/fpu/isinfl.c, sysdeps/m68k/fpu/isnanl.c,
6199         sysdeps/m68k/isinfl.c, sysdeps/m68k/isnanl.c: New files.
6200
6201         * sysdeps/unix/sysv/linux/sys/mman.h: Define MAP_ANON and
6202         MAP_FILE if not already defined.
6203
6204         * elf/elf.h: Add m68k reloc definitions.
6205         * sysdeps/m68k/dl-machine.h, sysdeps/m68k/elf/start.S: New files.
6206
6207 Tue Feb 13 00:12:12 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
6208
6209         * elf/dl-runtime.c (fixup) [ELF_MACHINE_RUNTIME_FIXUP_ARGS]: Let
6210         this macro declare extra leading args.
6211
6212         * Makerules [$(elf)=yes] (ar-symtab-name): Define to empty.
6213
6214         * sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE,
6215         elf_machine_relplt): New macros.
6216         * elf/dl-runtime.c: New file.
6217         * sysdeps/i386/dl-runtime.c, sysdeps/stub/dl-runtime.c: Files removed.
6218
6219         * gmon/Makefile (headers): Remove machine-gmon.h.
6220         * sysdeps/stub/machine-gmon.h, sysdeps/i386/machine-gmon.h: Removed.
6221         * gmon/mcount.c [! NO_UNDERSCORES] (_mcount): Specify "mcount" as
6222         the asm name.
6223         (_mcount): Define normally, taking no args.
6224         Use __builtin_return_address to fetch PC values of caller and caller's
6225         caller.
6226
6227         * Makerules: Rewrote rules to update libc archives of all flavors.
6228         Define separate specific rules for each flavor using o-iterator.
6229
6230         * sysdeps/unix/Makefile: Include s-proto.d only ifdef subdir.
6231
6232 Sat Feb 10 11:35:16 1996 Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
6233
6234         * Makerules (ar-symtab-name): New macro.  Replace all occurences
6235         of __.SYMDEF by $(ar-symtab-name).
6236         * sysdeps/unix/sysv/Makefile (ar-symtab-name): Define as empty.
6237
6238 Mon Feb 12 03:10:41 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
6239
6240         * Makefile (configure, %/configure): Depend on aclocal.m4.
6241         * Make-dist (configure, %/configure): Likewise.
6242
6243         * sysdeps/unix/Makefile: Include s-proto.d for its deps.
6244
6245         * gmon/sys/gmon.h: Don't include machine-gmon.h; those defns are
6246         only needed in the implementation, not for any users.
6247
6248         * time/northamerica: Updated from ADO 96c, new rules for Mexico in
6249         1996.
6250
6251         * sunrpc/pm_getport.c: #if 0 out gratuitous inclusion of <net/if.h>.
6252         * sunrpc/pm_getmaps.c: Likewise.
6253
6254         * sysdeps/unix/sysv/syscalls.list: Add setrlimit and settimeofday,
6255         so real syscalls override unix/sysv/*.c on sysv-derived systems
6256         that have them.
6257         * sysdeps/unix/common/syscalls.list: Add settimeofday here, to
6258         override unix/sysv/settimeofday.c since that overrides
6259         unix/syscalls.list.
6260
6261         * Makeconfig (+link): Put $(link-libc) after deps from $^,
6262         regardless of where libc.a appears in the deps.
6263
6264         * sysdeps/unix/sysv/sysv4/syscalls.list: Remove redundancies.
6265         Add __waitid.
6266         * sysdeps/unix/sysv/linux/syscalls.list: Remove redundancies.
6267         Define __ name for sigprocmask.
6268         * sysdeps/unix/bsd/ultrix4/syscalls.list: Remove redundancies.
6269         Add getsysinfo.
6270         * sysdeps/unix/bsd/sun/sunos4/syscalls.list: Remove redundancies.
6271         * sysdeps/unix/bsd/sun/syscalls.list: Remove redundancies.
6272         * sysdeps/unix/bsd/bsd4.4/syscalls.list: Remove redundancies.
6273         * sysdeps/unix/bsd/syscalls.list: Remove settimeofday, utimes.
6274         Add getdents, wait3, waitpid.
6275         * sysdeps/unix/syscalls.list: Add seteuid, setegid, setsid,
6276         settimeofday, sigsuspend, sstk, utimes.
6277         * sysdeps/unix/bsd/ultrix4/mips/sigvec.S: File removed.
6278         * sysdeps/unix/bsd/ultrix4/mips/syscalls.list: New file.
6279         * sysdeps/unix/bsd/ultrix4/mips/Makefile (sysdep_routines):
6280         Removed sigtramp.
6281         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: Renamed from sigtramp.c.
6282         * sysdeps/unix/bsd/bsd4.4/sstk.S: File removed.
6283         * sysdeps/unix/bsd/hp/m68k/syscalls.list: File removed.
6284         * sysdeps/unix/bsd/osf/alpha/getdents.S: File removed.
6285         * sysdeps/unix/bsd/ultrix4/getsysinfo.S: File removed.
6286         * sysdeps/unix/bsd/ultrix4/waitpid.S: File removed.
6287         * sysdeps/unix/bsd/ultrix4/mips/sigtramp.c: File removed.
6288         * sysdeps/unix/bsd/ultrix4/mips/sigvec.S: File removed.
6289         * sysdeps/unix/bsd/ultrix4/mips/sigvec.c: New file.
6290         * sysdeps/unix/bsd/ultrix4/mips/syscalls.list: New file.
6291         * sysdeps/unix/sysv/irix4/wait3.S: File removed.
6292         * sysdeps/unix/sysv/sysv4/__waitid.S: File removed.
6293         * sysdeps/unix/sysv/sysv4/fchdir.S: File removed.
6294         * sysdeps/unix/sysv/sysv4/setegid.S: File removed.
6295         * sysdeps/unix/sysv/sysv4/seteuid.S: File removed.
6296         * sysdeps/unix/sysv/sysv4/sigaltstack.S: File removed.
6297         * sysdeps/unix/sysv/sysv4/solaris2/utimes.S: File removed.
6298
6299         * hurd/hurdfault.c (_hurdsig_fault_init): Set qlimit on
6300         FORWARD_SIGEXC to one.  Uncomment setting of thread exc port, and
6301         move it to last thing.
6302
6303 Sat Feb 10 05:57:08 1996  Roland McGrath  <roland@charlie-brown.gnu.ai.mit.edu>
6304
6305         * sysdeps/generic/make_siglist.c: #undef _SIGNAL_H before defining it.
6306
6307         * sysdeps/unix/sysv/linux/syscalls.list: Add sigprocmask, sigsuspend.
6308
6309 Sat Feb 10 04:18:48 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6310
6311         * posix/execvp.c: If execv fails with ENOEXEC, run the shell on
6312         the file.
6313
6314 Fri Feb  9 11:46:45 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6315
6316         * time/Makefile (CFLAGS-zdump.c, CFLAGS-zic.c, CFLAGS-ialloc.c,
6317         CFLAGS-scheck.c): Use -DNOID instead of -Wno-unused.
6318
6319         * hurd/Makefile (user-interfaces): Added hurd/tioctl.
6320
6321 Thu Feb  8 18:55:27 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6322
6323         * hurd/hurdioctl.c (tiocsctty): Set the terminal's pgrp to our own.
6324
6325 Wed Feb  7 18:48:30 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6326
6327         * Makefile (subdirs): Added wcsmbs.
6328         * wcsmbs: New directory of wide char/multibyte char functions from
6329         drepper.
6330
6331         * hurd/hurdmsg.c (_S_msg_report_wait): Function removed.
6332         * hurd/report-wait.c: New file.
6333         * hurd/Makefile (routines): Added report-wait.
6334
6335         * sysdeps/mach/hurd/Makefile (inhibit-unix-syscalls): New variable.
6336
6337         * sysdeps/mach/hurd/i386/intr-msg.h (struct mach_msg_trap_args):
6338         New type.
6339         (SYSCALL_EXAMINE, MSG_EXAMINE): New inline functions.
6340         * sysdeps/mach/hurd/i386/trampoline.c (struct mach_msg_trap_args):
6341         Structure moved to intr-msg.h; include that.
6342
6343         * time/Makefile (CFLAGS-ialloc.c): Add -Wno-unused.
6344         (CFLAGS-scheck.c): New variable.
6345
6346         * sysdeps/mach/hurd/dl-sysdep.c (__hurd_sigthread_stack_base,
6347         __hurd_sigthread_stack_end, __hurd_sigthread_variables,
6348         __hurd_threadvar_stack_mask): New variables.
6349
6350         * sysdeps/mach/hurd/fork.c: Set the new task's exception port to
6351         its new message port.
6352
6353         * misc/init-misc.c: Put __init_misc in the __libc_subinit set.
6354
6355         * configure.in (uname): Add quoting.
6356
6357         * sysdeps/mach/hurd/fchdir.c: Don't consult errno unless lookup fails.
6358         * hurd/fchroot.c: Likewise.
6359
6360         * posix/sys/types.h [GCC >= 2.7]: Define intN_t/u_intN_t using
6361         __attribute__ ((__mode__ (__XX__))).
6362
6363 Wed Feb 7 03:24:05 1996 Torbjorn Granlund  <tege@tmg.se>
6364
6365         * sysdeps/i386/i586/memcopy.h (WORD_COPY_FWD): Manually allocate
6366         destination cache lines.
6367         (WORD_COPY_BWD): Likewise.
6368
6369 Wed Feb  7 14:16:36 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6370
6371         * sysdeps/generic/Makefile (make_siglist): Get signum.h absolute
6372         file name first thing, before $(native-compile) changes directories.
6373
6374         From Gord Matzigkeit <gord@enci.ucalgary.ca>:
6375         * sysdeps/unix/make_errlist.c: Use strerror if available.
6376         * sysdeps/unix/configure.in: New file
6377
6378         * sysdeps/unix/bsd/sun/syscalls.list: Added sigvec.
6379         * sysdeps/unix/bsd/sun/sigvec.S: File removed.
6380
6381         * sysdeps/stub/sendto.c: Make sockaddr arg pointer to const.
6382         * sysdeps/stub/connect.c: Likewise.
6383         * sysdeps/stub/bind.c: Likewise.
6384
6385         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): RETRYNAME of
6386         "" is only special for FS_RETRY_NORMAL; for FS_RETRY_REAUTH, do
6387         another dir_lookup of "".
6388
6389 Tue Feb  6 12:46:29 1996  David Mosberger-Tang  <davidm@azstarnet.com>
6390
6391         * libc-symbols.h (weak_alias, weak_symbol): added definitions
6392         for ECOFF (HAVE_ECOFF).
6393
6394 Fri Feb  2 13:09:18 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6395
6396         * sysdeps/mach/hurd/fork.c: Clear trace flag in child.
6397
6398 Wed Jan 31 20:08:26 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6399
6400         * hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): Clear SS->intr_port
6401         when cancelled before RPC.
6402
6403 Tue Jan 30 13:32:05 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6404
6405         * dirent/scandir.c: Allocate dirents with correct size for name, and
6406         copy with correct size.
6407
6408         * hurd/hurdinit.c [! PIC] (map0): New function, on _hurd_preinit_hook.
6409
6410         * stdio-common/vfscanf.c (TYPEMOD): New macro of all type modifier
6411         flag bits.
6412         (__vfscanf): Fix checking of extra type modifiers.
6413
6414         * time/asia, time/australasia, time/backward: Updated from ADO 96b.
6415
6416 Tue Jan 30 12:17:26 1996  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
6417
6418         * stdlib/strtod.c: Only negate exponent when there really is one.
6419
6420         * stdio-common/vfscanf.c: Accept type modifiers on %n.
6421         Fix FP number parsing.
6422
6423 Mon Jan 29 21:53:40 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6424
6425         * sysdeps/stub/msync.c (msync): Declare third arg FLAGS.
6426
6427         * resolv/Makefile (+cflags): Append to this instead of CFLAGS.
6428
6429 Mon Jan 29 16:29:16 1996  Miles Bader  <miles@gnu.ai.mit.edu>
6430
6431         * sysdeps/mach/hurd/select.c (__select): Recalculate GOT to
6432         include an increment for each operation allowed on each fd.
6433
6434 Mon Jan 29 11:44:38 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6435
6436         * sysdeps/unix/sysv/linux/configure: Set $inhibit_glue.
6437
6438         * Makefile: Use -include for sysd-dirs.
6439
6440         * configure.in (uname): Check for uname in syscalls.list files.
6441         * sysdeps/unix/sysv/syscalls.list: Remove uname.
6442         * sysdeps/unix/syscalls.list: Add uname.
6443
6444         * stdlib/strtol.c (weak1): New macro, to get the right name declared
6445         weak.
6446
6447         * sysdeps/posix/getcwd.c (size_t): Don't define #ifdef __GNU_LIBRARY__.
6448
6449         * db/hash/ndbm.c: Change all uses of `errno' struct member to `errnum'.
6450         (dbm_open): Use dynamic allocation for file name buffer, instead of
6451         limitting its size to MAXPATHLEN.
6452
6453         * db/btree/bt_open.c (tmp): Use dynamic allocation for file name
6454         buffer, instead of limitting its size to MAXPATHLEN.
6455
6456         * db/hash/hash.h (HTAB): Rename member `errno' to `errnum'.
6457         * db/hash/hash.c: Change all uses of `errno' struct member to `errnum'.
6458
6459 Sun Jan 28 19:42:04 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
6460
6461         * time/Makefile: Fix check for cross compiling.
6462
6463 Thu Jan 25 21:10:39 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
6464
6465         * db/Makefile (subdir-dirs): Renamed from dbdirs.
6466
6467         * Makerules (distinfo-vars): Add subdir-dirs.
6468
6469         * MakeTAGS: Remove vpath directives.
6470         (all-dirs): Prepend $(subdir-dirs).
6471         (all-sources, all-headers): Use wildcard to find sources.
6472
6473 Mon Jan 29 10:44:38 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6474
6475         * malloc/Makefile (CFLAGS-vm-limit.c, CFLAGS-ralloc.c): New
6476         variables.
6477
6478         * mach/msgserver.c: Declare DEMUX arg with prototype.
6479
6480 Sun Jan 28 17:25:38 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6481
6482         * setjmp/setjmp.h (jmp_buf): Give a tag in the struct defn, to
6483         make C++ happy.
6484         * alpha/jmp_buf.h: Likewise.
6485         * m68k/jmp_buf.h: Likewise.
6486         * mips/jmp_buf.h: Likewise.
6487         * sparc/jmp_buf.h: Likewise.
6488         * vax/jmp_buf.h: Likewise.
6489
6490         * sysdeps/generic/memmem.c: Fix return value in case where
6491         NEEDLE_LEN==0.
6492
6493         * hurd/hurdlookup.c (__file_name_lookup_under,
6494         __file_name_lookup): Restrict mode with umask.
6495         * sysdeps/mach/hurd/xmknod.c: Restrict mode with umask.
6496         * sysdeps/mach/hurd/mkdir.c: Restrict mode with umask.
6497
6498 Fri Jan 26 12:20:45 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6499
6500         * stdlib/strtol.c: Undo last change.  ANSI C changed since the
6501         draft I checked yesterday.  Sigh.
6502
6503 Thu Jan 25 18:58:25 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6504
6505         * stdlib/strtol.c [UNSIGNED]: Don't recognize + or - as sign.
6506
6507 Wed Jan 24 03:22:07 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6508
6509         * malloc/mcheck.c (mabort): Declare prototype.
6510
6511         * sysdeps/unix/sysv/linux/fcntlbits.h: Moved from linux/i386.
6512
6513         * Makerules: Use -include for generated makefiles.
6514
6515         * errno.h: Don't declare errno if it's defined as a macro.
6516
6517         * stdio-common/vfscanf.c: Disallow l flag after ll or L.
6518
6519         * stdio-common/Makefile (tests): Add scanf[1-9].
6520         * stdio-common/scanf[1-9].c: New files.  Bug tests from hjl.
6521
6522 Wed Jan 24 04:18:36 1996  Paul Eggert  <eggert@twinsun.com>
6523
6524         * strftime.c (strftime):
6525         When invoking self, check whether the subsidiary invocation failed.
6526         Use "???" (not "") to denote unknown time zone information.
6527
6528         Make this source file portable to standalone contexts (e.g. GNU Emacs).
6529         <config.h>: Include if HAVE_CONFIG_H is defined.
6530         (HAVE_LIMITS_H, HAVE_MBLEN, HAVE_TM_ZONE, STDC_HEADERS): New symbols,
6531         defined if _LIBC or if <config.h> defines them.
6532         <ansidecl.h>, "../locale/localeinfo.h": Include only if _LIBC.
6533         <sys/types.h>: New include; some hosts require it for `time_t'.
6534         <ctype.h>: Include only if HAVE_MBLEN (since it's only needed then).
6535         <limits.h>: Include only if HAVE_LIMITS_H.
6536         <stddef.h, stdlib.h, string.h>: Include only if STDC_HEADERS.
6537         (memcpy): Define in terms of bcopy if !STDC_HEADERS.
6538         (__P, PTR): Define if not already defined.
6539         (__tzname, __daylight, __timezone): Remove macros; no longer needed.
6540         (add, strftime): Don't use NULL, for portability to some weird hosts.
6541         (fmt): If !_LIBC, don't assume sprintf returns a count.
6542         (week, strftime): Use old-style function declarations.
6543         (weekday_name, month_name): New constants.
6544         (strftime): Use traditional C values if locale support isn't available.
6545         Use `const' instead of CONST.  For time zones, use tm_zone if
6546         possible, then fall back on tzname.  Don't check for multibyte
6547         characters unless mblen is supported.  Use formats like %02d instead
6548         of %.2d, for portability to older hosts.
6549
6550 Wed Jan 24 00:07:52 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6551
6552         * stdio-common/vfscanf.c (GROUP, MALLOC): New flag macros.
6553         (__vfscanf): Eliminate flag vars that were redundant with FLAGS bits.
6554         Fix bug in recognition of %ll flag for long long.
6555         Fix overeager checks for conflicting type modifiers.
6556         With ' flag, match thousands separators for decimal numbers.
6557
6558 Tue Jan 23 22:02:40 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6559
6560         * locale/Makefile (CFLAGS-locfile-lex.c): New variable.
6561
6562         * resolv/Makefile (CFLAGS): Disable some warnings.
6563
6564         * sysdeps/generic/Makefile (elided-routines): Removed hypot.
6565         (+gccwarn): Set with override.
6566
6567         * stdio-common/Makefile (CFLAGS-tst-printf.c): New variable.
6568
6569         * posix/Makefile (CFLAGS-regex.c): New variable.
6570
6571         * malloc/Makefile (CFLAGS-obstack.c): New variable.
6572
6573         * io/Makefile (CFLAGS-fts.c): New variable.
6574         * io/fts.c (fts_open): Use prototypes for COMPAR decl.
6575
6576 Tue Jan 23 21:35:32 1996  Miles Bader  <miles@gnu.ai.mit.edu>
6577
6578         * sysdeps/mach/hurd/bind.c (bind): Ensure NAME for the AF_LOCAL
6579         case is '\0'-terminated.
6580
6581 Tue Jan 23 19:49:54 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6582
6583         * elf/rtld.c (dl_main): Support additional args in --list mode for
6584         debugging: look them up as symbol names and print values.
6585
6586         * misc/getttyent.c (skip, value): Declare with prototypes in file
6587         scope.
6588
6589         * csu/initfini.c (_init): Explicitly set a variable that is
6590         pointer to volatile with the address of __gmon_start__, to avoid
6591         the test being optimized out.
6592
6593 Mon Jan 22 10:40:40 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6594
6595         * sysdeps/posix/getcwd.c [__GNU_LIBRARY__]: Include unistd.h.
6596
6597         * io/fts.h (FTSENT): Define fts_compar member with prototype.
6598
6599         * hurd/hurd.h: Use prototype in getcttyid decl.
6600
6601         * stdlib/l64a.c: Fix typo in last change.
6602
6603         * stdlib/drand48-iter.c: Test limits.h macros instead of sizeof
6604         for determining size of types.
6605         * stdlib/srand48_r.c: Likewise.
6606
6607         * misc/utmp.h: Declare login, logout, logwtmp.
6608         * misc/logout.c: Declare argument as pointer to const.
6609         * misc/login.c: Likewise.
6610         * misc/logwtmp.c: Likewise.
6611         Include time.h, string.h.
6612
6613         * misc/efgcvt_r.c: Include stdlib.h.
6614
6615         * io/mknod.c: Include sys/types.h.
6616
6617         * gmon/sys/gmon.h: Declare monstartup, _mcleanup.
6618
6619         * csu/gmon-start.c (_start, etext): Declare with prototypes.
6620
6621         * stdio-common/vfscanf.c (%[): Fix range handling.
6622
6623 Sun Jan 21 00:55:25 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6624
6625         * misc/Makefile (headers): Rename queue.h to sys/queue.h.
6626         * misc/queue.h: Moved to misc/sys/queue.h.
6627
6628         * sysdeps/unix/sysv/linux/shmat.c: Include sys/shm.h instead of
6629         sys/sem.h.
6630
6631         * stdlib/stdlib.h [__USE_SVID]: Declare a64l, l64a.
6632
6633         * stdlib/l64a.c: Use 6-bit numbers as indices in CONV_TABLE, not
6634         literal byte values.
6635
6636         * misc/bsd-compat.c (getpgrp): Define with prototype.
6637
6638         * misc/init-misc.c (__progname_full): New variable.
6639         (program_invocation_name, program_invocation_short_name): New aliases.
6640         (__init_misc): Define with prototype.  Set __progname_full.
6641         * misc/progname.c: File removed.
6642         * misc/Makefile (aux): Remove progname.
6643
6644         * misc/hsearch_r.c (isprime): Define with prototype.
6645
6646         * sysdeps/unix/sysv/linux/seteuid.c: Just include unix/bsd version.
6647         * sysdeps/unix/bsd/seteuid.c: Disallow arg of -1.
6648         * sysdeps/unix/bsd/setegid.c: Likewise.
6649
6650 Fri Jan 19 13:28:59 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6651
6652         * sysdeps/unix/sysv/linux/tcdrain.c: Define tcdrain, not
6653         __tcdrain.
6654
6655         * posix/glob.c (glob): Use prototype in getlogin decl.
6656
6657         * db/ndbm.h: Declare dbm_error, dbm_clearerr.
6658         * db/db/db.c (__dberr): Define with prototype.
6659         (__dbpanic): Use prototypes in casts.
6660         * db/hash/hash_log2.c: Add prototype decl.
6661
6662         * sysdeps/generic/_strerror.c (_strerror_internal): Define with
6663         prototype.
6664
6665         * sysdeps/unix/mkdir.c, syspdep/unix/rmdir.c: Moved from unix/sysv.
6666         They will be overridden with syscalls if extant by unix/syscalls.list.
6667
6668         * Makeconfig (+gccwarn): Add -Wstrict-prototypes.
6669
6670         * stdio-common/printf_fp.c (__printf_fp): Define with prototype.
6671         * stdio-common/vfprintf.c (_IO_helper_overflow): Likewise.
6672
6673 Thu Jan 18 00:32:43 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6674
6675         * io/Makefile (routines): Add mknod, xstat fxstat lxstat xmknod.
6676
6677         * sysdeps/unix/sysv/linux/ptrace.c: Use ... decl, and stdarg.h to
6678         get args.
6679
6680         * posix/glob.c (_GNU_SOURCE): Define if undefined, so glob.h
6681         defines GNU extensions.
6682         * posix/fnmatch.c: Likewise.
6683
6684         Replaced all simple system call files *.S throughout sysdeps/unix
6685         with syscalls.list files to be processed by make-syscalls.sh.
6686         * sysdeps/unix/s-proto.S: New file.
6687         * sysdeps/unix/syscalls.list: New file.
6688         * sysdeps/unix/bsd/syscalls.list: New file.
6689         * sysdeps/unix/bsd/bsd4.4/syscalls.list: New file.
6690         * sysdeps/unix/bsd/hp/m68k/syscalls.list: New file.
6691         * sysdeps/unix/bsd/osf/syscalls.list: New file.
6692         * sysdeps/unix/bsd/osf/alpha/syscalls.list: New file.
6693         * sysdeps/unix/bsd/sony/newsos4/syscalls.list: New file.
6694         * sysdeps/unix/bsd/sun/syscalls.list: New file.
6695         * sysdeps/unix/bsd/sun/sunos4/syscalls.list: New file.
6696         * sysdeps/unix/bsd/ultrix4/syscalls.list: New file.
6697         * sysdeps/unix/common/syscalls.list: New file.
6698         * sysdeps/unix/inet/syscalls.list: New file.
6699         * sysdeps/unix/mman/syscalls.list: New file.
6700         * sysdeps/unix/sysv/syscalls.list: New file.
6701         * sysdeps/unix/sysv/irix4/syscalls.list: New file.
6702         * sysdeps/unix/sysv/isc2.2/syscalls.list: New file.
6703         * sysdeps/unix/sysv/linux/syscalls.list: New file.
6704         * sysdeps/unix/sysv/linux/i386/syscalls.list: New file.
6705         * sysdeps/unix/sysv/sco3.2.4/syscalls.list: New file.
6706         * sysdeps/unix/sysv/sysv4/syscalls.list: New file.
6707         * sysdeps/unix/sysv/sysv4/i386/syscalls.list: New file.
6708         * sysdeps/unix/sysv/sysv4/solaris2/sparc/syscalls.list: New file.
6709         * sysdeps/unix/acct.S: File removed.
6710         * sysdeps/unix/chdir.S: File removed.
6711         * sysdeps/unix/chmod.S: File removed.
6712         * sysdeps/unix/chown.S: File removed.
6713         * sysdeps/unix/chroot.S: File removed.
6714         * sysdeps/unix/close.S: File removed.
6715         * sysdeps/unix/configure: File removed.
6716         * sysdeps/unix/configure.in: File removed.
6717         * sysdeps/unix/dup.S: File removed.
6718         * sysdeps/unix/fcntl.S: File removed.
6719         * sysdeps/unix/fsync.S: File removed.
6720         * sysdeps/unix/getgid.S: File removed.
6721         * sysdeps/unix/getpid.S: File removed.
6722         * sysdeps/unix/getuid.S: File removed.
6723         * sysdeps/unix/ioctl.S: File removed.
6724         * sysdeps/unix/kill.S: File removed.
6725         * sysdeps/unix/link.S: File removed.
6726         * sysdeps/unix/lseek.S: File removed.
6727         * sysdeps/unix/open.S: File removed.
6728         * sysdeps/unix/ptrace.S: File removed.
6729         * sysdeps/unix/read.S: File removed.
6730         * sysdeps/unix/reboot.S: File removed.
6731         * sysdeps/unix/setgid.S: File removed.
6732         * sysdeps/unix/setuid.S: File removed.
6733         * sysdeps/unix/sync.S: File removed.
6734         * sysdeps/unix/umask.S: File removed.
6735         * sysdeps/unix/unlink.S: File removed.
6736         * sysdeps/unix/write.S: File removed.
6737         * sysdeps/unix/bsd/flock.S: File removed.
6738         * sysdeps/unix/bsd/getdtsz.S: File removed.
6739         * sysdeps/unix/bsd/getpagesize.S: File removed.
6740         * sysdeps/unix/bsd/killpg.S: File removed.
6741         * sysdeps/unix/bsd/profil.S: File removed.
6742         * sysdeps/unix/bsd/readv.S: File removed.
6743         * sysdeps/unix/bsd/settimeofday.S: File removed.
6744         * sysdeps/unix/bsd/sigblock.S: File removed.
6745         * sysdeps/unix/bsd/sigpause.S: File removed.
6746         * sysdeps/unix/bsd/sigsetmask.S: File removed.
6747         * sysdeps/unix/bsd/sigstack.S: File removed.
6748         * sysdeps/unix/bsd/sigvec.S: File removed.
6749         * sysdeps/unix/bsd/utimes.S: File removed.
6750         * sysdeps/unix/bsd/writev.S: File removed.
6751         * sysdeps/unix/bsd/bsd4.4/chflags.S: File removed.
6752         * sysdeps/unix/bsd/bsd4.4/fchdir.S: File removed.
6753         * sysdeps/unix/bsd/bsd4.4/fchflags.S: File removed.
6754         * sysdeps/unix/bsd/bsd4.4/getdents.S: File removed.
6755         * sysdeps/unix/bsd/bsd4.4/getdomain.S: File removed.
6756         * sysdeps/unix/bsd/bsd4.4/revoke.S: File removed.
6757         * sysdeps/unix/bsd/bsd4.4/setdomain.S: File removed.
6758         * sysdeps/unix/bsd/bsd4.4/setegid.S: File removed.
6759         * sysdeps/unix/bsd/bsd4.4/seteuid.S: File removed.
6760         * sysdeps/unix/bsd/bsd4.4/setlogin.S: File removed.
6761         * sysdeps/unix/bsd/bsd4.4/setsid.S: File removed.
6762         * sysdeps/unix/bsd/bsd4.4/sigaltstack.S: File removed.
6763         * sysdeps/unix/bsd/bsd4.4/wait4.S: File removed.
6764         * sysdeps/unix/bsd/hp/m68k/getdents.S: File removed.
6765         * sysdeps/unix/bsd/osf/msync.S: File removed.
6766         * sysdeps/unix/bsd/osf/alpha/wait4.S: File removed.
6767         * sysdeps/unix/bsd/sony/newsos4/fchdir.S: File removed.
6768         * sysdeps/unix/bsd/sony/newsos4/sys_wait4.S: File removed.
6769         * sysdeps/unix/bsd/sun/getdents.S: File removed.
6770         * sysdeps/unix/bsd/sun/sunos3/m68k/wait.S: File removed.
6771         * sysdeps/unix/bsd/sun/sunos4/msync.S: File removed.
6772         * sysdeps/unix/bsd/sun/sunos4/poll.S: File removed.
6773         * sysdeps/unix/bsd/sun/sunos4/setsid.S: File removed.
6774         * sysdeps/unix/bsd/sun/sunos4/sys_mmap.S: File removed.
6775         * sysdeps/unix/bsd/sun/sunos4/sys_wait4.S: File removed.
6776         * sysdeps/unix/bsd/sun/sunos4/uname.S: File removed.
6777         * sysdeps/unix/bsd/ultrix4/getdents.S: File removed.
6778         * sysdeps/unix/bsd/ultrix4/setsid.S: File removed.
6779         * sysdeps/unix/bsd/ultrix4/uname.S: File removed.
6780         * sysdeps/unix/common/access.S: File removed.
6781         * sysdeps/unix/common/adjtime.S: File removed.
6782         * sysdeps/unix/common/dup2.S: File removed.
6783         * sysdeps/unix/common/fchmod.S: File removed.
6784         * sysdeps/unix/common/fchown.S: File removed.
6785         * sysdeps/unix/common/ftruncate.S: File removed.
6786         * sysdeps/unix/common/getgroups.S: File removed.
6787         * sysdeps/unix/common/getitimer.S: File removed.
6788         * sysdeps/unix/common/getpgid.S: File removed.
6789         * sysdeps/unix/common/getpriority.S: File removed.
6790         * sysdeps/unix/common/getrlimit.S: File removed.
6791         * sysdeps/unix/common/getrusage.S: File removed.
6792         * sysdeps/unix/common/gettimeofday.S: File removed.
6793         * sysdeps/unix/common/mkdir.S: File removed.
6794         * sysdeps/unix/common/readlink.S: File removed.
6795         * sysdeps/unix/common/rename.S: File removed.
6796         * sysdeps/unix/common/rmdir.S: File removed.
6797         * sysdeps/unix/common/select.S: File removed.
6798         * sysdeps/unix/common/setgroups.S: File removed.
6799         * sysdeps/unix/common/setitimer.S: File removed.
6800         * sysdeps/unix/common/setpgid.S: File removed.
6801         * sysdeps/unix/common/setpriority.S: File removed.
6802         * sysdeps/unix/common/setregid.S: File removed.
6803         * sysdeps/unix/common/setreuid.S: File removed.
6804         * sysdeps/unix/common/setrlimit.S: File removed.
6805         * sysdeps/unix/common/swapon.S: File removed.
6806         * sysdeps/unix/common/symlink.S: File removed.
6807         * sysdeps/unix/common/truncate.S: File removed.
6808         * sysdeps/unix/common/vhangup.S: File removed.
6809         * sysdeps/unix/inet/accept.S: File removed.
6810         * sysdeps/unix/inet/bind.S: File removed.
6811         * sysdeps/unix/inet/connect.S: File removed.
6812         * sysdeps/unix/inet/gethostid.S: File removed.
6813         * sysdeps/unix/inet/gethostname.S: File removed.
6814         * sysdeps/unix/inet/getpeername.S: File removed.
6815         * sysdeps/unix/inet/getsockname.S: File removed.
6816         * sysdeps/unix/inet/getsockopt.S: File removed.
6817         * sysdeps/unix/inet/listen.S: File removed.
6818         * sysdeps/unix/inet/recv.S: File removed.
6819         * sysdeps/unix/inet/recvfrom.S: File removed.
6820         * sysdeps/unix/inet/recvmsg.S: File removed.
6821         * sysdeps/unix/inet/send.S: File removed.
6822         * sysdeps/unix/inet/sendmsg.S: File removed.
6823         * sysdeps/unix/inet/sendto.S: File removed.
6824         * sysdeps/unix/inet/sethostid.S: File removed.
6825         * sysdeps/unix/inet/sethostname.S: File removed.
6826         * sysdeps/unix/inet/setsockopt.S: File removed.
6827         * sysdeps/unix/inet/shutdown.S: File removed.
6828         * sysdeps/unix/inet/socket.S: File removed.
6829         * sysdeps/unix/inet/socketpair.S: File removed.
6830         * sysdeps/unix/mman/madvise.S: File removed.
6831         * sysdeps/unix/mman/mmap.S: File removed.
6832         * sysdeps/unix/mman/mprotect.S: File removed.
6833         * sysdeps/unix/mman/msync.S: File removed.
6834         * sysdeps/unix/mman/munmap.S: File removed.
6835         * sysdeps/unix/sysv/alarm.S: File removed.
6836         * sysdeps/unix/sysv/ftime.S: File removed.
6837         * sysdeps/unix/sysv/nice.S: File removed.
6838         * sysdeps/unix/sysv/pause.S: File removed.
6839         * sysdeps/unix/sysv/poll.S: File removed.
6840         * sysdeps/unix/sysv/s_getdents.S: File removed.
6841         * sysdeps/unix/sysv/signal.S: File removed.
6842         * sysdeps/unix/sysv/stime.S: File removed.
6843         * sysdeps/unix/sysv/time.S: File removed.
6844         * sysdeps/unix/sysv/times.S: File removed.
6845         * sysdeps/unix/sysv/ulimit.S: File removed.
6846         * sysdeps/unix/sysv/uname.S: File removed.
6847         * sysdeps/unix/sysv/utime.S: File removed.
6848         * sysdeps/unix/sysv/irix4/getpgid.S: File removed.
6849         * sysdeps/unix/sysv/irix4/msync.S: File removed.
6850         * sysdeps/unix/sysv/irix4/setpgid.S: File removed.
6851         * sysdeps/unix/sysv/irix4/signal.S: File removed.
6852         * sysdeps/unix/sysv/irix4/sysmp.S: File removed.
6853         * sysdeps/unix/sysv/irix4/syssgi.S: File removed.
6854         * sysdeps/unix/sysv/isc2.2/rename.S: File removed.
6855         * sysdeps/unix/sysv/linux/adjtimex.S: File removed.
6856         * sysdeps/unix/sysv/linux/fork.S: File removed.
6857         * sysdeps/unix/sysv/linux/getpgid.S: File removed.
6858         * sysdeps/unix/sysv/linux/getpgrp.S: File removed.
6859         * sysdeps/unix/sysv/linux/getsid.S: File removed.
6860         * sysdeps/unix/sysv/linux/gtty.S: File removed.
6861         * sysdeps/unix/sysv/linux/mlock.S: File removed.
6862         * sysdeps/unix/sysv/linux/mlockall.S: File removed.
6863         * sysdeps/unix/sysv/linux/mount.S: File removed.
6864         * sysdeps/unix/sysv/linux/munlock.S: File removed.
6865         * sysdeps/unix/sysv/linux/munlockall.S: File removed.
6866         * sysdeps/unix/sysv/linux/pipe.S: File removed.
6867         * sysdeps/unix/sysv/linux/s_ptrace.S: File removed.
6868         * sysdeps/unix/sysv/linux/setpgid.S: File removed.
6869         * sysdeps/unix/sysv/linux/setsid.S: File removed.
6870         * sysdeps/unix/sysv/linux/settimeofday.S: File removed.
6871         * sysdeps/unix/sysv/linux/sigpending.S: File removed.
6872         * sysdeps/unix/sysv/linux/stty.S: File removed.
6873         * sysdeps/unix/sysv/linux/umount.S: File removed.
6874         * sysdeps/unix/sysv/linux/wait4.S: File removed.
6875         * sysdeps/unix/sysv/linux/i386/ipc.S: File removed.
6876         * sysdeps/unix/sysv/sco3.2.4/pathconf.S: File removed.
6877         * sysdeps/unix/sysv/sco3.2.4/pgrpsys.S: File removed.
6878         * sysdeps/unix/sysv/sco3.2.4/sco_getgrp.S: File removed.
6879         * sysdeps/unix/sysv/sco3.2.4/sigpending.S: File removed.
6880         * sysdeps/unix/sysv/sco3.2.4/sigprocmask.S: File removed.
6881         * sysdeps/unix/sysv/sco3.2.4/sigsuspend.S: File removed.
6882         * sysdeps/unix/sysv/sysv4/pgrpsys.S: File removed.
6883         * sysdeps/unix/sysv/sysv4/sigprocmask.S: File removed.
6884         * sysdeps/unix/sysv/sysv4/sigsuspend.S: File removed.
6885         * sysdeps/unix/sysv/sysv4/sysconfig.S: File removed.
6886         * sysdeps/unix/sysv/sysv4/sysinfo.S: File removed.
6887         * sysdeps/unix/sysv/sysv4/solaris2/sparc/sys-sig.S: File removed.
6888
6889         * io/mknod.c: New file.
6890
6891         * Makerules (COMPILE.s): New variable.
6892
6893         * sysdeps/unix/Makefile (sysd-syscalls): New target; generate with
6894         make-syscalls.sh and include it.
6895         [$(subdir)=misc] (sysdep_routines): Append extra syscalls from
6896         sysd-syscalls.
6897         * sysdeps/unix/make-syscalls.sh: New file.
6898
6899         * Makerules (COMPILE.S): New variable.
6900
6901 Wed Jan 17 11:04:58 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6902
6903         * sysdeps/unix/sysv/linux/statbuf.h (_STAT_VER_LINUX,
6904         _STAT_VER_SVR4, _STAT_VER): New macros.
6905         (_MKNOD_VER_LINUX, _MKNOD_VER_SVR4, _MKNOD_VER): New macros.
6906
6907         * sysdeps/unix/sysv/sysv4/i386/statbuf.h (_STAT_VER, _MKNOD_VER):
6908         New macros.
6909
6910         * io/sys/stat.h (_STAT_VER, _MKNOD_VER): New macros.
6911         (__xstat, __fxstat, __lxstat, __xmknod): Declare new functions.
6912         [__GNUC__] (stat, fstat, lstat, mknod): Define these (and __ names)
6913         as `extern inline's calling the `x' functions.
6914         * io/fstat.c: New file.
6915         * io/lstat.c: New file.
6916         * io/stat.c: New file.
6917         * sysdeps/generic/lstat.c: File removed.
6918         * sysdeps/generic/lxstat.c: New file.
6919         * sysdeps/mach/hurd/fstat.c: File removed.
6920         * sysdeps/mach/hurd/fxstat.c: New file.
6921         * sysdeps/mach/hurd/lstat.c: File removed.
6922         * sysdeps/mach/hurd/lxstat.c: New file.
6923         * sysdeps/mach/hurd/mknod.c: File removed.
6924         * sysdeps/mach/hurd/stat.c: File removed.
6925         * sysdeps/mach/hurd/xmknod.c: New file.
6926         * sysdeps/mach/hurd/xstat.c: New file.
6927         * sysdeps/stub/fstat.c: File removed.
6928         * sysdeps/stub/fxstat.c: New file.
6929         * sysdeps/stub/lstat.c: File removed.
6930         * sysdeps/stub/lxstat.c: New file.
6931         * sysdeps/stub/mknod.c: File removed.
6932         * sysdeps/stub/stat.c: File removed.
6933         * sysdeps/stub/xmknod.c: New file.
6934         * sysdeps/stub/xstat.c: New file.
6935         * sysdeps/unix/common/lstat.S: File removed.
6936         * sysdeps/unix/common/lxstat.c: New file.
6937         * sysdeps/unix/fstat.S: File removed.
6938         * sysdeps/unix/fxstat.c: New file.
6939         * sysdeps/unix/mknod.S: File removed.
6940         * sysdeps/unix/stat.S: File removed.
6941         * sysdeps/unix/sysv/linux/fstat.c: File removed.
6942         * sysdeps/unix/sysv/linux/i386/fxstat.S: File removed.
6943         * sysdeps/unix/sysv/linux/i386/lxstat.S: File removed.
6944         * sysdeps/unix/sysv/linux/i386/xmknod.S: File removed.
6945         * sysdeps/unix/sysv/linux/i386/xstat.S: File removed.
6946         * sysdeps/unix/sysv/linux/lstat.c: File removed.
6947         * sysdeps/unix/sysv/linux/mknod.c: File removed.
6948         * sysdeps/unix/sysv/linux/stat.c: File removed.
6949         * sysdeps/unix/sysv/sysv4/i386/fstat.S: File removed.
6950         * sysdeps/unix/sysv/sysv4/i386/lstat.S: File removed.
6951         * sysdeps/unix/sysv/sysv4/i386/mknod.S: File removed.
6952         * sysdeps/unix/sysv/sysv4/i386/stat.S: File removed.
6953         * sysdeps/unix/xmknod.c: New file.
6954         * sysdeps/unix/xstat.c: New file.
6955         * sysdeps/unix/mkfifo.c: Use __xmknod instead of __mknod.
6956         * misc/Makefile (routines): Remove mknod.
6957
6958         * sysdeps/ieee754/ieee754.h (union ieee854_long_double.ieee_nan):
6959         Add missing ; in little-endian case.
6960
6961         * elf/dynamic-link.h [ELF_MACHINE_NO_REL] (ELF_DYNAMIC_DO_REL):
6962         Define this instead of ELF_DYNAMIC_DO_RELA.
6963
6964         * sysdeps/unix/sysv/time.S: Moved from sysv4.
6965         * sysdeps/unix/sysv/irix4/time.S: File removed.
6966
6967         * sysdeps/unix/sysv/linux/signum.h: Moved from
6968         sysdeps/unix/sysv/linux/i386.
6969         (_NSIG): Move inside #ifdef _SIGNAL_H.
6970
6971 Tue Jan 16 17:37:39 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
6972
6973         * sysdeps/unix/seekdir.c: Don't modify POS before seeking.
6974         * sysdeps/unix/telldir.c: Fix position calculation to account for
6975         buffered data properly.
6976
6977         * sysdeps/m68k/Makefile (crypt): Don't define if building a shared
6978         library.
6979
6980         * csu/initfini.c (_init): Call __gmon_start__ if defined (weak ref).
6981         * csu/gmon-start.c (__gmon_start__): Renamed from gmon_start, made
6982         global.
6983         [! HAVE_INITFINI]: Only make it a constructor in this case.
6984
6985         * gmon/Makefile (CFLAGS-mcount.c): New variable.
6986         (mcount.po): New target.
6987
6988         * Makeconfig (CFLAGS): Append $(CFLAGS-$(<F)).
6989
6990         * csu/Makefile [have-initfini=yes] (CPPFLAGS): Append -DHAVE_INITFINI.
6991         (initfini): Compile initfini.c with -fPIC.
6992
6993 Sun Jan 14 01:01:10 1996  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
6994
6995         * sysdeps/mips/bytesex.h: Add default byte sex.  By Ralf Baechle.
6996
6997         * sysdeps/unix/sysv/linux/adjtime.c [! MOD_OFFSET]: Use `mode'
6998         member of `struct timex' instead of `modes'.  From Andreas Schwab.
6999
7000         * sysdeps/unix/sysv/linux/mknod.c: New file.  Generic C version.
7001         * sysdeps/unix/sysv/linux/i386/mknod.S: Remove assembler version.
7002
7003         * sysdeps/unix/sysv/linux/Makefile (inhibit-glue): New variable.
7004         [$(subdir) = misc] (sysdep_routines): Add mount, umount, and s_ptrace.
7005         [$(subdir) = misc] (headers): Append sys/mount.h.
7006
7007         * sysdeps/unix/sysv/linux/mount.S, sysdeps/unix/sysv/linux/umount.S:
7008         New files.  Implement system calls.
7009         * sysdeps/unix/sysv/linux/sys/mount.h: New header file.
7010
7011         * sysdeps/unix/sysv/linux/ptrace.c: New file.  Wrapper around
7012         ptrace system call.
7013         * sysdeps/unix/sysv/linux/s_ptrace.S: New file: ptrace system call.
7014
7015         * sysdeps/unix/sysv/linux/i386/gnu/types.h: New file with correct
7016         types for i386/Linux.
7017
7018 Sun Jan 14 17:51:09 1996  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
7019
7020         * MakeTAGS (all-sources, all-headers): Always search the
7021         current directory first.
7022
7023         * db/btree/bt_seq.c (__bt_first): Return RET_SPECIAL when key not
7024         found.
7025
7026         * stdio-common/vfscanf.c (inchar, conv_error, input_error,
7027         memory_error): Add cast to void to avoid gcc warning.
7028         (vfscanf): Rewrite character class parsing to make it more efficient.
7029
7030         * misc/efgcvt_r.c (ecvt_r): Handle negative values.
7031
7032         * stdlib/stdlib.h: Replace __CONSTVALUE by attribute.
7033         * stdlib/abs.c, stdlib/div.c, stdlib/labs.c, stdlib/ldiv.c,
7034         sysdeps/generic/hypot.c: Remove obsolete __CONSTVALUE.
7035
7036         * stdio-common/printf_fp.c (__printf_fp): Fix parameter
7037         declaration.
7038
7039         * sysdeps/generic/putenv.c (putenv): Fix second argument of
7040         setenv.
7041
7042         * sysdeps/ieee754/hypot.c: New file, extracted out of cabs.c.
7043         * sysdeps/ieee754/cabs.c: Don't define hypot here.
7044
7045         * sysdeps/ieee754/ieee754.h (union ieee854_long_double): Fix
7046         definition of ieee_nan alternative.
7047
7048         * sysdeps/m68k/__longjmp.c, sysdeps/m68k/setjmp.c: Add register
7049         prefix spec.
7050
7051         * sysdeps/m68k/ffs.c (ffs): Fix register constraint.
7052
7053         * sysdeps/m68k/fpu/__math.h: Include <errno.h>.  Replace obsolete
7054         __CONSTVALUE by attribute.
7055         (floor): Round to negative infinity.
7056         (rint, expm1) [__NO_MATH_INLINES]: Don't define, to avoid type
7057         clash when compiling source.
7058         (pow): Handle x == 0 and x < 0.
7059         (ceil, __isinf, __isnan): Fix register constraints.
7060         (__isinfl, __isnanl): Added.
7061         * sysdeps/m68k/fpu/acos.c, sysdeps/m68k/fpu/atan2.c,
7062         sysdeps/m68k/fpu/fmod.c, sysdeps/m68k/fpu/ldexp.c,
7063         sysdeps/m68k/fpu/pow.c: Remove obsolete __CONSTVALUE.
7064
7065         * sysdeps/m68k/bsd-_setjmp.S, sysdeps/m68k/bsd-setjmp.S: Fix
7066         assembler syntax.
7067
7068         * sysdeps/unix/bsd/bsd4.4/fchdir.S (fchdir): Take only one
7069         argument.
7070
7071         * sysdeps/unix/bsd/clock.c (timeval_to_clock_t): Fix timeval to
7072         clock_t conversion.
7073         (clock): Don't multiply by CLOCKS_PER_SEC.
7074
7075         * sysdeps/unix/bsd/poll.c (poll): Fix msec to timeval conversion.
7076
7077         * sysdeps/unix/bsd/sun/m68k/brk.S (brk): Compare with address of
7078         __end.
7079
7080         * sysdeps/unix/bsd/sun/m68k/vfork.S: Fix assembler syntax.
7081
7082         * sysdeps/unix/bsd/ualarm.c (ualarm): Fix timeval calculation.
7083
7084         * sysdeps/unix/bsd/vax/vfork.S: Remove duplicate label.
7085
7086 Sun Jan 14 01:01:10 1996  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
7087
7088         * stdlib/strtol.c: Return correct pointer for strings
7089         like "0xyz" and base 0 or 16.
7090
7091         * string/strxfrm.c: Handle case for LENGTH == 0 correct.
7092
7093         * sunrpc/etc.rpc: Add some more known protocols.
7094
7095 Fri Jan 12 13:40:01 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7096
7097         * posix/gnu/types.h: Moved to sysdeps/generic/gnu/types.h.
7098
7099         * posix/glob.c (glob): Add parens in glob call flags arg for
7100         GLOB_BRACE case.
7101
7102         * string/string.h (strdupa): New macro.
7103
7104         * stdio-common/vfscanf.c (%[): Grok ] as first char in set, not
7105         terminator on empty set.  From drepper.
7106
7107 Thu Jan 11 13:09:20 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7108
7109         * elf/do-rel.h (elf_dynamic_do_rel): Use referring symbol as
7110         referent for STB_LOCAL.
7111
7112 Wed Jan 10 10:11:39 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7113
7114         * time/africa, time/antarctica, time/asia, time/australasia,
7115         time/europe, time/northamerica, time/pacificnew, time/solar87,
7116         time/solar88, time/solar89, time/southamerica: Updated from ADO 96a.
7117
7118 Tue Jan  9 16:10:26 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7119
7120         * elf/dl-load.c (_dl_map_object_from_fd): After mapping first
7121         segment to find location, mprotect excess region to no access,
7122         don't munmap it.
7123
7124         * sysdeps/mach/hurd/dl-sysdep.c (mmap): If vm_map returns
7125         KERN_NO_SPACE for fixed location, deallocate it and try again.
7126
7127 Mon Jan  8 17:43:23 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7128
7129         * locale/Makefile (lib-modules): Renamed hash to locfile-hash.
7130         * locale/hash.c: Renamed to locale/locfile-hash.c.
7131
7132 Sat Jan  6 16:39:14 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7133
7134         * Makefile (subdirs): Added db.
7135
7136         * resolv/Makefile (routines): Add res_data.
7137         * resolv/res_data.c, resolv/res_debug.c, resolv/resolv.h:
7138         Updated from BIND 4.9.3 final release.
7139
7140         * elf/dynamic-link.h (elf_get_dynamic_info): Handle
7141         processor-specific tags.
7142         (ELF_DYNAMIC_DO_REL, ELF_DYNAMIC_DO_RELA): Handle absent DT_PLTREL tag.
7143
7144         * elf/elf.h (DT_MIPS_NUM, DT_PROCNUM): New macros.
7145         * elf/link.h (struct link_map): Extend `l_info' by DT_PROCNUM.
7146
7147         * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Take new
7148         arg LAZY.  Only do our work if LAZY and there is a DT_JMPREL record.
7149         * elf/dl-reloc.c (_dl_relocate_object): Call
7150         elf_machine_runtime_setup unconditionally, and pass it LAZY flag.
7151
7152         * elf/dl-load.c: Fixed ELFMAG check to work for either byte order.
7153         Align end of load segment only to page size, not to segment alignment.
7154
7155 Thu Jan  4 11:35:18 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7156
7157         * sysdeps/mach/hurd/setitimer.c: Code rearranged a bit to use new
7158         preemption interface.
7159
7160         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
7161         Use _hurdsig_catch_memory_fault.
7162
7163         * hurd/Makefile (headers): Add hurd/sigpreempt.h.
7164         (sig): Add catch-signal.
7165
7166         * hurd/hurdfault.c (_hurdsig_fault_catch_exception_raise):
7167         Rewritten using a preempter in new interface.
7168         * hurd/hurdfault.h (_hurdsig_catch_fault): Likewise.
7169         (_hurdsig_catch_memory_fault): New macro.
7170
7171 Wed Jan  3 20:23:42 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7172
7173         * hurd/catch-signal.c: New file.
7174
7175         * hurd/intr-msg.c: When restarting RPC, fetch a new reply port.
7176
7177         * hurd/hurdsig.c: Use new hurdfault.h interface.
7178         (abort_all_rpcs): Mutate return value to EINTR in threads whose
7179         replies we will wait for.
7180
7181         * hurd/hurdkill.c (_hurd_sig_post): When doing pgrp, make sure we
7182         do ourselves last.
7183
7184 Wed Jan  3 19:17:10 1996  Miles Bader  <miles@gnu.ai.mit.edu>
7185
7186         * sysdeps/mach/hurd/access.c (__access): Put the uid/gid arguments
7187         to auth_makeauth() in the right order.
7188
7189 Wed Jan  3 17:19:04 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7190
7191         * sysdeps/generic/strsep.c: Rewritten.
7192
7193         * sysdeps/mach/hurd/fork.c: Use a different workaround for the
7194         suspended page fault deadlock kernel bug: thread_abort our signal
7195         thread first thing after proc_dostop.
7196
7197         * sysdeps/mach/hurd/setgid.c: Rewrote gid frobnication to
7198         recognize rootness properly.
7199
7200 Tue Jan  2 00:50:10 1996  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7201
7202         * hurd/hurd/signal.h (struct hurd_sigstate): New member `preempters'.
7203         (hurd_preempt_signals, hurd_unpreempt_signals): Decls removed.
7204         * hurd/hurd/sigpreempt.h: New file.
7205         * hurd/preempt-sig.c: Rewritten with new interface.
7206         * sysdeps/mach/hurd/jmp-unwind.c (_longjmp_unwind): Remove local signal
7207         preempters being unwound past.
7208         * hurd/hurdsig.c: Use new signal preemption interface.
7209
7210         * db: New directory, 4.4 BSD db package incorporated from BSD db-1.85
7211         release.
7212
7213         * sysdeps/unix/sysv/linux/sys/param.h: Several new macros for BSD
7214         compatibility.
7215
7216         * misc/queue.h: New file, incorporated from 4.4BSD.
7217         * misc/Makefile (headers): Add queue.h.
7218
7219         * posix/sys/types.h [__USE_BSD]: Include endian.h.
7220
7221         * io/sys/stat.h (DEFFILEMODE, ALLPERMS, ACCESSPERMS, S_BLKSIZE):
7222         New macros.
7223
7224 Thu Dec 28 10:21:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7225
7226         * sysdeps/generic/confname.h: Define all names as self-referential
7227         macros so #ifdef works.
7228
7229         * hurd/preempt-sig.c (hurd_unpreempt_signals): Remove bogus asgnmt
7230         of _hurd_signal_preempters[SIGNO].
7231
7232 Mon Dec 25 20:56:39 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7233
7234         * sysdeps/mach/hurd/bind.c: Translate EEXIST from dir_link into
7235         EADDRINUSE.  If translated node doesn't grok ifsock protocol,
7236         return EADDRINUSE.
7237
7238         * sysdeps/mach/hurd/connect.c: Make address arg
7239         `const struct sockaddr_un *'.
7240         The redecl is kosher and avoids another variable for AF_LOCAL case.
7241         * sysdeps/mach/hurd/sendto.c: Likewise.
7242         * sysdeps/mach/hurd/bind.c: Likewise.
7243
7244         * socket/sys/socket.h (__SOCKADDR_ARG): Enable transparent_union
7245         code for GCC >= 2.7; use __transparent_union__ for name safety;
7246         add several sockaddr flavors.
7247         (__SOCKADDR_ALLTYPES, __SOCKADDR_ONETYPE): New macros used in
7248         constructing the transparent union declarations.
7249         (__CONST_SOCKADDR_ARG): New type (or macro if not GCC 2.7).
7250         (bind, connect, sendto): Make the sockaddr argument use that.
7251
7252 Fri Dec 22 00:57:38 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7253
7254         * sysdeps/mach/hurd/setgid.c: In root case, store into NEWAUX, not
7255         old vector.
7256         * sysdeps/mach/hurd/setuid.c: Likewise.
7257
7258         * sysdeps/mach/hurd/setuid.c: Rewrote ID frobnication to do the
7259         right thing.
7260         * sysdeps/mach/hurd/setgid.c: Likewise.
7261         * sysdeps/mach/hurd/setreuid.c: Likewise.
7262         * sysdeps/mach/hurd/setregid.c: Likewise.
7263         * sysdeps/mach/hurd/setegid.c: Likewise.
7264         * sysdeps/mach/hurd/seteuid.c: Likewise.
7265
7266         * sysdeps/mach/hurd/fork.c: Peek __mach_task_self_ value before
7267         proc_dostop call to work around kernel paging bug.
7268
7269 Fri Dec 22 00:38:00 1995  H.J. Lu  <hjl@nynexst.com>
7270
7271         * stdio-common/vfscanf.c: Correctly handle white space skipping.
7272         * stdio-common/Makefile (tests): Add bug11.
7273         * stdio-common/bug11.c: New file.
7274
7275 Thu Dec 21 12:19:32 1995  Miles Bader  <miles@gnu.ai.mit.edu>
7276
7277         * sysdeps/mach/hurd/setuid.c (__setuid): Actually add the new uid
7278         instead of putting it (and other uids) in the gids and leaving the
7279         old uids as is.
7280
7281 Wed Dec 20 18:23:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7282
7283         * stdio/internals.c (flushbuf): If the target is -1, always
7284         discard the buffer of read data.
7285         Only set TWIDDLED flag in !ALIGNED case.
7286         Never increment target or offset when old value is -1.
7287
7288 Tue Dec 19 17:00:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7289
7290         * hurd/hurdpid.c (_S_msg_proc_newids): Only run the hook when the
7291         pgrp changes.
7292
7293 Mon Dec 18 13:40:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7294
7295         * stdio/fread.c: Don't increment __offset when it's -1.
7296
7297         * elf/rtld.c (dl_main): Prepend tab to "statically linked".  Exit
7298         0 in that case.
7299
7300         * misc/err.c (vwarnx, vwarn): Fix major brainos.
7301
7302         * sysdeps/mach/hurd/dl-sysdep.c (mmap): Fix setting of
7303         inheritance.
7304
7305 Sun Dec 17 15:56:35 1995  Miles Bader  <miles@gnu.ai.mit.edu>
7306
7307         * misc/getpass.c (getpass): Don't barf if getline returns a null BUF.
7308
7309 Sat Dec 16 10:33:11 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7310
7311         * Makerules: Use $(do-install-so) for installing shared objects.
7312         (do-install-so): New canned sequence.  Make a symlink LIB.so after
7313         installing LIB.so.VERSION.
7314
7315         * inet/netinet/in.h: Fixed typo in IPPORT_WHOIS.
7316
7317 Fri Dec 15 04:41:22 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
7318
7319         * stdio-common/Makefile (tests): Add bug10.
7320         * stdio-common/bug10.c: New file.  From HJ Lu.
7321
7322         * stdio-common/tstdiomisc.c: Make more test-suite like: exit
7323         status tells about successful run.
7324
7325         * stdio-common/vfscanf.c [!USE_IN_LIBIO]: Use `flags' to check
7326         format correctness.
7327         Correct handling of trailing white spaces in format + EOF.
7328
7329 Fri Dec 15 01:31:56 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
7330
7331         * stdio-common/Makefile (tests): Add bug8 and bug9.
7332         * stdio-common/bug8.c, stdio-common/bug9.c: New tests.
7333
7334         * stdio-common/vfscanf.c: Fix bug in dynamic buffer handling.
7335
7336         * stdlib/strtod.c: Correct spelling: nominator -> numerator.
7337         Thanks to Jim Meyering.
7338
7339 Sat Nov 25 06:05:12 1995  H.J. Lu  <hjl@nynexst.com>
7340
7341         * stdio-common/vfscanf.c: Always check width !=0.
7342         Correctly handle %%.
7343
7344 Thu Dec 14 02:28:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7345
7346         * posix/glob.c (glob_in_dir): Cast result of opendir to __ptr_t,
7347         and cast STREAM to DIR * before passing to readdir and closedir.
7348
7349 Wed Dec 13 22:06:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7350
7351         * hurd/hurdsig.c (_hurd_internal_post_signal: suspend): Reply
7352         after aborting RPCs but before calling proc_mark_stop.
7353
7354 Mon Dec 11 20:07:54 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7355
7356         * posix/glob.c [! STDC_HEADERS]: Declare getenv.
7357         (glob): Avoid using function as value.
7358
7359         * elf/rtld.c (dl_main): When mapping argument executable, set
7360         l_name to "", not l_libname.
7361         After loading DT_NEEDED library, set its l_type to lt_library.
7362
7363         * sysdeps/mach/hurd/mmap.c: Don't interpret MAP_INHERIT to mean
7364         VM_INHERIT.  We can't handle MAP_INHERIT easily.
7365         Handle non-page-aligned addresses if congruent to offset.
7366
7367         * elf/dl-init.c: Skip the initializer for l_type lt_executable
7368         with l_name "". Start at _dl_loaded; don't skip the first element.
7369
7370         * elf/dl-load.c (MAP_FILE): Define to zero if undefined.
7371         (MAP_COPY): Define to MAP_PRIVATE if undefined.
7372         (_dl_map_object_from_fd): Don't use MAP_INHERIT in mmap calls.
7373         If file it ET_EXEC, set its l_type to lt_executable.
7374
7375 Sun Dec 10 09:56:06 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7376
7377         * elf/dl-minimal.c (malloc): Use MAP_PRIVATE in mmap call.
7378
7379 Fri Dec  8 13:04:51 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7380
7381         * locale/error.c, locale/error.h: Files removed.
7382         * locale/Makefile (distribute): Remove error.h.
7383         (lib-modules): Remove error.
7384
7385         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): For "tty"
7386         magic, return ENXIO if no ctty.
7387
7388         * sysdeps/mach/hurd/mmap.c: For MAP_FIXED, deallocate a previous
7389         mapping if vm_map fails for that reason.
7390
7391         * posix/glob.c: Implement new options GLOB_ALTDIRFUNC, GLOB_BRACE,
7392         GLOB_TILDE, GLOB_NOMAGIC.
7393         (glob): Use stat instead of lstat to determine directoriness.
7394         * posix/glob.h (GLOB_ALTDIRFUNC, GLOB_BRACE, GLOB_NOMAGIC, GLOB_TILDE):
7395         New flag bits.
7396         (__GLOB_FLAGS): Include them.
7397         (glob_t): New members gl_closedir, gl_readdir, gl_opendir, gl_lstat,
7398         gl_stat.
7399
7400         * elf/elf.h (ET_NUM, SHT_NUM, STB_NUM, STT_NUM, PT_NUM): New macros.
7401
7402         * sysdeps/unix/sysv/linux/sys/mman.h: Include <linux/mman.h> to
7403         define all the bit values.
7404         (MAP_*, MCL_*): Macros removed.
7405
7406 Thu Dec  7 02:27:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7407
7408         * resolv/res_comp.c, resolv/res_debug.c, resolv/res_send.c:
7409         Updated from BIND 4.9.3-BETA27.
7410
7411 Wed Dec  6 18:44:01 1995  Miles Bader  <miles@gnu.ai.mit.edu>
7412
7413         * sysdeps/mach/hurd/select.c (__select): Swap size args to mach_msg.
7414
7415         * sysdeps/mach/hurd/select.c (__select): Frob TYPES correctly when
7416         we get a delayed reply.
7417         Only grab values out of entries in TYPES that have SELECT_RETURNED
7418         turned on, and turn it on whenever an rpc returns.
7419         Only clear bits in the user's fdsets -- those needing to be set
7420         should be already.
7421         Use SELECT_ALL in appropiate places.
7422         (SELECT_RETURNED, SELECT_ALL): New macros.
7423
7424 Wed Dec  6 09:10:39 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7425
7426         * sysdeps/mach/hurd/sys/param.h (NBBY): New macro.
7427
7428         * gnu-versions.h (_GNU_GLOB_INTERFACE_VERSION): New macro.
7429
7430 Tue Dec  5 14:00:17 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7431
7432         * misc/Makefile (headers): Add error.h, err.h.
7433         (routines): Add error, err.
7434         (gpl2lgpl): New variable.
7435         * misc/err.c: New file.
7436         * misc/err.h: New file.
7437         * misc/error.c, misc/error.h: New files.
7438
7439         * sysdeps/mach/hurd/ioctl.c: Fix typo in last change.
7440
7441         * Makeconfig (+link): Translate libc% from $^, not just libc.a.
7442         (link-libc): Append $(libc.so-version) to libc.so.
7443         (built-program-cmd): Fix comma usage.
7444         * Makerules [libc.so-version] (libc.so$(libc.so-version)): Make a
7445         symlink to libc.so in the build directory.
7446         * Rules ($(others) $(tests)): Depend on the library that appears
7447         in $(link-libc).
7448         (%.out): Use $(built-program-cmd) in commands.
7449
7450         * posix/unistd.h [__USE_MISC]: Declare brk, sbrk.
7451
7452         * sysdeps/generic/setenv.c: Added canonical portability cruft.
7453         (setenv): Use realloc on LAST_ENVIRON instead of always copying.
7454         (unsetenv): New function.
7455         * stdlib/stdlib.h [__USE_BSD]: Declare unsetenv.
7456         * sysdeps/generic/putenv.c: Rewritten using setenv and unsetenv.
7457
7458 Tue Dec  5 02:27:32 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
7459
7460         * libio/Makefile (routines): Remove iofscanf, add iopopen, pclose.
7461
7462         * libio/iofscanf.c: Remove file.
7463
7464         * libio/iogetdelim.c (_IO_getdelim): Correct stupid bug at string
7465         termination.
7466
7467         * libio/iopopen.c: New file from GNU libio.
7468
7469         * libio/memstream.c: Fixed bug in fclose handling.  Instead of
7470         providing a close callback we need a finish callback.
7471
7472         * libio/pclose.c: New file.  Derived from popen.c in GNU libio.
7473
7474         * posix/gnu/types.h: Fixed typo.
7475
7476         * stdio-common/errnobug.c: fputs returns EOF in error case.  Do
7477         not test for != 0.
7478
7479         * stdio-common/printf-parse.h (parse_one_spec): Do not force
7480         padding with ' ' if precision is given.  Fix by HJ Lu.
7481
7482         * stdio-common/printf_fp.c: Fix comment.
7483
7484         * stdio-common/tfformat.c, stdio-common/tiformat.c,
7485         stdio-common/tstdiomisc.c: New files from GNU libio test suite.
7486
7487         * stdio-common/tstgetln.c: Provide ssize_t type when testing
7488         libio.
7489
7490         * stdio-common/vfprintf.c (outchar): Use PUTC instead of putc.
7491         (vfprintf): Cleasr args_type array before using it.
7492         When printing 0 as an integer with precision 0 nothing must be
7493         written for the number.
7494         Based on patch by HJ Lu.
7495
7496         * stdio-common/vfscanf.c: Remove fixed input buffer.  Now we
7497         have a dynamically extended buffer.
7498
7499         * stdlib/strtod.c: Merge with version in Linux libc.  This fixes
7500         some bugs with handling of very small numbers and has different
7501         solution for formaer patches.
7502
7503         * sysdeps/i386/i586/add_n.S, sysdeps/i386/i586/sub_n.S: Rename
7504         macros r1 and r2 to t1, and t2 resp.  This is necessary because
7505         glibc headers also define r1.
7506
7507 Mon Dec  4 12:10:28 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7508
7509         * stdlib/gen-mpn-copy (translations): Updated for new layout in
7510         GMP 1.910.
7511
7512         * malloc/malloc.c (__malloc_initialize): Renamed from initialize;
7513         made global.
7514         (malloc): Caller changed.
7515         * malloc/realloc.c (realloc): Call __malloc_initialize if
7516         necessary, before checking hook.
7517         * malloc/malloc.h: Declare __malloc_initialize.
7518
7519         * sysdeps/mach/hurd/ioctl.c: For IOC_VOID request, send ARG itself
7520         as integer_t arg in RPC.
7521
7522 Sat Dec  2 03:47:27 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7523
7524         * sysdeps/mach/hurd/brk.c (DATA_SIZE): Bump to 128MB.
7525         (_hurd_set_brk): Try to allocate more space when we run out.
7526
7527         * sysdeps/generic/sbrk.c: If __curbrk is zero, call __brk with
7528         zero and examine it again.
7529         * sysdeps/unix/sysv/linux/i386/brk.c: New file.
7530         * sysdeps/unix/sysv/linux/i386/brk.S: File removed.
7531         * sysdeps/unix/sysv/linux/i386/sbrk.S: File removed.
7532         * sysdeps/unix/sysv/linux/dl-sysdep.c: New file.
7533         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_SYSDEP_INIT]:
7534         Invoke this macro before calling DL_MAIN.
7535
7536         * malloc/malloc.c (malloc): Do initialization here, before
7537         checking the hook.
7538         (_malloc_internal): Don't do it here.
7539
7540 Wed Nov 29 12:30:50 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7541
7542         * libio/vsnprintf.c (__vsnprintf): Define as alias.
7543         * libio/iovsscanf.c (__vsscanf): Define as alias.
7544         * asprintf.c: Remove libio adaptation code added by drepper.
7545         * dprintf.c: Likewise.
7546         * printf.c: Likewise.
7547         * scanf.c: Likewise.
7548         * snprintf.c: Likewise.
7549         * sprintf.c: Likewise.
7550         * sscanf.c: Likewise.
7551         * vprintf.c: Likewise.
7552         * stdio-common/vfscanf.c [USE_IN_LIBIO] (__vfscanf): New wrapper
7553         function.
7554         (vfscanf): Define unconditionally.
7555
7556         * sysdeps/i386/dl-machine.h (elf_machine_rel): If SYM is null, use
7557         zero for value.
7558
7559         * misc/getpass.c: Write a newline after reading the unechoed
7560         password.
7561
7562 Mon Nov 27 19:24:18 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7563
7564         * posix/Makefile (routines): Add getsid.
7565         * sysdeps/unix/sysv/linux/getsid.S: New file.
7566         * sysdeps/mach/hurd/getsid.c: New file.
7567         * sysdeps/stub/getsid.c: New file.
7568         * posix/unistd.h [__USE_GNU]: Declare getsid.
7569
7570 Sun Nov 26 12:44:38 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7571
7572         * libc-symbols.h (N_): New macro.
7573
7574 Sat Nov 25 02:48:47 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
7575
7576         * assert/assert-perr.c, assert/assert.c, inet/rcmd.c,
7577         malloc/mcheck.c, malloc/vm-limit.c, posix/getconf.c, posix/id.c,
7578         resolv/herror.c, sunrpc/auth_unix.c, sunrpc/clnt_perr.c,
7579         sunrpc/clnt_raw.c, sunrpc/get_myaddr.c, sunrpc/pmap_clnt.c,
7580         sunrpc/pmap_rmt.c, sunrpc/portmap.c, sunrpc/rpc_main.c,
7581         sunrpc/rpc_parse.c, sunrpc/rpc_scan.c, sunrpc/rpc_util.c,
7582         sunrpc/rpcinfo.c, sunrpc/svc_simple.c, sunrpc/svc_tcp.c,
7583         sunrpc/svc_udp.c, time/zdump.c, time/zic.c: Mark translatable
7584         strings.
7585
7586 Sun Nov 26 02:00:02 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
7587
7588         * misc/syslog.c (vsyslog) [USE_IN_LIBIO]: Adapted for libio.
7589
7590 Thu Nov 23 02:21:55 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
7591
7592         * sysdeps/unix/sysv/linux/{mlock,munlock,mlockall,munlockall}.S:
7593         New files.
7594         * sysdeps/unix/sysv/linux/sys/mman.h: Add prototypes for new functions
7595         mlock, munlock, mlockall, and munlockall.
7596
7597 Thu Nov 23 18:26:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7598
7599         * configure.in (--enable-libio): Set $stdio based on $enableval,
7600         not always to libio.
7601
7602 Thu Nov 23 18:06:48 1995  Richard Stallman  <rms@gnu.ai.mit.edu>
7603
7604         * malloc/malloc.c (_malloc_internal): Can't use
7605         get_contiguous_space when the heap info table
7606         will be growing.  Account for new contiguous space in _heaplimit.
7607
7608 Wed Nov 22 12:37:39 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7609
7610         * sysdeps/unix/sysv/linux/i386/sysdep.S (_errno): Define as alias
7611         for errno.
7612
7613         * stdio-common/vfprintf.c [USE_IN_LIBIO] (vfprintf): Define as
7614         alias for _IO_vfprintf.
7615
7616         * sysdeps/unix/sysv/linux/sockaddrcom.h: File removed.
7617
7618         * sysdeps/unix/sysv/linux/i386/init-first.c (init): Use
7619         __fpu_control instead of ___fpu_control.
7620         * sysdeps/unix/sysv/linux/i386/ieee_fpu.c
7621         (___fpu_control): Renamed to __fpu_control.
7622         * sysdeps/unix/sysv/linux/i386/fpu_control.h: Likewise.
7623         * sysdeps/unix/sysv/linux/i386/fpu_control.c: Likewise.
7624
7625         * elf/dl-minimal.c: New file.
7626         * elf/Makefile (rtld-routines): Add dl-minimal.
7627         * elf/rtld.c (__dgettext, __assert_fail, __assert_perror_fail):
7628         Functions moved to dl-minimal.c.
7629         * sysdeps/mach/hurd/dl-sysdep.c (malloc, free, realloc,
7630         sigjmp_save, longjmp): Likewise.
7631
7632         * sysdeps/unix/sysv/linux/i386/brk.S (__curbrk): Always initialize
7633         to &_end, regardless of PIC.
7634
7635         * stdio-common/vfscanf.c (__vfscanf): Fix arg name in defn.
7636
7637 Tue Nov 21 14:12:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7638
7639         * malloc/malloc.c (align): Don't check contiguity and call abort.
7640
7641         * hurd/hurdsig.c (post_reply): Function removed.
7642         (abort_thread, abort_all_rpcs, _hurdsig_abort_rpcs): Don't call it.
7643         Take single callback fn arg instead of reply port and type.
7644         (_hurd_internal_post_signal): Callers changed.
7645         Cache reply stub fn ptr in local var before UNTRACED might be changed.
7646
7647         * sysdeps/mach/hurd/mmap.c: Cope with a null write memobj for
7648         PROT_READ|PROT_WRITE copy mapping.  Pass a proper vm_inherit_t to
7649         vm_map.
7650
7651         * elf/rtld.c (_dl_start): For --list, do output and exit before
7652         relocating.
7653
7654 Mon Nov 20 16:19:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7655
7656         * intl/Makefile [gettext-srcdir]: Rewrote copying rules to only
7657         get .c and .h files.
7658
7659         * malloc/malloc.c (align): Use abort instead of assert.
7660
7661 Sun Nov 19 18:23:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7662
7663         * Makeconfig (+includes): Add $($(stdio)-include).
7664         (libio-include): New variable.
7665
7666         * stdlib/strtod.c: Put weak_symbol after function defn.
7667         * stdlib/strtol.c: Likewise.
7668
7669         * configure.in (--enable-libio): If not present, set $stdio to
7670         "default".  Move stdio/libio check to end, so sysdeps fragments
7671         can affect it.  Reset $stdio to "stdio" if it's "default".
7672         * sysdeps/unix/sysv/linux/configure: New file.
7673
7674 Sat Nov 18 16:46:01 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
7675
7676         * libio/Makefile, libio/cleanup.c, libio/clearerr.c, libio/feof.c,
7677         libio/ferror.c, libio/fgetc.c, libio/filedoalloc.c, libio/fileno.c,
7678         libio/fileops.c, libio/fputc.c, libio/freopen.c, libio/fseek.c,
7679         libio/genops.c, libio/getc.c, libio/getchar.c, libio/iofclose.c,
7680         libio/iofdopen.c, libio/iofflush.c, libio/iofgetpos.c, libio/iofgets.c,
7681         libio/iofopen.c, libio/iofprintf.c, libio/iofputs.c, libio/iofread.c,
7682         libio/iofscanf.c, libio/iofsetpos.c, libio/ioftell.c, libio/iofwrite.c,
7683         libio/iogetdelim.c, libio/iogetline.c, libio/iogets.c, libio/iolibio.h,
7684         libio/iopadn.c, libio/ioprims.c, libio/ioputs.c, libio/ioseekoff.c,
7685         libio/ioseekpos.c, libio/iosetbuffer.c, libio/iosetvbuf.c,
7686         libio/iosprintf.c, libio/ioungetc.c, libio/iovsprintf.c,
7687         libio/iovsscanf.c, libio/libio.h, libio/libioP.h, libio/putc.c,
7688         libio/putchar.c, libio/rewind.c, libio/setbuf.c, libio/setlinebuf.c,
7689         libio/stdfiles.c, libio/stdio.c, libio/stdio.h, libio/strfile.h,
7690         libio/strops.c, libio/vasprintf.c, libio/vscanf.c, libio/vsnprintf.c:
7691         New files.  Slightly modified version from Linux libc.
7692
7693         * libio/memstream.c, libio/vdprintf.c: New files for functions not
7694         (yet) part of GNU libio.
7695
7696         * libio/iofopncook.c: Implementation of `fopencookie', mainly written
7697         by Per Bothner.
7698
7699         * stdio-common/getline.c: Adapted to libio.
7700         * stdio-common/snprintf.c: Adapted to libio.
7701         * stdio-common/vfprintf.c: Adapted to libio.
7702         * stdio-common/vfscanf.c: Adapted to libio.
7703         * sysdeps/posix/tempname.c: Adapted to libio.
7704
7705 Fri Nov 17 17:57:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7706
7707         * sysdeps/generic/Makefile (make_siglist): Add missing backslash.
7708
7709         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start_cleanup): New
7710         function.
7711
7712         * hurd/hurdfault.c: Replace __libc_fatal calls with assert_perror.
7713         (_hurdsig_fault_init): Remove #if 0 from setting exception port.
7714         Insert send right for SIGEXC before thread_set_special_port.
7715         * hurd/hurdsig.c: Replace __libc_fatal calls with assert_perror.
7716         (_hurdsig_init): Remove #if 0 from setting exception port.
7717
7718         * sysdeps/mach/hurd/ptrace.c (ptrace: PTRACE_CONT): Use
7719         HURD_MSGPORT_RPC macro.
7720
7721 Thu Nov 16 06:07:49 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7722
7723         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start_cleanup): New
7724         function.
7725         (_dl_sysdep_start): Move cleanup code there.
7726
7727         * Makeconfig (default-rpath): New variable.
7728         (link-libc): Use it.
7729         * elf/Makefile (ld.so): Pass -rpath=$(default-rpath).
7730         * elf/rtld.c (_dl_rpath): New variable.
7731         (_dl_start): Set it from rtld_map's DT_RPATH.
7732         Call _dl_setup_hash on rtld_map.
7733         (dl_main): Cache address of _exit in variable before relocating,
7734         and use that in later calls.  Call _dl_sysdep_start_cleanup before
7735         relocating.  Keep track of dependency order while loading; remove
7736         rtld_map from chain, and reinsert in proper order if there is a
7737         dependency on it.
7738
7739         * sysdeps/generic/Makefile (make_siglist): Pass
7740         -DSIGNUM_H=... with config's signum.h location.
7741         * sysdeps/generic/make_siglist.c: Include SIGNUM_H to define
7742         signal numbers.
7743         (HAVE_STRSIGNAL, HAVE_PSIGNAL): Define these before including signame.c
7744         (main): Deansideclize output.
7745
7746         * elf/dl-load.c (_dl_map_object): Use _dl_rpath variable in place
7747         of DEFAULT_RPATH macro.
7748         * elf/Makefile: Undo last change.
7749
7750         * sysdeps/mach/hurd/dl-sysdep.c (free): Don't abort, just nop.
7751
7752 Wed Nov 15 19:22:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7753
7754         * elf/dl-lookup.c (_dl_lookup_symbol): Undefined symbol is no
7755         error if weak.
7756
7757         * elf/Makefile (default-rpath): New variable.
7758         (CPPFLAGS): Append -DDEFAULT_RPATH=....
7759         * elf/dl-load.c (_dl_map_object): Use DEFAULT_RPATH instead of
7760         hard-coded "/lib:/usr/lib".
7761
7762         * sysdeps/mach/hurd/dl-sysdep.c: Include _itoa.h from stdio-common
7763         instead of stdio.
7764         (_dl_sysdep_start): If passed user entry is zero and
7765         EXEC_STACK_ARGS flag set, reset user entry to &_start.
7766
7767         * elf/rtld.c (dl_main): Only call _dl_setup_hash if there is a
7768         DT_HASH element.
7769
7770         * libc-symbols.h [HAVE_ELF] (symbol_set_declare): Gratuitously
7771         repeat weak decl using weak_symbol macro, in case using broken GCC
7772         (<2.8).
7773
7774 Wed Nov 15 18:49:55 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
7775
7776         * sysdeps/i386/isnanl.c: New file.
7777         * sysdeps/i386/isinfl.c: New file.
7778
7779 Tue Nov 14 18:44:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7780
7781         * malloc/free.c (free): Moved null and aligned_blocks checks
7782         inside _free_internal.
7783
7784 Mon Nov 13 15:23:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7785
7786         * malloc/malloc.c (morecore): Fix inverted test in allocating new
7787         info table.
7788
7789         * malloc/malloc.c (align): Fix assertion.
7790
7791         * malloc/malloc.c: Include assert.h.
7792
7793         * libc-symbols.h: Use __attribute__ for GCC 2.8, not 2.7.
7794
7795         * malloc/malloc.h [emacs] (emacs_loser_valloc): Macro removed.
7796         (valloc): Protect decl with [! (_MALLOC_INTERNAL && emacs)].
7797
7798 Fri Nov 10 14:15:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7799
7800         * malloc/malloc.c (align): Assert that space for alignment
7801         adjustment is same original space.
7802
7803         * hurd/hurdprio.c (_hurd_priority_which_map): Cast vm_deallocate
7804         arg to vm_address_t.
7805
7806         * hurd/hurdsig.c (_hurd_internal_post_signal): For SIGNO == 0,
7807         skip straight to pending check.  When UNTRACED, resume process
7808         from suspension first.
7809
7810         * intl/Makefile (headers): New variable, libintl.h.
7811         [gettext-srcdir]: New rules to copy source from $(gettext-srcdir)/intl.
7812         * configure.in: Check for --with-gettext arg.
7813
7814 Fri Nov 10 13:51:30 1995  Richard Stallman  <rms@gnu.ai.mit.edu>
7815
7816         * malloc/malloc.c (get_contiguous_space): New function.
7817         (morecore): Rewrite allocating new malloc info table.
7818         (_malloc_internal): Use get_contiguous_space.
7819
7820 Fri Nov 10 13:03:40 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7821
7822         * hurd/hurdexec.c (_hurd_exec): If exec'ing self, pass
7823         _hurd_msgport to be destroyed.
7824
7825         * Makerules (installed-libcs): Filter out %_pic.a.
7826
7827         * hurd/hurdinit.c (_hurd_proc_init): When traced, use msg_sig_post
7828         to our msgport to take SIGTRAP, instead of _hurd_raise_signal.
7829
7830         * hurd/Makefile (user-interfaces): Add hurd/process_request.
7831
7832 Wed Nov  8 16:31:25 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7833
7834         * termios/Makefile (headers): Add sys/ttychars.h.
7835         * termios/sys/ttychars.h: New file, incorporated from 4.4BSD-Lite
7836         for compatibility.
7837
7838         * signal/signal.h [__USE_BSD] (sig_t): New typedef.
7839
7840 Wed Nov  8 15:12:47 1995  Michael I. Bushnell, p/BSG  <mib@gnu.ai.mit.edu>
7841
7842         * sysdeps/mach/hurd/ptrace.c (ptrace) [PTRACE_TRACEME]: Notify the
7843         proc server that we are now traced.
7844
7845 Tue Nov  7 12:29:46 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7846
7847         * elf/Makefile (ldd): Make it executable.
7848
7849         * Makeconfig (config-LDFLAGS): Find dynamic linker in $(slibdir).
7850
7851         * Makeconfig (slibdir): New variable.
7852         * Makerules (install): Install libc.so in $(slibdir).
7853         * elf/Makefile (install-others): Install ld.so and ld-linux.so.1
7854         in $(slibdir).
7855
7856         * elf/linux-compat.c: New file.
7857         * elf/Makefile (distribute): Add linux-compat.c.
7858         (generated): Add librtld.so.
7859         [$(config-os)=linux*] (extra-objs): Add linux-compat.so.
7860         [$(config-os)=linux*] (extra-objs): Add ld-linux.so.1.
7861         (librtld.so): New target.
7862         (ld.so, ld-linux.so.1): Make from librtld.so.
7863
7864         * elf/rtld.c (dl_main): Instead of weak call to _dl_compat_init,
7865         call our own DT_INIT if we have one (and then clear it).
7866         (__dgettext): New weak function.
7867
7868         * intl/localealias.c (read_alias_file): Avoid sprintf; use memcpy
7869         by hand instead.
7870
7871         * sysdeps/generic/_strerror.c (_strerror_internal): Use _itoa
7872         instead of snprintf.
7873
7874         * sysdeps/mach/_strerror.c (_strerror_internal): Don't write
7875         BUF[BUFLEN].
7876
7877         * elf/rtld.c (rtld_map): New static variable.
7878         (_dl_start): Use a differently named local BOOTSTRAP_MAP for the
7879         bootstrapping.  Then copy data into `rtld_map'.
7880         (dl_main): Finish filling in rtld_map and link it into the chain,
7881         instead of allocating a new structure.
7882         (dl_main): Call _dl_compat_init if it is defined (use weak ref).
7883
7884         * elf/dlsym.c: Fix last change: move REF out of `doit'.
7885
7886 Mon Nov  6 16:20:14 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7887
7888         * elf/dlsym.c: Return the proper value, not just the defining
7889         object's loadbase.
7890
7891 Sun Nov  5 16:09:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7892
7893         * stdio-common/vfprintf.c (%c): Count the character itself towards
7894         the field width in all cases.
7895
7896         * sysdeps/mach/hurd/getpriority.c (getpriority): Cast
7897         __vm_deallocate arg to vm_address_t.
7898
7899 Fri Nov  3 17:27:49 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7900
7901         * sysdeps/mach/hurd/sendto.c: Don't pass BINDING arg to
7902         socket_create_address.
7903         * sysdeps/mach/hurd/connect.c: Likewise.
7904         * sysdeps/mach/hurd/bind.c: Likewise.
7905
7906         * hurd/hurdprio.c (_hurd_priority_which_map): Pass threadwaits
7907         args to proc_getprocinfo.
7908         * sysdeps/mach/hurd/getpriority.c: Likewise.
7909
7910         * hurd/hurdmsg.c (_S_msg_report_wait): New stub function.
7911
7912 Thu Nov  2 19:24:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7913
7914         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno): Define as common.
7915
7916 Tue Oct 31 00:07:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7917
7918         * sysdeps/mach/hurd/getpriority.c (getpriority): Pass
7919         PI_FETCH_TASKINFO to proc_getprocinfo and through
7920         _hurd_priority_which_map.
7921
7922         * sysdeps/mach/hurd/setpriority.c (setpriority): Pass new arg to
7923         _hurd_priority_which_map.
7924         * hurd/hurdprio.c (_hurd_priority_which_map): New arg PI_FLAGS,
7925         passed through to proc_getprocinfo RPC.
7926         * hurd/hurd/resource.h: Add PI_FLAGS arg in decl.
7927
7928         * sysdeps/mach/hurd/group_member.c: New file.
7929         * sysdeps/generic/group_member.c: New file.
7930
7931         * Makerules (lib-noranlib): Don't depend on $(install-lib).
7932         (others): Do.
7933         * extra-lib.mk: Fix test of $(lib)-no-lib-dep.
7934
7935 Mon Oct 30 12:33:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7936
7937         * Rules (others): Depend on $(extra-objs).
7938
7939         * posix/unistd.h [__USE_GNU]: Declare group_member, __group_member.
7940         * posix/Makefile (routines): Add group_member.
7941
7942         * sysdeps/posix/euidaccess.c: New file, adapted from fileutils.
7943
7944         * sysdeps/unix/sysv/linux/i386/sigaction.c: Tighten constraint for
7945         SIG operand in asm so it must be a register.
7946         Add dead return to quiet gcc warning.
7947
7948         * Makerules (sysd-rules): Write a defn for sysd-rules-done.
7949         [! sysd-rules-done]: Inhibit deps.
7950
7951 Thu Oct 26 23:11:11 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
7952
7953         * sysdeps/unix/sysv/linux/poll.c: Don't define as stub.  Use
7954         simulation of system call using select.
7955
7956         * sysdeps/unix/sysv/linux/signal.c: Use POSIX implementation.
7957
7958         * sysdeps/unix/sysv/linux/statbuf.h: Define _STAT_VER.
7959
7960         * sysdeps/unix/sysv/linux/i386/sigaction.c: Correct parameter
7961         name usage (new->act, old->oact).
7962         Correct asm statement because of gcc strangeness.
7963
7964         * sysdeps/i386/i586/strchr.S: Correct typos: cmp -> cmpb.
7965
7966         * sunrpc/clnt_perr.c: Remove declaration of sys_errlist.  They
7967         conflict with the ones in stdio.h.
7968
7969         * string/tester.c: %Z is no complete format.  Change to %Zd.
7970
7971 Thu Oct 26 18:13:33 1995  Miles Bader  <miles@gnu.ai.mit.edu>
7972
7973         * sysdeps/mach/hurd/bind.c (bind): Swap args to dir_link.
7974         * sysdeps/mach/hurd/link.c (__link): Ditto.
7975         * sysdeps/mach/hurd/symlink.c (__symlink): Ditto.
7976         * sysdeps/mach/hurd/mknod.c (__mknod): Ditto.
7977         Include "stdio-common/_itoa.h" instead of "stdio/_itoa.h".
7978
7979 Thu Oct 26 00:11:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
7980
7981         * sysdeps/unix/sysv/linux/i386/sigaction.c: New file.
7982
7983         * sysdeps/unix/sysv/linux/i386/xstat.S: Don't use JUMPTARGET macro
7984         on syscall_error.  For PIC, it is a local label;
7985         for non-PIC, JUMPTARGET expands to the unadorned name anyway.
7986         * sysdeps/unix/sysv/linux/i386/xmknod.S: Likewise.
7987         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
7988         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
7989         * sysdeps/unix/sysv/linux/i386/sbrk.S: Likewise.
7990         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
7991         * sysdeps/unix/sysv/linux/i386/brk.S: Likewise.
7992
7993 Thu Oct 26 03:01:22 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
7994
7995         * sysdeps/unix/sysv/linux/syscall.h: Strip list of syscalls in
7996         comment to the necessary ones.  Add _readv and _writev.
7997
7998         * sysdeps/unix/configure.in: Change syntax for system call test
7999         candidates and adapt sed script for this.  Now use : to separate
8000         syscall name and file name.
8001
8002         * sysdeps/unix/sysv/linux/i386/sysdep.h (ENTRY): System call
8003         number is now set is DO_CALL.  So call with additional argument.
8004         (DO_CALL): Takes an additional argument.  Load system call
8005         number according to new argument.
8006         (SYSCALL_ERROR_HANDLER): Add ; after last ret statement.
8007         * sysdeps/unix/sysv/linux/i386/brk.S [PIC]: Define __syscall_error
8008         locally using SYSCALL_ERROR_HANDLER macro.
8009         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
8010         * sysdeps/unix/sysv/linux/i386/sbrk.S: Likewise.
8011         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
8012         * sysdeps/unix/sysv/linux/i386/xmknod.S: Likewise.
8013         * sysdeps/unix/sysv/linux/i386/xstat.S: Likewise.
8014         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
8015         Don't use DO_CALL macro; instead use lower level macros for better
8016         control.
8017
8018         * sysdeps/unix/sysv/linux/sigaction.h: New file.
8019         * sysdeps/unix/sysv/linux/sigaction.S: File removed.
8020         * sysdeps/unix/sysv/linux/signal.S: File removed.
8021
8022 Wed Oct 25 14:23:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8023
8024         * hurd/hurdstartup.c (_hurd_startup): Use new
8025         exec_startup_get_info RPC from exec_startup.defs
8026         in place of old exec_startup from exec.defs.  Remove kludge to
8027         guess user entry and phdr locations, since the new RPC gives us
8028         that info.
8029
8030         * stdio/stdio.h (sys_errlist, _sys_errlist): Declare const.
8031         * sysdeps/generic/_strerror.c: Undo last change.
8032
8033         * sysdeps/unix/sysv/linux/stat.c: New file.
8034         * sysdeps/unix/sysv/linux/fstat.c: New file.
8035         * sysdeps/unix/sysv/linux/lstat.c: New file.
8036         * sysdeps/unix/sysv/linux/i386/stat.S: File removed.
8037         * sysdeps/unix/sysv/linux/i386/fstat.S: File removed.
8038         * sysdeps/unix/sysv/linux/i386/lstat.S: File removed.
8039
8040 Tue Oct 24 15:22:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8041
8042         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
8043         New macro.
8044         (PSEUDO): Use it instead of SYSCALL_PIC_SETUP and jmp syscall_error.
8045
8046         * sysdeps/unix/sysv/linux/i386/sysdep.S (__syscall_error): Define
8047         only #ifndef PIC.
8048
8049         * Makeconfig (built-program-cmd): New variable.
8050         * sunrpc/Makefile (rpcgen-cmd): Use $(built-program-cmd).
8051         * time/Makefile (zic-cmd): Likewise.
8052
8053         * hurd/Makefile (user-interfaces): Add hurd/exec_startup.
8054
8055         * sunrpc/Makefile (librpcsvc-no-lib-dep): New variable.
8056         * extra-lib.mk: If $(lib)-no-lib-dep is defined and MAKELEVEL>0,
8057         make `others' rather than `lib-noranlib' depend on the libraries.
8058
8059         * sysdeps/unix/configure.in: Check for fchdir syscall.
8060         Improve sed script to allow / on rhs without / on lhs.
8061
8062 Thu Oct 19 03:47:32 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
8063
8064         * sysdeps/unix/sysv/linux/termbits.h: Don't define speed constants.
8065
8066         * elf/rtld.c: Include _itoa.h from stdio-common instead of stdio.
8067
8068         * sysdeps/unix/sysv/linux/select.S: New file.
8069
8070 Wed Oct 18 03:33:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8071
8072         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Use
8073         SYSCALL_PIC_SETUP before jumping to syscall_error.
8074         * sysdeps/unix/i386/sysdep.h (SYSCALL_PIC_SETUP): New macro.
8075         (PSEUDO): Use it before jumping to syscall_error.
8076         * sysdeps/unix/i386/sysdep.S [! PIC]: Don't find GOT address;
8077         expect it in %ebx on entry.  Pop old %ebx value off stack after
8078         using it.
8079
8080         * signal/signal.h [__USE_BSD] (_sys_siglist, sys_siglist): Declare
8081         them.
8082
8083         * sysdeps/generic/_strerror.c: Declare _sys_errlist and _sys_nerr.
8084
8085         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): For magic
8086         `fd/', pass the right pointer to strtol to parse the number.
8087
8088 Tue Oct 17 23:00:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8089
8090         * sysdeps/mach/_strerror.c: Include stdio-common/_itoa.h instead
8091         of stdio/_itoa.h.
8092
8093 Tue Oct 17 19:51:17 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
8094
8095         * sysdeps/unix/sysv/linux/i386/stat.S [PIC] (__stat): Set GOT
8096         register %ebx before calling __xstat through PLT.
8097
8098         * sysdeps/unix/sysv/linux/i386/sysdep.S: Fix typo in comment.
8099
8100         * sysdeps/unix/sysv/linux/sigset.h: Remove file.
8101
8102 Tue Oct 17 01:21:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8103
8104         * hurd/hurdsock.c: Include stdio-common/_itoa.h instead of
8105         stdio/_itoa.h.
8106         * hurd/hurdlookup.c: Likewise.
8107
8108         * hurd/hurd/signal.h: Declare hurd_preempt_signals and
8109         hurd_unpreempt_signals.
8110
8111         * stdio/stdio.h: Declare __snprintf and __vsnprintf.
8112
8113         * stdio-common/psignal.c: Translate signal description strings.
8114         * string/strsignal.c: Likewise.
8115         * sysdeps/generic/_strerror.c (_strerror_internal): Translate
8116         error strings.
8117         * sysdeps/mach/_strerror.c: Likewise.
8118
8119         * stdio-common/snprintf.c (__snprintf): Renamed from snprintf;
8120         call __vsnprintf.
8121         (snprintf): Define as weak alias.
8122         * stdio/vsnprintf.c (__vsnprintf): Renamed from vsnprintf.
8123         (vsnprintf): Define as weak alias.
8124
8125 Mon Oct 16 03:22:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8126
8127         * Makerules (install-lib): Filter out %_pic.a; install only the
8128         linked shared objects.
8129
8130         * locale/Makefile (aux): Add SYS_libc.
8131         * locale/SYS_libc.c: New file.
8132         * libc-symbols.h [! ASSEMBLER] (_): New macro.
8133
8134         * configure.in (libc_cv_asm_set_directive): Link program into
8135         conftest instead of letting it default to a.out.
8136
8137         * elf/Makefile (install-others): Add missing slash.
8138
8139         * elf/ldd.sh.in: Prepend `./' to relative file names so ld.so
8140         won't search LD_LIBRARY_PATH.
8141
8142         * Makefile (subdirs): Replace stdio with stdio-common and $(stdio).
8143         * configure.in: Grok arg --enable-libio.
8144         ($stdio = libio): Define USE_IN_LIBIO.
8145         * config.h.in (USE_IN_LIBIO): Add #undef.
8146         * config.make.in (stdio): New variable, set by configure.
8147         * Makeconfig (stdio): New variable.
8148         * stdio.h [USE_IN_LIBIO]: Include libio/stdio.h instead of
8149         stdio/stdio.h.
8150         * stdio-common/Makefile: New file.
8151         * stdio/Makefile: Half the contents moved to stdio-common/Makefile.
8152         * stdio/_itoa.c: Moved to stdio-common.
8153         * stdio/_itoa.h: Moved to stdio-common.
8154         * stdio/asprintf.c: Moved to stdio-common.
8155         * stdio/bug1.c: Moved to stdio-common.
8156         * stdio/bug1.input: Moved to stdio-common.
8157         * stdio/bug2.c: Moved to stdio-common.
8158         * stdio/bug3.c: Moved to stdio-common.
8159         * stdio/bug4.c: Moved to stdio-common.
8160         * stdio/bug5.c: Moved to stdio-common.
8161         * stdio/bug6.c: Moved to stdio-common.
8162         * stdio/bug6.input: Moved to stdio-common.
8163         * stdio/bug7.c: Moved to stdio-common.
8164         * stdio/dprintf.c: Moved to stdio-common.
8165         * stdio/errnobug.c: Moved to stdio-common.
8166         * stdio/getline.c: Moved to stdio-common.
8167         * stdio/getw.c: Moved to stdio-common.
8168         * stdio/perror.c: Moved to stdio-common.
8169         * stdio/printf-parse.h: Moved to stdio-common.
8170         * stdio/printf-prs.c: Moved to stdio-common.
8171         * stdio/printf.c: Moved to stdio-common.
8172         * stdio/printf.h: Moved to stdio-common.
8173         * stdio/printf_fp.c: Moved to stdio-common.
8174         * stdio/psignal.c: Moved to stdio-common.
8175         * stdio/putw.c: Moved to stdio-common.
8176         * stdio/reg-printf.c: Moved to stdio-common.
8177         * stdio/scanf.c: Moved to stdio-common.
8178         * stdio/snprintf.c: Moved to stdio-common.
8179         * stdio/sprintf.c: Moved to stdio-common.
8180         * stdio/sscanf.c: Moved to stdio-common.
8181         * stdio/tempnam.c: Moved to stdio-common.
8182         * stdio/temptest.c: Moved to stdio-common.
8183         * stdio/test-fseek.c: Moved to stdio-common.
8184         * stdio/test-fwrite.c: Moved to stdio-common.
8185         * stdio/test-popen.c: Moved to stdio-common.
8186         * stdio/test_rdwr.c: Moved to stdio-common.
8187         * stdio/tmpfile.c: Moved to stdio-common.
8188         * stdio/tmpnam.c: Moved to stdio-common.
8189         * stdio/tst-fileno.c: Moved to stdio-common.
8190         * stdio/tst-printf.c: Moved to stdio-common.
8191         * stdio/tstgetln.c: Moved to stdio-common.
8192         * stdio/tstgetln.input: Moved to stdio-common.
8193         * stdio/tstscanf.c: Moved to stdio-common.
8194         * stdio/tstscanf.input: Moved to stdio-common.
8195         * stdio/vfprintf.c: Moved to stdio-common.
8196         * stdio/vfscanf.c: Moved to stdio-common.
8197         * stdio/vprintf.c: Moved to stdio-common.
8198         * stdio/xbug.c: Moved to stdio-common.
8199         * sysdeps/generic/Makefile (siglist.c rules): Do this in subdir
8200         stdio-common instead of stdio.
8201         * sysdeps/unix/Makefile (errlist.c rules): Likewise.
8202         * stdio-common/asprintf.c [USE_IN_LIBIO]: Call libio primitive
8203         function.
8204         * stdio-common/dprintf.c: Likewise.
8205         * stdio-common/printf.c: Likewise.
8206         * stdio-common/scanf.c: Likewise.
8207         * stdio-common/snprintf.c: Likewise.
8208         * stdio-common/sprintf.c: Likewise.
8209         * stdio-common/sscanf.c: Likewise.
8210         * stdio-common/vprintf.c: Likewise.
8211
8212         * Makerules: Include $(+depfiles) directly instead of generating
8213         depend-$(subdir).
8214         (depend-$(subdir)): Target removed.
8215         (common-clean): Don't remove depend-$(subdir).
8216
8217         * sysdeps/unix/sysv/linux/Makefile (rtld-installed-name): New variable.
8218         (config-LDFLAGS): Variable removed.
8219
8220         * sysdeps/mach/hurd/getcwd.c: Use __file_name_lookup_under.
8221         * sysdeps/mach/hurd/bind.c: Likewise.
8222         * sysdeps/mach/hurd/access.c: Use new __hurd_file_name_lookup
8223         calling convention.
8224
8225         * hurd/hurdexec.c: Undo last change (10 Oct 95).
8226
8227 Sun Oct 15 21:04:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8228
8229         * hurd/hurd/lookup.h: New file.
8230         * hurd/hurdlookup.c (__file_name_lookup_under): New function.
8231         (__hurd_file_name_lookup, __hurd_file_name_lookup_retry,
8232         __hurd_file_name_split): Rewritten to take callback functions for
8233         using any needed init or dtable port, instead of passing in crdir
8234         and cwdir ports.
8235         (__file_name_lookup, __file_name_split): Use new calling
8236         convention; pass _hurd_ports_use and __getdport as the callback
8237         functions.
8238
8239         * sysdeps/mach/hurd/chroot.c: Use __file_name_lookup_under instead
8240         of __hurd_file_name_lookup.
8241         * sysdeps/mach/hurd/chdir.c: Likewise.
8242         * sysdeps/mach/hurd/fchdir.c: Likewise.
8243         * hurd/fchroot.c: Likewise.
8244
8245         * stdlib/Makefile (mpn-found): Don't omit %.s.
8246         (mpn-copy-sysdep): Omit files in nonexistent directories.
8247         (copy-mpn): Commit files to CVS.
8248         * stdlib/gen-mpn-copy (translations): Update translations for GMP
8249         1.906.7.
8250
8251         * configure.in (machine): Translate alpha* to alpha/&, hppa* to hppa/&.
8252
8253 Sat Oct 14 02:52:36 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
8254
8255         * malloc/malloc.c (_malloc_internal): Performance fix.  Move
8256         if statement out of loop.
8257
8258         * stdio/_itoa.c, stdio/_itoa.h: Complete rewrite.  Much faster
8259         implementation using GMP functions.  Contributed by
8260         Torbjorn Granlund and Ulrich Drepper.
8261
8262         * stdio/test_rdwr.c: Include <errno.h>.
8263
8264         * sysdeps/i386/i586/Implies: New file.
8265
8266         New highly optimized string functions for i[345]86.
8267         * sysdeps/i386/memchr.S, sysdeps/i386/memcmp.S: New files.
8268         * sysdeps/i386/stpcpy.S, sysdeps/i386/stpncpy.S: New files.
8269         * sysdeps/i386/strchr.S, sysdeps/i386/strcspn.S: New files.
8270         * sysdeps/i386/strpbrk.S, sysdeps/i386/strrchr.S: New files.
8271         * sysdeps/i386/strspn.S, sysdeps/i386/i486/strcat.S: New files.
8272         * sysdeps/i386/i486/strlen.S, sysdeps/i386/i586/strchr.S: New files.
8273         * sysdeps/i386/i586/strlen.S: New file.
8274         * sysdeps/i386/memchr.c: Removed.  There is now an assembler version.
8275
8276         * sysdeps/i386/i586/memcopy.h (WORD_COPY_BWD): Parameters did
8277         not correspond to used values.
8278
8279         * sysdeps/unix/sysv/linux/nfs/nfs.h: New file.  Simply a wrapper
8280         around a kernel header file.
8281         * sysdeps/unix/sysv/linux/Dist: Add it.
8282         * sysdeps/unix/sysv/linux/Makefile [$(subdir)=sunrpc] (headers):
8283         Likewise.
8284
8285         * sysdeps/unix/sysv/linux/local_lim.h: Rewrite.  Instead of
8286         defining ourself we use a kernel header file.
8287
8288         * sysdeps/unix/sysv/linux/i386/sysdep.h (DO_CALL): Optimize system
8289         call handler for i586.
8290
8291         * sysdeps/unix/sysv/linux/sys/param.h: Add copyright and clean up.
8292
8293 Thu Oct 12 15:45:32 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8294
8295         * hurd/hurd.h (file_name_lookup_under): Declare it.
8296         * hurd/Makefile (headers): Add hurd/lookup.h.
8297
8298         * hurd/hurdinit.c (_hurd_ports_use): New function.
8299         * hurd/hurd.h (_hurd_ports_use): Declare it.
8300         (hurd_invoke_translator, hurd_file_name_lookup, hurd_file_name_split,
8301         hurd_file_name_lookup_retry): Remove these decls.
8302         * hurd/Makefile (routines): Remove invoke-trans.
8303
8304 Wed Oct 11 00:00:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8305
8306         * sysdeps/i386/dl-machine.h (elf_machine_rel): Use +=, not =, to
8307         apply R_386_PC32 reloc.
8308
8309         * Makeconfig (config-LDFLAGS): Add missing slash.
8310
8311         * sysdeps/mach/hurd/profil.c (fork_profil): Only call
8312         update_waiter if profiling was enabled in the parent.
8313
8314         * csu/initfini.c: Don't pass -f flag to cp.
8315
8316 Tue Oct 10 23:08:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8317
8318         * Makerules (build-shlib): Pass -rpath and -rpath-link options.
8319         (LDFLAGS-c.so): Don't pass -dynamic-linker here.
8320         * Makeconfig (+link): Pass $(sysdep-LDFLAGS).
8321         (link-libc): Pass -rpath and -rpath-link options.
8322
8323         * MakeTAGS (all-dirs): Omit CVS directories.
8324         Specify vpath directives to find source files in $(all-dirs).
8325         (sources, headers): Append sources and headers from $(all-dist) to
8326         these.
8327         (all-dist): Filter them out of this.
8328         (all-headers, all-sources): Use $(shell find ...) instead of
8329         $(wildcard ...).
8330
8331         * sysdeps/mach/hurd/Makefile (sysdep-LDFLAGS): New variable; pass
8332         -rpath-link.
8333
8334         * hurd/hurdexec.c: Pass poly and dealloc args to __file_exec.
8335
8336         * elf/Makefile (install-others): Add missing $.
8337
8338 Mon Oct  9 02:54:14 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8339
8340         * mach/Makefile ($(objpfx)errsystems.c): Rule reenabled.
8341
8342         * Makeconfig (config-LDFLAGS): Define to
8343         -Wl-dynamic-linker=$(libdir)$(rtld-installed-name).
8344         (rtld-installed-name): New variable.
8345         * elf/Makefile (install-lib): Variable removed.
8346         (install-others): Define this instead, to
8347         $(libdir)(rtld-installed-name).
8348         ($(libdir)(rtld-installed-name)): New target; install from ld.so.
8349
8350         * elf/ldd.sh.in: New file.
8351         * elf/Makefile (distribute): Add ldd.sh.in.
8352         (install-bin): Add ldd.
8353         ($(objpfx)ldd: ldd.sh.in): New rule.
8354
8355         * sysdeps/mach/hurd/dl-sysdep.c: Use __hurd_fail throughout.
8356         * hurd/hurd.h (__hurd_fail): Replace macro with inline function.
8357         Translate some Mach errors to Hurd errors.
8358
8359         * elf/rtld.c (dl_main): Under --list, print msg if executable is
8360         statically linked.
8361
8362         * elf/dl-load.c (_dl_map_object_from_fd): Rewrote program header
8363         table processing.
8364
8365 Sat Oct  7 01:25:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8366
8367         * sysdeps/stub/machine-gmon.h: Add #error.
8368
8369 Fri Oct  6 01:49:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8370
8371         * elf/dynamic-link.h (elf_get_dynamic_info): If DYN is null, don't
8372         examine it.
8373
8374 Fri Sep 29 03:43:51 1995  Paul Eggert  <eggert@twinsun.com>
8375
8376         Rewrite mktime from scratch for performance, and for correctness
8377         in the presence of leap seconds.
8378
8379         * time/mktime.c (ydhms_tm_diff, not_equal_tm, print_tm, check_result):
8380         New functions.
8381         (LEAP_SECONDS_POSSIBLE, CHAR_BIT, INT_MIN, INT_MAX,
8382         TIME_T_MIN, TIME_T_MAX, TM_YEAR_BASE, EPOCH_YEAR): New macros.
8383         <limits.h>, <stdlib.h>: New #includes.
8384         (main): Support tests with given broken-down value; support benchmarks.
8385         (__mon_lengths, debugging_enabled, printtm, dist_tm, doit,
8386         do_normalization, normalize, BAD_STRUCT_TM, SKIP_VALUE,
8387         <ctype.h>): Remove.
8388
8389         * time/time.h, time/mktime.c (__mktime_internal): New offset arg.
8390         * time/mktime.c (mktime), time/timegm.c (timegm): Use it.
8391
8392         * time/mktime.c (__mon_yday): New variable; replaces `__mon_lengths'.
8393         time/offtime.c (__offtime), time/tzset.c (compute_change): Use it.
8394
8395         * time/offtime.c (__offtime): Remove useless assignment
8396         `tp->tm_isdst = -1'.
8397
8398         * manual/maint.texi: Update credits.
8399
8400 Fri Oct  6 00:28:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8401
8402         * sysdeps/unix/common/readv.S: Moved to sysdeps/unix/bsd.
8403         * sysdeps/unix/common/writev.S: Moved to sysdeps/unix/bsd.
8404         * sysdeps/unix/sysv/linux/readv.c: File removed.
8405         * sysdeps/unix/sysv/linux/writev.c: File removed.
8406         * sysdeps/unix/configure.in: Check for readv and writev syscalls.
8407
8408         * sysdeps/unix/configure.in: If eval doesn't set $unix_srcname,
8409         set it to $unix_syscall instead of $unix_function.
8410
8411 Thu Oct  5 00:59:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8412
8413         * elf/rtld.c (dl_main): Grok --list flag.
8414         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Ignore -- args.
8415
8416 Wed Oct  4 00:21:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8417
8418         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_message): New function.
8419         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_message): New function.
8420         * elf/link.h (_dl_sysdep_message): Declare it.
8421
8422         * sysdeps/unix/Makefile ($(common-objpfx)ioctls): Remove NULL from
8423         the list.
8424
8425         * time/northamerica: Corrections to Canada data from ADO 95i.
8426
8427         * sysdeps/unix/sysv/linux/Makefile (headers): Don't append to this
8428         unconditionally.  In socket subdir, append sys/socketcall.h; in
8429         time subdir, append sys/timex.h.
8430         (config-LDFLAGS): New variable.
8431         * sysdeps/unix/sysv/linux/Dist: New file.
8432         * Makeconfig (+link): Pass $(config-LDFLAGS) before $(LDFLAGS).
8433
8434         * sysdeps/generic/stpncpy.c: Don't increment DEST when zero-filling.
8435
8436         * elf/dlopen.c (dlopen): Don't pass USER_ENTRY arg to _dl_map_object.
8437
8438 Sat Sep 30 11:47:05 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8439
8440         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): If started by
8441         kernel with args on stack, point _dl_hurd_data at zero data
8442         instead of garbage.  When ld.so run as program, grok args
8443         -LIB=MEMOBJ and pre-load shared object files found in memory
8444         objects loaded by the boot loader.
8445
8446         * elf/link.h (struct link_map): New member `l_entry'.
8447         (_dl_map_object, _dl_map_object_from_fd): Remove last arg ENTRY_POINT.
8448         * elf/dl-load.c (_dl_map_object, _dl_map_object_from_fd): Remove
8449         last arg ENTRY_POINT.  Store the entry point location in the
8450         `l_entry' member of the new map.
8451         * elf/rtld.c (dl_main): Don't pass USER_ENTRY arg to
8452         _dl_map_object.  When run as program, set *USER_ENTRY to L->l_entry.
8453         * elf/dl-init.c (_dl_init_next): Don't pass ENTRY_POINT arg to
8454         _dl_map_object.
8455
8456         * posix/tstgetopt.c, posix/tstgetopt.args: Test long options too.
8457
8458         * sysdeps/unix/sysv/linux/i386/init-first.c (init): Save, set, and
8459         restore %ebx by hand for personality syscall.
8460         GCC cannot deal with spilling the dedicated GOT register.
8461
8462         * misc/Makefile (routines): Add mntent, which was somehow omitted.
8463
8464 Fri Sep 29 15:07:10 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
8465
8466         * sysdeps/unix/sysv/linux/adjtime.c (__adjtime):
8467         Change name of field `mode' in `struct timex' to `modes'.
8468         Linux-1.3.28 updates this name according to RFC 1489.
8469
8470 Thu Sep 28 13:05:54 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8471
8472         Merge new message handling code from GNU gettext, by Drepper.
8473         * intl: New directory.
8474         * Makefile (subdirs): Add intl.
8475
8476         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Return
8477         USER_ENTRY instead of storing it on our stack.
8478
8479         * elf/rtld.c (rtld_command): Variable removed.
8480         (_dl_skip_args): New variable.
8481         (dl_main): Increment _dl_skip_args instead of setting rtld_command.
8482         If the link_map for the executable itself is not first in the chain,
8483         make it so.
8484         * sysdeps/i386/dl-machine.h (RTLD_START): Use _dl_skip_args as
8485         count of args to skip.
8486
8487 Thu Sep 28 09:20:04 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
8488
8489         * stdlib/strtod.c (STRTOF): Fix handling of numbers with lots of
8490         leading zeroes.
8491
8492 Wed Sep 27 00:27:25 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8493
8494         * sysdeps/mach/hurd/getcwd.c (__getcwd): Renamed from getcwd.
8495         (getcwd): Define as weak alias.
8496         * sysdeps/posix/getcwd.c: Likewise.
8497         * sysdeps/stub/getcwd.c: Likewise.
8498         * posix/unistd.h: Declare __getcwd.
8499
8500         * string/string.h: Declare __strcasecmp.
8501         * sysdeps/generic/strcasecmp.c (__strcasecmp): Renamed from
8502         strcasecmp.
8503         (strcasecmp): Define as weak alias.
8504
8505         * string/string.h: Declare __stpcpy.
8506         * sysdeps/generic/stpcpy.c (__stpcpy): Renamed from stpcpy.
8507         (stpcpy): Define as weak alias.
8508
8509         * sysdeps/unix/sysv/linux/Implies: Add unix/common.
8510
8511         * sysdeps/unix/i386/sysdep.h [HAVE_ELF] (ASM_TYPE_DIRECTIVE):
8512         Don't use `type' for arg name, since we are using it as a keyword
8513         in the rhs.
8514
8515         * sysdeps/unix/configure.in: Check for syscalls getpriority,
8516         setpriority, getrlimit, setrlimit.
8517
8518         * sysdeps/posix/truncate.c: Include fcntl.h.
8519
8520         * sysdeps/generic/getdomain.c: Include string.h for strncpy decl.
8521
8522         * sysdeps/stub/getpriority.c: Don't include obsolete gnu-stabs.h;
8523         use new stub_warning syntax.
8524         * sysdeps/stub/setpriority.c: Likewise.
8525         * sysdeps/stub/__longjmp.c: Likewise.
8526         * sysdeps/stub/_exit.c: Likewise.
8527         * sysdeps/stub/accept.c: Likewise.
8528         * sysdeps/stub/acos.c: Likewise.
8529         * sysdeps/stub/alarm.c: Likewise.
8530         * sysdeps/stub/asin.c: Likewise.
8531         * sysdeps/stub/atan2.c: Likewise.
8532         * sysdeps/stub/bind.c: Likewise.
8533         * sysdeps/stub/cbrt.c: Likewise.
8534         * sysdeps/stub/chroot.c: Likewise.
8535         * sysdeps/stub/closedir.c: Likewise.
8536         * sysdeps/stub/connect.c: Likewise.
8537         * sysdeps/stub/cos.c: Likewise.
8538         * sysdeps/stub/cosh.c: Likewise.
8539         * sysdeps/stub/ctermid.c: Likewise.
8540         * sysdeps/stub/cuserid.c: Likewise.
8541         * sysdeps/stub/defs.c: Likewise.
8542         * sysdeps/stub/exp.c: Likewise.
8543         * sysdeps/stub/fmod.c: Likewise.
8544         * sysdeps/stub/frexp.c: Likewise.
8545         * sysdeps/stub/fsync.c: Likewise.
8546         * sysdeps/stub/getcwd.c: Likewise.
8547         * sysdeps/stub/getenv.c: Likewise.
8548         * sysdeps/stub/gethostid.c: Likewise.
8549         * sysdeps/stub/getlogin.c: Likewise.
8550         * sysdeps/stub/getpeername.c: Likewise.
8551         * sysdeps/stub/getrlimit.c: Likewise.
8552         * sysdeps/stub/getsockname.c: Likewise.
8553         * sysdeps/stub/getsockopt.c: Likewise.
8554         * sysdeps/stub/listen.c: Likewise.
8555         * sysdeps/stub/log.c: Likewise.
8556         * sysdeps/stub/log10.c: Likewise.
8557         * sysdeps/stub/mkfifo.c: Likewise.
8558         * sysdeps/stub/morecore.c: Likewise.
8559         * sysdeps/stub/nice.c: Likewise.
8560         * sysdeps/stub/nlist.c: Likewise.
8561         * sysdeps/stub/opendir.c: Likewise.
8562         * sysdeps/stub/pipestream.c: Likewise.
8563         * sysdeps/stub/ptrace.c: Likewise.
8564         * sysdeps/stub/putenv.c: Likewise.
8565         * sysdeps/stub/readdir.c: Likewise.
8566         * sysdeps/stub/reboot.c: Likewise.
8567         * sysdeps/stub/recv.c: Likewise.
8568         * sysdeps/stub/recvfrom.c: Likewise.
8569         * sysdeps/stub/rename.c: Likewise.
8570         * sysdeps/stub/rewinddir.c: Likewise.
8571         * sysdeps/stub/seekdir.c: Likewise.
8572         * sysdeps/stub/send.c: Likewise.
8573         * sysdeps/stub/sendto.c: Likewise.
8574         * sysdeps/stub/setegid.c: Likewise.
8575         * sysdeps/stub/seteuid.c: Likewise.
8576         * sysdeps/stub/setgroups.c: Likewise.
8577         * sysdeps/stub/sethostid.c: Likewise.
8578         * sysdeps/stub/sethostname.c: Likewise.
8579         * sysdeps/stub/setjmp.c: Likewise.
8580         * sysdeps/stub/setrlimit.c: Likewise.
8581         * sysdeps/stub/setsockopt.c: Likewise.
8582         * sysdeps/stub/shutdown.c: Likewise.
8583         * sysdeps/stub/signal.c: Likewise.
8584         * sysdeps/stub/sigsuspend.c: Likewise.
8585         * sysdeps/stub/sin.c: Likewise.
8586         * sysdeps/stub/sinh.c: Likewise.
8587         * sysdeps/stub/socket.c: Likewise.
8588         * sysdeps/stub/socketpair.c: Likewise.
8589         * sysdeps/stub/sqrt.c: Likewise.
8590         * sysdeps/stub/sync.c: Likewise.
8591         * sysdeps/stub/system.c: Likewise.
8592         * sysdeps/stub/tan.c: Likewise.
8593         * sysdeps/stub/tanh.c: Likewise.
8594         * sysdeps/stub/tcdrain.c: Likewise.
8595         * sysdeps/stub/tcflow.c: Likewise.
8596         * sysdeps/stub/tcgetpgrp.c: Likewise.
8597         * sysdeps/stub/tcsendbrk.c: Likewise.
8598         * sysdeps/stub/tcsetattr.c: Likewise.
8599         * sysdeps/stub/tcsetpgrp.c: Likewise.
8600         * sysdeps/stub/telldir.c: Likewise.
8601         * sysdeps/stub/tempname.c: Likewise.
8602         * sysdeps/stub/ttyname.c: Likewise.
8603         * sysdeps/stub/ttyname_r.c: Likewise.
8604         * sysdeps/stub/utime.c: Likewise.
8605
8606         * gmon/gmon.c (moncontrol): Don't cast buffer arg to profil.
8607
8608         * time/mktime.c (localtime_r): Use 0 instead of NULL.
8609
8610         * config.make.in (AS): New variable; set to `$(CC) -c'.
8611
8612         * posix/unistd.h [__USE_BSD]: Declare profil.
8613
8614         * elf/dl-load.c (_dl_map_object_from_fd): New function, broken out
8615         of _dl_map_object.
8616         (_dl_map_object): Call it.
8617         * elf/link.h (_dl_map_object_from_fd): Declare it.
8618
8619 Tue Sep 26 16:50:17 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8620
8621         * locale/libintl.h: Rewritten by Ulrich Drepper for use with GNU
8622         gettext code.
8623
8624         * sysdeps/unix/sysv/linux/sys/param.h: New file.
8625         * sysdeps/unix/sysv/linux/Subdirs: File removed.
8626
8627         * libc-symbols.h (_LIBC): Define to 1, not just empty.
8628
8629         * gmon: New directory of profiling code, incorporated from
8630         4.4BSD-Lite and modified.
8631         * sysdeps/i386/machine-gmon.h: New file.
8632         * sysdeps/stub/machine-gmon.h: New file.
8633         * sysdeps/mach/hurd/profil.c: New file.
8634         * sysdeps/stub/profil.c: New file.
8635         * sysdeps/unix/bsd/profil.S: New file.
8636         * Makefile (subdirs): Add gmon.
8637         * csu/gmon-start.c: New file.
8638         * csu/Makefile (extra-objs): Add gmon-start.o,
8639         g$(start-installed-name).
8640         (install-lib, omit-deps): Add g$(start-installed-name).
8641         ($(objpfx)g$(start-installed-name)): New target.
8642
8643 Fri Sep 22 14:24:25 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8644
8645         * sysdeps/mach/hurd/Makefile: Elide sunrpc from $(subdirs) for the
8646         time being.
8647
8648 Thu Sep 21 00:03:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8649
8650         * sysdeps/unix/configure.in: Check for `profil' syscall.
8651
8652         * manual/Makefile (infodir, prefix, INSTALL, INSTALL_DATA): Variables
8653         removed.
8654
8655         * time/africa, time/asia, time/europe, time/northamerica,
8656         time/yearistype: New data from ADO 95h.
8657
8658         * Makerules (build-shlib): Use $(@F:lib%.so=%) in place of
8659         $(notdir $*), so it wins for the explicit libc.so rule as well as the
8660         pattern rule.
8661
8662         * sysdeps/stub/sys/sem_buf.h (union semun): New type.
8663
8664         * sysdeps/mach/hurd/i386/init-first.c (init1) [PIC]: Call
8665         __libc_global_ctors.
8666         * sysdeps/i386/init-first.c: Rewritten.
8667         * sysdeps/unix/sysv/linux/i386/init-first.S: File removed.
8668         * sysdeps/unix/sysv/linux/i386/init-first.c: New file.
8669
8670         * sysdeps/unix/sysv/linux/i386/fpu_control.h: Fix name in decl of
8671         ___fpu_control.
8672
8673         * Makerules (build-shlib): New canned sequence, broken out of
8674         lib%.so rule.  Link in $^ instead of just $<.
8675         (lib%.so: lib%_pic.a): Use it.
8676         (libc.so): New target; use $(build-shlib) for cmds, but also depend
8677         on soinit.so first and sofini.so last.
8678
8679         * elf/soinit.c: New file.
8680         * elf/sofini.c: New file.
8681         * elf/Makefile (distribute): Add soinit.c and sofini.c.
8682         (extra-objs): Add soinit.so and sofini.so.
8683
8684         * sysvipc/sys/shm.h (shmat): Fix return type to char *.
8685         * sysdeps/stub/sys/ipc_buf.h (key_t): Type removed.
8686
8687         * misc/syslog.c (vsyslog): Rewritten using open_memstream to
8688         dynamically allocate buffers.
8689
8690         * Makerules (install-lib-nosubdir): Make this, rather than
8691         install-no-libc.a, depend on the installed shared libraries.
8692
8693 Wed Sep 20 18:02:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8694
8695         * locale/locale.c: Include errno.h.
8696         * locale/localedef.c: Likewise.
8697
8698 Tue Sep 19 00:02:06 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8699
8700         * Makefile (distclean-1): Remove config.cache, config.log, config.h.
8701         (parent-mostlyclean): Remove all flavors of the parent library.
8702
8703         * misc/mntent.c (getmntent): Skip multiple whitespace chars
8704         between fields.
8705
8706         * hurd/hurdstartup.c (_hurd_startup): If RPC returns
8707         EXEC_STACK_ARGS flag, get args from stack.
8708         If args on stack but have info from RPC, relocate args on stack to make
8709         space for struct hurd_startup_data.
8710
8711 Mon Sep 18 15:06:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8712
8713         * elf/dl-object.c: Include errno.h.
8714         * posix/execvp.c: Likewise.
8715         * dirent/scandir.c: Likewise.
8716         * sysdeps/posix/system.c: Likewise.
8717         * sysdeps/generic/setenv.c: Likewise.
8718         * stdlib/msort.c: Likewise.
8719         * stdio/memstream.c: Likewise.
8720         * stdio/fclose.c: Likewise.
8721         * stdio/getdelim.c: Likewise.
8722         * stdio/setvbuf.c: Likewise.
8723         * sysdeps/ieee754/ldexp.c: Likewise.
8724         * locale/locfile-parse.c: Likewise.
8725
8726         * stdlib/lcong48_r.c: Don't check for null argument; let it fault.
8727         * stdlib/seed48_r.c: Likewise.
8728         * stdlib/srand48_r.c: Likewise.
8729         * stdlib/jrand48_r.c: Likewise.
8730         * stdlib/nrand48_r.c: Likewise.
8731
8732         * Makeconfig (+gccwarn): Remove -Wbad-function-cast, which seems
8733         to be useless.
8734
8735 Mon Sep 18 12:39:22 1995  Paul Eggert  <eggert@twinsun.com>
8736
8737         * mktime.c (localtime_r): Add substitute if the system doesn't
8738         provide one.
8739
8740 Mon Sep 18 14:39:20 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8741
8742         * time/gmtime.c (gmtime_r): Define as weak alias.
8743         * time/localtime.c (localtime_r): Define as weak alias.
8744         * time/time.h [__USE_REENTRANT] (gmtime_r, localtime_r): Declare them.
8745
8746         * errno.h: Only define _ERRNO_H #ifndef __need_Emath.
8747         #undef __need_Emath after including errnos.h.
8748         [_ERRNO_H]: Protect decls with this.
8749
8750 Sun Sep 17 08:22:12 1995  Paul Eggert  <eggert@twinsun.com>
8751
8752         Fix mktime so that it does not write over localtime's returned value.
8753         * localtime.c (__localtime_r): New function, with extra arg
8754         specifying where to store result.
8755         (localtime): Use it.
8756         (_tmbuf): New var.
8757         * gmtime.c (__gmtime_r, gmtime, _tmbuf): Likewise.
8758         * mktime.c (__mktime_internal): Conversion function is now
8759         __localtime_r style, not localtime style.
8760         (mktime): Pass __localtime_r, not localtime.
8761         * timegm.c (timegm): Pass __gmtime_r, not gmtime.
8762         * offtime.c (__offtime): New arg specifying where to store result.
8763         * time.h (__mktime_internal, __offtime): Adjust decls accordingly.
8764         (__gmtime_r, __localtime_r): New decls.
8765
8766         * time/localtime.c: <stddef.h>, <ctype.h>, <stdio.h>,
8767         <stdlib.h>, <string.h>: Remove includes.
8768         <errno.h>: Add include.
8769
8770         * time/mktime.c, time/time.h, time/timegm.c (__mktime_internal):
8771         Renamed from _mktime_internal to avoid namespace pollution.
8772
8773         * time/gmtime.c: Clear tm_isdst.
8774
8775 Mon Sep 18 01:58:40 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8776
8777         * misc/efgcvt_r.c (ecvt_r, fcvt_r): Last arg is size_t, not int.
8778         * stdlib/stdlib.h (ecvt_r, fcvt_r): Fix type of last arg: make it
8779         size_t.
8780
8781         * sysdeps/mach/hurd/fpathconf.c: Call __io_pathconf instead of
8782         __file_pathconf.
8783         * sysdeps/mach/hurd/pathconf.c: Likewise.
8784
8785         * Makefile (subdirs): Add sysvipc.
8786
8787         * stdlib/srand48_r.c (srand48_r): Use UL suffix for huge constant.
8788         * stdlib/drand48-iter.c (__drand48_iterate): Likewise.
8789
8790 Sun Sep 17 18:29:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8791
8792         * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): Call
8793          __file_set_size instead of __file_truncate.
8794
8795         * features.h (__USE_REENTRANT): New macro.
8796
8797         * sysdeps/mach/hurd/truncate.c: Call __file_set_size instead of
8798         __file_truncate.
8799         * sysdeps/mach/hurd/ftruncate.c: Likewise.
8800
8801         * sysdeps/unix/sysv/linux/dl-machine.h: File removed.
8802
8803 Sat Sep 16 17:47:19 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
8804
8805         * elf/elf.h (AT_GID): Fix typo: Read -> Real.
8806
8807         * misc/efgvt_r.c: New file.  Reentrant version of [efg]cvt functions.
8808         * misc/efgcvt.c: Rewrite to use reentrant functions.
8809         * misc/search.h: Many decls for hsearch functions.
8810         * misc/hsearch_r.c: New file.  Reentrant version of functions from
8811         hsearch family.
8812         * misc/hsearch.c, misc/tsearch.c: New files.
8813         * misc/Makefile (routines): Add efgcvt_r, hsearch_r, hsearch, tsearch.
8814
8815         * posix/unistd.h (ttyname_r): Add prototype for new function.
8816
8817         * stdlib/drand48_r.c, stdlib/erand48_r.c, stdlib/jrand48_r.c,
8818         stdlib/lrand48_r.c, stdlib/mrand48_r.c, stdlib/nrand48_r.c,
8819         stdlib/seed48_r.c, stdlib/srand48_r.c, stdlib/lcong48_r.c,
8820         stdlib/drand48-iter.c: New files implementing reentrant versions
8821         of functions from drand48 family.
8822         * stdlib/seed48.c, stdlib/drand48.c, stdlib/erand48.c,
8823         stdlib/jrand48.c, stdlib/lrand48.c, stdlib/mrand48.c,
8824         stdlib/nrand48.c, stdlib/srand48.c, stdlib/lcong48.c:
8825         Rewrite to use reentrant versions.
8826         * stdlib/a64l.c, stdlib/l64a.c: New files.  Implement a64l()
8827         and l64a() functions from SysV library.
8828         * stdlib/Makefile (routines): Add drand48_r, erand48_r, lrand48_r,
8829         nrand48_r, mrand48_r, jrand48_r, srand48_r, seed48_r, lcong48_r,
8830         drand48-iter, a64l, l64a.
8831         * stdlib/stdlib.h: Declare them.
8832
8833         * stdlib/random_r.c: New file.  Reentrant version of functions
8834         from random family.
8835         * stdlib/stdlib.h: Declare them.
8836         * stdlib/random.c: Rewrite to use reentrant functions.
8837
8838         * string/strerror_r.c: New file.  Reentrant version.
8839         * string/strerror.c: Change for new _strerror_internal form.
8840         * string/Makefile (routines): Add strerror_r.
8841
8842         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Set default
8843         value of user_entry to `_start'.
8844         Close AT_ENTRY case with `break'.
8845
8846         * sysdeps/generic/strstr.c: New and much faster implementation
8847         by Stephen R. van den Berg.
8848
8849         * sysdeps/generic/_strerror.c: _strerror_internal now takes
8850         three argument and has and explicit buffer length.
8851         * sysdeps/mach/_strerror.c: Change for new interface with three
8852         arguments.
8853         * stdio/perror.c, stdio/vfprintf.c: Callers changed.
8854
8855         * sysdeps/mach/hurd/ttyname_r.c: New file.  Reentrant version.
8856         * sysdeps/posix/ttyname_r.c: New file.  Reentrant version.
8857         * sysdeps/stub/ttyname_r: New file.  Define as dummy function.
8858
8859         * sysdeps/posix/utimes.c: Include <utime.h> for prototype.
8860         (utimes): First parameter to utime must be file, not path.
8861
8862         * sysdeps/posix/sysconf.c (__sysconf): Test for CLK_TCK in case
8863         _SC_CLK_TCK and return it when available.
8864         Test for STREAM_MAX in case _SC_STREAM_MAX and return it when
8865         available.
8866         Add case for _SC_2_LOCALEDEF which is now available.
8867
8868         * posix/sys/types.h [__USE_SVID] (key_t): New type.
8869         * sysvipc/Makefile, sysvipc/ftok.c, sysvipc/sys/ipc.h,
8870         sysvipc/sys/msg.h, sysvipc/sys/sem.h, sysvipc/sys/shm.h,
8871         sysdeps/stub/sys/msq_buf.h, sysdeps/stub/sys/sem_buf.h,
8872         sysdeps/stub/sys/shm_buf.h, sysdeps/stub/sys/ipc_buf.h,
8873         sysdeps/stub/semctl.c, sysdeps/stub/semget.c, sysdeps/stub/semop.c,
8874         sysdeps/stub/shmat.c, sysdeps/stub/shmctl.c, sysdeps/stub/shmdt.c,
8875         sysdeps/stub/shmget.c, sysdeps/stub/msgctl.c, sysdeps/stub/msgget.c,
8876         sysdeps/stub/msgrcv.c, sysdeps/stub/msgsnd.c: New files.
8877         Add implementation of System V IPC.
8878
8879 Fri Sep 15 21:34:28 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8880
8881         * hurd/hurdsig.c: Include <hurd/crash.h> in place of <hurd/core.h>.
8882         (write_corefile): Call __crash_dump_task instead of __core_dump_task.
8883         Use envariable CRASHSERVER instead of CORESERVER.
8884         * hurd/Makefile (user-interfaces): Replace hurd/core with hurd/crash.
8885
8886 Tue Sep 12 14:30:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8887
8888         * misc/mntent.c: New file.
8889         * misc/mntent.h: New file.
8890         * misc/Makefile (headers): Added mntent.h.
8891         (routines): Added mntent.
8892         * misc/fstab.c: Rewritten using mntent functions.
8893
8894 Mon Sep 11 14:00:14 1995  Roland McGrath  <roland@whiz-bang.gnu.ai.mit.edu>
8895
8896         * posix/glob.c (glob): Comment fix.
8897
8898 Fri Sep  8 16:25:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8899
8900         * libc-symbols.h [HAVE_ELF] (symbol_set_declare): Declare the
8901         symbols weak.
8902
8903         * conf/portability.h (NEED_INETADDR, NEED_INETATON): Define to 1,
8904         not empty.
8905
8906 Fri Sep  8 16:32:12 1995  Ulrich Drepper  <drepper@gnu.ai.mit.edu>
8907
8908         * sysdeps/unix/sysv/linux/Implies,
8909         sysdeps/unix/sysv/linux/Makefile, sysdeps/unix/sysv/linux/Subdirs,
8910         sysdeps/unix/sysv/linux/accept.S, sysdeps/unix/sysv/linux/adjtime.c,
8911         sysdeps/unix/sysv/linux/adjtimex.S, sysdeps/unix/sysv/linux/bind.S,
8912         sysdeps/unix/sysv/linux/connect.S, sysdeps/unix/sysv/linux/direct.h,
8913         sysdeps/unix/sysv/linux/dl-machine.h, sysdeps/unix/sysv/linux/errnos.h,
8914         sysdeps/unix/sysv/linux/fork.S, sysdeps/unix/sysv/linux/gethostid.c,
8915         sysdeps/unix/sysv/linux/gethostname.C,
8916         sysdeps/unix/sysv/linux/getpeername.S,
8917         sysdeps/unix/sysv/linux/getpgid.S, sysdeps/unix/sysv/linux/getpgrp.S,
8918         sysdeps/unix/sysv/linux/getsockname.S,
8919         sysdeps/unix/sysv/linux/getsockopt.S, sysdeps/unix/sysv/linux/gtty.S,
8920         sysdeps/unix/sysv/linux/listen.S, sysdeps/unix/sysv/linux/local_lim.h,
8921         sysdeps/unix/sysv/linux/madvise.c, sysdeps/unix/sysv/linux/msgctl.c,
8922         sysdeps/unix/sysv/linux/msgget.c, sysdeps/unix/sysv/linux/msgrcv.c,
8923         sysdeps/unix/sysv/linux/msgsnd.c, sysdeps/unix/sysv/linux/pipe.S,
8924         sysdeps/unix/sysv/linux/poll.c, sysdeps/unix/sysv/linux/readv.c,
8925         sysdeps/unix/sysv/linux/recv.S, sysdeps/unix/sysv/linux/recvfrom.S,
8926         sysdeps/unix/sysv/linux/recvmsg.S, sysdeps/unix/sysv/linux/semctl.c,
8927         sysdeps/unix/sysv/linux/semget.c, sysdeps/unix/sysv/linux/semop.c,
8928         sysdeps/unix/sysv/linux/send.S, sysdeps/unix/sysv/linux/sendmsg.S,
8929         sysdeps/unix/sysv/linux/sendto.S, sysdeps/unix/sysv/linux/setegid.c,
8930         sysdeps/unix/sysv/linux/seteuid.c, sysdeps/unix/sysv/linux/sethostid.c,
8931         sysdeps/unix/sysv/linux/setpgid.c, sysdeps/unix/sysv/linux/setpgrp.c,
8932         sysdeps/unix/sysv/linux/setsid.S, sysdeps/unix/sysv/linux/setsockopt.S,
8933         sysdeps/unix/sysv/linux/settimeofday.S,
8934         sysdeps/unix/sysv/linux/shmat.c, sysdeps/unix/sysv/linux/shmctl.c,
8935         sysdeps/unix/sysv/linux/shmdt.c, sysdeps/unix/sysv/linux/shmget.c,
8936         sysdeps/unix/sysv/linux/shutdown.S,
8937         sysdeps/unix/sysv/linux/sigaction.S, sysdeps/unix/sysv/linux/signal.S,
8938         sysdeps/unix/sysv/linux/sigpending.S, sysdeps/unix/sysv/linux/sigset.h,
8939         sysdeps/unix/sysv/linux/sockaddrcom.h,
8940         sysdeps/unix/sysv/linux/socketpair.S, sysdeps/unix/sysv/linux/speed.c,
8941         sysdeps/unix/sysv/linux/statbuf.h, sysdeps/unix/sysv/linux/stty.S,
8942         sysdeps/unix/sysv/linux/syscall.h, sysdeps/unix/sysv/linux/sysconf.c,
8943         sysdeps/unix/sysv/linux/tcdrain.c, sysdeps/unix/sysv/linux/tcflow.c,
8944         sysdeps/unix/sysv/linux/tcflush.c, sysdeps/unix/sysv/linux/tcgetattr.c,
8945         sysdeps/unix/sysv/linux/tcsetattr.c,
8946         sysdeps/unix/sysv/linux/termbits.h, sysdeps/unix/sysv/linux/ualarm.c,
8947         sysdeps/unix/sysv/linux/ulimit.c, sysdeps/unix/sysv/linux/usleep.c,
8948         sysdeps/unix/sysv/linux/utsnamelen.h, sysdeps/unix/sysv/linux/vfork.c,
8949         sysdeps/unix/sysv/linux/wait.c, sysdeps/unix/sysv/linux/wait4.S,
8950         sysdeps/unix/sysv/linux/waitpid.c, sysdeps/unix/sysv/linux/writev.c:
8951         New Linux/ELF specific, architecture independent files.
8952         * sysdeps/unix/sysv/linux/i386/Dist,
8953         sysdeps/unix/sysv/linux/i386/Makefile,
8954         sysdeps/unix/sysv/linux/i386/brk.S,
8955         sysdeps/unix/sysv/linux/i386/fcntlbits.h,
8956         sysdeps/unix/sysv/linux/i386/fpu_control.c,
8957         sysdeps/unix/sysv/linux/i386/fpu_control.h,
8958         sysdeps/unix/sysv/linux/i386/fstat.S,
8959         sysdeps/unix/sysv/linux/i386/fxstat.S,
8960         sysdeps/unix/sysv/linux/i386/ieee_fpu.c,
8961         sysdeps/unix/sysv/linux/i386/init-first.S,
8962         sysdeps/unix/sysv/linux/i386/ipc.S,
8963         sysdeps/unix/sysv/linux/i386/lstat.S,
8964         sysdeps/unix/sysv/linux/i386/lxstat.S,
8965         sysdeps/unix/sysv/linux/i386/mknod.S,
8966         sysdeps/unix/sysv/linux/i386/mmap.S,
8967         sysdeps/unix/sysv/linux/i386/sbrk.S,
8968         sysdeps/unix/sysv/linux/i386/setfpucw.c,
8969         sysdeps/unix/sysv/linux/i386/signum.h,
8970         sysdeps/unix/sysv/linux/i386/socket.S,
8971         sysdeps/unix/sysv/linux/i386/stat.S,
8972         sysdeps/unix/sysv/linux/i386/syscall.S,
8973         sysdeps/unix/sysv/linux/i386/sysdep.S,
8974         sysdeps/unix/sysv/linux/i386/sysdep.h,
8975         sysdeps/unix/sysv/linux/i386/xmknod.S,
8976         sysdeps/unix/sysv/linux/i386/xstat.S:
8977         New Linux i386/ELF specific files.
8978         * sysdeps/unix/sysv/linux/sys/ipc_buf.h,
8979         sysdeps/unix/sysv/linux/sys/mman.h,
8980         sysdeps/unix/sysv/linux/sys/msq_buf.h,
8981         sysdeps/unix/sysv/linux/sys/sem_buf.h,
8982         sysdeps/unix/sysv/linux/sys/shm_buf.h,
8983         sysdeps/unix/sysv/linux/sys/socketcall.h,
8984         sysdeps/unix/sysv/linux/sys/timex.h:
8985         New Linux/ELF specific, architecture independent header files.
8986         * sysdeps/unix/sysv/sysv4/linux: Tree removed.
8987
8988 Thu Sep  7 17:05:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8989
8990         * stdlib/msort.c (msort_with_tmp): Fixed alignment test.  B1 and
8991         B2 are always congruent; just test that B1 is aligned.
8992
8993 Wed Sep  6 19:41:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
8994
8995         * elf/dl-lookup.c (_dl_lookup_symbol): Test WEAK_VALUE.s rather
8996         than WEAK_VALUE.a to see if a weak value has been set.  A valid
8997         weak value may set WEAK_VALUE.a to 0.
8998
8999 Fri Sep  1 16:16:12 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9000
9001         * sysdeps/mach/hurd/i386/longjmp-ts.c: Use new array format for
9002         jmp_buf.
9003
9004         * libc-symbols.h (link_warning): Take new first arg SYMBOL; ask
9005         for a warning on references to that specific symbol, not the
9006         entire containing object file.
9007         (stub_warning): Pass symbol name to link_warning.
9008         * stdio/gets.c: Pass function name in link_warning invocation.
9009
9010         * hurd/intr-msg.c: Treat apparent EINTR return from msg trap like
9011         MACH_SEND_INTERRUPTED.  That indicates interrupt_operation was
9012         sent, but failed.
9013
9014         * stdlib/msort.c: Include memcopy.h.
9015         (msort_with_tmp): If operating on aligned op_t words, use direct word
9016         fetches and stores.
9017
9018         * sysdeps/i386/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC): Add
9019         missing backslash.
9020
9021 Thu Aug 31 13:23:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9022
9023         * sysdeps/unix/i386/brk.S [PIC]: Set __curbrk through the GOT.
9024
9025         Rewrote i386 setjmp code in assembly, so as to avoid fighting
9026         with the compiler for the register values.
9027         * sysdeps/i386/setjmp.S, sysdeps/i386/__longjmp.S: New files.
9028         * sysdeps/i386/setjmp.c, sysdeps/i386/__longjmp.c: Files removed.
9029         * sysdeps/i386/jmp_buf.h [! _ASM] (__jmp_buf): Define as array of ints.
9030         [__USE_MISC || _ASM] (JB_*): New macros, for indices therein.
9031         (_JMPBUF_UNWINDS): Use JB_SP.
9032
9033 Wed Aug 30 16:44:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9034
9035         * sysdeps/mach/hurd/select.c: Deal with out of order replies
9036         during io_select request loop.
9037         Handle MACH_RCV_TIMED_OUT error from requests.
9038         * hurd/intr-msg.c: If the user passed the MACH_RCV_TIMEOUT option,
9039         distinguish MACH_RCV_TIMED_OUT from EINTR.
9040
9041         * posix/glob.c (glob): Use realloc to extend strings for GLOB_MARK
9042         slash.
9043         (glob_in_dir): Don't allocate extra byte here.
9044
9045         * sysdeps/i386/dl-machine.h (ELF_MACHINE_BEFORE_RTLD_RELOC):
9046         Decrement the DT_RELSZ value for the skipped reloc.
9047
9048 Tue Aug 29 12:35:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9049
9050         * time/australasia: Updated data from ADO.
9051
9052 Mon Aug 28 17:47:11 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9053
9054         * dirent/dirent.h: Don't include <dirstream.h>.
9055         Instead, define DIR as typedef for (undefined) `struct __dirstream'.
9056
9057 Fri Aug 25 12:12:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9058
9059         * sysdeps/mach/hurd/dirstream.h: Define `struct __dirstream'
9060         instead of `DIR'.
9061         * sysdeps/unix/bsd/dirstream.h: Likewise.
9062         * sysdeps/stub/dirstream.h: Likewise.
9063         * sysdeps/unix/dirstream.h: Likewise.
9064         * sysdeps/mach/hurd/telldir.c: Include "dirstream.h".
9065         * sysdeps/mach/hurd/seekdir.c: Likewise.
9066         * sysdeps/mach/hurd/opendir.c: Likewise.
9067         * sysdeps/mach/hurd/closedir.c: Likewise.
9068         * sysdeps/mach/hurd/readdir.c: Likewise.
9069         * sysdeps/unix/telldir.c: Likewise.
9070         * sysdeps/unix/seekdir.c: Likewise.
9071         * sysdeps/unix/rewinddir.c: Likewise.
9072         * sysdeps/unix/readdir.c: Likewise.
9073         * sysdeps/unix/opendir.c: Likewise.
9074         * sysdeps/unix/closedir.c: Likewise.
9075         * sysdeps/unix/bsd/telldir.c: Likewise.
9076         * sysdeps/unix/bsd/readdir.c: Likewise.
9077         * dirent/Makefile (headers): Remove dirstream.h.
9078         (distribute): Put it here instead.
9079
9080         * sysdeps/mach/hurd/mmap.c: Fix inverted test of MAP_FIXED.
9081
9082         * stdio/vfscanf.c (number): Allow field width to inhibit first
9083         digit after base detection.
9084
9085         * stdio/vfprintf.c (vfprintf: %s): Never search past the limit
9086         specified by the precision.
9087
9088         * grp/grpread.c (__grpscan): New function.
9089         * grp/grp.h (__grpscan): Declare it.
9090         * grp/getgrgid.c: Use __grpscan.
9091         * grp/getgrnam.c: Likewise.
9092         * pwd/pwdread.c (__pwdscan): New function.
9093         * pwd/pwd.h (__pwdscan): Declare it.
9094         * pwd/getpwnam.c: Use __pwdscan.
9095         * pwd/getpwuid.c: Likewise.
9096
9097 Thu Aug 24 16:29:40 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9098
9099         * sysdeps/mach/hurd/mmap.c: Treat (FLAGS & MAP_TYPE) == 0 like
9100         MAP_FILE.
9101
9102         * hurd/thread-cancel.c: Return EINTR when called on self.
9103         * sysdeps/i386/elf/start.S (data_start): Define as weak alias for
9104         __data_start.
9105
9106 Tue Aug 22 16:49:12 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9107
9108         * inet/netdb.h: Moved to resolv.
9109         * inet/Makefile (headers): Remove netdb.h.
9110         * resolv/Makefile (headers): Add netdb.h.
9111         * resolv/gethnamaddr.c, resolv/inet_addr.c, resolv/netdb.h,
9112         resolv/res_send.c: Updated from BIND-4.9.3-BETA26.
9113
9114         * hurd/thread-cancel.c: If SS->cancel_hook is not null, call it before
9115         resuming the thread.
9116         * hurd/hurd/signal.h (struct hurd_sigstate): New member `cancel_hook'.
9117
9118         * hurd/Makefile: Removed dep on hurd/signal.h for RPC stub objects.
9119
9120 Mon Aug 21 16:37:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9121
9122         * sysdeps/i386/dl-machine.h (elf_machine_rel): Grok R_386_NONE
9123         relocs, and do nothing.  Why the linker generates them we may
9124         never know.
9125
9126 Thu Aug 17 16:18:38 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9127
9128         * sysdeps/mach/hurd/Makefile: Don't elide sunrpc and manual from
9129         `subdirs' variable.
9130
9131         * sysdeps/mach/hurd/i386/intr-msg.h: New file.
9132         * hurd/intr-msg.c: Use INTR_MSG_TRAP macro from machine-dependent
9133         "intr-msg.h" for special syscall code, instead of i386-specific asm.
9134         * hurd/hurdsig.c: Use INTR_MSG_BACK_OUT macro from
9135         machine-dependent "intr-msg.h" before mutating thread state to
9136         skip RPC.
9137
9138         * sysdeps/mach/hurd/i386/trampoline.c: If PC is inside
9139         _hurd_intr_rpc_mach_msg special syscall code, use real SP saved in
9140         %ecx.
9141
9142         * Makeconfig (link-libc): New variable; use shared library if
9143         available.
9144         (+link): Use it.
9145
9146         * sysdeps/mach/hurd/fork.c (_hurd_fork_locks): Variable removed.
9147         Instead, declare with `symbol_set_declare'.
9148         (fork): Use symbol_set_* macros for _hurd_fork_locks.
9149         Use SS->thread instead of __mach_thread_self ().  Suspend all
9150         other threads during task_create and port copying.
9151
9152 Wed Aug 16 17:04:26 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9153
9154         * hurd/intr-msg.c: Fixed calculation of syscall %esp.
9155
9156 Tue Aug 15 12:26:18 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9157
9158         * hurd/hurdsig.c (_hurdsig_abort_rpcs): Remove `static'.
9159
9160         * hurd/Makefile (sig): Add intr-msg.
9161
9162 Mon Aug 14 16:51:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9163
9164         * hurd/thread-cancel.c: New file.
9165         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler): In
9166         rpc_wait case, frob mach_msg args to set timeout on receive.
9167         (_hurdsig_rcv_interrupted_p): Function removed.
9168         * sysdeps/mach/hurd/alpha/trampoline.c: Likewise.
9169         * sysdeps/mach/hurd/hppa/trampoline.c: Likewise.
9170         * sysdeps/mach/hurd/mips/trampoline.c: Likewise.
9171         * hurd/intr-msg.c: New file.
9172         * hurd/hurd/signal.h (struct hurd_sigstate): New member `cancel'.
9173         (_hurdsig_rcv_interrupted_p): Declaration removed.
9174         (HURD_EINTR_RPC): Macro removed.
9175         (_hurd_longjmp_thread_state, _hurd_interrupted_rpc_timeout): Declare
9176         these.
9177         * hurd/intr-rpc.h: New file.
9178         * hurd/intr-rpc.defs: Just import intr-rpc.h.
9179         * hurd/hurdsig.c (_hurd_interrupted_rpc_timeout): New variable.
9180         (interrupted_reply_port_location): Take new flag arg; only catch
9181         faults if it's set.
9182         (abort_rpcs): Rename to _hurdsig_abort_rpcs; take same new flag arg.
9183         No longer use _hurdsig_rcv_interrupted_p; instead compare PC to
9184         &_hurd_intr_rpc_msg_in_trap.  If before it, mutate state to simulate
9185         MACH_SEND_INTERRUPTED return; on it, interrupt the operation.  All
9186         callers changed.
9187         * hurd/hurd.h (hurd_thread_cancel, hurd_check_cancel): Declare these.
9188         * hurd/Makefile (distribute): Remove intr-rpc.awk.
9189         (sig): Add thread-cancel.
9190         (transform-user-stub, transform-user-stub-output): Variables removed.
9191         * sysdeps/mach/hurd/dl-sysdep.c: Change all RPCs from
9192         `__hurd_intr_rpc_*' to `__*'.
9193         (_hurd_intr_rpc_mach_msg): New function.
9194         (_hurd_thread_sigstate): Function removed.
9195         * sysdeps/mach/hurd/ioctl.c: Use _hurd_intr_rpc_mach_msg function,
9196         instead of __mach_msg inside HURD_EINTR_RPC macro.
9197
9198         * sysdeps/generic/morecore.c [__GNU_LIBRARY__]: Declare `__sbrk'
9199         to take ptrdiff_t arg.
9200
9201         * sysdeps/mach/hurd/fork.c: Remove _hurd_longjmp_thread_state decl.
9202
9203         * sysdeps/mach/hurd/kill.c (kill_pid): Don't make `inline'.
9204
9205         * libc-symbols.h [GCC >= 2.7] (strong_alias, weak_symbol,
9206         weak_alias): Use `extern' storage class.
9207
9208 Wed Aug  9 14:25:35 1995  Miles Bader  <miles@geech.gnu.ai.mit.edu>
9209
9210         * sysdeps/mach/hurd/setuid.c (__setuid): Switch the port-type and
9211         port-count parameters to __auth_makeauth.
9212         * sysdeps/mach/hurd/setgid.c (__setgid): Ditto.
9213
9214 Tue Aug  8 12:22:59 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9215
9216         * hurd/sigunwind.c: Remove _hurd_longjmp_thread_state decl.
9217
9218         * inet/netinet/tcp.h: New file, incorporated from 4.4BSD-Lite.
9219
9220 Tue Aug  8 12:06:04 1995  Michael I. Bushnell, p/BSG  <mib@duality.gnu.ai.mit.edu>
9221
9222         * inet/netinet/in.h (IP_MULTICAST_TTL, IP_MULTICAST_LOOP,
9223         IP_MULTICAST_IP, IP_ADD_MEMBERSHIP, IP_DROP_MEMBERSHIP): New IP
9224         layer socket options.
9225         (IPPROTO_GGP): Delete obsolote protocol.
9226         (IPPROTO_IGMP): Add new protocol (with same value [2] as old GGP).
9227         (struct ip_mreq): New type.
9228
9229 Mon Aug  7 14:04:36 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9230
9231         * stdlib/strtol.c: Use #ifdef, not #if, for HAVE_LIMITS_H.
9232
9233         * posix/glob.c (glob_in_dir): Allocate GLOB_MARK byte in case when
9234         (NFOUND == 0 && (FLAGS & GLOB_NOCHECK)).
9235
9236         * sysdeps/generic/sysd-stdio.c (__stdio_reopen): Return failure
9237         when __stdio_open fails with a code other than ENFILE or EMFILE.
9238
9239 Fri Aug  4 16:01:59 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9240
9241         * Makefile (headers): Added gnu-versions.h.
9242
9243 Thu Aug  3 14:41:11 1995  Michael I. Bushnell  <mib@duality.gnu.ai.mit.edu>
9244
9245         * inet/netinet/in.h (IN_CLASSD, IN_EXPERIMENTAL, IN_BADCLASS): Use
9246         equality, not assignment, to test bitfields.
9247
9248 Sat Jul 29 10:41:06 1995  Miles Bader  <miles@churchy.gnu.ai.mit.edu>
9249
9250         * sysdeps/mach/hurd/sendto.c (sendto): Use the ifsock protocol to
9251         resolve AF_LOCAL addresses.
9252
9253         * sysdeps/mach/hurd/accept.c (accept): If the protocol family
9254         can't tell us what an address means, just return a zero-length
9255         buffer instead.
9256         * sysdeps/mach/hurd/recvfrom.c (recvfrom): Ditto.
9257
9258 Fri Jul 28 15:29:11 1995  Miles Bader  <miles@churchy.gnu.ai.mit.edu>
9259
9260         * sysdeps/mach/hurd/bind.c (bind): Don't use
9261         file_invoke_translator, as it doesn't work.  Instead just lookup
9262         the translated node again, and hope we're not hit by any race
9263         conditions.
9264
9265 Wed Jul 26 02:00:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9266
9267         * csu/Makefile [$(elf)=yes] (have-initfini): Set to yes.
9268         [$(have-initfini)=yes]: Test this rather than $(elf) for crtstuff.
9269         [start-installed-name-rule]: If this is defined, elide rule for
9270         $(objpfx)$(start-installed-name).
9271         * csu/initfini.c (SECTION): New macro, different definitions for
9272         #ifdef HAVE_ELF and not.
9273         (_init, _fini): Use that macro.
9274         * sysdeps/unix/sysv/sco3.2.4/Makefile [$(subdir)=csu]
9275         (start-installed-rule, start-installed-name-rule): New variables;
9276         specify crt1.o, created by our own rule.
9277         ($(objpfx)crt1.o): New rule.
9278         * configure.in: Require autoconf 2.4.2 or later.  Change all
9279         AC_CACHE_VAL uses to use new AC_CACHE_CHECK macro instead;
9280         prettify some messages.
9281         [$elf!=yes] (libc_cv_have_initfini): New test for `.init' and `.fini'
9282         sections.
9283         * munch-tmpl.c [HAVE_INITFINI]: Call _init and atexit (_fini) in
9284         this case rather than #ifdef HAVE_ELF.
9285         * config.h.in (HAVE_INITFINI): New macro.
9286         * config.make.in (have-initfini): New variable, set by configure.
9287
9288         * stdio/vfscanf.c (conv_error): Simplify expression to avoid
9289         "value computed is not used" warning.
9290
9291         * Makeconfig (+gccwarn): Removed -Wconversion.
9292
9293         * csu/initfini.c (GLOBAL): Macro removed.
9294         (_init, _fini): Always define globally.
9295         * csu/Makefile (crtstuff, initfini): Don't make crt[in]_s.o.
9296
9297         * asia, backward, europe, leapseconds, southamerica: New data from
9298         ADO's 95e.
9299
9300         * inet/Makefile (routines): Removed inet_addr.
9301         * inet/inet_addr.c: Moved to resolv/ subdirectory.
9302         * resolv/Makefile (routines): Added inet_addr.
9303         * resolv/inet_addr.c: Incorporated from BIND 4.9.3-BETA24 release.
9304         * resolv/gethnamaddr.c: Likewise.
9305         * resolv/getnetbyaddr.c: Likewise.
9306         * resolv/getnetbyname.c: Likewise.
9307         * resolv/getnetent.c: Likewise.
9308         * resolv/getnetnamadr.c: Likewise.
9309         * resolv/herror.c: Likewise.
9310         * resolv/nsap_addr.c: Likewise.
9311         * resolv/res_comp.c: Likewise.
9312         * resolv/res_debug.c: Likewise.
9313         * resolv/res_init.c: Likewise.
9314         * resolv/res_mkquery.c: Likewise.
9315         * resolv/res_query.c: Likewise.
9316         * resolv/res_send.c: Likewise.
9317         * resolv/resolv.h: Likewise.
9318         * resolv/sethostent.c: Likewise.
9319         * resolv/arpa/nameser.h: Likewise.
9320         * inet/netdb.h: Incorporated from BIND 4.9.3-BETA24 release.
9321         [__GNU_LIBRARY__]: Include <rpc/netdb.h> instead of repeating
9322         its declarations (and doing so only #ifdef sun!).
9323         * conf/portability.h (NEED_INETADDR, NEED_INETATON): New macros.
9324
9325         * posix/sys/types.h [__USE_BSD] (__BIT_TYPES_DEFINED__): New macro.
9326         [__USE_BSD] [__GNUC__] (int64_t, u_int64_t, register_t): New typedefs.
9327
9328         * malloc/memalign.c: Allocate (SIZE + ALIGNMENT - 1) and then trim
9329         if possible.
9330
9331         * mach/shortcut.awk: Emit decls for RPC.
9332
9333         * libc-symbols.h [GCC >= 2.7 && !ASSEMBLER] (weak_symbol,
9334         weak_alias, strong_alias): Define using GCC __attribute__ syntax.
9335
9336         * Makerules ($(installed-libcs)): Depend on `lib' (only).
9337
9338 Tue Jul 25 09:14:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9339
9340         * sysdeps/mach/hurd/pathconf.c: Declare VALUE as int, not long int.
9341
9342         * stdlib/strtol.c [_LIBC]: Define STDC_HEADERS.
9343
9344         * sysdeps/unix/sysv/ftime.S: New file.
9345
9346         * locale/locfile-parse.c (categories_write): Cast "" to char *.
9347
9348         * io/fcntl.h [__OPTIMIZE__] (creat): Macro removed.
9349
9350         * time/strftime.c: Use year modulo 100 for %y.
9351
9352         * time/sys/timeb.h: Add __BEGIN_DECLS and __END_DECLS.
9353
9354         * sysdeps/unix/snarf-ioctls (snarfexclude): Use two sed's instead
9355         of one, to work around bug in sunos4.1.2 sed.
9356
9357         * stdio/vfprintf.c (vfprintf): For %s with precision spec, use
9358         memchr instead of strlen to limit search for NUL by precision.
9359
9360 Mon Jul 24 03:13:16 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9361
9362         * sysdeps/posix/pathconf.c: New file.
9363
9364 Sat Jul 22 20:53:18 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9365
9366         * sysdeps/unix/i386/sysdep.h (JUMPTARGET): Use ## to avoid space
9367         before @PLT.
9368         * sysdeps/mach/i386/sysdep.h (JUMPTARGET): New macro.
9369         * sysdeps/i386/bsd-_setjmp.S: Use JUMPTARGET macro in jmp insn.
9370         * sysdeps/i386/bsd-setjmp.S: Likewise.
9371
9372 Sat Jul 22 19:58:54 1995  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>
9373
9374         * inet/Makefile (routines): Added `ruserpass'.
9375         * inet/ruserpass.c: New file, from BSD Net-2 sources for the FTP
9376         client.  Modified to remove the fourth arg AACCT.  Do nothing for
9377         the `account' and `macdef' keywords.  Other incidental changes
9378         because we are not in the FTP source tree.
9379
9380 Sat Jul 22 01:56:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9381
9382         * sysdeps/stub/init-posix.c: Removed stub warning.
9383
9384         * Makefile (autoconf-it): Make it executable and unwritable.
9385
9386         * configure.in (sysnames): Under --enable-debug-configure, spew
9387         potential sysnames.
9388
9389         * sysdeps/unix/i386/sysdep.h (JUMPTARGET): New macro; use name@PLT
9390         #ifdef PIC.
9391         (PSEUDO): Use JUMPTARGET(syscall_error) in jump insn.
9392         * sysdeps/unix/i386/syscall.S: Use JUMPTARGET(syscall_error) in
9393         jump insn.
9394
9395         * sysdeps/unix/sysv/sysv4/linux/i386/sysdep.h: Rewritten.
9396         * sysdeps/unix/sysv/sysv4/linux/i386/syscall.S: New file.
9397         * sysdeps/unix/sysv/sysv4/linux/i386/socket.S: Include
9398         <sys/socketcall.h>.  Save %ebx in call-clobbered %edx instead of
9399         stack.  Use JUMPTARGET(syscall_error) in jump insn.
9400
9401         * Makeconfig (+gccwarn): Add -Wbad-function-cast -Wconversion.
9402
9403         * sysdeps/unix/i386/sysdep.h (ENTRY): Use ASM_GLOBAL_DIRECTIVE and
9404         ASM_TYPE_DIRECTIVE.
9405         (ASM_TYPE_DIRECTIVE): New macro; defined using `.type' #ifdef ELF.
9406
9407         * sysdeps/unix/sysv/sysv4/linux/i386/sysdep.S (__syscall_error):
9408         Rewritten, #include'ing unix/i386/sysdep.S for most of the code.
9409         * sysdeps/unix/i386/sysdep.S [PIC]: Store into `errno' through the GOT.
9410
9411         * configure.in (os=linux*): Use unix/sysv/sysv4 for $base_os,
9412         instead of unix/sysv.
9413         * sysdeps/unix/sysv/linux/{accept,connect,getsockname,rename,
9414         socketpair,waitpid,bind,getpeername,listen,setsid,wait4}.S: Moved
9415         to new directory sysdeps/unix/sysv/sysv4/linux.
9416         * sysdeps/unix/sysv/linux: Directory removed.
9417         * sysdeps/unix/sysv/i386/linux/{socket.S,sysdep.h,sysdep.S}: Moved
9418         to new directory sysdeps/unix/sysv/sysv4/linux/i386.
9419         * sysdeps/unix/sysv/linux/i386: Directory removed.
9420
9421         Fixes to help Linux, inspired by drepper's work:
9422         * sysdeps/posix/utimes.c: New file.
9423         * sysdeps/generic/getdomain.c: New file.
9424         * sysdeps/i386/init-first.c: Removed gratuitous #include <hurd.h>.
9425         * sysdeps/generic/dl-sysdep.c: Include <unistd.h> and declare
9426         externals _dl_argc, _dl_argc, and _environ.
9427
9428 Fri Jul 21 12:57:29 1995  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>
9429
9430         * sysdeps/mach/hurd/socket.c (socket): Consider MIG_BAD_ID and
9431         EOPNOTSUPP as indications that the server has died.
9432         * sysdeps/mach/hurd/pipe.c (__pipe): Likewise.
9433         * sysdeps/mach/hurd/socketpair.c (socketpair): Likewise.
9434
9435 Mon Jul 17 08:45:40 1995  Jim Meyering  (meyering@comco.com)
9436
9437         * strtol.c: Portability changes from Uli Drepper.
9438         [!STDC_HEADERS && !defined(NULL)]: Define NULL.
9439
9440 Mon Jul 10 05:39:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9441
9442         * sysdeps/mach/hurd/i386/init-first.c (init): Take just one arg,
9443         DATA for the entry SP; DATA[-1] is always the return address
9444         location.  In both cthreads and non-cthreads cases, use asm to
9445         force parameters into %eax and %ecx before return, and mutate
9446         DATA[-1] to return to specific asm code to set up the user from
9447         %eax and %ecx.
9448         [PIC] (_init): Caller changed.
9449         (__libc_init_first) [! PIC] (doinit): Use asm to effect call to init
9450         with SP unwound to argument data ptr.
9451
9452 Thu Jul  6 14:28:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9453
9454         * sysdeps/mach/hurd/dl-sysdep.c (fmh): Fixed this kludge to work
9455         when 0x08000000 and up are not mapped.
9456
9457         * Makerules (stamp$o-$(subdir) rule): Remove the timestamp file
9458         before touching it.
9459         (lib%.so): Use -Wl to get -soname to ld.
9460
9461         * elf/dlsym.c: Pass final arg to _dl_lookup_symbol.
9462
9463         * elf/Makefile (libdl.so): Pass $(LDFLAGS.so).
9464
9465 Tue Jun 20 02:18:19 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9466
9467         * Makerules (lib%.so: lib%_pic.a): Pass -soname switch giving the
9468         library's name including $(libprefix) and major version number.
9469
9470         * locale/locale-ctype.c (allocate_arrays): Use xmalloc and bzero
9471         in place of xcalloc.
9472
9473         * Makeconfig (prefix, exec_prefix, libprefix): Instead of
9474         `ifndef', use the $(origin) function to only set these if they are
9475         undefined, and not if they are defined to empty.
9476
9477         * gnu-versions.h: New file.
9478         * features.h (__GNU_LIBRARY__): Increase value to 5.
9479
9480 Wed Jun 14 03:45:24 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9481
9482         * stdio/stdio.h (__validfp): Use ({...}) rather than a comma
9483         expression, to avoid gcc's "value computed is not used" warning.
9484
9485         * libc-symbols.h (_elf_set_element): Give the set-element variable
9486         an `unused' attribute.
9487
9488         * hurd/hurd/threadvar.h (__hurd_threadvar_location): Declare with
9489         __attribute__ ((__const__)).
9490         * hurd/hurd/signal.h (_hurd_self_sigstate): Likewise.
9491
9492         * hurd/hurd/userlink.h (_hurd_userlink_link): Properly set
9493         LINK->resource.next->resource.prevp when appropriate, not
9494         LINK->resource.next->thread.prevp!!!
9495
9496 Tue Jun 13 15:45:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9497
9498         * configure.in (libc_cv_asm_set_directive): Make sure that the
9499         `.set' directive really worked by linking against a reference to
9500         the alias.
9501
9502         * sysdeps/stub/init-first.c: Don't include <hurd.h>.
9503         [PIC] (soinit): Renamed to (global) _init.
9504
9505 Mon Jun 12 13:15:45 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9506
9507         * malloc/Makefile (gmalloc-routines): Remove valloc.
9508         (dist-routines): Add it here.
9509
9510         * malloc/malloc.h [_MALLOC_INTERNAL] [emacs] (valloc): #define to
9511         emacs_loser_valloc to inhibit valloc declaration below.
9512
9513         * Makerules (lib%.so: lib%_pic.a): Moved this rule to after
9514         installation rules.
9515
9516         * sysdeps/mach/sysdep.h [HAVE_ELF] (ENTRY): Redefine this macro so
9517         it uses the `.type' directive, which is necessary for shared
9518         libraries to work properly.
9519
9520 Thu Jun  8 02:50:26 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9521
9522         * elf/dl-load.c (_dl_map_object): Add MAP_INHERIT flag in mmap
9523         from zero fill.
9524
9525         * elf/dl-lookup.c (_dl_lookup_symbol): Take new flag arg NOSELF;
9526         if nonzero, don't let *REF satisfy the reference itself.
9527         * elf/link.h (_dl_lookup_symbol): Add new arg NOSELF in decl.
9528         * sysdeps/i386/dl-runtime.c (_dl_runtime_resolve): Pass new arg to
9529         _dl_lookup_symbol.
9530         * elf/do-rel.h (elf_dynamic_do_rel): Pass new second arg of
9531         R->r_offset to RESOLVE callback.
9532         * elf/dl-reloc.c (_dl_relocate_object: resolve): Don't let *REF
9533         satisfy the reference itself if its value equals the reloc's
9534         offset.
9535
9536         * elf/rtld.c (dl_main): Write a newline in fatal msg.
9537
9538         * Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS.so).
9539
9540         * elf/rtld.c [! NDEBUG] (__assert_perror_fail): New function.
9541
9542         * hurd/hurdstartup.c (_hurd_startup): Fancier kludge to guess phdr
9543         and user entry point addresses.
9544
9545         * elf/dl-load.c (open_path): Don't do strlen on DIRPATH if it's null.
9546         (_dl_map_object): DT_RPATH value is relative to DT_STRTAB value.
9547
9548         * Makerules (install-lib.so): Don't include libc.so.
9549         [$(build-shared)=yes] (install): Depend on the installed libc.so file.
9550         [$(build-shared)=yes] (install-no-libc.a): Make this, rather than
9551         install, depend on the installed $(install-lib.so) files.
9552         [$(build-shared)=yes] (install-lib.so): Append libc.so after that rule.
9553
9554         * sysdeps/mach/hurd/dl-sysdep.c (_dl_sysdep_start): Add kludge to
9555         allocate high addresses to avoid random mappings appearing there.
9556         (mmap): Comment out mask; always pass zero.
9557
9558 Tue Jun  6 13:34:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9559
9560         * sysdeps/i386/dl-machine.h (ELF_MACHINE_USER_ADDRESS_MASK): New macro.
9561         * sysdeps/mach/hurd/dl-sysdep.c (mmap): Use it as mask in vm_map call.
9562
9563         * elf/dl-error.c (_dl_catch_error): Clear *ERRSTRING and *OBJNAME
9564         when successful.
9565
9566         * sysdeps/mach/hurd/dl-sysdep.c (threadvars): New static variable.
9567         (__hurd_threadvar_max, __hurd_threadvar_stack_offset): Define these
9568         variables, using the `threadvars' buffer.
9569
9570         * elf/dl-reloc.c: Don't dereference L->l_prev when it's null.
9571         * sysdeps/i386/dl-runtime.c: Likewise.
9572
9573         * elf/rtld.c (dl_main): Add missing NULL terminating argument in
9574         _dl_sysdep_fatal call.
9575         (__assert_fail): Likewise.
9576
9577         * locale/Makefile (localedef-modules): Renamed ctype to
9578         locale-ctype so as not to conflict with the object file for
9579         ctype/ctype.c in the build directory.
9580
9581 Mon Jun  5 04:02:26 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9582
9583         * elf/elf.h (ELFMAG): Use \177 instead of \x7f.  It seems GCC
9584         insists on seeing the following E as part of hex 7FE, and
9585         complaining that is wider than a byte.
9586
9587 Sun Jun  4 22:14:11 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9588
9589         * hurd/Makefile (sig): Added thread-self.
9590         * hurd/hurd.h: Declare hurd_thread_self.
9591         * hurd/thread-self.c: New file.
9592
9593 Thu Jun  1 12:17:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9594
9595         * elf/rtld.c: Initialize RTLD_MAP.l_type.
9596         * elf/dl-reloc.c (_dl_relocate_object): Clear LAZY if relocating
9597         the dynamic linker itself.
9598         * sysdeps/i386/dl-machine.h (elf_machine_rel): If MAP->l_type is
9599         lt_interpreter, first undo relocation done during bootstrapping.
9600
9601 Tue May 30 15:52:32 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9602
9603         * mach/Makefile (server-interfaces): Removed notify and
9604         device_reply.  For shlibs with eager binding, libmachuser.so must
9605         not refer to any functions not defined in libc.
9606
9607 Sat May 27 16:23:22 1995  Jim Meyering  (meyering@comco.com)
9608
9609         * sysdeps/generic/memchr.c: Cast RHS to const unsigned char *
9610         to avoid error from Irix-4.0.5's C compiler.  From Kaveh Ghazi.
9611
9612 Fri May 26 13:00:08 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9613
9614         * hurd/hurdsig.c (_hurd_internal_post_signal): Don't loop to check
9615         pending signals if the thread is in a critical section.  It will
9616         send us a msg when it finishes.
9617
9618         * sysdeps/mach/hurd/pathconf.c: New file.
9619         * sysdeps/mach/hurd/fpathconf.c: New file.
9620
9621         * sysdeps/mach/hurd/sigaction.c: Only notify the proc server for
9622         SIGCHLD when the SA_NOCLDSTOP bit actually changes.
9623
9624 Sun May 21 05:05:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9625
9626         * elf/Makefile (ld.so): Use -nostartfiles in addition to
9627         -nostdlib.
9628
9629 Sun May 21 02:01:29 1995  Jim Meyering  (meyering@comco.com)
9630
9631         * sysdeps/generic/memchr.c: Don't include <string.h> at all.
9632         HPUX-9.01 and IRIX-4.0.5 vendor C compilers get conflicting dcls for
9633         memchr unless one manually arranges for them to define __STDC__.
9634
9635 Fri May 19 17:16:46 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9636
9637         * sysdeps/mach/hurd/i386/init-first.c: In cthreads case, handle
9638         args on stack from kernel.
9639
9640         * posix/Makefile, sysdeps/alpha/Makefile,
9641         * sysdeps/mach/hurd/Makefile, sysdeps/sparc/Makefile, Makefile,
9642         * Makerules, Make-dist: Fix "cvs commit" cmds in rules to not fail
9643         in the absence of CVS dirs.
9644
9645         * hurd/hurdstartup.c: Don't call __mach_init.  Grok args from the
9646         kernel on the stack properly.
9647
9648         * set-init.c: Never call _init/_fini; just run __libc_subinit.
9649
9650         * Makerules (LDFLAGS-c.so): Add -nostartfiles.
9651         * mach/Machrules (LDFLAGS-$(interface.so)): Likewise.
9652
9653         * configure.in: Move defaulting of --with-elf and --with-gnu-*
9654         based on host os outside the AC_CACHE_VAL for the sysdirs
9655         calculation.
9656
9657         * Makeconfig (localedir, nlsdir): New variables.
9658
9659         * values.h: New file.
9660         * Makefile (headers): Add values.h.
9661
9662         * locale/Makefile (distribute): Add error.h.
9663         * locale/localedef.c: Include "error.h".
9664         (main): Use error_message_count instead of warning_cntr.
9665
9666 Wed May 17 16:50:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9667
9668         Merged 1003.2 locale and localedef programs by Ulrich Drepper.
9669         * locale/charmap.c: New file.
9670         * locale/collate.c: New file.
9671         * locale/config.h: New file.
9672         * locale/ctype.c: New file.
9673         * locale/ctypedump.c: New file.
9674         * locale/hash.c: New file.
9675         * locale/hash.h: New file.
9676         * locale/iso-4217.def: New file.
9677         * locale/keyword.gperf: New file.
9678         * locale/keyword.h: New file.
9679         * locale/libintl.h: New file.
9680         * locale/locale.c: New file.
9681         * locale/localedef.c: New file.
9682         * locale/localedef.h: New file.
9683         * locale/locfile-lex.c: New file.
9684         * locale/locfile-parse.c: New file.
9685         * locale/messages.c: New file.
9686         * locale/monetary.c: New file.
9687         * locale/numeric.c: New file.
9688         * locale/token.h: New file.
9689
9690         * posix/regex.c, posix/regex.h: New files, incorporated from GNU regex.
9691         * posix/Makefile (headers): Add regex.h.
9692         (routines): Add regex.
9693         (gpl2lgpl): Add regex.c and regex.h.
9694
9695 Tue May 16 17:35:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9696
9697         * locale/loadlocale.c: Expect macro LOCALE_PATH to be defined,
9698         instead of hard-coding "/share/locale".
9699
9700 Sat May 13 02:16:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9701
9702         * configure.in (os=gnu*): Always set elf=yes, not just for os=gnu*elf*.
9703
9704 Fri May 12 15:31:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9705
9706         * elf/elf.h (ELFMAG, SELFMAG): New macros.
9707
9708 Fri May 12 11:24:53 1995  Michael I Bushnell  <mib@duality.gnu.ai.mit.edu>
9709
9710         * hurd/alloc-fd.c (_hurd_alloc_fd): Don't reduce FIRST_FD in
9711         the case where it starts out less than _hurd_dtablesize.
9712
9713 Thu May 11 20:51:05 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9714
9715         * hurd/alloc-fd.c (_hurd_alloc_fd): When expanding the dtable,
9716         make sure the new size exceeds FIRST_FD.
9717
9718 Wed May 10 21:00:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9719
9720         * sysdeps/mach/i386/sysdep.h (RETURN_TO): New macro.
9721
9722 Tue May  9 01:26:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9723
9724         * Makerules (install-lib.so): Add %.so for each %_pic.a.
9725
9726         * sysdeps/i386/elf/start.S (__data_start): Define this symbol as
9727         the first thing in .data.
9728
9729         * sysdeps/mach/_strerror.c (_strerror_internal): Eschew sprintf.
9730
9731         * hurd/hurdstartup.h: New file.
9732
9733         * sysdeps/i386/elf/start.S: Give two operands to `testl' when they
9734         are the same.  Use `jz' instead of `jeq'.
9735
9736         * Makeconfig (config.make): Depend on config.status, and run it to
9737         update.
9738         (config.status): New target; depend on configure.
9739         If target (config.status) exists, run it with --recheck to update;
9740         if not, give error msg saying to run confiugre by hand.
9741         * Makerules [$(sysd-Makefile-sysdirs) != $(sysdirs)]
9742         (sysd-Makefile-force): Set this variable to FORCE in this case, to
9743         force a rebuild of sysd-Makefile.
9744         (sysd-Makefile): Depend on $(sysd-Makefile-force).
9745         Write into the file sysd-Makefile-sysdirs:=$(sysdirs).
9746         [$(sysd-rules-sysdirs) != $(sysdirs)] (sysd-rules-force): Set this
9747         variable to FORCE in this case, to force a rebuild of sysd-rules.
9748         (sysd-rules): Depend on $(sysd-rules-force).
9749         Write into the file sysd-rules-sysdirs:=$(sysdirs).
9750
9751         * Makerules (LDFLAGS-c.so): Change ld option -interp to
9752         -dynamic-linker.
9753
9754         * Makerules (do-install-program): New canned sequence.
9755         (install-bin, install-sbin): Use it.
9756         (install for lib*.so): Use it instead of $(do-install).
9757         Fix .so installation rules to handle lib*.so and *.so, deal with
9758         $(libprefix) right, and install *.so as *.so$($(*.so)-version);
9759         i.e. "libc.so-version = .1".
9760
9761 Mon May  8 05:10:25 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9762
9763         * elf/do-rel.h: New file, split out of dynamic-link.h.
9764         * elf/Makefile (distribute): Add do-rel.h.
9765
9766 Sat May  6 11:06:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9767
9768         * Makeconfig (+gccwarn): Add -Winline.
9769
9770         * hurd/hurdsig.c (_hurd_internal_post_signal): If SS->context is
9771         set, avoid abort_rpcs, and use reply and intr ports saved in
9772         SS->context.
9773         * sysdeps/mach/hurd/i386/trampoline.c: Don't set SS->intr_port
9774         from SS->context.  Don't clear SS->context.
9775         * sysdeps/mach/hurd/i386/sigreturn.c: Don't set SS->intr_port when
9776         setting SS->context.  If msg_sig_post returns, re-lock and clear
9777         SS->context.
9778
9779 Fri May  5 10:37:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9780
9781         * mach/Makefile (errsystems.c): Comment out generation rule.
9782
9783         * sysdeps/mach/_strerror.c: Consider a system unknown if its
9784         bad_sub member is null.
9785
9786         * mach/mig-alloc.c: Add weak alias to non-__ name.
9787
9788 Wed May  3 11:56:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9789
9790         * sysdeps/mach/hurd/dup2.c: Fixed broken test in last change.
9791
9792 Tue May  2 01:52:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9793
9794         * elf/dl-error.c (_dl_catch_error): Actually call the OPERATE
9795         function.  Duh.
9796
9797         * hurd/Makefile (distribute): Added hurdstartup.h.
9798         * hurd/hurd.h: Remove _hurd_startup decl.
9799
9800         * hurd/hurd/ioctl.h (_HURD_HANDLE_IOCTLS): Use __attribute__
9801         ((__unused__)) instead of gratuitous self reference.
9802
9803         * sysdeps/mach/hurd/dup2.c: Call _hurd_alloc_fd to expand the
9804         table if FD2 doesn't fit.
9805
9806         * sysdeps/mach/hurd/getdtsz.c: Return the RLIM_NOFILE soft limit,
9807         not the current table size.
9808
9809         * sysdeps/mach/i386/sysdep.h (SNARF_ARGS, CALL_WITH_SP): Rewritten.
9810
9811         Implemented runtime dynamic linker to support ELF shared libraries.
9812         * elf/Makefile: Added rules to make ld.so and libdl.
9813         * elf/dl-error.c: New file.
9814         * elf/dl-fini.c: New file.
9815         * elf/dl-init.c: New file.
9816         * elf/dl-load.c: New file.
9817         * elf/dl-lookup.c: New file.
9818         * elf/dl-object.c: New file.
9819         * elf/dl-reloc.c: New file.
9820         * elf/dlclose.c: New file.
9821         * elf/dlerror.c: New file.
9822         * elf/dlopen.c: New file.
9823         * elf/dlsym.c: New file.
9824         * elf/dynamic-link.h: New file.
9825         * elf/link.h: New file.
9826         * elf/rtld.c: New file.
9827         * sysdeps/i386/dl-machine.h: New file.
9828         * sysdeps/stub/dl-machine.h: New file.
9829         * sysdeps/i386/dl-runtime.c: New file.
9830         * sysdeps/stub/dl-runtime.c: New file.
9831         * sysdeps/i386/elf/start.S: New file.
9832         * sysdeps/generic/dl-sysdep.c: New file.
9833         * sysdeps/mach/hurd/dl-sysdep.c: New file.
9834         * sysdeps/mach/hurd/i386/init-first.c: New file.
9835         * sysdeps/i386/init-first.c: New file.
9836         * sysdeps/stub/init-first.c: New file.
9837
9838 Mon May  1 18:48:30 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9839
9840         * Makerules (LDFLAGS-c.so): Add -interp and -e switches to make
9841         libc.so runnable.
9842         * version.c (__libc_print_version): Add "et al" and missing NL to
9843         author credit.
9844
9845 Sat Apr 29 15:46:57 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9846
9847         * posix/glob.c (S_ISDIR): Define if undefined.
9848
9849 Thu Apr 27 01:24:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9850
9851         * configure.in: Unless --without-fp, prepend */fpu before each
9852         machine dir in $mach; don't prepend FPU dirs at end.  If
9853         --with-elf, prepend MACHINE/elf directories at end; don't insert
9854         them into $mach.
9855
9856         * Makerules (dist): Filter out *.[cSs] from $(distribute) in deps.
9857
9858         * sysdeps/stub/clock.c: Added stub warning.
9859         * sysdeps/stub/dirfd.c: Likewise.
9860         * sysdeps/stub/exc2signal.c: Likewise.
9861         * sysdeps/stub/fdopen.c: Likewise.
9862         * sysdeps/stub/flock.c: Likewise.
9863         * sysdeps/stub/fpathconf.c: Likewise.
9864         * sysdeps/stub/ftruncate.c: Likewise.
9865         * sysdeps/stub/gtty.c: Likewise.
9866         * sysdeps/stub/isatty.c: Likewise.
9867         * sysdeps/stub/killpg.c: Likewise.
9868         * sysdeps/stub/madvise.c: Likewise.
9869         * sysdeps/stub/mkstemp.c: Likewise.
9870         * sysdeps/stub/mktemp.c: Likewise.
9871         * sysdeps/stub/mprotect.c: Likewise.
9872         * sysdeps/stub/msync.c: Likewise.
9873         * sysdeps/stub/pathconf.c: Likewise.
9874         * sysdeps/stub/poll.c: Likewise.
9875         * sysdeps/stub/raise.c: Likewise.
9876         * sysdeps/stub/readv.c: Likewise.
9877         * sysdeps/stub/setenv.c: Likewise.
9878         * sysdeps/stub/setlogin.c: Likewise.
9879         * sysdeps/stub/sigaltstack.c: Likewise.
9880         * sysdeps/stub/sigintr.c: Likewise.
9881         * sysdeps/stub/sigstack.c: Likewise.
9882         * sysdeps/stub/sleep.c: Likewise.
9883         * sysdeps/stub/sstk.c: Likewise.
9884         * sysdeps/stub/stime.c: Likewise.
9885         * sysdeps/stub/stty.c: Likewise.
9886         * sysdeps/stub/syscall.c: Likewise.
9887         * sysdeps/stub/sysconf.c: Likewise.
9888         * sysdeps/stub/truncate.c: Likewise.
9889         * sysdeps/stub/ualarm.c: Likewise.
9890         * sysdeps/stub/usleep.c: Likewise.
9891         * sysdeps/stub/utimes.c: Likewise.
9892         * sysdeps/stub/writev.c: Likewise.
9893
9894         * sysdeps/stub/libc_fatal.c: Remove __NORETURN keyword.
9895
9896 Wed Apr 26 16:06:42 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9897
9898         * locale/loadlocale.c (_nl_free_locale): Do nothing if DATA is null.
9899
9900 Tue Apr 25 17:17:19 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9901
9902         * posix/glob.c (glob): If GLOB_MARK set, stat names to find
9903         directories and append slashes to them in final pass before
9904         sorting.
9905         (glob_in_dir): If GLOB_MARK set, just allocate the extra char for the
9906         slash; never append it here.
9907
9908 Sat Apr 22 14:48:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9909
9910         * mach/Machrules [interface-library]
9911         (LDFLAGS-$(interface-library:lib%=%.so)): New variable, set to
9912         -nostdlib.
9913
9914         * sysdeps/mach/hurd/fork.c: Subfunction `unlockss' removed.  Lock
9915         _hurd_siglock only around initial task creation in parent.  Use
9916         _hurd_critical_section_unlock at end.  Handle dead name rights
9917         properly, and deal with a send right dying while we try to copy
9918         it.  For the time being, use assert_perror for kernel and proc RPC
9919         failures.
9920
9921 Fri Apr 21 01:10:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9922
9923         * extra-lib.mk: Don't include $(o-iterator); construct it by hand
9924         using $(object-suffixes-$(lib)) instead.
9925
9926         * sysdeps/mach/hurd/Makefile (LDLIBS-c.so): New variable.
9927
9928         * Makerules (lib%.so: lib%_pic.a): Pass $(LDFLAGS-$(notdir $*).so).
9929         (LDFLAGS-c.so): New variable.
9930
9931         * resolv/res_init.c (res_init): Don't clobber _res.options with
9932         RES_DEFAULT.  If RES_INIT is clear, OR in RES_DEFAULT.
9933
9934         * hurd/hurd.h: Declare _hurd_startup.
9935         * hurd/hurdstartup.c: New file.
9936         * hurd/Makefile (routines): Add hurdstartup.
9937
9938 Thu Apr 20 22:23:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9939
9940         * hurd/hurdsig.c: Use assert_perror for many calls which should
9941         never fail and previously were not checked.
9942
9943         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
9944         Point the return address for sigreturn's frame at a "hlt" insn so
9945         it will definitely crash if sigreturn returns.
9946
9947 Wed Apr 19 18:40:11 1995  Brendan Kehoe  (brendan@zen.org)
9948
9949         * time/tzset.c (__tzname, __daylight, __timezone): Don't check
9950         HAVE_WEAK_SYMBOLS for doing weak_alias.
9951
9952 Wed Apr 19 18:12:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9953
9954         * configure.in: Move $os tests to set $elf et al earlier, before
9955         construction of $sysnames.  Instead of prepending MACHINE/elf to
9956         $sysnames, append &/elf after each elt appended to $mach.
9957
9958 Tue Apr 18 14:00:19 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
9959
9960         * configure.in (libc_cv_asm_global_directive): New check to define
9961         ASM_GLOBAL_DIRECTIVE.
9962         * config.h.in: Add #undef ASM_GLOBAL_DIRECTIVE.
9963         * libc-symbols.h (strong_alias_asm, strong_alias): Use
9964         ASM_GLOBAL_DIRECTIVE on the alias.
9965
9966         * sysdeps/unix/make_errlist.c (main): Don't generate "#ifdef
9967         HAVE_WEAK_SYMBOLS" #defns.
9968
9969 Mon Apr 17 12:02:49 1995  Brendan Kehoe  (brendan@zen.org)
9970
9971         * sysdeps/alpha/strlen.c (strlen): Fix cmpbge insn, and returning
9972         of the byte that was zero, so we return a valid number.
9973
9974 Sun Apr 16 03:23:09 1995  Brendan Kehoe  (brendan@zen.org)
9975
9976         * sysdeps/unix/bsd/ultrix4/mips/sysdep.h: New file defining
9977         NO_UNDERSCORES then using sysdeps/unix/mips/sysdep.h.
9978
9979 Fri Apr 14 18:49:03 1995  Brendan Kehoe  (brendan@zen.org)
9980
9981         * sysdeps/ieee754/mpn2dbl.c (__mpn_construct_double)
9982         [BITS_PER_MP_LIMB == 64]: Refer to `u', not to non-existent `i'.
9983         * sysdeps/ieee754/mpn2ldbl.c (__mpn_construct_long_double)
9984         [BITS_PER_MP_LIMB == 64]: Likewise.
9985
9986         * sysdeps/unix/bsd/osf/alpha/killpg.S (killpg): Add .end directive.
9987         * sysdeps/unix/bsd/osf/alpha/sigblock.S (__sigblock): Likewise.
9988         * sysdeps/unix/bsd/osf/alpha/sigsetmask.S (__sigsetmask): Likewise.
9989         * sysdeps/unix/bsd/osf/alpha/sigpause.S (__sigpause): Likewise.
9990         * sysdeps/unix/bsd/osf/alpha/sigvec.S (__sigvec): Likewise.
9991         * sysdeps/unix/bsd/osf/alpha/getdents.S (__getdirentries): Likewise.
9992         * sysdeps/unix/bsd/osf/alpha/fork.S (__fork): Likewise.
9993         * sysdeps/unix/bsd/osf/alpha/pipe.S (__pipe): Likewise.
9994         * sysdeps/unix/bsd/osf/alpha/recv.S (recv): Likewise.
9995         * sysdeps/unix/bsd/osf/alpha/send.S (send): Likewise.
9996         * sysdeps/unix/bsd/osf/alpha/vhangup.S (vhangup): Likewise.
9997
9998         * sysdeps/unix/mips/brk.S (__brk, __curbrk): Add .end directive.
9999         * sysdeps/unix/mips/fork.S (fork): Likewise.
10000         * sysdeps/unix/mips/pipe.S (fork): Likewise.
10001         * sysdeps/unix/mips/sigreturn.S (__sigreturn): Likewise.
10002         * sysdeps/unix/mips/sysdep.S (sysdep_error): Likewise.
10003         * sysdeps/unix/mips/wait.S (__handler): Likewise.
10004         * sysdeps/mips/setjmp.S (__sigsetjmp): Likewise.
10005         * sysdeps/mips/bsd-setjmp.S (setjmp): Likewise.
10006         * sysdeps/unix/bsd/ultrix4/getsysinfo.S (getsysinfo): Likewise.
10007         * sysdeps/unix/bsd/ultrix4/wait3.S (waitpid): Likewise.
10008         * sysdeps/unix/bsd/ultrix4/waitpid.S (waitpid): Likewise.
10009         * sysdeps/unix/bsd/ultrix4/mips/__handler.S (__handler): Likewise.
10010         * sysdeps/unix/bsd/ultrix4/mips/sigvec.S (__raw_sigvec): Likewise.
10011         * sysdeps/unix/bsd/ultrix4/mips/start.S (__start): Likewise.
10012         * sysdeps/unix/bsd/ultrix4/mips/vfork.S (vfork): Likewise.
10013         * sysdeps/mips/bsd-_setjmp.S (setjmp): Likewise.  Use `$0'
10014         instead of `zero' for the li instruction.
10015
10016         * sysdeps/unix/bsd/osf/alpha/start.S: Change comments to be
10017         preprocessor comments, not assembler comments.
10018         * sysdeps/unix/bsd/osf/alpha/brk.S: Likewise.
10019         * sysdeps/unix/bsd/osf/alpha/sysdep.h (NO_UNDERSCORES): Define.
10020
10021 Fri Apr 14 15:53:46 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10022
10023         * malloc/malloc.c (register_heapinfo) [__GNUC__]: Use __inline__
10024         in place of inline.
10025
10026 Thu Apr 13 09:45:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10027
10028         * Makefile (distribute): Add ChangeLog.[0-9].
10029
10030         * configure.in: Add check for .set directive.
10031         * config.h.in: Add #undef HAVE_ASM_SET_DIRECTIVE.
10032         * libc-symbols.h [! HAVE_ASM_SET_DIRECTIVE] (strong_alias,
10033         strong_alias_asm): Use `foo = bar' syntax instead.
10034
10035         * Makerules [! subdir] (O%-lib): Don't prepend ../.
10036
10037         * sysdeps/generic/expm1.c: #undef expm1 before weak_alias.
10038
10039         * configure.in: Fix AC_ARG_WITH uses; check for --with-fp.  Move
10040         $host_os checks to set gnu_ld/as and elf before sysdirs
10041         generation.  Fix $with_fp test.
10042         [$elf=yes]: Prepend MACHINE/elf directory.
10043
10044         * elf/libelf.h (elf_hash): Use XOR instead of ANDN when the bits
10045         being cleared are already known to be set.  Thanks Ulrich.
10046
10047 Wed Apr 12 23:27:22 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10048
10049         * posix/environ.c: Add weak alias `_environ'.
10050
10051 Tue Apr 11 20:38:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10052
10053         * sysdeps/i386/add_n.S [PIC]: Use self-call to avoid generating reloc.
10054         * sysdeps/i386/sub_n.S [PIC]: Likewise.
10055
10056 Mon Apr 10 14:53:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10057
10058         * libc-symbols.h (_elf_set_element) [PIC]: Don't make the element
10059         word `const'.
10060
10061         * Makeconfig (CPPFLAGS, CFLAGS): Fix swapped references to
10062         $(foo-$(suffix $@)).
10063
10064         * manual/Makefile (chapters-incl): Filter out summary.texi.
10065
10066         * stdlib/strtod.c (STRTOF): Use extra macro to make STRTOF's #defn
10067         a weak symbol instead of literal "STRTOF".
10068
10069         * locale/setlocale.c: Work around ld bug: don't weakify refs to
10070         _nl_{current,C}_*.
10071
10072 Sun Apr  9 01:24:33 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10073
10074         * Makerules (+depfiles): Translate %.so to %.o in $(extra-objs).
10075
10076         * malloc/free.c [emacs] (__malloc_safe_bcopy): Define to safe_bcopy.
10077         * malloc/realloc.c (__malloc_safe_bcopy): Undefine before defining.
10078
10079         * malloc/free.c (memmove, __malloc_safe_bcopy): Do include these
10080         #ifdef emacs, but only #ifndef memmove.
10081         * malloc/realloc.c [emacs] (__malloc_safe_bcopy): Just #define to
10082         safe_bcopy.
10083         (memmove): Define only if undefined.
10084
10085 Sat Apr  8 00:40:59 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10086
10087         * extra-lib.mk (install-lib, extra-objs, alltypes-$(lib)): Make
10088         sure these are simply-expanded variables.
10089
10090         * locale/loadlocale.c (_nl_load_locale): Use MAP_INHERIT flag in
10091         mmap call.
10092
10093         * configure.in (os=freebsd*|bsdi*): Set base_os=unix/bsd/bsd4.4
10094         for these too.
10095
10096         * sysdeps/unix/sysv/tcsetattr.c: Use |= instead of = to properly
10097         set c_oflag value.
10098
10099         * Makeconfig [! objpfx] (csu-objpfx): Add trailing slash.
10100
10101         * locale/Makefile (categories): Uncomment collate.
10102         * locale/lc-collate.c: New file.
10103
10104         * malloc/free.c (__malloc_safe_bcopy, memmove): Don't define
10105         #ifdef emacs.
10106         * malloc/realloc.c: Likewise.
10107
10108         * stdio/_itoa.h (_EXTERN_INLINE): Define if undefined.
10109         (_itoa): Use it in defn.
10110         * stdio/_itoa.c (_EXTERN_INLINE): Define to empty before #include
10111         "_itoa.h".
10112         (_itoa): Function removed.
10113
10114         * malloc/free.c: Remove use of `assert'.
10115
10116         * malloc/realloc.c [! emacs] (safe_bcopy): Renamed to
10117         __malloc_safe_bcopy; #define safe_bcopy.
10118         * malloc/free.c: Cope with systems lacking `memmove'.
10119         (_free_internal): Cast result of _malloc_internal.
10120
10121 Wed Apr  5 00:13:45 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10122
10123         * hurd/hurdinline.c: Include signal.h first, so we don't define
10124         its inlines too.
10125
10126         * sysdeps/unix/sysv/sysv4/sigset.h (__sigfillset): Use ~0L instead
10127         of -1 to avoid compiler warning.
10128
10129         * configure.in (host_os=linux*): Set elf=yes for this, not just
10130         linux*elf*.
10131
10132         * misc/login_tty.c [! TIOCSCTTY]: Try an emulation using ttyname
10133         and open.
10134
10135         * sysdeps/i386/bsd-_setjmp.S: Fix typo in name: setjmp -> _setjmp.
10136
10137 Tue Apr  4 00:48:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10138
10139         * sysdeps/unix/start.c: Remove spurious decl and #endif.
10140
10141         * misc/progname.c (program_invocation_name,
10142         program_invocation_short_name): Make these initialized data
10143         definitions.
10144
10145         * sysdeps/mach/hurd/setitimer.c (fork_itimer): Add self reference
10146         so gcc doesn't optimize out the function entirely.
10147
10148 Sun Apr  2 13:13:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10149
10150         * posix/execvp.c: Don't use stat to search path; just try execv
10151         until it works.
10152
10153         * sysdeps/mach/hurd/i386/trampoline.c: Add a link to
10154         SS->active_resources, so that _hurdsig_longjmp_from_handler will
10155         be called when a longjmp unwinds the signal frame.
10156         * sysdeps/mach/hurd/i386/sigreturn.c: Remove the link on the
10157         SS->active_resources chain added by _hurd_setup_sighandler.
10158         * hurd/sigunwind.c: New file.
10159         * hurd/Makefile (sig): Add sigunwind.
10160
10161         * Makerules (lib%.so: lib%_pic.a): Remove dir name from $*.
10162
10163         * MakeTAGS (tags-sources): Include $(all-dist).
10164         [subdir] (all-dist): Define to $(distribute).
10165
10166 Sat Apr  1 00:08:06 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10167
10168         * Makerules (lib%.so: lib%_pic.a): Pass -L options for subdir and
10169         parent objdirs.
10170
10171         * extra-lib.mk (object-suffixes-$(lib)): New variable, produced by
10172         filtering out $($(lib)-inhibit-o); use that instead of
10173         $(object-suffixes) in all the other variables.
10174
10175         * locale/loadlocale.c (_nl_load_locale) [MAP_FILE]: Define it zero
10176         if undefined.
10177
10178         * string/strxfrm.c: Just copy the string (for now).
10179         * string/strcoll.c: Just call strcmp (for now).
10180
10181         * mach/Makefile (lock): Add mutex-init.
10182         * mach/mutex-solid.c (_cthread_mutex_lock_routine,
10183         _cthread_mutex_unlock_routine): Variables removed.
10184         (__mutex_lock_solid, __mutex_unlock_solid): Don't use them; just stub.
10185         (__mutex_init): Function moved to new file mutex-init.c.
10186         * mach/mutex-init.c: New file, broken out of mutex-solid.c.
10187
10188 Thu Mar 30 20:43:02 1995  Brendan Kehoe  <brendan@zen.org>
10189
10190         * sysdeps/mips/__longjmp.c (__longjmp): Take out CONST.
10191         * sysdeps/alpha/__longjmp.c (__longjmp): Take out const.
10192
10193 Thu Mar 30 01:38:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10194
10195         * elf/elf.h (STN_UNDEF): New macro (distinct from SHN_UNDEF, though
10196         both are zero).
10197
10198 Wed Mar 29 11:26:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10199
10200         * elf/dlfcn.h: New file.
10201
10202         * Make-dist (README): Commit it to CVS if there is a CVS directory.
10203
10204         More changes from Germano Caronni <caronni@tik.ethz.ch>:
10205         * malloc/free.c: Relocate _heapinfo when that allows us to return
10206         core to the system.
10207
10208         * malloc/malloc.c: Move #include <errno.h> outside #ifndef
10209         _MALLOC_INTERNAL.
10210
10211 Mon Mar 27 02:23:15 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10212
10213         * mach/Makefile (headers): Add mach/mach_traps.h.
10214
10215         * Makerules ($(installed-libcs) rule): Fix typos.
10216
10217         * sysdeps/unix/bsd/bsd4.4/revoke.S: New file.
10218         * sysdeps/stub/revoke.c: New file.
10219         * misc/Makefile (routines): Add revoke.
10220         * posix/unistd.h [__USE_BSD] (revoke): Declare it.
10221         * sysdeps/generic/pty.c (openpty, forkpty): Declare return types.
10222         (forkpty): Declare login_tty.
10223         * misc/logwtmp.c (logwtmp): Declare to return void.
10224         * misc/login_tty.c (login_tty): Include unistd.h.  Declare return type.
10225
10226         * posix/unistd.h [__USE_BSD] (ttyslot): Declare it.
10227
10228         * posix/unistd.h [__USE_BSD] (L_SET, L_INCR, L_XTND): Define
10229         unless L_SET already defined.
10230         * misc/sys/file.h (L_SET, L_INCR, L_XTND): Don't define if L_SET
10231         already defined.
10232
10233         Incorporated -lutil library from 4.4-Lite.
10234         * misc/Makefile (extra-libs, libutil-routines): New variables.
10235         * misc/login.c, misc/login_tty.c, misc/logout.c, misc/logwtmp.c,
10236         sysdeps/generic/pty.c: New files for -lutil incorporated from 4.4-Lite.
10237
10238         Support simple, light-weight unwind-protect mechanism for longjmp.
10239         * setjmp/longjmp.c: Call _longjmp_unwind first thing.
10240         * sysdeps/mach/hurd/jmp-unwind.c: New file.
10241         * sysdeps/stub/jmp-unwind.c: New file.
10242         * sysdeps/i386/jmp_buf.h (_JMPBUF_UNWINDS): New macro.
10243         * sysdeps/mips/jmp_buf.h (_JMPBUF_UNWINDS): New macro.
10244         * setjmp/Makefile (routines): Add jmp-unwind.
10245         * hurd/hurd/userlink.h (struct hurd_userlink): Move `next' and
10246         `prevp' members into new substructure `resource'; add another such
10247         substructure `thread' and members `cleanup' (function ptr) and
10248         `cleanup_data' (generic ptr).
10249         (_hurd_userlink_link, _hurd_userlink_unlink): Insert/remove LINK
10250         into the `_hurd_self_sigstate ()->active_resources' list via the
10251         `thread' substructure.
10252         * hurd/hurd/port.h (_hurd_port_cleanup): Declare it.
10253         (_hurd_port_locked_get): Set LINK->cleanup to _hurd_port_cleanup and
10254         LINK->cleanup_data' to the port extracted.
10255         * hurd/hurd/signal.h (struct hurd_sigstate): New member
10256         `active_resources'.
10257         * hurd/port-cleanup.c: New file.
10258         * hurd/Makefile (routines): Add port-cleanup.
10259
10260         * malloc/malloc.c: Include errno.h.
10261
10262 Sat Mar 25 18:24:21 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10263
10264         * locale/loadlocale.c (_nl_load_locale): Avoid */ inside comment.
10265
10266 Fri Mar 24 02:35:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10267
10268         * misc/Makefile (headers): Add utmp.h.
10269         * misc/utmp.h: New file, incorporated from 4.4-Lite.
10270
10271         * stdio/printf-parse.h: New file, mostly written by drepper.
10272         * stdio/vfprintf.c: Rewritten, mostly by drepper.
10273         * stdio/printf-prs.c: Rewritten.
10274         * stdio/Makefile (distribute): Add printf-parse.h.
10275
10276 Thu Mar 23 22:03:44 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10277
10278         * sysdeps/unix/start.c [! NO_UNDERSCORES]: Don't declare _start
10279         with asm name.  Just do a ".set start, __start".
10280
10281         * malloc/realloc.c: Call _free_internal instead of free.
10282
10283 Tue Mar 21 00:14:27 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10284
10285         * locale/loadlocale.c (_nl_load_locale): If LOCALE/LC_* is a
10286         directory, open LOCALE/LC_*/SYS_LC_* instead.
10287
10288 Mon Mar 20 03:19:23 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10289
10290         * stdio/fpioconst.c, stdio/fpioconst.h, stdio/gmp-impl.h,
10291         stdio/gmp.h, stdio/longlong.h, stdio/mp_clz_tab.c,
10292         stdio/gen-mpn-copy: Files moved to stdlib.
10293         * stdio/Makefile: All mpn stuff moved to stdlib/Makefile.
10294         * stdlib/Makefile: All the mpn stuff moved here from stdio/Makefile.
10295         * stdio/printf_fp.c: Use ../stdlib to find fpioconst.h and gmp
10296         headers.
10297         * stdlib/strtod.c: Don't use ../stdio to find fpioconst.h and gmp
10298         headers.
10299
10300         * Makefile (parent-mostlyclean): Don't use $(libc.a).
10301         (parent-clean): Use $(objpfx) to find sysd-*.
10302         * Rules (generated): Append dummy.o dummy.c.
10303         * Makerules (lib): Depend on lib-noranlib.
10304         (lib-noranlib): Depend on $(install-lib) in objdir.
10305         (common-mostlyclean): Remove $(install-lib) and stub-$(subdir)
10306         from objdir.  Don't remove TAGS; it comes in the distribution.
10307
10308         * malloc/malloc.c (morecore): Save errno around call to
10309         _realloc_internal.  Don't account for the additional new blocks of
10310         the info table itself when choosing the new table size for the
10311         first crack; if it succeeds, the new blocks will have been found
10312         in existing free space already described by the existing info
10313         table.
10314
10315         * stdio/vfscanf.c (%n): Use READ_IN - 1, so as not to count the
10316         read-ahead character.
10317
10318 Sat Mar 18 14:07:08 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10319
10320         * hurd/dtable.c, hurd/getdport.c, hurd/hurd.h, hurd/hurdexec.c,
10321           hurd/hurdinit.c, hurd/hurdprio.c, hurd/hurdsock.c,
10322           hurd/ports-get.c, hurd/ports-set.c, hurd/setauth.c,
10323           hurd/setuids.c, sysdeps/mach/hurd/i386/trampoline.c:
10324         Get anal with unsigned to pacify compiler.
10325
10326         * stdio/vfscanf.c: Grok positional parameter specs (i.e. %3$d
10327         means %d from 3rd arg).
10328
10329         * sysdeps/mach/hurd/closedir.c: Include hurd/fd.h.
10330
10331         * stdlib/strtol.c: If !GROUP, set END to null.  In loop, test only
10332         END, not GROUP.
10333
10334 Fri Mar 17 12:58:37 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10335
10336         * Makefile (subdirs): Put elf last.
10337
10338         * sunrpc/Makefile (install-lib): Variable removed.
10339         (rpcsvc-objs): Variable removed.
10340         (extra-objs): Don't include $(rpcsvc-objs).
10341         (extra-libs): New variable, contains librpcsvc.
10342         (librpcsvc-routines): New variable.
10343         (librpcsvc-inhibit-o): New variable, contains .so.
10344         (omit-deps): Set this to $(librpcsvc-routines).
10345         ($(objpfx)rpcgen): Don't use $(libc.a).
10346         (lib, $(objpfx)librpcsvc.a): Targets removed.
10347
10348         * o-iterator.mk, extra-lib.mk: New files.
10349         * Makerules (o-iterator): New variable.
10350         [extra-libs]: Include extra-lib.mk to generate rules for each word
10351         of $(extra-libs).
10352         * Makefile (distribute): Add extra-lib.mk, o-iterator.mk.
10353
10354 Fri Mar 17 13:28:04 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
10355
10356         * sysdeps/ieee754/ldbl2mpn.c (__mpn_extract_long_double):
10357         Handle 80-bit denormalized numbers correctly.
10358
10359         * stdlib/strtod.c, stdlib/strtof.c, stdlib/strtold.c:
10360         (IMPLICIT_ONE, *_MAX_10_EXP_LOG): Macros removed; no longer needed.
10361         * stdlib/strtod.c (RETURN): Add parentheses around return value.
10362         (round_and_return): Correct handling of denormalized numbers.
10363
10364         * stdio/fpioconst.c, stdio/fpioconst.h: Don't use
10365         LDBL_MAX_10_EXP_LOG; LAST_POW10 defines the maximal available
10366         exponent.
10367
10368 Thu Mar 16 00:04:41 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10369
10370         * locale/C-ctype.c: New correct data generated by drepper.
10371
10372         * Rules: Don't use $(libc.a).
10373
10374         Parsing of grouped numbers contributed by Ulrich Drepper.
10375         * stdlib/strtol.c (__strtol_internal): Renamed from strtol.  Take
10376         new flag arg; if nonzero, parse locale-dependent thousands
10377         grouping and interpret only the prefix that is correctly grouped.
10378         (strtol): Define this to call _strtol_internal with zero for the flag.
10379         Use a weak symbol for the definition.
10380         * stdlib/strtod.c (strtod, __strtod_internal): Likewise.
10381         Check for the exponent of the number overflowing the float format.
10382         * stdlib/stdlib.h (__strtof, __strtold): Declarations removed.
10383         (__strto{f,d,ld,l,ul,q,uq}_internal): Declare these functions.
10384         [__OPTIMIZE__]: Define inline functions calling those.
10385         * stdlib/strtold.c (STRTOF): Set to strtold, not __strtold.
10386         (strtold): Remove weak alias.
10387         * stdlib/strtof.c (STRTOF): Set to strtof, not __strtof.
10388         (strtof): Remove weak alias.
10389         * stdlib/grouping.h: New file, written by drepper.
10390         * stdlib/Makefile (distribute): Add grouping.h.
10391         * stdio/vfscanf.c: Grok %' modifier to numeric conversions.  Call
10392         __strtoX_internal with the grouping flag set iff the modifier is
10393         present.
10394
10395 Wed Mar 15 00:40:54 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10396
10397         * sysdeps/generic/memchr.c: Fix typos: limit.h -> limits.h.
10398
10399         * mach/Machrules: Produce static deps for all object flavors.
10400         [interface-library]: Remove all these variables and rules.
10401         ($(interface-library)-routines): Define this variable.
10402         (extra-libs): Append $(interface-library) to this.
10403         * mach/Makefile (interface-library): Omit .a suffix.
10404         * hurd/Makefile: Likewise.
10405
10406 Tue Mar 14 23:40:31 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10407
10408         * stdio/internals.c (flushbuf): If !FLUSH_ONLY, don't skip out
10409         early if no new data in buffer after priming.
10410
10411 Mon Mar 13 01:48:16 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10412
10413         * Makerules (object-suffixes, libtypes): Move all these variables
10414         to Makeconfig.
10415         * Makeconfig (object-suffixes, libtypes): Moved here from Makerules.
10416
10417         * Makerules (build-extra-lib): New canned sequence.
10418
10419         * sysdeps/mach/hurd/euidaccess.c: Include fcntl.h.  Declare ERR;
10420         fix uses of FILE and PORT.  Remove bogus weak alias for `access'.
10421
10422         * sysdeps/mach/hurd/dirfd.c: Include hurd/fd.h and errno.h.
10423         Add missing semicolon.
10424         * sysdeps/mach/hurd/opendir.c: Include hurd/fd.h.  Use a `struct
10425         hurd_fd *' temp var, since DIRP->__fd is a `void *'.
10426         * sysdeps/mach/hurd/readdir.c: Include hurd/fd.h.
10427
10428         * stdlib/wcstombs.c: #if 0 out code for non-ASCII chars until the
10429         locale data format is implemented.
10430
10431         * sysdeps/mach/hurd/i386/trampoline.c (_hurd_setup_sighandler):
10432         Pass &__sigreturn on the stack to the trampoline code, so it is
10433         not position-dependent.
10434
10435         * stdio/printf_fp.c (NDEBUG): Define this to disable assert.
10436         Don't include <stdarg.h>.
10437         (__printf_fp): Last arg ARGS is now `const void **const';
10438         dereference ARGS[0] instead of using va_arg.
10439
10440         * locale/setlocale.c: In LC_ALL case, initialize CATEGORY before
10441         loop to install data.
10442
10443         * locale/loadlocale.c (_nl_category_num_items): Use _NL_ITEM_INDEX
10444         to extract number from item code.
10445         (_nl_load_locale): Close the descriptor when finished.
10446
10447         * malloc/realloc.c (_realloc_internal): Call _malloc_internal in
10448         place of malloc.
10449
10450         * time/tzfile.c (__tzfile_default): Initialize RULE_STDOFF to zero.
10451
10452         * stdio/printf_fp.c (group_number): Cast *GROUPING to unsigned int
10453         to avoid warning.
10454         * sysdeps/generic/sigset.h (__SIGSETFN): Cast result of sizeof to
10455         int to avoid warning.
10456
10457         Support building several flavors of objects and libraries.
10458         * Makerules (libtypes, object-suffixes): New variables.
10459         (libtype.*, CFLAGS-*, CPPFLAGS-*): New variables for each object
10460         suffix.
10461         (CFLAGS, CPPFLAGS): Append $(C{,CPP}FLAGS-$(suffix $@)).
10462         (%.so, %.po, %.go): New compilation rules for %.S, %.s, %.c.
10463         (close-check-inhibit-asm): Append a semicolon.
10464         (sysd-rules): Generate rules for each object suffix.
10465         (compile.S, compile.c): Always assume gcc.
10466         (OUTPUT_OPTION): Define unconditionally.
10467         (+make-deps): In generated rule, produce a dependent for each
10468         object suffix.
10469         (.SUFFIXES): Add $(object-suffixes) in place of .o.
10470         (.PRECIOUS): Make all suffix flavors precious.
10471         ($(libc.a)): Target removed.
10472         (lib): Depend on each enabled libtype.
10473         (libobjs, objects, objs): Depend on all the enabled object flavors.
10474         (lib%.a): New pattern rule.
10475         [$(build-shared)=yes] (lib%.so: lib%_pic.a): New pattern rule.
10476         (stamp-$(subdir)): Rewritten to a pattern rule for stamp.%-$(subdir)
10477         to make one for each flavor; library dep rule likewise rewritten.
10478         ($(libc.a)(__.SYMDEF)): Target replaced with one target for each
10479         flavor.
10480         (symdef.%): New pattern rule; helper for __.SYMDEF targets.
10481         (installed-libcs): New variable.
10482         (install): Depend on that instead of
10483         $(libdir)/lib$(libprefix)$(libc-name).a;
10484         that file's rule rewritten to make each enabled libtype.
10485         (install-lib.so): New variable, filters lib%.so from $(install-lib).
10486         (install-lib): Filter out lib%.so after setting install-lib.so.
10487         [$(build-shared)=yes] (install): Install $(install-lib.so).
10488         (common-mostlyclean): Remove all flavors of objects.
10489         * Makefile ($(libc.a)(__.SYMDEF)): Target removed.
10490         [$(build-shared)=yes] (lib): Depend on $(common-objpfx)libc.so.
10491
10492 Sun Mar 12 18:21:10 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10493
10494         * sysdeps/stub/ulimit.c: Don't include gnu-stabs.h.
10495         * sysdeps/stub/pause.c: Likewise.
10496         * sysdeps/stub/time.c: Likewise.
10497
10498         * stdlib/mbtowc.c: #if 0 out code for non-ASCII chars until the
10499         locale data format is implemented.
10500         * stdlib/wctomb.c: Likewise.
10501
10502         * mach/Makefile ($(objpfx)errsystems.c): Reenable this rule; the
10503         gcc bug is fixed.
10504         * mach/errsystems.c: File removed.
10505
10506         * Makeconfig (libc.a): Variable removed.
10507         (+link): Don't use it.
10508
10509         * configure.in (AC_ARG_ENABLE calls): Use $enableval instead of
10510         assuming `yes'.
10511
10512         * malloc/malloc.h (_malloc_internal, _realloc_internal): Declare these.
10513         * malloc/realloc.c (_realloc_internal): Renamed from realloc;
10514         don't use __realloc_hook.
10515         (realloc): New function; call __realloc_hook ?: _realloc_internal.
10516         * malloc/malloc.c (_malloc_internal): Renamed from malloc;
10517         don't use __malloc_hook.
10518         (malloc): New function; call __malloc_hook ?: _malloc_internal.
10519         Changes from Germano Caronni <caronni@tik.ethz.ch>:
10520         (initialize): Set up _heaplimit to cover the _heapinfo table.
10521         (morecore_recursing): New static variable.
10522         (morecore): If that is set, return null immediately.
10523         When growing the info table, before getting new core from the
10524         system for it, set morecore_recursing and try moving _heapinfo
10525         with _realloc_internal.  When that fails and we get new core, set
10526         _heaplimit to cover the core for the new _heapinfo table.
10527         (register_heapinfo): New function.  Record the _heapinfo table's
10528         own blocks in that table and in the statistics variables.
10529         (initialize, _malloc_internal): Use it after allocating new table.
10530
10531 Fri Mar 10 22:26:28 1995  Jim Meyering  (meyering@comco.com)
10532
10533         * sysdeps/generic/memchr.c: Remove ansidecl.h and clean up for use
10534         by other packages.
10535         [LONG_MAX <= LONG_MAX_32_BITS]: Don't compile 64-bit code.
10536
10537 Fri Mar 10 13:31:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10538
10539         * mach/errorlib.h (errors): Use const for decl.
10540
10541         * time/tzfile.c (uc2ul, _uc2ul): Macros removed.
10542         (decode): New inline function; decode signed 32-bit integers, and
10543         sign-extend properly when long is longer than 32 bits.
10544         (__tzfile_read): Changed all uses of uc2ul to decode.
10545         Decode the transition times properly when sizeof (time_t) > 4.
10546
10547         * stdio/printf.h: Doc fixes.  Don't #include <stddef.h>.
10548         (printf_function): Make last arg ARGS a vector of pointers instead of a
10549         pointer to va_list.
10550
10551 Fri Mar 10 13:46:25 1995  Ulrich Drepper  <drepper@ipd.info.uni-karlsruhe.de>
10552
10553         * stdio/vfprintf.c [USE_IN_LIBIO] (PAD): Use return value of _IO_padn.
10554         (buffered_vfprintf): Remove line buffer when flush failed.
10555
10556 Fri Mar 10 00:04:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10557
10558         * time/tzfile.c (struct ttinfo): New member `isgmt'.
10559         (__tzfile_read): Read isgmt flags for each type.
10560         (__tzfile_default): When using TZDEFRULES DST rules, adjust
10561         transition times according to the isstd and isgmt flags for the
10562         types of each transition, and adjust each transition to point to
10563         type index either 0 or 1.  Reset type indices 0 and 1 to describe
10564         the user's settings.
10565
10566 Thu Mar  9 22:29:03 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10567
10568         * locale/categories.def (LC_CTYPE): Merge CLASS_EB and CLASS_EL
10569         into just CLASS.  Add standard/optional flag to all items.
10570
10571         * locale/localeinfo.h (_NL_CURRENT_DEFINE): Fix typo.
10572
10573         * ctype/ctype.h [__BYTE_ORDER == __LITTLE_ENDIAN] (_ISbit):
10574         Rearrange defn to satisfy compiler.
10575
10576         * locale/localeinfo.h: Declare _nl_current.
10577
10578         * configure.in: Use AC_CHECK_TOOL for CC, AR, RANLIB.  Accept args
10579         --enable-shared, --enable-profile, --enable-omitfp; pass settings
10580         through to config.make.
10581         * config.make.in (build-shared, build-profile, build-omitfp): New
10582         config vars.
10583
10584         * elf/elf.h (STN_UNDEF): Renamed to SHN_UNDEF (typo).
10585         (DT_NUM): New macro.
10586
10587         * locale/nl_langinfo.c: Include errno.h and stddef.h.  Fix typos.
10588
10589         * locale/lc-ctype.c (_nl_postload_ctype): Fix macro insanity.
10590
10591         * locale/loadlocale.c (_nl_load_locale) [! MAP_COPY]: Define
10592         MAP_COPY to MAP_PRIVATE.
10593
10594 Thu Mar  9 17:16:53 1995  Brendan Kehoe  (brendan@zen.org)
10595
10596         * sysdeps/alpha/divrem.m4: Undefine `ret' to avoid the definition
10597         that's used inside the alpha sysdep.h.
10598
10599         * sysdeps/alpha/__longjmp.c (__longjmp): Remove obsolete __NORETURN
10600         keyword.
10601         * sysdeps/alpha/__math.h (__copysign): Remove obsolete __CONSTVALUE.
10602
10603         * configure.in: Match `osf*', not `osf1*'.
10604         * configure: Likewise.
10605         * sysdeps/unix/bsd/osf: Renamed from `sysdeps/unix/bsd/osf1'.
10606
10607 Wed Mar  8 13:38:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10608
10609         * posix/glob/configure.bat: Fixes from DJ.
10610
10611         * time/backward, time/europe, time/northamerica, time/pacificnew,
10612         time/zdump.c, time/zic.c, time/tzfile.h, time/private.h,
10613         time/ialloc.c: Code and data updated from ADO's 95b.
10614         * time/emkdir.c: File removed.
10615         * time/Makefile (distribute, extra-objs, zic): Omit it.
10616
10617         * time/localtime.c: Deansideclized.  Never #define __tzname et al
10618         to non-__ names.
10619
10620         * locale/lc-ctype.c (__ctype_tolower, __ctype_toupper): Use int *
10621         instead of short int *.
10622         * ctype/ctype-info.c: Likewise.
10623         * ctype/ctype.h: Likewise.
10624
10625         * locale/langinfo.h (_NL_CTYPE_CLASS): Use this (just one) instead
10626         of EB and EL versions.
10627
10628 Mon Mar  6 12:34:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10629
10630         * ctype/ctype.h (_ISbit): New macro, defined dependent on byte order.
10631         (_IS* enum): Use _ISbit to produce values.
10632
10633 Sun Mar  5 19:40:13 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10634
10635         * locale/localeinfo.h: Rewritten for new locale system, using
10636         locale data files and with <langinfo.h> interface.
10637         * locale/setlocale.c: Rewritten to use locale data files.
10638         * langinfo.h: New file.
10639         * locale/langinfo.h: New file.
10640         * locale/nl_langinfo.c: New file.
10641         * locale/loadlocale.c: New file.
10642         * locale/lc-ctype.c: New file.
10643         * locale/lc-messages.c: New file.
10644         * locale/lc-monetary.c: New file.
10645         * locale/lc-numeric.c: New file.
10646         * locale/lc-time.c: New file.
10647         * locale/categories.def: New file.
10648         * locale/Makefile (headers): Remove localeinfo.h.
10649         (distribute): New variable; put localeinfo.h here, and categories.def.
10650         (routines): Add loadlocale.
10651         (categories): New variable.
10652         (aux): Use that to get C-category and lc-category.
10653         * ctype/ctype.h (_IS*): Use independent bits for all but _ISalnum.
10654         * ctype/ctype-info.c: For initial tables, use
10655         _nl_C_LC_CTYPE_{class,toupper,tolower} constant tables defined in
10656         locale/C-ctype.c.
10657         * locale/C-ctype.c, locale/C-messages.c: New files.
10658         * locale/C-monetary.c, locale/C-numeric.c, locale/C-time.c:
10659         Default "C" locale data updated for new locale system.
10660         * locale/C-collate.c: File removed.
10661         * locale/C-ctype_ct.c: File removed.
10662         * locale/C-ctype_mb.c: File removed.
10663         * locale/C-response.c: File removed.
10664         * locale/localeconv.c: Use _NL_CURRENT macro to access locale data.
10665         * stdio/printf_fp.c, stdio/vfprintf.c, stdio/vfscanf.c,
10666           stdlib/strtod.c, time/asctime.c, time/strftime.c:
10667         Include ../locale/localeinfo.h and use _NL_CURRENT macro to access
10668         locale data.
10669         * time/localtime.c: Don't include <localeinfo.h>.
10670         * time/tzset.c: Don't use locale items for default TZ value or
10671         "GMT" string (use "UTC").
10672
10673         * stdio/vfprintf.c [USE_IN_LIBIO] (PAD): Only call the function if
10674         WIDTH>0; update DONE.
10675
10676         * malloc/malloc.c (morecore): Fix last change to calculate by
10677         blocks instead of bytes.
10678
10679 Fri Mar  3 12:24:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10680
10681         * sysdeps/generic/sys/mman.h (__mmap, __munmap): Declare these.
10682         * sysdeps/unix/sysv/irix4/sys/mman.h: Likewise.
10683         * sysdeps/unix/bsd/ultrix4/sys/mman.h: Likewise.
10684         * sysdeps/unix/bsd/osf1/sys/mman.h: Likewise.
10685         * sysdeps/unix/bsd/sun/sunos4/sys/mman.h: Likewise.
10686         * sysdeps/stub/munmap.c (munmap): Rename to __munmap, add weak
10687         alias munmap.
10688         * sysdeps/unix/mman/munmap.S: Likewise.
10689         * sysdeps/mach/munmap.c: Likewise.
10690         * sysdeps/mach/hurd/mmap.c (mmap): Rename to __mmap, add weak
10691         alias mmap.
10692         * sysdeps/unix/mman/mmap.S: Likewise.
10693         * sysdeps/unix/bsd/sun/sunos4/mmap.c: Likewise.
10694         * sysdeps/stub/mmap.c: Likewise.
10695
10696         * sysdeps/unix/bsd/setsid.c: Use __getpgid instead of __getpgrp.
10697
10698         * sysdeps/unix/dirfd.c: #undef dirfd before function defn.
10699
10700 Thu Mar  2 12:15:24 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10701
10702         * misc/search.h: Add missing semicolon.
10703
10704         * sysdeps/unix/dirfd.c: Fix typo.
10705
10706         * sysdeps/generic/sys/mman.h (mmap): Use __off_t instead of off_t
10707         in decl.
10708
10709         * stdio/vfscanf.c (%c): In no-assign case, fix loop to decrement
10710         WIDTH before test.
10711
10712 Wed Mar  1 00:57:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10713
10714         * stdlib/strtod.c: Fixes from drepper.
10715         [IMPLICIT_ONE]: New macro, one for IEEE754 formats.
10716         * stdlib/strtold.c [IMPLICIT_ONE]: New macro, 0.
10717         * stdlib/strtof.c [IMPLICIT_ONE]: New macro, 1.
10718
10719         * stdio/vfprintf.c: Correctly notice Z modifier.
10720
10721         * misc/search.h: New file.
10722         * misc/Makefile (headers): Add search.h.
10723         * misc/insremque.c: Include search.h.
10724         (struct qelem): Type removed.
10725
10726 Mon Feb 27 07:00:57 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10727
10728         * elf/libelf.h: New file.
10729         * elf/elf_hash.c: New file.
10730
10731 Sun Feb 26 15:51:00 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10732
10733         Changes from Germano Caronni <caronni@tik.ethz.ch>:
10734         * malloc/malloc.c (morecore): Account in NEWSIZE for the
10735         malloc_info structures for each new block.
10736
10737 Sat Feb 25 02:17:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10738
10739         * sysdeps/mach/hurd/kill.c: When the process has no message port
10740         registered and we have its task port, translate a few signals to
10741         task_suspend/task_resume/task_terminate.
10742
10743 Fri Feb 24 14:40:48 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10744
10745         * io/Makefile (routines): Add euidaccess.
10746         * sysdeps/mach/hurd/euidaccess.c: New file.
10747         * sysdeps/stub/euidaccess.c: New file.
10748         * posix/unistd.h [__USE_GNU] (euidaccess): Declare it.
10749
10750         * dirent/Makefile (routines): Add dirfd.
10751         * sysdeps/stub/dirfd.c: New file.
10752         * sysdeps/unix/dirfd.c: New file.
10753         * sysdeps/unix/dirstream.h (_DIR_dirfd): New macro.
10754         * dirent/dirent.h (dirfd): Declare new function.  Define as macro
10755         _DIR_dirfd if that is defined.
10756         * sysdeps/mach/hurd/dirstream.h (DIR): Replace `__port' member
10757         with `void *__fd'.
10758         * sysdeps/mach/hurd/opendir.c: Use DIRP->__fd instead of DIRP->__port.
10759         Open the file with `open'; set FD_CLOEXEC on the fd.
10760         * sysdeps/mach/hurd/closedir.c: Likewise.
10761         * sysdeps/mach/hurd/readdir.c: Likewise.
10762         * sysdeps/mach/hurd/dirfd.c: New file.
10763
10764         * posix/Makefile (glob/configure): Do cvs commit if there is a CVS
10765         directory.
10766         (glob/ChangeLog): Likewise.
10767
10768         * locale/locale.h (LC_*): Use small integers instead of bit masks.
10769
10770         * stdio/bug4.c: Put temporary files in /tmp.
10771         * stdio/bug3.c: Likewise.
10772         * stdio/bug5.c: Likewise.
10773         * stdio/test-fseek.c: Likewise.
10774         * stdio/test-popen.c: Likewise.
10775
10776 Wed Feb 22 00:44:41 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10777
10778         * posix/glob/configure.in: Put AC_ISC_POSIX before AC_CONST.
10779
10780         * libc-symbols.h (weak_symbol): New macro.
10781
10782         * hurd/hurdsig.c (_hurd_internal_post_signal): Ignore preempter
10783         elts with null handlers.
10784
10785         * sysdeps/mach/hurd/i386/sigreturn.c: Restore the FPU state.
10786
10787 Tue Feb 21 21:53:30 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10788
10789         * stdlib/random.c (__srandom): Change algorithm used to populate
10790         the state array.
10791         (randtbl): Recomputed with new algorithm.
10792
10793         * sysdeps/sparc/Makefile [subdir=crypt] (crypt): Reset only if set
10794         to original value of `crypt'.
10795         * sysdeps/unix/sysv/sysv4/solaris2/sparc/Makefile [subdir=crypt]
10796         (crypt): New variable, set to crypt.solar.
10797
10798 Tue Feb 21 11:50:37 1995  Brendan Kehoe  (brendan@zen.org)
10799
10800         * sysdeps/sparc/Makefile (routines): Reference `dotmul', not `mul'.
10801
10802         * config.h.in: Put comment around ^L to pacify Solaris as here too.
10803
10804 Tue Feb 21 00:10:50 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10805
10806         * string/Makefile (distribute): Add pagecopy.h.
10807         * sysdeps/mach/pagecopy.h: New file.
10808         * sysdeps/generic/pagecopy.h: New file.
10809         * sysdeps/generic/memcpy.c: Include pagecopy.h; call
10810         PAGE_COPY_FWD_MAYBE first when word aligned.
10811         * sysdeps/generic/memmove.c: Likewise.
10812
10813         * misc/bsd-compat.c (longjmp, setjmp): Functions removed.
10814         (getpgrp): Call __getpgid instead of __getpgrp.
10815
10816         * Makefile (subdirs): Add elf first.
10817         * elf/Makefile: New file.
10818         * elf/elf.h: New file.
10819
10820         * sysdeps/unix/start.c (errno): Only define if it's not #define'd
10821         as a macro.
10822         [! NO_UNDERSCORES]: Define `start' as a weak alias, not a symbol
10823         indirection.
10824
10825         * csu/Makefile (crtstuff): New variable consolidates crti, crtn;
10826         add crti_s, crtn_s.
10827         (install-lib, extra-objs, generated-, omit-deps): Use that.
10828         (initfini): New canned sequence, broken out of crt[in].s rule.
10829         (crt[in].s rule): Use it.
10830         (crt[in]_s.s): New rule.
10831         * csu/initfini.c (GLOBAL): New macro; define it to empty if undefined.
10832         (_init, _fini): Use GLOBAL as storage class.
10833         Add self reference to avoid GCC optimizing out the functions.
10834
10835         * Makefile (headers): Remove $(stddef.h).
10836         * Makeconfig (stddef.h): Variable removed; now require gcc version
10837         >= 2.2.
10838         * stddef.h: File removed.
10839
10840 Mon Feb 20 19:42:31 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10841
10842         * sysdeps/unix/bsd/ultrix4/mips/start.S: Remove `__environ'
10843         definition.
10844         * sysdeps/unix/bsd/osf1/alpha/start.S: Likewise.
10845
10846         * stdlib/strtod.c: Allow the string to start with a decimal point
10847         without a leading zero.
10848
10849 Mon Feb 20 04:04:57 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
10850
10851         * Makefile (subdirs): Put csu first.
10852
10853         * sysdeps/mach/hurd/start.c: Include unistd.h for __environ decl.
10854
10855         * Makeconfig [elf=yes] (+preinit, +postinit): New variables, set
10856         to crt[in].o.
10857         (csu-objpfx): New variable.
10858         (+link): Use it to find start.o and $(+preinit), $(+postinit).
10859
10860         * Rules (subdir_lib, all): Depend on objs.
10861
10862         * config.h.in [HAVE_ELF || HAVE_GNU_LD]: Define HAVE_WEAK_SYMBOLS.
10863
10864         * stdlib/strtod.c (PASTE, PASTE1): New helper macros; use these in
10865         access to float.h macros.
10866
10867         * misc/efgcvt.c: New file.
10868         * misc/Makefile (routines): Add efgcvt.
10869
10870 Sun Feb 19 20:10:43 1995  Brendan Kehoe  <brendan@zen.org>
10871
10872         * sysdeps/sparc/mul.S: Renamed to `dotmul.S'.
10873         * sysdeps/sparc/Makefile (routines): Reference `dotmul.S', not `mul.S',
10874         to avoid a misreference that would override sysdeps/generic/mul.c.
10875         * sysdeps/sparc/Dist: Likewise.
10876
10877 Sun Feb 19 17:46:13 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
10878
10879         * posix/Makefile (aux): Add environ.
10880         * posix/environ.c: New file.
10881         * sysdeps/unix/sparc/start.c: Remove __environ definition.
10882         * sysdeps/unix/start.c: Likewise.
10883         * sysdeps/unix/sysv/irix4/start.c: Likewise.
10884         * sysdeps/mach/hurd/start.c: Likewise.
10885         * sysdeps/mach/start.c: Likewise.
10886         * sysdeps/stub/start.c: Likewise.
10887
10888         * sysdeps/unix/make_errlist.c: In produced program, test
10889         HAVE_WEAK_SYMBOLS instead of HAVE_GNU_LD.
10890         * sysdeps/unix/sysv/sysv4/dup2.c: Fix #include of renamed file.
10891         Remove extra weak alias.
10892
10893         * sysdeps/unix/sysv/sysv4/sigaltstack.S: Fix unsquashed file name
10894         in #include.
10895
10896         * libc-symbols.h: Put comment around ^L to pacify Solaris as.
10897
10898         * sysdeps/posix/Makefile (cded-objdir-includes): New variable
10899         replaced cded-objdir-CPPFLAGS; transform $(+includes) instead of
10900         $(CPPFLAGS).
10901         (mk-stdiolim): Use it instead.
10902
10903 Fri Feb 17 12:16:27 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
10904
10905         * mach/mach_init.c (__vm_page_size): Make it initialized.  It does
10906         not work to make a weak alias to a bss symbol.
10907
10908         * stdio/Makefile (distribute): Remove mpn-copy.mk; add gen-mpn-copy.
10909         (tests): Add test-fwrite.
10910         * stdio/test-fwrite.c: New file.
10911
10912         * stdlib/stdlib.h [__USE_GNU]: Declare strtof, strtold, __strtof,
10913         __strtold.
10914
10915         * Makefile (autoconf-it): New canned sequence.  Do cvs commit if
10916         there is a CVS directory.
10917         (configure, %/configure): Use $(autoconf-it) for cmds.
10918         * Make-dist: Likewise.
10919         * sysdeps/mach/hurd/Makefile (errlist.c, errnos.h): Do cvs commit
10920         if there is a CVS directory.
10921         * sysdeps/sparc/Makefile (divrem output): Likewise.
10922         * sysdeps/alpha/Makefile (divrem output): Likewise.
10923         * Makerules ($(gpl2lgpl)): Likewise.
10924
10925         * Makerules (rule to install lib%.a from $(install-lib)): Fix
10926         patsubst to elide ranlib for $(non-lib.a).
10927
10928         * stdio/tst-printf.c: Enable FP tests.  Add some new tests from rfg.
10929
10930 Thu Feb 16 04:06:06 1995  Roland McGrath  <roland@duality.gnu.ai.mit.edu>
10931
10932         * sysdeps/mach/hurd/mig-reply.c: Add weak aliases to non-__ names.
10933         * mach/mig-dealloc.c: Add weak alias mig_deallocate.
10934
10935 Wed Feb 15 13:34:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10936
10937         * hurd/hurd/signal.h (HURD_MSGPORT_RPC): Take new arg
10938         DEALLOC_REFPORT; deallocate the refport after use only if it
10939         evaluates to nonzero.
10940         * sysdeps/mach/hurd/kill.c: Pass DEALLOC_REFPORT arg of one.
10941         * hurd/hurdkill.c: Pass DEALLOC_REFPORT arg of zero.
10942
10943         * hurd/hurdsig.c (abort_rpcs): Take new arg int *STATE_CHANGE; set
10944         *STATE_CHANGE to indicate whether or not we changed *STATE and it
10945         should be committed to the thread.
10946         (abort_all_rpcs): Take new arg LIVE; if nonzero and abort_rpcs changes
10947         state for a thread, do thread_set_state on that thread.  Don't use
10948         SS->intr_port for collecting reply ports, it is not safe to
10949         clobber that when suspending; instead, alloca a temporary array.
10950         (_hurd_internal_post_signal): Pass LIVE flag to abort_all_rpcs:
10951         zero when dying, one when suspending.  Pass new arg to abort_rpcs.
10952
10953         * sysdeps/mach/hurd/stdio_init.c: Don't lock the file descriptor;
10954         HURD_FD_PORT_USE will.  Don't use critical sections around
10955         HURD_FD_PORT_USE invocations.
10956
10957         * sysdeps/mach/hurd/stdio_init.c: Don't make pipes/FIFOs unbuffered.
10958         * sysdeps/posix/stdio_init.c: Likewise.
10959
10960 Tue Feb 14 03:01:12 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10961
10962         * hurd/hurd/fd.h (_hurd_fd_get): Don't do critical section
10963         locking; don't leave the descriptor locked on return.
10964         (HURD_FD_PORT_USE): Don't expect _hurd_fd_get to return the fd locked.
10965         Use a critical section around locking the descriptor.
10966         Check for an empty descriptor and return EBADF.
10967         * sysdeps/mach/hurd/dup2.c: Likewise.
10968         * sysdeps/mach/hurd/fcntl.c: Likewise.
10969         Use HURD_FD_PORT_USE macro for RPCs.
10970         * sysdeps/mach/hurd/sysd-stdio.c: Don't lock the descriptor before
10971         using HURD_FD_PORT_USE.
10972         * sysdeps/mach/hurd/defs.c (init_stdio): Don't expect _hurd_fd_get
10973         to lock the descriptor.
10974         * sysdeps/mach/hurd/stdio_init.c: Use critical sections while
10975         locking the descriptor.
10976         * sysdeps/mach/hurd/fdopen.c: Likewise.
10977         * hurd/fd-close.c: Likewise.
10978         Don't expect the descriptor to be locked on entry.
10979         Check for empty descriptor and return EBADF.
10980
10981         Factor ctty RPC code for SIGTTIN/SIGTTOU generation out into
10982         new functions _hurd_ctty_input and _hurd_ctty_output, each
10983         called with (io_t port, io_t ctty, error_t (*rpc) (io_t)).
10984         * hurd/ctty-input.c: New file.
10985         * hurd/ctty-output.c: New file.
10986         * hurd/Makefile (dtable): Add ctty-input and ctty-output.
10987         * hurd/fd-read.c: Use _hurd_ctty_input.
10988         * hurd/fd-write.c: Use _hurd_ctty_output.
10989         * sysdeps/mach/hurd/ioctl.c: Likewise.
10990         * hurd/hurd/fd.h (_hurd_ctty_input, _hurd_ctty_output): Declare them.
10991
10992 Mon Feb 13 11:36:12 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
10993
10994         * stdio/vfscanf.c (%e, %f, %g): Use strtod, __strtold, or __strtof
10995         as appropriate to the type.
10996
10997         * sysdeps/ieee754/huge_val.h (__huge_val_t): New macro to avoid
10998         repeating the union.
10999         (HUGE_VAL, __huge_val): Use it.
11000         [__USE_GNU] (HUGE_VALf, HUGE_VALl): New macros, along with
11001         analogous macros to HUGE_VAL's: __huge_val[fl]_t, __HUGE_VAL[fl]_bytes.
11002         * stdlib/strtold.c (FLOAT_HUGE_VAL): Define this to HUGE_VALl.
11003         (STRTOF): Set to __strtold; define strtold as weak alias.
11004         * stdlib/strtof.c (FLOAT_HUGE_VAL): Define this to HUGE_VALf.
11005         (STRTOF): Set to __strtof; define strtof as weak alias.
11006
11007         * sysdeps/ieee754/ieee754.h (union ieee754_float): New type.
11008         (IEEE754_FLOAT_BIAS): New macro.
11009
11010         * sysdeps/ieee754/mpn2ldbl.c: Fix typos.
11011
11012         * stdlib/testmb.c: Add tests from rfg for using normal chars as
11013         multibyte chars.
11014
11015         * hurd/hurdmalloc.c (malloc_init): Add self reference to avoid not
11016         only the `defined but not used' warning, but also to avoid GCC
11017         optimizing out the entire function (!).
11018
11019         * stdlib/wctomb.c: Include ctype.h.
11020
11021         * Makerules (install-lib-non.a): Don't include $(non-lib.a).
11022
11023         * hurd/hurdmalloc.c: Include string.h; #define bcopy using memcpy.
11024
11025 Sat Feb 11 04:05:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11026
11027         * stdio/printf_fp.c: Include "fpioconst.h".
11028         (_tens_p): Table moved to fpioconst.c, renamed to _fpioconst_pow10.
11029         (__printf_fp): All references changed.
11030         Don't bother computing THOUSANDS_SEP if GROUPING is empty.
11031         (group_number): Use memmove instead of memcpy, since operands overlap.
11032         * stdio/fpioconst.c: New file, tables broken out of stdio/printf_fp.c.
11033         * stdio/fpioconst.h: New file, header declaring the table data.
11034         * stdio/Makefile (aux): Add fpioconst.
11035         (distribute): Add fpioconst.h.
11036         * stdlib/strtod.c: Complete rewrite from drepper.
11037         * stdlib/strtof.c: New file.
11038         * stdlib/strtold.c: New file.
11039         * stdlib/Makefile (routines): Add strtof, strtold.
11040         * stdio/Makefile (routines): Add mpn2flt, mpn2dbl, mpn2ldbl.
11041         * sysdeps/stub/mpn2flt.c: New file.
11042         * sysdeps/stub/mpn2dbl.c: New file.
11043         * sysdeps/stub/mpn2ldbl.c: New file.
11044         * sysdeps/ieee754/mpn2flt.c: New file.
11045         * sysdeps/ieee754/mpn2dbl.c: New file.
11046         * sysdeps/ieee754/mpn2ldbl.c: New file.
11047
11048         * Makerules (install-lib.a): Don't filter out $(non-lib.a).
11049         ($(install-lib.a) in $(libdir) rule): Elide ranlib command when $@
11050         appears in $(non-lib.a).
11051
11052 Fri Feb 10 17:20:14 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11053
11054         * stdlib/wctomb.c: A normal ASCII character translates to itself.
11055         * stdlib/mbtowc.c: Likewise.
11056
11057 Thu Feb  9 03:55:55 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11058
11059         * setjmp/setjmp.h (longjmp, _longjmp, __longjmp, siglongjmp):
11060         Remove `const' from prototypes.
11061         * sysdeps/m68k/__longjmp.c: Likewise.
11062         * setjmp/longjmp.c: Likewise.
11063         * sysdeps/i386/__longjmp.c: Likewise.
11064
11065         * sysdeps/posix/tempname.c: Increment *IDX at beginning of loop,
11066         so when we return a name, it is incremented past the value that
11067         produces that same name.
11068
11069         * stdio/fgets.c (fgets): Change `size_t' to `int' in prototype.  Sigh.
11070         * stdio/stdio.h (fgets): Likewise.
11071
11072         * stdio/vfprintf.c (printf_unknown): Print ' for INFO->group flag.
11073
11074         * hurd/fd-write.c: Don't clobber ERR with the msg_sig_post call
11075         when it's EBACKGROUND; we need to notice that it is EBACKGROUND
11076         and retry the RPC.
11077         * hurd/fd-read.c: Likewise.
11078
11079 Wed Feb  8 05:01:11 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11080
11081         * sysdeps/mach/sysdep.h (FATAL_PREPARE_INCLUDE): New macro, set to
11082         <mach/mig_support.h>.
11083         * assert/assert-perr.c [FATAL_PREPARE_INCLUDE]: Include it.
11084         * assert/assert.c: Likewise.
11085         * sysdeps/posix/libc_fatal.c: Likewise.
11086
11087 Tue Feb  7 12:17:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11088
11089         * stdio/stdio.h [__STRICT_ANSI__] (stdin, stdout, stderr): Define
11090         as macros, to satisfy ANSI pedants.
11091
11092         * stdio/internals.c (flushbuf): When there is no new data after
11093         priming the stream, return without writing out the buffer.
11094         * stdio/Makefile (tests): Add bug7.
11095         * stdio/bug7.c: New file.
11096
11097         * io/sys/stat.h (S_IFIFO, S_IFLNK, S_IFSOCK, S_ISFIFO, S_ISLNK,
11098         S_ISSOCK): Define only if the corresponding underlying __S_IF* macro
11099         is defined.
11100
11101         * stdio/getdelim.c: Decrement COPY after getting a char from __fillbf.
11102
11103         * stdio/Makefile (tests): Add errnobug.
11104         * stdio/errnobug.c: New file.
11105
11106         * mach/mig_strncpy.c: Include string.h.
11107
11108         * sysdeps/mach/sysdep.h: Don't #include <mach/mig_support.h>.  Its
11109         inlines cause trouble for files defining global register variables.
11110
11111         * stdio/vfprintf.c: Use _strerror_internal for %m.
11112
11113         * sysdeps/ieee754/dbl2mpn.c: Fixes from drepper for 64-bit limbs.
11114
11115         * stdio/printf.h (struct printf_info): New member `group', for %' flag.
11116         * stdio/printf-prs.c (parse_printf_format): Grok %' flag and set flag.
11117         * stdio/vfprintf.c (group_number): New function.
11118         (vfprintf): Support %' flag for integer formats, by calling
11119         group_number after formatting the number in WORK.
11120         * stdio/printf_fp.c (guess_grouping, group_number): New functions.
11121         (__printf_fp): Implement `group' flag using them.
11122
11123         * Makefile (include sysd-dirs): Protect with ifndef avoid-generated.
11124         (parent-clean): Remove sysd-rules, not sysdirs.
11125         (distclean): Pass avoid-generated=yes to submake.
11126         (distclean-1): Remove $(sysdep-$(distclean-1)).
11127
11128         * Makerules (objects, objs): Depend on $(extra-objs) too.
11129         (include sysd-Makefile): Protect with ifndef avoid-generated.
11130
11131         * Makeconfig (+defines, +gnu-stabs, gnu-as): Variables removed.
11132         (CPPFLAGS): Use $(defines) in place of $(+defines).
11133         Replace -D_LIBC with -include $(..)libc-symbols.h.
11134
11135         * stdio/freopen.c: Set seen bit before calling fclose.
11136
11137 Mon Feb  6 18:34:40 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11138
11139         * sysdeps/mach/hurd/setpriority.c: Keep track of numbers of
11140         successes and each kind of failure.  Return EPERM or EACCES only
11141         if every task failed that way.
11142
11143         * sysdeps/mach/hurd/getpriority.c: Handle out of band buffers
11144         correctly.
11145
11146         * sysdeps/mach/hurd/ptrace.c (PTRACE_ATTACH, PTRACE_DETACH): Stop
11147         or resume the process after frobbing.
11148
11149         * hurd/hurdsig.c: Use spin lock operations on sigstate locks
11150         throughout.
11151         (_hurd_thread_sigstate): Don't lock the sigstate lock.
11152         (_hurd_internal_post_signal): New subfunction `mark_pending'; replace
11153         repeated sequences with calls to it.  Don't expect the sigstate
11154         lock to be held on entry; lock it just before examining sigaction.
11155         In handler case, check SS->critical_section after calling
11156         abort_rpcs; if set, mark the signal pending and resume the thread.
11157         * hurd/hurd/signal.h (_hurd_self_sigstate_unlocked): Function removed.
11158         (_hurd_self_sigstate): Don't lock the sigstate lock.
11159         (HURD_EINTR_RPC): Call _hurd_self_sigstate instead of
11160         _hurd_self_sigstate_unlocked.
11161         * hurd/msgportdemux.c: Don't expect _hurd_self_sigstate to lock
11162         the sigstate lock.
11163         * hurd/hurdexec.c: Use spin lock operations on sigstate lock.
11164         Don't expect _hurd_self_sigstate to lock it.  Fix critical section
11165         locking.
11166         * hurd/hurd-raise.c: Likewise.
11167         * sysdeps/mach/hurd/sigsuspend.c: Likewise.
11168         * sysdeps/mach/hurd/sigpending.c: Likewise.
11169         * sysdeps/mach/hurd/sigaltstack.c: Likewise.
11170         * sysdeps/mach/hurd/sigaction.c: Likewise.
11171         * sysdeps/mach/hurd/sigprocmask.c: Likewise.
11172         * hurd/fd-write.c: Likewise.
11173         * hurd/fd-read.c: Likewise.
11174         * sysdeps/mach/hurd/ioctl.c: Likewise.
11175         * sysdeps/mach/hurd/fork.c: Likewise.
11176         * sysdeps/mach/hurd/i386/sigreturn.c: Likewise.
11177         * sysdeps/mach/hurd/mips/sigreturn.c: Likewise.
11178         * sysdeps/mach/hurd/alpha/sigreturn.c: Likewise.
11179         * hurd/hurdmsg.c (get_int): Likewise.
11180
11181         * stdio/vfprintf.c: Include stddef.h.  Fix typos in libio code.
11182
11183         * stdio/vfprintf.c (__pad): Function renamed to __printf_pad, made
11184         global.
11185         (PAD): Caller changed.
11186         * stdio/printf_fp.c (__pad): Function removed.
11187         (PAD): Use __printf_pad instead.
11188
11189 Sun Feb  5 17:59:53 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11190
11191         Merged new FP printer by Ulrich Drepper.
11192         * stdio/printf_fp.c: Rewrite by drepper.
11193         * stdio/Makefile (routines): Add ldbl2mpn.
11194         * sysdeps/ieee754/ieee754.h (union ieee754_double): Add `ieee_nan'
11195         member.
11196         (union ieee854_long_double): New type, from drepper.
11197         (IEEE754_DOUBLE_BIAS, IEEE854_LONG_DOUBLE_BIAS): New macros.
11198         * sysdeps/ieee754/ldbl2mpn.c: New file, by drepper.
11199         * sysdeps/stub/ldbl2mpn.c: New file.
11200         * math/Makefile (routines): Add isinfl and isnanl.
11201         * sysdeps/ieee754/isinfl.c: New file.
11202         * sysdeps/stub/isinfl.c: New file.
11203         * sysdeps/ieee754/isnanl.c: New file.
11204         * sysdeps/stub/isnanl.c: New file.
11205
11206         * malloc/malloc.c (__malloc_extra_blocks): New variable.
11207         (malloc): When getting more core, get __malloc_extra_blocks extra;
11208         put the new block at the end of the free list and let the next loop
11209         iteration use the initial portion of it.
11210         * malloc/free.c (_free_internal): Account for twice
11211         __malloc_extra_blocks in deciding if we have so much extra memory
11212         we should return it to the system.
11213         * malloc/malloc.h (__malloc_extra_blocks): Declare it.
11214         * posix/glob.c (prefix_array, glob_pattern_p): Remove gratuitous
11215         const in parameter decl.
11216
11217         * sysdeps/unix/mips/sysdep.h (ENTRY): Add `.ent' directive.
11218
11219 Fri Feb  3 18:15:52 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11220
11221         * munch.awk (EXTERNS): Print decls using __P instead of EXFUN.
11222
11223         * sysdeps/mips/setjmp_aux.c: Use ENV[0].__jmpbuf[0].
11224         * sysdeps/mips/bsd-_setjmp.S: Use `li' insn instead of `move'.
11225         * sysdeps/mips/bsd-setjmp.S: Likewise.
11226         * sysdeps/mips/__longjmp.c: Remove obsolete __NORETURN keyword.
11227         * sysdeps/mach/hurd/mips/trampoline.c (_hurd_setup_sighandler):
11228         Use `long int' for sigcode.  Use explicit register numbers instead
11229         of names.
11230         (_hurdsig_rcv_interrupted_p): Use _hurdsig_catch_fault.
11231         * sysdeps/mach/hurd/mips/exc2signal.c: Use `long int' for sigcode.
11232
11233 Thu Feb  2 20:06:45 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11234
11235         * hurd/hurdmalloc.c: Remove bogus bcopy decl.
11236
11237         * mach/mig_strncpy.c: Add missing `const' in prototype.  Rewritten
11238         using __stpncpy.
11239
11240         * io/ftw.c (ftw, ftw_dir): Treat ENOENT from stat like EACCES.
11241
11242         * stdio/vfprintf.c: Set PREC to zero for %. without following digit.
11243
11244 Tue Jan 31 13:49:57 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11245
11246         * mach/mig_strncpy.c: Include mach.h instead of string.h.  Use
11247         vm_size_t instead of size_t for arg and return types.
11248
11249         * mach/mach_init.c: Don't declare __mig_init; mach/mig_support.h
11250         already does.
11251
11252 Mon Jan 30 00:33:35 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11253
11254         * set-hooks.h (RUN_HOOK): Dereference PTR properly.
11255
11256         * configure.in (friendly stddef.h check): Write override defn for
11257         `stddef.h' Make variable.
11258         (AC_LINK_FILES): Use `echo ...` to avoid " " appearing nonempty.
11259
11260         * configure.in (host_os=sysv4*|solaris2*): Set elf=yes.
11261
11262         * Rules ($(objpfx)dummy.o): Write an empty function, not just an
11263         empty file.
11264
11265         * sysdeps/sparc/Makefile (sysdep-realclean): New variable.
11266
11267 Sat Jan 28 03:38:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11268
11269         * Makefile (distribute): Remove gnu-stabs.h; add libc-symbols.h.
11270
11271         * sysdeps/mach/sysdep.h [ASSEMBLER]: Protect include of
11272         mach/machine/syscall_sw.h with this.
11273
11274 Fri Jan 27 18:33:20 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11275
11276         * hurd/hurd/signal.h: Include <hurd/msg.h>, and <spin-lock.h>
11277         instead of <lock-intern.h>.
11278         (struct hurd_sigstate): Member `lock' changed to a `spin_lock_t'.
11279         (_hurd_critical_section_lock): Use spin lock operators.
11280         Don't hold the sigstate lock, unlock it after setting the flag.
11281         (_hurd_critical_section_unlock): Take the sigstate lock
11282         to clear the flag; while holding it, check pending signals.  After
11283         unlocking, sig_post ourselves if there were pending signals.
11284
11285         * hurd/catch-exc.c (_S_catch_exception_raise): Don't take the
11286         sigstate lock.  If it is locked, clear SS->critical_section and
11287         SS->context, and unlock it.
11288
11289         * sysdeps/mach/sysdep.h (EXT, LEXT): New macros.
11290
11291         * set-init.c (__libc_init) [HAVE_ELF]: Run _init and atexit (_fini).
11292         * munch-tmpl.c: Likewise.
11293
11294         * mach/Makefile (routines): Don't filter out syscall_% from
11295         $(mach-syscalls).
11296
11297 Fri Jan 27 17:53:49 1995  Jim Meyering  (meyering@comco.com)
11298
11299         * posix/fnmatch.c: Declare errno if it's not defined.
11300         That's simpler than testing #if !defined(__GNU_LIBRARY__)
11301         && !defined(STDC_HEADERS).
11302
11303 Fri Jan 27 15:40:29 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11304
11305         * csu/Makefile: New file.
11306         * csu/initfini.c: New file.
11307         * Makefile (+other_dirs): Add csu.
11308         (+init): Variable renamed to libc-init.  All references changed.
11309         (aux): Remove start.
11310         (install-lib): Variable removed.
11311         (crt0.o, Mcrt1.o  crt1.o): Targets removed.
11312
11313         * mach/Machrules (static deps of RPC_*.o): Add $(..)libc-symbols.h
11314         and $(objpfx)config.h.
11315         (static deps of RPC alias *.o): Removed.
11316
11317         * sysdeps/unix/sysv/sysv4/solaris2/sparc/sysdep.h [ASSEMBLER]:
11318         Protect macros with this.
11319         * sysdeps/unix/bsd/osf1/alpha/sysdep.h: Likewise.
11320         * sysdeps/unix/bsd/sequent/i386/sysdep.h: Likewise.
11321         * sysdeps/unix/bsd/vax/sysdep.h: Likewise.
11322         * sysdeps/unix/bsd/sun/m68k/sysdep.h: Likewise.
11323         * sysdeps/unix/bsd/sony/newsos/m68k/sysdep.h: Likewise.
11324         * sysdeps/unix/mips/sysdep.h: Likewise.
11325
11326 Thu Jan 26 00:02:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11327
11328         * Makerules (compile.[Sc]): Match gcc in $(CC) better.
11329         (BUILD_CFLAGS): Instead of $(config-defines), use -include config.h.
11330
11331         * hurd/intr-rpc.awk: Emit weak alias.
11332
11333         * sysdeps/unix/bsd/sun/sunos4/wait4.c: Call getpgrp instead of
11334         __getpgrp.
11335
11336         * sysdeps/unix/bsd/hp/m68k/sysdep.h [ASSEMBLER]: Protect macros with
11337         this.
11338         * sysdeps/unix/i386/sysdep.h: Likewise.
11339         * sysdeps/unix/sparc/sysdep.h: Likewise.
11340
11341         * io/ftw.c: Avoid `ret' as variable name.
11342         * posix/glob.c: Likewise.
11343
11344         * ctype/ctype.h (_ISalpha): Define as its own bit.
11345         * locale/C-ctype_ct.c (__ctype_b_C): Set _ISalpha bit in all letters.
11346
11347         * stdlib/exit.c [HAVE_GNU_LD]: Protect #include "set-hooks.h" and
11348         DEFINE_HOOK with this.
11349
11350 Wed Jan 25 00:45:56 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11351
11352         * hurd/hurdinit.c: Use DECLARE_HOOK instead of `extern DEFINE_HOOK'.
11353         * mach/spin-solid.c (spin_lock_solid): Define as weak alias to __name.
11354         * mach/shortcut.awk: Emit weak alias.
11355         * mach/spin-lock.c: Add weak aliases for all spin-lock.h functions.
11356         * mach/mach_init.c (mach_init, vm_page_size): Defin weak aliases for
11357         __ names.
11358         * mach/Makefile (lock): Remove spin-syms.
11359         (routines): Remove __ names, vm_page_size, msgserver_t.
11360         ($(mach-syscalls) rule): Generate files without __, add weak alias.
11361         Remove symbol alias file rule.
11362         ($(mach-shortcuts) rule): Likewise.
11363         [!mach-shortcuts] (user-interfaces): Filter out mach/mach4 too.
11364         * mach/Machrules (if-calls.c): Variable and rule removed.
11365         (interface-headers): Don't add $($(if)-calls).
11366         (transform-user-stub): Define to add weak alias.
11367         * set-hooks.h: Use new libc-symbols.h set access macros.
11368         * time/Makefile (routines): Remove __ names.
11369         (aux): Variable removed.
11370         * hurd/Makefile: Likewise.
11371         * sysdeps/unix/start.c (environ): Define as weak alias for __environ.
11372         (data_start): Define as weak alias for __data_start.
11373         * sysdeps/mach/hurd/start.c: Likewise.
11374         * sysdeps/unix/sparc/start.c: Likewise.
11375         * sysdeps/unix/make_errlist.c: Emit weak aliases for sys_nerr and
11376         sys_errlist.
11377         * sysdeps/mach/hurd/errlist.awk: Likewise.
11378         * sysdeps/unix/bsd/osf1/alpha/start.S (environ): Define as weak
11379         alias for __environ.
11380         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
11381         * sysdeps/stub/setdomain.c: Use new stub_warning macro.
11382         * sysdeps/stub/getdomain.c: Likewise.
11383         * sysdeps/stub/vhangup.c: Likewise.
11384         * sysdeps/stub/swapon.c: Likewise.
11385         * sysdeps/stub/sendmsg.c: Likewise.
11386         * sysdeps/stub/recvmsg.c: Likewise.
11387         * sysdeps/stub/acct.c: Likewise.
11388         * sysdeps/stub/isinf.c: Likewise.  Add weak alias isinf for __isinf.
11389         * sysdeps/mach/hurd/_exit.c: Remove obsolete __NORETURN keyword.
11390         * sysdeps/posix/libc_fatal.c: Likewise.
11391         * sysdeps/i386/abort.c: Likewise.
11392         * sysdeps/i386/__longjmp.c: Likewise.
11393         * sysdeps/generic/make_siglist.c: Emit defn always for
11394         _sys_siglist.  Emit weak alias to sys_siglist.
11395         * sysdeps/generic/atan.c: Remove obsolete __CONSTVALUE keyword.
11396         * sysdeps/ieee754/log10.c: Likewise.
11397         * time/difftime.c: Likewise.
11398         * stdlib/random.c (srand): Define as weak alias for __srandom.
11399         * stdlib/exit.c: Remove obsolete __NORETURN keyword.  Use set-hooks
11400         macros for __libc_atexit.
11401         * stdlib/Makefile (routines): Remove __random, srand.
11402         * stdio/gets.c: Use new link_warning macro instead of old
11403         warn_references.
11404         * stdio/Makefile (routines): Remove __ names.
11405         (aux): Remove syms-stdio.
11406         * socket/Makefile (routines): Added e on getpeernam and getsocknam.
11407         * setjmp/longjmp.c: Remove obsolete __NORETURN keyword.
11408         * setjmp/Makefile (routines): Remove _longjmp, siglongjmp.
11409         * setjmp/setjmp.h: Replace __NORETURN keyword with __attribute__ uses.
11410         * stdio/stdio.h: Likewise.
11411         * misc/Makefile (routines): Remove __ names.
11412         (aux): Remove data_start.
11413         * sysdeps/mach/hurd/defs.c: Don't include gnu-stabs.h.
11414         * sysdeps/mach/hurd/brk.c: Likewise.
11415         * hurd/hurdid.c: Likewise.
11416         * hurd/hurdpid.c: Likewise.
11417         * hurd/openport.c: Likewise.
11418         * hurd/hurdsock.c: Likewise.
11419         * hurd/hurdsig.c: Likewise.
11420         * hurd/hurdrlimit.c: Likewise.
11421         * hurd/hurdmalloc.c: Likewise.
11422         * hurd/dtable.c: Likewise.
11423         * hurd/setauth.c: Likewise.
11424         * misc/progname.c: Likewise.
11425         * misc/init-misc.c: Likewise.
11426         * sysdeps/generic/vfork.c: Likewise.
11427         * sysdeps/unix/bsd/init-posix.c: Likewise.
11428         * math/math.h: Replace __CONSTVALUE keyword with __attribute__ uses.
11429         * time/time.h: Likewise.
11430         * math/Makefile (routines): Remove __ names.
11431         * io/Makefile: Likewise.
11432         * termios/Makefile: Likewise.
11433         * resource/Makefile: Likewise.
11434         * signal/Makefile: Likewise.
11435         * dirent/Makefile: Likewise.
11436         * assert/assert.h: Replace __NORETURN keyword with __attribute__
11437         uses.  Functions return void and macros deal with this.
11438         * assert/assert-perr.c: Remove obsolete __NORETURN keyword.
11439         Return void.  Don't include gnu-stabs.h.
11440         * assert/assert.c: Likewise.
11441         * posix/Makefile (routines): Remove __ names, setpgrp.  Add
11442         getpgid.
11443         (aux): Remove environ.
11444         * stdlib/stdlib.h (abort, exit): Replace __NORETURN keyword with
11445         __attribute__ use.
11446         * posix/unistd.h (_exit): Likewise.
11447         (__getpgrp, __setpgrp): Declarations removed.
11448         (__getpgid, getpid): Declare these.
11449
11450         * configure.in (host_os=gnuelf|linuxelf): Set elf=yes.  Do AC_SUBST
11451         for gnu_ld, gnu_as, elf, and weak.  Call AC_LINK_FILEES on
11452         $libc_link_{sources,dests}.
11453         * sysdeps/unix/configure.in: Remove __ from file names.  Don't
11454         create files, just add to libc_link_{dests,sources}.
11455
11456         * config.make.in (gnu-as, gnu-ld, elf, weak-symbols): New variables.
11457
11458         * config.h.in: Add #undefs used by sysdeps configures.
11459
11460         * sysdeps/unix/sysv/sysv4/Makefile (sysdep_routines): Removed
11461         __setpgid, __getpgid.
11462         * sysdeps/unix/sysv/sco3.2.4/setpgid.c: Included file was renamed
11463         from setpgrp.c.
11464         * sysdeps/unix/sysv/sco3.2.4/getpgid.c: Included file was renamed
11465         from __getpgrp.c.
11466         * sysdeps/unix/bsd/getpgrp.c: File removed.
11467         * sysdeps/generic/getpgrp.c: Moved from sysdeps/stub/getpgrp.c.
11468         Call __getpgid with zero.
11469         * sysdeps/stub/setpgid.c: Renamed __setpgrp to __setpgid, added
11470         weak aliases setpgid and setpgrp.
11471         * sysdeps/unix/sysv/irix4/setpgid.S: Likewise.
11472         * sysdeps/unix/common/setpgid.S: Likewise.
11473         * sysdeps/mach/hurd/setpgid.c: Likewise.
11474         * sysdeps/unix/sysv/sysv4/setpgid.c: Likewise.
11475         Use subcall 5 to __pgrpsys.
11476         * sysdeps/stub/getpgid.c: Renamed __getpgrp to __getpgid, added
11477         weak alias getpgid.
11478         * sysdeps/mach/hurd/getpgid.c: Likewise.
11479         * sysdeps/unix/sysv/irix4/getpgid.S: Likewise.
11480         * sysdeps/unix/common/getpgid.S: Likewise.
11481         * sysdeps/unix/sysv/sysv4/getpgid.c: Likewise.
11482         Use subcall 4 to __pgrpsys.
11483         * sysdeps/stub/__getpgrp.c: Renamed to getpgid.c.
11484         * sysdeps/unix/sysv/sysv4/__getpgrp.c: Renamed to getpgid.c.
11485         * sysdeps/unix/sysv/sco3.2.4/__getpgrp.c: Renamed to getpgid.c.
11486         * sysdeps/unix/sysv/irix4/__getpgrp.S: Renamed to getpgid.S.
11487         * sysdeps/unix/common/__getpgrp.S: Renamed to getpgid.S.
11488         * sysdeps/mach/hurd/__getpgrp.c: Renamed to getpgid.c.
11489         * sysdeps/stub/setpgrp.c: Renamed to setpgid.c.
11490         * sysdeps/unix/sysv/sysv4/setpgrp.c: Renamed to setpgid.c.
11491         * sysdeps/unix/sysv/sco3.2.4/setpgrp.c: Renamed to setpgid.c.
11492         * sysdeps/unix/sysv/irix4/setpgrp.S: Renamed to setpgid.S.
11493         * sysdeps/unix/common/setpgrp.S: Renamed to setpgid.S.
11494         * sysdeps/mach/hurd/setpgrp.c: Renamed to setpgid.c.
11495
11496         * sysdeps/unix/bsd/hp/m68k/getdents.S: Included file was renamed
11497         from __getdents.S.
11498
11499         * sysdeps/posix/defs.c: Don't include gnu-stabs.h.
11500         * sysdeps/stub/sigpending.c: Use new libc-symbols.h macro for stub
11501         warning.
11502         * sysdeps/stub/fexecve.c: Likewise.
11503         * sysdeps/stub/fchdir.c: Likewise.
11504         * sysdeps/stub/fchflags.c: Likewise.
11505         * sysdeps/stub/chflags.c: Likewise.
11506
11507         * sysdeps/m68k/__longjmp.c: Remove __NORETURN; it's obsolete.
11508         * sysdeps/generic/abort.c: Likewise.
11509         * sysdeps/ieee754/ldexp.c: Remove __CONSTVALUE; it's obsolete.
11510
11511         * hurd/hurdioctl.c: Include hurd/ioctl.h.
11512         (_hurd_ioctl_handler_lists): Define this set.
11513         (_hurd_lookup_ioctl_handler): New function.
11514         * hurd/hurd/fd.h: ioctl handler stuff moved to hurd/ioctl.h.
11515         * hurd/hurd/ioctl.h: New file, broken out of hurd/fd.h.
11516         (_hurd_lookup_ioctl_handler): Declare it.
11517         (ioctl_handler_t): New typedef.  Use it throughout.
11518         * sysdeps/mach/hurd/ioctl.c: Include hurd/ioctl.h.
11519         (_hurd_ioctl_handler_lists): Don't define.
11520         (__ioctl): Call _hurd_lookup_ioctl_handler.
11521
11522         * stdlib/strtol.c (maxquad): Make this const.
11523         [__GNUC__ == 2 && __GNUC_MINOR__ < 7]: Only use maxquad in this case.
11524
11525         * posix/glob/configure.in: Put AC_AIX and AC_MINIX early, before
11526         any compile tests.
11527
11528         * sysdeps/mach/hurd/setitimer.c (timer_thread): Call
11529         __msg_sig_post_request, not __sig_post_request.
11530
11531         * misc/getusersh.c: Renamed to getusershell.c.
11532         * sysdeps/stub/sethostnam.c: Renamed to sethostname.c.
11533         * sysdeps/unix/inet/sethostnam.S: Renamed to sethostname.S.
11534         * sysdeps/unix/sysv/sysv4/sethostnam.c: Renamed to sethostname.c.
11535         * sysdeps/mach/hurd/sethostnam.c: Renamed to sethostname.c.
11536
11537 Tue Jan 24 00:14:30 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11538
11539         * sysdeps/stub/settod.c: Renamed to settimeofday.c.
11540         * sysdeps/unix/bsd/settod.S: Renamed to settimeofday.c.
11541         * sysdeps/unix/sysv/settod.c: Renamed to settimeofday.c.
11542         * sysdeps/mach/hurd/settod.c: Renamed to settimeofday.c.
11543         * sysdeps/stub/setitmr.c: Renamed to setitimer.c.
11544         * sysdeps/unix/common/setitmr.S: Renamed to setitimer.S.
11545         * sysdeps/mach/hurd/setitmr.c: Renamed to setitimer.c.
11546         * sysdeps/posix/fpathcon.c: Renamed to fpathconf.c.
11547         * sysdeps/stub/fpathcon.c: Renamed to fpathconf.c.
11548         * sysdeps/unix/sysv/irix4/fpathcon.c: Renamed to fpathconf.c.
11549         * sysdeps/stub/getprio.c: Renamed to getpriority.c.
11550         * sysdeps/unix/sysv/irix4/getprio.c: Renamed to getpriority.c.
11551         * sysdeps/unix/common/getprio.S: Renamed to getpriority.S.
11552         * sysdeps/mach/hurd/getprio.c: Renamed to getpriority.c.
11553         * sysdeps/stub/setprio.c: Renamed to setpriority.c.
11554         * sysdeps/unix/sysv/irix4/setprio.c: Renamed to setpriority.c.
11555         * sysdeps/unix/common/setprio.S: Renamed to setpriority.S.
11556         * sysdeps/mach/hurd/setprio.c: Renamed to setpriority.c.
11557         * sysdeps/stub/getpeernam.c: Renamed to getpeername.c.
11558         * sysdeps/unix/inet/getpeernam.S: Renamed to getpeername.S.
11559         * sysdeps/unix/sysv/linux/getpeernam.S: Renamed to getpeername.S.
11560         * sysdeps/mach/hurd/getpeernam.c: Renamed to getpeername.c.
11561         * sysdeps/stub/getsocknam.c: Renamed to getsockname.c.
11562         * sysdeps/unix/inet/getsocknam.S: Renamed to getsockname.S.
11563         * sysdeps/unix/sysv/linux/getsocknam.S: Renamed to getsockname.S.
11564         * sysdeps/mach/hurd/getsocknam.c: Renamed to getsockname.c.
11565         * sysdeps/stub/sigaltstk.c: Renamed to sigaltstack.c.
11566         * sysdeps/unix/bsd/bsd4.4/sigaltstk.S: Renamed to sigaltstack.S.
11567         * sysdeps/unix/sysv/sysv4/sigaltstk.S: Renamed to sigaltstack.S.
11568         * sysdeps/mach/hurd/sigaltstk.c: Renamed to sigaltstack.c.
11569
11570         * sysdeps/mach/hurd/i386/sigreturn.c: Call __msg_sig_post instead
11571         of __sig_post.
11572         * sysdeps/mach/hurd/sigsuspend.c: Likewise.
11573         * sysdeps/mach/hurd/kill.c: Likewise.
11574         * sysdeps/mach/hurd/sigprocmask.c: Likewise.
11575
11576         * misc/sys/cdefs.h (__NORETURN, __CONSTVALUE): Macros removed.
11577         [!__GNUC__ || __GNUC__<2] (__attribute__): Define to empty.
11578
11579         * sysdeps/stub/remove.c: New file.
11580         * sysdeps/posix/remove.c: New file.
11581
11582 Mon Jan 23 03:26:09 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11583
11584         * time/mktime.c [weak_alias] (timelocal): Define as weak alias for
11585         mktime.
11586         * mach/mig_strncpy.c (mig_strncpy): Define as weak alias for
11587         __mig_strncpy.
11588         * mach/msg-destroy.c: Renamed from __msg_dest.c.
11589         (mach_msg_destroy): Define as weak alias for __mach_msg_destroy.
11590         * mach/setup-thread.c (mach_setup_thread): Define as weak alias.
11591         * time/tzset.c (tzname, daylight, timezone): Define as weak
11592         aliases for __ names.
11593         * hurd/hurdkill.c (hurd_sig_post): Define as weak alias.
11594         * hurd/hurdlookup.c: Add weak aliases for non-__ names.
11595         * Makefile (+init): Test $(gnu-ld)=yes, not for $(+gnu-stabs)
11596         being defined.
11597
11598 Sun Jan 22 15:19:51 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11599
11600         * string/Makefile (routines): Remove __ names, index, rindex, and
11601         bcmp.
11602         * sysdeps/alpha/strchr.c [weak_alias] (index): Define as weak
11603         alias for strchr.
11604         * sysdeps/generic/strchr.c: Likewise.
11605         * sysdeps/generic/strrchr.c [weak_alias] (rindex): Define as weak
11606         alias for strrchr.
11607         * sysdeps/generic/memcmp.c [weak_alias] (bcmp): Define as weak
11608         alias for memcmp.
11609
11610         * malloc/free.c (cfree): Define this function, with weak_alias if
11611         available, otherwise a C function.
11612         * malloc/Makefile (gmalloc-routines): Remove cfree.
11613
11614 Sat Jan 21 08:08:58 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
11615
11616         * stdio/fseek.c: Do move bufp by O when that puts it exactly at
11617         get_limit.  This has the effect of no-op'ing properly for zero.
11618
11619         * configure.in: Add AC_CONFIG_HEADER(config.h).
11620         (--with-elf, --with-weak-symbols): Grok these and define HAVE_*.
11621         * config.h.in: New file.
11622
11623         * setjmp/longjmp.c: Add weak aliases _longjmp, siglongjmp.
11624         All code converted to use weak symbols, defined in the files which
11625         define the real code (with the __ names, the non-__ names are weak).
11626         All old symbol alias files removed.
11627         Many files renamed to remove __ prefix since there is now just
11628         the one file for both the __ and non-__ name for each function.
11629         * libc-symbols.h: New file.
11630         * set-hooks.h: Use libc-symbols.h macros for accessing symbol
11631         sets.
11632         * gnu-stabs.h: Prepend #error this file is obsolete.
11633         * sysdeps/ieee754/ldexp.c: Add weak aliases scalb and __scalb.
11634         * sysdeps/stub/__access.c: Renamed to access.c; added weak alias
11635         access.
11636         * sysdeps/unix/common/__access.S: Likewise.
11637         * sysdeps/mach/hurd/__access.c: Likewise.
11638         * sysdeps/stub/__adjtime.c: Renamed to adjtime.c; added weak alias
11639         adjtime.
11640         * sysdeps/unix/common/__adjtime.S: Likewise.
11641         * sysdeps/mach/__adjtime.c: Likewise.
11642         * sysdeps/mach/hurd/__adjtime.c: Likewise.
11643         * sysdeps/stub/__brk.c: Renamed to brk.c; added weak alias brk.
11644         * sysdeps/unix/bsd/sun/m68k/__brk.S: Likewise.
11645         * sysdeps/unix/bsd/vax/__brk.S: Likewise.
11646         * sysdeps/unix/bsd/hp/m68k/__brk.S: Likewise.
11647         * sysdeps/unix/bsd/osf1/alpha/__brk.S: Likewise.
11648         * sysdeps/unix/i386/__brk.S: Likewise.
11649         * sysdeps/unix/sparc/__brk.S: Likewise.
11650         * sysdeps/unix/mips/__brk.S: Likewise.
11651         * sysdeps/mach/hurd/__brk.c: Likewise.
11652         * sysdeps/standalone/__brk.c: Likewise.
11653         * sysdeps/stub/__chdir.c: Renamed to chdir.c; added weak alias chdir.
11654         * sysdeps/unix/__chdir.S: Likewise.
11655         * sysdeps/mach/hurd/__chdir.c: Likewise.
11656         * sysdeps/stub/__chmod.c: Renamed to chmod.c; added weak alias chmod.
11657         * sysdeps/unix/__chmod.S: Likewise.
11658         * sysdeps/mach/hurd/__chmod.c: Likewise.
11659         * sysdeps/stub/__chown.c: Renamed to chown.c; added weak alias chown.
11660         * sysdeps/unix/__chown.S: Likewise.
11661         * sysdeps/mach/hurd/__chown.c: Likewise.
11662         * sysdeps/stub/__close.c: Renamed to close.c; added weak alias close.
11663         * sysdeps/unix/__close.S: Likewise.
11664         * sysdeps/mach/hurd/__close.c: Likewise.
11665         * sysdeps/standalone/__close.c: Likewise.
11666         * sysdeps/generic/__copysign.c: Renamed to copysign.c; added weak
11667         alias copysign.
11668         * sysdeps/ieee754/__copysign.c: Likewise.
11669         * sysdeps/alpha/__copysign.c: Likewise.
11670         * sysdeps/ieee754/__drem.c: Renamed to drem.c; added weak alias drem.
11671         * sysdeps/m68k/fpu/__drem.c: Likewise.
11672         * sysdeps/stub/__drem.c: Likewise.
11673         * sysdeps/posix/__dup.c: Renamed to dup.c; added weak alias dup.
11674         * sysdeps/stub/__dup.c: Likewise.
11675         * sysdeps/unix/__dup.S: Likewise.
11676         * sysdeps/posix/__dup2.c: Renamed to dup2.c; added weak alias dup2.
11677         * sysdeps/stub/__dup2.c: Likewise.
11678         * sysdeps/unix/sysv/sysv4/__dup2.c: Likewise.
11679         * sysdeps/unix/sysv/irix4/__dup2.c: Likewise.
11680         * sysdeps/unix/common/__dup2.S: Likewise.
11681         * sysdeps/mach/hurd/__dup2.c: Likewise.
11682         * sysdeps/stub/__execve.c: Renamed to execve.c; added weak alias
11683         execve.
11684         * sysdeps/unix/__execve.S: Likewise.
11685         * sysdeps/mach/hurd/__execve.c: Likewise.
11686         * sysdeps/generic/__expm1.c: Renamed to expm1.c; added weak alias
11687         expm1.
11688         * sysdeps/m68k/fpu/__expm1.c: Likewise.
11689         * sysdeps/stub/__fchmod.c: Renamed to fchmod.c; added weak alias
11690         fchmod.
11691         * sysdeps/unix/common/__fchmod.S: Likewise.
11692         * sysdeps/mach/hurd/__fchmod.c: Likewise.
11693         * sysdeps/stub/__fchown.c: Renamed to fchown.c; added weak alias
11694         fchown.
11695         * sysdeps/unix/common/__fchown.S: Likewise.
11696         * sysdeps/mach/hurd/__fchown.c: Likewise.
11697         * sysdeps/stub/__fcntl.c: Renamed to fcntl.c; added weak alias fcntl.
11698         * sysdeps/unix/__fcntl.S: Likewise.
11699         * sysdeps/mach/hurd/__fcntl.c: Likewise.
11700         * math/__finite.c: Renamed to finite.c; added weak alias finite.
11701         * sysdeps/posix/__flock.c: Renamed to flock.c; added weak alias flock.
11702         * sysdeps/stub/__flock.c: Likewise.
11703         * sysdeps/unix/bsd/__flock.S: Likewise.
11704         * sysdeps/mach/hurd/__flock.c: Likewise.
11705         * hurd/__fopenport.c: Renamed to fopenport.c; added weak alias
11706         fopenport.
11707         * sysdeps/stub/__fork.c: Renamed to fork.c; added weak alias fork.
11708         * sysdeps/unix/__fork.S: Likewise.
11709         * sysdeps/unix/bsd/osf1/alpha/__fork.S: Likewise.
11710         * sysdeps/unix/i386/__fork.S: Likewise.
11711         * sysdeps/unix/sparc/__fork.S: Likewise.
11712         * sysdeps/unix/mips/__fork.S: Likewise.
11713         * sysdeps/mach/hurd/__fork.c: Likewise.
11714         * sysdeps/posix/__fpathcon.c: Renamed to fpathcon.c; added weak
11715         alias fpathconf.
11716         * sysdeps/stub/__fpathcon.c: Likewise.
11717         * sysdeps/unix/sysv/irix4/__fpathcon.c: Likewise.
11718         * sysdeps/stub/__fstat.c: Renamed to fstat.c; added weak alias fstat.
11719         * sysdeps/unix/__fstat.S: Likewise.
11720         * sysdeps/unix/sysv/sysv4/i386/__fstat.S: Likewise.
11721         * sysdeps/mach/hurd/__fstat.c: Likewise.
11722         * stdio/__getdelim.c: Renamed to getdelim.c; added weak alias
11723         getdelim.
11724         * sysdeps/stub/__getdents.c: Renamed to getdents.c; added weak
11725         alias getdents.
11726         * sysdeps/unix/__getdents.c: Likewise.
11727         * sysdeps/unix/bsd/sun/__getdents.S: Likewise.
11728         * sysdeps/unix/bsd/hp/m68k/__getdents.S: Likewise.
11729         * sysdeps/unix/bsd/ultrix4/__getdents.S: Likewise.
11730         * sysdeps/unix/bsd/bsd4.4/__getdents.S: Likewise.
11731         * sysdeps/unix/bsd/osf1/alpha/__getdents.S: Likewise.
11732         * sysdeps/unix/sysv/__getdents.c: Likewise.
11733         * sysdeps/mach/hurd/__getdents.c: Likewise.
11734         * hurd/__getdport.c: Renamed to getdport.c; added weak alias getdport.
11735         * sysdeps/posix/__getdtsz.c: Renamed to getdtsz.c; added weak
11736         alias getdtablesize.
11737         * sysdeps/stub/__getdtsz.c: Likewise.
11738         * sysdeps/unix/bsd/__getdtsz.S: Likewise.
11739         * sysdeps/unix/sysv/sysv4/__getdtsz.c: Likewise.
11740         * sysdeps/mach/hurd/__getdtsz.c: Likewise.
11741         * sysdeps/stub/__getegid.c: Renamed to getegid.c; added weak alias
11742         getegid.
11743         * sysdeps/unix/__getegid.S: Likewise.
11744         * sysdeps/mach/hurd/__getegid.c: Likewise.
11745         * sysdeps/stub/__geteuid.c: Renamed to geteuid.c; added weak alias
11746         geteuid.
11747         * sysdeps/unix/__geteuid.S: Likewise.
11748         * sysdeps/mach/hurd/__geteuid.c: Likewise.
11749         * sysdeps/stub/__getgid.c: Renamed to getgid.c; added weak alias
11750         getgid.
11751         * sysdeps/unix/__getgid.S: Likewise.
11752         * sysdeps/mach/hurd/__getgid.c: Likewise.
11753         * sysdeps/stub/__getgrps.c: Renamed to getgroups.c; added weak
11754         alias getgroups.
11755         * sysdeps/unix/bsd/sequent/i386/__getgrps.S: Likewise.
11756         * sysdeps/unix/sysv/sco3.2.4/__getgrps.c: Likewise.
11757         * sysdeps/unix/sysv/irix4/__getgrps.c: Likewise.
11758         * sysdeps/unix/common/__getgrps.S: Likewise.
11759         * sysdeps/mach/hurd/__getgrps.c: Likewise.
11760         * sysdeps/stub/__gethstnm.c: Renamed to gethostname.c; added weak
11761         alias gethostname.
11762         * sysdeps/unix/inet/__gethstnm.S: Likewise.
11763         * sysdeps/unix/sysv/__gethstnm.c: Likewise.
11764         * sysdeps/unix/sysv/sysv4/__gethstnm.c: Likewise.
11765         * sysdeps/mach/hurd/__gethstnm.c: Likewise.
11766         * sysdeps/stub/__getitmr.c: Renamed to getitimer.c; added weak
11767         alias getitimer.
11768         * sysdeps/unix/common/__getitmr.S: Likewise.
11769         * sysdeps/mach/hurd/__getitmr.c: Likewise.
11770         * stdio/__getline.c: Renamed to getline.c; added weak alias getline.
11771         * sysdeps/posix/__getpgsz.c: Renamed to getpagesize.c; added weak
11772         alias getpagesize.
11773         * sysdeps/stub/__getpgsz.c: Likewise.
11774         * sysdeps/unix/__getpgsz.c: Likewise.
11775         * sysdeps/unix/bsd/__getpgsz.S: Likewise.
11776         * sysdeps/unix/sysv/sysv4/__getpgsz.c: Likewise.
11777         * sysdeps/mach/__getpgsz.c: Likewise.
11778         * sysdeps/stub/__getpid.c: Renamed to getpid.c; added weak alias
11779         getpid.
11780         * sysdeps/unix/__getpid.S: Likewise.
11781         * sysdeps/mach/hurd/__getpid.c: Likewise.
11782         * sysdeps/stub/__getppid.c: Renamed to getppid.c; added weak alias
11783         getppid.
11784         * sysdeps/unix/__getppid.S: Likewise.
11785         * sysdeps/mach/hurd/__getppid.c: Likewise.
11786         * sysdeps/posix/__gettod.c: Renamed to gettimeofday.c; added weak
11787         alias gettimeofday.
11788         * sysdeps/stub/__gettod.c: Likewise.
11789         * sysdeps/unix/sysv/irix4/__gettod.c: Likewise.
11790         * sysdeps/unix/common/__gettod.S: Likewise.
11791         * sysdeps/mach/__gettod.c: Likewise.
11792         * sysdeps/stub/__getuid.c: Renamed to getuid.c; added weak alias
11793         getuid.
11794         * sysdeps/unix/__getuid.S: Likewise.
11795         * sysdeps/mach/hurd/__getuid.c: Likewise.
11796         * sysdeps/generic/__infnan.c: Renamed to infnan.c; added weak
11797         alias infnan.
11798         * sysdeps/ieee754/__infnan.c: Likewise.
11799         * sysdeps/vax/__infnan.c: Likewise.
11800         * sysdeps/stub/__ioctl.c: Renamed to ioctl.c; added weak alias ioctl.
11801         * sysdeps/unix/__ioctl.S: Likewise.
11802         * sysdeps/mach/hurd/__ioctl.c: Likewise.
11803         * sysdeps/posix/__isatty.c: Renamed to isatty.c; added weak alias
11804         isatty.
11805         * sysdeps/stub/__isatty.c: Likewise.
11806         * sysdeps/unix/bsd/__isatty.c: Likewise.
11807         * sysdeps/mach/hurd/__isatty.c: Likewise.
11808         * sysdeps/ieee754/__isinf.c: Renamed to isinf.c; added weak alias
11809         isinf.
11810         * sysdeps/m68k/fpu/__isinf.c: Likewise.
11811         * sysdeps/stub/__isinf.c: Likewise.
11812         * sysdeps/generic/__isnan.c: Renamed to isnan.c; added weak alias
11813         isnan.
11814         * sysdeps/ieee754/__isnan.c: Likewise.
11815         * sysdeps/m68k/fpu/__isnan.c: Likewise.
11816         * sysdeps/stub/__kill.c: Renamed to kill.c; added weak alias kill.
11817         * sysdeps/unix/__kill.S: Likewise.
11818         * sysdeps/mach/hurd/__kill.c: Likewise.
11819         * sysdeps/stub/__link.c: Renamed to link.c; added weak alias link.
11820         * sysdeps/unix/__link.S: Likewise.
11821         * sysdeps/mach/hurd/__link.c: Likewise.
11822         * sysdeps/ieee754/__logb.c: Renamed to logb.c; added weak alias logb.
11823         * sysdeps/m68k/fpu/__logb.c: Likewise.
11824         * sysdeps/stub/__logb.c: Likewise.
11825         * sysdeps/stub/__lseek.c: Renamed to lseek.c; added weak alias lseek.
11826         * sysdeps/unix/__lseek.S: Likewise.
11827         * sysdeps/mach/hurd/__lseek.c: Likewise.
11828         * sysdeps/generic/__lstat.c: Renamed to lstat.c; added weak alias
11829         lstat.
11830         * sysdeps/stub/__lstat.c: Likewise.
11831         * sysdeps/unix/sysv/sysv4/i386/__lstat.S: Likewise.
11832         * sysdeps/unix/common/__lstat.S: Likewise.
11833         * sysdeps/mach/hurd/__lstat.c: Likewise.
11834         * sysdeps/generic/__memccpy.c: Renamed to memccpy.c; added weak
11835         alias memccpy.
11836         * sysdeps/vax/__memccpy.c: Likewise.
11837         * sysdeps/stub/__mkdir.c: Renamed to mkdir.c; added weak alias mkdir.
11838         * sysdeps/unix/sysv/__mkdir.c: Likewise.
11839         * sysdeps/unix/common/__mkdir.S: Likewise.
11840         * sysdeps/mach/hurd/__mkdir.c: Likewise.
11841         * sysdeps/stub/__mknod.c: Renamed to mknod.c; added weak alias mknod.
11842         * sysdeps/unix/__mknod.S: Likewise.
11843         * sysdeps/unix/sysv/sysv4/i386/__mknod.S: Likewise.
11844         * sysdeps/mach/hurd/__mknod.c: Likewise.
11845         * mach/__msg.c: Renamed to msg.c; added weak alias mach_msg.
11846         * mach/__msgserver.c: Renamed to msgserver.c; added weak alias
11847         mach_msg_server.
11848         * sysdeps/stub/__open.c: Renamed to open.c; added weak alias open.
11849         * sysdeps/unix/__open.S: Likewise.
11850         * sysdeps/mach/hurd/__open.c: Likewise.
11851         * sysdeps/standalone/__open.c: Likewise.
11852         * sysdeps/stub/__pathconf.c: Renamed to pathconf.c; added weak
11853         alias pathconf.
11854         * sysdeps/unix/sysv/sco3.2.4/__pathconf.S: Likewise.
11855         * sysdeps/unix/sysv/irix4/__pathconf.c: Likewise.
11856         * hurd/__pid2task.c: Renamed to pid2task.c; added weak alias pid2task.
11857         * sysdeps/stub/__pipe.c: Renamed to pipe.c; added weak alias pipe.
11858         * sysdeps/unix/bsd/vax/__pipe.S: Likewise.
11859         * sysdeps/unix/bsd/m68k/__pipe.S: Likewise.
11860         * sysdeps/unix/bsd/osf1/alpha/__pipe.S: Likewise.
11861         * sysdeps/unix/i386/__pipe.S: Likewise.
11862         * sysdeps/unix/sparc/__pipe.S: Likewise.
11863         * sysdeps/unix/mips/__pipe.S: Likewise.
11864         * sysdeps/mach/hurd/__pipe.c: Likewise.
11865         * stdlib/__random.c: Renamed to random.c; added weak alias random.
11866         * sysdeps/stub/__read.c: Renamed to read.c; added weak alias read.
11867         * sysdeps/unix/__read.S: Likewise.
11868         * sysdeps/mach/hurd/__read.c: Likewise.
11869         * sysdeps/standalone/__read.c: Likewise.
11870         * sysdeps/stub/__readlink.c: Renamed to readlink.c; added weak
11871         alias readlink.
11872         * sysdeps/unix/common/__readlink.S: Likewise.
11873         * sysdeps/mach/hurd/__readlink.c: Likewise.
11874         * sysdeps/generic/__rint.c: Renamed to rint.c; added weak alias rint.
11875         * sysdeps/m68k/fpu/__rint.c: Likewise.
11876         * sysdeps/stub/__rmdir.c: Renamed to rmdir.c; added weak alias rmdir.
11877         * sysdeps/unix/sysv/__rmdir.c: Likewise.
11878         * sysdeps/unix/common/__rmdir.S: Likewise.
11879         * sysdeps/mach/hurd/__rmdir.c: Likewise.
11880         * sysdeps/generic/__sbrk.c: Renamed to sbrk.c; added weak alias sbrk.
11881         * sysdeps/stub/__sbrk.c: Likewise.
11882         * sysdeps/mach/hurd/__sbrk.c: Likewise.
11883         * math/__scalb.c: Renamed to scalb.c; added weak alias scalb.
11884         * sysdeps/stub/__select.c: Renamed to select.c; added weak alias
11885         select.
11886         * sysdeps/unix/common/__select.S: Likewise.
11887         * sysdeps/mach/hurd/__select.c: Likewise.
11888         * hurd/__setauth.c: Renamed to setauth.c; added weak alias setauth.
11889         * sysdeps/stub/__setgid.c: Renamed to setgid.c; added weak alias
11890         setgid.
11891         * sysdeps/unix/__setgid.S: Likewise.
11892         * sysdeps/unix/bsd/__setgid.c: Likewise.
11893         * sysdeps/mach/hurd/__setgid.c: Likewise.
11894         * sysdeps/stub/__setitmr.c: Renamed to setitmr.c; added weak alias
11895         setitmr
11896         * sysdeps/unix/common/__setitmr.S: Likewise.
11897         * sysdeps/mach/hurd/__setitmr.c: Likewise.
11898         * sysdeps/stub/__setpgrp.c: Renamed to setpgrp.c; added weak alias
11899         setpgrp
11900         * sysdeps/unix/sysv/sysv4/__setpgrp.c: Likewise.
11901         * sysdeps/unix/sysv/sco3.2.4/__setpgrp.c: Likewise.
11902         * sysdeps/unix/sysv/irix4/__setpgrp.S: Likewise.
11903         * sysdeps/unix/common/__setpgrp.S: Likewise.
11904         * sysdeps/mach/hurd/__setpgrp.c: Likewise.
11905         * sysdeps/stub/__setregid.c: Renamed to setregid.c; added weak
11906         alias setregid.
11907         * sysdeps/unix/common/__setregid.S: Likewise.
11908         * sysdeps/mach/hurd/__setregid.c: Likewise.
11909         * sysdeps/stub/__setreuid.c: Renamed to setreuid.c; added weak
11910         alias setreuid.
11911         * sysdeps/unix/common/__setreuid.S: Likewise.
11912         * sysdeps/mach/hurd/__setreuid.c: Likewise.
11913         * sysdeps/stub/__setsid.c: Renamed to setsid.c; added weak alias
11914         setsid.
11915         * sysdeps/unix/bsd/__setsid.c: Likewise.
11916         * sysdeps/unix/bsd/sun/sunos4/__setsid.S: Likewise.
11917         * sysdeps/unix/bsd/ultrix4/__setsid.S: Likewise.
11918         * sysdeps/unix/bsd/bsd4.4/__setsid.S: Likewise.
11919         * sysdeps/unix/sysv/linux/__setsid.S: Likewise.
11920         * sysdeps/unix/sysv/sysv4/__setsid.c: Likewise.
11921         * sysdeps/unix/sysv/sco3.2.4/__setsid.c: Likewise.
11922         * sysdeps/mach/hurd/__setsid.c: Likewise.
11923         * sysdeps/stub/__settod.c: Renamed to settod.c; added weak alias
11924         settimeofday.
11925         * sysdeps/unix/bsd/__settod.S: Likewise.
11926         * sysdeps/unix/sysv/__settod.c: Likewise.
11927         * sysdeps/mach/hurd/__settod.c: Likewise.
11928         * sysdeps/stub/__setuid.c: Renamed to setuid.c; added weak alias
11929         setuid.
11930         * sysdeps/unix/__setuid.S: Likewise.
11931         * sysdeps/unix/bsd/__setuid.c: Likewise.
11932         * sysdeps/mach/hurd/__setuid.c: Likewise.
11933         * sysdeps/posix/__sigblock.c: Renamed to sigblock.c; added weak
11934         alias sigblock.
11935         * sysdeps/stub/__sigblock.c: Likewise.
11936         * sysdeps/unix/bsd/__sigblock.S: Likewise.
11937         * sysdeps/unix/bsd/bsd4.4/__sigblock.c: Likewise.
11938         * sysdeps/unix/bsd/osf1/alpha/__sigblock.S: Likewise.
11939         * sysdeps/posix/__sigpause.c: Renamed to sigpause.c; added weak
11940         alias sigpause.
11941         * sysdeps/stub/__sigpause.c: Likewise.
11942         * sysdeps/unix/bsd/__sigpause.S: Likewise.
11943         * sysdeps/unix/bsd/osf1/alpha/__sigpause.S: Likewise.
11944         * sysdeps/stub/__sigproc.c: Renamed to sigprocmask.c; added weak
11945         alias sigprocmask.
11946         * sysdeps/unix/bsd/__sigproc.c: Likewise.
11947         * sysdeps/unix/sysv/sysv4/__sigproc.S: Likewise.
11948         * sysdeps/unix/sysv/sco3.2.4/__sigproc.S: Likewise.
11949         * sysdeps/mach/hurd/__sigproc.c: Likewise.
11950         * sysdeps/stub/__sigret.c: Renamed to sigreturn.c; added weak
11951         alias sigreturn.
11952         * sysdeps/unix/bsd/sun/__sigret.S: Likewise.
11953         * sysdeps/unix/sysv/i386/__sigret.S: Likewise.
11954         * sysdeps/unix/sysv/irix4/__sigret.S: Likewise.
11955         * sysdeps/unix/i386/__sigret.S: Likewise.
11956         * sysdeps/unix/mips/__sigret.S: Likewise.
11957         * sysdeps/mach/hurd/i386/__sigret.c: Likewise.
11958         * sysdeps/mach/hurd/alpha/__sigret.c: Likewise.
11959         * sysdeps/mach/hurd/mips/__sigret.c: Likewise.
11960         * sysdeps/posix/__sigvec.c: Renamed to sigvec.c; added weak alias
11961         sigvec.
11962         * sysdeps/stub/__sigvec.c: Likewise.
11963         * sysdeps/unix/bsd/__sigvec.S: Likewise.
11964         * sysdeps/unix/bsd/sun/__sigvec.S: Likewise.
11965         * sysdeps/unix/bsd/sequent/i386/__sigvec.S: Likewise.
11966         * sysdeps/unix/bsd/ultrix4/mips/__sigvec.S: Likewise.
11967         * sysdeps/unix/bsd/bsd4.4/__sigvec.c: Likewise.
11968         * sysdeps/unix/bsd/osf1/alpha/__sigvec.S: Likewise.
11969         * sysdeps/stub/__stat.c: Renamed to stat.c; added weak alias stat.
11970         * sysdeps/unix/__stat.S: Likewise.
11971         * sysdeps/unix/sysv/sysv4/i386/__stat.S: Likewise.
11972         * sysdeps/mach/hurd/__stat.c: Likewise.
11973         * sysdeps/generic/__stpncpy.c: Renamed to stpncpy.c; added weak
11974         alias stpncpy.
11975         * sysdeps/stub/__symlink.c: Renamed to symlink.c; added weak alias
11976         symlink.
11977         * sysdeps/unix/common/__symlink.S: Likewise.
11978         * sysdeps/mach/hurd/__symlink.c: Likewise.
11979         * sysdeps/posix/__sysconf.c: Renamed to sysconf.c; added weak
11980         alias sysconf.
11981         * sysdeps/stub/__sysconf.c: Likewise.
11982         * sysdeps/unix/bsd/ultrix4/__sysconf.c: Likewise.
11983         * sysdeps/unix/sysv/sysv4/__sysconf.c: Likewise.
11984         * sysdeps/unix/sysv/sco3.2.4/__sysconf.S: Likewise.
11985         * sysdeps/unix/sysv/irix4/__sysconf.c: Likewise.
11986         * hurd/__task2pid.c: Renamed to task2pid.c; added weak alias task2pid.
11987         * sysdeps/stub/__times.c: Renamed to times.c; added weak alias times.
11988         * sysdeps/unix/bsd/__times.c: Likewise.
11989         * sysdeps/unix/sysv/__times.S: Likewise.
11990         * time/__tzset.c: Renamed to tzset.c; added weak alias tzset.
11991         * sysdeps/stub/__umask.c: Renamed to umask.c; added weak alias umask.
11992         * sysdeps/unix/__umask.S: Likewise.
11993         * sysdeps/mach/hurd/__umask.c: Likewise.
11994         * sysdeps/stub/__unlink.c: Renamed to unlink.c; added weak alias
11995         unlink.
11996         * sysdeps/unix/__unlink.S: Likewise.
11997         * sysdeps/mach/hurd/__unlink.c: Likewise.
11998         * sysdeps/stub/__utimes.c: Renamed to utimes.c; added weak alias
11999         utimes.
12000         * sysdeps/unix/bsd/__utimes.S: Likewise.
12001         * sysdeps/unix/sysv/sysv4/solaris2/__utimes.S: Likewise.
12002         * sysdeps/mach/hurd/__utimes.c: Likewise.
12003         * sysdeps/generic/__vfork.c: Renamed to vfork.c; added weak alias
12004         vfork.
12005         * sysdeps/unix/bsd/sun/m68k/__vfork.S: Likewise.
12006         * sysdeps/unix/bsd/vax/__vfork.S: Likewise.
12007         * sysdeps/unix/bsd/i386/__vfork.S: Likewise.
12008         * sysdeps/unix/bsd/hp/m68k/__vfork.S: Likewise.
12009         * sysdeps/unix/bsd/ultrix4/mips/__vfork.S: Likewise.
12010         * sysdeps/unix/sysv/sysv4/i386/__vfork.S: Likewise.
12011         * sysdeps/unix/sparc/__vfork.S: Likewise.
12012         * stdio/__vfscanf.c: Renamed to vfscanf.c; added weak alias vfscanf.
12013         * stdio/__vsscanf.c: Renamed to vsscanf.c; added weak alias vsscanf.
12014         * sysdeps/posix/__wait.c: Renamed to wait.c; added weak alias wait.
12015         * sysdeps/stub/__wait.c: Likewise.
12016         * sysdeps/unix/bsd/sony/newsos4/__wait.c: Likewise.
12017         * sysdeps/unix/bsd/sun/sunos4/__wait.c: Likewise.
12018         * sysdeps/unix/bsd/sun/sunos3/m68k/__wait.S: Likewise.
12019         * sysdeps/unix/bsd/vax/__wait.S: Likewise.
12020         * sysdeps/unix/bsd/m68k/__wait.S: Likewise.
12021         * sysdeps/unix/bsd/bsd4.4/__wait.c: Likewise.
12022         * sysdeps/unix/sysv/i386/linux/__wait.S: Likewise.
12023         * sysdeps/unix/sysv/irix4/__wait.S: Likewise.
12024         * sysdeps/unix/i386/__wait.S: Likewise.
12025         * sysdeps/unix/mips/__wait.S: Likewise.
12026         * sysdeps/posix/__wait3.c: Renamed to wait3.c; added weak alias wait3.
12027         * sysdeps/stub/__wait3.c: Likewise.
12028         * sysdeps/unix/bsd/sony/newsos4/__wait3.c: Likewise.
12029         * sysdeps/unix/bsd/sun/sunos4/__wait3.c: Likewise.
12030         * sysdeps/unix/bsd/vax/__wait3.S: Likewise.
12031         * sysdeps/unix/bsd/i386/__wait3.S: Likewise.
12032         * sysdeps/unix/bsd/hp/m68k/__wait3.S: Likewise.
12033         * sysdeps/unix/bsd/ultrix4/__wait3.S: Likewise.
12034         * sysdeps/unix/bsd/bsd4.4/__wait3.c: Likewise.
12035         * sysdeps/unix/sysv/irix4/__wait3.S: Likewise.
12036         * sysdeps/stub/__wait4.c: Renamed to wait4.c; added weak alias wait4.
12037         * sysdeps/unix/bsd/sony/newsos4/__wait4.c: Likewise.
12038         * sysdeps/unix/bsd/sun/sunos4/__wait4.c: Likewise.
12039         * sysdeps/unix/bsd/bsd4.4/__wait4.S: Likewise.
12040         * sysdeps/unix/bsd/osf1/alpha/__wait4.S: Likewise.
12041         * sysdeps/unix/sysv/linux/__wait4.S: Likewise.
12042         * sysdeps/mach/hurd/__wait4.c: Likewise.
12043         * sysdeps/stub/__waitpid.c: Renamed to waitpid.c; added weak alias
12044         waitpid.
12045         * sysdeps/unix/bsd/sun/sunos4/__waitpid.c: Likewise.
12046         * sysdeps/unix/bsd/ultrix4/__waitpid.S: Likewise.
12047         * sysdeps/unix/bsd/bsd4.4/__waitpid.c: Likewise.
12048         * sysdeps/unix/bsd/osf1/alpha/__waitpid.c: Likewise.
12049         * sysdeps/unix/sysv/linux/__waitpid.S: Likewise.
12050         * sysdeps/unix/sysv/sysv4/__waitpid.c: Likewise.
12051         * sysdeps/unix/sysv/sco3.2.4/__waitpid.S: Likewise.
12052         * sysdeps/unix/sysv/irix4/__waitpid.c: Likewise.
12053         * sysdeps/stub/__write.c: Renamed to write.c; added weak alias write.
12054         * sysdeps/unix/__write.S: Likewise.
12055         * sysdeps/mach/hurd/__write.c: Likewise.
12056         * sysdeps/standalone/__write.c: Likewise.
12057         * sysdeps/stub/__tcgetatr.c: Renamed to tcgetattr.c; added weak
12058         alias tcgetattr.
12059         * sysdeps/unix/bsd/__tcgetatr.c: Likewise.
12060         * sysdeps/unix/bsd/sun/sunos4/__tcgetatr.c: Likewise.
12061         * sysdeps/unix/bsd/bsd4.4/__tcgetatr.c: Likewise.
12062         * sysdeps/unix/sysv/__tcgetatr.c: Likewise.
12063         * sysdeps/stub/__sigact.c: Renamed to sigaction.c; added weak
12064         alias sigaction.
12065         * sysdeps/unix/bsd/__sigact.c: Likewise.
12066         * sysdeps/unix/sysv/__sigact.c: Likewise.
12067         * sysdeps/unix/sysv/sysv4/__sigact.c: Likewise.
12068         * sysdeps/unix/sysv/sco3.2.4/__sigact.S: Likewise.
12069         * sysdeps/mach/hurd/__sigact.c: Likewise.
12070         * sysdeps/posix/__sigstmsk.c: Renamed to sigsetmask.c; added weak
12071         alias sigsetmask.
12072         * sysdeps/stub/__sigstmsk.c: Likewise.
12073         * sysdeps/unix/bsd/__sigstmsk.S: Likewise.
12074         * sysdeps/unix/bsd/bsd4.4/__sigstmsk.c: Likewise.
12075         * sysdeps/unix/bsd/osf1/alpha/__sigstmsk.S: Likewise.
12076         * sysdeps/stub/__getrusag.c: Renamed to getrusage.c; added weak
12077         alias getrusage.
12078         * sysdeps/unix/sysv/irix4/__getrusag.c: Likewise.
12079         * sysdeps/unix/common/__getrusag.S: Likewise.
12080         * hurd/task2pid.c: File removed.
12081         * hurd/setauth.c: File removed.
12082         * hurd/pid2task.c: File removed.
12083         * hurd/hurdsyms.c: File removed.
12084         * hurd/getdport.c: File removed.
12085         * hurd/fopenport.c: File removed.
12086         * mach/thread-sym.c: File removed.
12087         * mach/spin-syms.c: File removed.
12088         * mach/msgserver_t.c: File removed.
12089         * mach/msgserver.c: File removed.
12090         * mach/msg.c: File removed.
12091         * mach/mig_syms.c: File removed.
12092         * malloc/mcheck-init.c: File removed.
12093         * malloc/cfree.c: File removed.
12094         * io/flock.c: File removed.
12095         * io/write.c: File removed.
12096         * io/unlink.c: File removed.
12097         * io/umask.c: File removed.
12098         * io/symlink.c: File removed.
12099         * io/rmdir.c: File removed.
12100         * io/readlink.c: File removed.
12101         * io/read.c: File removed.
12102         * io/pipe.c: File removed.
12103         * io/open.c: File removed.
12104         * io/mkdir.c: File removed.
12105         * io/lstat.c: File removed.
12106         * io/lseek.c: File removed.
12107         * io/link.c: File removed.
12108         * io/isatty.c: File removed.
12109         * io/stat.c: File removed.
12110         * io/fstat.c: File removed.
12111         * io/fchown.c: File removed.
12112         * io/fchmod.c: File removed.
12113         * io/dup2.c: File removed.
12114         * io/dup.c: File removed.
12115         * io/close.c: File removed.
12116         * io/fcntl.c: File removed.
12117         * io/chmod.c: File removed.
12118         * io/chdir.c: File removed.
12119         * io/access.c: File removed.
12120         * io/chown.c: File removed.
12121         * time/tzset.c: File removed.
12122         * time/timelocal.c: File removed.
12123         * time/syms-time.c: File removed.
12124         * time/settod.c: File removed.
12125         * time/setitmr.c: File removed.
12126         * time/gettod.c: File removed.
12127         * time/getitmr.c: File removed.
12128         * time/adjtime.c: File removed.
12129         * termios/tcgetattr.c: File removed.
12130         * string/stpncpy.c: File removed.
12131         * string/rindex.c: File removed.
12132         * string/memccpy.c: File removed.
12133         * string/index.c: File removed.
12134         * string/bcmp.c: File removed.
12135         * stdlib/srand.c: File removed.
12136         * stdlib/random.c: File removed.
12137         * stdio/vsscanf.c: File removed.
12138         * stdio/vfscanf.c: File removed.
12139         * stdio/syms-stdio.c: File removed.
12140         * stdio/remove.c: File removed.
12141         * stdio/getline.c: File removed.
12142         * stdio/getdelim.c: File removed.
12143         * signal/ssignal.c: File removed.
12144         * signal/sigvec.c: File removed.
12145         * signal/sigsetmask.c: File removed.
12146         * signal/sigret.c: File removed.
12147         * signal/sigproc.c: File removed.
12148         * signal/sigpause.c: File removed.
12149         * signal/sigblock.c: File removed.
12150         * signal/sigaction.c: File removed.
12151         * signal/kill.c: File removed.
12152         * signal/gsignal.c: File removed.
12153         * setjmp/siglongjmp.c: File removed.
12154         * setjmp/_longjmp.c: File removed.
12155         * resource/getrusage.c: File removed.
12156         * posix/waitpid.c: File removed.
12157         * posix/wait4.c: File removed.
12158         * posix/wait3.c: File removed.
12159         * posix/wait.c: File removed.
12160         * posix/times.c: File removed.
12161         * posix/sysconf.c: File removed.
12162         * posix/setuid.c: File removed.
12163         * posix/setsid.c: File removed.
12164         * posix/setpgrp.c: File removed.
12165         * posix/setpgid.c: File removed.
12166         * posix/setgid.c: File removed.
12167         * posix/pathconf.c: File removed.
12168         * posix/getuid.c: File removed.
12169         * posix/getppid.c: File removed.
12170         * posix/getpid.c: File removed.
12171         * posix/getgrps.c: File removed.
12172         * posix/getgid.c: File removed.
12173         * posix/geteuid.c: File removed.
12174         * posix/getegid.c: File removed.
12175         * posix/fpathcon.c: File removed.
12176         * posix/fork.c: File removed.
12177         * posix/execve.c: File removed.
12178         * posix/environ.c: File removed.
12179         * misc/utimes.c: File removed.
12180         * misc/setreuid.c: File removed.
12181         * misc/setregid.c: File removed.
12182         * misc/select.c: File removed.
12183         * misc/sbrk.c: File removed.
12184         * misc/mknod.c: File removed.
12185         * misc/ioctl.c: File removed.
12186         * misc/getpgsz.c: File removed.
12187         * misc/gethstnm.c: File removed.
12188         * misc/getdtsz.c: File removed.
12189         * misc/data_start.c: File removed.
12190         * misc/brk.c: File removed.
12191         * math/scalb.c: File removed.
12192         * math/rint.c: File removed.
12193         * math/logb.c: File removed.
12194         * math/isnan.c: File removed.
12195         * math/isinf.c: File removed.
12196         * math/infnan.c: File removed.
12197         * math/finite.c: File removed.
12198         * math/expm1.c: File removed.
12199         * math/drem.c: File removed.
12200         * math/copysign.c: File removed.
12201         * math/__scalb.c: File removed.
12202         * dirent/getdents.c: File removed.
12203
12204 Fri Jan 20 16:11:06 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
12205
12206         * sysdeps/generic/morecore.c (__default_morecore): Use
12207         __malloc_ptrdiff_t; don't cast arg to int.
12208
12209         * resolv/getnetnamadr.c: Include "conf/portability.h".
12210
12211 Thu Jan 19 02:20:04 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
12212
12213         * stdlib/strtol.c: Include errno.h.
12214         [QUAD] (ULONG_MAX): Define to a static variable initialized to
12215         ULONG_LONG_MAX. This is to work around a GCC bug in using the
12216         constant in arithmetic.
12217
12218         * posix/unistd.h (daemon): Declare it.
12219
12220         * malloc/mcheck-init.c: Remove GNU ld hacks.
12221         (__malloc_initialize_hook): Initialize this hook to turn_on_mcheck.
12222         * malloc/malloc.c (__malloc_initialize_hook): New hook variable.
12223         (initialize): Call the hook if set.
12224         * malloc/malloc.h: Use __malloc_{size,ptrdiff}_t in prototypes.
12225         (__malloc_initialize_hook): Declare new hook variable.
12226
12227 Wed Jan 18 01:43:39 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
12228
12229         * hurd/hurdsig.c: Prepend `msg_' to server RPC names.
12230         * hurd/hurdpid.c: Likewise.
12231         * hurd/hurdauth.c: Likewise.
12232
12233 Tue Jan 17 03:16:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
12234
12235         * sysdeps/mach/hurd/__select.c: If some replies are EINTR, succeed
12236         if any are successful.
12237
12238         * hurd/hurdmsg.c: Prepend `msg_' to all RPC names.
12239         (_S_msg_get_exec_flags, _S_msg_set_exec_flags,
12240         _S_msg_set_some_exec_flags, _S_msg_clear_some_exec_flags): New
12241         functions.
12242         (_S_io_select_done, _S_dir_changed, _S_file_changed): Stubs removed.
12243
12244         * hurd/hurdkill.c: __sig_post renamed to __msg_sig_post.
12245         * hurd/hurd-raise.c: Likewise.
12246         * hurd/hurdsig.c (post_reply): Prepend `msg_' to RPC names.
12247
12248         * sysdeps/mach/hurd/ptrace.c: New file.
12249
12250         * sysdeps/mach/hurd/__select.c: Revamped to use new io_select
12251         interface, which has normal EINTR semantics.  Instead of waiting
12252         for io_select_done notification messages, send io_select messages
12253         with short reply timeout and then wait for io_select_reply
12254         messages.
12255
12256         * hurd/hurdexec.c (_hurd_exec): Pass (_hurd_exec_flags &
12257         EXEC_INHERITED) to file_exec.
12258
12259         * hurd/hurdsig.c (post_reply): Take new arg UNTRACED; if nonzero,
12260         use sig_post_untraced_reply.  All callers changed.
12261         (abort_thread, abort_rpcs): Take same new arg and pass it through.
12262         All callers changed.
12263         (_hurd_internal_post_signal): Take new arg UNTRACED.
12264         If zero and process is traced, stop with SIGNO as stop signal.  If
12265         nonzero, resume process before delivering signal (unless
12266         ACT==stop).  Expand local fn sigwakeup into block at end taken iff
12267         SIGNO!=0.
12268         (signal_allowed): New function, broken out of _S_sig_post.
12269         (_S_sig_post): Call it.  Pass UNTRACED arg of false to
12270         _hurd_internal_post_signal.
12271         (_S_sig_post_untraced): New function.  Just like _S_sig_post, but
12272         pass true for UNTRACED.
12273         * hurd/hurd/signal.h (_hurd_internal_post_signal): Take new arg
12274         UNTRACED.
12275         * hurd/catch-exc.c (_S_catch_exception_raise): Pass UNTRACED arg
12276         to _hurd_internal_post_signal (value zero).
12277
12278 Mon Jan 16 16:40:01 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
12279
12280         * hurd/hurdinit.c (_hurd_exec_flags): New variable.
12281         (_hurd_init): Initialize it from FLAGS arg.
12282         (_hurd_proc_init): If EXEC_TRACED is set in _hurd_exec_flags,
12283         raise a SIGTRAP signal (with a sigcode of zero).
12284         * hurd/hurd.h (_hurd_exec_flags): Declare it.
12285
12286         * Version 1.09.5.
12287
12288 Mon Jan 16 16:16:55 1995  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
12289
12290         * malloc/malloc.c (malloc): Fix 1-off in previous change.
12291
12292 Mon Jan 16 15:49:07 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
12293
12294         * posix/glob/Makefile.in: Remove config.h and config.log.
12295
12296 Sun Jan 15 06:56:47 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
12297
12298         * posix/glob/configure.in: Add AC_CONST check.
12299
12300         * conf/portability.h: #undef sun.
12301         * resolv/res_query.c: Updated from BIND-4.9.3-BETA17.
12302         * resolv/getnetnamadr.c: Likewise.
12303
12304         * socket/Makefile (headers): Add sockaddrcom.h.
12305         * inet/netinet/in.h: Include <sockaddrcom.h>.
12306         (struct sockaddr_in): Use the __SOCKADDR_COMMON macro.
12307         * socket/sys/un.h (struct sockaddr_in): Likewise.
12308         * socket/sys/socket.h (struct sockaddr): Likewise.
12309         * sysdeps/unix/bsd/bsd4.4/sockaddrcom.h: New file.
12310         * sysdeps/generic/sockaddrcom.h: New file.
12311
12312         * sysdeps/unix/sysv/sysv4/ftruncate.c: New file.
12313         * sysdeps/unix/common/fcntlbits.h [__USE_SVID] (F_ALLOCSP,
12314         F_FREESP): New macros.
12315         * sysdeps/posix/truncate.c: New file.
12316
12317         * malloc/malloc.c (malloc): Fix typos in RMS's change.
12318
12319         * malloc/Makefile (dist-routines): Add malloc-find.
12320         * malloc/malloc.h (malloc_find_object_address): Declare it.
12321         * malloc/malloc-find.c: New file.
12322
12323         * malloc/malloc.h (__malloc_ptrdiff_t): New macro, defined a la
12324         __malloc_size_t.
12325         (malloc_info): Use that type for member `busy.info.size'.
12326
12327         * stdlib/strtol.c: Change uses of `long' keyword throughout to use
12328         `LONG' macro.
12329         [! QUAD] (LONG): Define as long.
12330         [QUAD] (LONG): Define as long long.
12331         [QUAD] (LONG_MIN, LONG_MAX, ULONG_MAX): Redefine to long long
12332         versions.
12333         [QUAD] (strtoul, strtol): Define to strtouq, strtoq.
12334         * stdlib/Makefile (routines): Add strtoq and strtouq.
12335         * stdlib/strtoq.c, stdlib/strtouq.c: New files.
12336         * stdlib/stdlib.h [__GNUC__ && __USE_BSD] (strtoq, strtouq):
12337         Declare them.
12338
12339         * stdio/vfprintf.c: If there was a precision specified, ignore the
12340         0 flag and always pad with spaces.
12341
12342         * stdio/vfprintf.c: Don't use strchr to skip text until next %.
12343         Use a loop and also stop on first !isascii char.
12344
12345 Wed Jan 11 00:07:10 1995  Richard Stallman  <rms@mole.gnu.ai.mit.edu>
12346
12347         * malloc/malloc.h (malloc_info): Change usage of .busy.info.size.
12348
12349         * malloc/malloc.c (malloc): For a multi-block object, store a
12350         negative number into the busy.info.size of all but the first block.
12351
12352 Tue Jan 10 13:45:20 1995  Brendan Kehoe  <brendan@zen.org>
12353
12354         * sysdeps/unix/bsd/ultrix4/mips/start.S: Use s0, s1, and s2
12355         instead of t0, t1, and t2.
12356
12357 Tue Jan 10 05:53:50 1995  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
12358
12359         * malloc/memalign.c (__memalign_hook): New variable.
12360         (memalign): Call it if set.
12361         * malloc/malloc.h (__memalign_hook): Declare new variable.
12362
12363 Wed Dec 28 03:27:21 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
12364
12365         * conf/portability.h: Include string.h and stdlib.h.
12366         * inet/netdb.h (NETDB_INTERNAL, NETDB_SUCCESS): New macros.
12367         * resolv/resolv.h, resolv/arpa/nameser.h, resolv/gethnamaddr.c,
12368         resolv/getnetbyname.c, resolv/getnetent.c, resolv/herror.c,
12369         resolv/res_mkquery.c, resolv/res_send.c, resolv/res_comp.c,
12370         resolv/res_debug.c, resolv/res_init.c: Updated from BIND 4.9.3-BETA14.
12371
12372         * sysdeps/m68k/fpu/__math.h (__m81_inline): New macro.  Replace
12373         all uses of `extern __inline' with `__m81_inline'.
12374
12375         * sysdeps/unix/bsd/hp/m68k/__vfork.S: Use subl, not decl.
12376         * sysdeps/unix/__fork.S: Swap args in subl.
12377
12378         * posix/sys/types.h [__USE_MISC] (ushort, uint): New typedefs, for
12379         compatibility.
12380
12381 Tue Dec 20 13:33:20 1994  Michael I Bushnell  <mib@geech.gnu.ai.mit.edu>
12382
12383         * sysdeps/mach/hurd/__setpgrp.c (__setpgrp): Use __swtch_pri instead
12384         of swtch.
12385         * sysdeps/mach/hurd/__setsid.c (__setsid): Likewise.
12386         * mach/spin-solid.c (__spin_lock_solid): Likewise.
12387
12388 Thu Dec 15 12:01:07 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
12389
12390         * inet/rcmd.c (iruserok): Use alloca instead of fixed-size buffer
12391         for PBUF.
12392         (__ivaliduser): Use getline instead of fgets with fixed-size buffer.
12393
12394         * sysdeps/mach/hurd/Makefile (subdirs): Don't elide inet.
12395
12396 Wed Dec 14 18:20:56 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
12397
12398         * sysdeps/alpha/bsd-setjmp.S: Reverse register and immediate args
12399         in `bis' insn; immediate must be second.
12400
12401         * sysdeps/unix/__fork.S: Use subl instead of decl.
12402         * sysdeps/unix/i386/__fork.S: New file.
12403
12404         * sysdeps/mach/hurd/alpha/trampoline.c (_hurd_setup_sighandler):
12405         Remove A macro; just use `asm volatile' with proper quotes in each
12406         line.
12407         * sysdeps/mach/alpha/sysdep.h (CALL_WITH_SP): Put parens around
12408         jmp target register.
12409
12410         * time/africa, time/asia, time/australasia, time/emkdir.c,
12411         time/europe, time/ialloc.c, time/northamerica, time/private.h,
12412         time/scheck.c, time/yearistype, time/zdump.c, time/zic.c: New code
12413         and data from ADO 94h distribution.
12414
12415         * sysdeps/sparc/setjmp.S: Use sethi and or to put address of
12416         __sigjmp_save in %g1 and jmp there.  jmp cannot contain a complete
12417         absolute pointer.  Put second store in jmp delay slot.
12418
12419 Tue Dec 13 15:47:52 1994  Roland McGrath  <roland@churchy.gnu.ai.mit.edu>
12420
12421         * sysdeps/sparc/bsd-_setjmp.S: Use sethi and or to put address of
12422         __sigsetjmp in %g1 and jmp there.  jmp cannot contain a complete
12423         absolute pointer.
12424         * sysdeps/sparc/bsd-setjmp.S: Likewise.
12425
12426         * configure.in: Use ; before } in { ... } exprs.
12427
12428 \f
12429
12430 See ChangeLog.4 for earlier changes.