Update.
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2002-09-15  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2
3         * sysdeps/powerpc/abort-instr.h: New file.
4
5 2002-09-14  Ulrich Drepper  <drepper@redhat.com>
6
7         * sysdeps/generic/libc-start.c (__libc_start_main): Remove bogus
8         comment.
9
10         * test-skeleton.c (main): Provide more information in case waitpid
11         fails.
12
13         * include/unistd.h: Declare __exit_thread.
14         * sysdeps/generic/libc-start.c (__libc_start_main): Remove dummy_addr.
15         Wrap call to main in setjmp if HAVE_CANCELBUF is defined.
16         * sysdeps/unix/sysv/linux/exit-thread.S: New file.
17         * sysdeps/unix/sysv/linux/_exit.c: New file.
18         * sysdeps/unix/sysv/linux/i386/_exit.S: New file.
19         * sysdeps/unix/sysv/linux/Makefile [subdir==posix] (sysdep_routines):
20         Add exit-thread.
21
22         * configure.in: Add dl_iterate_phdr to test using -nostdlib.
23
24 2002-09-12  Jakub Jelinek  <jakub@redhat.com>
25
26         * sysdeps/i386/dl-machine.h (elf_machine_rel)
27         (case R_386_TLS_DTPMOD32): Don't use addend.
28         [case R_386_TLS_TPOFF32]: Remove redundant SYM_MAP != NULL check.
29         (elf_machine_rela): Add support for TLS relocs.
30
31 2002-09-14  Roland McGrath  <roland@redhat.com>
32
33         * Makefile (manual/%): Add this pattern target to the iconvdata/% rule.
34
35 2002-07-29  Steven Munroe  <sjmunroe@us.ibm.com>
36
37         * stdlib/longlong.h [_ARCH_PPC && W_TYPE_SIZE!=32]: Add powerpc64
38         specific asm macros for multiple percision integer math.
39
40 2002-06-04  Steven Munroe  <sjmunroe@us.ibm.com>
41
42         * sysdeps/generic/ldconfig.h (FLAG_POWERPC_LIB64) New macro.
43         * elf/cache.c (print_entry): Add case for FLAG_POWERPC_LIB64.
44         Remove per-machine conditionals for FLAG_* cases.
45         * sysdeps/unix/sysv/linux/powerpc/ldconfig.h: New file.
46         * sysdeps/unix/sysv/linux/powerpc/readelflib.c: New file.
47         * sysdeps/unix/sysv/linux/powerpc/powerpc64/dl-cache.h: New file.
48
49 2002-09-10  Alan Modra <amodra@bigpond.net.au>
50
51         * csu/gmon-start.c [!TEXT_START]: Define TEXT_START if not already
52         defined in entry.h.
53         (__gmon_start__) [!ENTRY_POINT_DECL]: Use TEXT_START macro to obtain
54         lowest address for profiling in  __monstartup call.
55         * sysdeps/powerpc/powerpc64/elf/entry.h: New file.
56
57 2002-09-14  Roland McGrath  <roland@redhat.com>
58
59         * sysdeps/unix/sysv/linux/pread.c: __NR_pread64 may be defined
60         instead of __NR_pread.
61         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
62         * sysdeps/unix/sysv/linux/pwrite.c: __NR_pwrite64 may be defined
63         instead of __NR_pwrite.
64         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
65
66 2002-09-13  Roland McGrath  <roland@redhat.com>
67
68         * manual/libc.texinfo: @ifinfo -> @ifnottex around copyright notice.
69
70 2002-09-13  Andreas Jaeger  <aj@suse.de>
71
72         * sysdeps/unix/sysv/linux/mips/syscalls.list: Add readahead
73         syscall.  Patch by Guido Guenther <agx@sigxcpu.org>.
74
75 2002-09-12  Ulrich Drepper  <drepper@redhat.com>
76
77         * elf/elf.h: Correct DT_LOOS and DT_HIOS values.
78
79 2002-09-10  Ulrich Drepper  <drepper@redhat.com>
80
81         * sysdeps/powerpc/fpu/s_isnan.c: #undef __isnanf and isnanf after
82         reading the headers.
83
84 2002-09-12  Roland McGrath  <roland@redhat.com>
85
86         * elf/rtld.c (_dl_start_final): Move _begin, _end decls outside the fn.
87         (_dl_start) [DONT_USE_BOOTSTRAP_MAP]: Use &_begin instead of l_addr to
88         find the ELF header.
89
90         * elf/rtld.c (dl_main) [USE_TLS]: Adjust l_tls_initimage of main
91         executable if needed, in case it's actually a shared object.
92
93 2002-09-11  Roland McGrath  <roland@redhat.com>
94
95         * elf/dl-load.c (_dl_map_object_from_fd): Use l_addr instead of
96         l_map_start to adjust l_tls_initimage.
97
98         * nss/getnssent_r.c (__nss_getent_r): Use EAGAIN instead of errno
99         when using h_errno and it's not set to NETDB_INTERNAL.
100         * nss/getXXbyYY_r.c [NEED_H_ERRNO]: Likewise.
101
102         * Makefile ($(common-objpfx)testrun.sh): New target.
103         (others): Depend on it.
104         (postclean-generated): Append it.
105
106         * nss/bug-erange.c: New file.
107         * nss/Makefile (tests): Add it.
108
109         * nss/getXXbyYY_r.c (INTERNAL (REENTRANT_NAME)): Return errno
110         instead of always EAGAIN when status is NSS_STATUS_TRYAGAIN.
111
112         * sysdeps/generic/dl-environ.c (unsetenv): Redo last fix without
113         strncmp, keeps the code smaller for a non-performance-critical case.
114
115         * sysdeps/generic/dl-environ.c (unsetenv): Rewritten using strncmp,
116         no longer wrongly matches arbitrary prefixes of NAME.
117         Reported by Jakub Jelinek <jakub@redhat.com>.
118
119 2002-09-11  Jakub Jelinek  <jakub@redhat.com>
120
121         * posix/bug-regex11.c (tests): New array.
122         (main): Rewritten to run more different tests.
123
124 2002-09-10  Roland McGrath  <roland@redhat.com>
125
126         * nscd/Makefile (CPPFLAGS-nscd, CPPFLAGS-nscd_conf, CPPFLAGS-dbg_log)
127         (CPPFLAGS-connections, CPPFLAGS-hstcache): Variables removed.
128         Instead, catch all of $(nscd-modules) via cppflags-iterator.mk.
129
130         * sysdeps/powerpc/fpu/s_isnan.c: Do macro hackery on __GI___isnanf as
131         well so we don't get it declared by include/math.h's hidden_proto.
132         Then do hidden_proto for __isnanf locally so hidden_def works right.
133
134         * posix/bug-regex5.c (main): Use `union locale_data_value' rather than
135         a cast to turn nl_langinfo return value into an integer.
136
137 2002-09-10  Isamu Hasegawa  <isamu@yamato.ibm.com>
138
139         * posix/regexec.c (build_trtable): Fix the destination of
140         newline to prevent wrong states from overwriting.
141         Append break statements to optimization.
142
143 2002-09-10  Isamu Hasegawa  <isamu@yamato.ibm.com>
144
145         * posix/regcomp.c: Wrap #include wchar.h and wctype.h in #if.
146         (build_range_exp): Add castings to strlen invocations.
147         (build_collating_symbol): Restore the type of characters from "char"
148         to "unsigned char", and supplement castings.
149         (build_collating_symbol): Likewise.
150         (build_equiv_class): Likewise.
151         (build_charclass): Likewise.
152         (seek_collating_symbol_entry): Likewise.
153         (parse_bracket_exp): Likewise.
154         (build_word_op): Supplement a casting.
155         * posix/regex_internal.c: Wrap #include wchar.h and wctype.h in #if.
156         (re_string_allocate): Fix castings.
157         (re_string_construct): Likewise.
158         (re_string_construct_common): Likewise.
159         (re_string_realloc_buffers): Likewise.
160         (build_wcs_buffer): Likewise.
161         (build_wcs_upper_buffer): Likewise.
162         (re_string_skip_chars): Likewise.
163         (re_string_reconstruct): Likewise.
164         * posix/regex_internal.h: Restore the type of characters in
165         re_string_t and bracket_elem_t from "char" to "unsigned char".
166         (re_string_elem_size_at): Fix castings.
167         * posix/regexec.c: Wrap #include wchar.h and wctype.h in #if.
168         (transit_state_bkref_loop): Restore the type of characters from
169         "char" to "unsigned char", and append a cast to "char*" pointer in
170         array subscript.
171         (check_node_accept_bytes): Likewise.
172         (find_collation_sequence_value): Likewise.
173
174 2002-09-10  Hartvig Ekner  <hartvige@mips.com>
175
176         * sysdeps/mips/memcpy.S: New file.
177         * sysdeps/mips/memset.S: New file.
178         * sysdeps/mips/fpu/e_sqrt.c:  New file.
179         * sysdeps/mips/fpu/e_sqrtf.c: New file.
180
181         * fpu/fclrexcpt.c: Cleaned up the FPU exception stuff - was not
182         functional before. Also removed all SHLIB_COMPAT stuff.
183         * fpu/fegetenv.c: Likewise.
184         * fpu/fesetenv.c:: Likewise.
185         * fpu/feupdateenv.c: Likewise.
186         * fpu/fgetexcptflg.c: Likewise.
187         * fpu/fraiseexcpt.c: Likewise.
188
189         * sysdeps/mips/fpu/fsetexcptflg.c: New file.
190
191 2002-09-09  Jakub Jelinek  <jakub@redhat.com>
192
193         * include/math.h (__finite_internal, __finitef_internal,
194         __finitel_internal, __isinf_internal, __isnan_internal): Remove.
195         (isfinite): Remove.
196         (__finite, __isinf, __isnan, __finitef, __isinff, __isnanf, __finitel,
197         __isinfl, __isnanl): Add hidden_proto.
198         (__fpclassify, __fpclassifyf, __fpclassifyl, __expm1l): Add
199         libm_hidden_proto.
200         * math/Makefile (libm-calls): Add s_isinf and s_isnan.
201         * stdio-common/printf_fp.c (__printf_fp): Remove INTUSE from
202         __is{inf,nan} calls.
203         * stdio-common/printf_size.c (printf_size): Likewise.
204         * sysdeps/generic/printf_fphex.c (__printf_fphex): Likewise.
205         * sysdeps/generic/s_ldexp.c (__ldexp): Likewise.
206         * sysdeps/generic/s_ldexpf.c (__ldexpf): Likewise.
207         * sysdeps/generic/s_ldexpl.c (__ldexpl): Likewise.
208         * sysdeps/generic/s_expm1l.c (__expm1l): Add libm_hidden_def.
209         * sysdeps/i386/fpu/s_finite.S (__finite_internal): Remove alias.
210         (__finite): Add hidden_def.
211         * sysdeps/i386/fpu/s_finitef.S (__finitef_internal): Remove alias.
212         (__finitef): Add hidden_def.
213         * sysdeps/i386/fpu/s_finitel.S (__finitel_internal): Remove alias.
214         (__finitel): Add hidden_def.
215         * sysdeps/i386/fpu/s_isinfl.c (__isinfl): Remove INTDEF.  Add
216         hidden_def.
217         * sysdeps/i386/fpu/s_isnanl.c (__isnanl): Likewise.
218         * sysdeps/i386/fpu/s_fpclassifyl.c (__fpclassifyl): Add
219         libm_hidden_def.
220         * sysdeps/i386/fpu/s_expm1l.S (__expm1l): Likewise.
221         * sysdeps/ieee754/dbl-64/s_finite.c (__finite): Remove INTDEF.  Add
222         hidden_def.
223         * sysdeps/ieee754/dbl-64/s_isinf.c (__isinf): Likewise.
224         (__isinfl): Remove INTDEF.
225         * sysdeps/ieee754/dbl-64/s_isnan.c (__isnan): Remove INTDEF.  Add
226         hidden_def.
227         (__isnanl): Remove INTDEF.
228         * sysdeps/ieee754/dbl-64/s_fpclassify.c (__fpclassify): Add
229         libm_hidden_def.
230         * sysdeps/ieee754/dbl-64/e_lgamma_r.c (sin_pi): Use __sin and __cos
231         instead of sin and cos.
232         * sysdeps/ieee754/flt-32/s_finitef.c (__finitef): Remove INTDEF.
233         Add hidden_def.
234         * sysdeps/ieee754/flt-32/s_isinff.c (__isinff): Likewise.
235         * sysdeps/ieee754/flt-32/s_isnanf.c (__isnanf): Likewise.
236         * sysdeps/ieee754/flt-32/s_fpclassifyf.c (__fpclassifyf): Add
237         libm_hidden_def.
238         * sysdeps/ieee754/ldbl-128/s_finitel.c (__finitel): Remove INTDEF.
239         Add hidden_def.
240         * sysdeps/ieee754/ldbl-128/s_isinfl.c (__isinfl): Likewise.
241         * sysdeps/ieee754/ldbl-128/s_isnanl.c (__isnanl): Likewise.
242         * sysdeps/ieee754/ldbl-128/s_fpclassifyl.c (__fpclassifyl): Add
243         libm_hidden_def.
244         * sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Add
245         libm_hidden_def.
246         * sysdeps/ieee754/ldbl-96/s_finitel.c (__finitel): Remove INTDEF.
247         Add hidden_def.
248         * sysdeps/ieee754/ldbl-96/s_isinfl.c (__isinfl): Likewise.
249         * sysdeps/ieee754/ldbl-96/s_isnanl.c (__isnanl): Likewise.
250         * sysdeps/ieee754/ldbl-96/s_fpclassifyl.c (__fpclassifyl): Add
251         libm_hidden_def.
252         * sysdeps/ia64/fpu/s_finite.S (__finite_internal, __finitef_internal,
253         __finitel_internal): Remove aliases.
254         (__finite, __finitef, __finitel): Add hidden_def.
255         * sysdeps/ia64/fpu/s_isnan.S (__isnan_internal, __isnanf_internal,
256         __isnanl_internal): Remove aliases.
257         (__isnan, __isnanf, __isnanl): Add hidden_def.
258         * sysdeps/ia64/fpu/s_isinf.S (__isinf_internal, __isinff_internal,
259         __isinfl_internal): Remove aliases.
260         (__isinf, __isinff, __isinfl): Add hidden_def.
261         * sysdeps/ia64/fpu/s_fpclassify.S (__fpclassify, __fpclassifyf,
262         __fpclassifyl): Add libm_hidden_def.
263         * sysdeps/ia64/fpu/s_expm1l.S (__expm1l): Likewise.
264         * sysdeps/m68k/s_isinfl.c (__isinfl): Remove INTDEF.  Add hidden_def.
265         * sysdeps/m68k/fpu/s_isinf.c (INTDEFX): Remove.
266         (hidden_defx): Define and use.
267         * sysdeps/m68k/fpu/s_fpclassifyl.c (__fpclassifyl): Add
268         libm_hidden_def.
269         * sysdeps/m68k/fpu/s_expm1l.c (__expm1l): Likewise.
270         * sysdeps/m68k/s_isnanl.c (__isnanl): Add hidden_def.
271         * sysdeps/powerpc/fpu/s_isnan.c (__isnan, __isnanf, __isnanl):
272         Remove INTDEF.
273         (__isnan, __isnanf): Add hidden_def.
274         * sysdeps/x86_64/fpu/s_finitel.S (__finitel_internal): Remove alias.
275         (__finitel): Add libm_hidden_def.
276         * sysdeps/x86_64/fpu/s_expm1l.S (__expm1l): Likewise.
277
278         * include/fenv.h (feraiseexcept, fesetenv): Add libm_hidden_proto.
279         * sysdeps/alpha/fpu/fesetenv.c (fesetenv): Add libm_hidden_ver.
280         * sysdeps/alpha/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
281         * sysdeps/arm/fpu/fesetenv.c (fesetenv): Likewise.
282         * sysdeps/arm/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
283         * sysdeps/generic/fesetenv.c (fesetenv): Likewise.
284         * sysdeps/generic/fraiseexcpt.c (feraiseexcept): Likewise.
285         * sysdeps/i386/fpu/fesetenv.c (fesetenv): Likewise.
286         * sysdeps/i386/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
287         * sysdeps/m68k/fpu/fesetenv.c (fesetenv): Likewise.
288         * sysdeps/m68k/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
289         * sysdeps/mips/fpu/fesetenv.c (fesetenv): Likewise.
290         * sysdeps/mips/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
291         * sysdeps/powerpc/fpu/fesetenv.c (fesetenv): Likewise.
292         * sysdeps/powerpc/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
293         * sysdeps/sparc/fpu/fesetenv.c (fesetenv): Likewise.
294         * sysdeps/sparc/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
295         * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Add libm_hidden_def.
296         * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
297         * sysdeps/ia64/fpu/fesetenv.c (fesetenv): Likewise.
298         * sysdeps/ia64/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
299         * sysdeps/sh/sh4/fpu/fesetenv.c (fesetenv): Likewise.
300         * sysdeps/sh/sh4/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
301         * sysdeps/s390/fpu/fesetenv.c (fesetenv): Likewise.
302         * sysdeps/s390/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
303         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Likewise.
304         * sysdeps/x86_64/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
305
306 2002-09-09  Steven Munroe  <sjmunroe@us.ibm.com>
307
308         * elf/elf.h: Add powerpc64 specific elf relocation and dynamic types.
309
310 2002-09-09  Jakub Jelinek  <jakub@redhat.com>
311
312         * elf/dl-error.c (_dl_signal_cerror): Don't print anything if only
313         LD_DEBUG=statistics or LD_TRACE_PRELINKING.
314
315 2002-09-09  Ulrich Drepper  <drepper@redhat.com>
316
317         * string/stratcliff.c: Some more strncpy tests.
318         Patch by Daniel Jacobowitz <drow@mvista.com>.
319
320 2002-09-08  Roland McGrath  <roland@redhat.com>
321
322         * resolv/resolv.h: Include <sys/types.h> for u_long even in
323         the [__need_res_state] case.
324         Reported by Bruno Haible <bruno@clisp.org>.
325
326 2002-09-04  Bruno Haible  <bruno@clisp.org>
327
328         * sysdeps/generic/bits/ustat.h: Comment fix.
329         * io/sys/sendfile.h: Comment fix.
330         * sysdeps/posix/pread.c: Comment fix.
331         * sysdeps/posix/pread64.c: Comment fix.
332         * sysdeps/posix/pwrite.c: Comment fix.
333         * sysdeps/posix/pwrite64.c: Comment fix.
334
335 2002-09-06  Roland McGrath  <roland@redhat.com>
336
337         * posix/sys/utsname.h (_UTSNAME_SYSNAME_LENGTH): New macro, defined
338         to _UTSNAME_LENGTH if not already defined by <bits/utsname.h>.
339         (_UTSNAME_RELEASE_LENGTH, _UTSNAME_VERSION_LENGTH): Likewise.
340         (_UTSNAME_MACHINE_LENGTH): Likewise.
341         (struct utsname): Use new macros instead of _UTSNAME_LENGTH.
342
343 2002-09-06  Ulrich Drepper  <drepper@redhat.com>
344
345         * sysdeps/unix/sysv/linux/shm_open.c (where_is_shmfs): Correct
346         test for filesystem type name of mount points.
347
348         * include/errno.h: Use errno definition with __thread for now only
349         in libc and ld.so.
350
351         * test-skeleton.c (main): Improve error message for unexpected
352         signal case.
353
354 2002-09-05  Roland McGrath  <roland@redhat.com>
355
356         * ctype/ctype-info.c: Renamed __ctype_old_* symbols to __ctype_*.
357         * locale/lc-ctype.c (_nl_postload_ctype): Likewise.
358
359 2002-09-05  Jakub Jelinek  <jakub@redhat.com>
360
361         * wcsmbs/wcsmbsload.c (__wcsmbs_load_conv): Unlock and return in
362         case of failure.
363
364 2002-09-04  Bruno Haible  <bruno@clisp.org>
365
366         * sysdeps/unix/sysv/linux/sigset-cvt-mask.h (sigset_set_old_mask,
367         sigset_get_old_mask): Turn into inline functions.
368         * sysdeps/unix/sysv/aix/sigset-cvt-mask.h (sigset_set_old_mask,
369         sigset_get_old_mask): Likewise.
370         * sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h (sigset_set_old_mask,
371         sigset_get_old_mask): Likewise.
372         * sysdeps/generic/sigset-cvt-mask.h (sigset_set_old_mask): Declutter
373         syntax.
374
375         * elf/readlib.c (process_file): Conditionalize check for QMAGIC.
376
377         * sysdeps/generic/_strerror.c (_sys_errlist, _sys_nerr): Remove
378         default definitions.
379         (__strerror_r): Use _sys_errlist_internal instead of _sys_errlist,
380         _sys_nerr_internal instead of _sys_nerr.
381
382         * nscd/connections.c (handle_request): Declare CALLER inside #if.
383
384 2002-07-29  Steven Munroe  <sjmunroe@us.ibm.com>
385
386         * sysdeps/powerpc/__longjmp.S: Moved to...
387         * sysdeps/powerpc/powerpc32/__longjmp.S: ...here.
388         * sysdeps/powerpc/add_n.S: Moved to...
389         * sysdeps/powerpc/powerpc32/add_n.S: ...here.
390         * sysdeps/powerpc/addmul_1.S: Moved to...
391         * sysdeps/powerpc/powerpc32/addmul_1.S: ...here.
392         * sysdeps/powerpc/atomicity.h: Moved to...
393         * sysdeps/powerpc/powerpc32/atomicity.h: ...here.
394         * sysdeps/powerpc/backtrace.c: Moved to...
395         * sysdeps/powerpc/powerpc32/backtrace.c: ...here.
396         * sysdeps/powerpc/bp-asm.h: Moved to...
397         * sysdeps/powerpc/powerpc32/bp-asm.h: ...here.
398         * sysdeps/powerpc/bsd-_setjmp.S: Moved to...
399         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: ...here.
400         * sysdeps/powerpc/bsd-setjmp.S: Moved to...
401         * sysdeps/powerpc/powerpc32/bsd-setjmp.S: ...here.
402         * sysdeps/powerpc/dl-machine.c: Moved to...
403         * sysdeps/powerpc/powerpc32/dl-machine.c: ...here.
404         * sysdeps/powerpc/dl-machine.h: Moved to...
405         * sysdeps/powerpc/powerpc32/dl-machine.h: ...here.
406         * sysdeps/powerpc/dl-start.S: Moved to...
407         * sysdeps/powerpc/powerpc32/dl-start.S: ...here.
408         * sysdeps/powerpc/gprrest0.S: Moved to...
409         * sysdeps/powerpc/powerpc32/gprrest0.S: ...here.
410         * sysdeps/powerpc/gprrest1.S: Moved to...
411         * sysdeps/powerpc/powerpc32/gprrest1.S: ...here.
412         * sysdeps/powerpc/gprsave0.S: Moved to...
413         * sysdeps/powerpc/powerpc32/gprsave0.S: ...here.
414         * sysdeps/powerpc/gprsave1.S: Moved to...
415         * sysdeps/powerpc/powerpc32/gprsave1.S: ...here.
416         * sysdeps/powerpc/lshift.S: Moved to...
417         * sysdeps/powerpc/powerpc32/lshift.S: ...here.
418         * sysdeps/powerpc/memset.S: Moved to...
419         * sysdeps/powerpc/powerpc32/memset.S: ...here.
420         * sysdeps/powerpc/mul_1.S: Moved to...
421         * sysdeps/powerpc/powerpc32/mul_1.S: ...here.
422         * sysdeps/powerpc/ppc-mcount.S: Moved to...
423         * sysdeps/powerpc/powerpc32/ppc-mcount.S: ...here.
424         * sysdeps/powerpc/register-dump.h: Moved to...
425         * sysdeps/powerpc/powerpc32/register-dump.h: ...here.
426         * sysdeps/powerpc/rshift.S: Moved to...
427         * sysdeps/powerpc/powerpc32/rshift.S: ...here.
428         * sysdeps/powerpc/setjmp.S: Moved to...
429         * sysdeps/powerpc/powerpc32/setjmp.S: ...here.
430         * sysdeps/powerpc/stpcpy.S: Moved to...
431         * sysdeps/powerpc/powerpc32/stpcpy.S: ...here.
432         * sysdeps/powerpc/strchr.S: Moved to...
433         * sysdeps/powerpc/powerpc32/strchr.S: ...here.
434         * sysdeps/powerpc/strcmp.S: Moved to...
435         * sysdeps/powerpc/powerpc32/strcmp.S: ...here.
436         * sysdeps/powerpc/strcpy.S: Moved to...
437         * sysdeps/powerpc/powerpc32/strcpy.S: ...here.
438         * sysdeps/powerpc/strlen.S: Moved to...
439         * sysdeps/powerpc/powerpc32/strlen.S: ...here.
440         * sysdeps/powerpc/sub_n.S: Moved to...
441         * sysdeps/powerpc/powerpc32/sub_n.S: ...here.
442         * sysdeps/powerpc/submul_1.S: Moved to...
443         * sysdeps/powerpc/powerpc32/submul_1.S: ...here.
444         * sysdeps/powerpc/elf/bzero.S: Moved to...
445         * sysdeps/powerpc/powerpc32/elf/bzero.S: ...here.
446         * sysdeps/powerpc/elf/start.S: Moved to...
447         * sysdeps/powerpc/powerpc32/elf/start.S: ...here.
448         * sysdeps/powerpc/fpu/__longjmp.S: Moved to...
449         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: ...here.
450         * sysdeps/powerpc/fpu/fprrest.S: Moved to...
451         * sysdeps/powerpc/powerpc32/fpu/fprrest.S: ...here.
452         * sysdeps/powerpc/fpu/fprsave.S: Moved to...
453         * sysdeps/powerpc/powerpc32/fpu/fprsave.S: ...here.
454         * sysdeps/powerpc/fpu/setjmp.S: Moved to...
455         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: ...here.
456         * sysdeps/powerpc/fpu/s_copysign.S: Moved to...
457         * sysdeps/powerpc/powerpc32/fpu/s_copysign.S: ...here.
458         * sysdeps/powerpc/fpu/s_copysignf.S: Moved to...
459         * sysdeps/powerpc/powerpc32/fpu/s_copysignf.S: ...here.
460         * sysdeps/unix/sysv/linux/powerpc/brk.S: Moved to...
461         * sysdeps/unix/sysv/linux/powerpc/powerpc32/brk.S: ...here.
462         * sysdeps/unix/sysv/linux/powerpc/clone.S: Moved to...
463         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: ...here.
464         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Moved to...
465         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
466         * sysdeps/unix/sysv/linux/powerpc/kernel_stat.h: Moved to...
467         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: ...here.
468         * sysdeps/unix/sysv/linux/powerpc/socket.S: Moved to...
469         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: ...here.
470         * sysdeps/unix/sysv/linux/powerpc/sysdep.h: Moved to...
471         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: ...here.
472         * sysdeps/unix/sysv/linux/powerpc/syscalls.list: Moved to...
473         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: ...here.
474         Support PowerPC64.  Separate powerpc into powerpc/powerpc32 and
475         powerpc/powerpc64.
476
477 2002-07-29  Steven Munroe  <sjmunroe@us.ibm.com>
478
479         * FAQ.in: Add powerpc64 to supported targets list. Also state the
480         minimum gcc version is 3.2
481         * README: Add powerpc64 to supported targets list.
482         * configure.in: Change machine=powerpc to machine=powerpc/powerpc32.
483         Add powerpc64 and machine=powerpc/powerpc64.
484         (HAVE_ASM_GLOBAL_DOT_NAME): Define if linux*powerpc/powerpc64*.
485         * shlib-versions: Set DEFAULT version to 2.2.5 for powerpc64.
486         * sysdeps/powerpc/Dist: Remove dl-machine.c, dl-start.S, ppc-mcount.S,
487         gprsave1.S, gprsave0.S, gprrest1.S, and gprrest0.S.
488         * sysdeps/powerpc/powerpc32/Dist: New file.
489         * sysdeps/powerpc/Implies: Remove wordsize-32 and powerpc/soft-fp.
490         * sysdeps/powerpc/powerpc32/Implies: New file.
491         * sysdeps/powerpc/Makefile(cflags): Remove powerpc32 specific cflags.
492         ($(with-fp) = no): Move test to powerpc32/Makefile.
493         ($(subdir) = misc): Move to powerpc32/Makefile.
494         ($(build-shared) = yes): Move to powerpc32/Makefile.
495         ($(subdir) = csu): Move to powerpc32/Makefile.
496         (sysdep-rtld-routines): Remove dl-start.  Moved these bits to ...
497         * sysdeps/powerpc/powerpc32/Makefile: New file.
498         * sysdeps/powerpc/Versions: Remove libgcc functions.
499         * sysdeps/powerpc/powerpc32/Versions: New file.
500         * sysdeps/powerpc/fpu/Makefile: Remove fprsave and fprrest.
501         * sysdeps/powerpc/powerpc32/fpu/Makefile: New file.
502         * sysdeps/unix/sysv/linux/configure.in (powerpc*):
503         Set arch_minimum_kernel=2.4.19 for powerpc/powerpc64. Also set
504         libc_cv_gcc_unwind_find_fde=yes only if !powerpc/powerpc64.
505         ($machine): Add powerpc/powerpc64 to if ... | for
506         libc_cv_slibdir=/libc64.
507         (powerpc*): Set ldd_rewrite_script.
508         * sysdeps/unix/sysv/linux/powerpc/ldd-rewrite.sed: New file.
509         * sysdeps/unix/sysv/linux/powerpc/Dist: Remove clone.S.
510         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: New file.
511         Add clone.S.
512         * sysdeps/unix/sysv/linux/powerpc/Makefile: Remove oldgetrlimit64.
513         * sysdeps/unix/sysv/linux/powerpc/Versions: Remove GLIBC_2.0
514         functions.  Remove GLIBC_2.2 functions except getrlimit and
515         setrlimit.  Moved them to ...
516         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: New file.
517
518 2002-09-04  Ulrich Drepper  <drepper@redhat.com>
519
520         * libio/tst-atime.c: Include <errno.h>.
521         (do_test): Only perform fstatvfs check if ST_NOATIME is defined.
522
523 2002-09-03  Isamu Hasegawa  <isamu@yamato.ibm.com>
524
525         * posix/regcomp.c (regcomp): Append "__restrict" modifier to avoid
526         warnings of some compilers.
527         (build_collating_symbol): Change the type of characters from
528         "unsigned char" to "char", and append a cast to "char*" pointer in
529         array subscript.
530         (build_collating_symbol): Likewise.
531         (build_equiv_class): Likewise.
532         (build_charclass): Likewise.
533         (re_compile_pattern): Remove incorrect cast.
534         (re_compile_fastmap_iter): Change the type of characters from
535         "unsigned char" to "char", and append a cast to "char*" pointer
536         in array subscript.
537         (parse_bracket_exp): Likewise.
538         * posix/regex_internal.c (re_string_construct_common): Likewise.
539         (re_string_allocate): Likewise.
540         (re_string_construct): Likewise.
541         (re_string_realloc_buffers): Likewise.
542         (build_wcs_buffer): Likewise.
543         (re_string_reconstruct): Likewise.
544         * posix/regex_internal.h: Change the type of characters in
545         re_string_t and bracket_elem_t from "unsigned char" to "char".
546         * posix/regexec.c (regexec): Append "__restrict" modifier to avoid
547         warnings of some compilers.
548         (transit_state_bkref_loop): Change the type of characters from
549         "unsigned char" to "char", and append a cast to "char*" pointer in
550         array subscript.
551         (check_node_accept_bytes): Likewise.
552         (find_collation_sequence_value): Likewise.
553
554 2002-09-04  Roland McGrath  <roland@redhat.com>
555
556         * resolv/nss_dns/dns-network.c (MAXPACKET): Increase minimum value
557         from 1024 to 65536, to avoid buffer overrun.
558
559 2002-09-03  Gerhard Tonn  <ton@de.ibm.com>
560
561         * sysdeps/s390/s390/fpu/libm-test-ulps: Regenerate.
562
563 2002-09-04  Ulrich Drepper  <drepper@redhat.com>
564
565         * libio/tst-atime.c (do_test): Make sure noatime flag isn't set
566         for filesystem.
567
568 2002-09-04  Jakub Jelinek  <jakub@redhat.com>
569
570         * posix/bug-regex11.c: New test.
571         * posix/Makefile (tests): Add bug-regex11.
572
573 2002-09-03  Jakub Jelinek  <jakub@redhat.com>
574
575         * locale/tst-C_locale.c (run_test): Pass LC_ALL_MASK not LC_ALL to
576         newlocale.
577
578 2002-09-02  Roland McGrath  <roland@redhat.com>
579
580         * sysdeps/powerpc/elf/libc-start.c [! SHARED]: Call
581         __pthread_initialize_minimal and __libc_check_standard_fds to
582         match the generic version.
583
584         * sysdeps/unix/sysv/linux/shmat.c (shmat): Add a cast to avoid a
585         warning when INLINE_SYSCALL macro uses the __syscall_ipc function.
586
587         * locale/localeconv.c (__localeconv): Cast -1 to char to avoid
588         warnings on platorms where char is unsigned.
589
590 2002-09-02  Ulrich Drepper  <drepper@redhat.com>
591
592         * version.h (VERSION): Bump to 2.2.93.
593
594         * sysdeps/unix/sysv/linux/x86_64/Dist: Add __start_context.S.
595
596 2002-09-02  Jakub Jelinek  <jakub@redhat.com>
597
598         * elf/rtld.c (dl_main): If prelinking succeeded, mark all objects
599         as relocated.
600
601 2002-09-02  Jack Howarth  <howarth@bromo.msbb.uc.edu>
602
603         * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
604
605 2002-09-02  Jakub Jelinek  <jakub@redhat.com>
606
607         * locale/localeinfo.h (struct locale_data): Add private.ctype.
608         * wcsmbs/wcsmbsload.h (__wcsmbs_gconv_fcts, __wcsmbs_last_locale,
609         __wcsmbs_to_wc, update_conversion_ptrs): Removed.
610         (__wcsmbs_gconv_fcts_c, _nl_C_LC_CTYPE): New externs.
611         (__wcsmbs_load_conv): Remove const from argument.
612         (_nl_cleanup_ctype): New proto.
613         (get_gconv_fcts): New function.
614         * wcsmbs/wcsmbsload.c (__wcsmbs_last_locale): Removed.
615         (__wcsmbs_to_wc): Rename back to...
616         (to_wc): ... this.
617         (__wcsmbs_gconv_fcts): Rename to...
618         (__wcsmbs_gconv_fcts_c): ... this.  Make const.  Use to_wc.
619         (lock): Removed.
620         (__libc_setlocale_lock): New extern.
621         (__wcsmbs_load_conv): Remove const from argument.
622         Initialize new_category->private.ctype instead of a global
623         variable.
624         (__wcsmbs_clone_conv): Use get_gconv_fcts instead of
625         update_function_ptrs.  No locking is necessary.
626         (_nl_cleanup_ctype): New function.
627         * wcsmbs/btowc.c (__btowc): Use get_gconv_fcts instead of
628         update_function_ptrs and a global __wcsmbs_gconv_fcts variable.
629         * wcsmbs/mbrtowc.c (__mbrtowc): Likewise.
630         * wcsmbs/mbsnrtowcs.c (__mbsnrtowcs): Likewise.
631         * wcsmbs/wcrtomb.c (__wcrtomb): Likewise.
632         * wcsmbs/wcsnrtombs.c (__wcsnrtombs): Likewise.
633         * wcsmbs/wcsrtombs.c (__wcsrtombs): Likewise.
634         * wcsmbs/wctob.c (wctob): Likewise.
635         * stdlib/mblen.c (mblen): Likewise.
636         * stdlib/mbtowc.c (mbtowc): Likewise.
637         * stdlib/wctomb.c (wctomb): Likewise.
638         * wcsmbs/mbsrtowcs.c (__mbsrtowcs): Likewise.
639         Remove calls to wcsmbs_get_towc_func and wcsmbs_free_funcs.
640         * wcsmbs/mbsrtowcs_l.c (wcsmbs_get_towc_func, wcsmbs_free_funcs):
641         Removed.
642
643 2002-09-02  Roland McGrath  <roland@frob.com>
644
645         * sysdeps/mach/hurd/Versions (ld: GLIBC_2.0): Add __fxstat64.
646
647 2002-09-01  Roland McGrath  <roland@redhat.com>
648
649         * ctype/ctype.h (__ctype_b, __ctype_toupper, __ctype_tolower):
650         Variable declarations removed.
651         (__ctype_b_loc, __ctype_toupper_loc, __ctype_tolower_loc): Declare
652         these functions to replace them.
653         (__isctype, tolower, toupper, _tolower, _toupper): Use those accessor
654         functions plus an indirection rather than the old global variables.
655         * include/ctype.h (__isctype, tolower, _tolower, toupper, _toupper):
656         Macros removed.
657         (__ctype_b_loc, __ctype_toupper_loc, __ctype_tolower_loc): New extern
658         inline functions.
659         * ctype/ctype-info.c: Revert last reversion back the other way.
660         Define tsd vars CTYPE_B, CTYPE_TOLOWER, CTYPE_TOUPPER.
661         Define real function versions of include/ctype.h inlines here.
662         * ctype/Versions (libc: GLIBC_2.3): Add __ctype_b_loc,
663         __ctype_tolower_loc, __ctype_toupper_loc.
664         * locale/lc-ctype.c: Revert last reversion back the other way.
665         (_nl_postload_ctype): If current thread uses the global locale,
666         update its tsd vars.
667         * locale/uselocale.c (__uselocale): Update tsd vars from new locale.
668         * hurd/hurd/threadvar.h (enum __hurd_threadvar_index): Add CTYPE_B,
669         CTYPE_TOLOWER, CTYPE_TOUPPER.
670
671         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_address): New macro.
672         * sysdeps/mach/hurd/bits/libc-tsd.h (__libc_tsd_address): Renamed
673         from __libc_tsd_threadvar_location.
674         (__libc_tsd_set, __libc_tsd_get): Update uses.
675
676 2002-09-01  Ulrich Drepper  <drepper@redhat.com>
677
678         * ctype/ctype.h: Undo the patch before the last one.  Put back the
679         macro definitions for the standard functions to access the
680         classification and mapping arrays.
681         * include/ctype.h: Partly revert last patch.  Move the macro
682         definitions for the exported functions back to the public header.
683         #undef all the macros defined here before redefining.
684         * ctype/ctype-info.c: Revert last patch.
685         * locale/lc-ctype.c: Revert last patch.
686
687         * ctype/Makefile (routines): Add isctype.
688         * ctype/Versions (libc): Export isctype and __isctype for GLIBC_2.3.
689         * ctype/ctype.h: Add declaration of isctype.
690         * include/ctype.h: Declare __isctype.
691         * ctype/isctype.c: New file.
692
693 2002-09-01  Roland McGrath  <roland@redhat.com>
694
695         * sysdeps/generic/libc-tls.c (__pthread_initialize_minimal): Pass
696         TLS_INIT_TCB_SIZE, TLS_INIT_TCB_ALIGN instead of 0, 1.
697
698         * include/getopt.h: Include <features.h> before <posix/getopt.h>.
699
700         * locale/findlocale.c (_nl_remove_locale): Don't search in
701         _nl_locale_file_list if DATA->alloc is ld_archive.
702         Use _nl_unload_locale to do the rest of the work.
703
704         * locale/loadarchive.c (_nl_load_locale_from_archive): Set usage_count
705         of new structure to UNDELETABLE.
706
707         * wctype/wctype.h (iswalnum, iswalpha, iswcntrl, iswdigit, iswlower,
708         iswgraph, iswprint, iswpunct, iswspace, iswupper, iswxdigit, iswblank,
709         towlower, towupper): Macros removed.
710         * ctype/ctype.h (__tobody): Put parens around macro argument.
711         (__isctype): Macro removed.
712         (__ctype_b, __ctype_tolower, __ctype_toupper): Decls removed.
713         (isalnum, isalpha, iscntrl, isdigit, islower, isgraph, isprint,
714         ispunct, isspace, isupper, isxdigit, isblank, _tolower, _toupper,
715         tolower, toupper): Macros and inlines removed.
716         * include/ctype.h [! NOT_IN_libc]
717         (isalnum, isalpha, iscntrl, isdigit, islower, isgraph, isprint,
718         ispunct, isspace, isupper, isxdigit, isblank, _tolower, _toupper,
719         tolower, toupper): Define here instead, using _NL_CURRENT.
720         * ctype/ctype.c (__ctype_tolower, __ctype_toupper): Define as macros
721         using _NL_CURRENT.
722         * ctype/ctype-extn.c (__ctype_tolower, __ctype_toupper): Likewise.
723         * ctype/ctype-info.c (__ctype_b, __ctype_tolower, __ctype_toupper):
724         Renamed these to __ctype_old_*. Define old names only for SHLIB_COMPAT.
725         (__ctype32_b, __ctype32_tolower, __ctype32_toupper): Likewise.
726         (__ctype32_wctrans, __ctype32_wctrans, __ctype32_width): Removed.
727         * locale/lc-ctype.c (_nl_postload_ctype): Use renamed variables,
728         conditional on SHLIB_COMPAT.  Don't set removed variables at all.
729         * wctype/wcfuncs.c: Use _NL_CURRENT instead of those globals.
730         * wcsmbs/wcwidth.h (internal_wcwidth): Likewise.
731         * resolv/res_init.c [RESOLVSORT] (sort_mask): Renamed sort_mask_chars.
732         (ISSORTMASK): Update use.
733         * intl/localealias.c [__GNUC__]: #undef alloca before #define.
734         * nss/nss_files/files-XXX.c (last_use): Rename `none' to `nouse'.
735         (_nss_files_getENTNAME_r): Likewise.
736         * nss/nss_files/files-alias.c (last_use, _nss_files_getaliasent_r):
737         Likewise.
738
739         * Makerules (all-nonlib): Renamed from all-tests.
740         Include $(others) here too.
741         * locale/Makefile (CPPFLAGS-locale, CPPFLAGS-localedef,
742         CPPFLAGS-ld-ctype, CPPFLAGS-ld-time, CPPFLAGS-ld-numeric,
743         CPPFLAGS-ld-monetary, CPPFLAGS-ld-collate, CPPFLAGS-ld-identification,
744         CPPFLAGS-charmap, CPPFLAGS-locarchive, CPPFLAGS-linereader,
745         CPPFLAGS-charmap-dir): Variables removed.  Instead, catch all
746         the program modules via cppflags-iterator.mk.
747         * sunrpc/Makefile (CPPFLAGS-rpc_main): Variable removed.
748         Instead, catch all rpcgen-objs via cppflags-iterator.mk.
749
750 2002-08-31  Roland McGrath  <roland@redhat.com>
751
752         * posix/tst-getconf.sh: If no third arg, work with static linking.
753
754         * locale/categories.def (LC_TIME): No more _nl_postload_time.
755
756         * locale/setlocale.c (_nl_category_postload): Use weak refs only under
757         [_NL_CURRENT_INDIRECT].
758
759 2002-08-31  Ulrich Drepper  <drepper@redhat.com>
760
761         * time/tst-ftime_l.c (main): Also test strftime with uselocale.
762
763 2002-08-31  Roland McGrath  <roland@redhat.com>
764
765         * locale/newlocale.c (__newlocale): Don't use strdup for names.
766         Instead, make the single allocation of the structure larger to hold
767         the name strings.
768         * locale/duplocale.c (__duplocale): Don't strdup names individually.
769         Instead, calculate size for a single allocation and copy into it.
770         * locale/freelocale.c (__freelocale): Don't free names individually.
771
772         * locale/newlocale.c (__newlocale): Don't leak old data or names.
773
774         * locale/xlocale.h (__locale_struct): Move __names member last,
775         for binary compatibility.
776
777         * locale/duplocale.c (__duplocale): Free names from the right array.
778
779         * locale/uselocale.c (__uselocale): Return previous locale when
780         setting a new one.
781
782         * locale/newlocale.c: Commit changes from 2002-08-30
783         batch where I failed to commit this file:
784         (__newlocale): Fill in __names array.
785
786 2002-08-31  Ulrich Drepper  <drepper@redhat.com>
787
788         * sysdeps/gnu/Makefile: Only depend on Versions.v.i for
789         errlist-compat.c if versioning==yes.
790
791 2002-08-31  Andreas Jaeger  <aj@suse.de>
792
793         * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Declare
794         external functions with hidden attribute.
795         (elf_machine_rela): Optimize.
796
797         * sysdeps/x86_64/memset.S: New file.
798         * sysdeps/x86_64/bzero.S: New file.
799         * sysdeps/x86_64/stpcpy.S: New file.
800         * sysdeps/x86_64/strcat.S: New file.
801         * sysdeps/x86_64/strchr.S: New file.
802         * sysdeps/x86_64/strcpy.S: New file.
803         * sysdeps/x86_64/strcspn.S: New file.
804         * sysdeps/x86_64/strlen.S: New file.
805         * sysdeps/x86_64/strpbrk.S: New file.
806         * sysdeps/x86_64/strspn.S: New file.
807         * sysdeps/x86_64/strcmp.S: New file.
808         * sysdeps/x86_64/strtok_r.S: New file.
809         * sysdeps/x86_64/strtok.S: New file.
810         * sysdeps/x86_64/memcpy.S: New file.
811         * sysdeps/x86_64/mempcpy.S: New file.
812
813         * sysdeps/x86_64/fpu/s_copysign.S: Fix algorithm.
814
815         * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for double tests.
816
817 2002-08-31  Ulrich Drepper  <drepper@redhat.com>
818
819         * stdio-common/Makefile (generated): Add errlist-compat.c.
820
821         * locale/Makefile (extra-objs): Add $(localedef-aux:=.o).
822
823         * locale/localeinfo.h: Pretty printing.
824
825         * stdio-common/vfprintf.c (vfprintf): Remove duplicate ifs in
826         form_number handling.
827
828 2002-08-31  Andreas Jaeger  <aj@suse.de>
829
830         * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for float and long
831         double tests.
832
833         * sysdeps/unix/sysv/linux/x86_64/Makefile (sysdep_routines): Add
834         __start_context.
835
836         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: New file.
837
838         * sysdeps/unix/sysv/linux/x86_64/makecontext.c: New file.
839
840         * sysdeps/unix/sysv/linux/x86_64/ucontext_i.h: Add defines for
841         registers used for passing args.
842
843         * sysdeps/unix/sysv/linux/x86_64/swapcontext.S: Save and restore
844         all needed registers.
845
846         * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Restore all
847         registers.
848
849         * sysdeps/unix/sysv/linux/x86_64/getcontext.S: Save all needed
850         registers.
851
852 2002-08-30  Ulrich Drepper  <drepper@redhat.com>
853
854         * elf/dynamic-link.h (elf_get_dynamic_info): Mark with
855         always_inline attribute.
856
857 2002-08-30  Roland McGrath  <roland@redhat.com>
858
859         * stdlib/tst-setcontext.c (main): If makecontext does nothing,
860         presume it's the stub and bail without error.
861
862         * nss/getnssent_r.c (__nss_getent_r): Return ENOENT if status is
863         neither SUCCESS nor TRYAGAIN (see 2002-08-25 change [PR libc/4259]).
864
865         * nss/getnssent_r.c (__nss_getent_r): Set *H_ERRNOP, not global one.
866
867         * sysdeps/x86_64/hp-timing.h (HP_TIMING_NOW, HP_TIMING_ACCUM): New
868         macros replace the i686 versions for 64-bit mode.
869
870         * locale/duplocale.c: Include <string.h>.
871
872         * intl/dcigettext.c (DCIGETTEXT) [_LIBC]: Check for bogus CATEGORY.
873         [_LIBC] (category_to_name): Don't define the function.  Instead
874         define a macro using _nl_category_names.
875
876         * locale/xlocale.h (struct __locale_struct): New member `__names'.
877         * locale/xlocale.c (_nl_C_locobj): Update initializer.
878         * locale/global-locale.c (_nl_global_locale): Likewise.
879         * locale/duplocale.c (__duplocale): strdup __names elements.
880         * locale/freelocale.c (__freelocale): Free __names elements.
881         * locale/localename.c (_nl_current_names): Variable removed.
882         (__current_locale_name): Use _NL_CURRENT_LOCALE->__names instead.
883         * locale/localeinfo.h (_nl_current_names): Removed decl.
884         * locale/setlocale.c: Use _nl_global_locale->__names in place of
885         _nl_current_names throughout.
886
887         * locale/setlocale.c (setlocale): strdup -> __strdup (not ISO C).
888
889         * sysdeps/gnu/errlist-compat.awk: Emit link_warnings for sys_errlist
890         and sys_nerr in the output file.
891
892         * sunrpc/Makefile (rpcgen-cmd): Pass CPP in rpcgen's environment.
893         * scripts/cpp: Just use the environment variable.
894
895         * libio/tst-mmap-setvbuf.c (main): Use 'm' fopen flag.
896         * libio/tst-mmap-offend.c (do_test): Likewise.
897         * libio/tst-mmap-fflushsync.c (do_test): Likewise.
898         * libio/tst-mmap-eofsync.c (do_test): Likewise.
899         * libio/tst-mmap2-eofsync.c (do_test): Likewise.
900
901         * locale/localename.c: If the current locale is the global locale, use
902         _nl_current_names; otherwise use the locale object.
903
904 2002-08-29  Ulrich Drepper  <drepper@redhat.com>
905
906         * libio/fileops.c (_IO_new_file_fopen): Recognize new mode specifier
907         'm' to enable mmap I/O.
908         * libio/libio.h (_IO_FILE): Rename _blksize field to _flags2.  The
909         former wasn't used (anymore?).
910         (_IO_FLAGS2_MMAP): New define.
911         * libio/genops.c (_IO_no_init): Initialize _flags2 field.
912         * libio/iofopen.c (__fopen_maybe_mmap): Use mmap callbacks only if
913         _IO_FLAGS2_MMAP bit is set.
914         * libio/iofdopen.c (_IO_new_fdopen): Recognize 'm' mode specifier.
915         Enable mmap-using mode only if 'm' was set.
916
917 2002-08-29  Roland McGrath  <roland@frob.com>
918
919         * sysdeps/mach/hurd/bits/local_lim.h (NAME_MAX): New macro.
920
921         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup: doinit):
922         Change argument type from int to intptr_t.
923
924         * locale/global-locale.c (__libc_tsd_LOCALE_data): Conditionalize the
925         initializer on [! _HURD_THREADVAR_H] (bad kludge).
926         * sysdeps/mach/hurd/i386/init-first.c (init): Initialize
927         _HURD_THREADVAR_LOCALE slot to &_nl_global_locale.
928         * hurd/hurdsig.c (_hurdsig_init): Likewise.  Zero other slots.
929
930         * sysdeps/mach/_strerror.c (__strerror_r): Add libc_hidden_def.
931
932         * sysdeps/mach/hurd/pwrite64.c: No libc_hidden_def (__libc_pwrite64).
933
934         * sysdeps/mach/hurd/dl-sysdep.c (__GI_abort): Define alias for abort.
935
936         * include/assert.h (__assert_perror_fail): Declare it, do hidden_proto.
937         * assert/assert-perr.c: Add libc_hidden_def.
938         * elf/dl-minimal.c [! NDEBUG] (__assert_perror_fail): New function.
939
940         * sysdeps/gnu/errlist-compat.awk: Don't fail if there are no versions
941         found at all.
942         * sysdeps/gnu/Versions: File removed.  Moved all #errlist-compat
943         sys_errlist stuff to ...
944         * sysdeps/unix/sysv/linux/Versions: ... here.
945
946         * mach/mach.h: Include <features.h>.
947
948 2002-08-29  Roland McGrath  <roland@redhat.com>
949
950         * elf/dl-runtime.c (IN_DL_RUNTIME): Define this macro first thing.
951         * sysdeps/i386/dl-machine.h: Only declare fixup, profile_fixup and
952         define ELF_MACHINE_RUNTIME_TRAMPOLINE under #ifdef IN_DL_RUNTIME.
953
954         * sysdeps/generic/readelflib.c (process_elf_file): Fix typo.
955
956         * iconv/gconv_int.h: Include <stdlib.h> for alloca decl.
957         (norm_add_slashes): alloca -> __alloca
958
959 2002-08-29  Jakub Jelinek  <jakub@redhat.com>
960
961         * stdio-common/vfprintf.c (vfprintf): Add builtin_expect for
962         string_malloced, it is unlikely to be set.
963         Only call free with non-NULL workspace.
964         * sysdeps/sparc/sparc32/sparcv9/Makefile (sysdep-CFLAGS): Use
965         -mcpu=ultrasparc, not only tune for it.
966         (ASFLAGS*): Set unconditionally.
967
968         * sysdeps/generic/readelflib.c (process_elf_file): Make LOADADDR
969         ElfW(Addr).  Don't mask upper 32-bits and lower 12 bits off from
970         p_vaddr/p_offset when computing LOADADDR.
971
972 2002-08-29  Ulrich Drepper  <drepper@redhat.com>
973
974         * version.h (VERSION): Bump to 2.2.92.
975
976         * time/Makefile (tst-ftime_l-ENV): New variable.
977
978         * iconvdata/ibm870.c: All bytes are now used, no holes anymore.
979
980         * localedata/charmaps/IBM870: Add correct mapping for <U017E>,
981         <U017A>, <U017D> and <U0179>. Add missing mappings.
982         Patch by Antonin Kopecky <akopecky@tajmac-zps.cz>.
983
984         * gmon/sys/gmon.h (ARCDENSITY): Bump to 3.
985         Define ARCINDEX.  Bump MAXARCS to 1 << 20.
986         (struct tostruct): Use ACRINDEX as type for link field.
987         (statuc gmonparam): Likewise for froms.
988         * gmon/gmon.c (__monstartup): Use currect cast for assignments to
989         kcount and froms.
990         (write_call_graph): Use correct type for from_index and to_index.
991         * gmon/mcount.c: Use correct types for frompcindex and toindex
992         variables.
993         Patches by Dan Kegel <dank@kegel.com>.
994
995         * sysdeps/posix/getaddrinfo.c (gaih_inet): Fix code to determine
996         canonical name.
997
998         * time/strptime.c (ISSPACE): New #define.  Use isspace or
999         __isspace_l.  Replace calls to isspace.
1000         (match_string): Define variant for USE_IN_EXTENDED_LOCALE_MODEL.
1001
1002 2002-08-29  Roland McGrath  <roland@redhat.com>
1003
1004         * string/tst-strxfrm.c: Remove __ from function names.
1005
1006 2002-08-28  Ulrich Drepper  <drepper@redhat.com>
1007
1008         * include/wchar.h: Declare __mbsrtowcs_l.
1009         * wcsmbs/Makefile (routines): Add mbsrtowcs_l.
1010         * wcsmbs/mbsrtowcs.c: Add support for compilation with
1011         USE_IN_EXTENDED_LOCALE_MODEL.
1012         * wcsmbs/mbsrtowcs_l: New file.
1013         * wcsmbs/wcsmbsload.c (__wcsmbs_to_wc): Renamed from to_wc.  Don't
1014         define as static.  Change all uses.
1015         (__wcsmbs_getfct): Renamed from getfct.  Don't define as static.
1016         Change all callers.
1017         * wcsmbs/wcsmbsload.h: Declare __wcsmbs_to_wc and __wcsmbs_getfct.
1018         * time/strftime.c: When translating for the extended locale model
1019         use the _l functions.
1020         * time/Makefile (tests): Add tst-ftime_l.
1021         * time/tst-ftime_l.c: New file.
1022
1023 2002-08-28  Roland McGrath  <roland@redhat.com>
1024
1025         * locale/findlocale.c [NL_CURRENT_INDIRECT] (_nl_C): New variable.
1026         * locale/setlocale.c (setlocale) [NL_CURRENT_INDIRECT]: Null return
1027         from _nl_find_locale ok if for _nl_C_name.
1028
1029         * locale/nl_langinfo.c [NL_CURRENT_INDIRECT]: Use a categories.def
1030         iterator to refer to each category's _nl_current_LC_FOO symbol, so
1031         we know they are all linked in.
1032
1033         * NEWS: Added 2.2.6 text from 2.2 branch version.
1034
1035         * time/strptime.c (strptime_internal): Remove spurious const.
1036
1037         * locale/lc-time.c (_nl_init_era_entries, _nl_get_era_entry,
1038         _nl_select_era_entry): Moved to ...
1039         * time/era.c: ... here, new file.
1040         (_nl_init_era_entries, _nl_get_era_entry, _nl_select_era_entry):
1041         Add internal_function to definitions.  Take an additional argument
1042         giving the `struct locale_data *' to use.
1043         * locale/lc-time.c (_get_alt_digit, _nl_get_walt_digit,
1044         _nl_parse_alt_digit): Moved to ...
1045         * time/alt_digit.c: ... here, new file.
1046         * time/lc-time-cleanup.c: New file.
1047         * locale/lc-time.c (_nl_postload_time, free_mem): Functions removed.
1048         * locale/localeinfo.h (_nl_postload_time): Remove decl.
1049         (_nl_cleanup_time): Declare it.
1050         (_nl_get_era_entry, _nl_select_era_entry): Update decls.
1051         (_get_alt_digit, _nl_get_walt_digit, _nl_parse_alt_digit): Likewise.
1052         * time/Makefile (aux): New variable: era, alt_digit, lc-time-cleanup.
1053         * time/strftime.c: Pass locale data to helper functions.
1054         * time/strptime.c: Likewise.
1055
1056         * locale/localeinfo.h (struct locale_data): New member `private'
1057         * locale/loadlocale.c (_nl_intern_locale_data): Initialize it.
1058         (_nl_unload_locale): Call LOCALE->private.cleanup if it is set.
1059         * locale/C-collate.c: Update initializer.
1060         * locale/C-identification.c: Likewise.
1061         * locale/C-measurement.c: Likewise.
1062         * locale/C-telephone.c: Likewise.
1063         * locale/C-address.c: Likewise.
1064         * locale/C-name.c: Likewise.
1065         * locale/C-paper.c: Likewise.
1066         * locale/C-time.c: Likewise.
1067         * locale/C-numeric.c: Likewise.
1068         * locale/C-monetary.c: Likewise.
1069         * locale/C-messages.c : Likewise.
1070         * locale/C-ctype.c: Likewise.
1071
1072         * time/strptime.c [USE_IN_EXTENDED_LOCALE_MODEL] (_NL_CURRENT_WORD):
1073         Redefine this too.
1074
1075 2002-08-28  Jakub Jelinek  <jakub@redhat.com>
1076
1077         * sysdeps/generic/ldsodefs.h (__rtld_global_attribute__): Define.
1078         (_rtld_global): Use it.
1079
1080         * sysdeps/gnu/Dist: Remove errlist-compat.c.
1081         * sysdeps/gnu/Makefile (errlist-compat.c): Build this file in the
1082         object directory.  Pass all Versions files to the awk script.
1083         * sysdeps/gnu/errlist-compat.c: Removed.
1084         * sysdeps/gnu/errlist.awk: Use #errlist-compat comments from the
1085         first Versions file in the search path which has them.
1086         Allow multiple errlist symbol versions to have the same count of
1087         errors.
1088         * sysdeps/gnu/errlist-compat.awk: Include <errlist-compat.c> instead
1089         of "errlist-compat.c".
1090         * sysdeps/gnu/errlist.c: Regenerated.
1091         * sysdeps/unix/sysv/linux/mips/Versions (libc): Add #errlist-compat
1092         comments at GLIBC_2.0, GLIBC_2.1 and GLIBC_2.3.
1093         * sysdeps/unix/sysv/linux/alpha/Versions: Likewise.
1094         (librt): Add aio_cancel and aio_cancel64 as GLIBC_2.3.
1095         * sysdeps/unix/sysv/linux/hppa/Versions: Likewise.
1096         * sysdeps/unix/sysv/linux/sparc/Versions: New file.
1097         * sysdeps/unix/sysv/linux/alpha/bits/errno.h: New file.
1098         * sysdeps/unix/sysv/linux/hppa/bits/errno.h (ECANCELED): Define to
1099         ECANCELLED if not defined by kernel headers.
1100         * sysdeps/unix/sysv/linux/bits/errno.h: Don't redefine ECANCELED if
1101         already defined by kernel headers.
1102         * sysdeps/unix/sysv/linux/sparc/bits/errno.h: New file.
1103         * sysdeps/pthread/aio_cancel.c: Don't include aio.h and its
1104         aio_cancel64 renaming hack nor provide weak_alias if aio_cancel
1105         is a macro.
1106         * Versions.def (GLIBC_2.3) [librt]: Add.
1107
1108         * sysdeps/unix/sysv/linux/alpha/pipe.S: New file.
1109
1110 2002-08-28  Ulrich Drepper  <drepper@redhat.com>
1111
1112         * include/libc-symbols.h [!__ASSEMBLER__] (declare_symbol_1): Add
1113         missing comma to .type directive.
1114
1115 2002-08-28  Jakub Jelinek  <jakub@redhat.com>
1116
1117         * sysdeps/ia64/elf/configure.in (PI_STATIC_AND_HIDDEN): Define
1118         unconditionally.
1119         * sysdeps/alpha/elf/configure.in (libc_cv_alpha_hidden_gprel): New
1120         check.
1121         (PI_STATIC_AND_HIDDEN): Define if check succeeded.
1122
1123 2002-08-28  Jakub Jelinek  <jakub@redhat.com>
1124
1125         * locale/loadarchive.c (_nl_load_locale_from_archive): Add fd >= 0
1126         check to close_and_out close.  Replace return NULL statements where
1127         fd might be >= 0 with goto close_and_out.  Close the file descriptor
1128         when it is no longer needed.
1129
1130 2002-08-28  Ulrich Drepper  <drepper@redhat.com>
1131
1132         * sysdeps/s390/s390-64/dl-machine.h: Avoid unescaped newlines in
1133         string constants.
1134         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
1135         * sysdeps/arm/dl-machine.h: Likewise.
1136         * sysdeps/cris/dl-machine.h: Likewise.
1137         * sysdeps/unix/sysv/linux/m68k/register-dump.h: Likewise.
1138         * sysdeps/unix/sysv/aix/gettimeofday.c: Likewise.
1139
1140 2002-08-28  Roland McGrath  <roland@redhat.com>
1141
1142         * Makeconfig (default_cflags): Revert unintended change.
1143
1144 2002-08-28  Ulrich Drepper  <drepper@redhat.com>
1145
1146         * version.h (VERSION): Bump to 2.2.91.
1147
1148         * configure.in: Disable TLS support by default for now.
1149
1150         * sysdeps/i386/fpu/libm-test-ulps: Adjust ulp for yn for float.
1151
1152         * sysdeps/generic/strtol.c (strtol): Add some more casts to avoid
1153         warnings.
1154
1155         * stdlib/strtod.c (STRTOF): Correct type in cast of last patch.
1156
1157         * stdlib/fmtmsg.c (fmtmsg): Use correct test for failure of
1158         fprintf/fwprintf calls.
1159
1160 2002-08-28  Roland McGrath  <roland@redhat.com>
1161
1162         * Makeconfig (run-program-prefix): Fix bogus use of $(findstring ...)
1163         to use $(filter ...) instead.  Same bug fixed in aix conditionals.
1164
1165         * locale/setlocale.c: Declare postload functions weak.
1166
1167         * elf/tst-tls1-static.c: New file.
1168         * elf/tst-tls2-static.c: New file.
1169         * elf/Makefile ($(tests-static):%=$(objfpx)%.o): Remove rule.
1170
1171         Make uselocale support static linking.
1172         * locale/xlocale.c: Revert changes putting _nl_global_locale here.
1173         This file again just defines _nl_C_locobj.
1174         (_nl_C_locobj): Use a categories.def iterator in the initializer.
1175         * locale/global-locale.c: New file.  Define _nl_global_locale here,
1176         using all weak references in the initializer.
1177         * locale/Makefile (aux): Add global-locale.
1178         * locale/localeinfo.h (_nl_global_locale, _NL_CURRENT_LOCALE): Make
1179         these unconditional, along with the tsd decl.
1180         [!SHARED && HAVE___THREAD && HAVE_WEAK_SYMBOLS] (NL_CURRENT_INDIRECT):
1181         Define it under these conditions.
1182         [NL_CURRENT_INDIRECT]: Test this instead of [! SHARED].
1183         Don't declare _nl_current.  Declare _nl_current_LC_FOO as
1184         `extern __thread struct locale_data *const *'.
1185         [NL_CURRENT_INDIRECT]
1186         (_NL_CURRENT_DATA, _NL_CURRENT, _NL_CURRENT_WSTR): Add indirection.
1187         [NL_CURRENT_INDIRECT] (_NL_CURRENT_DEFINE): Rewritten.  Define
1188         the thread variable _nl_current_LC_FOO and also a special absolute
1189         symbol _nl_current_LC_FOO_used.
1190         * locale/uselocale.c (__uselocale) [NL_CURRENT_INDIRECT]:
1191         Set each _nl_current_LC_FOO symbol to point into the new locale,
1192         using weak references to test if _nl_current_LC_FOO_used was linked in.
1193         * locale/setlocale.c [! SHARED]: Replace this conditional ...
1194         [NL_CURRENT_INDIRECT]: ... with this one.
1195         (_nl_current, _nl_C): Variables removed.
1196         [NL_CURRENT_INDIRECT] (_nl_current_used): New variable, table of
1197         weak references to _nl_current_LC_FOO_used.
1198         [NL_CURRENT_INDIRECT] (CATEGORY_USED): Define using that table.
1199         (free_category): New function, broken out of ...
1200         (free_mem): ... here.  Call that.
1201         (free_mem) [NL_CURRENT_INDIRECT]: Use a categories.def iterator
1202         instead of a loop.
1203
1204         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Don't check for
1205         PT_LOAD program headers and don't try to relocate PT_TLS's p_vaddr;
1206         it is already absolute.
1207
1208         * elf/Makefile (tests): List tst-tls1 and tst-tls2 unconditionally.
1209         [$(build-static) = yes] (tests): Add tst-tls1-static, tst-tls2-static.
1210         [$(build-static) = yes] (tests-static): New variable.
1211         ($(tests-static):%=$(objfpx)%.o)): New static pattern rule.
1212
1213 2002-08-26  Christoph Hellwig  <hch@lst.de>
1214
1215         * sysdeps/unix/sysv/linux/sys/personality.h: Remark origin, fix
1216         formating braindamage, add missing PER_HPUX and PER_OSF1 values.
1217
1218 2002-08-28  Ulrich Drepper  <drepper@redhat.com>
1219
1220         * sysdeps/x86_64/Dist: Add _mcount.S and bits/link.h.
1221
1222         * sysdeps/s390/Dist: Add bits/link.h.
1223
1224         * sysdeps/sh/Dist: New file.
1225
1226         * sysdeps/ia64/Dist: Add ia64libgcc.S.
1227
1228         * sysdeps/wordsize-32/Dist: New file.
1229
1230         * sysdeps/unix/sysv/linux/alpha/Dist: Add dl-brk.S.
1231         * sysdeps/unix/sysv/linux/powerpc/Dist: Likewise.
1232         * sysdeps/unix/sysv/linux/sparc/sparc64/Dist: Likewise.
1233
1234         * sysdeps/unix/sysv/linux/Dist: Add dl-brk.c, dl-sbrk.c, and
1235         sys/personality.h.
1236
1237         * sysdeps/unix/Dist: Add i386/dl-brk.S, mips/dl-brk.S, and
1238         sparc/dl-brk.S.
1239
1240         * sysdeps/unix/bsd/Dist: Add vax/dl-brk.S.
1241
1242         * sysdeps/unix/bsd/sun/Dist: New file.
1243
1244         * sysdeps/unix/bsd/osf/Dist: New file.
1245
1246         * sysdeps/unix/bsd/hp/Dist: New file.
1247
1248         * sysdeps/unix/arm/Dist: New file.
1249
1250         * sysdeps/powerpc/Dist: Add divdi3.c and libgcc-compat.S.
1251
1252         * sysdeps/mach/hurd/Dist: Add set-init.c.
1253
1254         * sysdeps/i386/Dist: Add bits/link.h.
1255
1256         * sysdeps/gnu/Dist: Add errlist-compat.c errlist-compat.awk.
1257
1258         * sysdeps/generic/Dist: Add dl-brk.c and dl-sbrk.c.
1259
1260         * locale/Makefile (distribute): Add hashval.h.
1261
1262         * iconvdata/Makefile (distribute): Add tcvn5712-1.c and armscii-8.c.
1263
1264         * sysdeps/unix/sysv/linux/Dist: Remove errlist.h.
1265
1266         * misc/sys/cdefs.h: Define __BEGIN_NAMESPACE_STD, __END_NAMESPACE_STD,
1267         __USING_NAMESPACE_STD, __BEGIN_NAMESPACE_C99, __END_NAMESPACE_C99, and
1268         __USING_NAMESPACE_C99 depending on _GLIBCPP_USE_NAMESPACES.
1269         * ctype/ctype.h: Prepare headers for use in ISO C++ compliant
1270         implementations.
1271         * libio/stdio.h: Likewise.
1272         * locale/locale.h: Likewise.
1273         * math/math.h: Likewise.
1274         * math/bits/mathcalls.h: Likewise.
1275         * setjmp/setjmp.h: Likewise.
1276         * signal/signal.h: Likewise.
1277         * stdlib/stdlib.h: Likewise.
1278         * string/string.h: Likewise.
1279         * time/time.h: Likewise.
1280         * wcsmbs/wchar.h: Likewise.
1281         * wctype/wctype.h: Likewise.
1282
1283 2002-08-28  Roland McGrath  <roland@redhat.com>
1284
1285         * locale/tst-C-locale.c (run_test): Remove __ from function names.
1286
1287 2002-08-28  Jakub Jelinek  <jakub@redhat.com>
1288             Roland McGrath <roland@redhat.com>
1289
1290         * locale/hashval.h (compute_hashval): Use prototype defn.
1291         (hashval_t): New macro, defined to unsigned long int
1292         if not already defined.
1293         (compute_hashval): Return hashval_t instead of unsigned long int.
1294         * locale/loadarchive.c (hashval_t): New macro.
1295         * locale/programs/locarchive.c: Include hashval.h directly instead
1296         of simple-hash.h.
1297         (compute_hashval, hashval_t): Define these macros first.
1298         (insert_name): Use archive_hashval instead of compute_hashval.
1299         (add_locale, delete_locales_from_archive): Likewise.
1300
1301 2002-08-28  Jakub Jelinek  <jakub@redhat.com>
1302
1303         * locale/programs/locarchive.c (insert_name): Suppress warnings about
1304         hash collisions if be_quiet.
1305
1306 2002-08-27  Roland McGrath  <roland@redhat.com>
1307
1308         * locale/locale.h (__newlocale, __duplocale, __freelocale,
1309         __uselocale): Don't declare these any more.
1310         * include/locale.h (__uselocale): Declare here instead, using __typeof.
1311
1312         * sysdeps/unix/readdir.c: If getdents fails with ENOENT, restore errno
1313         and treat it as an EOF return.
1314         * sysdeps/unix/readdir_r.c: Likewise.
1315
1316         * sysdeps/gnu/errlist-compat.awk: Include <bits/wordsize.h> in output.
1317         From Alexandre Oliva <aoliva@redhat.com>.
1318         * sysdeps/gnu/errlist-compat.c: Regenerated.
1319
1320 2002-08-27  Brian Youmans  <3diff@gnu.org>
1321
1322         * sysdeps/ieee754/flt-32/e_asinf.c: Modified copying permission
1323         wording at request of copyright holder Stephen Moshier.
1324         * sysdeps/ieee754/ldbl-128/e_acosl.c: Likewise.
1325         * sysdeps/ieee754/ldbl-128/e_asinl.c: Likewise.
1326         * sysdeps/ieee754/ldbl-128/e_coshl.c: Likewise.
1327         * sysdeps/ieee754/ldbl-128/e_jnl.c: Likewise.
1328         * sysdeps/ieee754/ldbl-128/e_powl.c: Likewise.
1329         * sysdeps/ieee754/ldbl-128/e_sinhl.c: Likewise.
1330         * sysdeps/ieee754/ldbl-128/k_tanl.c: Likewise.
1331         * sysdeps/ieee754/ldbl-128/s_erfl.c: Likewise.
1332         * sysdeps/ieee754/ldbl-96/e_asinl.c: Likewise.
1333         * sysdeps/ieee754/ldbl-96/e_j0l.c: Likewise.
1334         * sysdeps/ieee754/ldbl-96/e_j1l.c: Likewise.
1335         * sysdeps/ieee754/ldbl-96/e_jnl.c: Likewise.
1336         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise.
1337         * sysdeps/ieee754/ldbl-96/s_erfl.c: Likewise.
1338
1339 2002-08-28  Jakub Jelinek  <jakub@redhat.com>
1340
1341         * ctype/ctype.h (isascii_l, toascii_l): Define to __*_l counterparts.
1342         * ctype/ctype-extn.c (isblank_l): Add weak alias.
1343         * sysdeps/generic/strtol_l.c (strtol_l): Likewise.
1344         * sysdeps/generic/strtoll_l.c (strtoll_l): Likewise.
1345         * sysdeps/generic/strtoul_l.c (strtoul_l): Likewise.
1346         * sysdeps/generic/strtoull_l.c (strtoull_l): Likewise.
1347         * wctype/iswctype_l.c (iswctype_l): Likewise.
1348
1349 2002-08-27  Roland McGrath  <roland@redhat.com>
1350
1351         * time/strftime.c [USE_IN_EXTENDED_LOCALE_MODEL]: No libc_hidden_def.
1352
1353         * ctype/ctype.h (__exctype_l): Don't declare __ name.
1354         * stdlib/stdlib.h: Don't declare __*_l names.
1355         * include/stdlib.h: Declare them here instead.
1356         * include/string.h: Don't declare __*_l names.
1357         * string/string.h: Declare them here instead.
1358         * time/time.h: Don't declare __*_l names.
1359         * include/time.h: Declare them here instead.
1360         * wcsmbs/wchar.h: Don't declare __*_l names.
1361         * include/wchar.h: Declare them here instead.
1362         * wctype/wctype.h: Declare iswalnum_l, not __iswalnum_l.
1363         Don't declare __*_l names.
1364         * include/wctype.h: Declare them here instead.
1365         * stdlib/monetary.h: Declare strfmon_l, not __strfmon_l.
1366         * stdlib/strfmon_l.c (strfmon_l): Define as weak alias.
1367         * locale/langinfo.h: Don't declare __nl_langinfo_l.
1368         * include/langinfo.h: Declare it here with __typeof.
1369
1370         * time/strptime.c [USE_IN_EXTENDED_LOCALE_MODEL]: Define __strptime_l
1371         instead, taking an extra __locale_t argument.
1372         * time/Makefile (routines): Add strptime_l.
1373         * time/time.h (__strptime_l, strptime_l): Declare them.
1374         * time/strptime_l.c: New file.
1375
1376         * time/time.h (__strftime_l, strftime_l): Declare them.
1377         * wcsmbs/wchar.h (__wcsftime_l, wcsftime_l): Declare them.
1378         * time/strftime_l.c: New file.
1379         * time/wcsftime_l.c: New file.
1380         * time/Makefile (routines): Add strftime_l, wcsftime_l.
1381         * time/Versions (libc: GLIBC_2.3): Add __strftime_l, __wcsftime_l,
1382         strftime_l, wcsftime_l.
1383         * time/strftime.c [USE_IN_EXTENDED_LOCALE_MODEL]: Define __strftime_l
1384         or __wcsftime_l instead, taking an extra __locale_t argument.
1385
1386         * locale/Versions (libc: GLIBC_PRIVATE): Move __uselocale to ...
1387         (libc: GLIBC_2.3): ... here.
1388
1389 2002-08-27  Ulrich Drepper  <drepper@redhat.com>
1390
1391         * stdio-common/Makefile: Fix typo in stdio_lim.h installation rule.
1392
1393         * Makefile (distribute): Add LICENSES.
1394
1395         * sysdeps/unix/sysv/linux/x86_64/Dist: Add ucontext_i.h and
1396         sys/debugreg.h.
1397
1398         * sysdeps/unix/sysv/linux/s390/Dist: Add new/route.h.
1399
1400         * sysdeps/unix/sysv/linux/ia64/Dist: Add dl-brk.S and sys/user.h.
1401
1402         * sysdeps/unix/sysv/linux/mips/Dist: Add sys/user.h.
1403
1404         * sysdeps/unix/sysv/linux/Dist: Add readahead.c.
1405
1406         * sysdeps/mach/hurd/alpha/Dist: New file.
1407
1408         * sysdeps/arm/Dist: Add bits/link.h.
1409
1410         * sunrpc/Makefile: Distribute thrsvc.
1411
1412         * stdio-common/Makefile: Remove more left-overs from old stdio.
1413
1414         * include/linewrap.h: Removed.
1415
1416         * libio/bug-mmap-fflush.c: Rewrite to not touch source directory.
1417
1418         * intl/Makefile (distribute): Add plural-eval.c.
1419
1420 2002-08-27  Roland McGrath  <roland@redhat.com>
1421
1422         * manual/sysinfo.texi (Mount Information): Correct file name to macro
1423         assocations for _PATH_MNTTAB, MNTTAB, _PATH_MOUNTED, MOUNTED.
1424         Say mtab is in either /var/run or /etc.
1425
1426 2002-08-26  Roland McGrath  <roland@redhat.com>
1427
1428         * manual/errno.texi (Error Codes): Added ECANCELED (118 for Hurd).
1429         * sysdeps/mach/hurd/bits/errno.h: Regenerated.
1430
1431         * sysdeps/gnu/Versions: New file.
1432         * sysdeps/unix/sysv/linux/Versions (libc: GLIBC_2.1): Remove
1433         _sys_errlist; sys_errlist; _sys_nerr; sys_nerr; from here.
1434         * sysdeps/gnu/Makefile ($(..)sysdeps/gnu/errlist-compat.c): New target.
1435         ($(objpfx)errlist.d): Depend on $(..)sysdeps/gnu/errlist-compat.c.
1436         * sysdeps/gnu/errlist.awk: Make output define _sys_errlist_internal
1437         and _sys_nerr_internal instead of anything else.  Make it include
1438         "errlist-compat.c" if [!NOT_IN_libc && !ERRLIST_NO_COMPAT].
1439         Make it emit some asm magic if [EMIT_ERR_MAX].
1440         * sysdeps/gnu/errlist.c: Regenerated.
1441         * sysdeps/gnu/errlist-compat.awk: New file.
1442         * sysdeps/gnu/errlist-compat.c: New file (generated).
1443         * sysdeps/mach/hurd/errlist.c (ERRLIST_NO_COMPAT): New macro.
1444         (_sys_errlist_internal): Define this as a macro for _hurd_errlist.
1445         (_sys_nerr_internal): Define this is a macro for _hurd_nerr.
1446         (SYS_ERRLIST, SYS_NERR): Macros removed.
1447         (sys_nerr, _sys_nerr): Remove these weak aliases.
1448         * sysdeps/unix/sysv/linux/errlist.c: File removed.
1449         * sysdeps/unix/sysv/linux/errlist.h: File removed.
1450         * sysdeps/unix/sysv/linux/arm/errlist.c: File removed.
1451
1452         * include/libc-symbols.h (declare_symbol): New macro.
1453         * config.h.in (ASM_TYPE_DIRECTIVE_PREFIX): New #undef.
1454         * configure.in: New check to define it.
1455         * configure: Regenerated.
1456
1457 2002-08-27  Ulrich Drepper  <drepper@redhat.com>
1458
1459         * stdio-common/Makefile (headers): Remove bits/stdio_lim.h.  This
1460         file isn't distributed.  Add special rules to install bits/stdio_lim.h.
1461
1462         * Make-dist: Remove traces of old stdio.
1463         * Makeconfig: Likewise.
1464
1465         * locale/Makefile (localedef-aux): New variable.  Only md5
1466         assigned to it.  These files are not ddistributed in this directory.
1467
1468         * sysdeps/unix/sysv/linux/s390/Dist: Add sys/procfs.h.
1469         * sysdeps/unix/sysv/linux/s390/s390-64/Dist: Remove sys/procfs.h.
1470         * sysdeps/unix/sysv/linux/s390/s390-32/Dist: Likewise.
1471
1472         * sysdeps/unix/sysv/linux/Dist: Remove sys/sendfile.h.
1473
1474         * nss/getXXbyYY_r.c (REENTRANT_NAME): If no service is available
1475         set h_errno to NO_RECOVERY [PR libc/4360].
1476
1477 2002-08-26  Ulrich Drepper  <drepper@redhat.com>
1478
1479         * libio/Makefile (tests): Add bug-fopena+.
1480         * libio/bug-fopena+.c: New file.
1481         * libio/fileops.c (_IO_file_open): Only set file pointer to end of the
1482         file for _IO_IS_APPENDING if file isn't opened for reading, too.
1483
1484         * stdio-common/tst-swprintf.c (main): Add casts to avoid warnings.
1485
1486         * locale/xlocale.c: Fix the last change.  The variable still has
1487         to end in _data.
1488         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
1489         (__libc_tsd_set): Add _data prefix to variable name.
1490
1491 2002-08-26  Roland McGrath  <roland@redhat.com>
1492
1493         * sysdeps/generic/sigset-cvt-mask.h (sigset_set_old_mask): Replace
1494         macro with inline function.
1495         (sigset_get_old_mask): Likewise.
1496         * sysdeps/posix/sigblock.c (__sigblock): Update callers.
1497         * sysdeps/posix/sigsetmask.c (__sigsetmask): Likewise.
1498         * sysdeps/posix/sigpause.c (__sigpause): Likewise.
1499         * sysdeps/posix/sigvec.c (__sigvec, sigvec_wrapper_handler): Likewise.
1500         * sysdeps/unix/sysv/aix/sigset-cvt-mask.h
1501         (sigset_set_old_mask, sigset_get_old_mask): Make these macros return
1502         values.
1503         * sysdeps/unix/sysv/linux/sigset-cvt-mask.h: Likewise.
1504         * sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h: Likewise.
1505
1506 2002-07-06  Bruno Haible  <bruno@clisp.org>
1507
1508         * sysdeps/generic/sigset-cvt-mask.h (sigset_set_old_mask,
1509         sigset_get_old_mask): Make it work with larger sigset_t.
1510         * sysdeps/posix/sigblock.c (__sigblock): Use those macros.
1511         * sysdeps/posix/sigsetmask.c (__sigsetmask): Likewise.
1512         * sysdeps/posix/sigpause.c (__sigpause): Likewise.
1513
1514 2002-08-26  Roland McGrath  <roland@redhat.com>
1515
1516         * time/sys/time.h [__USE_BSD] (lutimes, futimes): Declare them.
1517         * manual/filesys.texi (File Times): Document lutimes and futimes.
1518         * misc/Makefile (routines): Add them.
1519         * misc/Versions (libc: GLIBC_2.3): Likewise.
1520         * sysdeps/generic/lutimes.c: New file.
1521         * sysdeps/generic/futimes.c: New file.
1522         * sysdeps/mach/hurd/lutimes.c: New file.
1523         * sysdeps/mach/hurd/futimes.c: New file.
1524
1525         * manual/filesys.texi (File Times): Add explicit note about null
1526         pointer argument to utimes.
1527
1528 2002-08-26  Roland McGrath  <roland@frob.com>
1529
1530         * sysdeps/mach/hurd/ifreq.h (__if_freereq): Add missing semicolon.
1531         (__ifreq): Add a cast.  Remove an unused variable.
1532
1533         * hurd/hurd/threadvar.h (enum __hurd_threadvar_index): Add
1534         _HURD_THREADVAR_LOCALE.
1535
1536 2002-08-26  Jakub Jelinek  <jakub@redhat.com>
1537
1538         * posix/regexec.c (re_search_stub): Return correct match length
1539         if start != 0.
1540         * posix/bug-regex10.c: New test.
1541         * posix/Makefile (tests): Add bug-regex10.
1542
1543 2002-08-26  Brian Youmans  <3diff@gnu.org>
1544
1545         * COPYING.LIB: Replaced with fresh copy from
1546         ftp://ftp.gnu.org/gnu/Licenses/COPYING.LIB-2.1;
1547         suggested copying permission notice now says version 2.1 instead
1548         of version 2.
1549
1550         * crypt/crypt.c: Changed copying permission notice to Lesser GPL
1551         from Library GPL.
1552         * crypt/crypt_util.c: Likewise.
1553         * crypt/ufc.c: Likewise.
1554         * elf/dl-conflict.c: Likewise.
1555         * elf/dl-iteratephdr.c: Likewise.
1556         * iconv/iconvconfig.h: Likewise.
1557         * malloc/arena.c: Likewise.
1558         * malloc/hooks.c: Likewise.
1559         * malloc/malloc.c: Likewise.
1560         * posix/glob/Makefile.ami: Likewise.
1561         * posix/glob/Makefile.in: Likewise.
1562         * stdlib/gmp-impl.h: Likewise.
1563         * stdlib/gmp.h: Likewise.
1564         * sysdeps/generic/dl-iteratephdr-static.c: Likewise.
1565         * sysdeps/generic/strnlen.c: Likewise.
1566         * sysdeps/mach/hurd/powerpc/bits/sigcontext.h: Likewise.
1567         * sysdeps/mach/hurd/recvmsg.c: Likewise.
1568         * sysdeps/mach/hurd/sendmsg.c: Likewise.
1569         * sysdeps/mach/hurd/spawni.c: Likewise.
1570         * sysdeps/mach/powerpc/machine-sp.h: Likewise.
1571         * sysdeps/mach/powerpc/sysdep.h: Likewise.
1572         * sysdeps/mach/powerpc/thread_state.h: Likewise.
1573         * sysdeps/unix/bsd/bsd4.4/bits/socket.h: Likewise.
1574         * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: Likewise.
1575         * sysdeps/x86_64/gmp-mparam.h: Likewise.
1576
1577         * sysdeps/ieee754/dbl-64/MathLib.h: Corrected version number in
1578         Lesser GPL copying permission notice from 2 to 2.1.
1579         * sysdeps/ieee754/dbl-64/asincos.tbl: Likewise.
1580         * sysdeps/ieee754/dbl-64/atnat.h: Likewise.
1581         * sysdeps/ieee754/dbl-64/atnat2.h: Likewise.
1582         * sysdeps/ieee754/dbl-64/branred.c: Likewise.
1583         * sysdeps/ieee754/dbl-64/branred.h: Likewise.
1584         * sysdeps/ieee754/dbl-64/dla.h: Likewise.
1585         * sysdeps/ieee754/dbl-64/doasin.c: Likewise.
1586         * sysdeps/ieee754/dbl-64/doasin.h: Likewise.
1587         * sysdeps/ieee754/dbl-64/dosincos.c: Likewise.
1588         * sysdeps/ieee754/dbl-64/dosincos.h: Likewise.
1589         * sysdeps/ieee754/dbl-64/e_asin.c: Likewise.
1590         * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise.
1591         * sysdeps/ieee754/dbl-64/e_exp.c: Likewise.
1592         * sysdeps/ieee754/dbl-64/e_log.c: Likewise.
1593         * sysdeps/ieee754/dbl-64/e_pow.c: Likewise.
1594         * sysdeps/ieee754/dbl-64/e_remainder.c: Likewise.
1595         * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise.
1596         * sysdeps/ieee754/dbl-64/halfulp.c: Likewise.
1597         * sysdeps/ieee754/dbl-64/mpa.c: Likewise.
1598         * sysdeps/ieee754/dbl-64/mpa.h: Likewise.
1599         * sysdeps/ieee754/dbl-64/mpa2.h: Likewise.
1600         * sysdeps/ieee754/dbl-64/mpatan.c: Likewise.
1601         * sysdeps/ieee754/dbl-64/mpatan.h: Likewise.
1602         * sysdeps/ieee754/dbl-64/mpatan2.c: Likewise.
1603         * sysdeps/ieee754/dbl-64/mpexp.c: Likewise.
1604         * sysdeps/ieee754/dbl-64/mpexp.h: Likewise.
1605         * sysdeps/ieee754/dbl-64/mplog.c: Likewise.
1606         * sysdeps/ieee754/dbl-64/mplog.h: Likewise.
1607         * sysdeps/ieee754/dbl-64/mpsqrt.c: Likewise.
1608         * sysdeps/ieee754/dbl-64/mpsqrt.h: Likewise.
1609         * sysdeps/ieee754/dbl-64/mptan.c: Likewise.
1610         * sysdeps/ieee754/dbl-64/mydefs.h: Likewise.
1611         * sysdeps/ieee754/dbl-64/powtwo.tbl: Likewise.
1612         * sysdeps/ieee754/dbl-64/root.tbl: Likewise.
1613         * sysdeps/ieee754/dbl-64/s_atan.c: Likewise.
1614         * sysdeps/ieee754/dbl-64/s_sin.c: Likewise.
1615         * sysdeps/ieee754/dbl-64/s_tan.c: Likewise.
1616         * sysdeps/ieee754/dbl-64/sincos.tbl: Likewise.
1617         * sysdeps/ieee754/dbl-64/sincos32.c: Likewise.
1618         * sysdeps/ieee754/dbl-64/sincos32.h: Likewise.
1619         * sysdeps/ieee754/dbl-64/slowexp.c: Likewise.
1620         * sysdeps/ieee754/dbl-64/slowpow.c: Likewise.
1621         * sysdeps/ieee754/dbl-64/uasncs.h: Likewise.
1622         * sysdeps/ieee754/dbl-64/uatan.tbl: Likewise.
1623         * sysdeps/ieee754/dbl-64/uexp.h: Likewise.
1624         * sysdeps/ieee754/dbl-64/uexp.tbl: Likewise.
1625         * sysdeps/ieee754/dbl-64/ulog.h: Likewise.
1626         * sysdeps/ieee754/dbl-64/ulog.tbl: Likewise.
1627         * sysdeps/ieee754/dbl-64/upow.h: Likewise.
1628         * sysdeps/ieee754/dbl-64/upow.tbl: Likewise.
1629         * sysdeps/ieee754/dbl-64/urem.h: Likewise.
1630         * sysdeps/ieee754/dbl-64/uroot.h: Likewise.
1631         * sysdeps/ieee754/dbl-64/usncs.h: Likewise.
1632         * sysdeps/ieee754/dbl-64/utan.h: Likewise.
1633         * sysdeps/ieee754/dbl-64/utan.tbl: Likewise.
1634
1635         * sysdeps/ieee754/flt-32/e_asinf.c: Added copyright notice for Stephen
1636         Moshier and Lesser GPL copying permission notice, per license from
1637         Moshier.
1638         * sysdeps/ieee754/ldbl-128/e_acosl.c: Likewise.
1639         * sysdeps/ieee754/ldbl-128/e_asinl.c: Likewise.
1640         * sysdeps/ieee754/ldbl-128/e_coshl.c: Likewise.
1641         * sysdeps/ieee754/ldbl-128/e_jnl.c: Likewise.
1642         * sysdeps/ieee754/ldbl-128/e_powl.c: Likewise.
1643         * sysdeps/ieee754/ldbl-128/e_sinhl.c: Likewise.
1644         * sysdeps/ieee754/ldbl-128/k_tanl.c: Likewise.
1645         * sysdeps/ieee754/ldbl-128/s_erfl.c: Likewise.
1646         * sysdeps/ieee754/ldbl-96/e_asinl.c: Likewise.
1647         * sysdeps/ieee754/ldbl-96/e_j0l.c: Likewise.
1648         * sysdeps/ieee754/ldbl-96/e_j1l.c: Likewise.
1649         * sysdeps/ieee754/ldbl-96/e_jnl.c: Likewise.
1650         * sysdeps/ieee754/ldbl-96/e_lgammal_r.c: Likewise.
1651         * sysdeps/ieee754/ldbl-96/s_erfl.c: Likewise.
1652
1653         * sysdeps/ieee754/ldbl-128/e_j0l.c: Added Lesser GPL copying permission
1654         notice, per license from copyright holder Stephen Moshier.
1655         * sysdeps/ieee754/ldbl-128/e_j1l.c: Likewise.
1656         * sysdeps/ieee754/ldbl-128/e_lgammal_r.c: Likewise.
1657         * sysdeps/ieee754/ldbl-128/e_log10l.c: Likewise.
1658         * sysdeps/ieee754/ldbl-128/e_log2l.c: Likewise.
1659         * sysdeps/ieee754/ldbl-128/e_logl.c: Likewise.
1660         * sysdeps/ieee754/ldbl-128/s_atanl.c: Likewise.
1661         * sysdeps/ieee754/ldbl-128/s_cbrtl.c: Likewise.
1662         * sysdeps/ieee754/ldbl-128/s_expm1l.c: Likewise.
1663         * sysdeps/ieee754/ldbl-128/s_log1pl.c: Likewise.
1664
1665 2002-08-26  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1666
1667         * sysdeps/sh/Makefile (sysdeps_routines): Add divdi3 in csu dir.
1668         (shared-only-routines): Likewise.
1669
1670 2002-08-26  Roland McGrath  <roland@redhat.com>
1671
1672         * locale/programs/ld-ctype.c (ctype_read): When given a repertoire
1673         name of "", store a null pointer instead.
1674
1675         * configure.in (elf): Set to yes for freebsd*, netbsd*.
1676         * configure: Regenerated.
1677
1678         * locale/xlocale.c [! (USE_TLS && HAVE___THREAD)] (__libc_tsd_LOCALE):
1679         Initialize this instead of __libc_tsd_LOCALE_data.
1680
1681         * sysdeps/unix/grantpt.c (pts_name): Convert ENOTTY return from
1682         ptsname_r to EINVAL.
1683
1684         * sysdeps/generic/ptsname.c (__ptsname_r): Return ENOSYS instead of 0.
1685
1686         * rt/Makefile: Revert last change, it was inappropriate to presume aio
1687         implementations depend on pthreads.
1688         * rt/tst-aio.c (do_test): Exit happy if first failure is ENOSYS.
1689         * rt/tst-aio64.c (do_test): Likewise.
1690         * rt/tst-aio2.c (do_test): Likewise.
1691         * rt/tst-aio3.c (do_test): Likewise.
1692         * rt/tst-aio4.c (do_test): Likewise.
1693         * rt/tst-aio5.c (do_test): Likewise.
1694         * rt/tst-aio6.c (do_test): Likewise.
1695         * rt/tst-aio7.c (do_test): Likewise.
1696
1697         * sysdeps/generic/bits/libc-lock.h (__libc_setspecific): Use a cast to
1698         void so as to avoid compiler warnings.
1699
1700         * libio/oldstdfiles.c [! _IO_MTSAFE_IO] (DEF_STDFILE): Don't define
1701         _IO_wide_data_FD, which is never used here.
1702
1703         * libio/iofread.c
1704         [! _IO_MTSAFE_IO] (fread_unlocked): Add libc_hidden_ver defn.
1705         * libio/iofputs.c [! _IO_MTSAFE_IO] (fputs_unlocked): Likewise.
1706         * libio/iofgets.c [! _IO_MTSAFE_IO] (fgets_unlocked): Likewise.
1707
1708         * include/resolv.h [! _LIBC_REENTRANT] (_res): #undef it before decl.
1709         * include/netdb.h [! _LIBC_REENTRANT] (h_errno): Declare normal extern.
1710
1711         * misc/syslog.c (openlog): Conditionalize locking on [_LIBC_REENTRANT].
1712         (closelog): Likewise.
1713
1714 2002-07-06  Bruno Haible  <bruno@clisp.org>
1715
1716         * sysdeps/alpha/fpu/fpu_control.h: Comment fix.
1717
1718         * sysdeps/unix/sysv/linux/alpha/pipe.S: Moved to ...
1719         * sysdeps/unix/alpha/pipe.S: ... here.
1720         * sysdeps/unix/bsd/osf/alpha/pipe.S: File removed.
1721
1722         * sysdeps/unix/i386/brk.S: Rename local label to '.Lhere' in ELF.
1723
1724         * sysdeps/unix/i386/brk.S: Add PSEUDO_END invocation.
1725         * sysdeps/unix/i386/fork.S: Likewise.
1726         * sysdeps/unix/i386/pipe.S: Likewise.
1727         * sysdeps/unix/i386/wait.S: Likewise.
1728
1729         * sysdeps/unix/fork.S: Fix PSEUDO_END argument.
1730         * sysdeps/unix/arm/fork.S: Likewise.
1731
1732         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Swap DO_CALL
1733         arguments.
1734         (DO_CALL): Swap argument order.
1735         * sysdeps/unix/sysv/linux/hppa/sysdep.h (PSEUDO): Swap DO_CALL
1736         arguments.
1737         (DO_CALL): Swap argument order.
1738         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Swap DO_CALL
1739         arguments.
1740         (DO_CALL): Swap argument order.
1741         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO): Swap DO_CALL
1742         arguments.
1743         (DO_CALL): Swap argument order.
1744         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO): Swap DO_CALL
1745         arguments.
1746         (DO_CALL): Swap argument order.
1747         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Swap DO_CALL
1748         arguments.
1749         (DO_CALL): Swap argument order.
1750         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (PSEUDO): Swap DO_CALL
1751         arguments.
1752         (DO_CALL): Swap argument order.
1753
1754         * sysdeps/i386/sysdep.h (PSEUDO): Fix syntax error.
1755         (L): Define right for ELF.
1756         * sysdeps/unix/sysv/linux/i386/sysdep.h (L): Remove definition.
1757         Now defined in sysdeps/i386/sysdep.h.
1758
1759         * sysdeps/posix/readv.c: Ansify function definition.
1760         * sysdeps/posix/writev.c: Likewise.
1761
1762         * stdio-common/tst-fseek.c (main): Don't assume that off_t and size_t
1763         have the same size. Avoid direct cast from size_t to off_t.
1764
1765         * login/tst-utmp.c (simulate_login): Don't leave garbage after the
1766         nul byte in entry[n].ut_user.
1767         (simulate_logout): Likewise.
1768
1769         * login/programs/utmpdump.c (print_entry): Test _HAVE_UT_TYPE,
1770         _HAVE_UT_PID, _HAVE_UT_ID, _HAVE_UT_HOST, instead of assuming the
1771         existence of corresponding members of 'struct utmp'.
1772         * login/tst-utmp.c: Trivialize the test if testing 'struct utmp' and
1773         !_HAVE_UT_TYPE.
1774
1775         * sysdeps/unix/opendir.c (__opendir): If st_blksize is 0 or too small,
1776         allocate a buffer of at least BUFSIZ bytes, not just of
1777         sizeof (struct dirent).
1778
1779         * sysdeps/generic/glob.c: Include <limits.h>.
1780         (NAME_MAX): Define a fallback.
1781         (glob_in_dir): Allocate enough room for a 'struct dirent64' on the
1782         stack.
1783         * posix/tst-dir.c: Include <stddef.h>, for offsetof.
1784         (main): Allocate enough room for a 'struct dirent64' on the stack.
1785         * posix/tst-gnuglob.c (my_DIR): Allocate enough room for a
1786         'struct dirent'.
1787
1788         * sysdeps/unix/sysv/linux/init-first.c: Don't include
1789         kernel-features.h.
1790
1791         * inet/htontest.c: Include <sys/types.h>.
1792
1793         * sysdeps/generic/sys/sysinfo.h: Surround with __{BEGIN,END}_DECLS.
1794
1795         * include/sys/sysctl.h: Comment fix.
1796
1797         * elf/rtld.c (_rtld_global) [! _LIBC_REENTRANT]: Don't initialize
1798         _dl_load_lock.
1799         * libio/fileno.c (fileno_unlocked): Define regardless of _IO_MTSAFE_IO.
1800
1801         * sysdeps/unix/bsd/bsd4.4/syscalls.list (__sigaltstack): New alias.
1802
1803         * sysdeps/unix/inet/syscalls.list (__connect_internal): New alias.
1804         (__getpeername): New alias.
1805         (__getsockname): New alias.
1806         (__socket): New alias.
1807
1808         * sysdeps/unix/common/syscalls.list (getpgid): Remove.
1809
1810         * sysdeps/unix/syscalls.list (__chown_internal): New alias.
1811         (__fcntl_internal): New alias.
1812         (__profil): New alias.
1813
1814 2002-08-26  Ulrich Drepper  <drepper@redhat.com>
1815
1816         * nscd/hstcache.c (cache_addhst): Add new parameter saying whether
1817         entry was for getaddr* lookup or not.  Add only matching cache
1818         entry.  Change all callers [PR libc/4317].
1819
1820         * libio/wfileops.c (_IO_wfile_seekoff): Set fp->_offset after
1821         finding the read position [PR libc/4265].
1822         * libio/Makefile (tests): Add bug-rewind2.
1823         * libio/bug-rewind2.c: New file.
1824
1825         * libio/bug-rewind.c: Fix creation of temp file.
1826
1827 2002-08-25  Ulrich Drepper  <drepper@redhat.com>
1828
1829         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return ENOENT if status is
1830         neither SUCCESS nor TRYAGAIN [PR libc/4259].
1831         * nss/nss_files/files-XXX.c (internal_getent): Don't set *errnop
1832         to ENOENT if no entry is found.
1833         * nis/nss_compat/compat-grp.c: Don't set errno in case of lookup
1834         failure.
1835         * nis/nss_compat/compat-initgroups.c: Likewise.
1836         * nis/nss_compat/compat-pwd.c: Likewise.
1837         * nis/nss_compat/compat-spwd.c: Likewise.
1838         * nis/nss_nis/nis-alias.c: Likewise.
1839         * nis/nss_nis/nis-ethers.c: Likewise.
1840         * nis/nss_nis/nis-grp.c: Likewise.
1841         * nis/nss_nis/nis-hosts.c: Likewise.
1842         * nis/nss_nis/nis-initgroups.c: Likewise.
1843         * nis/nss_nis/nis-netgrp.c: Likewise.
1844         * nis/nss_nis/nis-network.c: Likewise.
1845         * nis/nss_nis/nis-proto.c: Likewise.
1846         * nis/nss_nis/nis-publickey.c: Likewise.
1847         * nis/nss_nis/nis-pwd.c: Likewise.
1848         * nis/nss_nis/nis-rpc.c: Likewise.
1849         * nis/nss_nis/nis-service.c: Likewise.
1850         * nis/nss_nis/nis-spwd.c: Likewise.
1851         * resolv/nss_dns/dns-host.c: Likewise.
1852         * resolv/nss_dns/dns-network.c: Likewise.
1853         * nis/nss_nisplus/nisplus-alias.c: Save errno around NIS calls.
1854         * nis/nss_nisplus/nisplus-ethers.c: Likewise.
1855         * nis/nss_nisplus/nisplus-grp.c: Likewise.
1856         * nis/nss_nisplus/nisplus-hosts.c: Likewise.
1857         * nis/nss_nisplus/nisplus-network.c: Likewise.
1858         * nis/nss_nisplus/nisplus-proto.c: Likewise.
1859         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
1860         * nis/nss_nisplus/nisplus-rpc.c: Likewise.
1861         * nis/nss_nisplus/nisplus-service.c: Likewise.
1862         * nis/nss_nisplus/nisplus-spwd.c: Likewise.
1863         * hesiod/nss_hesiod/hesiod-pwd.c (lookup): Preserve errno value.
1864         * hesiod/nss_hesiod/hesiod-proto.c (lookup): Likewise.
1865         * hesiod/nss_hesiod/hesiod-grp.c (lookup): Likewise.
1866         * hesiod/nss_hesiod/hesiod-service.c (lookup): Likewise.
1867
1868         * sysdeps/unix/sysv/linux/i386/sigaction.c: Avoid warnings by
1869         declaring __restore and __restore_rt as hidden (if possible).
1870
1871 2002-08-25  Roland McGrath  <roland@redhat.com>
1872
1873         * manual/llio.texi (Access Modes): Fix typos in O_READ/O_WRITE defns.
1874
1875         * sysdeps/generic/utmp_file.c (LOCK_FILE): Check for error from fcntl.
1876         (getutent_r_file, internal_getut_r): Updated all callers.
1877         (getutline_r_file, pututline_file, updwtmp_file): Likewise.
1878
1879 2002-08-25  Ulrich Drepper  <drepper@redhat.com>
1880
1881         * locale/programs/locale.c: Don't print aliases for non-existing
1882         locales for 'locale -a'.
1883         Patch by Noah Levitt <nlevitt@columbia.edu> [PR libc/4166].
1884
1885 2002-07-19  H.J. Lu  <hjl@gnu.org>
1886
1887         * sysdeps/unix/sysv/linux/mips/bits/msq.h: New file.
1888
1889 2002-07-16  H.J. Lu  <hjl@gnu.org>
1890
1891         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
1892         sys/personality.h.
1893         * sysdeps/unix/sysv/linux/sys/personality.h: New file.
1894
1895 2002-08-25  Ulrich Drepper  <drepper@redhat.com>
1896
1897         * elf/tst-tlsmod1.c (in_dso): Make sure the TLS variable access is
1898         not moved ahead of the fputs call.
1899         * elf/tst-tlsmod2.c (in_dso): Likewise.
1900         * elf/tst-tlsmod3.c (in_dso2): Likewise.
1901         * elf/tst-tlsmod4.c (in_dso): Likewise.
1902
1903 2002-08-25  Andreas Schwab  <schwab@suse.de>
1904
1905         * elf/dl-reloc.c (_dl_reloc_bad_type): Nul-terminate message.
1906
1907 2002-08-25  Roland McGrath  <roland@redhat.com>
1908
1909         * sysdeps/generic/utmp_file.c (UNLOCK_FILE): Clear alarm before
1910         resetting handler, to avoid the possibility of a spurious SIGALRM
1911         delivered to the user's handler.
1912         Reported by Amit D. Chaudhary <amitc@brocade.com>,
1913
1914         * misc/Makefile (CFLAGS-init-misc.c): Variable removed.  It served to
1915         set -fkeep-inline-functions, which is not needed for the current file.
1916
1917         * sysdeps/generic/ldsodefs.h: Add attribute_hidden to *_internal decls.
1918         (_dl_setup_hash): Add attribute_hidden.
1919         (_dl_sysdep_start, _dl_sysdep_start_cleanup): Likewise.
1920         (_dl_sysdep_read_whole_file, _dl_dprintf): Likewise.
1921         (_dl_new_object, _dl_map_object_deps): Likewise.
1922         (_dl_map_object_deps_internal): Remove decl.
1923         * elf/rtld.c (__mempcpy, _exit): Redeclare locally as hidden.
1924
1925         * sysdeps/i386/dl-machine.h [PI_STATIC_AND_HIDDEN
1926         && HAVE_VISIBILITY_ATTRIBUTE && HAVE_HIDDEN
1927         && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]
1928         (elf_machine_dynamic, elf_machine_load_address): Rewritten without asm,
1929         instead relying on the compiler to produce only GOTOFF variable refs.
1930
1931 2002-08-25  Ulrich Drepper  <drepper@redhat.com>
1932
1933         * elf/dl-load.c: Fix typo in comment.  Add a few more __builtin_expect.
1934
1935         * sysdeps/generic/dl-cache.h (_dl_cache_libcmp): Define as static
1936         inline to avoid defining it in every file which includes this header.
1937
1938         * elf/rtld.c: Also test for HAVE_VISIBILITY_ATTRIBUTE before
1939         defining DONT_USE_BOOTSTRAP_MAP.
1940
1941         * libio/tst-freopen.c (main): Use correct formats for __LINE__.
1942         * libio/tst-mmap-setvbuf.c (main): Likewise.
1943         * libio/tst-widetext.c (main): Likewise.
1944
1945         * libio/tst-mmap-eofsync.c (do_test): Use correct format in error
1946         message.
1947         * libio/tst-mmap-fflushsync.c (do_test): Likewise.
1948         * libio/tst-mmap2-eofsync.c (do_test): Likewise.
1949
1950         * sysdeps/i386/elf/configure.in: Unconditionally define
1951         PI_STATIC_AND_HIDDEN.
1952         * elf/rtld.c (DONT_USE_BOOTSTRAP_MAP): Define only if
1953         PI_STATIC_AND_HIDDEN is defined as well.
1954         * config.h.in: Add PI_STATIC_AND_HIDDEN entry.
1955
1956 2002-08-24  Ulrich Drepper  <drepper@redhat.com>
1957
1958         * sysdeps/ia64/bzero.S: Define __bzero as well.
1959
1960         * locale/programs/charmap.c (charmap_new_char): Don't use
1961         ULONG_MAX as maximum UCS4 value.
1962
1963         * sysdeps/unix/sysv/linux/ia64/sys/user.h: New file.
1964
1965         * sysdeps/generic/strtol.c: We don't need the isascii test in glibc.
1966
1967         * malloc/hooks.c (public_sET_STATe): use size_t as type for i.
1968         * malloc/malloc.c (mALLINFo): Likewise.
1969
1970         * libio/wstrops.c (_IO_wstr_pbackfail): Use WEOF in comparison.
1971
1972         * libio/wfileops.c (_IO_wfile_overflow): Use EOF not WEOF when
1973         examining result of _IO_do_flush call.
1974
1975         * stdio-common/vfprintf.c (vfprintf): Use correct type in va_arg.
1976         Use prec not spec when sizing buffers.
1977
1978         * catgets/open_catalog.c (__open_catalog): Add casts to avoid warnings.
1979         * locale/loadarchive.c (_nl_load_locale_from_archive): Likewise.
1980         * locale/loadlocale.c (_nl_intern_locale_data): Likewise.
1981         * stdio-common/vfscanf.c (inchar): Likewise.
1982         * misc/efgcvt_r.c (fcvt_r): Likewise.
1983         * elf/dl-misc.c (_dl_debug_vdprintf): Likewise.
1984         * elf/readlib.c (process_file): Likewise.
1985         * elf/sprof.c (load_profdata): Likewise.
1986         * sysdeps/ia64/hp-timing.h (HP_TIMING_PRINT): Likewise.
1987         * locale/programs/linereader.c (get_toplvl_escape): Likewise.
1988         * locale/programs/charmap.c (charmap_read): Likewise.
1989         * libio/fileops.c: Likewise.
1990         * libio/fmemopen.c: Likewise.
1991         * stdlib/strtod.c: Likewise.
1992         * elf/dl-load.c: Likewise.
1993         * iconv/iconvconfig.c: Likewise.
1994         * iconv/iconv_prog.c (process_block): Likewise.
1995         * elf/rtld.c (dl_main): Likewise.
1996
1997         * sysdeps/unix/sysv/linux/ia64/Makefile: Define _ASM_IA64_CURRENT_H
1998         macro to calm down the compiler.
1999
2000         * iconv/gconv_cache.c (__gconv_load_cache): Add cast to avoid warning.
2001
2002         * sysdeps/ia64/elf/initfini.c: Don't use newlines embedded in string.
2003
2004         * sysdeps/unix/sysv/linux/i386/sysdep.S: Update comment regarding
2005         placement of errno definition.
2006         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
2007         * sysdeps/unix/sysv/linux/mips/sysdep.S: Likewise.
2008         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
2009         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
2010         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
2011
2012         * resolv/nss_dns/dns-host.c (MAXPACKET): Increase minimum value
2013         from 1024 to 65536, to avoid buffer overrun.
2014
2015 2002-08-16  Paul Eggert  <eggert@twinsun.com>
2016
2017         * resolv/gethnamaddr.c (MAXPACKET): Increase minimum value
2018         from 1024 to 65536, to avoid buffer overrun.
2019         * resolv/res_query.c (MAXPACKET): Likewise.
2020
2021 2002-08-24  Andreas Jaeger  <aj@suse.de>
2022
2023         * sysdeps/unix/sysv/linux/i386/Versions: Remove *xattr syscalls.
2024
2025 2002-08-23  Ulrich Drepper  <drepper@redhat.com>
2026
2027         * sysdeps/ieee754/dbl-64/e_pow.c (log1): Define and initialize
2028         two52 locally.
2029         (log2): Likewise.
2030         * sysdeps/ieee754/dbl-64/upow.h: Remove definition of two52.
2031         Patch by Simon Gee <simong@agile.tv>.
2032
2033         * sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs_conf):
2034         Prefer reading /proc/stat since it is more uniform across
2035         architectures.
2036
2037         * manual/texinfo.tex: Update to latest official version.
2038
2039         * sysvipc/sys/shm.h: Remove SHMLBA definition.
2040         * sysdeps/generic/bits/shm.h: Define SHMLBA here.
2041         * sysdeps/gnu/bits/shm.h: Likewise.
2042         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Likewise.
2043         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
2044         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
2045         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
2046         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
2047         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
2048         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
2049         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Define SHMLBA to 2^20
2050         since this is what the kernel says.
2051
2052         * misc/sys/xattr.h: Include <sys/types.h> instead of <stddef.h>
2053         since ssize_t is needed as well.  Replace const with __const.
2054
2055 2002-08-23  Roland McGrath  <roland@redhat.com>
2056
2057         * malloc/hooks.c (__malloc_initialize_hook, __free_hook,
2058         __malloc_hook, __realloc_hook, __memalign_hook,
2059         __after_morecore_hook): Variable definitions moved to ...
2060         * malloc/malloc.c: ... here, so as to be before all references.
2061
2062         * sysdeps/i386/dl-machine.h (elf_machine_load_address): Add a dummy
2063         global variable reference in an unused asm parameter, to ensure the
2064         compiler has set up the GOT register before we use it.
2065
2066         * malloc/hooks.c: Move variable definitions ahead of uses.
2067         * libio/fileops.c: Move versioned_symbol defns ahead of _IO_jump_t
2068         initializers that make reference to variables they define.
2069
2070 2002-08-23  Andreas Jaeger  <aj@suse.de>
2071
2072         * locale/loadarchive.c: Include <stdlib.h> for prototypes of
2073         alloca, free, qsort.
2074
2075         * dlfcn/bug-dlsym1-lib1.c (foo): Add prototype to avoid warning.
2076
2077         * sysdeps/ieee754/flt-32/e_jnf.c: Remove unused variable.
2078         * sysdeps/ieee754/ldbl-96/e_j0l.c: Likewise.
2079
2080         * misc/sys/xattr.h: New file, contributed by Christoph Hellwig
2081         <hch@lst.de>.
2082         * sysdeps/generic/fgetxattr.c: New file.
2083         * sysdeps/generic/flistxattr.c: New file.
2084         * sysdeps/generic/fremovexattr.c: New file.
2085         * sysdeps/generic/fsetxattr.c: New file.
2086         * sysdeps/generic/getxattr.c: New file.
2087         * sysdeps/generic/listxattr.c: New file.
2088         * sysdeps/generic/lgetxattr.c: New file.
2089         * sysdeps/generic/llistxattr.c: New file.
2090         * sysdeps/generic/lremovexattr.c: New file.
2091         * sysdeps/generic/lsetxattr.c: New file.
2092         * sysdeps/generic/removexattr.c: New file.
2093         * sysdeps/generic/setxattr.c: New file.
2094         * misc/Makefile (headers): Add sys/xattr.h.
2095         (routines): Add *xattr calls.
2096         * misc/Versions: Add *xattr calls with version 2.3.
2097         * sysdeps/unix/sysv/linux/m68k/Versions: Remove *xattr syscalls.
2098         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
2099         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
2100         * sysdeps/unix/sysv/linux/sparc/sparc64/Versions: Likewise.
2101         * sysdeps/unix/sysv/linux/x86_64/Versions: Likewise.
2102         * sysdeps/unix/sysv/linux/ia64/Versions: Likewise.
2103         * sysdeps/unix/sysv/linux/alpha/Versions: Likewise.
2104         * sysdeps/unix/sysv/linux/arm/Versions: Likewise.
2105
2106 2002-08-22  Steven Munroe  <sjmunroe@us.ibm.com>
2107
2108         * sysdeps/powerpc/elf/libc-start.c
2109         (__cache_line_size): Declare.
2110         (__aux_init_cache): New function.
2111         (__libc_start_main): Change type of `auxvec' parameter to
2112         `ElfW(auxv_t) *'.  Correct walking of aux vector.  Call
2113         __aux_init_cache.
2114         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c
2115         (__cache_line_size): Declare.
2116         (__aux_init_cache): New function.
2117         (DL_PLATFORM_INIT): Define.
2118         * sysdeps/powerpc/memset.S: Define __cache_line_size and use its
2119         value to select the correct stride for dcbz.
2120
2121 2002-08-22  Andreas Jaeger  <aj@suse.de>
2122
2123         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Fix arguments of
2124         shmat.
2125
2126 2002-08-22  Roland McGrath  <roland@redhat.com>
2127
2128         * locale/loadarchive.c (_nl_load_locale_from_archive): Check max file
2129         position indicated by locrectab against file bounds before rounding to
2130         page size.  In mapping loop, always set TO before breaking out of
2131         contiguous range coalescing loop.
2132
2133         * locale/loadarchive.c (_nl_load_locale_from_archive): Use MAP_PRIVATE
2134         (or MAP_COPY if available) instead of MAP_SHARED.
2135
2136         * scripts/firstversions.awk: When encountering a version newer than
2137         the specified earliest version, be sure to emit the specified earliest
2138         version first if any renaming of an older version to that has been.
2139
2140 2002-08-21  Roland McGrath  <roland@redhat.com>
2141
2142         * configure.in: Make GCC version check require 3.[2-9]* and no others.
2143         * manual/install.texi (Tools for Compilation): Say 3.2 is required.
2144         (Configuring and compiling): Don't mention older GCC versions any more.
2145         * INSTALL: Regenerated.
2146
2147         * manual/install.texi (Configuring and compiling, Installation,
2148         Running make install, Linux): Linux -> GNU/Linux where appropriate.
2149
2150         * elf/rtld.c (_dl_start_final): Move defn before _dl_start so it can
2151         be inlined.  Declare it with always_inline if [DONT_USE_BOOTSTRAP_MAP]
2152         and with noinline otherwise.  Remove hack alloca use to prevent
2153         inlining, we can ask for it explicitly nowadays.
2154
2155         * dlfcn/bug-dlsym1.c: New file.
2156         * dlfcn/bug-dlsym1-lib1.c, dlfcn/bug-dlsym1-lib2.c: New files.
2157         * dlfcn/Makefile (distribute): Add them.
2158         (tests): Add bug-dlsym1 here.
2159         (modules-names): Add bug-dlsym1-lib1 and bug-dlsym1-lib2 here.
2160         ($(objpfx)bug-dlsym1, $(objpfx)bug-dlsym1.out): New targets.
2161         ($(objpfx)bug-dlsym1-lib1.so, $(objpfx)bug-dlsym1-lib2.so): Likewise.
2162
2163 2002-08-21  Ulrich Drepper  <drepper@redhat.com>
2164
2165         * elf/rtld.c (start_time): New global variable.  Moved from _dl_start.
2166         (DONT_USE_BOOTSTRAP_MAP): Define if we can use non-exported symbols
2167         before relocation.
2168         (_dl_start): Don't use local bootstrap_map variable if
2169         DONT_USE_BOOTSTRAP_MAP is defined.  Use GL(dl_rtld_map).  Don't
2170         pass bootstrap_map to _dl_start_final in this case either.  Don't
2171         pass start_time to _dl_start_final ever.
2172         (_dl_start_final): Don't copy bootstrap_map if DONT_USE_BOOTSTRAP_MAP.
2173
2174         * elf/dl-deps.c (_dl_map_object_deps): Revert patch from 2002-05-28.
2175         This cripples the scope lists necessary to search for symbols in
2176         dependencies which are not in the global scope.
2177
2178         * include/setjmp.h (__libc_longjmp): Add declaration.
2179
2180 2002-08-21  Andreas Jaeger  <aj@suse.de>
2181
2182         * sysdeps/x86_64/_mcount.S: Fix assembler.
2183
2184         * sysdeps/unix/sysv/linux/x86_64/Makefile: Generate bits/syscall.h
2185         with biarch support.
2186
2187 2002-08-21  Andreas Jaeger  <aj@suse.de>
2188
2189         * sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Fix it.
2190
2191         * sysdeps/x86_64/Makefile (sysdep_routines): Add _mcount.
2192
2193         * sysdeps/x86_64/machine-gmon.h: New file.
2194         * sysdeps/x86_64/_mcount.S: New file.
2195
2196 2002-08-20  Ulrich Drepper  <drepper@redhat.com>
2197
2198         * elf/rtld.c (_dl_start): Pass zero to TLS_INIT_TP.  Set
2199         bootstrap_map.l_tls_tp_initialized to 1 if TLS_INIT_TP was called.
2200         (_dl_start_final): Copy l_tls_tp_initialized to GL(dl_rtld_map).
2201         (dl_main): If HAVE___THREAD is not defined pass l_tls_tp_initialized
2202         to TL_INIT_TP.  Otherwise pass 1.
2203         * include/link.h (struct link_map): Add l_tls_tp_initialized.
2204         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Pass 0 to TL_INIT_TP.
2205
2206 2002-08-15  Jakub Jelinek  <jakub@redhat.com>
2207
2208         * locale/programs/localedef.c (add_to_readlist): Error about
2209         circular dependencies only if the locale in question hasn't
2210         been finished.
2211         * locale/programs/linereader.c (get_string): Pass LC_CTYPE not
2212         CTYPE_LOCALE to load_locale.
2213         * locale/programs/locfile.c (locfile_read): Don't include
2214         unneeded but available locales in locale_mask.
2215
2216         * locale/programs/locarchive.c (enlarge_archive): If quiet, don't
2217         print any messages about enlarging archive.
2218
2219 2002-08-20  Brian Youmans  <3diff@gnu.org>
2220
2221         * manual/contrib.texi: Removed licenses, added acknowledgements
2222         for contributions by Intel, IBM, Craig Metz.
2223         * LICENSES: New file, contains the text of all non-FSF licenses in the
2224         distribution that require putting the notice in the accompanying
2225         documentation.
2226         * README.template, README: Mention LICENSES.
2227
2228         * sysdeps/mach/hurd/net/if_ppp.h: Replaced CMU license with a
2229         new one modelled on the modern BSD license, per recent letter
2230         of permission from CMU.
2231         * sysdeps/unix/sysv/linux/net/if_ppp.h: Likewise.
2232
2233         * sysdeps/ieee754/dbl-64/MathLib.h: Changed the copyright holder
2234         from IBM to FSF, per the recent Software Letter.  Changed the
2235         distribution terms from GPL to LGPL.
2236
2237         * sysdeps/ieee754/dbl-64/asincos.tbl: Added FSF copyright and
2238         copying permission notice (Lesser GPL), per recent IBM Software Letter.
2239         * sysdeps/ieee754/dbl-64/powtwo.tbl: Likewise.
2240         * sysdeps/ieee754/dbl-64/root.tbl: Likewise.
2241         * sysdeps/ieee754/dbl-64/sincos.tbl: Likewise.
2242         * sysdeps/ieee754/dbl-64/uatan.tbl: Likewise.
2243         * sysdeps/ieee754/dbl-64/uexp.tbl: Likewise.
2244         * sysdeps/ieee754/dbl-64/ulog.tbl: Likewise.
2245         * sysdeps/ieee754/dbl-64/upow.tbl: Likewise.
2246         * sysdeps/ieee754/dbl-64/utan.tbl: Likewise.
2247
2248         * sysdeps/ieee754/dbl-64/atnat.h: Changed the copyright holder
2249         from IBM to FSF, per the recent Software Letter.  Corrected the
2250         text of the copying permission notice to say Lesser GPL instead
2251         of GPL in warranty disclaimer paragraph.
2252         * sysdeps/ieee754/dbl-64/atnat2.h: Likewise.
2253         * sysdeps/ieee754/dbl-64/branred.h: Likewise.
2254         * sysdeps/ieee754/dbl-64/dla.h: Likewise.
2255         * sysdeps/ieee754/dbl-64/doasin.h: Likewise.
2256         * sysdeps/ieee754/dbl-64/dosincos.h: Likewise.
2257         * sysdeps/ieee754/dbl-64/mpa.h: Likewise.
2258         * sysdeps/ieee754/dbl-64/mpa2.h: Likewise.
2259         * sysdeps/ieee754/dbl-64/mpatan.h: Likewise.
2260         * sysdeps/ieee754/dbl-64/mpexp.h: Likewise.
2261         * sysdeps/ieee754/dbl-64/mplog.h: Likewise.
2262         * sysdeps/ieee754/dbl-64/mpsqrt.h: Likewise.
2263         * sysdeps/ieee754/dbl-64/mydefs.h: Likewise.
2264         * sysdeps/ieee754/dbl-64/sincos32.h: Likewise.
2265         * sysdeps/ieee754/dbl-64/uasncs.h: Likewise.
2266         * sysdeps/ieee754/dbl-64/uexp.h: Likewise.
2267         * sysdeps/ieee754/dbl-64/ulog.h: Likewise.
2268         * sysdeps/ieee754/dbl-64/upow.h: Likewise.
2269         * sysdeps/ieee754/dbl-64/urem.h: Likewise.
2270         * sysdeps/ieee754/dbl-64/uroot.h: Likewise.
2271         * sysdeps/ieee754/dbl-64/usncs.h: Likewise.
2272         * sysdeps/ieee754/dbl-64/utan.h: Likewise.
2273
2274         * sysdeps/ieee754/dbl-64/branred.c: Corrected the text of the copying
2275         permission notice to say Lesser GPL instead of GPL in warranty
2276         disclaimer paragraph.
2277         * sysdeps/ieee754/dbl-64/doasin.c: Likewise.
2278         * sysdeps/ieee754/dbl-64/dosincos.c: Likewise.
2279         * sysdeps/ieee754/dbl-64/e_asin.c: Likewise.
2280         * sysdeps/ieee754/dbl-64/e_atan2.c: Likewise.
2281         * sysdeps/ieee754/dbl-64/e_exp.c: Likewise.
2282         * sysdeps/ieee754/dbl-64/e_log.c: Likewise.
2283         * sysdeps/ieee754/dbl-64/e_pow.c: Likewise.
2284         * sysdeps/ieee754/dbl-64/e_remainder.c: Likewise.
2285         * sysdeps/ieee754/dbl-64/e_sqrt.c: Likewise.
2286         * sysdeps/ieee754/dbl-64/halfulp.c: Likewise.
2287         * sysdeps/ieee754/dbl-64/mpa.c: Likewise.
2288         * sysdeps/ieee754/dbl-64/mpatan.c: Likewise.
2289         * sysdeps/ieee754/dbl-64/mpatan2.c: Likewise.
2290         * sysdeps/ieee754/dbl-64/mpexp.c: Likewise.
2291         * sysdeps/ieee754/dbl-64/mplog.c: Likewise.
2292         * sysdeps/ieee754/dbl-64/mpsqrt.c: Likewise.
2293         * sysdeps/ieee754/dbl-64/mptan.c: Likewise.
2294         * sysdeps/ieee754/dbl-64/s_atan.c: Likewise.
2295         * sysdeps/ieee754/dbl-64/s_sin.c: Likewise.
2296         * sysdeps/ieee754/dbl-64/s_tan.c: Likewise.
2297         * sysdeps/ieee754/dbl-64/sincos32.c: Likewise.
2298         * sysdeps/ieee754/dbl-64/slowexp.c: Likewise.
2299         * sysdeps/ieee754/dbl-64/slowpow.c:  Likewise.
2300
2301 2002-08-20  Roland McGrath  <roland@redhat.com>
2302
2303         Fix ABI compatibility with libc compiled with old tools on powerpc.
2304         Changes contributed by Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2305         and Jack Howarth <howarth@bromo.med.uc.edu>.
2306         * sysdeps/powerpc/Makefile [$(have-protected) = yes]
2307         (CPPFLAGS-divdi3.c, CPPFLAGS-libgcc-compat.S): New variables,
2308         pass -DHAVE_DOT_HIDDEN for these files.
2309         * sysdeps/powerpc/Versions (libc: GLIBC_2.0): Added __floatdidf,
2310         __floatdisf.
2311         * sysdeps/powerpc/divdi3.c: New file.
2312         * sysdeps/powerpc/libgcc-compat.S: New file, replacement for ...
2313         * sysdeps/powerpc/libgcc-compat.c: ... this, file removed.
2314
2315 2002-08-20  Jakub Jelinek  <jakub@redhat.com>
2316
2317         * locale/loadarchive.c (_nl_load_locale_from_archive): Handle
2318         partially overlapping mappings.  Remove unneeded (char *) casts.
2319         Never allow duplication of ranges in mapped areas.
2320
2321 2002-08-20  Roland McGrath  <roland@redhat.com>
2322
2323         * elf/Makefile ($(objpfx)ld.so): Separate commands in rule so errors
2324         can be detected by make.  Reported by H.J. Lu <hjl@gnu.org>.
2325
2326 2002-08-20  Ulrich Drepper  <drepper@redhat.com>
2327
2328         * include/unistd.h: Don't hide _exit.
2329
2330         * elf/rtld.c (_dl_start): Pass extra argument 1 to TLS_INIT_TP.
2331         (dl_main): Pass extra argument 0 to TLS_INIT_TP.
2332         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Pass extra
2333         argument 1 to TLS_INIT_TP.
2334         * sysdeps/generic/tls.h (TLS_INIT_TP): Describe new parameter.
2335
2336         * sysdeps/generic/dl-tls.c (allocate_dtv): Optimize a bit.
2337
2338         * elf/Versions [ld] (GLIBC_PRIVATE): Add _dl_get_tls_static_info.
2339         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Move dtv
2340         memory allocation to...
2341         (allocate_dtv): ...here.  New function.
2342         (_dl_allocate_tls): Change to take parameter.  If parameter is non-NULL
2343         call allocate_dtv instead of _dl_allocate_tls_storage.
2344         (_dl_deallocate_tls): New parameter.  Deallocate TCB only if true.
2345         (_dl_get_tls_static_info): New function.
2346         * sysdeps/generic/ldsodefs.h: Adjust prototypes of _dl_allocate_tls
2347         and _dl_deallocate_tls.  Add prototype for _dl_get_tls_static_info.
2348
2349 2002-08-19  Ulrich Drepper  <drepper@redhat.com>
2350
2351         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Return
2352         immediately if result == NULL.
2353
2354 2002-08-16  Jakub Jelinek  <jakub@redhat.com>
2355
2356         * sysdeps/alpha/fpu/libm-test-ulps: Regenerate.
2357
2358 2002-08-18  Roland McGrath  <roland@frob.com>
2359
2360         * sysdeps/mach/hurd/mkdir.c (__mkdir): Use __directory_name_split
2361         instead of __file_name_split.
2362         * sysdeps/mach/hurd/unlink.c (__unlink): Likewise.
2363
2364         * sysdeps/mach/hurd/dl-sysdep.c
2365         [HP_TIMING_AVAIL] (_dl_cpuclock_offset): New variable.
2366         [HP_TIMING_AVAIL] (_dl_sysdep_start): Set it with HP_TIMING_NOW.
2367
2368 2002-08-16  Jakub Jelinek  <jakub@redhat.com>
2369
2370         * locale/loadarchive.c (_nl_load_locale_from_archive): Braino fix
2371         in change before last: MAX -> MIN.
2372
2373 2002-08-15  Roland McGrath  <roland@redhat.com>
2374
2375         * libio/fileops.c (_IO_file_seekoff_mmap): Leave read pointers at EOF
2376         if seek would go past it.
2377         (mmap_remap_check): If file position is at or past EOF after check,
2378         leave read pointers at EOF and don't seek.
2379
2380         * libio/tst-mmap-offend.c: New file.
2381         * libio/Makefile (tests): Add it.
2382
2383         * locale/loadarchive.c (_nl_load_locale_from_archive): Store strdup of
2384         the name as passed, rather than the name in the archive dictionary.
2385
2386 2002-08-15  Ulrich Drepper  <drepper@redhat.com>
2387
2388         * csu/Makefile: Define elide-routines.os not static-only-routines.
2389
2390         * include/sched.h (__clone): Add varargs at the end.
2391
2392         * elf/rtld.c (_dl_start): Allow TLS_INIT_TP to fail, and stop in that
2393         case.
2394         (TLS_INIT_HELPER): If defined, use it.
2395         * sysdeps/generic/libc-tls.c (TLS_INIT_HELPER): Likewise.
2396
2397 2002-08-15  Roland McGrath  <roland@redhat.com>
2398
2399         * elf/dl-load.c (lose): Remove [!SHARED] conditional from null check
2400         on L->l_prev; it can happen under rtld --verify too.
2401
2402         * locale/loadarchive.c (_nl_load_locale_from_archive): Don't read the
2403         header separately, just map an initial window of 2MB from the file
2404         and remap if that is not large enough to cover the whole header.
2405
2406 2002-08-15  Andreas Jaeger  <aj@suse.de>
2407
2408         * sysdeps/unix/sysv/linux/m68k/Versions: Add *xattr syscalls with
2409         version 2.3.
2410         * sysdeps/unix/sysv/linux/arm/Versions: Likewise.
2411         * sysdeps/unix/sysv/linux/alpha/Versions: Likewise.
2412         * sysdeps/unix/sysv/linux/ia64/Versions: Likewise.
2413         * sysdeps/unix/sysv/linux/x86_64/Versions: Likewise.
2414         * sysdeps/unix/sysv/linux/sparc/sparc64/Versions: Likewise.
2415         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
2416         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
2417         * sysdeps/unix/sysv/linux/powerpc/Versions: Likewise.
2418         * sysdeps/unix/sysv/linux/mips/Versions: Likewise.
2419         Patch by Andreas Gruenbacher <agruen@suse.de>.
2420
2421         * sysdeps/unix/sysv/linux/syscalls.list: Add *xattr syscalls.
2422
2423 2002-08-14  Roland McGrath  <roland@redhat.com>
2424
2425         * locale/locarchive.h (struct locale_category_data): Give this name to
2426         the type of locale_data_t's elements.
2427         * locale/programs/locarchive.c (cmpcategorysize): New static function.
2428         (add_locale): Use that to sort the categories by size and put all
2429         those that fit into two pages into the LC_ALL block, instead of
2430         hard-coding it to do everything but LC_CTYPE and LC_COLLATE.
2431         (show_archive_content): Detect categories inside LC_ALL block
2432         directly, instead of hard-coding.
2433         (oldlocrecentcmp): Compare just on file locations used.
2434
2435 2002-08-14  Jakub Jelinek  <jakub@redhat.com>
2436
2437         * locale/programs/locarchive.c (struct oldlocrecent): New type.
2438         (oldlocrecentcmp): New function.
2439         (enlarge_archive): Re-add locales in the order they were added
2440         to the archive.
2441         (add_locale): Put all the small locale files together, if the small
2442         locale file block would occupy less pages if page size aligned, align
2443         it.
2444         (show_archive_content): Adjust for locale archives optimized for speed.
2445
2446 2002-08-14  Roland McGrath  <roland@frob.com>
2447
2448         * configure.in: Use "MISSING" as not-found value for MIG.
2449         * sysdeps/mach/configure.in: Fatal if mig not found.
2450         * configure, sysdeps/mach/configure: Regenerated.
2451
2452 2002-08-13  Jakub Jelinek  <jakub@redhat.com>
2453
2454         * locale/loadarchive.c (archfname): Add missing slash.
2455
2456         * sysdeps/generic/strtold.c (__strtold_internal): Add libc_hidden_def.
2457         * wcsmbs/wcstold.c (__wcstold_internal): Add libc_hidden_def.
2458
2459 2002-08-12  Roland McGrath  <roland@redhat.com>
2460
2461         * include/sys/wait.h (__waitpid): Add libc_hidden_proto.
2462         * sysdeps/unix/sysv/sco3.2.4/waitpid.S: Add libc_hidden_def.
2463         * sysdeps/unix/sysv/sysv4/waitpid.c: Add libc_hidden_weak.
2464         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
2465         * sysdeps/unix/sysv/aix/waitpid.c: Likewise.
2466         * sysdeps/unix/bsd/bsd4.4/waitpid.c: Likewise.
2467         * sysdeps/generic/waitpid.c: Likewise.
2468
2469         * include/net/if.h: New file.  Use libc_hidden_proto
2470         for if_nametoindex and if_indextoname.
2471         * sysdeps/generic/if_index.c: Add libc_hidden_def.
2472         * sysdeps/mach/hurd/if_index.c: Likewise.
2473         * sysdeps/unix/sysv/linux/if_index.c: Likewise.
2474
2475         * include/grp.h (setgroups): Add libc_hidden_proto.
2476         * sysdeps/generic/setgroups.c: Add libc_hidden_def.
2477         * sysdeps/mach/hurd/setgroups.c: Likewise.
2478         * sysdeps/unix/sysv/irix4/setgroups.c: Likewise.
2479         * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
2480
2481 2002-08-13  Jakub Jelinek  <jakub@redhat.com>
2482
2483         * include/unistd.h (seteuid, setegid): Add libc_hidden_proto.
2484         * sysdeps/generic/seteuid.c (seteuid): Add libc_hidden_def.
2485         * sysdeps/generic/setegid.c (setegid): Likewise.
2486         * sysdeps/mach/hurd/seteuid.c (seteuid): Likewise.
2487         * sysdeps/mach/hurd/setegid.c (setegid): Likewise.
2488         * sysdeps/unix/bsd/seteuid.c (seteuid): Likewise.
2489         * sysdeps/unix/bsd/setegid.c (setegid): Likewise.
2490         * sysdeps/unix/sysv/aix/seteuid.c (seteuid): Likewise.
2491         * sysdeps/unix/sysv/aix/setegid.c (setegid): Likewise.
2492         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Likewise.
2493         * sysdeps/unix/sysv/linux/sparc/sparc32/seteuid.c (seteuid): Likewise.
2494         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Likewise.
2495         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Likewise.
2496         * sysdeps/unix/sysv/linux/setegid.c (setegid): Likewise.
2497         * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Likewise.
2498         Remove fallback if __ASSUME_SETRESUID_SYSCALL.
2499
2500         * include/sys/stat.h (__fxstat_internal, __fxstat64_internal,
2501         __lxstat_internal, __lxstat64_internal): Remove.
2502         (__fxstat, __fxstat64, __lxstat, __lxstat64, __xstat, __xstat64):
2503         Add hidden_proto.
2504         * sysdeps/generic/fxstat.c (__fxstat): Add hidden_def.
2505         Remove INTDEF where present, remove #undef at the beginning.
2506         * sysdeps/generic/fxstat64.c (__fxstat64): Likewise.
2507         * sysdeps/generic/lxstat.c (__lxstat): Likewise.
2508         * sysdeps/generic/lxstat64.c (__lxstat64): Likewise.
2509         * sysdeps/generic/xstat.c (__xstat): Likewise.
2510         * sysdeps/generic/xstat64.c (__xstat64): Likewise.
2511         * sysdeps/mach/hurd/dl-sysdep.c (__xstat64, __fxstat64): Likewise.
2512         * sysdeps/mach/hurd/fxstat.c (__fxstat): Likewise.
2513         * sysdeps/mach/hurd/fxstat64.c (__fxstat64): Likewise.
2514         * sysdeps/mach/hurd/lxstat.c (__lxstat): Likewise.
2515         * sysdeps/mach/hurd/lxstat64.c (__lxstat64): Likewise.
2516         * sysdeps/mach/hurd/xstat.c (__xstat): Likewise.
2517         * sysdeps/mach/hurd/xstat64.c (__xstat64): Likewise.
2518         * sysdeps/unix/fxstat.c (__fxstat): Likewise.
2519         * sysdeps/unix/common/lxstat.c (__lxstat): Likewise.
2520         * sysdeps/unix/sysv/aix/fxstat.c (__fxstat): Likewise.
2521         * sysdeps/unix/sysv/aix/fxstat64.c (__fxstat64): Likewise.
2522         * sysdeps/unix/sysv/aix/lxstat.c (__lxstat): Likewise.
2523         * sysdeps/unix/sysv/aix/lxstat64.c (__lxstat64): Likewise.
2524         * sysdeps/unix/sysv/aix/xstat.c (__xstat): Likewise.
2525         * sysdeps/unix/sysv/aix/xstat64.c (__xstat64): Likewise.
2526         * sysdeps/unix/sysv/linux/ia64/fxstat.c (__fxstat): Likewise.
2527         * sysdeps/unix/sysv/linux/ia64/lxstat.c (__lxstat): Likewise.
2528         * sysdeps/unix/sysv/linux/ia64/xstat.c (__xstat): Likewise.
2529         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c (__fxstat): Likewise.
2530         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c (__lxstat): Likewise.
2531         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c (__xstat): Likewise.
2532         * sysdeps/unix/sysv/linux/i386/fxstat.c (__fxstat): Likewise.
2533         * sysdeps/unix/sysv/linux/i386/lxstat.c (__lxstat): Likewise.
2534         * sysdeps/unix/sysv/linux/i386/xstat.c (__xstat): Likewise.
2535         * sysdeps/unix/sysv/linux/xstat.c (__xstat): Likewise.
2536         * sysdeps/unix/sysv/linux/xstat64.c (__xstat64): Likewise.
2537         * sysdeps/unix/sysv/linux/fxstat.c (__fxstat): Likewise.
2538         * sysdeps/unix/sysv/linux/fxstat64.c (__fxstat64): Likewise.
2539         * sysdeps/unix/sysv/linux/lxstat.c (__lxstat): Likewise.
2540         * sysdeps/unix/sysv/linux/lxstat64.c (__lxstat64): Likewise.
2541         * sysdeps/unix/xstat.c (__xstat): Likewise.
2542
2543         * include/sys/statvfs.h (statvfs, fstatvfs): Add libc_hidden_proto.
2544         * sysdeps/generic/statvfs.c (statvfs): Add libc_hidden_def.
2545         * sysdeps/generic/fstatvfs.c (fstatvfs): Likewise.
2546         * sysdeps/mach/hurd/statvfs.c (statvfs): Likewise.
2547         * sysdeps/mach/hurd/fstatvfs.c (fstatvfs): Likewise.
2548         * sysdeps/unix/sysv/linux/statvfs.c (statvfs): Likewise.
2549         * sysdeps/unix/sysv/linux/fstatvfs.c (fstatvfs): Likewise.
2550
2551         * include/unistd.h (tcgetpgrp): Add libc_hidden_proto.
2552         * include/termios.h (tcsetattr, cfsetispeed, cfsetospeed): Likewise.
2553         * sysdeps/generic/tcgetpgrp.c (tcgetpgrp): Add libc_hidden_def.
2554         * sysdeps/generic/tcsetattr.c (tcsetattr): Likewise.
2555         * sysdeps/generic/speed.c (cfsetispeed, cfsetospeed): Likewise.
2556         * sysdeps/unix/bsd/bsd4.4/tcsetattr.c (tcgetpgrp): Likewise.
2557         * sysdeps/unix/bsd/sun/sunos4/tcsetattr.c (tcsetattr): Likewise.
2558         * sysdeps/unix/bsd/sun/sunos4/speed.c (cfsetispeed, cfsetospeed):
2559         Likewise.
2560         * sysdeps/unix/bsd/tcgetpgrp.c (tcgetpgrp): Likewise.
2561         * sysdeps/unix/bsd/tcsetattr.c (tcsetattr): Likewise.
2562         * sysdeps/unix/sysv/aix/tcsetattr.c (tcsetattr): Likewise.
2563         * sysdeps/unix/sysv/aix/speed.c (cfsetispeed, cfsetospeed): Likewise.
2564         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
2565         * sysdeps/unix/sysv/linux/speed.c (cfsetispeed, cfsetospeed): Likewise.
2566         * sysdeps/unix/sysv/tcgetpgrp.c (tcgetpgrp): Likewise.
2567         * sysdeps/unix/sysv/tcsetattr.c (tcsetattr): Likewise.
2568
2569         * include/string.h (strcoll): Add libc_hidden_proto.
2570         * string/strcoll.c (strcoll): Add libc_hidden_def.
2571
2572         * misc/err.c (vwarn): Fix pasto in libc_hidden_def.
2573
2574 2002-08-11  Philip Blundell  <philb@gnu.org>
2575
2576         * sysdeps/arm/Makefile: New file.
2577
2578 2002-08-08  Jakub Jelinek  <jakub@redhat.com>
2579
2580         * posix/regcomp.c (parse_reg_exp): If '|' is immediately followed
2581         by another '|', end of regex or enclosing ')', clear branch.
2582         * posix/bug-regex9.c: New test.
2583         * posix/Makefile (tests): Add bug-regex9.
2584
2585 2002-08-12  Roland McGrath  <roland@redhat.com>
2586
2587         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Fix inner loop
2588         start count condition, use TOTAL instead of variable that was never
2589         set.  Fix outer loop termination condition to TOTAL >= after update.
2590
2591         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize
2592         dl_tls_static_align and dl_tls_static_nelem.
2593
2594 2002-08-11  Roland McGrath  <roland@redhat.com>
2595
2596         * elf/tst-tlsmod4.c (in_dso): Insert a random library call before use
2597         of the TLS macros, otherwise the compiler might not have initialized
2598         the PIC register yet when we use the PLT via asm.
2599         * elf/tst-tlsmod3.c (in_dso2): Likewise.
2600         * elf/tst-tlsmod2.c (in_dso): Likewise.
2601
2602         * sunrpc/svc_authux.c (_svcauth_unix): Remove spurious printf (ugh!).
2603
2604         * sysdeps/i386/bits/byteswap.h (__bswap_16, __bswap_32, __bswap_64):
2605         Evaluate argument exactly once.  Remove __volatile__ from asm's.
2606
2607         * include/unistd.h: Use libc_hidden_proto for getdomainname
2608         and getlogin_r.
2609         * sysdeps/generic/getdomain.c: Add libc_hidden_def.
2610         * sysdeps/mach/hurd/getdomain.c: Likewise.
2611         * sysdeps/unix/getlogin_r.c: Likewise.
2612         * sysdeps/mach/hurd/getlogin_r.c: Likewise.
2613         * sysdeps/generic/getlogin_r.c: Likewise.
2614
2615         * include/rpc/auth_des.h: Use libc_hidden_proto for rtime.
2616         * sunrpc/rtime.c: Add libc_hidden_def.
2617
2618         * include/string.h: Use libc_hidden_proto for basename.
2619         * string/basename.c [_LIBC]: Add libc_hidden_def.
2620
2621         * sysdeps/unix/sysv/linux/opensock.c (__opensock): socket -> __socket.
2622
2623         * locale/loadarchive.c: munmap -> __munmap throughout.
2624
2625         * include/netdb.h: Use libc_hidden_proto for gai_strerror.
2626         * sysdeps/posix/gai_strerror.c: Add libc_hidden_def.
2627         * sysdeps/generic/gai_strerror.c: Likewise.
2628
2629         * include/sys/errno.h: New file.
2630
2631         * include/signal.h: No libc_hidden_proto for raise,
2632         __libc_current_sigrtmin, __libc_current_sigrtmax.
2633         These need to be overridden by linuxthreads.
2634         * sysdeps/posix/raise.c: Reverted.
2635         * sysdeps/generic/raise.c: Reverted.
2636         * signal/allocrtsig.c: Reverted.
2637
2638         * locale/loadarchive.c (LOCALEDIR): Remove debugging defn.  Oops.
2639
2640 2002-08-10  Roland McGrath  <roland@redhat.com>
2641
2642         * locale/loadarchive.c (_nl_archive_subfreeres): New function.
2643         * locale/localeinfo.h: Declare it.
2644         * locale/setlocale.c (free_mem): Don't call _nl_unload_locale on the
2645         current locale if it's not in the file list.
2646         Call _nl_archive_subfreeres.
2647
2648 2002-08-10  Andreas Jaeger  <aj@suse.de>
2649
2650         * sysdeps/i386/strchr.S: Add comment.
2651
2652 2002-08-10  Roland McGrath  <roland@redhat.com>
2653
2654         * include/wchar.h (putwc): Use libc_hidden_proto.
2655         * include/stdio.h (dprintf, fprintf, vfprintf, sprintf,
2656         sscanf, fwrite, perror, remove, rewind, open_memstream): Likewise.
2657         * stdio-common/dprintf.c: Add libc_hidden_def.
2658         * stdio-common/fprintf.c: Likewise.
2659         * stdio-common/sprintf.c: Likewise.
2660         * stdio-common/sscanf.c: Likewise.
2661         * libio/iofwrite.c: Likewise.
2662         * libio/memstream.c: Likewise.
2663         * libio/putwc.c: Likewise.
2664         * stdio-common/perror.c: Likewise.
2665         * sysdeps/posix/remove.c: Likewise.
2666         * sysdeps/generic/remove.c: Likewise.
2667         * libio/rewind.c: Likewise.  Use <stdio.h> instead of "stdio.h".
2668         * stdio-common/vfprintf.c: Add libc_hidden_def.  Include <stdio.h>.
2669
2670 2002-08-09  Jakub Jelinek  <jakub@redhat.com>
2671
2672         * include/wctype.h (iswalpha, iswdigit, iswlower, iswspace, iswxdigit,
2673         towlower, towupper): Add prototypes here too.  Add libc_hidden_proto.
2674         * wctype/wcfuncs.c (iswalpha, iswdigit, iswlower, iswspace, iswxdigit,
2675         towlower, towupper): Add libc_hidden_weak.
2676
2677         * include/bits/dlfcn.h: New file.
2678         * elf/dl-profstub.c (_dl_mcount_wrapper_check): Add libc_hidden_def.
2679
2680         * include/grp.h (_nss_files_parse_grent): Add libc_hidden_proto.
2681         * include/netinet/ether.h (_nss_files_parse_etherent): Likewise.
2682         * include/rpc/netdb.h (_nss_files_parse_rpcent): Likewise.
2683         * include/pwd.h (_nss_files_parse_pwent): Likewise.
2684         * include/shadow.h (_nss_files_parse_spent): Likewise.
2685         * include/netdb.h (_nss_files_parse_protoent,
2686         _nss_files_parse_servent, _nss_files_parse_netent): Likewise.
2687         * nss/nss_files/files-parse.c (nss_files_parse_hidden_def): Define.
2688         (LINE_PARSER): Use it.
2689         * nss/nsswitch.h (__nss_hostname_digits_dots): Add libc_hidden_proto.
2690         * nss/digits_dots.c (__nss_hostname_digits_dots): Add libc_hidden_def.
2691
2692         * libio/oldiopopen.c: Move #if SHLIB_COMPAT after _IO_HAVE_SYS_WAIT
2693         #endif.
2694
2695         * manual/debug.texi (%MENU%): Remove trailing dot.
2696         Reported by <hayastan132@hotmail.com>.
2697
2698         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek): Add lseek
2699         aliases.
2700         (lseek): Dummy.
2701         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, lseek):
2702         Likewise.
2703
2704 2002-08-09  Roland McGrath  <roland@redhat.com>
2705
2706         * locale/loadarchive.c (_nl_load_locale_from_archive): Parse locale
2707         name to find codeset name (if any) and normalize it.  If the
2708         normalized name differs, look up only that in the archive.
2709         * locale/programs/locarchive.c (add_locale_to_archive): If the name
2710         contains a codeset, normalize the codeset store only the normalized
2711         name in the archive.  If not, add an alias containing the locale's
2712         normalized codeset name.  Apply codeset name normalization when
2713         matching entries in the alias file.
2714
2715         * locale/programs/locarchive.c (delete_locales_from_archive): Don't
2716         decrement HEAD->namehash_used here.
2717         (add_locale): Only need to insert name string when name_offset != 0.
2718
2719         * locale/programs/localedef.c (options): Add -A/--alias-file.
2720         (alias_file): New variable.
2721         (parse_opt): Grok -A, set that.
2722         * locale/programs/localedef.h: Declare it.
2723
2724         * locale/locarchive.h (struct locrecent): Add `refs' member.
2725         * locale/programs/locarchive.c (insert_name): New function, broken out
2726         of ...
2727         (add_locale_to_archive): ... here.  Call that.
2728         (add_alias): New function.
2729         (add_locale): New static function, add_locale_to_archive renamed.
2730         (add_locale_to_archive): Call that and use add_alias to add an alias
2731         for the name with codeset if the given name lacks it.
2732         (enlarge_archive): Call add_locale instead of add_locale_to_archive.
2733
2734         * locale/Makefile (routines): Add loadarchive.
2735         * locale/loadarchive.c: New file, started from code by Ulrich Drepper.
2736         (_nl_load_locale_from_archive): New function.
2737         * locale/localeinfo.h: Declare it.
2738         * locale/findlocale.c (_nl_find_locale): If using default locale path,
2739         try _nl_load_locale_from_archive first.
2740
2741         * locale/loadlocale.c (_nl_intern_locale_data): New function,
2742         broken out of _nl_load_locale.
2743         (_nl_load_locale): Call that.
2744         * locale/localeinfo.h: Declare it.
2745         (struct locale_data): Replace member `mmaped' with `alloc', an enum.
2746         (struct locale_data): Remove unused member `options'.
2747         * locale/findlocale.c (_nl_remove_locale): Update uses.
2748         * locale/loadlocale.c (_nl_load_locale, _nl_unload_locale): Likewise.
2749         * locale/C-collate.c: Update initializer.
2750         * locale/C-identification.c: Likewise.
2751         * locale/C-measurement.c: Likewise.
2752         * locale/C-telephone.c: Likewise.
2753         * locale/C-address.c: Likewise.
2754         * locale/C-name.c: Likewise.
2755         * locale/C-paper.c: Likewise.
2756         * locale/C-time.c: Likewise.
2757         * locale/C-numeric.c: Likewise.
2758         * locale/C-monetary.c: Likewise.
2759         * locale/C-messages.c : Likewise.
2760         * locale/C-ctype.c: Likewise.
2761
2762         * locale/hashval.h [! LONGBITS]: Include <limits.h> here and
2763         use CHAR_BIT instead of BITSPERBYTE.
2764
2765         * locale/localeinfo.h (_nl_find_locale, _nl_load_locale,
2766         _nl_unload_locale): Add `internal_function attribute_hidden' to decls.
2767         * locale/findlocale.c (_nl_find_locale): Add internal_function to defn.
2768         (_nl_remove_locale): Likewise.
2769         * locale/loadlocale.c (_nl_load_locale, _nl_unload_locale): Likewise.
2770
2771         * locale/findlocale.c (_nl_default_locale_path): New variable.
2772         (_nl_find_locale): If LOCALE_PATH is null, default to that.
2773         * locale/localeinfo.h: Declare it.
2774         * locale/setlocale.c (setlocale): Use _nl_default_locale_path
2775         in place of LOCALEDIR.  If no LOCPATH, pass null to _nl_find_locale.
2776         * locale/newlocale.c (__newlocale): Likewise.
2777
2778         * misc/err.c (vwarnx, vwarn): Fix typos in libc_hidden_def uses.
2779         * inet/rexec.c (rexec_af): Add libc_hidden_def.
2780         * sysdeps/generic/morecore.c: Likewise.
2781         * signal/allocrtsig.c (__libc_current_sigrtmin): Likewise.
2782         (__libc_current_sigrtmax): Likewise.
2783
2784 2002-08-08  Roland McGrath  <roland@redhat.com>
2785
2786         * locale/loadlocale.c (_nl_load_locale): Don't use MAP_INHERIT.
2787         * catgets/open_catalog.c (__open_catalog): Likewise.
2788
2789         * locale/programs/locarchive.c (INITIAL_NUM_NAMES): Renamed
2790         from typo INITIAL_NUM_NANES.
2791         (create_archive): Update use.
2792
2793 2002-08-08  Ulrich Drepper  <drepper@redhat.com>
2794
2795         * sysdeps/unix/sysv/linux/sigwait.c: New file.
2796
2797 2002-08-08  Roland McGrath  <roland@frob.com>
2798
2799         * resolv/netdb.h: Don't declare h_errno as a plain global any more.
2800
2801 2002-08-08  Jakub Jelinek  <jakub@redhat.com>
2802
2803         * sysdeps/wordsize-64/wcstol_l.c (wcstoll_l): Define to something
2804         else and undefine after including wcstol_l.c.
2805         * sysdeps/wordsize-64/wcstoul_l.c (wcstoull_l): Similarly.
2806
2807 2002-08-08  Ulrich Drepper  <drepper@redhat.com>
2808
2809         * gmon/gmon.c (write_gmon): Use O_NOFOLLOW in open calls if available.
2810
2811 2002-08-08  Alexandre Oliva  <aoliva@redhat.com>
2812
2813         * configure.in: Make the test for broken_alias_attribute stricter.
2814
2815 2002-05-24  Robert Love  <rml@tech9.net>
2816
2817         * posix/Makefile (routines): Add sched_getaffinity and
2818         sched_setaffinity.
2819         * posix/sched.h: Add declarations for sched_getaffinity and
2820         sched_setaffinity.
2821         * sysdeps/generic/sched_getaffinity.c: New file.
2822         * sysdeps/generic/sched_setaffinity.c: New file.
2823         * sysdeps/unix/sysv/linux/syscalls.list: Add sched_getaffinity and
2824         sched_setaffinity.
2825
2826 2002-08-06  Andreas Schwab  <schwab@suse.de>
2827
2828         * sysdeps/unix/utime.c: If TIMES is NULL pass it through to utimes.
2829
2830 2002-08-07  Ulrich Drepper  <drepper@redhat.com>
2831
2832         * elf/dl-load.c (_dl_map_object_from_fd): Add missing \n in error
2833         message.
2834
2835         * stdlib/isomac.c (get_null_defines): Treat NOT_IN_libc special.
2836         It is known to be defined.
2837
2838         * include/string.h: Define index and rindex only if _ISOMAC is not
2839         defined.
2840
2841         * elf/rtld.c: Include <errno.h>.
2842         * sysdeps/generic/libc-tls.c: Likewise.
2843
2844 2002-08-07  Roland McGrath  <roland@redhat.com>
2845
2846         * resolv/res_debug.c (latlon2ul): Add const to argument type, and use
2847         it internally.
2848         (precsize_aton): Likewise.
2849
2850         * inet/getnetgrent_r.c (endnetgrent, __getnetgrent_r): Actually call
2851         the static symbols added in the last change (doofus is me).
2852
2853         * locale/newlocale.c (__newlocale): Use a bit mask instead of a second
2854         loop to notice missing categories in a composite name.
2855
2856         * locale/locale.h (LC_CTYPE_MASK, LC_NUMERIC_MASK, LC_TIME_MASK,
2857         LC_COLLATE_MASK, LC_MONETARY_MASK, LC_MESSAGES_MASK, LC_ALL_MASK,
2858         LC_PAPER_MASK, LC_NAME_MASK, LC_ADDRESS_MASK, LC_TELEPHONE_MASK,
2859         LC_MEASUREMENT_MASK, LC_IDENTIFICATION_MASK, LC_ALL_MASK): New macros.
2860
2861 2002-08-07  Ulrich Drepper  <drepper@redhat.com>
2862
2863         * malloc/tst-calloc.c: Add tests for one or both parameters being zero.
2864
2865 2002-08-07  Roland McGrath  <roland@redhat.com>
2866
2867         * sysdeps/i386/dl-machine.h (elf_machine_rel): Add to, don't clobber,
2868         unrelocated initial value for DTPOFF32 and TPOFF32 relocs.
2869         Reported by Jakub Jelinek  <jakub@redhat.com>.
2870
2871 2002-08-07  Jakub Jelinek  <jakub@redhat.com>
2872
2873         * malloc/malloc.c (public_cALLOc): Check ELEM_SIZE != 0 before
2874         division.
2875
2876 2002-08-06  Roland McGrath  <roland@redhat.com>
2877
2878         * include/getopt.h: Put private decls inside [_GETOPT_H].
2879         Use libc_hidden_proto for getopt_long, getopt_long_only.
2880         * posix/getopt1.c [_LIBC]: Include <getopt.h> instead of "getopt.h".
2881         Add libc_hidden_def.
2882
2883         * sysdeps/generic/unwind-dw2-fde-glibc.c [_LIBC] (dl_iterate_phdr):
2884         Define as a macro for __dl_iterate_phdr.
2885
2886         * inet/getnetgrent_r.c (internal_setnetgrent): Renamed from __ name,
2887         made static.  Add __ name as a strong alias.
2888         (internal_endnetgrent): Likewise.
2889         (internal_getnetgrent_r): Likewise.
2890
2891         * locale/Versions (libc: GLIBC_2.3): Add all the *_l functions
2892         with no __ prefix.
2893         * locale/langinfo.h [__USE_GNU]: Declare nl_langinfo_l.
2894         * ctype/ctype.h [__USE_GNU]: Add declarations and macros for
2895         all *_l functions with no __ prefix.
2896         * wctype/wcfuncs_l.c: Define weak aliases without __ for all fns.
2897         * ctype/ctype_l.c: Likewise.
2898         * locale/nl_langinfo.c: Likewise.
2899         * string/string.h [__USE_GNU]: Add decls for all *_l fns with no __.
2900         * stdlib/stdlib.h [__USE_GNU]: Likewise.
2901         * wcsmbs/wchar.h [__USE_GNU]: Likewise.
2902         * wctype/wctype.h [__USE_GNU]: Likewise.
2903         * string/strcoll_l.c (strcoll_l): Define as weak alias.
2904         * string/strxfrm_l.c (strxfrm_l): Define as weak alias.
2905         * sysdeps/generic/strcasecmp_l.c (strcasecmp_l): Define as weak alias.
2906         * sysdeps/generic/strncase_l.c (strncasecmp_l): Define as weak alias.
2907         * stdlib/strtod_l.c (strtod_l): Define as weak alias.
2908         * stdlib/strtof_l.c (strtof_l): Define as weak alias.
2909         * stdlib/strtold_l.c (strtold_l): Define as weak alias.
2910         * wcsmbs/wcscasecmp_l.c (wcscasecmp_l): Define as weak alias.
2911         (__wcscasecmp_l): Add libc_hidden_def.
2912         * wcsmbs/wcsncase_l.c (wcsncasecmp_l): Define as weak alias.
2913         (__wcsncasecmp_l): Add libc_hidden_def.
2914         * wcsmbs/wcstof_l.c (wcstof_l): Define as weak alias.
2915         * wcsmbs/wcstod_l.c (wcstod_l): Define as weak alias.
2916         * wcsmbs/wcstold_l.c (wcstold_l): Define as weak alias.
2917         * wcsmbs/wcscoll_l.c (wcscoll_l): Define as weak alias.
2918         * wcsmbs/wcsxfrm_l.c (wcsxfrm_l): Define as weak alias.
2919         * sysdeps/generic/wcstol_l.c (wcstol_l): Define as weak alias.
2920         * sysdeps/generic/wcstoll_l.c (wcstoll_l): Define as weak alias.
2921         * sysdeps/generic/wcstoul_l.c (wcstoul_l): Define as weak alias.
2922         * sysdeps/generic/wcstoull_l.c (wcstoull_l): Define as weak alias.
2923         * sysdeps/wordsize-64/wcstol_l.c (wcstoll_l): Define as weak alias.
2924         * sysdeps/wordsize-64/wcstoul_l.c (wcstoull_l): Define as weak alias.
2925         * wctype/wctrans_l.c (wctrans_l) Define as weak alias.
2926         * wctype/towctrans_l.c (towctrans_l) Define as weak alias.
2927         * wctype/wctype_l.c (wctype_l) Define as weak alias.
2928
2929 2002-08-05  Roland McGrath  <roland@redhat.com>
2930
2931         * include/rpc/auth.h: Use libc_hidden_proto for getnetname,
2932         netname2user, host2netname, user2netname, key_gendes.
2933         * sunrpc/netname.c: Add libc_hidden_def.
2934         * sunrpc/key_call.c: Likewise.
2935
2936         * include/netdb.h: Use libc_hidden_proto for getaddrinfo, getnameinfo,
2937         freeaddrinfo.
2938         * inet/getnameinfo.c: Add libc_hidden_def.
2939         * sysdeps/generic/getaddrinfo.c: Likewise.
2940         * sysdeps/posix/getaddrinfo.c: Likewise.
2941
2942         * include/wchar.h: Use libc_hidden_proto for wmemchr, wmemset.
2943         * wcsmbs/wmemchr.c: Add libc_hidden_def.
2944         * wcsmbs/wmemset.c: Add libc_hidden_def.
2945
2946         * include/string.h: Move libc_hidden_proto's inside #ifndef _STRING_H.
2947         (index, rindex): Define as macros for strchr, strrchr.
2948
2949         * string/envz.c (envz_strip): index -> strchr
2950
2951         * include/rpc/rpc_msg.h: Use libc_hidden_proto for _seterr_reply.
2952         * sunrpc/rpc_prot.c: Add libc_hidden_def.
2953
2954         * include/wchar.h: Use libc_hidden_proto for mbrtowc.
2955         * wcsmbs/mbrtowc.c: Add libc_hidden_weak.
2956
2957         * include/stdlib.h: Use libc_hidden_proto for wctomb.
2958         * stdlib/wctomb.c: Add libc_hidden_def.
2959
2960         * include/netdb.h: Use libc_hidden_proto for innetgr, rcmd_af,
2961         rexec_af, rresvport_af, ruserok_af, iruserok_af, ruserpass, hstrerror.
2962         * resolv/herror.c: Likewise.
2963         * inet/rcmd.c: Add libc_hidden_def.
2964         * inet/ruserpass.c: Likewise.
2965         * inet/getnetgrent_r.c: Likewise.
2966
2967         * include/rpc/svc.h: Use libc_hidden_proto for svc_register,
2968         svc_unregister, remove *_internal decls.  Use libc_hidden_proto
2969         for svcerr_auth, svcerr_noprog, svcerr_progvers.
2970         * sunrpc/svc.c (svc_register, svc_unregister): Change INTDEF to
2971         libc_hidden_def.
2972         (svcerr_auth, svcerr_noprog, svcerr_progvers): Add libc_hidden_def.
2973         * sunrpc/svc_simple.c (registerrpc): Nix INTUSE for svc_register.
2974
2975         * sysdeps/posix/system.c (do_system): New function, guts broken out of
2976         __libc_system.
2977         (__libc_system): Call it, putting just the line == NULL test here.
2978
2979         * include/libc-symbols.h (__hidden_proto): Add extern keywords so
2980         variables work right.
2981
2982         * elf/dl-open.c (dl_open_worker): Use _ macro instead of gettext.
2983         * elf/dl-close.c (_dl_close): Likewise.
2984
2985         * include/netinet/in.h: Use libc_hidden_proto for bindresvport,
2986         in6addr_any, in6addr_loopback.  Remove decls for
2987         bindresvport_internal, in6addr_any_internal, in6addr_loopback_internal.
2988         * sunrpc/svc_udp.c (svcudp_bufcreate): Nix INTUSE for bindresvport.
2989         * sunrpc/svc_tcp.c (svctcp_create): Likewise.
2990         * sunrpc/clnt_udp.c (clntudp_bufcreate): Likewise.
2991         * sunrpc/bindrsvprt.c: Change INTDEF to libc_hidden_def.
2992         * inet/in6_addr.c: Change INTVARDEF to libc_hidden_def.
2993         * sysdeps/posix/getaddrinfo.c (gaih_inet): Nix INTUSE for
2994         in6addr_loopback.
2995         * inet/gethstbyad_r.c (PREPROCESS): Nix INTUSE for in6addr_any.
2996
2997         * include/netinet/ether.h: Use libc_hidden_proto for ether_ntoa_r,
2998         ether_aton_r.
2999         * inet/ether_aton_r.c: Add libc_hidden_def.
3000         * inet/ether_ntoa_r.c: Likewise.
3001
3002         * include/rpc/svc.h: Use libc_hidden_proto for xprt_register,
3003         xprt_unregister.
3004         * sunrpc/svc.c: Add libc_hidden_def.
3005         * include/rpc/pmap_clnt.h: Use libc_hidden_proto for pmap_getport,
3006         pmap_set, pmap_unset.
3007         * sunrpc/pmap_clnt.c: Add libc_hidden_def.
3008         * sunrpc/pm_getport.c: Likewise.
3009         * include/rpc/auth_des.h: Use libc_hidden_proto for getpublickey.
3010         * sunrpc/publickey.c: Add libc_hidden_def.
3011
3012 2002-08-05  Ulrich Drepper  <drepper@redhat.com>
3013
3014         * elf/rtld.c (_dl_start): Don't use memset.  Use same tricks as for
3015         the other memset call in this function.
3016
3017         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Store dtv pointer
3018         at correct index.  Clear BSS region now that memalign is used.
3019
3020 2002-08-05  Roland McGrath  <roland@redhat.com>
3021
3022         * include/sys/utsname.h: Use libc_hidden_proto for uname, __uname.
3023         * sysdeps/generic/uname.c: Add libc_hidden_def.
3024         * sysdeps/mach/hurd/uname.c: Likewise.
3025
3026 2002-08-05  Jakub Jelinek  <jakub@redhat.com>
3027
3028         * include/wchar.h (wcrtomb, wcscmp, wcsftime, wcsspn, wcschr, wcscoll,
3029         wcspbrk): Add libc_hidden_proto.
3030         * time/strftime.c (my_strftime): Add libc_hidden_def.
3031         (strftime): Remove libc_hidden_def.
3032         * wcsmbs/wcschr.c (wcschr): Add libc_hidden_def.
3033         * wcsmbs/wcspbrk.c (wcspbrk): Likewise.
3034         * wcsmbs/wcsspn.c (wcsspn): Likewise.
3035         * wcsmbs/wcscmp.c (wcscmp): Likewise.
3036         * wcsmbs/wcrtomb.c (wcrtomb): Add libc_hidden_weak.
3037         * wcsmbs/wcscoll.c (wcscoll): Likewise.
3038
3039         * include/rpc/rpc.h (__rpc_thread_svc_max_pollfd,
3040         __rpc_thread_svc_pollfd, __rpc_thread_svc_fdset,
3041         __rpc_thread_createerr): Add libc_hidden_proto.
3042         * sunrpc/rpc_thread.c (__rpc_thread_svc_max_pollfd,
3043         __rpc_thread_svc_pollfd, __rpc_thread_svc_fdset,
3044         __rpc_thread_createerr): Add libc_hidden_def.
3045
3046         * include/rpc/clnt.h (clnt_sperrno, clnt_spcreateerror,
3047         clnt_perror, clnt_sperror, _rpc_dtablesize): Add libc_hidden_proto.
3048         * sunrpc/clnt_perr.c (clnt_sperrno, clnt_spcreateerror,
3049         clnt_perror, clnt_sperror): Add libc_hidden_def.
3050         * sunrpc/rpc_dtable.c (_rpc_dtablesize): Likewise.
3051
3052         * include/rpc/des_crypt.h (des_setparity, ecb_crypt, cbc_crypt): Add
3053         libc_hidden_proto.
3054         * sunrpc/des_crypt.c (ecb_crypt, cbc_crypt): Add libc_hidden_proto.
3055         * sunrpc/des_soft.c (des_setparity): Likewise.
3056
3057         * include/rpc/auth.h (key_encryptsession_pk, key_decryptsession_pk):
3058         Add libc_hidden_proto.
3059         * sunrpc/key_call.c (key_encryptsession_pk, key_decryptsession_pk):
3060         Add libc_hidden_def.
3061
3062 2002-08-05  Roland McGrath  <roland@redhat.com>
3063
3064         * sysdeps/generic/ldsodefs.h (struct rtld_global): Replace member
3065         `bool _dl_initial_dtv_malloced' with `void *_dl_initial_dtv'.
3066         * elf/rtld.c (dl_main): Set it to the new dtv for the main thread.
3067         * sysdeps/generic/dl-tls.c (__tls_get_addr): When reallocating the
3068         dtv, check if it matches _dl_initial_dtv; if so, malloc and copy the
3069         old data, abandoning the original memory allocated by rtld at startup,
3070         instead of calling realloc normally.
3071
3072 2002-08-05  Ulrich Drepper  <drepper@redhat.com>
3073
3074         * po/fr.po: Update from translation team.
3075
3076 2002-08-04  Roland McGrath  <roland@redhat.com>
3077
3078         * sysdeps/unix/make-syscalls.sh: If the syscall name field is -
3079         then generate a dummy module under the given name, obeying the
3080         normal rules for the "caller" field.
3081
3082         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Make the phdr loop
3083         actually iterate over the elements.  Fix typo p_type -> p_vaddr.
3084
3085         * include/pthread.h: Don't declare __pthread_initialize_minimal as
3086         weak here; we declare it weak or strong in the one place we use it.
3087         * sysdeps/generic/libc-start.c: ... which is here.
3088         Don't make the decl weak if [USE_TLS], since static programs need TLS
3089         setup even when single-threaded.
3090
3091         * stdlib/isomac.c (fmt): Add -DNOT_IN_libc to the compiler command.
3092
3093         * elf/Makefile (test-srcs): Add $(modules-names) to it.
3094         (CFLAGS-vismod2.c, CFLAGS-failobj.c, CFLAGS-constload2.c,
3095         CFLAGS-reldepmod3.c, CFLAGS-reldepmod4.c, CFLAGS-ltglobmod2.c): Remove
3096         all these variables.
3097
3098 2002-08-04  Ulrich Drepper  <drepper@redhat.com>
3099
3100         * include/stdio.h: Don't define macro magic to redirect function
3101         calls if _ISOMAC is defined.
3102
3103         * sysdeps/i386/fpu/libm-test-ulps: Add epsilons for inlined
3104         ldouble asin tests.
3105
3106 2002-08-04  Roland McGrath  <roland@redhat.com>
3107
3108         * stdlib/lrand48_r.c: Add libc_hidden_def.
3109
3110         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Allocate the
3111         TCB with __libc_memalign instead of mmap.
3112         (_dl_deallocate_tls): Free it with free instead of munmap.
3113
3114         * Makerules (cpp-srcs-left): When setting this to run
3115         cppflags-iterator.mk, must append .c to $(tests) and $(xtests)
3116         words.  Combine the two loops into one on the concatenated list,
3117         including those as well as $(test-srcs).
3118
3119         * elf/dl-minimal.c (__libc_memalign): Guts of malloc moved here,
3120         since we align here with optimally minimal waste anyway.
3121         (malloc): Just call that.
3122
3123         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Set l_tls_offset to
3124         the right variable.
3125
3126         * elf/dl-load.c (_dl_map_object_from_fd): Use p_vaddr, not p_offset,
3127         to compute memory location for l_tls_initimage.
3128         * elf/rtld.c (_dl_start): Likewise.
3129         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
3130
3131         * libio/oldiopopen.c: Move #include's before #if SHLIB_COMPAT,
3132         because the .d file is generated in the non-shared case and
3133         so fails to catch them otherwise.
3134
3135         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): New function,
3136         split out of _dl_allocate_tls.
3137         (_dl_allocate_tls_init): Likewise.
3138         (_dl_allocate_tls): Call those.
3139         * sysdeps/generic/ldsodefs.h: Declare them with attribute_hidden.
3140         * elf/rtld.c (dl_main): Call them separately instead of calling
3141         _dl_allocate_tls.  Delay _dl_allocate_tls_init until after relocation
3142         is finished, so that the initializer data has been relocated before we
3143         copy it into the main thread's TLS block.
3144
3145         * sysdeps/generic/dl-tls.c (_dl_allocate_tls): Fix off-by-one error in
3146         loop conditions, prevented the last used module from being initialized.
3147
3148 2002-08-04  Jakub Jelinek  <jakub@redhat.com>
3149
3150         * sysdeps/generic/glob.c (glob, globfree): Only use libc_hidden_def
3151         if glob resp. globfree are not macros.
3152         * sysdeps/gnu/glob64.c (globfree64): Add libc_hidden_def.
3153         * sysdeps/unix/sysv/linux/alpha/glob.c (glob, globfree, globfree64):
3154         Add libc_hidden_ver.
3155         * sysdeps/unix/sysv/linux/i386/glob64.c (globfree64): Add
3156         libc_hidden_def.
3157         * sysdeps/wordsize-64/glob.c (globfree64): Use libc_hidden_ver
3158         instead of libc_hidden_weak.
3159         * sysdeps/wordsize-64/strtol.c (__strtoll_internal): Use
3160         libc_hidden_ver instead of libc_hidden_def.
3161         * sysdeps/wordsize-64/wcstol.c (__wcstoll_internal): Use
3162         libc_hidden_ver instead of libc_hidden_def.
3163         (wcstoll, wcstoq): Remove libc_hidden_weak.
3164         * sysdeps/wordsize-64/strtol_l.c (____strtoll_l_internal): Add
3165         libc_hidden_ver.
3166         * sysdeps/wordsize-64/strtoul.c (__strtoull_internal): Add
3167         libc_hidden_ver.
3168         * sysdeps/wordsize-64/strtoul_l.c (____strtoull_l_internal): Add
3169         libc_hidden_ver.
3170         * sysdeps/wordsize-64/wcstoul.c (__wcstoull_internal): Add
3171         libc_hidden_ver.
3172
3173 2002-08-04  Ulrich Drepper  <drepper@redhat.com>
3174
3175         * stdio-common/psignal.c: Declare _sys_siglist_internal.  Use USEINT
3176         to access _sys_siglist.
3177         * string/strsignal.c: Likewise.
3178         * sysdeps/generic/siglist.c: Add _sys_siglist_internal alias.
3179         * sysdeps/gnu/siglist.c: Likewise.
3180         * sysdeps/unix/siglist.c: Likewise.
3181         * sysdeps/unix/sysv/linux/arm/siglist.c: Likewise.
3182
3183         * libio/fileops.c: Add missing INTUSEs for _IO_file_jumps.
3184
3185         * libio/wfileops.c: Add missing INTUSE for _IO_file_close.
3186
3187         * intl/dcigettext.c: Define _nl_default_dirname_internal as hidden
3188         alias and use it.
3189         * intl/bindtextdom.c: Use _nl_default_dirname_internal.
3190
3191         * include/netinet/in.h: Add declaration of in6addr_loopback_internal.
3192         * inet/in6_addr.c: Add INTVARDEF for in6addr_loopback.
3193         * sysdeps/posix/getaddrinfo.c: Use INTUSE for in6addr_loopback access.
3194
3195         * include/time.h: Add libc_hidden_proto for __gmtime_r.
3196         * time/gmtime.c (__gmtime_r): Add libc_hidden_def.
3197
3198         * iconv/Versions: Replace __gconv_alias_db, __gconv_modules_db,
3199         and __gconv_cache with __gconv_get_alias_db, __gconv_get_modules_db,
3200         and __gconv_get_cache respectively.
3201         * iconv/gconv_cache.c (gconv_cache): Renamed for __gconv_cache and
3202         defined static.  Change all users.
3203         (__gconv_get_cache): New function.
3204         * iconv/gconv_db.c (__gconv_get_modules_db): New function.
3205         (__gconv_get_alias_db): New function.
3206         * iconv/gconv_int.h (__gconv_alias_db): Declare as hidden.
3207         (__conv_modules_db): Likewise.
3208         Add prototypes for __gconv_get_cache, __gconv_get_modules_db,
3209         and __gconv_get_alias_db.
3210         * iconv/iconv_prog.c: Use the new functions instead of accessing the
3211         variables.
3212
3213         * include/stdlib.h: Add prototype and libc_hidden_proto for
3214         __default_morecore.
3215         * sysdeps/generic/morecore.c: Include <stdlib.h>.
3216
3217         * malloc/obstack.c: Remove fputs macro.
3218
3219         * malloc/mtrace.c: Remove fopen macro.
3220
3221 2002-08-04  Jakub Jelinek  <jakub@redhat.com>
3222
3223         * manual/debug.texi: Fix spelling to programmatically.
3224         Reported by <hayastan132@hotmail.com>.
3225
3226 2002-08-04  Ulrich Drepper  <drepper@redhat.com>
3227
3228         * include/libio.h: Add libc_hidden_proto for __uflow.
3229         * include/stdio.h: Map fopen, fdopen, fclose, fputs, fsetpos, and
3230         fgetpos to _IO_* names.
3231         Add libc_hidden_proto for fileno, fwrite, fseek, fflush_unlocked,
3232         fread_unlocked, fwrite_unlocked, fgets_unlocked, fputs_unlocked.
3233         * include/wchar.h: Add libc_hidden_proto for fputws_unlocked,
3234         putwc_unlocked, vswscanf.
3235         * libio/iolibio.h: Add libc_hidden_proto for _IO_fputs.
3236         * libio/fileno.c: Use <stdio.h> and libc_hidden_def.
3237         * libio/fseek.c: Likewise.
3238         * libio/fmemopen.c: Include "libioP.h".  Call _IO_fopencookie and
3239         not fopencookie.
3240         * libio/genops.c (__uflow): Add libc_hidden_def.
3241         * libio/iofflush_u.c (fflush_unlocked): Likewise.
3242         * libio/iofgets_u.c (fgets_unlocked): Likewise.
3243         * libio/iofputs_u.c (fputs_unlocked): Likewise.
3244         * libio/iofputws_u.c (fputws_unlocked): Likewise.
3245         * libio/iofread_u.c (fread_unlocked): Likewise.
3246         * libio/iofwrite_u.c (fwrite_unlocked): Likewise.
3247         * libio/iovswscanf.c (vswscanf): Likewise.
3248         * libio/putwc_u.c (putwc_unlocked): Likewise.
3249         * libio/iofputs.c: Use libc_hidden_def instead of INTDEF.
3250         * malloc/malloc.c: Redirect fwrite calls to _IO_fwrite.
3251         * malloc/mtrace.c: Likewise.
3252
3253         * sunrpc/clnt_perr.c: Remove fputs macro.
3254         * sunrpc/svc_simple.c: Likewise.
3255         * sunrpc/svc_tcp.c: Likewise.
3256         * sunrpc/svc_udp.c: Likewise.
3257         * sunrpc/xdr_rec.c: Likewise.
3258         * sunrpc/xdr_ref.c: Likewise.
3259
3260         * iconv/Makefile: Add CPPFLAGS definitions with -DNOT_in_libc for
3261         iconv_prog, linereader, and charmap-dir.
3262         * locale/Makefile: Likewise for locale and charmap-dir.
3263         * malloc/Makefile: Likewise for memusagestat.
3264         * nscd/Makefile: Likewise for nscd, nscd_conf, and dbg_log.
3265         * sunrpc/Makefile: Likewise for rpc_main.
3266         * sysdeps/unix/sysv/linux/Makefile: Likewise for lddlibc4.
3267         * timezone/Makefile: Likewise for zic.
3268
3269         * stdio-common/perror.c: Avoid multiple calls to fileno_unlocked.
3270
3271         * elf/dl-addr.c (_dl_addr): Add libc_hidden_def.
3272         * elf/dl-close.c (_dl_close): Add libc_hidden_def.
3273         * elf/dl-open.c (_dl_open): Add libc_hidden_def.
3274         * include/dlfcn.h: Add libc_hidden_proto for _dl_addr, _dl_open,
3275         _dl_close.
3276
3277         * include/libio.h: Add libc_hidden_proto for __underflow, __wuflow,
3278         __wunderflow.
3279         * libio/genops.c (__underflow): Add libc_hidden_def.
3280         * libio/wgenops.c (__wuflow): Likewise.
3281         (__wunderflow): Likewise.
3282
3283         * include/obstack.h: Add libc_hidden_proto for _obstack_newchunk.
3284         * malloc/obstack.c (_obstack_newchunk): Add libc_hidden_def.
3285
3286         * include/stdio.h: Add libc_hidden_proto for __vfscanf.
3287         * stdio-common/vfscanf.c (__vfscanf): Add libc_hidden_def.
3288
3289         * include/string.h: Add libc_hidden_proto for __strverscmp.
3290         * string/strverscmp.c (__strverscmp): Add libc_hidden_def.
3291
3292         * include/unistd.h: Add libc_hidden_proto for __sysconf.
3293         * sysdeps/generic/sysconf.c (__sysconf): Add libc_hidden_def.
3294         * sysdeps/posix/sysconf.c: Likewise.
3295         * sysdeps/unix/sysv/irix4/sysconf.c: Likewise.
3296         * sysdeps/unix/sysv/sysv4/sysconf.c: Likewise.
3297
3298         * include/wctype.h: Use libc_hidden_proto for __iswctype, __iswalnum_l,
3299         __iswalpha_l, __iswblank_l, __iswcntrl_l, __iswdigit_l, __iswlower_l,
3300         __iswgraph_l, __iswprint_l, __iswpunct_l, __iswspace_l, __iswupper_l,
3301         __iswxdigit_l, __towlower_l, __towupper_l.
3302         * wcsmbs/wcstype.c (__iswctype): Use libc_hidden_def.
3303         * wcsmbs/wcfuncs_l.c: Use libc_hidden_def for all functions.
3304
3305         * include/sys/wait.h: Add libc_hidden_proto for __xmknod.
3306         * sysdeps/generic/xmknod.c (__xmknod): Add libc_hidden_def.
3307         * sysdeps/mach/hurd/xmknod.c: Likewise.
3308         * sysdeps/unix/xmknod.c: Likewise.
3309         * sysdeps/unix/sysv/linux/xmknod.c: Likewise.
3310         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
3311         * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
3312
3313         * sunrpc/svc.c: Add missing INTUSE for _authenticate.
3314
3315 2002-08-03  Roland McGrath  <roland@redhat.com>
3316
3317         * include/sys/resource.h: Use libc_hidden_proto for getpriority,
3318         setpriority.
3319         * sysdeps/unix/sysv/linux/getpriority.c: Add libc_hidden_def.
3320         * sysdeps/unix/sysv/irix4/getpriority.c: Likewise.
3321         * sysdeps/unix/sysv/irix4/setpriority.c: Likewise.
3322         * sysdeps/mach/hurd/setpriority.c: Likewise.
3323         * sysdeps/mach/hurd/getpriority.c: Likewise.
3324         * sysdeps/generic/setpriority.c: Likewise.
3325         * sysdeps/generic/getpriority.c: Likewise.
3326
3327         * include/mcheck.h: Use libc_hidden_proto for mcheck_check_all.
3328         * malloc/mcheck.c: Add libc_hidden_def.
3329
3330         * include/search.h: Use libc_hidden_proto for hcreate_r, hdestroy_r.
3331         * misc/hsearch_r.c: Add libc_hidden_def.
3332
3333         * include/fnmatch.h: Use libc_hidden_proto for fnmatch.
3334         * posix/fnmatch.c: Add libc_hidden_weak.
3335
3336         * include/unistd.h: Use libc_hidden_proto for _exit, alarm, confstr,
3337         execl, execle, execlp, execvp, getpid, getsid.
3338         * sysdeps/generic/alarm.c: Add libc_hidden_def.
3339         * sysdeps/unix/alarm.c: Likewise.
3340         * posix/confstr.c: Likewise.
3341         * posix/execvp.c: Likewise.
3342         * posix/execlp.c: Likewise.
3343         * posix/execle.c: Likewise.
3344         * posix/execl.c: Likewise.
3345         * sysdeps/generic/getsid.c: Likewise.
3346         * sysdeps/mach/hurd/getsid.c: Likewise.
3347         * sysdeps/generic/getpid.c: Add libc_hidden_weak.
3348         * sysdeps/mach/hurd/getpid.c: Likewise.
3349
3350         * include/stdlib.h: Use libc_hidden_proto for ecvt_r, fcvt_r,
3351         qecvt_r, qfcvt_r, lrand48_r.
3352         * misc/efgcvt_r.c: Add libc_hidden_def.
3353
3354         * include/wordexp.h: Use libc_hidden_proto for wordfree.
3355         * sysdeps/generic/wordexp.c: Add libc_hidden_def.
3356
3357         * include/langinfo.h: Use libc_hidden_proto for nl_langinfo.
3358         * locale/nl_langinfo.c: Add libc_hidden_def.
3359
3360         * include/glob.h: Use libc_hidden_proto for glob, globfree, globfree64.
3361         * sysdeps/generic/glob.c: Add libc_hidden_def.
3362         * sysdeps/generic/glob64.c: Likewise.
3363         * sysdeps/wordsize-64/glob.c (globfree64): Add libc_hidden_weak.
3364
3365         * locale/nl_langinfo.c: Use _NL_CURRENT_DATA.
3366
3367         * elf/Makefile (CFLAGS-vismod2.c): New variable.
3368
3369         * locale/setlocale.c (_nl_current_names): Variable moved ...
3370         * locale/localename.c (_nl_current_names): ... here, new file.
3371         Make it global, with attribute_hidden.
3372         * locale/localeinfo.h: Declare it.
3373         * locale/Makefile (aux): Add localename.
3374         * locale/localename.c (__current_locale_name): New function.
3375         * include/locale.h (__current_locale_name): Declare it.
3376         * intl/dcigettext.c (guess_category_value): Use that instead of
3377         calling setlocale.
3378
3379         * locale/locale.h [__USE_GNU] (locale_t): New type alias of __locale_t.
3380         [__USE_GNU] (newlocale, duplocale, freelocale, uselocale): New decls.
3381         [__USE_GNU] (LC_GLOBAL_LOCALE): New macro.
3382         * locale/newlocale.c: Add alias to __ name.
3383         * locale/duplocale.c: Likewise.
3384         * locale/freelocale.c: Likewise.
3385         * locale/uselocale.c: New file.
3386         * locale/Makefile (routines): Add it.
3387         * locale/Versions (libc: GLIBC_2.3): New set.
3388         Add newlocale, duplocale, freelocale, uselocale.
3389         (libc: GLIBC_PRIVATE): Add __uselocale.
3390
3391         * locale/localeinfo.h [SHARED]
3392         (_NL_CURRENT_LOCALE): New macro, defined to fetch a tsd value.
3393         (_NL_CURRENT_DATA): Define using that.
3394         (_NL_CURRENT, _NL_CURRENT_WSTR, _NL_CURRENT_WORD): Define using that.
3395         (_NL_CURRENT_DEFINE): Define to empty.
3396         [! SHARED]: Decls of _nl_current_CATEGORY and _nl_current
3397         conditionalized on this.
3398         * locale/xlocale.c (NL_C_INTIIALIZER): New macro,
3399         taking initializer of _nl_C_locobj.
3400         [SHARED] (_nl_global_locale): New variable, using that initializer.
3401         (_nl_C_locobj): Use new macro for initialzier.
3402         * locale/setlocale.c [! SHARED] (_nl_current): Conditionalize on this.
3403         [! SHARED] (CATEGORY_USED): New macro.
3404         [SHARED] (CATEGORY_USED, _nl_C): New macros.
3405         (setdata, setlocale): Use that macro instead of examining _nl_current.
3406         (setdata): Set the slot in _nl_global_locale.
3407         Conditionalize setting of _nl_current on [! SHARED].
3408         * locale/findlocale.c [SHARED] (_nl_C): Define as a macro instead of
3409         declaration as an extern.
3410         * locale/newlocale.c (__newlocale): Use _nl_C_locobj instead of _nl_C.
3411
3412         * include/locale.h: Use libc_hidden_proto for setlocale.
3413         * locale/setlocale.c: Add libc_hidden_def.
3414
3415         * locale/setlocale.c (free_mem): Use _NL_CURRENT_DATA.
3416
3417         * include/search.h: Use libc_hidden_proto for hsearch_r, lfind.
3418         * misc/hsearch_r.c: Add libc_hidden_def.
3419         * misc/lsearch.c: Likewise.
3420
3421         * include/ttyent.h: Use libc_hidden_proto for getttyent, setttyent,
3422         endttyent.
3423         * misc/getttyent.c: Add libc_hidden_def.
3424
3425         * include/mcheck.h: Use libc_hidden_proto for mcheck.
3426         * malloc/mcheck.c: Add libc_hidden_def.
3427
3428         * include/envz.h: Use libc_hidden_proto for envz_entry, enz_remove.
3429         * include/argz.h: Use libc_hidden_proto for argz_delete.
3430         * string/argz-delete.c: Add libc_hidden_def.
3431         * string/envz.c: Likewise.  Use <envz.h>, not "envz.h".
3432
3433         * sysdeps/unix/sysv/linux/x86_64/clone.S (thread_start): Use
3434         HIDDEN_JUMPTARGET for _exit.
3435         * sysdeps/unix/sysv/linux/m68k/clone.S (thread_start): Likewise.
3436         * sysdeps/unix/sysv/linux/i386/clone.S (thread_start): Likewise.
3437         * sysdeps/unix/sysv/linux/powerpc/clone.S: Likewise.
3438         * sysdeps/unix/_exit.S (_exit): Add libc_hidden_def.
3439
3440         * include/libc-symbols.h: Fix [__ASSEMBLY__] -> [__ASSEMBLER__].
3441         [__ASSEMBLER__] (hidden_weak): Define using hidden_def, or to empty.
3442         [__ASSEMBLER__] (HIDDEN_JUMPTARGET): New macro.
3443         * sysdeps/unix/sysv/linux/i386/makecontext.S: Use it for exit.
3444
3445         * include/stdlib.h: Use libc_hidden_proto for abort,
3446         __strtof_internal, __strtod_internal, __strtold_internal,
3447         __strtol_internal, __strtoll_internal, __strtoul_internal,
3448         __strtoull_internal. __strtof_l_internal, __strtod_l_internal,
3449         __strtold_l_internal, __strtol_l_internal, __strtoll_l_internal,
3450         __strtoul_l_internal, __strtoull_l_internal.
3451         * include/wchar.h: Use libc_hidden_proto for __wcstof_internal,
3452         __wcstod_internal, __wcstold_internal, __wcstol_internal,
3453         __wcstoll_internal, __wcstoul_internal, ____wcstof_l_internal,
3454         ____wcstod_l_internal, ____wcstold_l_internal, ____wcstol_l_internal,
3455         ____wcstoll_l_internal, ____wcstoul_l_internal, _