0095eff1cd7b24f796815dda925222d80bd0b3b3
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2003-01-10  Guido Günther <agx@sigxcpu.org>
2
3         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
4         * sysdeps/unix/mips/brk.S: Likewise.
5         * sysdeps/unix/mips/pipe.S: Likewise.
6
7 2003-01-10  Andreas Schwab  <schwab@suse.de>
8
9         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
10
11         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
12         are known to have the vfork syscall.
13
14         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
15
16         * sysdeps/unix/sysv/linux/kernel-features.h
17         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
18         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
19         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
20
21 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
22
23         * posix/test-vfork.c (noop): Add __attribute_noinline__.
24         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
25         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
26         defining it.
27         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
28         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
29         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
30         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
31         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
32
33 2003-01-09  Andreas Schwab  <schwab@suse.de>
34
35         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
36
37 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
38
39         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
40         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
41         argument.
42         (INTERNAL_SYSCALL_DECL): Define.
43
44 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
45
46         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
47         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
48         argument.
49         (INTERNAL_SYSCALL_DECL): Define.
50         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
51         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
52         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
53         (INLINE_SYSCALL): Adjust.
54         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
55         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
56         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
57         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
58         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
59         add err argument to INTERNAL_SYSCALL* macros.
60         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
61         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
62         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
63         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
64         Likewise.
65         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
66         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
67         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
68
69 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
70
71         Unify symbols in user namespace exported by libc.so and libc.a.
72         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
73         argp_fmtstream_free, and argp_fmtstream_printf.
74         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
75         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
76         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
77         argp_fmtstream_point.
78         * gmon/gmon.c: Don't define write_profiling.
79         * libio/genops.c: Don't define _cleanup.
80
81         * intl/explodename.c (_nl_find_language.c): Mark as static.
82         * intl/loadinfo.h: Remove _nl_find_language prototype.
83
84         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
85         * libio/libioP.h: Remove declaration.
86
87         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
88         * libio/libioP.h: Remove declaration.
89
90         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
91         * sysdeps/generic/framestate.c: Define STATIC before including
92         unwind-dw2.c.
93
94         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
95
96 2003-01-06  Philip Blundell  <philb@gnu.org>
97
98         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
99         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
100
101         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
102         directive.
103         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
104         (SYSCALL_ERROR): New.
105         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
106         handling code.
107         (INTERNAL_SYSCALL): Define.
108         (INLINE_SYSCALL): Use it.
109         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
110         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
111         SYSCALL_ERROR in place of __syscall_error.
112
113 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
114
115         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
116         __bswap_32, __bswap_64): Put x into temporary variable
117         to avoid warnings.
118         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
119         (inline) functions.
120         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
121         __bswap_32, __bswap_64): Put x into temporary variable
122         to avoid warnings.
123         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
124         (inline) functions.
125         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
126         Likewise.
127
128 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
129
130         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
131         alias.
132
133 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
134
135         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
136         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
137
138 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
139
140         * math/libm-test.inc (significand_test): New function.
141         (main): Call it.
142
143 2003-01-06  Roland McGrath  <roland@redhat.com>
144
145         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
146         arguments.
147         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
148         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
149         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
150
151         * string/tester.c (test_strcpy): Add test with `void *' arguments.
152
153 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
154
155         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
156         return significand and not the exponent.
157         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
158
159         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
160         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
161
162         * malloc/malloc.c: Mark all _int_* functions as static.
163
164 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
165
166         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
167         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
168         handling.
169         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
170
171 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
172
173         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
174         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
175         support.
176         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
177         ftruncate64, truncate64, pread64 and pwrite64 entries.
178         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
179         (INLINE_SYSCALL): Add __builtin_expect.
180         (LOADARGS_n): Add argument size safety checks.
181         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
182         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
183         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
184         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
185         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
186         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
187
188 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
189
190         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
191         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
192         (LIBC_CANCEL_HANDLED): Add.
193
194         * sysdeps/unix/sysv/linux/alpha/sysdep.h
195         (inline_syscall_r0_constraint): Rename to...
196         (inline_syscall_r0_out_constraint): ... this.  Add =.
197         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
198
199 2003-01-06  Andreas Schwab  <schwab@suse.de>
200
201         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
202         sure this is always inlined.
203         (elf_machine_rela): Likewise.
204
205         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
206
207 2003-01-04  Roland McGrath  <roland@redhat.com>
208
209         * Makeconfig (+mkdep): Add -MP flag.
210         Suggested by Art Haas <ahaas@airmail.net>.
211
212 2003-01-05  Andreas Schwab  <schwab@suse.de>
213
214         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
215
216 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
217
218         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
219         SYSCALL_ERROR_HANDLER.
220         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
221         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
222         Add support for cancellation handling.
223         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
224         SYSCALL_ERROR_HANDLER.
225         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
226         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
227         Add support for cancellation handling.
228         (SYSCALL_ERROR_HANDLER): Define PIC variants.
229
230 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
231
232         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
233         __syscall_pread64 and __syscall_pwrite64 cancelable.
234         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
235         (INTERNAL_SYSCALL): New macro.
236         (LOADARGS_0, LOADARGS_1): Fix.
237
238 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
239
240         * Makerules (build-shlip-helper): Unless told otherwise, add
241         -Wl,-z,defs to linker command line.
242         * rt/Makefile (librt.so): Link with ld.so.
243         * dlfcn/Makefile (libdl.so): Likewise.
244
245 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
246
247         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
248         cancellation handling.
249         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
250         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
251
252 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
253
254         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
255         order of parameters passed to kill.
256
257 2003-01-04  Andreas Schwab  <schwab@suse.de>
258
259         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
260
261 2002-01-03  Paul Eggert  <eggert@twinsun.com>
262
263         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
264         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
265         when compiling Bison 1.875's `bitset bset = obstack_alloc
266         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
267
268 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
269
270         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
271         unnecessary code.
272         Correct reference counter in case SIGQUIT handler installation failed.
273
274 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
275
276         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
277         Define using _Pragma(weak ...).
278
279 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
280
281         * resolv/res_libc.c: Provide declaration for __res_init_weak and
282         reorder declarations.
283
284 2003-01-03  Art Haas  <ahaas@airmail.net>
285
286         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
287         initializer syntax to C99.
288         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
289         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
290         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
291         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
292         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
293         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
294         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
295         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
296         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
297         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
298         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
299         * localedata/tests-mbwc/dat_mblen.c: Likewise.
300         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
301         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
302         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
303         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
304         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
305         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
306         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
307         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
308         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
309         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
310         * localedata/tests-mbwc/dat_towlower.c: Likewise.
311         * localedata/tests-mbwc/dat_towupper.c: Likewise.
312         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
313         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
314         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
315         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
316         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
317         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
318         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
319         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
320         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
321         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
322         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
323         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
324         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
325         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
326         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
327         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
328         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
329         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
330         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
331         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
332         * localedata/tests-mbwc/dat_wctob.c: Likewise.
333         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
334         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
335         * localedata/tests-mbwc/dat_wctype.c: Likewise.
336         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
337
338 2003-01-03  Richard Henderson  <rth@redhat.com>
339
340         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
341         (inline_syscall_r0_constraint): New.
342         (inline_syscall[0-6]): Use them.
343
344 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
345
346         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
347         Add rtld_hidden_proto.
348         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
349         (_dl_allocate_tls): Likewise.  Remove INTDEF.
350
351 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
352
353         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
354         Morita <toshiyasu.morita@hsa.hitachi.com>.
355         * sysdeps/sh/memcpy.S: Likewise.
356
357 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
358
359         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
360         any, but unify the test.
361
362 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
363
364         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
365         sigaction): Protect weak_alias and libc_hidden_weak with
366         #ifndef LIBC_SIGACTION.
367         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
368         sigaction): Likewise.
369         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
370         sigaction): Likewise.
371         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
372         sigaction): Likewise.
373         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
374         sigaction): Likewise.
375         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
376         sigaction): Likewise.
377         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
378         sigaction): Likewise.
379         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
380         sigaction): Likewise.  Remove SIGCANCEL handling here.
381         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
382         Likewise.
383
384 2003-01-02  Art Haas  <ahaas@airmail.net>
385
386         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
387
388 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
389
390         * posix/getconf.c: Update copyright year.
391         * nss/getent.c: Likewise.
392         * nscd/nscd_nischeck.c: Likewise.
393         * iconv/iconvconfig.c: Likewise.
394         * iconv/iconv_prog.c: Likewise.
395         * elf/ldconfig.c: Likewise.
396         * catgets/gencat.c: Likewise.
397         * csu/version.c: Likewise.
398         * elf/ldd.bash.in: Likewise.
399         * elf/sprof.c (print_version): Likewise.
400         * locale/programs/locale.c: Likewise.
401         * locale/programs/localedef.c: Likewise.
402         * nscd/nscd.c (print_version): Likewise.
403         * debug/xtrace.sh: Likewise.
404         * malloc/memusage.sh: Likewise.
405         * malloc/mtrace.pl: Likewise.
406
407 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
408
409         * io/sys/stat.h: Include time.h with __need_timespec even if
410         __USE_MISC is defined but __USE_XOPEN is not.
411
412 2003-01-01  Andreas Jaeger  <aj@suse.de>
413
414         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
415         type to avoid strict aliasing problem.
416         (_nss_dns_gethostbyname2_r): Likewise.
417         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
418         (_nss_dns_getnetbyname_r): Likewise.
419         * resolv/gethnamaddr.c (_gethtent): Likewise.
420         (gethostbyname2): Likewise.
421
422 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
423
424         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
425         to avoid using the exported symbols.  Define aliases with the
426         original names separately.
427
428         * include/time.h: Add libc_hidden_proto for __strftime_l.
429         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
430         * time/strftime.c: Always use libc_hidden_def if _LIBC.
431
432         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
433         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
434
435         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
436         tr_break.
437
438         * csu/Makefile (routines): Add dso_handle.
439         * csu/dso_handle.c: New file.
440
441 2002-12-31  Roland McGrath  <roland@redhat.com>
442
443         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
444         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
445         (S-CPPFLAGS): Add -DASSEMBLER here instead.
446         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
447
448 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
449
450         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
451         is available.
452
453 2002-12-31  Andreas Jaeger  <aj@suse.de>
454
455         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
456         with Linux kernel.
457         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
458         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
459         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
460
461         * sysdeps/unix/sysv/linux/kernel_stat.h
462         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
463
464         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
465         __unused[1-3] since they're needed by some platforms.  Handle
466         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
467
468         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
469         for structs stat and stat64.
470         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
471         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
472         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
473         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
474
475         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
476
477         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
478         nsec resolution changes.
479         (xstat64_conv): Likewise.
480         (xstat32_conv): Likewise.
481
482         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
483         struct kernel_stat.
484
485         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
486         structs stat and stat64.
487
488         * time/time.h (__timespec_defined): Define for __USE_MISC.
489
490 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
491
492         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
493         and __libc_current_sigrtmax.
494
495 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
496
497         * include/errno.h (__errno_location): Add prototype.
498         Use libc_hidden_proto unconditionally.
499         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
500         unconditionally.
501         * include/resolv.h (__res_state): Likewise.
502
503         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
504         * include/sys/socket.h (accept): Add libc_hidden_proto.
505         * include/errno.h (__errno_location): Likewise.
506         * include/netdb.h (__h_errno_location): Likewise.
507         * include/resolv.h (__res_state): Likewise.
508         * include/unistd.h (__lseek): Likewise.
509         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
510         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
511         * sysdeps/generic/res-state.c (__res_state): Likewise.
512         * sysdeps/generic/accept.c (accept): Likewise.
513         * sysdeps/generic/lseek.c (__lseek): Likewise.
514         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
515         __libc_current_sigrtmax): Likewise.
516         * sysdeps/mach/hurd/accept.c (accept): Likewise.
517         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
518         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
519         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
520         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
521         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
522         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
523         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
524         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
525         alias to llseek.
526         (__GI_accept): New alias to accept.
527         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
528         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
529         New alias to llseek.
530         (__GI_accept): New alias to accept.
531         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
532         Likewise.
533         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
534         Likewise.
535         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
536
537         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
538         strong_alias (name, __GI_name).
539         * sysdeps/arm/bsd-_setjmp.S : Likewise.
540         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
541         * sysdeps/i386/bsd-_setjmp.S : Likewise.
542         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
543         * sysdeps/mips/bsd-_setjmp.S : Likewise.
544         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
545         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
546         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
547         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
548         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
549         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
550         * sysdeps/sh/bsd-_setjmp.S : Likewise.
551         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
552         * sysdeps/unix/arm/fork.S : Likewise.
553         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
554         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
555         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
556         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
557         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
558         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
559         * sysdeps/unix/i386/fork.S : Likewise.
560         * sysdeps/unix/mips/fork.S : Likewise.
561         * sysdeps/unix/sparc/fork.S : Likewise.
562         * sysdeps/unix/sparc/vfork.S : Likewise.
563         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
564         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
565         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
566         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
567         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
568         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
569         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
570         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
571         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
572         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
573         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
574         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
575         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
576         * sysdeps/unix/fork.S : Likewise.
577         * sysdeps/vax/bsd-_setjmp.S : Likewise.
578         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
579
580         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
581         inclusion.
582
583 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
584
585         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
586         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
587         * sysdeps/mach/hurd/fork.c: Likewise.
588         * sysdeps/unix/sysv/aix/fork.c: Likewise.
589         * sysdeps/unix/fork.S: Add __GI___fork alias.
590         * sysdeps/unix/arm/fork.S: Likewise.
591         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
592         * sysdeps/unix/i386/fork.S: Likewise.
593         * sysdeps/unix/mips/fork.S: Likewise.
594         * sysdeps/unix/sparc/fork.S: Likewise.
595         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
596         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
597         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
598         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
599         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
600         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
601         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
602         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
603         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
604         * sysdeps/unix/sparc/vfork.S: Likewise.
605         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
606         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
607         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
608         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
609         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
610         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
611         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
612         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
613
614         * include/time.h: Add libc_hidden_proto for __nanosleep.
615         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
616         * sysdeps/mach/nanosleep.c: Likewise.
617         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
618         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
619
620         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
621         _IO_list_unlock, and _IO_list_resetlock.
622         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
623         _IO_list_unlock, and _IO_list_resetlock.
624
625         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
626         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
627         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
628         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
629
630         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
631         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
632         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
633         __GI___longjmp alias.
634
635         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
636         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
637         * sysdeps/arm/bsd-_setjmp.S: Likewise.
638         * sysdeps/generic/bsd-_setjmp.c: Likewise.
639         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
640         * sysdeps/i386/bsd-_setjmp.S: Likewise.
641         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
642         * sysdeps/mips/bsd-_setjmp.S: Likewise.
643         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
644         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
645         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
646         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
647         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
648         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
649         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
650         * sysdeps/sh/bsd-_setjmp.S: Likewise.
651         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
652         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
653         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
654         * sysdeps/vax/bsd-_setjmp.S: Likewise.
655         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
656
657 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
658
659         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
660
661 2002-12-30  Roland McGrath  <roland@redhat.com>
662
663         * Rules (generated): Target removed.
664         * mach/Makefile (generated): Define it here instead.
665
666         * math/Makefile (generated): Add m_*l and m_*f variants too.
667
668 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
669
670         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
671         the to-be-deleted objects right away instead of later separately.
672         The latter fails because the scope data structures of the DSO
673         might already be gone.
674
675         * elf/Makefile: Add rules to build and run reldep8 test.
676         * elf/reldep8.c: New file.
677         * elf/reldep8mod1.c: New file.
678         * elf/reldep8mod2.c: New file.
679         * elf/reldep8mod3.c: New file.
680         Contributed by Jakub Jelinek.
681
682 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
683
684         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
685         checking of return value ENOSYS from getdents64.
686
687 2002-12-28  Andreas Schwab  <schwab@suse.de>
688
689         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
690         ($(common-objpfx)s-%.d): Generalized from
691         $(common-objpfx)s-proto.d rule.
692         (common-generated): Add s-proto-cancel.d.
693         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
694         cancellable syscalls.
695         * sysdeps/unix/s-proto-cancel.S: New file.
696
697 2002-12-29  Roland McGrath  <roland@redhat.com>
698
699         * resolv/res_libc.c: Move _res defn magic after res_init defn
700         so _res macro is in effect for that code.
701
702         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
703         pattern for prepending $(..) so it doesn't affect $(foo).
704
705         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
706
707 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
708
709         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
710         in hwcap.
711
712 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
713
714         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
715
716 2002-12-28  Andreas Jaeger  <aj@suse.de>
717
718         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
719         avoid warning.
720         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
721
722 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
723
724         * inet/herrno.c (__h_errno_location): Remove.
725         * inet/Makefile (routines): Add herrno-loc.
726         * resolv/res_libc.c (__res_state): Remove.
727         * resolv/Makefile (routines): Add res-state.
728         * sysdeps/generic/herrno-loc.c: New file.
729         * sysdeps/generic/res-state.c: New file.
730
731 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
732
733         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
734         Only define if USE_DL_SYSINFO is defined.
735
736 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
737
738         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
739         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
740         Define. Patch by Richard Henderson and Jes Sorensen.
741         (PSEUDO): Remove unnecessary ;;.
742         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
743         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
744         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
745         if not initializing thread pointer.
746         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
747         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
748         make it weak also if NONTLS_INIT_TP.
749         * sysdeps/unix/common/pause.c: Handle cancellation.
750         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
751         (LOADSYSCALL): Remove.
752         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
753         (SYSCALL_ERROR_HANDLER): Use it.
754         (PSEUDO): Don't jump around error handler.
755         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
756         jump around error handler.
757         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
758         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
759         to __syscall_error_handler on failure.
760         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
761         (LOADSYSCALL): Remove.
762         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
763         (SYSCALL_ERROR_HANDLER): Use it.
764         (PSEUDO): Don't jump around error handler.
765         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
766         jump around error handler.
767         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
768         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
769         to __syscall_error_handler on failure.
770
771 2002-12-27  Roland McGrath  <roland@redhat.com>
772
773         * scripts/gen-as-const.awk: New file.
774         * Makefile (distribute): Add it.
775         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
776         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
777         to the list.
778         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
779
780 2002-12-27  Andreas Schwab  <schwab@suse.de>
781
782         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
783
784 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
785
786         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
787         _environ is NULL.
788
789 2002-12-27  Andreas Schwab  <schwab@suse.de>
790
791         * Makerules ($(common-objpfx)%.make): Filter through
792         $(sed-remove-objpfx).
793
794 2002-12-23  Roland McGrath  <roland@redhat.com>
795
796         * scripts/abilist.awk: Produce a more compact format, divided into
797         stanzas for each version set, the set name listed only once.
798         * scripts/extract-abilist.awk: New file.
799         * scripts/merge-abilist.awk: New file.
800         * Makerules (check-abi-%, update-abi-%): New pattern rules.
801         (update-abi, check-abi): New targets.
802         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
803
804 2002-12-19  Roland McGrath  <roland@redhat.com>
805
806         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
807
808         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
809         INTERNAL_SYSCALL.
810
811 2002-12-21  Andreas Schwab  <schwab@suse.de>
812
813         * elf/check-textrel.c (handle_file): Swap p_type.
814
815 2002-12-21  Andreas Schwab  <schwab@suse.de>
816
817         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
818         (INLINE_SYSCALL): Use it.
819         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
820         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
821
822         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
823         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
824
825 2002-12-20  Art Haas  <ahaas@airmail.net>
826
827         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
828         syntax to C99.
829
830 2002-12-21  Philip Blundell  <philb@gnu.org>
831
832         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
833         top as seventh arg to __libc_start_main.
834         Reported by paulnash@wildseed.com.
835
836         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
837
838         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
839         compatibility cruft when new enough kernel is assumed.
840
841 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
842
843         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
844         instead of INLINE_SYSCALL.
845
846 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
847
848         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
849         typo.
850
851         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
852         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
853         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
854         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
855         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
856         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
857         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
858         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
859         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
860         Patch by William Lee Irwin <wli@holomorphy.com>.
861
862 2002-12-20  Andreas Schwab  <schwab@suse.de>
863
864         * locale/programs/ld-measurement.c (measurement_output): Fix
865         index calculation.
866
867 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
868
869         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
870         Redefine _IO_flockifle and _IO_funlockfile as inlines.
871
872         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
873         builds add "tls" in the search path.
874         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
875         (path_hwcap): Recognize "tls".
876
877 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
878
879         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
880         __waitpid instead of waitpid.
881
882         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
883         int $0x80.
884         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
885         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
886         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
887
888         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
889         information for system calls.
890
891         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
892         for ld.so.
893
894         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
895
896 2002-12-19  Roland McGrath  <roland@redhat.com>
897
898         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
899         * iconvdata/ibm922.h: Likewise.
900         * iconvdata/ibm930.h: Likewise.
901         * iconvdata/ibm932.h: Likewise.
902         * iconvdata/ibm933.h: Likewise.
903         * iconvdata/ibm935.h: Likewise.
904         * iconvdata/ibm937.h: Likewise.
905         * iconvdata/ibm939.h: Likewise.
906         * iconvdata/ibm943.h: Likewise.
907         * iconvdata/isiri-3342.h: Likewise.
908
909 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
910
911         * test-skeleton.c (main): Make sure correct value is seen as
912         argv[0] after adjustment of argv, and argc.
913
914         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
915         RTLD_CORRECT_DYNAMIC_WEAK is defined.
916
917 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
918
919         * nscd/connections.c (nscd_run): Shut up warning.
920         * tst-ungetc.c (assert): Undefined before redefining.
921
922 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
923
924         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
925         is used.
926
927 2002-12-17  Art Haas  <ahaas@airmail.net>
928
929         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
930         * iconvdata/cp775.h: Likewise.
931         * iconvdata/ibm1046.h: Likewise.
932         * iconvdata/ibm1124.h: Likewise.
933         * iconvdata/ibm1129.h: Likewise.
934         * iconvdata/ibm1132.h: Likewise.
935         * iconvdata/ibm1133.h: Likewise.
936         * iconvdata/ibm1160.h: Likewise.
937         * iconvdata/ibm1161.h: Likewise.
938         * iconvdata/ibm1162.h: Likewise.
939         * iconvdata/ibm1163.h: Likewise.
940         * iconvdata/ibm1164.h: Likewise.
941
942 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
943
944         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
945         __ASSUME_CLONE_THREAD_FLAGS is defined.
946         * sysdeps/unix/sysv/linux/kernel-features.h
947         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
948
949 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
950
951         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
952         of asm.
953         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
954
955         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
956         _dl_sysinfo.
957         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
958         code.
959         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
960         _rtld_global.
961         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
962         code.
963         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
964         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
965         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
966         Add _dl_sysinfo.
967
968 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
969
970         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
971         __libc_writev to...
972         [libc: GLIBC_PRIVATE]: ...here.
973         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
974         __libc_msgsnd to...
975         [libc: GLIBC_PRIVATE]: ...here.
976
977 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
978
979         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
980         Use it instead of directly int $0x80.
981         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
982         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
983         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
984         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
985         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
986         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
987
988 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
989
990         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
991
992         * elf/elf.h (AT_SYSINFO): New define.
993         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
994         AT_SYSINFO.
995
996 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
997
998         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
999         Make cancelable.
1000         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
1001         Likewise.
1002         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
1003         Likewise.
1004         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
1005         Likewise.
1006         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
1007         Likewise.
1008         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
1009
1010         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
1011         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
1012         available, otherwise __libc_maybe_call.
1013         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
1014         cancellation handling.
1015         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
1016
1017 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
1018
1019         * posix/regcomp.c (free_workarea_compile): Free the new member
1020         ORG_INDICES.
1021         (analyze): Initialize ORG_INDICES.
1022         (duplicate_node_closure): Search for a existing node, which is
1023         duplicated from the node ORG_DEST and satisfies the constraint
1024         CONSTRAINT.  And use it to avoid inifimite loop.
1025         (search_duplicated_node): New function.
1026         (duplicate_node): Store the index of the original node.
1027         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
1028         if needed.
1029         * posix/regex_internal.h (re_dfa_t): Add new members.
1030
1031 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
1032
1033         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
1034
1035 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1036
1037         * sysdeps/posix/system.c (do_system): Add support for installation
1038         of cancellation handlers.
1039         * sysdeps/unix/sysv/linux/i386/system.c: New file.
1040
1041         * stdlib/Makefile (tests): Add tst-system.
1042         * stdlib/tst-system.c: New file.
1043
1044         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
1045         CENABLE]: Don't lose content of %ebx.
1046
1047 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
1048
1049         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
1050         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
1051
1052 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1053
1054         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
1055         fails to return a function pointer don't use it.
1056
1057 2002-12-16  Art Haas  <ahaas@airmail.net>
1058
1059         * io/ftw.c: Convert GCC extension initializer syntax to C99.
1060         * iconvdata/iso-ir-165.c: Likewise.
1061         * iconvdata/jis0208.c: Likewise.
1062         * iconvdata/jis0212.c: Likewise.
1063
1064 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1065
1066         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
1067         epoll_ctl, and epoll_wait.
1068         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
1069         epoll_create, epoll_ctl, and epoll_wait.
1070         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
1071         Davide Libenzi <davidel@xmailserver.org>.
1072         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
1073         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
1074         Add sys/epoll.h.
1075
1076 2002-12-16  Art Haas  <ahaas@airmail.net>
1077
1078         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
1079         syntax to C99
1080         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
1081         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
1082         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
1083
1084 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
1085
1086         * stdio-common/Makefile (routines): Remove lockfile.  Add
1087         flockfile, ftrylockfile, and funlockfile.
1088         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
1089         * sysdeps/generic/flockfile.c: New file.
1090         * sysdeps/generic/ftrylockfile.c: New file.
1091         * sysdeps/generic/funlockfile.c: New file.
1092
1093 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
1094
1095         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
1096         macros instead of doing the calls directly.
1097         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
1098         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
1099         targets.
1100
1101 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
1102
1103         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
1104         * sysdeps/ieee754/bits/nan.h: Likewise.
1105
1106         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
1107         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
1108
1109 2002-12-16  Roland McGrath  <roland@redhat.com>
1110
1111         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
1112         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
1113         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
1114
1115         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
1116         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
1117         s_putpmsg.
1118         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
1119         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
1120         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
1121         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
1122         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
1123         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
1124         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
1125         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
1126
1127 2002-12-13  Paul Eggert  <eggert@twinsun.com>
1128
1129         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
1130         is now u_int, not int.
1131         (struct XDR.x_handy): Now u_int, not int.
1132         * sunrpc/xdr_mem.c: Include <limits.h>.
1133         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
1134         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
1135         x_handy is now unsigned, not signed.
1136         Do not decrement x_handy if no change is made.
1137         (xdrmem_setpos): Check for int overflow.
1138         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
1139         (xdr_sizeof): Remove cast that is now unnecessary, now that
1140         x_handy is unsigned.
1141
1142 2002-12-15  Art Haas  <ahaas@airmail.net>
1143
1144         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
1145         * iconvdata/gap.awk: Likewise.
1146         * iconvdata/gen-8bit-gap-1.sh: Likewise.
1147         * iconvdata/gen-8bit-gap.sh: Likewise.
1148         * locale/C-address.c: Likewise.
1149         * locale/C-collate.c: Likewise.
1150         * locale/C-ctype.c: Likewise.
1151         * locale/C-identification.c: Likewise.
1152         * locale/C-measurement.c: Likewise.
1153         * locale/C-messages.c: Likewise.
1154         * locale/C-monetary.c: Likewise.
1155         * locale/C-name.c: Likewise.
1156         * locale/C-numeric.c: Likewise.
1157         * locale/C-paper.c: Likewise.
1158         * locale/C-telephone.c: Likewise.
1159         * locale/C-time.c: Likewise.
1160         * nscd/connections.c: Likewise.
1161         * nscd/grpcache.c: Likewise.
1162         * nscd/hstcache.c: Likewise.
1163         * nscd/pwdcache.c: Likewise.
1164         * stdio-common/vfprintf.c: Likewise.
1165         * stdlib/random.c: Likewise.
1166         * sysdeps/generic/siglist.c: Likewise.
1167         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
1168         * sysdeps/ieee754/bits/nan.h: Likewise.
1169         * sysdeps/posix/sprofil.c: Likewise.
1170         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
1171         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
1172         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
1173
1174 2002-12-15  Roland McGrath  <roland@redhat.com>
1175
1176         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
1177
1178         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
1179         <tls.h> here, no need for it.
1180         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
1181
1182         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
1183         parameter, not varargs parameter.
1184
1185         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
1186         argument so it's not an unused variable.
1187
1188         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
1189         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
1190         for users.
1191
1192         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
1193
1194 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
1195
1196         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
1197         original __libc_fcntl code.  Just renamed.
1198
1199 2002-12-15  Andreas Schwab  <schwab@suse.de>
1200
1201         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
1202
1203 2002-12-14  Olaf Hering  <olh@suse.de>
1204
1205         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
1206         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
1207
1208 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
1209
1210         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
1211
1212         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
1213         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
1214
1215         * sysdeps/unix/sysv/linux/open64.c: New file.
1216
1217         * sysdeps/generic/pselect.c: Add support for cancellation handling.
1218         * sysdeps/posix/open64.c: Likewise.
1219         * sysdeps/posix/sigpause.c: Likewise.
1220         * sysdeps/posix/sigwait.c: Likewise.
1221         * sysdeps/posix/system.c: Likewise.
1222         * sysdeps/posix/waitid.c: Likewise.
1223         * sysdeps/unix/sysv/linux/accept.S: Likewise.
1224         * sysdeps/unix/sysv/linux/connect.S: Likewise.
1225         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
1226         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
1227         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
1228         * sysdeps/unix/sysv/linux/poll.c: Likewise.
1229         * sysdeps/unix/sysv/linux/pread.c: Likewise.
1230         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
1231         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
1232         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
1233         * sysdeps/unix/sysv/linux/readv.c: Likewise.
1234         * sysdeps/unix/sysv/linux/recv.S: Likewise.
1235         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
1236         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
1237         * sysdeps/unix/sysv/linux/send.S: Likewise.
1238         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
1239         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
1240         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
1241         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
1242         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
1243         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
1244         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
1245         * sysdeps/unix/sysv/linux/wait.c: Likewise.
1246         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
1247         * sysdeps/unix/sysv/linux/writev.c: Likewise.
1248         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
1249         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
1250
1251 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
1252
1253         * sysdeps/generic/sysdep-cancel.h: New file.
1254         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
1255         cancelable syscall.
1256         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
1257         recvmsg, send, sendmsg, sendto): Make cancelable.
1258         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
1259         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
1260         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
1261         sendto, osf_select): Likewise.
1262         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
1263         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
1264         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
1265         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
1266         sendto): Likewise.
1267         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
1268         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
1269         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
1270         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
1271         sendto): Likewise.
1272         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
1273         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
1274         sendto, select): Likewise.
1275         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
1276         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
1277         Likewise.
1278         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
1279         select, fcntl): Likewise.
1280         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
1281         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
1282         read, readv, select, sigsuspend, write, writev): Likewise.
1283
1284 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
1285
1286         * dirent/bug-readdir1.c: Include unistd.h.
1287
1288 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
1289
1290         * locale/programs/locale.c: Include locarchive.h.
1291         (ARCHIVE_NAME): Define.
1292         (write_archive_locales): New function.
1293         (write_locales): Use it.  Ensure the same locale is not printed
1294         multiple times in verbose mode.
1295         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
1296         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
1297         functions.
1298         (struct nameent): New type.
1299         (nameentcmp): New function.
1300
1301 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
1302
1303         * posix/regex_internal.c (re_string_context_at): Guard wide char
1304         code with #ifdef RE_ENABLE_I18N.
1305
1306 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
1307
1308         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
1309
1310 2002-12-13  Roland McGrath  <roland@redhat.com>
1311
1312         * posix/bug-regex15.c: New file.
1313         * posix/Makefile (tests): Add it.
1314
1315         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
1316         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
1317
1318 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
1319
1320         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
1321
1322         * misc/syslog.c (log_cleanup): Don't use parameter in
1323         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
1324         pass NULL instead of a pointer to syslog_lock.
1325
1326 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
1327
1328         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
1329         linker map for all iconv modules.
1330         (distribute): Add gconv.map.
1331         * iconvdata/gconv.map: New file.
1332
1333         * elf/Makefile: Also check all iconv modules for text relocations.
1334
1335         * stdlib/Makefile: Remove code to automatically import GMP.
1336
1337         * elf/Makefile (tests): Add rules to build and run check-textrel.
1338         * elf/check-textrel.c: New file.
1339
1340         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
1341         directive.
1342
1343 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
1344
1345         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
1346         not st.st[am]time.
1347
1348 2002-04-30  Bruno Haible  <bruno@clisp.org>
1349
1350         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
1351         the encoding if it already has slashes.
1352         Reported by Perry Rapp <prapp@erols.com>.
1353
1354 2002-12-11  Roland McGrath  <roland@redhat.com>
1355
1356         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
1357         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
1358         Turn off PIC for compiling this file.
1359
1360 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
1361
1362         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
1363         definitions.  Not needed.
1364         [_LIBC]: Use definitions from libc-lock.h instead of referencing
1365         pthread routines directly.
1366         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
1367         mutex_init calls.
1368         (arena_get2): Don't look at return value of mutex_lock.
1369
1370 2002-12-11  Roland McGrath  <roland@redhat.com>
1371
1372         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
1373         elf-init.o instead of compiling a PIC version.
1374
1375 2002-12-11  Bruno Haible  <bruno@clisp.org>
1376
1377         * intl/gettext.h: Renamed to ...
1378         * intl/gmo.h: ... here.
1379         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
1380         * intl/gettextP.h: Update.
1381         * intl/loadmsgcat.c: Update.
1382
1383         * intl/gettextP.h (PARAMS): Make more portable.
1384         (attribute_hidden): Define as empty macro if not already defined.
1385         * intl/hash-string.h (PARAMS): Make more portable.
1386         * intl/loadinfo.h (PARAMS): Likewise.
1387         * intl/plural-exp.h (PARAMS): Likewise.
1388         (attribute_hidden): Move definition near the definition of
1389         internal_function.
1390
1391         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
1392         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
1393
1394 2002-07-13  Bruno Haible  <bruno@clisp.org>
1395
1396         * intl/dcigettext.c (freea): New macro.
1397         (FREE_BLOCKS): Free also the registered blocks.
1398         (DCIGETTEXT): Free the 'search' variable.
1399         Reported by Andreas Fischer <a.fischer@asentics.de>.
1400
1401 2002-04-27  Bruno Haible  <bruno@clisp.org>
1402
1403         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
1404         * intl/dcigettext.c: Likewise.
1405         * intl/dcgettext.c: Likewise.
1406         * intl/dgettext.c: Likewise.
1407         * intl/gettext.c: Likewise.
1408         * intl/dcngettext.c: Likewise.
1409         * intl/dngettext.c: Likewise.
1410         * intl/ngettext.c: Likewise.
1411         * intl/textdomain.c: Likewise.
1412         * intl/bindtextdom.c: Likewise.
1413         * intl/plural-exp.h: Likewise.
1414
1415 2002-01-02  Bruno Haible  <bruno@clisp.org>
1416
1417         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
1418
1419 2001-04-30  Bruno Haible  <bruno@clisp.org>
1420
1421         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
1422         default macro definitions.  Needed for mingw32.
1423
1424 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
1425
1426         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
1427         __builtin_constant_p to macro parameter.
1428
1429         * sysdeps/generic/sigpause.c: Define all functions as weak.
1430         * sysdeps/posix/sigpause.c: Likewise.
1431
1432         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
1433         type size_t.
1434
1435 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
1436
1437         * elf/tst-array1.c (preinit_array, init_array, fini_array):
1438         Explicitly align the array to sizeof (void *).
1439         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
1440
1441         * include/libc-symbols.h: Fix a comment typo.
1442
1443         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
1444         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
1445         Likewise.
1446         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
1447         Likewise.
1448         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
1449         (__libc_sigsuspend): Likewise.
1450         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
1451         (__libc_sigsuspend): Likewise.
1452         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
1453         (creat): New weak alias.
1454
1455 2002-12-10  Roland McGrath  <roland@redhat.com>
1456
1457         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
1458         contributes a manual chapter.
1459         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
1460         around xref to it.
1461
1462         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
1463         and move contents to ...
1464         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
1465         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
1466         it instead of duplicating its contents.
1467         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
1468
1469 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
1470
1471         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
1472         defined.
1473         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
1474         function.
1475         (EXTRA_LD_ENVVARS): Use it.
1476         (DL_OSVERSION_INIT): Define.
1477         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
1478         dl-librecon.h.
1479         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
1480
1481 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
1482
1483         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
1484
1485         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
1486         call.  It is not allowed to destroy pthread mutexes which are
1487         still in use even though it is safe for our implementations.  If
1488         somebody still uses the descriptor it is a bug.
1489
1490 2002-12-09  Richard Henderson  <rth@redhat.com>
1491
1492         * csu/abi-note.S: Use .p2align, not .align.
1493
1494 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
1495
1496         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
1497         __libc_select aliases.
1498
1499         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
1500         alias.
1501
1502         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
1503
1504         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
1505
1506         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
1507
1508         * sysdeps/unix/syscalls.list: Define __libc_select alias.
1509
1510         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
1511
1512         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
1513         __libc___xpg_sigpause aliases.
1514
1515         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
1516
1517         * misc/error.c: Remove use of USE_IN_LIBIO.
1518
1519 2002-12-08  Roland McGrath  <roland@redhat.com>
1520
1521         * elf/Makefile (tests): Uncomment tst-array[123].
1522         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
1523         * csu/elf-init.c: New file.
1524         * csu/Makefile (routines, static-only-routines): Add elf-init.
1525         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
1526         and __libc_csu_fini in place of _fini.
1527         * sysdeps/arm/elf/start.S: Likewise.
1528         * sysdeps/cris/elf/start.S: Likewise.
1529         * sysdeps/hppa/elf/start.S: Likewise.
1530         * sysdeps/i386/elf/start.S: Likewise.
1531         * sysdeps/ia64/elf/start.S: Likewise.
1532         * sysdeps/m68k/elf/start.S: Likewise.
1533         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
1534         * sysdeps/mips/elf/start.S: Likewise.
1535         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
1536         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
1537         * sysdeps/s390/s390-32/elf/start.S: Likewise.
1538         * sysdeps/s390/s390-64/elf/start.S: Likewise.
1539         * sysdeps/sh/elf/start.S: Likewise.
1540         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
1541         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
1542         * sysdeps/x86_64/elf/start.S: Likewise.
1543
1544         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
1545         struct containing function ptr and value, free it.
1546         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
1547         It's not safe to let the new thread use the SIGEV pointer.
1548
1549 2001-10-20  Paul Eggert  <eggert@twinsun.com>
1550
1551         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
1552         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
1553         Use strerror_r that is only a macro, even if it is not a function.
1554         (strerror): Check for HAVE_DECL_STRERROR before declaring.
1555         (private_strerror): Use prototypes, not old-style function definition.
1556         (print_errno_message): New function.
1557         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
1558         char*-flavored one.
1559         (error_tail, error, error_at_line): Use it.
1560
1561 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
1562
1563         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
1564
1565 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
1566
1567         * scripts/output-format.sed: Fix bug in one of the s expressions
1568         which used / for one too many things.
1569
1570         * include/unistd.h: Declare __libc_close.
1571
1572 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
1573
1574         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
1575
1576 2002-12-07  Roland McGrath  <roland@redhat.com>
1577
1578         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
1579         from 2002-12-06, but remove unnecessary memset call without removing
1580         necessary copy of initialization image.
1581
1582         * Makerules ($(common-objpfx)format.lds): New target.
1583         (common-generated): Add it.
1584         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
1585         * scripts/output-format.sed: New file.
1586         * Makefile (distribute): Add it.
1587
1588 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
1589
1590         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
1591         Reported by Art Haas <ahaas@airmail.net>.
1592
1593 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
1594
1595         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
1596
1597 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
1598
1599         * string/test-strncpy.c (do_random_tests): Improve test coverage.
1600
1601 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
1602
1603         * test-skeleton.c (timeout_handler): Allow expected signal to be
1604         SIGALRM.
1605
1606         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
1607
1608         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
1609
1610 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
1611
1612         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
1613         (SYSCALL_ERROR_HANDLER): Fix a pasto.
1614         Reported by Jeff Bailey <jbailey@nisa.net>.
1615
1616 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
1617
1618         * sysdeps/generic/libc-tls.c: Undo last patch.
1619
1620         * include/wctype.h: Define iswalnum with libc_hidden_proto.
1621
1622         * include/signal.h: Define raise with libc_hidden_proto.
1623
1624         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
1625         __execve instead of snprintf and execve.
1626
1627         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
1628         again a bit.
1629
1630 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
1631
1632         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
1633         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
1634
1635 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
1636
1637         * misc/syslog.c (log_cleanup): New function.
1638         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
1639         (closelog): Likewise.
1640
1641         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
1642         * elf/dl-iteratephdr.c: Likewise.
1643         * elf/dl-lookup.c: Likewise.
1644         * elf/dl-misc.c: Likewise.
1645         * elf/dl-open.c: Likewise.
1646         * elf/dl-support.c: Likewise.
1647         * elf/rtld.c: Likewise.
1648         * sysdeps/generic/ldsodefs.h: Likewise.
1649         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
1650         * sysdeps/mach/bits/libc-lock.h: Likewise.
1651         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
1652
1653 2002-12-06  Roland McGrath  <roland@redhat.com>
1654
1655         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
1656
1657         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
1658         (malloc_starter, memalign_starter, free_starter): Don't define these.
1659         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
1660         Don't declare them either.
1661         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
1662         __pthread_initialize, so no need to set hooks to *_starter.
1663         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
1664         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
1665         (__libc_malloc_pthread_startup): New function.
1666         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
1667
1668         * malloc/hooks.c (memalign_starter): New function.
1669         * malloc/malloc.c: Declare it.
1670         * malloc/arena.c (save_memalign_hook): New variable.
1671         (ptmalloc_init): Set __memalign_hook to memalign_starter.
1672
1673         * elf/dl-minimal.c (free): Clear the memory.
1674         (calloc): Just call malloc, knowing all memory it returns is cleared.
1675
1676         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
1677         malloc and memset; calloc can avoid the zeroing when redundant.
1678         (_dl_tls_setup): Likewise.
1679         * elf/dl-load.c (decompose_rpath): Likewise.
1680         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
1681         call, since memory from sbrk at startup is already zero.
1682
1683         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
1684         error string for failure, null for success.  Update callers.
1685         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
1686         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
1687
1688 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
1689
1690         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
1691         args to i:iipi.
1692         (readahead): Change args to i:iii.
1693         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
1694         Change args to i:iii.
1695         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
1696         args to i:iiii.
1697
1698 2002-12-05  Roland McGrath  <roland@redhat.com>
1699
1700         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
1701         call all functions rather than none.
1702         Reported by Mark P. Mitchell <mark@codesourcery.com>.
1703
1704 2002-12-04  Roland McGrath  <roland@redhat.com>
1705
1706         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
1707         on _nl_current_LC_* variables.
1708
1709 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
1710
1711         * dirent/bug-readdir1.c (main): Don't call closedir, just close
1712         the file descriptor.  This is testing what the bug report was about.
1713
1714 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
1715
1716         * po/be.po: New file.
1717
1718         * argp/Makefile (tests): Add tst-argp1.
1719
1720         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
1721         Change type of _attribute to void*.
1722         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
1723         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
1724         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
1725         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
1726         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
1727
1728 2002-12-04  Roland McGrath  <roland@redhat.com>
1729
1730         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
1731         members to the end, so a libpthread compiled with !USE_TLS will still
1732         find other members properly.
1733
1734         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
1735         operand for DEST memory.  Fix dummy input operand to use SRC.
1736         Reported by Davin McCall <davmac@ozonline.com.au>.
1737
1738         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
1739         alignment when initializing the DTV entry.
1740
1741         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
1742         when TLS has not been set up, try to set it up if we can.
1743         * elf/tst-tls4.c: Revert last change.
1744         * elf/tst-tls5.c: Likewise.
1745         * elf/tst-tls6.c: Likewise.
1746         * elf/tst-tls7.c: Likewise.
1747         * elf/tst-tls8.c: Likewise.
1748         * elf/tst-tls9.c: Likewise.
1749
1750         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
1751         * sysdeps/generic/ldsodefs.h: Declare it.
1752         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
1753         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
1754         function, broken out of __libc_setup_tls.
1755         (init_static_tls): Likewise.
1756         (__libc_setup_tls): Call them.
1757         (_dl_tls_setup): New function, uses new subroutines.
1758
1759         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
1760         Clear the pointer when returning true.
1761         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
1762         first element of the slotinfo list too.
1763
1764         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
1765         [SHARED].
1766
1767         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
1768         (_dl_determine_tlsoffset): Likewise.
1769
1770         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
1771         startup_error_tsd, made global.
1772         (dl_main): Update initialization.
1773         * elf/dl-tsd.c: Likewise.
1774         * sysdeps/generic/ldsodefs.h: Declare it.
1775
1776 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
1777
1778         * manual/texinfo.tex: Update from latest upstream version.
1779
1780 2002-12-03  Roland McGrath  <roland@redhat.com>
1781
1782         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
1783         area surplus in calculation for sbrk call.
1784
1785         * iconvdata/cp1125.c: New file.
1786         * iconvdata/Makefile (distribute): Add it.
1787         (modules): Add CP1125.
1788         (gen-8bit-gap-modules): Add cp1125.
1789         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
1790         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
1791
1792 2002-12-03  Andreas Jaeger  <aj@suse.de>
1793
1794         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
1795
1796 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
1797
1798         * sysdeps/posix/system.c (do_system): Make signal handler
1799         installation thread safe.
1800
1801 2002-12-02  Roland McGrath  <roland@redhat.com>
1802
1803         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
1804         caller from EXTRA to -.
1805         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
1806         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
1807         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
1808
1809 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
1810
1811         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
1812         bits of RM are cleared.
1813
1814 2002-12-02  Roland McGrath  <roland@redhat.com>
1815
1816         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
1817         TLS setup is required.
1818         * elf/tst-tls5.c: Likewise.
1819         * elf/tst-tls6.c: Likewise.
1820         * elf/tst-tls7.c: Likewise.
1821         * elf/tst-tls8.c: Likewise.
1822         * elf/tst-tls9.c: Likewise.
1823
1824         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
1825         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
1826         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
1827         for being null before calling free_slotinfo.
1828         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
1829         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
1830
1831 2002-11-30  Bruno Haible  <bruno@clisp.org>
1832
1833         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
1834         (struct __gconv_step): New field __btowc_fct.
1835         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
1836         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
1837         __BUILTIN_TRANS.
1838         (__gconv_btwoc_ascii): New declaration.
1839         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
1840         (__gconv_btwoc_ascii): New function.
1841         * iconv/gconv_builtin.h: Add BtowcFct argument to all
1842         BUILTIN_TRANSFORMATION invocations.
1843         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
1844         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
1845         * iconv/gconv_builtin.c (map): New field btowc_fct.
1846         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
1847         btowc_fct field.
1848         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
1849         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
1850         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
1851         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
1852         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
1853         (gconv_init): Initialize __btowc_fct field.
1854         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
1855         * iconv/loop.c: Document ONEBYTE_BODY.
1856         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
1857         Undefine ONEBYTE_BODY at the end.
1858         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
1859         * iconvdata/8bit-gap.c (NONNUL): New macro.
1860         (BODY for FROM_LOOP): Use it.
1861         (ONEBYTE_BODY): New macro.
1862         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
1863         (NONNUL): New macro.
1864         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
1865         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
1866         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
1867         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
1868         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
1869         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
1870         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
1871         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
1872         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
1873         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
1874         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
1875         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
1876         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
1877         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
1878         * iconvdata/ibm932.c: Include <stdbool.h>.
1879         (TRUE, FALSE): Remove macros.
1880         (BODY for FROM_LOOP): Remove unused variable rp1.
1881         (ONEBYTE_BODY): New macro.
1882         (BODY for TO_LOOP): Use bool.
1883         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
1884         * iconvdata/ibm943.c: Include <stdbool.h>.
1885         (TRUE, FALSE): Remove macros.
1886         (BODY for FROM_LOOP): Remove unused variable rp1.
1887         (ONEBYTE_BODY): New macro.
1888         (BODY for TO_LOOP): Use bool.
1889         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
1890         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
1891         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
1892         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
1893         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
1894         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
1895         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
1896         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
1897         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
1898         * iconvdata/gbbig5.c: Tweak comment.
1899
1900 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
1901
1902         * po/fi.po: Update from translation team.
1903
1904 2002-12-01  Roland McGrath  <roland@redhat.com>
1905
1906         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
1907         testing getdents64 return value.
1908
1909         * scripts/versions.awk: Don't pass -n flag to sort command.
1910
1911         * posix/bug-regex13.c: Include <string.h>.
1912
1913         * sysdeps/generic/libc-start.c (__libc_start_main): Do
1914         DL_SYSDEP_OSCHECK here.
1915         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
1916         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
1917
1918         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
1919         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
1920
1921         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
1922         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
1923
1924         * include/link.h: Comment typo fix.
1925
1926 2002-12-01  Roland McGrath  <roland@frob.com>
1927
1928         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
1929         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
1930         _POSIX_MEMORY_PROTECTION): Likewise.
1931         (_POSIX_POLL, _POSIX_SELECT): Removed.
1932
1933 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
1934
1935         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
1936         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
1937
1938 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
1939
1940         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
1941         USE___THREAD.
1942         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
1943         "=v" constraints.
1944
1945 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
1946
1947         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
1948         branch prediction buffers by using unpaired call/ret.
1949
1950 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
1951
1952         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
1953         first parameters constraint string.
1954         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
1955
1956 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
1957
1958         * posix/regcomp.c (parse_expression): Set the bit since the back
1959         reference is used in the regular expression.
1960         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
1961         of malloc failure.
1962         (re_node_set_init_copy): Likewise.
1963         * posix/regex_internal.h (state_array_t): New structure.
1964         (re_sub_match_last_t): Likewise.
1965         (re_sub_match_top_t): Likewise.
1966         (re_match_context_t): Add new members.
1967         (re_dfa_t): Likewise.
1968         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
1969         to check the matching is really correct, and retry if failed.
1970         Move the routin pruning the impossible nodes from here, ...
1971         (prune_impossible_nodes): To this function.
1972         (check_matching): Invoke check_subexp_matching_top, and replace
1973         redundant checking with transit_state_bkref invocation.
1974         (proceed_next_node): Replace strncmp with memcmp.  Reported by
1975         Paolo Bonzini  <bonzini@gnu.org>.
1976         (update_cur_sifted_state): Remove search_subexp invocation.
1977         (search_subexp): Remove this function.
1978         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
1979         optimization.
1980         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
1981         Remove unused invocation of match_ctx_add_entry.
1982         (transit_state): Invoke check_subexp_matching_top.
1983         (check_subexp_matching_top): New function.
1984         (transit_state_bkref): Remove unused array.
1985         Merge transit_state_bkref_loop.
1986         (transit_state_bkref_loop): Use get_subexp instead of
1987         sift_states_backward.  Use search_cur_bkref_entry for optimization.
1988         Merge this function to transit_state_bkref.
1989         (get_subexp): New function.
1990         (get_subexp_sub): Likewise.
1991         (find_subexp_node): Likewise.
1992         (check_arrival): Likewise.
1993         (check_arrival_expand_ecl): Likewise.
1994         (check_arrival_expand_ecl_sub): Likewise.
1995         (expand_bkref_cache): Likewise.
1996         (match_ctx_init): Initialize new members.
1997         (match_ctx_clean): New function.
1998         (match_ctx_free): Release new members.
1999         (match_ctx_free_subtops): New function.
2000         (match_ctx_add_entry): Fix indent.
2001         (search_cur_bkref_entry): New function.
2002         (match_ctx_add_subtop): Likewise.
2003         (match_ctx_add_sublast): Likewise.
2004
2005 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
2006
2007         * iconv/Makefile (tests): Remove tst-iconv4.c
2008         * iconv/tst-iconv4.c: Moved to...
2009         * iconvdata/tst-iconv4.c: ...here.  New file.
2010         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
2011
2012 2002-11-25  Roland McGrath  <roland@redhat.com>
2013
2014         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
2015         Grok AF_LINK if defined.
2016         From Momchil Velikov <velco@fadata.bg>.
2017
2018         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
2019         brdaddr, or dstaddr, just set those pointers to null and don't fail.
2020         Reported by Momchil Velikov <velco@fadata.bg>.
2021
2022         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
2023         is > sizeof IFR->ifa_addr, advance past the whole longer length.
2024         (__ifreq): Count up NIFS that way too.
2025         Reported by Momchil Velikov <velco@fadata.bg>.
2026
2027         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
2028
2029         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
2030         and <fpu_control.h>.
2031
2032 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
2033
2034         * elf/elf.h (EM_ST19): Fix typo.
2035
2036 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
2037
2038         * include/errno.h (__set_errno): Define as errno = val
2039         unconditionally.
2040
2041 2002-11-24  Roland McGrath  <roland@redhat.com>
2042
2043         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
2044         * sysdeps/posix/writev.c: Likewise.
2045         From Momchil Velikov <velco@fadata.bg>.
2046
2047         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
2048         calling *GL(dl_error_catch_tsd) for a thread-local location.
2049         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
2050         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
2051         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
2052
2053         * libio/iofflush.c: Add libc_hidden_def.
2054         * libio/iofwrite.c: Likewise.
2055         * sysdeps/generic/sigtimedwait.c: Likewise.
2056         * sysdeps/generic/sigwaitinfo.c: Likewise.
2057         * sysdeps/posix/sigwait.c: Likewise.
2058         Reported by Momchil Velikov <velco@fadata.bg>.
2059
2060         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
2061         to match <arpa/inet.h> declaration.
2062         * inet/inet_netof.c (inet_netof): Likewise.
2063         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
2064         Reported by Momchil Velikov <velco@fadata.bg>.
2065
2066         * configure.in: Skip AUTOCONF check under --without-cvs.
2067         * configure: Regenerated.
2068
2069         * posix/Makefile (headers): Add bits/pthreadtypes.h.
2070         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
2071         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
2072
2073 2002-11-24  Andreas Schwab  <schwab@suse.de>
2074
2075         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
2076         with six arguments.
2077
2078 2002-11-19  Jim Meyering  <jim@meyering.net>
2079
2080         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
2081         as `static'.
2082         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
2083
2084 2002-11-23  Roland McGrath  <roland@redhat.com>
2085
2086         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
2087         Just produce hex output for datum sizes.
2088
2089         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
2090         Reported by Luca Barbieri <ldb@ldb.ods.org>.
2091
2092 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
2093
2094         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
2095         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
2096         and __unused3 fields.
2097         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
2098         [__WORDSIZE == 32]: Only PPC32 requires __unused1
2099         and __unused2 fields.
2100         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
2101         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
2102         __unused3, and __unused4 fields.
2103
2104         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
2105         obtain lowest address for profiling in __monstartup call.
2106
2107 2002-11-21  Roland McGrath  <roland@redhat.com>
2108
2109         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
2110         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
2111
2112         * locale/localeinfo.h (struct locale_data): Revert last change.
2113
2114         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
2115         From Ian Wienand <ianw@gelato.unsw.edu.au>.
2116
2117         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
2118         __NR_pread64 if not defined.
2119         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
2120         From Ian Wienand <ianw@gelato.unsw.edu.au>.
2121
2122 2002-11-21  Roland McGrath  <roland@frob.com>
2123
2124         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
2125         __libc_multiple_libcs here.  Call __setfpucw.
2126
2127 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
2128
2129         * elf/Makefile (tests): Don't run test-arrayX tests for now.
2130
2131         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
2132         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
2133         CLONE_CHILD_*TID flags.
2134
2135 2002-11-20  Andreas Jaeger  <aj@suse.de>
2136
2137         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
2138         We pass struct ucontext on x86-64.
2139         (GET_PC): Adjust.
2140         (GET_FRAME): Adjust.
2141         (GET_STACK): Adjust.
2142
2143 2002-11-20  Roland McGrath  <roland@redhat.com>
2144
2145         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
2146         conditionalize [! DO_VERSIONING] #error.
2147
2148         * scripts/abilist.awk: Grok function descriptor symbols.
2149
2150         * intl/tst-gettext.c (main): Check return values from setlocale.
2151         Add necessary unsetenv's to make LANG=existing-locale check work.
2152
2153         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
2154         so aborted prior runs don't confuse things.
2155
2156         * locale/localeinfo.h (struct locale_data: union locale_data_value):
2157         Use uintptr_t instead of unsigned int for `word' member.
2158         (_NL_CURRENT_WORD): Cast to uint32_t.
2159
2160         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
2161         value.
2162
2163 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
2164
2165         * elf/tls-macros.h: Add IA-64 definitions.
2166         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
2167
2168         * iconv/Makefile (tests): Add tst-iconv4.
2169         * iconv/tst-iconv4.c: New file.
2170
2171         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
2172         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
2173         __GCONV_INCOMPLETE_INPUT.
2174         (ucs4le_internal_loop): Likewise.
2175         (ucs4le_internal_loop_unaligned): Likewise.
2176         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
2177         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
2178         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
2179
2180         * iconv/loop.c (LOOPFCT): First test for empty input then for full
2181         output buffer.
2182
2183         * inet/getnameinfo.c: Use extend_alloca where appropriate.
2184         * sysdeps/posix/getaddrinfo.c: Likewise.
2185
2186         * include/alloca.h (extend_alloca): New define.  Based on stack
2187         direction it'll try to append to the previouls allocated buffer.
2188
2189 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
2190
2191         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
2192         use the same service for AF_INET and AF_INET6.
2193
2194 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
2195
2196         * intl/localealias.c (read_alias_file): Use only about 400 bytes
2197         of stack space instead of 16k.
2198
2199 2002-11-18  Wolfram Gloger  <wg@malloc.de>
2200
2201         * malloc/arena.c
2202         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
2203         nothing if not initialized.  Bug report from Marcus Brinkmann
2204         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
2205
2206 2002-11-19  Roland McGrath  <roland@redhat.com>
2207
2208         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
2209         sched_setaffinity.
2210
2211         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
2212         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
2213         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
2214         * configure: Regenerated.
2215
2216 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
2217
2218         * include/dlfcn.h: __libc_dlopen is now a macro calling
2219         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
2220         (__libc_dlopen_mode): New prototype.
2221         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
2222         new parameter.  Store new parameter in mode field of structure passed
2223         to do_dlopen.
2224         (struct do_dlopen_args): Add new field mode.
2225         (do_dlopen): Pass mode from parameter structure to _dl_open.
2226
2227 2002-11-11  Randolf Chung  <tausq@debian.org>
2228
2229         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
2230         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
2231         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
2232
2233         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
2234
2235         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
2236         Set -mdisable-fpregs for this file.
2237
2238 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
2239
2240         * sysdeps/unix/sysv/linux/configure.in:
2241         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
2242         from gcc-3.0 era for backwards compatibility.
2243         * sysdeps/unix/sysv/linux/configure: Regenerate.
2244
2245         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
2246         Define mcontext_t as a sigcontext.
2247
2248 2002-11-18  Roland McGrath  <roland@redhat.com>
2249
2250         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
2251         Free memory in `last_result' if it was used.
2252
2253         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
2254         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
2255         Do the parsing inline instead of copying strings and calling
2256         inet_network, and properly skip all alias names not matching the form.
2257
2258         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
2259
2260 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
2261
2262         * manual/pattern.texi (Wordexp Example): Fix sample code.
2263
2264         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
2265         childs stack which will be loaded into the %esi register.
2266
2267 2002-11-14  Paul Eggert  <eggert@twinsun.com>
2268
2269         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
2270         overflow when skipping the question part and when unpacking aliases.
2271
2272 2002-11-15  Roland McGrath  <roland@redhat.com>
2273
2274         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
2275         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
2276         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
2277
2278 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
2279
2280         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
2281         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
2282
2283 2002-11-15  Roland McGrath  <roland@redhat.com>
2284
2285         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
2286         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
2287         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
2288         (+make-include-of-dep): New canned sequence.
2289
2290         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
2291         From Dmitry V. Levin <ldv@altlinux.org>.
2292
2293 2002-11-14  Roland McGrath  <roland@redhat.com>
2294
2295         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
2296         * inet/herrno.c (__libc_h_errno): Likewise.
2297         * resolv/res_libc.c (__libc_res): Likewise.
2298         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
2299         (__res_state) [! USE___THREAD]: Don't define as weak.
2300         * csu/Versions: Revert last change.
2301         * resolv/Versions: Revert last change.
2302
2303         * Makerules ($(common-objpfx)%.make): New pattern rule.
2304         * tls.make.c: New file.
2305         * Makefile (distribute): Add it.
2306
2307         * sysdeps/generic/errno.c [! USE___THREAD]
2308         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
2309         with compat_symbol so they are not link-time visible.
2310         [! USE___THREAD] (__libc_errno): New alias for errno.
2311         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
2312         Add __libc_errno here.
2313         * inet/herrno.c [USE___THREAD]: Use this conditional
2314         in place of [USE_TLS && HAVE___THREAD].
2315         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
2316         (h_errno, _h_errno): Declare these with compat_symbol so they are not
2317         link-time visible.
2318         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
2319         * resolv/res_libc.c [! USE___THREAD]
2320         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
2321         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
2322         (__libc_res): Define as alias for _res.
2323         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
2324         Add __libc_h_errno and __libc_res here.
2325
2326 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
2327
2328         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
2329         * resolv/Versions (h_errno, _res): Likewise.
2330
2331 2002-11-14  Roland McGrath  <roland@redhat.com>
2332
2333         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
2334         (%.symlist): Likewise.
2335
2336 2002-11-13  Roland McGrath  <roland@redhat.com>
2337
2338         * scripts/abilist.awk: New file.
2339         * Makefile (distribute): Add it.
2340         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
2341         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
2342         [$(subdir) = elf] (tests): Depend on libc.symlist.
2343         (generated, common-generated): Add those files.
2344
2345         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
2346         * configure: Regenerated.
2347         * config.make.in (OBJDUMP): New variable, substituted by configure.
2348
2349         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
2350         (mallochook, reallochook): Set them up.
2351         (checkhdr): Check HDR->magic2 value.
2352         (freehook): Reset HDR->magic2.
2353         (memalignhook): New static function.
2354         (old_memalign_hook): New static variable.
2355         (mcheck, reallochook): Set __memalign_hook to memalignhook.
2356
2357         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
2358         for the new TCB.
2359
2360 2002-11-13  Andreas Jaeger  <aj@suse.de>
2361
2362         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
2363         attribute.
2364         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2365
2366 2002-11-11  Paul Eggert  <eggert@twinsun.com>
2367
2368         * manual/crypt.texi (Cryptographic Functions): Mention that
2369         the MD5 one-way algorithm is compatible with BSD's.
2370
2371 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
2372
2373         * posix/regex_internal.c (re_string_skip_chars): Also return the last
2374         wide character.
2375         (re_string_reconstruct): Calculate the context by itself when the
2376         offset points out of the valid range.
2377         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
2378         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
2379         (IS_WIDE_WORD_CHAR): New macro.
2380         (IS_WIDE_NEWLINE): New macro.
2381
2382 2002-11-12  Andreas Jaeger  <aj@suse.de>
2383
2384         * sysdeps/x86_64/strchr.S: Don't use one register for two
2385         purposes, this fixes a bug noticed by test-strchr.c.
2386
2387         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
2388         correctly.
2389
2390 2002-11-12  Roland McGrath  <roland@redhat.com>
2391
2392         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
2393         (_G_IO_NO_BACKWARD_COMPAT): Define it.
2394
2395         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
2396         instead of <pt-machine.h>.
2397         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
2398         testandset.
2399         From Ian Wienand <ianw@gelato.unsw.edu.au>.
2400
2401 2002-11-10  Roland McGrath  <roland@redhat.com>
2402
2403         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
2404         Call fputs instead of fwprintf (simpler to follow in debugger).
2405
2406         * crypt/md5-crypt.c: Doc fix.
2407
2408         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
2409         the beginning of generated target commands.
2410
2411         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
2412         dependencies for these in case implicit rule search skipped the
2413         nonexistent source directory.
2414         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
2415         files with $(object-suffixes) as targets too.
2416         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
2417         and a target for it using $(make-target-directory).
2418
2419         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
2420
2421 2002-11-10  Roland McGrath  <roland@frob.com>
2422
2423         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
2424         * sysdeps/generic/bits/pthreadtypes.h: ... here.
2425
2426         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
2427         l_start == 0 and l_len == 1 as we do l_len == 0.
2428
2429 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
2430
2431         * po/da.po: Update from translation team.
2432
2433 2002-11-10  Roland McGrath  <roland@redhat.com>
2434
2435         * config.make.in (includedir): New variable, substituted by configure.
2436         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
2437         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
2438
2439 2002-11-10  Andreas Jaeger  <aj@suse.de>
2440
2441         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
2442         REG_OLDMASK and REG_CR2 to synch with kernel header.
2443         (NGREG): Increase.
2444
2445         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
2446         aliasing problem.
2447         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
2448         * nss/getnssent_r.c (__nss_getent_r): Likewise.
2449         (__nss_setent): Likewise.
2450         (__nss_getent_r): Likewise.
2451         * inet/getnetgrent_r.c (innetgr): Likewise.
2452         (__internal_setnetgrent_reuse): Likewise.
2453         (internal_getnetgrent_r): Likewise.
2454         * inet/ether_hton.c (ether_hostton): Likewise.
2455         * inet/ether_ntoh.c (ether_ntohost): Likewise.
2456         * sunrpc/netname.c (netname2user): Likewise.
2457         * sunrpc/publickey.c (getpublickey): Likewise.
2458         (getsecretkey): Likewise.
2459
2460 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
2461
2462         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
2463         error in range calculation.
2464
2465 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
2466
2467         * string/test-strspn.c (do_test): Ensure zero termination.
2468         * string/test-strpbrk.c (do_test): Likewise.
2469         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
2470         * string/test-strncpy.c (stupid_strncpy): Likewise.
2471         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
2472
2473 2002-10-08  Roland McGrath  <roland@redhat.com>
2474
2475         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
2476         nonzero characters.
2477
2478 2002-09-22  H.J. Lu  <hjl@gnu.org>
2479
2480         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
2481         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
2482         only if __NR_mmap2 is defined.
2483
2484         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
2485         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
2486         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
2487         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
2488
2489 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
2490
2491         * posix/bug-regex13.c (tests): Add new test.
2492
2493         * string/test-strchr.c (stupid_strchr): New function.
2494         (do_random_tests): Make sure the string is zero terminated.
2495         * string/test-strpbrk.c (stupid_strpbrk): New function.
2496         (do_random_tests): Make sure the string is zero terminated.
2497         * string/test-strcmp.c (stupid_strcmp): New function.
2498         (do_random_tests): Make sure the strings are zero terminated.
2499         * string/test-strspn.c (stupid_strspn): New function.
2500         (simple_strspn): Rename rej argument to acc.
2501         (do_random_tests): Make sure the string is zero terminated.
2502         * string/test-strcspn.c (stupid_strcspn): New function.
2503         * string/test-strncpy.c (stupid_strncpy): New function.
2504         * string/test-stpncpy.c (stupid_stpncpy): New function.
2505         * string/test-strncmp.c (stupid_strncmp): New function.
2506         (do_random_tests): Make sure the strings are zero terminated.
2507         * string/test-string.h (impl_t): Change test into long.
2508         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
2509
2510 2002-11-08  Roland McGrath  <roland@redhat.com>
2511
2512         * sysdeps/ia64/elf/configure.in: Add TLS check.
2513         From Ian Wienand <ianw@cse.unsw.edu.au>.
2514         * sysdeps/ia64/elf/configure: Regenerated.
2515
2516 2002-11-07  Roland McGrath  <roland@redhat.com>
2517
2518         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
2519         place of _IO_new_do_write.
2520         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
2521         #undef before versioned_symbol use.
2522
2523 2002-11-07  Richard Henderson  <rth@redhat.com>
2524
2525         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
2526         * configure: Regenerated.
2527         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
2528         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
2529         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
2530         _dl_fini via gp-relative relocations.
2531         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
2532
2533         * elf/tls-macros.h: Add alpha versions.
2534         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
2535         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
2536         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
2537         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
2538         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
2539         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
2540         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
2541         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
2542         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
2543         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
2544         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
2545         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
2546         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
2547         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
2548         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
2549         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
2550         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
2551         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
2552
2553         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
2554         Kill argument registers across the inline syscall.
2555
2556         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
2557
2558         * linuxthreads/sysdeps/alpha/tls.h: New file.
2559         * sysdeps/alpha/dl-tls.h: New file.
2560
2561 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
2562
2563         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
2564         (gmon_initializer): New function.
2565         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
2566         __gmon_start__ here.  Call it from gmon_initializer() instead.
2567
2568 2002-03-12  H.J. Lu  <hjl@gnu.org>
2569
2570         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
2571         tst-array2, and tst-array3.
2572         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
2573         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
2574         ($(objpfx)tst-array1.out): New target.
2575         ($(objpfx)tst-array2): Likewise.
2576         ($(objpfx)tst-array2.out): Likewise.
2577         ($(objpfx)tst-array3.out): Likewise.
2578         * elf/tst-array1.c: New file.
2579         * elf/tst-array1.exp: Likewise.
2580         * elf/tst-array2.c: Likewise.
2581         * elf/tst-array2dep.c: Likewise.
2582         * elf/tst-array2.exp: Likewise.
2583         * elf/tst-array3.c: Likewise.
2584
2585 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
2586
2587         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
2588         Don't add L->l_addr to array entry values.
2589
2590 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
2591
2592         * string/test-string.h: New file.
2593         * string/test-strlen.c: New file.
2594         * string/test-string.h: New file.
2595         * string/test-strcmp.c: New file.
2596         * string/test-strchr.c: New file.
2597         * string/test-strrchr.c: New file.
2598         * string/test-strcpy.c: New file.
2599         * string/test-stpcpy.c: New file.
2600         * string/test-strncpy.c: New file.
2601         * string/test-stpncpy.c: New file.
2602         * string/test-strpbrk.c: New file.
2603         * string/test-strcspn.c: New file.
2604         * string/test-strspn.c: New file.
2605         * string/test-strcat.c: New file.
2606         * string/test-strncmp.c: New file.
2607         * string/test-memchr.c: New file.
2608         * string/test-memcmp.c: New file.
2609         * string/test-memset.c: New file.
2610         * string/test-memcpy.c: New file.
2611         * string/test-mempcpy.c: New file.
2612         * string/test-memmove.c: New file.
2613         * string/Makefile (strop-tests): New variable.
2614         (tests): Add strop-tests.
2615         (distribute): Add test-string.h.
2616
2617 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
2618
2619         * posix/regcomp.c: Use tabs instead of spaces.
2620         * posix/regexec.c: Likewise.
2621         * posix/regex_internal.h: Likewise.
2622
2623         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
2624
2625 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
2626
2627         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
2628         here.
2629         (regcomp): Don't set can_be_null here.
2630         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
2631         (re_compile_internal): Clear can_be_null, set regs_allocated.
2632
2633         * posix/regcomp.c (re_set_fastmap): New function.
2634         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
2635         COMPLEX_BRACKET check.
2636         * posix/regexec.c (re_search_internal): Optimize searching with
2637         fastmap.  Call re_string_reconstruct even if match_first is
2638         smaller than raw_mbs_idx.
2639
2640 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
2641
2642         * posix/regcomp (free_dfa_content): Use free_state.
2643         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
2644         pointers in case that realloc failed.
2645         (re_node_set_merge): Likewise.
2646         (register_state): Likewise.
2647         (create_newstate_common): Invoke memory release functions in case of
2648         error conditions.
2649         (create_ci_newstate): Likewise.
2650         (create_cd_newstate): Likewise.
2651         (free_state): New function.
2652         * posix/regexec.c (re_search_internal): Invoke memory release
2653         functions in case of error conditions.
2654         (sift_states_backward): Likewise.
2655         (merge_state_array): Likewise.
2656         (add_epsilon_src_nodes): Likewise.
2657         (sub_epsilon_src_nodes): Likewise.
2658         (search_subexp): Likewise.
2659         (sift_states_bkref): Likewise.
2660         (transit_state_sb): Likewise.
2661         (transit_state_mb): Likewise.
2662         (transit_state_bkref_loop): Likewise.
2663         (group_nodes_into_DFAstates): Likewise.
2664         (push_fail_stack): Don't edit pointers in case that realloc failed.
2665         (extend_buffers): Likewise.
2666         (match_ctx_add_entry): Likewise.
2667
2668 2002-11-06  Roland McGrath  <roland@redhat.com>
2669
2670         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
2671         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
2672
2673         * configure.in: Add checks on as and ld for binutils 2.13 or later.
2674         * configure: Regenerated.
2675
2676 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
2677
2678         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
2679         If re_compile_internal failed free fastmap buffer.
2680         (free_dfa_content): Broken out of regfree function.  Frees all dfa
2681         related data.
2682         (regfree): Add free_dfa_content.
2683         (re_compile_internal): If any of the called functions fails free
2684         all dfa related memory.
2685
2686 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
2687
2688         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
2689         warnings from the kernel headers.
2690
2691 2002-11-05  Roland McGrath  <roland@redhat.com>
2692
2693         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
2694         From Johannes Stezenbach <js@convergence.de>.
2695
2696         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
2697         #errlist-compat magic comment to give 123 as size.
2698         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
2699         (libc: GLIBC_2.2): ... here.
2700         (libc: GLIBC_2.3): Likewise.
2701
2702 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
2703
2704         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
2705         which happens at the beginning so that we can unload modules in
2706         __libc_freeres.
2707
2708 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2709
2710         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
2711         under [__USE_MISC || _ASM].
2712
2713         * elf/elf.h: Remove the obsolete SH TLS relocations.
2714
2715 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
2716
2717         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
2718
2719 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2720
2721         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
2722         __NR_pread64 and __NR_pwrite64.
2723         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
2724         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
2725         and __NR_pwrite64.
2726         Revert change to use INLINE_SYSCALL.
2727         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
2728         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
2729         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
2730         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
2731         INLINE_SYSCALL.
2732         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
2733
2734         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
2735         Update clobber list and add a comment about the syscall ABI.
2736
2737         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
2738         s_pwrite64, s_ftruncate, s_truncate): Re-add.
2739
2740 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
2741
2742         * iconv/gconv_dl.c (free_mem): Clear loaded.
2743         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
2744         cleanup if any.
2745
2746 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
2747
2748         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
2749
2750         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
2751         as old code without locking.  _IO_seekoff calls this function after
2752         locking the stream.
2753         * libio/ioseekpos.c: Likewise for _IO_seekpos.
2754         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
2755         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
2756         prototypes.
2757         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
2758         of _IO_seekoff_internal.
2759         (_IO_rewind): Likewise.
2760         * libio/ioftell.c: Likewise.
2761         * libio/ftello.c: Likewise.
2762         * libio/ftello64.c: Likewise.
2763         * libio/iofgetpos.c: Likewise.
2764         * libio/iofgetpos64.c: Likewise.
2765         * libio/oldiofgetpos.c: Likewise.
2766         * libio/oldiofgetpos64.c: Likewise.
2767         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
2768         _IO_seekpos_internal.
2769         * libio/iofsetpos64.c: Likewise.
2770         * libio/oldiofsetpos.c: Likewise.
2771         * libio/oldiofsetpos64.c: Likewise.
2772
2773 2002-11-04  Roland McGrath  <roland@redhat.com>
2774
2775         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
2776         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
2777         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
2778         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
2779         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
2780         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
2781         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
2782         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
2783         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
2784         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
2785         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
2786         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
2787         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
2788         Remove these, no longer used.
2789
2790 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2791
2792         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
2793         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
2794         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
2795         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
2796         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
2797         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
2798         syscall stubs.
2799
2800         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
2801         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
2802         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
2803         and __NR_pread.
2804         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
2805         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
2806         and __NR_pwrite.
2807         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
2808
2809 2002-11-03  Roland McGrath  <roland@redhat.com>
2810
2811         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
2812         `_dl_tls_static_used'.
2813         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
2814         (__libc_setup_tls): Initialize it.  Let the initial value of
2815         _dl_tls_static_size indicate some surplus space in the computed value.
2816         * elf/dl-open.c (_dl_tls_static_size): New variable.
2817         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
2818         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
2819         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
2820         (CHECK_STATIC_TLS): Use it.
2821         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
2822         closed objects occupied a trailing contiguous chunk of static TLS area.
2823
2824 2002-10-18  Bruno Haible  <bruno@clisp.org>
2825
2826         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
2827
2828 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
2829
2830         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
2831         _wide_data->_IO_read_end if adjustment can be made in the current
2832         buffer.
2833
2834         * sysdeps/unix/sysv/linux/fexecve.c: New file.
2835
2836         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
2837         wide oriented streams are used.
2838
2839         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
2840         service hasn't been used [PR libc/4744].
2841
2842         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
2843         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
2844
2845         * manual/examples/dir.c: Don't include <stddef.h>.
2846         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
2847         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
2848
2849 2002-11-02  H.J. Lu  <hjl@gnu.org>
2850
2851         * stdio-common/reg-printf.c: Include <stddef.h>.
2852
2853 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
2854
2855         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
2856
2857         * po/ca.po: Update from translation team.
2858         * po/es.po: Likewise.
2859
2860         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
2861         is defined write out memory map.
2862         * sysdeps/unix/sysv/linux/segfault.c: New file.
2863
2864 2002-11-02  Roland McGrath  <roland@redhat.com>
2865
2866         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
2867         pointers that can alias.
2868         Reported by Daniel Jacobowitz <drow@mvista.com>.
2869
2870         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
2871
2872 2002-11-02  Roland McGrath  <roland@redhat.com>
2873
2874         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
2875         description to be clearer and to say that *RESULT is set to ENTRY.
2876
2877 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
2878
2879         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
2880         dests_ch arrays together.  Alloca or malloc dest_states,
2881         dest_states_word and dest_states_nl arrays together.  Free memory on
2882         error exit.
2883
2884 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
2885
2886         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
2887         and current_saltbits.
2888
2889 2002-11-02  Roland McGrath  <roland@redhat.com>
2890
2891         * stdio-common/reg-printf.c: Include <stdlib.h>.
2892
2893 2002-11-02  H.J. Lu  <hjl@gnu.org>
2894
2895         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
2896         caller to EXTRA instead of execve.
2897
2898 2002-11-01  Roland McGrath  <roland@redhat.com>
2899
2900         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
2901         in place of [!(USE_TLS && HAVE___THREAD)].
2902         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
2903
2904 2002-10-31  Roger Sayle  <roger@eyesopen.com>
2905
2906         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
2907         New macros.
2908         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
2909
2910         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
2911         without defining FP_ROUNDMODE.
2912
2913 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
2914
2915         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
2916         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
2917         declare_symbol.
2918         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
2919         (OLD_SIGLIST_SIZE): Define.
2920         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
2921         (OLD_SIGLIST_SIZE): Define.
2922         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
2923
2924 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
2925
2926         * sysdeps/ia64/strncpy.S: Fix recovery code.
2927
2928 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
2929
2930         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
2931         New macros.
2932         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
2933         text_set_element.
2934         * elf/dl-libc.c (free_mem): Likewise.
2935         * iconv/gconv_conf.c (free_mem): Likewise.
2936         * iconv/gconv_db.c (free_mem): Likewise.
2937         * iconv/gconv_dl.c (free_mem): Likewise.
2938         * iconv/gconv_cache.c (free_mem): Likewise.
2939         * intl/finddomain.c (free_mem): Likewise.
2940         * intl/dcigettext.c (free_mem): Likewise.
2941         * locale/setlocale.c (free_mem): Likewise.
2942         * misc/fstab.c (fstab_free): Likewise.
2943         * nss/nsswitch.c (free_mem): Likewise.
2944         * posix/regcomp.c (free_mem): Likewise.
2945         * resolv/gai_misc.c (free_res): Likewise.
2946         * stdlib/fmtmsg.c (free_mem): Likewise.
2947         * sunrpc/clnt_perr.c (free_mem): Likewise.
2948         * sysdeps/generic/setenv.c (free_mem): Likewise.
2949         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
2950         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
2951         * time/tzset.c (free_mem): Likewise.
2952         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
2953         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
2954         * malloc/set-freeres.c (__libc_freeres): Likewise.
2955
2956         * login/getutent.c: Include stdlib.h instead of stddef.h.
2957         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
2958         (__getutent): Allocate buffer the first time it is run.
2959         * login/getutid.c: Include stdlib.h instead of stddef.h.
2960         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
2961         (__getutid): Allocate buffer the first time it is run.
2962         * login/getutline.c: Include stdlib.h instead of stddef.h.
2963         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
2964         (__getutline): Allocate buffer the first time it is run.
2965         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
2966         (mtrace): Allocate malloc_trace_buffer.
2967         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
2968         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
2969         * string/strerror.c: Include libintl.h and errno.h.
2970         (buf): New variable.
2971         (strerror): Only allocate buffer if actually needed (unknown error).
2972         * time/tzfile.c (transitions): Add libc_freeres_ptr.
2973         (freeres): Remove.
2974
2975 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
2976
2977         * include/libc-symbols.h (libc_freeres_ptr): New macro.
2978         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
2979         symbol_set_define.
2980         (__libc_freeres): Free all pointers in that section.
2981         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
2982         commands when creating .lds script.
2983         (LDSEDCMD-c.so): New variable.
2984         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
2985         (rcmd_af): Use strdup to allocate ahostbuf.
2986         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
2987         (rexec_af): Use strdup to allocate ahostbuf.
2988         * stdio-common/reg-printf.c (printf_funcs): Remove.
2989         (__printf_arginfo_table): Change into printf_arginfo_function **.
2990         Add libc_freeres_ptr.
2991         (__register_printf_function): Allocate __printf_arginfo_table
2992         and __printf_function_table the first time it is called.
2993         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
2994         printf_arginfo_function **.
2995         (parse_one_spec): Add __builtin_expect.
2996         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
2997         (free_mem): Remove.
2998         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
2999         (free_mem): Remove.
3000         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
3001         (string_space, map): Add libc_freeres_ptr.
3002         (free_mem): Remove.
3003         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
3004         (free_mem): Remove.
3005         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
3006         (free_mem): Remove.
3007         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
3008         (buffer): Add libc_freeres_ptr.
3009         (free_mem): Remove for _LIBC.
3010         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
3011         (free_mem): Remove.
3012         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
3013         (free_mem): Remove.
3014         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
3015         (free_mem): Remove.
3016         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
3017         (free_mem): Remove.
3018         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
3019         (free_mem): Remove.
3020         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
3021         (free_mem): Remove.
3022         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
3023         libc_freeres_ptr.
3024         (free_mem): Remove.
3025         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
3026         libc_freeres_ptr.
3027         (free_mem): Remove.
3028
3029 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3030
3031         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
3032         instead of duplicating the whole function in libc.
3033
3034 2002-10-31  Roland McGrath  <roland@redhat.com>
3035
3036         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
3037         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
3038
3039 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
3040
3041         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
3042         32bit-predefine when creating .new32 list and -U for each
3043         32bit-predefine when creating .new64 list.
3044         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
3045
3046 2002-10-29  Andreas Schwab  <schwab@suse.de>
3047
3048         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
3049         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
3050
3051 2002-10-25  Roland McGrath  <roland@redhat.com>
3052
3053         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
3054         * sysdeps/unix/sysv/linux/configure: Regenerated.
3055
3056         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
3057         _dl_starting_up decl.
3058
3059 2002-10-20  H.J. Lu  <hjl@gnu.org>
3060
3061         * sysdeps/unix/sysv/linux/configure.in: Don't check
3062         /lib/modules/`uname -r`/build/include for kernel headers if
3063         cross compiling.
3064         * sysdeps/unix/sysv/linux/configure: Regenerated.
3065
3066 2002-10-25  Roland McGrath  <roland@redhat.com>
3067
3068         * math/math.h (M_LOG2El): Correct the value.
3069         From Stephen L Moshier <steve@moshier.net>.
3070
3071         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
3072         conditional from __libc_multiple_libcs access.  Remove kludge for weak
3073         symbol access with old compilers we no longer support.
3074         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
3075         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
3076
3077 2002-10-25  Roland McGrath  <roland@redhat.com>
3078
3079         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
3080         implement SV_RESETHAND by translating it to SA_RESETHAND.
3081
3082 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
3083
3084         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
3085         type on ELF64 platforms.
3086
3087 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
3088
3089         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
3090
3091         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
3092
3093 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
3094
3095         * elf/dl-misc.c: Include <sysdep.h>.
3096         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
3097
3098         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
3099         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
3100         (INLINE_SYSCALL): Use that.
3101         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
3102         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
3103         (INLINE_SYSCALL): Use that.
3104         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
3105         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
3106         (INLINE_SYSCALL): Use that.
3107         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
3108         dl-sysdep.h.
3109         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
3110         (__INTERNAL_SYSCALL_STRING): Define.
3111         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
3112         dl-sysdep.h.
3113         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
3114         (__INTERNAL_SYSCALL_STRING): Define.
3115         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
3116         __SYSCALL_STRING to inline_syscall*.
3117         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
3118         New macros.
3119         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
3120         inline_syscall4, inline_syscall5, inline_syscall6): Add string
3121         argument.
3122
3123 2002-10-24  Roland McGrath  <roland@redhat.com>
3124
3125         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
3126         * sysdeps/unix/sysv/linux/init-first.c: Not here.
3127         * sysdeps/powerpc/elf/libc-start.c: Or here.
3128         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
3129         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
3130         * sysdeps/unix/sysv/aix/init-first.c: Or here.
3131         * sysdeps/generic/libc-start.c: Or here.
3132         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
3133         access with [! SHARED].
3134         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
3135
3136         * libio/bug-wfflush.c: New file.
3137         * libio/Makefile (tests): Add bug-wfflush.
3138
3139 2002-10-23  Roland McGrath  <roland@redhat.com>
3140
3141         * stdio-common/tst-fphex.c: New file.
3142         * stdio-common/Makefile (tests): Add tst-fphex.
3143         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
3144         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
3145         chars always before the value digits.
3146         Reported by James Antill <james.antill@redhat.com>.
3147
3148 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
3149
3150         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
3151         (free_mem): New function.
3152         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
3153         if not cross compiling.
3154         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
3155         (bug-regex14-ENV): Set.
3156         (bug-regex14-mem): New target.
3157         * posix/bug-regex14.c: New file.
3158
3159 2002-10-23  Roland McGrath  <roland@redhat.com>
3160
3161         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
3162         target, so we don't touch it when the link fails.
3163
3164         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
3165         Check for the result overflowing off_t and fail with EOVERFLOW.
3166         * libio/ioftell.c (_IO_ftell): Likewise.
3167         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
3168
3169         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
3170         use a temporary timeval on the stack for gettimeofday and copy it.
3171         * login/logout.c (logout): Likewise.
3172         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
3173
3174         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
3175         Use __SWORD_TYPE instead of int for member types.
3176         (struct statfs64): Likewise.
3177         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
3178         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
3179         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
3180         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
3181         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
3182
3183         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
3184         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
3185         (ST_NODIRATIME): Restore fixed value of 2048.
3186         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
3187         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
3188
3189         Rearranged <bits/types.h> definitions to reduce duplication.
3190         * sysdeps/generic/bits/types.h: Rewritten, using macros from
3191         <bits/wordsize.h> and new header <bits/typesizes.h>.
3192         * posix/Makefile (headers): Add bits/typesizes.h here.
3193         * sysdeps/generic/bits/typesizes.h: New file.
3194         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
3195         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
3196         * sysdeps/mach/hurd/bits/typesizes.h: New file.
3197         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
3198         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
3199         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
3200         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
3201         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
3202         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
3203         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
3204         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
3205         <bits/pthreadtypes.h> here, not in <bits/types.h>.
3206         * signal/signal.h: Likewise.
3207
3208         * streams/stropts.h: Include <bits/xtitypes.h>.
3209         * streams/Makefile (headers): Add bits/xtitypes.h here.
3210         * sysdeps/generic/bits/xtitypes.h: New file.
3211         * sysdeps/s390/bits/xtitypes.h: New file.
3212         * sysdeps/ia64/bits/xtitypes.h: New file.
3213         * sysdeps/x86_64/bits/xtitypes.h: New file.
3214
3215         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
3216         * sysdeps/generic/bits/ipctypes.h: New file.
3217         * sysdeps/mips/bits/ipctypes.h: New file.
3218         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
3219         * sysdeps/gnu/bits/msq.h: Likewise.
3220         * sysvipc/sys/ipc.h: Likewise.
3221
3222 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
3223
3224         * elf/dl-load.c (struct filebuf): For buf element to have the
3225         alignment of ElfXX_Ehdr since this is what will be stored in it.
3226
3227 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
3228
3229         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
3230         into pointer to locrec_offset.
3231         (add_locale_to_archive): Adjust callers.  Free normalized_name right
3232         before returning, not immediately after add_locale, pass it to
3233         add_alias if not NULL instead of name.  Rename second normalized_name
3234         occurence to nnormalized_codeset_name.
3235
3236         * locale/programs/locarchive.c (enlarge_archive): Make sure
3237         string_size is always a multiple of 4.
3238         Reported by Andreas Schwab <schwab@suse.de>.
3239
3240 2002-10-21  Andreas Schwab  <schwab@suse.de>
3241
3242         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
3243         caller to EXTRA instead of execve, since the latter has a
3244         higher-priority implementation in linuxthreads.
3245
3246 2002-10-21  Roland McGrath  <roland@redhat.com>
3247
3248         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
3249         slotinfo list's len member to the proper size, not just 1.
3250         Initialize static_map.l_tls_initimage.
3251
3252         * elf/dl-open.c (dl_open_worker): Fix loop searching for
3253         dtv_slotinfo_list element containing new modules' l_tls_modid.
3254
3255         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
3256         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
3257         * elf/Makefile (tests): Add tst-tls9.
3258         (tests-static): Add tst-tls9-static.
3259         (tst-tls9-static-ENV): New variable.
3260         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
3261
3262         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
3263         modids used by partially loaded modules being closed can't be known.
3264
3265 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
3266
3267         * posix/Makefile: Add a test case for the bug reported by Aharon
3268         Robbins <arnold@skeeve.com>.
3269         * posix/bug-regex13.c: New file.
3270         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
3271
3272 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
3273
3274         * csu/gmon-start.c: Pretty printing.
3275
3276 2002-10-19  Art Haas  <ahaas@neosoft.com>
3277
3278         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
3279         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
3280         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
3281         * configure: Regenerated.
3282
3283 2002-10-19  Roland McGrath  <roland@redhat.com>
3284
3285         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
3286         and then set $subdirs directly, because the new Autoconf breaks
3287         compatibility in every way imaginable and insists on whining
3288         about usage that worked since the dawn of time.
3289         * configure: Regenerated.
3290
3291         * configure: Regenerated (using Autoconf 2.54).
3292         * sysdeps/alpha/elf/configure: Likewise.
3293         * sysdeps/generic/configure: Likewise.
3294         * sysdeps/i386/elf/configure: Likewise.
3295         * sysdeps/ia64/elf/configure: Likewise.
3296         * sysdeps/mach/hurd/configure: Likewise.
3297         * sysdeps/mach/configure: Likewise.
3298         * sysdeps/unix/configure: Likewise.
3299         * sysdeps/unix/common/configure: Likewise.
3300         * sysdeps/unix/sysv/aix/configure: Likewise.
3301         * sysdeps/unix/sysv/linux/configure: Likewise.
3302         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
3303         * sysdeps/x86_64/elf/configure: Likewise.
3304
3305         * config.make.in: Nix completely-soft nonsense.
3306         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
3307         of machine directories instead of fpu subdirectory.
3308         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
3309         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
3310         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
3311         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
3312         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
3313         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
3314         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
3315         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
3316         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
3317         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
3318         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
3319         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
3320         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
3321         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
3322         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
3323         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
3324         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
3325         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
3326         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
3327         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
3328         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
3329         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
3330         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
3331         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
3332         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
3333         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
3334         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
3335         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
3336         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
3337         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
3338         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
3339         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
3340         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
3341         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
3342         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
3343         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
3344         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
3345         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
3346         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
3347         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
3348
3349 2002-10-19  Bruno Haible  <bruno@clisp.org>
3350
3351         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
3352
3353 2002-10-18  Roland McGrath  <roland@redhat.com>
3354
3355         * io/Makefile (routines): Add lchmod.
3356         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
3357         * sysdeps/generic/lchmod.c: New file.
3358         * sysdeps/mach/hurd/lchmod.c: New file.
3359         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
3360
3361 2002-10-18  Art Haas  <ahaas@neosoft.com>
3362
3363         * configure.in: Remove remaining AC_FD_CC macros, and replace
3364         AC_FD_MSG with AS_MESSAGE_FD.
3365
3366 2002-10-18  Roland McGrath  <roland@redhat.com>
3367
3368         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
3369         typos: VALUE -> FINALADDR.
3370
3371         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
3372         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
3373         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
3374         (inline_syscall6): Move these macros ...
3375         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
3376
3377         * configure.in (libc_link_dests, libc_link_sources): Remove these
3378         variables and the AC_LINK_FILES call.
3379
3380         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
3381         change to put new symbols here instead of in GLIBC_2.2.
3382         * sysdeps/powerpc/Subdirs: Move this file ...
3383         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
3384
3385 2002-10-07  Roland McGrath  <roland@redhat.com>
3386
3387         * sysdeps/generic/bits/time.h: Replaced with contents of the
3388         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
3389         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
3390         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
3391         macros is ok even for architectures that don't now implement them.
3392         * sysdeps/mach/hurd/bits/time.h: File removed.
3393         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
3394         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
3395         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
3396         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
3397         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
3398
3399 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
3400
3401         * configure.in: Replace obsolete AC_OUTPUT syntax with
3402         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
3403
3404         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
3405         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
3406
3407         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
3408         * sysdeps/alpha/elf/configure.in: Likewise.
3409         * sysdeps/i386/elf/configure.in: Likewise.
3410         * sysdeps/mach/hurd/configure.in: Likewise.
3411         * sysdeps/x86_64/elf/configure.in: Likewise.
3412
3413         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
3414
3415         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
3416         * sysdeps/generic/configure.in: Likewise.
3417         * sysdeps/i386/elf/configure.in: Likewise.
3418         * sysdeps/ia64/elf/configure.in: Likewise.
3419         * sysdeps/mach/configure.in: Likewise.
3420         * sysdeps/mach/hurd/configure.in: Likewise.
3421         * sysdeps/unix/configure.in: Likewise.
3422         * sysdeps/unix/common/configure.in: Likewise.
3423         * sysdeps/unix/sysv/aix/configure.in: Likewise.
3424         * sysdeps/unix/sysv/linux/configure.in: Likewise.
3425         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
3426         * sysdeps/x86_64/elf/configure.in: Likewise.
3427
3428         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
3429         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
3430         that it's obvious when extra autoconf machinery is being dragged in.
3431
3432 2002-10-18  Roland McGrath  <roland@redhat.com>
3433
3434         * configure.in: Remove bogus echo included in
3435         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
3436         * configure: Regenerated.
3437
3438 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
3439
3440         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
3441         (statfs_filesize_max): New function.
3442         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
3443         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
3444         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
3445         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
3446         statfs_filesize_max.
3447         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
3448         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
3449         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
3450
3451 2002-10-17  Roland McGrath  <roland@redhat.com>
3452
3453         * configure.in (MIG): Just AC_SUBST it here.
3454         * configure: Regenerated.
3455         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
3456         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
3457         * sysdeps/mach/configure: Regenerated.
3458
3459         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
3460         and AC_PROVIDE([_AS_CR_PREPARE]).
3461
3462         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
3463         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
3464
3465         * elf/dl-support.c: Move _dl_tls_* variables to ...
3466         * sysdeps/generic/libc-tls.c: ... here.
3467
3468         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
3469         allow IDX to be one past the current last slotinfo entry.
3470         (_dl_close): Pass IMAP->l_init_called for that parameter.
3471
3472 2002-10-07  Andreas Schwab  <schwab@suse.de>
3473
3474         * aclocal.m4: Fix for autoconf 2.53.
3475         * configure.in: Likewise.  Require autoconf 2.53.
3476
3477 2002-10-08  Richard Henderson  <rth@redhat.com>
3478
3479         * soft-fp/op-4.h: Handle carry correctly in
3480         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
3481         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
3482         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
3483
3484 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
3485
3486         * configure.in: Compute completely-soft.
3487         * config.make.in: Make completely-soft available to sub-makes.
3488         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
3489         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
3490         fe_nomask to libm-support.
3491         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
3492         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
3493         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
3494         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
3495         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
3496         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
3497         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
3498         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
3499         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
3500         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
3501         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
3502         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
3503         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
3504         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
3505         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
3506         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
3507         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
3508         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
3509         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
3510         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
3511         __sim_round_mode.
3512         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
3513         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
3514         FP_HANDLE_EXCEPTIONS.
3515         Define FP_ROUNDMODE.
3516         Redefine FP_* macros to correspond to the FE_* bit positions.
3517         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
3518         Define externs for __sim_exceptions, __sim_disabled_exceptions,
3519         __sim_round_mode, __simulate_exceptions.
3520         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
3521         * sysdeps/powerpc/bits/fenv.h: ...to here.
3522
3523 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
3524
3525         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
3526         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
3527         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
3528         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
3529         __builtin_expect.
3530
3531 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
3532
3533         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
3534         __libc_res_nsend): New prototypes.
3535         * resolv/res_query.c (QUERYSIZE): Define.
3536         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
3537         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
3538         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
3539         res_nsend, pass answerp.
3540         (res_nquery): Changed into wrapper around __libc_res_nquery.
3541         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
3542         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
3543         instead of the non-__libc_ variants, pass them answerp.
3544         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
3545         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
3546         Added answerp argument.  Call __libc_res_nquery instead of
3547         res_nquery, pass answerp.
3548         (res_nquerydomain): Changed into wrapper around
3549         __libc_res_nquerydomain.
3550         * resolv/res_send.c: Include sys/ioctl.h.
3551         (MAXPACKET): Define.
3552         (send_vc): Change arguments.  Reallocate answer buffer if it is
3553         too small.
3554         (send_dg): Likewise.
3555         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
3556         Reallocate answer buffer if it is too small and hooks are in use.
3557         Adjust calls to send_vc and send_dg.
3558         (res_nsend): Changed into wrapper around __libc_res_nsend.
3559         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
3560         just 1K answer buffer on the stack, use __libc_res_nsearch instead
3561         of res_nsearch.
3562         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
3563         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
3564         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
3565         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
3566         (gethostbyaddr): Similarly with __libc_res_nquery.
3567         * resolv/Versions (libresolv): Export __libc_res_nquery and
3568         __libc_res_nsearch at GLIBC_PRIVATE.
3569
3570 2002-10-17  Roland McGrath  <roland@redhat.com>
3571
3572         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
3573         * configure: Regenerated.
3574
3575         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
3576         before performing the reloc, not after.
3577         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
3578
3579 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
3580
3581         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
3582         * locale/programs/linereader.c (lr_open): Likewise.
3583         * locale/programs/charmap-dir.c (charmap_open): Likewise.
3584         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
3585
3586 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
3587
3588         * posix/bug-regex11.c: Add a test case for the bug reported by
3589         Paolo Bonzini <bonzini@gnu.org>.
3590         * posix/regexec.c (sift_states_bkref): Use correct destination of
3591         the back reference.
3592
3593 2002-10-17  Roland McGrath  <roland@redhat.com>
3594
3595         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
3596         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
3597         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
3598         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
3599         Call it after performing TPOFF relocs.
3600         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
3601         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
3602         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
3603
3604         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
3605         when closing a partially-initialized object.
3606
3607         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
3608         instead of _dl_fatal_printf when we see PT_TLS.
3609
3610         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
3611         instead of $(libof-$<).
3612
3613 2002-10-16  Roland McGrath  <roland@redhat.com>
3614
3615         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
3616         instead of += to append, to be sure $(lib) gets expanded at defn time.
3617         (libof-$(cpp-src)): New variable, define this instead.
3618         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
3619         (lib): Don't use override.
3620         (CPPFLAGS-$(lib)): New variable, put -D's here.
3621         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
3622         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
3623         LIB found by $(libof-*) for basename, target, or source.
3624         * Makerules (CPPFLAGS-nonlib): New variable.
3625         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
3626         * locale/Makefile (lib): Likewise.
3627         * sunrpc/Makefile (lib): Likewise.
3628
3629         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
3630         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
3631         * sysdeps/unix/sysv/linux/pathconf.h: New file.
3632         (statfs_link_max): New function, guts from fpathconf.c.
3633         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
3634         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
3635         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
3636         to use the linux/pathconf.c code by #include rather than duplication.
3637         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
3638
3639 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
3640
3641         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
3642         Use __libc_errno only for libc itself.
3643
3644 2002-10-16  Andreas Jaeger  <aj@suse.de>
3645
3646         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
3647
3648 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
3649
3650         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
3651         Use __libc_errno only for libc itself.
3652
3653 2002-10-15  Roland McGrath  <roland@redhat.com>
3654             Jakub Jelinek  <jakub@redhat.com>
3655
3656         * sysdeps/unix/sysv/linux/Makefile
3657         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
3658         sparc/Makefile to produce a bi-arch file as needed.
3659         That's now parameterized by the variable $(64bit-predefine).
3660         Use LC_ALL=C for `comm' commands in that rule.
3661         No longer conditional on [$(no_syscall_list_h)].
3662         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
3663         (64bit-predefine): New variable.
3664         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
3665         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
3666         * sysdeps/unix/sysv/linux/powerpc/Makefile
3667         (64bit-predefine): New variable.
3668
3669 2002-10-15  Roland McGrath  <roland@redhat.com>
3670
3671         * sysdeps/unix/sysv/linux/Makefile
3672         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
3673
3674         * login/utmp-private.h: Declare __libc_utmp_lock.
3675         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
3676         and call __libc_utmp_jump_table functions directly, instead of using
3677         __setutent et al.
3678
3679         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
3680         * sysdeps/unix/sysv/linux/configure: Regenerated.
3681
3682         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
3683         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
3684         Use int32_t for ll_time.
3685         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
3686         Use int32_t instead of long int for ut_session.
3687         Use an anonymous struct with 32-bit fields for ut_tv.
3688         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
3689         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
3690         here as in utmp.h for `struct utmp'.
3691         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
3692         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
3693         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
3694         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
3695         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
3696         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
3697
3698         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
3699         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
3700         All the following files were identical or equivalent to it.
3701         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
3702         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
3703         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
3704         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
3705         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
3706         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
3707         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
3708         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
3709         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
3710         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
3711
3712         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
3713         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
3714         Other than the previously incorrect sign of msg_iovlen, this is a
3715         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
3716         match their layouts as well, so the following are now identical to it.
3717         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
3718         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
3719         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
3720         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
3721         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
3722
3723 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
3724
3725         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
3726         Define for 2.4+ kernels.
3727
3728         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
3729         are known to have the vfork syscall.  Don't confuse the CPUs
3730         branch prediction unit by jumping to the return address.
3731
3732         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
3733         support for reiserfs and xfs.
3734
3735         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
3736         XFS link count.
3737         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
3738         and XFS_LINK_MAX.
3739         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
3740
3741 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
3742
3743         * include/libc-symbols.h (attribute_tls_model_ie): Define.
3744         * include/errno.h (errno): Define to __libc_errno in libc.so.
3745         Add attribute_tls_model_ie.
3746         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
3747         Add attribute_tls_model_ie.
3748         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
3749         attribute_tls_model_ie.
3750         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
3751         (h_errno): Define.
3752         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
3753         (_res): Define.
3754         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
3755         attribute_tls_model_ie.
3756         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
3757         __thread.
3758         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
3759         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
3760         __libc_errno in USE___THREAD case.
3761         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
3762         Likewise.
3763         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
3764         __attribute__((tls_model (""))).
3765         * configure: Rebuilt.
3766         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
3767
3768 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
3769
3770         * timezone/asia: Update from tzdata2002d.
3771         * timezone/australasia: Likewise.
3772         * timezone/iso3166.tab: Likewise.
3773         * timezone/southamerica: Likewise.
3774         * timezone/zone-tab: Likewise.
3775
3776 2002-10-15  Roland McGrath  <roland@redhat.com>
3777
3778         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
3779         Adjust TCB pointer before calling free, so we get the whole block.
3780
3781 2002-10-14  Roland McGrath  <roland@redhat.com>
3782
3783         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
3784         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
3785         extern using attribute_hidden instead of static, avoids warning.
3786
3787 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
3788
3789         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
3790         * sysdeps/unix/sysv/linux/configure: Rebuilt.
3791
3792 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
3793
3794         * po/sv.po: Update from translation team.
3795
3796 2002-10-12  H.J. Lu  <hjl@gnu.org>
3797
3798         * sunrpc/thrsvc.c (PROCQUIT): New.
3799         (struct rpc_arg): New.
3800         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
3801         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
3802         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
3803         (main): Modified for struct rpc_arg *.
3804
3805 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
3806
3807         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
3808
3809 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
3810
3811         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
3812         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
3813         in ld.so even if __thread is supported.
3814
3815 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
3816
3817         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
3818         Add hack to prevent the compiler from clobbering the signal context.
3819         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
3820         Likewise.
3821         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
3822         Likewise.
3823
3824 2002-10-14  Andreas Jaeger  <aj@suse.de>
3825
3826         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
3827         Guido Guenther <agx@sigxcpu.org>.
3828
3829 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
3830
3831         * po/sk.po: Update from translation team.
3832
3833 2002-09-26  Roland McGrath  <roland@redhat.com>
3834
3835         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
3836         dynamic string tag.
3837         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
3838         DL_DST_LIB based on $(slibdir).
3839
3840 2002-10-13  Roland McGrath  <roland@frob.com>
3841
3842         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
3843
3844         * sysdeps/mach/hurd/getresuid.c: New file.
3845         * sysdeps/mach/hurd/getresgid.c: New file.
3846         * sysdeps/mach/hurd/setresuid.c: New file.
3847         * sysdeps/mach/hurd/setresgid.c: New file.
3848
3849         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
3850         setresgid): Declare them.
3851         * NEWS: Mention it.
3852         * include/unistd.h
3853         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
3854         add libc_hidden_proto.
3855         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
3856         getresuid, getresgid, setresuid, setresgid here.
3857         * Versions.def (libc): Define GLIBC_2.3.2 set.
3858         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
3859         Add libc_hidden_def.
3860         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
3861         * sysdeps/generic/setresgid.c: New file.
3862         * sysdeps/generic/setresuid.c: New file.
3863         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
3864         (sysdep_routines): Don't add getresuid and getresgid here.
3865         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
3866         (sysdep_routines): Don't add setresuid and setresgid here.
3867         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
3868         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
3869         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
3870         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
3871         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
3872         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
3873         * posix/Makefile (routines): Add them all here instead.
3874         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
3875         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
3876         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
3877         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
3878         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
3879         [! __NR_setresuid]: Include generic file.
3880         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
3881         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
3882         [! __NR_setresuid]: Include generic file.
3883         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
3884         Caller is - now, not EXTRA.
3885         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
3886         (setresuid, setresgid, getresuid, getresgid): Likewise.
3887         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
3888         Add these calls here.
3889         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
3890         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
3891         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
3892         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
3893         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
3894         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
3895         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
3896         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
3897         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
3898
3899         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
3900         (sysdep_routines): Add setfsuid and setfsgid here.
3901         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
3902         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
3903         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
3904         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
3905         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
3906         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
3907         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
3908         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
3909
3910         * hurd/errno.c: Renamed to ...
3911         * hurd/errno-loc.c: ... this.
3912         * hurd/Makefile (routines): errno -> errno-loc
3913
3914 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
3915
3916         * po/de.po: Update from translation team.
3917
3918         * MakeTAGS: Add -E flag to xgettext runs.
3919
3920 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
3921
3922         * po/fr.po: Update from translation team.
3923
3924         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
3925         Optimize a bit for use in glibc.
3926
3927 2002-10-12  Roland McGrath  <roland@redhat.com>
3928
3929         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
3930         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
3931
3932 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
3933
3934         * po/sv.po: Update from translation team.
3935
3936 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
3937
3938         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
3939         OP_CONTEXT_NODE.
3940         (regfree): Likewise.
3941         (create_initial_state): Likewise.
3942         (analyze): Remove the substitutions which became useless.
3943         (calc_first): Likewise.
3944         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
3945         epsilon destination.
3946         (duplicate_node_closure): New function.
3947         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
3948         (calc_inveclosure): Likewise.
3949         (calc_eclosure): Likewise.
3950         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
3951         direct invocation of duplicate_node.
3952         (parse): Don't use comma operator in the return to avoid compiler
3953         warning.
3954         (parse_reg_exp): Likewise.
3955         (parse_branch): Likewise.
3956         (parse_expression): Likewise.
3957         (parse_sub_exp): Likewise.
3958         (parse_dup_op): Likewise.
3959         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
3960         which became useless.
3961         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
3962         (create_cd_newstate): Likewise.
3963         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
3964         (re_token_t): Likewise.
3965         (re_dfa_t): Likewise.
3966         (re_node_set_remove): New macro.
3967         * posix/regexec.c (check_matching): Remove the handling
3968         OP_CONTEXT_NODE.
3969         (check_halt_node_context): Likewise.
3970         (proceed_next_node): Likewise.
3971         (pop_fail_stack): Fix the memory leak.
3972         (set_regs): Likewise.
3973         (free_fail_stack_return): New function.
3974         (sift_states_backward): Fix the memory leak.  Remove the handling
3975         OP_CONTEXT_NODE.
3976         (update_cur_sifted_state): Append some if clause to avoid redundant
3977         call.
3978         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
3979         back reference.
3980         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
3981         (check_subexp_limits): Likewise.
3982         (search_subexp): Likewise.
3983         (sift_states_bkref): Likewise.
3984         (transit_state_mb): Likewise.
3985         (transit_state_bkref_loop): Likewise.
3986         (transit_state_bkref_loop): Likewise.
3987         (group_nodes_into_DFAstates): Likewise.
3988         (check_node_accept): Likewise.
3989         (sift_ctx_init): Add initializing.
3990
3991 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
3992
3993         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
3994         __builtin_expect.
3995
3996 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
3997
3998         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
3999         duplicated variable c.
4000
4001         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
4002         if possible.
4003
4004         * sysdeps/unix/sysv/linux/i386/sysdep.h
4005         (INTERNAL_SYSCALL_ERROR_P): New define.
4006         (INTERNAL_SYSCALL_ERRNO): Likewise.
4007
4008         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
4009         Add hack to prevent the compiler from clobbering the signal context.
4010
4011 2002-10-11  Roland McGrath  <roland@redhat.com>
4012
4013         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
4014         Fix typos.
4015
4016         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
4017         * sysdeps/sh/dl-lookupcfg.h: File removed.
4018         * sysdeps/i386/dl-lookupcfg.h: File removed.
4019
4020         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
4021         missing labels and ; from last change.
4022
4023         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
4024         number literals, so they are doubles instead of ints.
4025
4026 2002-10-09  Roland McGrath  <roland@redhat.com>
4027
4028         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
4029         changed from [USE_TLS && HAVE___THREAD].
4030
4031         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
4032         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
4033         * sysdeps/x86_64/dl-machine.h
4034         (elf_machine_type_class, elf_machine_rela): Likewise.
4035         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
4036         Likewise.
4037
4038         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
4039         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
4040         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
4041
4042         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
4043         instead of ___tls_get_addr.
4044         (___tls_get_addr_internal): Add attribute_hidden to decl.
4045
4046         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
4047         _dl_error_catch_tsd.
4048         * elf/rtld.c (startup_error_tsd): New function.
4049         (dl_main): Point _dl_error_catch_tsd at that.
4050         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
4051         use new function pointer instead.
4052         * elf/dl-tsd.c: New file.
4053         * elf/Makefile (routines): Add it.
4054
4055 2002-10-07  Roland McGrath  <roland@redhat.com>
4056
4057         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
4058         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
4059         take _dl_load_lock around calling __writev.
4060
4061         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
4062         (INLINE_SYSCALL): Use that.
4063
4064         * sysdeps/generic/dl-sysdep.h: New file.
4065         * sysdeps/mach/hurd/dl-sysdep.h: New file.
4066         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
4067         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
4068         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
4069         access it directly.
4070         * elf/dl-minimal.c (__errno_location): Removed.
4071         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
4072         Use GOTOFF access for errno.
4073         * sysdeps/unix/sysv/linux/i386/sysdep.h
4074         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
4075
4076         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
4077         Use PC-relative access for errno.
4078         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
4079         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
4080
4081         * include/tls.h: New file.
4082         (USE___THREAD): New macro.
4083         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
4084         libc or libpthread.
4085         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
4086         changed from [USE_TLS && HAVE___THREAD].
4087         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
4088         * sysdeps/unix/i386/sysdep.S: Likewise.
4089         * sysdeps/unix/x86_64/sysdep.S: Likewise.
4090         * include/errno.h: Likewise.
4091         * include/netdb.h: Likewise.
4092         * include/resolv.h: Likewise.
4093
4094         * sysdeps/generic/errno.c: New file.
4095         * csu/Makefile (aux): New variable, list errno.
4096         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
4097         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
4098         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
4099         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
4100         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
4101         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
4102         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
4103         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
4104         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
4105         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
4106         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
4107         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
4108         * sysdeps/unix/alpha/sysdep.S: Likewise.
4109         * sysdeps/generic/start.c: Likewise.
4110         * sysdeps/unix/start.c: Likewise.
4111         * sysdeps/unix/arm/start.c: Likewise.
4112         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
4113         * sysdeps/unix/sparc/start.c: Likewise.