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