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