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