Update.
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
2
3         * iconv/gconv_dl.c (free_mem): Clear loaded.
4         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
5         cleanup if any.
6
7 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
8
9         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
10
11         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
12         as old code without locking.  _IO_seekoff calls this function after
13         locking the stream.
14         * libio/ioseekpos.c: Likewise for _IO_seekpos.
15         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
16         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
17         prototypes.
18         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
19         of _IO_seekoff_internal.
20         (_IO_rewind): Likewise.
21         * libio/ioftell.c: Likewise.
22         * libio/ftello.c: Likewise.
23         * libio/ftello64.c: Likewise.
24         * libio/iofgetpos.c: Likewise.
25         * libio/iofgetpos64.c: Likewise.
26         * libio/oldiofgetpos.c: Likewise.
27         * libio/oldiofgetpos64.c: Likewise.
28         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
29         _IO_seekpos_internal.
30         * libio/iofsetpos64.c: Likewise.
31         * libio/oldiofsetpos.c: Likewise.
32         * libio/oldiofsetpos64.c: Likewise.
33
34 2002-11-04  Roland McGrath  <roland@redhat.com>
35
36         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
37         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
38         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
39         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
40         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
41         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
42         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
43         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
44         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
45         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
46         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
47         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
48         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
49         Remove these, no longer used.
50
51 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
52
53         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
54         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
55         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
56         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
57         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
58         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
59         syscall stubs.
60
61         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
62         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
63         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
64         and __NR_pread.
65         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
66         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
67         and __NR_pwrite.
68         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
69
70 2002-11-03  Roland McGrath  <roland@redhat.com>
71
72         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
73         `_dl_tls_static_used'.
74         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
75         (__libc_setup_tls): Initialize it.  Let the initial value of
76         _dl_tls_static_size indicate some surplus space in the computed value.
77         * elf/dl-open.c (_dl_tls_static_size): New variable.
78         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
79         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
80         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
81         (CHECK_STATIC_TLS): Use it.
82         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
83         closed objects occupied a trailing contiguous chunk of static TLS area.
84
85 2002-10-18  Bruno Haible  <bruno@clisp.org>
86
87         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
88
89 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
90
91         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
92         _wide_data->_IO_read_end if adjustment can be made in the current
93         buffer.
94
95         * sysdeps/unix/sysv/linux/fexecve.c: New file.
96
97         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
98         wide oriented streams are used.
99
100         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
101         service hasn't been used [PR libc/4744].
102
103         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
104         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
105
106         * manual/examples/dir.c: Don't include <stddef.h>.
107         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
108         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
109
110 2002-11-02  H.J. Lu  <hjl@gnu.org>
111
112         * stdio-common/reg-printf.c: Include <stddef.h>.
113
114 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
115
116         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
117
118         * po/ca.po: Update from translation team.
119         * po/es.po: Likewise.
120
121         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
122         is defined write out memory map.
123         * sysdeps/unix/sysv/linux/segfault.c: New file.
124
125 2002-11-02  Roland McGrath  <roland@redhat.com>
126
127         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
128         pointers that can alias.
129         Reported by Daniel Jacobowitz <drow@mvista.com>.
130
131         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
132
133 2002-11-02  Roland McGrath  <roland@redhat.com>
134
135         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
136         description to be clearer and to say that *RESULT is set to ENTRY.
137
138 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
139
140         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
141         dests_ch arrays together.  Alloca or malloc dest_states,
142         dest_states_word and dest_states_nl arrays together.  Free memory on
143         error exit.
144
145 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
146
147         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
148         and current_saltbits.
149
150 2002-11-02  Roland McGrath  <roland@redhat.com>
151
152         * stdio-common/reg-printf.c: Include <stdlib.h>.
153
154 2002-11-02  H.J. Lu  <hjl@gnu.org>
155
156         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
157         caller to EXTRA instead of execve.
158
159 2002-11-01  Roland McGrath  <roland@redhat.com>
160
161         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
162         in place of [!(USE_TLS && HAVE___THREAD)].
163         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
164
165 2002-10-31  Roger Sayle  <roger@eyesopen.com>
166
167         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
168         New macros.
169         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
170
171         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
172         without defining FP_ROUNDMODE.
173
174 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
175
176         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
177         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
178         declare_symbol.
179         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
180         (OLD_SIGLIST_SIZE): Define.
181         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
182         (OLD_SIGLIST_SIZE): Define.
183         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
184
185 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
186
187         * sysdeps/ia64/strncpy.S: Fix recovery code.
188
189 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
190
191         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
192         New macros.
193         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
194         text_set_element.
195         * elf/dl-libc.c (free_mem): Likewise.
196         * iconv/gconv_conf.c (free_mem): Likewise.
197         * iconv/gconv_db.c (free_mem): Likewise.
198         * iconv/gconv_dl.c (free_mem): Likewise.
199         * iconv/gconv_cache.c (free_mem): Likewise.
200         * intl/finddomain.c (free_mem): Likewise.
201         * intl/dcigettext.c (free_mem): Likewise.
202         * locale/setlocale.c (free_mem): Likewise.
203         * misc/fstab.c (fstab_free): Likewise.
204         * nss/nsswitch.c (free_mem): Likewise.
205         * posix/regcomp.c (free_mem): Likewise.
206         * resolv/gai_misc.c (free_res): Likewise.
207         * stdlib/fmtmsg.c (free_mem): Likewise.
208         * sunrpc/clnt_perr.c (free_mem): Likewise.
209         * sysdeps/generic/setenv.c (free_mem): Likewise.
210         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
211         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
212         * time/tzset.c (free_mem): Likewise.
213         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
214         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
215         * malloc/set-freeres.c (__libc_freeres): Likewise.
216
217         * login/getutent.c: Include stdlib.h instead of stddef.h.
218         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
219         (__getutent): Allocate buffer the first time it is run.
220         * login/getutid.c: Include stdlib.h instead of stddef.h.
221         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
222         (__getutid): Allocate buffer the first time it is run.
223         * login/getutline.c: Include stdlib.h instead of stddef.h.
224         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
225         (__getutline): Allocate buffer the first time it is run.
226         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
227         (mtrace): Allocate malloc_trace_buffer.
228         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
229         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
230         * string/strerror.c: Include libintl.h and errno.h.
231         (buf): New variable.
232         (strerror): Only allocate buffer if actually needed (unknown error).
233         * time/tzfile.c (transitions): Add libc_freeres_ptr.
234         (freeres): Remove.
235
236 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
237
238         * include/libc-symbols.h (libc_freeres_ptr): New macro.
239         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
240         symbol_set_define.
241         (__libc_freeres): Free all pointers in that section.
242         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
243         commands when creating .lds script.
244         (LDSEDCMD-c.so): New variable.
245         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
246         (rcmd_af): Use strdup to allocate ahostbuf.
247         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
248         (rexec_af): Use strdup to allocate ahostbuf.
249         * stdio-common/reg-printf.c (printf_funcs): Remove.
250         (__printf_arginfo_table): Change into printf_arginfo_function **.
251         Add libc_freeres_ptr.
252         (__register_printf_function): Allocate __printf_arginfo_table
253         and __printf_function_table the first time it is called.
254         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
255         printf_arginfo_function **.
256         (parse_one_spec): Add __builtin_expect.
257         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
258         (free_mem): Remove.
259         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
260         (free_mem): Remove.
261         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
262         (string_space, map): Add libc_freeres_ptr.
263         (free_mem): Remove.
264         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
265         (free_mem): Remove.
266         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
267         (free_mem): Remove.
268         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
269         (buffer): Add libc_freeres_ptr.
270         (free_mem): Remove for _LIBC.
271         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
272         (free_mem): Remove.
273         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
274         (free_mem): Remove.
275         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
276         (free_mem): Remove.
277         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
278         (free_mem): Remove.
279         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
280         (free_mem): Remove.
281         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
282         (free_mem): Remove.
283         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
284         libc_freeres_ptr.
285         (free_mem): Remove.
286         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
287         libc_freeres_ptr.
288         (free_mem): Remove.
289
290 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
291
292         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
293         instead of duplicating the whole function in libc.
294
295 2002-10-31  Roland McGrath  <roland@redhat.com>
296
297         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
298         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
299
300 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
301
302         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
303         32bit-predefine when creating .new32 list and -U for each
304         32bit-predefine when creating .new64 list.
305         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
306
307 2002-10-29  Andreas Schwab  <schwab@suse.de>
308
309         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
310         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
311
312 2002-10-25  Roland McGrath  <roland@redhat.com>
313
314         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
315         * sysdeps/unix/sysv/linux/configure: Regenerated.
316
317         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
318         _dl_starting_up decl.
319
320 2002-10-20  H.J. Lu  <hjl@gnu.org>
321
322         * sysdeps/unix/sysv/linux/configure.in: Don't check
323         /lib/modules/`uname -r`/build/include for kernel headers if
324         cross compiling.
325         * sysdeps/unix/sysv/linux/configure: Regenerated.
326
327 2002-10-25  Roland McGrath  <roland@redhat.com>
328
329         * math/math.h (M_LOG2El): Correct the value.
330         From Stephen L Moshier <steve@moshier.net>.
331
332         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
333         conditional from __libc_multiple_libcs access.  Remove kludge for weak
334         symbol access with old compilers we no longer support.
335         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
336         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
337
338 2002-10-25  Roland McGrath  <roland@redhat.com>
339
340         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
341         implement SV_RESETHAND by translating it to SA_RESETHAND.
342
343 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
344
345         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
346         type on ELF64 platforms.
347
348 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
349
350         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
351
352         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
353
354 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
355
356         * elf/dl-misc.c: Include <sysdep.h>.
357         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
358
359         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
360         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
361         (INLINE_SYSCALL): Use that.
362         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
363         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
364         (INLINE_SYSCALL): Use that.
365         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
366         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
367         (INLINE_SYSCALL): Use that.
368         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
369         dl-sysdep.h.
370         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
371         (__INTERNAL_SYSCALL_STRING): Define.
372         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
373         dl-sysdep.h.
374         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
375         (__INTERNAL_SYSCALL_STRING): Define.
376         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
377         __SYSCALL_STRING to inline_syscall*.
378         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
379         New macros.
380         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
381         inline_syscall4, inline_syscall5, inline_syscall6): Add string
382         argument.
383
384 2002-10-24  Roland McGrath  <roland@redhat.com>
385
386         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
387         * sysdeps/unix/sysv/linux/init-first.c: Not here.
388         * sysdeps/powerpc/elf/libc-start.c: Or here.
389         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
390         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
391         * sysdeps/unix/sysv/aix/init-first.c: Or here.
392         * sysdeps/generic/libc-start.c: Or here.
393         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
394         access with [! SHARED].
395         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
396
397         * libio/bug-wfflush.c: New file.
398         * libio/Makefile (tests): Add bug-wfflush.
399
400 2002-10-23  Roland McGrath  <roland@redhat.com>
401
402         * stdio-common/tst-fphex.c: New file.
403         * stdio-common/Makefile (tests): Add tst-fphex.
404         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
405         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
406         chars always before the value digits.
407         Reported by James Antill <james.antill@redhat.com>.
408
409 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
410
411         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
412         (free_mem): New function.
413         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
414         if not cross compiling.
415         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
416         (bug-regex14-ENV): Set.
417         (bug-regex14-mem): New target.
418         * posix/bug-regex14.c: New file.
419
420 2002-10-23  Roland McGrath  <roland@redhat.com>
421
422         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
423         target, so we don't touch it when the link fails.
424
425         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
426         Check for the result overflowing off_t and fail with EOVERFLOW.
427         * libio/ioftell.c (_IO_ftell): Likewise.
428         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
429
430         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
431         use a temporary timeval on the stack for gettimeofday and copy it.
432         * login/logout.c (logout): Likewise.
433         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
434
435         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
436         Use __SWORD_TYPE instead of int for member types.
437         (struct statfs64): Likewise.
438         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
439         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
440         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
441         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
442         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
443
444         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
445         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
446         (ST_NODIRATIME): Restore fixed value of 2048.
447         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
448         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
449
450         Rearranged <bits/types.h> definitions to reduce duplication.
451         * sysdeps/generic/bits/types.h: Rewritten, using macros from
452         <bits/wordsize.h> and new header <bits/typesizes.h>.
453         * posix/Makefile (headers): Add bits/typesizes.h here.
454         * sysdeps/generic/bits/typesizes.h: New file.
455         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
456         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
457         * sysdeps/mach/hurd/bits/typesizes.h: New file.
458         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
459         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
460         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
461         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
462         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
463         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
464         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
465         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
466         <bits/pthreadtypes.h> here, not in <bits/types.h>.
467         * signal/signal.h: Likewise.
468
469         * streams/stropts.h: Include <bits/xtitypes.h>.
470         * streams/Makefile (headers): Add bits/xtitypes.h here.
471         * sysdeps/generic/bits/xtitypes.h: New file.
472         * sysdeps/s390/bits/xtitypes.h: New file.
473         * sysdeps/ia64/bits/xtitypes.h: New file.
474         * sysdeps/x86_64/bits/xtitypes.h: New file.
475
476         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
477         * sysdeps/generic/bits/ipctypes.h: New file.
478         * sysdeps/mips/bits/ipctypes.h: New file.
479         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
480         * sysdeps/gnu/bits/msq.h: Likewise.
481         * sysvipc/sys/ipc.h: Likewise.
482
483 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
484
485         * elf/dl-load.c (struct filebuf): For buf element to have the
486         alignment of ElfXX_Ehdr since this is what will be stored in it.
487
488 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
489
490         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
491         into pointer to locrec_offset.
492         (add_locale_to_archive): Adjust callers.  Free normalized_name right
493         before returning, not immediately after add_locale, pass it to
494         add_alias if not NULL instead of name.  Rename second normalized_name
495         occurence to nnormalized_codeset_name.
496
497         * locale/programs/locarchive.c (enlarge_archive): Make sure
498         string_size is always a multiple of 4.
499         Reported by Andreas Schwab <schwab@suse.de>.
500
501 2002-10-21  Andreas Schwab  <schwab@suse.de>
502
503         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
504         caller to EXTRA instead of execve, since the latter has a
505         higher-priority implementation in linuxthreads.
506
507 2002-10-21  Roland McGrath  <roland@redhat.com>
508
509         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
510         slotinfo list's len member to the proper size, not just 1.
511         Initialize static_map.l_tls_initimage.
512
513         * elf/dl-open.c (dl_open_worker): Fix loop searching for
514         dtv_slotinfo_list element containing new modules' l_tls_modid.
515
516         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
517         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
518         * elf/Makefile (tests): Add tst-tls9.
519         (tests-static): Add tst-tls9-static.
520         (tst-tls9-static-ENV): New variable.
521         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
522
523         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
524         modids used by partially loaded modules being closed can't be known.
525
526 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
527
528         * posix/Makefile: Add a test case for the bug reported by Aharon
529         Robbins <arnold@skeeve.com>.
530         * posix/bug-regex13.c: New file.
531         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
532
533 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
534
535         * csu/gmon-start.c: Pretty printing.
536
537 2002-10-19  Art Haas  <ahaas@neosoft.com>
538
539         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
540         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
541         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
542         * configure: Regenerated.
543
544 2002-10-19  Roland McGrath  <roland@redhat.com>
545
546         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
547         and then set $subdirs directly, because the new Autoconf breaks
548         compatibility in every way imaginable and insists on whining
549         about usage that worked since the dawn of time.
550         * configure: Regenerated.
551
552         * configure: Regenerated (using Autoconf 2.54).
553         * sysdeps/alpha/elf/configure: Likewise.
554         * sysdeps/generic/configure: Likewise.
555         * sysdeps/i386/elf/configure: Likewise.
556         * sysdeps/ia64/elf/configure: Likewise.
557         * sysdeps/mach/hurd/configure: Likewise.
558         * sysdeps/mach/configure: Likewise.
559         * sysdeps/unix/configure: Likewise.
560         * sysdeps/unix/common/configure: Likewise.
561         * sysdeps/unix/sysv/aix/configure: Likewise.
562         * sysdeps/unix/sysv/linux/configure: Likewise.
563         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
564         * sysdeps/x86_64/elf/configure: Likewise.
565
566         * config.make.in: Nix completely-soft nonsense.
567         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
568         of machine directories instead of fpu subdirectory.
569         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
570         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
571         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
572         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
573         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
574         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
575         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
576         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
577         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
578         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
579         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
580         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
581         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
582         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
583         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
584         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
585         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
586         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
587         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
588         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
589         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
590         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
591         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
592         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
593         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
594         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
595         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
596         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
597         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
598         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
599         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
600         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
601         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
602         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
603         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
604         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
605         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
606         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
607         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
608         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
609
610 2002-10-19  Bruno Haible  <bruno@clisp.org>
611
612         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
613
614 2002-10-18  Roland McGrath  <roland@redhat.com>
615
616         * io/Makefile (routines): Add lchmod.
617         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
618         * sysdeps/generic/lchmod.c: New file.
619         * sysdeps/mach/hurd/lchmod.c: New file.
620         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
621
622 2002-10-18  Art Haas  <ahaas@neosoft.com>
623
624         * configure.in: Remove remaining AC_FD_CC macros, and replace
625         AC_FD_MSG with AS_MESSAGE_FD.
626
627 2002-10-18  Roland McGrath  <roland@redhat.com>
628
629         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
630         typos: VALUE -> FINALADDR.
631
632         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
633         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
634         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
635         (inline_syscall6): Move these macros ...
636         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
637
638         * configure.in (libc_link_dests, libc_link_sources): Remove these
639         variables and the AC_LINK_FILES call.
640
641         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
642         change to put new symbols here instead of in GLIBC_2.2.
643         * sysdeps/powerpc/Subdirs: Move this file ...
644         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
645
646 2002-10-07  Roland McGrath  <roland@redhat.com>
647
648         * sysdeps/generic/bits/time.h: Replaced with contents of the
649         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
650         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
651         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
652         macros is ok even for architectures that don't now implement them.
653         * sysdeps/mach/hurd/bits/time.h: File removed.
654         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
655         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
656         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
657         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
658         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
659
660 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
661
662         * configure.in: Replace obsolete AC_OUTPUT syntax with
663         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
664
665         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
666         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
667
668         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
669         * sysdeps/alpha/elf/configure.in: Likewise.
670         * sysdeps/i386/elf/configure.in: Likewise.
671         * sysdeps/mach/hurd/configure.in: Likewise.
672         * sysdeps/x86_64/elf/configure.in: Likewise.
673
674         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
675
676         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
677         * sysdeps/generic/configure.in: Likewise.
678         * sysdeps/i386/elf/configure.in: Likewise.
679         * sysdeps/ia64/elf/configure.in: Likewise.
680         * sysdeps/mach/configure.in: Likewise.
681         * sysdeps/mach/hurd/configure.in: Likewise.
682         * sysdeps/unix/configure.in: Likewise.
683         * sysdeps/unix/common/configure.in: Likewise.
684         * sysdeps/unix/sysv/aix/configure.in: Likewise.
685         * sysdeps/unix/sysv/linux/configure.in: Likewise.
686         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
687         * sysdeps/x86_64/elf/configure.in: Likewise.
688
689         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
690         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
691         that it's obvious when extra autoconf machinery is being dragged in.
692
693 2002-10-18  Roland McGrath  <roland@redhat.com>
694
695         * configure.in: Remove bogus echo included in
696         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
697         * configure: Regenerated.
698
699 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
700
701         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
702         (statfs_filesize_max): New function.
703         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
704         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
705         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
706         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
707         statfs_filesize_max.
708         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
709         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
710         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
711
712 2002-10-17  Roland McGrath  <roland@redhat.com>
713
714         * configure.in (MIG): Just AC_SUBST it here.
715         * configure: Regenerated.
716         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
717         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
718         * sysdeps/mach/configure: Regenerated.
719
720         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
721         and AC_PROVIDE([_AS_CR_PREPARE]).
722
723         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
724         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
725
726         * elf/dl-support.c: Move _dl_tls_* variables to ...
727         * sysdeps/generic/libc-tls.c: ... here.
728
729         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
730         allow IDX to be one past the current last slotinfo entry.
731         (_dl_close): Pass IMAP->l_init_called for that parameter.
732
733 2002-10-07  Andreas Schwab  <schwab@suse.de>
734
735         * aclocal.m4: Fix for autoconf 2.53.
736         * configure.in: Likewise.  Require autoconf 2.53.
737
738 2002-10-08  Richard Henderson  <rth@redhat.com>
739
740         * soft-fp/op-4.h: Handle carry correctly in
741         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
742         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
743         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
744
745 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
746
747         * configure.in: Compute completely-soft.
748         * config.make.in: Make completely-soft available to sub-makes.
749         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
750         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
751         fe_nomask to libm-support.
752         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
753         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
754         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
755         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
756         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
757         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
758         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
759         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
760         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
761         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
762         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
763         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
764         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
765         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
766         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
767         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
768         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
769         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
770         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
771         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
772         __sim_round_mode.
773         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
774         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
775         FP_HANDLE_EXCEPTIONS.
776         Define FP_ROUNDMODE.
777         Redefine FP_* macros to correspond to the FE_* bit positions.
778         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
779         Define externs for __sim_exceptions, __sim_disabled_exceptions,
780         __sim_round_mode, __simulate_exceptions.
781         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
782         * sysdeps/powerpc/bits/fenv.h: ...to here.
783
784 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
785
786         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
787         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
788         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
789         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
790         __builtin_expect.
791
792 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
793
794         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
795         __libc_res_nsend): New prototypes.
796         * resolv/res_query.c (QUERYSIZE): Define.
797         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
798         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
799         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
800         res_nsend, pass answerp.
801         (res_nquery): Changed into wrapper around __libc_res_nquery.
802         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
803         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
804         instead of the non-__libc_ variants, pass them answerp.
805         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
806         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
807         Added answerp argument.  Call __libc_res_nquery instead of
808         res_nquery, pass answerp.
809         (res_nquerydomain): Changed into wrapper around
810         __libc_res_nquerydomain.
811         * resolv/res_send.c: Include sys/ioctl.h.
812         (MAXPACKET): Define.
813         (send_vc): Change arguments.  Reallocate answer buffer if it is
814         too small.
815         (send_dg): Likewise.
816         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
817         Reallocate answer buffer if it is too small and hooks are in use.
818         Adjust calls to send_vc and send_dg.
819         (res_nsend): Changed into wrapper around __libc_res_nsend.
820         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
821         just 1K answer buffer on the stack, use __libc_res_nsearch instead
822         of res_nsearch.
823         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
824         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
825         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
826         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
827         (gethostbyaddr): Similarly with __libc_res_nquery.
828         * resolv/Versions (libresolv): Export __libc_res_nquery and
829         __libc_res_nsearch at GLIBC_PRIVATE.
830
831 2002-10-17  Roland McGrath  <roland@redhat.com>
832
833         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
834         * configure: Regenerated.
835
836         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
837         before performing the reloc, not after.
838         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
839
840 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
841
842         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
843         * locale/programs/linereader.c (lr_open): Likewise.
844         * locale/programs/charmap-dir.c (charmap_open): Likewise.
845         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
846
847 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
848
849         * posix/bug-regex11.c: Add a test case for the bug reported by
850         Paolo Bonzini <bonzini@gnu.org>.
851         * posix/regexec.c (sift_states_bkref): Use correct destination of
852         the back reference.
853
854 2002-10-17  Roland McGrath  <roland@redhat.com>
855
856         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
857         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
858         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
859         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
860         Call it after performing TPOFF relocs.
861         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
862         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
863         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
864
865         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
866         when closing a partially-initialized object.
867
868         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
869         instead of _dl_fatal_printf when we see PT_TLS.
870
871         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
872         instead of $(libof-$<).
873
874 2002-10-16  Roland McGrath  <roland@redhat.com>
875
876         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
877         instead of += to append, to be sure $(lib) gets expanded at defn time.
878         (libof-$(cpp-src)): New variable, define this instead.
879         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
880         (lib): Don't use override.
881         (CPPFLAGS-$(lib)): New variable, put -D's here.
882         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
883         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
884         LIB found by $(libof-*) for basename, target, or source.
885         * Makerules (CPPFLAGS-nonlib): New variable.
886         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
887         * locale/Makefile (lib): Likewise.
888         * sunrpc/Makefile (lib): Likewise.
889
890         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
891         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
892         * sysdeps/unix/sysv/linux/pathconf.h: New file.
893         (statfs_link_max): New function, guts from fpathconf.c.
894         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
895         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
896         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
897         to use the linux/pathconf.c code by #include rather than duplication.
898         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
899
900 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
901
902         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
903         Use __libc_errno only for libc itself.
904
905 2002-10-16  Andreas Jaeger  <aj@suse.de>
906
907         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
908
909 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
910
911         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
912         Use __libc_errno only for libc itself.
913
914 2002-10-15  Roland McGrath  <roland@redhat.com>
915             Jakub Jelinek  <jakub@redhat.com>
916
917         * sysdeps/unix/sysv/linux/Makefile
918         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
919         sparc/Makefile to produce a bi-arch file as needed.
920         That's now parameterized by the variable $(64bit-predefine).
921         Use LC_ALL=C for `comm' commands in that rule.
922         No longer conditional on [$(no_syscall_list_h)].
923         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
924         (64bit-predefine): New variable.
925         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
926         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
927         * sysdeps/unix/sysv/linux/powerpc/Makefile
928         (64bit-predefine): New variable.
929
930 2002-10-15  Roland McGrath  <roland@redhat.com>
931
932         * sysdeps/unix/sysv/linux/Makefile
933         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
934
935         * login/utmp-private.h: Declare __libc_utmp_lock.
936         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
937         and call __libc_utmp_jump_table functions directly, instead of using
938         __setutent et al.
939
940         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
941         * sysdeps/unix/sysv/linux/configure: Regenerated.
942
943         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
944         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
945         Use int32_t for ll_time.
946         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
947         Use int32_t instead of long int for ut_session.
948         Use an anonymous struct with 32-bit fields for ut_tv.
949         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
950         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
951         here as in utmp.h for `struct utmp'.
952         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
953         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
954         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
955         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
956         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
957         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
958
959         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
960         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
961         All the following files were identical or equivalent to it.
962         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
963         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
964         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
965         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
966         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
967         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
968         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
969         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
970         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
971         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
972
973         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
974         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
975         Other than the previously incorrect sign of msg_iovlen, this is a
976         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
977         match their layouts as well, so the following are now identical to it.
978         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
979         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
980         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
981         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
982         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
983
984 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
985
986         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
987         Define for 2.4+ kernels.
988
989         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
990         are known to have the vfork syscall.  Don't confuse the CPUs
991         branch prediction unit by jumping to the return address.
992
993         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
994         support for reiserfs and xfs.
995
996         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
997         XFS link count.
998         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
999         and XFS_LINK_MAX.
1000         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
1001
1002 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
1003
1004         * include/libc-symbols.h (attribute_tls_model_ie): Define.
1005         * include/errno.h (errno): Define to __libc_errno in libc.so.
1006         Add attribute_tls_model_ie.
1007         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
1008         Add attribute_tls_model_ie.
1009         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
1010         attribute_tls_model_ie.
1011         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
1012         (h_errno): Define.
1013         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
1014         (_res): Define.
1015         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
1016         attribute_tls_model_ie.
1017         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
1018         __thread.
1019         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
1020         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
1021         __libc_errno in USE___THREAD case.
1022         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
1023         Likewise.
1024         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
1025         __attribute__((tls_model (""))).
1026         * configure: Rebuilt.
1027         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
1028
1029 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
1030
1031         * timezone/asia: Update from tzdata2002d.
1032         * timezone/australasia: Likewise.
1033         * timezone/iso3166.tab: Likewise.
1034         * timezone/southamerica: Likewise.
1035         * timezone/zone-tab: Likewise.
1036
1037 2002-10-15  Roland McGrath  <roland@redhat.com>
1038
1039         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
1040         Adjust TCB pointer before calling free, so we get the whole block.
1041
1042 2002-10-14  Roland McGrath  <roland@redhat.com>
1043
1044         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
1045         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
1046         extern using attribute_hidden instead of static, avoids warning.
1047
1048 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
1049
1050         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
1051         * sysdeps/unix/sysv/linux/configure: Rebuilt.
1052
1053 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
1054
1055         * po/sv.po: Update from translation team.
1056
1057 2002-10-12  H.J. Lu  <hjl@gnu.org>
1058
1059         * sunrpc/thrsvc.c (PROCQUIT): New.
1060         (struct rpc_arg): New.
1061         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
1062         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
1063         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
1064         (main): Modified for struct rpc_arg *.
1065
1066 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
1067
1068         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
1069
1070 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
1071
1072         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
1073         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
1074         in ld.so even if __thread is supported.
1075
1076 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
1077
1078         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
1079         Add hack to prevent the compiler from clobbering the signal context.
1080         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
1081         Likewise.
1082         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
1083         Likewise.
1084
1085 2002-10-14  Andreas Jaeger  <aj@suse.de>
1086
1087         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
1088         Guido Guenther <agx@sigxcpu.org>.
1089
1090 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
1091
1092         * po/sk.po: Update from translation team.
1093
1094 2002-09-26  Roland McGrath  <roland@redhat.com>
1095
1096         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
1097         dynamic string tag.
1098         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
1099         DL_DST_LIB based on $(slibdir).
1100
1101 2002-10-13  Roland McGrath  <roland@frob.com>
1102
1103         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
1104
1105         * sysdeps/mach/hurd/getresuid.c: New file.
1106         * sysdeps/mach/hurd/getresgid.c: New file.
1107         * sysdeps/mach/hurd/setresuid.c: New file.
1108         * sysdeps/mach/hurd/setresgid.c: New file.
1109
1110         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
1111         setresgid): Declare them.
1112         * NEWS: Mention it.
1113         * include/unistd.h
1114         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
1115         add libc_hidden_proto.
1116         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
1117         getresuid, getresgid, setresuid, setresgid here.
1118         * Versions.def (libc): Define GLIBC_2.3.2 set.
1119         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
1120         Add libc_hidden_def.
1121         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
1122         * sysdeps/generic/setresgid.c: New file.
1123         * sysdeps/generic/setresuid.c: New file.
1124         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
1125         (sysdep_routines): Don't add getresuid and getresgid here.
1126         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
1127         (sysdep_routines): Don't add setresuid and setresgid here.
1128         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
1129         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
1130         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
1131         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
1132         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
1133         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
1134         * posix/Makefile (routines): Add them all here instead.
1135         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
1136         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
1137         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
1138         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
1139         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
1140         [! __NR_setresuid]: Include generic file.
1141         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
1142         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
1143         [! __NR_setresuid]: Include generic file.
1144         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
1145         Caller is - now, not EXTRA.
1146         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
1147         (setresuid, setresgid, getresuid, getresgid): Likewise.
1148         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
1149         Add these calls here.
1150         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
1151         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
1152         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
1153         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
1154         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
1155         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
1156         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
1157         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
1158         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
1159
1160         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
1161         (sysdep_routines): Add setfsuid and setfsgid here.
1162         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
1163         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
1164         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
1165         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
1166         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
1167         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
1168         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
1169         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
1170
1171         * hurd/errno.c: Renamed to ...
1172         * hurd/errno-loc.c: ... this.
1173         * hurd/Makefile (routines): errno -> errno-loc
1174
1175 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
1176
1177         * po/de.po: Update from translation team.
1178
1179         * MakeTAGS: Add -E flag to xgettext runs.
1180
1181 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
1182
1183         * po/fr.po: Update from translation team.
1184
1185         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
1186         Optimize a bit for use in glibc.
1187
1188 2002-10-12  Roland McGrath  <roland@redhat.com>
1189
1190         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
1191         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
1192
1193 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
1194
1195         * po/sv.po: Update from translation team.
1196
1197 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
1198
1199         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
1200         OP_CONTEXT_NODE.
1201         (regfree): Likewise.
1202         (create_initial_state): Likewise.
1203         (analyze): Remove the substitutions which became useless.
1204         (calc_first): Likewise.
1205         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
1206         epsilon destination.
1207         (duplicate_node_closure): New function.
1208         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
1209         (calc_inveclosure): Likewise.
1210         (calc_eclosure): Likewise.
1211         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
1212         direct invocation of duplicate_node.
1213         (parse): Don't use comma operator in the return to avoid compiler
1214         warning.
1215         (parse_reg_exp): Likewise.
1216         (parse_branch): Likewise.
1217         (parse_expression): Likewise.
1218         (parse_sub_exp): Likewise.
1219         (parse_dup_op): Likewise.
1220         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
1221         which became useless.
1222         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
1223         (create_cd_newstate): Likewise.
1224         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
1225         (re_token_t): Likewise.
1226         (re_dfa_t): Likewise.
1227         (re_node_set_remove): New macro.
1228         * posix/regexec.c (check_matching): Remove the handling
1229         OP_CONTEXT_NODE.
1230         (check_halt_node_context): Likewise.
1231         (proceed_next_node): Likewise.
1232         (pop_fail_stack): Fix the memory leak.
1233         (set_regs): Likewise.
1234         (free_fail_stack_return): New function.
1235         (sift_states_backward): Fix the memory leak.  Remove the handling
1236         OP_CONTEXT_NODE.
1237         (update_cur_sifted_state): Append some if clause to avoid redundant
1238         call.
1239         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
1240         back reference.
1241         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
1242         (check_subexp_limits): Likewise.
1243         (search_subexp): Likewise.
1244         (sift_states_bkref): Likewise.
1245         (transit_state_mb): Likewise.
1246         (transit_state_bkref_loop): Likewise.
1247         (transit_state_bkref_loop): Likewise.
1248         (group_nodes_into_DFAstates): Likewise.
1249         (check_node_accept): Likewise.
1250         (sift_ctx_init): Add initializing.
1251
1252 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
1253
1254         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
1255         __builtin_expect.
1256
1257 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
1258
1259         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
1260         duplicated variable c.
1261
1262         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
1263         if possible.
1264
1265         * sysdeps/unix/sysv/linux/i386/sysdep.h
1266         (INTERNAL_SYSCALL_ERROR_P): New define.
1267         (INTERNAL_SYSCALL_ERRNO): Likewise.
1268
1269         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
1270         Add hack to prevent the compiler from clobbering the signal context.
1271
1272 2002-10-11  Roland McGrath  <roland@redhat.com>
1273
1274         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
1275         Fix typos.
1276
1277         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
1278         * sysdeps/sh/dl-lookupcfg.h: File removed.
1279         * sysdeps/i386/dl-lookupcfg.h: File removed.
1280
1281         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
1282         missing labels and ; from last change.
1283
1284         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
1285         number literals, so they are doubles instead of ints.
1286
1287 2002-10-09  Roland McGrath  <roland@redhat.com>
1288
1289         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
1290         changed from [USE_TLS && HAVE___THREAD].
1291
1292         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
1293         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
1294         * sysdeps/x86_64/dl-machine.h
1295         (elf_machine_type_class, elf_machine_rela): Likewise.
1296         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
1297         Likewise.
1298
1299         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
1300         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
1301         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
1302
1303         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
1304         instead of ___tls_get_addr.
1305         (___tls_get_addr_internal): Add attribute_hidden to decl.
1306
1307         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
1308         _dl_error_catch_tsd.
1309         * elf/rtld.c (startup_error_tsd): New function.
1310         (dl_main): Point _dl_error_catch_tsd at that.
1311         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
1312         use new function pointer instead.
1313         * elf/dl-tsd.c: New file.
1314         * elf/Makefile (routines): Add it.
1315
1316 2002-10-07  Roland McGrath  <roland@redhat.com>
1317
1318         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
1319         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
1320         take _dl_load_lock around calling __writev.
1321
1322         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
1323         (INLINE_SYSCALL): Use that.
1324
1325         * sysdeps/generic/dl-sysdep.h: New file.
1326         * sysdeps/mach/hurd/dl-sysdep.h: New file.
1327         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
1328         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
1329         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
1330         access it directly.
1331         * elf/dl-minimal.c (__errno_location): Removed.
1332         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
1333         Use GOTOFF access for errno.
1334         * sysdeps/unix/sysv/linux/i386/sysdep.h
1335         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
1336
1337         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
1338         Use PC-relative access for errno.
1339         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
1340         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
1341
1342         * include/tls.h: New file.
1343         (USE___THREAD): New macro.
1344         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
1345         libc or libpthread.
1346         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
1347         changed from [USE_TLS && HAVE___THREAD].
1348         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
1349         * sysdeps/unix/i386/sysdep.S: Likewise.
1350         * sysdeps/unix/x86_64/sysdep.S: Likewise.
1351         * include/errno.h: Likewise.
1352         * include/netdb.h: Likewise.
1353         * include/resolv.h: Likewise.
1354
1355         * sysdeps/generic/errno.c: New file.
1356         * csu/Makefile (aux): New variable, list errno.
1357         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
1358         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
1359         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
1360         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
1361         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
1362         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
1363         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
1364         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
1365         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
1366         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
1367         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
1368         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
1369         * sysdeps/unix/alpha/sysdep.S: Likewise.
1370         * sysdeps/generic/start.c: Likewise.
1371         * sysdeps/unix/start.c: Likewise.
1372         * sysdeps/unix/arm/start.c: Likewise.
1373         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
1374         * sysdeps/unix/sparc/start.c: Likewise.
1375         * sysdeps/unix/sysv/irix4/start.c: Likewise.
1376         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
1377
1378         * manual/search.texi (Tree Search Function, Hash Search Function):
1379         Mention search.h clearly.
1380
1381 2002-10-05  Roland McGrath  <roland@redhat.com>
1382
1383         * elf/dl-fxstat64.c: File removed.
1384         * elf/dl-xstat64.c: File removed.
1385         * elf/Makefile (rtld-routines): Remove them.
1386         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
1387         Instead, use strong_alias instead of versioned_symbol in the
1388         !SHLIB_COMPAT case.
1389         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
1390         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
1391
1392         * include/shlib-compat.h
1393         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
1394         [! NOT_IN_libc] (IS_IN_libc): Define it.
1395         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
1396         * elf/Makefile (CPPFLAGS-.os): Likewise.
1397
1398         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
1399         Return the status instead of calling exit.
1400
1401         * Makeconfig (CFLAGS): Prepend -std=gnu99.
1402         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
1403         Remove superfluous rm command, whose @ plus make bugs hid
1404         all these commands from the make output.
1405
1406         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
1407         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
1408         Use that file's contents instead of literal echo's for the prologue.
1409         * include/features.h: Include <gnu/stubs.h> unconditionally.
1410         * include/gnu/stubs.h: New file.
1411
1412 2002-09-30  Roland McGrath  <roland@redhat.com>
1413
1414         * elf/rtld-Rules: New file.
1415         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
1416         $(objpfx)rtld-libc.a): New targets.
1417         (generated): Add them.
1418         (reloc-link): Remove -o $@ from the variable.
1419         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
1420         (distribute): Add rtld-Rules.
1421         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
1422         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
1423         (common-mostlyclean, common-clean): Clean up rtld-* files.
1424         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
1425
1426 2002-10-11  Roland McGrath  <roland@redhat.com>
1427
1428         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
1429         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
1430
1431         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
1432         proper set of no-op insn prefixes.
1433
1434         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
1435
1436 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
1437
1438         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
1439         __pthread_kill_other_threads_np.
1440
1441         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
1442
1443 2002-10-08  Roland McGrath  <roland@redhat.com>
1444
1445         * locale/newlocale.c (__newlocale): If setting all categories to "C",
1446         just return &_nl_C_locobj instead of copying it.
1447         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
1448         * locale/duplocale.c (__duplocale): Likewise.
1449
1450 2002-10-07  Roland McGrath  <roland@frob.com>
1451
1452         * config.h.in (HAVE_I386_SET_GDT): New #undef.
1453         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
1454         * sysdeps/mach/configure: Regenerated.
1455
1456 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1457
1458         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
1459         Add all necessary register outputs for syscall-clobbered registers.
1460
1461 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
1462
1463         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
1464         Itanium 2 (and Itanium).
1465         Fix unwind directives and make it fit in 80 columns.
1466         * sysdeps/ia64/memset.S: Likewise.
1467         * sysdeps/ia64/memcpy.S: Likewise.
1468         Move jump table to .rodata section.
1469
1470 2002-10-03  Roland McGrath  <roland@frob.com>
1471
1472         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
1473         clobbers to asm.
1474
1475 2002-10-10  Andreas Jaeger  <aj@suse.de>
1476
1477         * sysdeps/x86_64/_mcount.S: Restore correct registers.
1478
1479 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
1480
1481         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
1482
1483 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
1484
1485         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
1486         _dl_allocate_tls_init.  Add rtld_hidden_proto.
1487         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
1488         rtld_hidden_def.
1489         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
1490
1491         * version.h (VERSION): Bump to 2.3.1.
1492
1493         * Make-dist: Add back one of the tar invocations removed before.
1494
1495         * stdlib/Makefile (distribute): Add allocalim.h.
1496
1497         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
1498         (__libc_tsd_address): Use correct variable name.
1499         Patch by Stefan Jones <stefan.jones@multigig.com>.
1500
1501         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
1502         Reported by edwardsg@sgi.com [PR libc/4678].
1503
1504         * Versions.def (libc): Add GLIBC_2.3.1.
1505         (libpthread): Add GLIBC_2.3.1.
1506
1507         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
1508         and __sigtimedwait.
1509         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
1510         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
1511         libc_hidden_def.
1512         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
1513         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
1514
1515         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
1516         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
1517         and make old name an alias.
1518         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
1519         and make old name an alias.
1520         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
1521         __libc_msgsnd.
1522
1523         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
1524         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
1525         __libc_writev.
1526         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
1527         old name an alias.
1528         * sysdeps/posix/readv.c: Likewise
1529         * sysdeps/unix/sysv/aix/readv.c: Likewise.
1530         * sysdeps/unix/sysv/linux/readv.c: Likewise.
1531         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
1532         old name an alias.
1533         * sysdeps/posix/writev.c: Likewise
1534         * sysdeps/unix/sysv/aix/writev.c: Likewise.
1535         * sysdeps/unix/sysv/linux/writev.c: Likewise.
1536
1537         * include/sys/wait.h: Declare __waitid.
1538         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
1539         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
1540         name an alias.
1541         * sysdeps/posix/waitid.c: Likewise.
1542         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
1543
1544         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
1545
1546 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
1547
1548         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
1549         prototypes.
1550         (__MAX_ALLOCA_CUTOFF): Define.
1551         Include allocalim.h.
1552         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
1553         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
1554         host_buffer depending on __libc_use_alloca.
1555         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
1556         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
1557         net_buffer depending on __libc_use_alloca.
1558         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
1559         buf depending on __libc_use_alloca.
1560         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
1561         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
1562         instead of hardcoded constants.
1563         Pass proper size argument to alloca and compute end for wide char
1564         version.
1565         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
1566         instead of hardcoded constants.
1567         * string/strcoll.c (strcoll): Likewise.
1568         * string/strxfrm.c (strxfrm): Likewise.
1569         * sysdeps/posix/readv.c (__readv): Likewise.
1570         * sysdeps/posix/writev.c (__writev): Likewise.
1571         * sysdeps/generic/allocalim.h: New file.
1572
1573 2002-10-08  Roland McGrath  <roland@redhat.com>
1574
1575         * configure.in (aux_missing warning): Change "too old" to
1576         "incompatible versions", since for autoconf it's "too new" right now.
1577         * configure: Regenerated.
1578
1579         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
1580         one found doesn't work on our configure.in.
1581         * configure: Regenerated.
1582         * config.make.in (AUTOCONF): New substituted variable.
1583         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
1584         (autoconf-it): ... here, use that instead of defining conditionally.
1585         Use $(AUTOCONF) instead of literal autoconf.
1586         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
1587         with this condition.
1588         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
1589
1590 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
1591
1592         * Make-dist (dist): Cleanup a bit.  We are not interested in the
1593         14 char filename limit anymore.  Remove intermediate files and
1594         symlinks.
1595
1596 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
1597
1598         * po/sk.po: Update from translation team.
1599         * po/tr.po: Likewise.
1600         * po/gl.po: Likewise.
1601
1602 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1603
1604         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
1605
1606 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
1607
1608         * version.h (RELEASE): Change to stable.
1609
1610 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
1611
1612         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
1613         __syscall_exit_group): New prototypes.
1614
1615 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
1616
1617         * glibc 2.3 released.
1618
1619
1620 See ChangeLog.13 for earlier changes.