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