fix typo in lib/lock.c (fixes compilation on Darwin)
[gnulib.git] / ChangeLog
1 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
2
3         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
4         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
5
6 2008-08-07  Jim Meyering  <meyering@redhat.com>
7
8         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
9
10         * modules/mkstemp (License): Relicense under LGPLv2+.
11
12 2008-08-06  Bruno Haible  <bruno@clisp.org>
13
14         * lib/poll.c (poll): Further micro-optimization.
15
16 2008-08-06  Jim Meyering  <meyering@redhat.com>
17
18         inet_pton.c: use locale-independent tolower
19         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
20         (inet_pton6): Use c_tolower rather than tolower.
21         * modules/inet_pton (Depends-on): Add c-ctype.
22
23 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
24
25         * lib/poll.c (poll): Avoid division when timeout is 0, cache
26         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
27
28 2008-08-06  Jim Meyering  <meyering@redhat.com>
29
30         * modules/inet_pton (License): Relicense under LGPLv2+.
31
32 2008-08-03  Bruno Haible  <bruno@clisp.org>
33
34         Additional non-aborting API for lock and tls.
35         * lib/lock.h: Include <errno.h>.
36         (glthread_lock_init): New macro/function.
37         (gl_lock_init): Define as wrapper around glthread_lock_init.
38         (glthread_lock_lock): New macro/function.
39         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
40         (glthread_lock_unlock): New macro/function.
41         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
42         (glthread_lock_destroy): New macro/function.
43         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
44         (glthread_rwlock_init): New macro/function.
45         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
46         (glthread_rwlock_rdlock): New macro/function.
47         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
48         (glthread_rwlock_wrlock): New macro/function.
49         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
50         (glthread_rwlock_unlock): New macro/function.
51         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
52         (glthread_rwlock_destroy): New macro/function.
53         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
54         (glthread_recursive_lock_init): New macro/function.
55         (gl_recursive_lock_init): Define as wrapper around
56         glthread_recursive_lock_init.
57         (glthread_recursive_lock_lock): New macro/function.
58         (gl_recursive_lock_lock): Define as wrapper around
59         glthread_recursive_lock_lock.
60         (glthread_recursive_lock_unlock): New macro/function.
61         (gl_recursive_lock_unlock): Define as wrapper around
62         glthread_recursive_lock_unlock.
63         (glthread_recursive_lock_destroy): New macro/function.
64         (gl_recursive_lock_destroy): Define as wrapper around
65         glthread_recursive_lock_destroy.
66         (glthread_once): New macro/function.
67         (gl_once): Define as wrapper around glthread_once.
68         Update function declarations.
69         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
70         glthread_rwlock_init. Return error code.
71         (glthread_rwlock_rdlock_multithreaded): Renamed from
72         glthread_rwlock_rdlock. Return error code.
73         (glthread_rwlock_wrlock_multithreaded): Renamed from
74         glthread_rwlock_wrlock. Return error code.
75         (glthread_rwlock_unlock_multithreaded): Renamed from
76         glthread_rwlock_unlock. Return error code.
77         (glthread_rwlock_destroy_multithreaded): Renamed from
78         glthread_rwlock_destroy. Return error code.
79         (glthread_recursive_lock_init_multithreaded): Renamed from
80         glthread_recursive_lock_init. Return error code.
81         (glthread_recursive_lock_lock_multithreaded): Renamed from
82         glthread_recursive_lock_lock. Return error code.
83         (glthread_recursive_lock_unlock_multithreaded): Renamed from
84         glthread_recursive_lock_unlock. Return error code.
85         (glthread_recursive_lock_destroy_multithreaded): Renamed from
86         glthread_recursive_lock_destroy. Return error code.
87         (glthread_once_call): Make static.
88         (glthread_once_multithreaded): Renamed from glthread_once.
89         * lib/tls.h: Include <errno.h>.
90         (glthread_tls_key_init): New macro/function.
91         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
92         (glthread_tls_set): New macro/function.
93         (gl_tls_set): Define as wrapper around glthread_tls_set.
94         (glthread_tls_key_destroy): New macro/function.
95         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
96         Update function declarations.
97         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
98         glthread_tls_get.
99         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
100
101 2008-08-04  Eric Blake  <ebb9@byu.net>
102
103         gnumakefile: use space, not TAB, outside of targets
104         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
105
106 2008-08-02  Jim Meyering  <meyering@redhat.com>
107
108         getdate.y: avoid locale-dependent date parsing failure
109         In Turkish locales, getdate would fail to recognize keywords
110         containing a lowercase "i".  The solution is not to rely on
111         locale-sensitive case-conversion.
112         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
113         (lookup_word): Use c_toupper in place of toupper.
114         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
115         Reported by Vefa Bicakci <bicave@superonline.com> in
116         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
117         * modules/getdate (Depends-on): Add c-ctype.
118
119 2008-08-02  Bruno Haible  <bruno@clisp.org>
120
121         * gnulib-tool (func_import): When updating or creating a .gitignore
122         file, prepend each added line with a slash, and ignore leading slashes
123         from the existing lines.
124         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
125
126 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
127
128         Portability fix for GNU make 3.79.1.
129         * top/GNUmakefile: Avoid 'else COND', which older GNU make
130         versions do not understand.
131
132 2008-08-01  Bruno Haible  <bruno@clisp.org>
133
134         Work around bug of HP-UX 10.20 cc with -0.0 literal.
135         * tests/test-isnanf.h (zero): New variable.
136         (main): Avoid literal -0.0f.
137         * tests/test-isnand.h (zero): New variable.
138         (main): Avoid literal -0.0.
139         * tests/test-isnanl.h (zero): New variable.
140         (main): Avoid literal -0.0L.
141         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
142         (test_float, test_double, test_long_double): Avoid literals -0.0f,
143         -0.0, -0.0L.
144         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
145         (test_signbitd): Avoid literal -0.0.
146         (test_signbitl): Avoid literal -0.0L.
147         * tests/test-ceilf1.c (zero): New variable.
148         (main): Avoid literal -0.0f.
149         * tests/test-ceill.c (zero): New variable.
150         (main): Avoid literal -0.0L.
151         * tests/test-floorf1.c (zero): New variable.
152         (main): Avoid literal -0.0f.
153         * tests/test-floorl.c (zero): New variable.
154         (main): Avoid literal -0.0L.
155         * tests/test-roundf1.c (zero): New variable.
156         (main): Avoid literal -0.0f.
157         * tests/test-round1.c (zero): New variable.
158         (main): Avoid literal -0.0.
159         * tests/test-roundl.c (zero): New variable.
160         (main): Avoid literal -0.0L.
161         * tests/test-truncf1.c (zero): New variable.
162         (main): Avoid literal -0.0f.
163         * tests/test-trunc1.c (zero): New variable.
164         (main): Avoid literal -0.0.
165         * tests/test-truncl.c (zero): New variable.
166         (main): Avoid literal -0.0L.
167         * tests/test-frexp.c (zero): New variable.
168         (main): Avoid literal -0.0.
169         * tests/test-frexpl.c (zero): New variable.
170         (main): Avoid literal -0.0L.
171         * tests/test-ldexpl.c (zero): New variable.
172         (main): Avoid literal -0.0L.
173         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
174         (zerod, zerol): New variables.
175         (test_function): Avoid literals -0.0, -0.0L.
176         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
177         (zerod, zerol): New variables.
178         (test_function): Avoid literals -0.0, -0.0L.
179         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
180         (zerod, zerol): New variables.
181         (test_function): Avoid literals -0.0, -0.0L.
182         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
183         (zerod, zerol): New variables.
184         (test_function): Avoid literals -0.0, -0.0L.
185         * tests/test-strtod.c (zero): New variable.
186         (main): Avoid literal -0.0.
187         Reported by Jonathan C. Patschke <jp@centtech.com>.
188
189 2008-07-31  Jim Meyering  <meyering@redhat.com>
190
191         sha256.h: correct definition of SHA224_DIGEST_SIZE
192         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
193         Reported by Paulie Pena IV <paulie4@gmail.com>.
194         Define as 224 / 8, rather than as a literal.
195         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
196         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
197         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
198
199 2008-07-31  Bruno Haible  <bruno@clisp.org>
200
201         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
202         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
203         Reported by Jonathan Patschke <jp@centtech.com>.
204
205 2008-07-31  Bruno Haible  <bruno@clisp.org>
206
207         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
208         Reported by Paolo Bonzini <bonzini@gnu.org>.
209
210 2008-07-30  Eric Blake  <ebb9@byu.net>
211
212         test-strtod: allow compilation without -lm
213         * tests/test-strtod.c (main): Avoid link dependence on fabs.
214         Reported by Dennis Clarke <blastwave@gmail.com>.
215
216 2008-07-28  Jim Meyering  <meyering@redhat.com>
217
218         bootstrap: work also when there are no .po files in po/
219         * build-aux/bootstrap (update_po_files): Complete the change
220         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
221
222 2008-07-27  Jim Meyering  <meyering@redhat.com>
223
224         * users.txt: Add zile.
225
226 2008-07-26  Ben Pfaff  <blp@gnu.org>
227
228         Add missing dependencies on new m4/exponent[fdl].m4 files.
229         * modules/isnanf-nolibm: Add m4/exponentf.m4.
230         * modules/isnand-nolibm: Add m4/exponentd.m4.
231         * modules/isnanl-nolibm: Add m4/exponentl.m4.
232         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
233         m4/isnan[fdl].m4, because the macros actually used moved.
234         Reported by Jim Meyering.
235
236 2008-07-14  Ben Pfaff  <blp@gnu.org>
237
238         Add isinf module.
239         * lib/isinf.c: New file.
240         * lib/math.in.h: Define isinf macro if we have decided to replace
241         it.
242         * m4/isinf.m4: New file.
243         * m4/math_h.m4: Initialize and substitute variables for isinf
244         module.
245         * modules/isinf: New file.
246         * modules/isinf-tests: New file.
247         * modules/math: Add substitutions for new module.
248         * tests/test-isinf.c: New file.
249         * doc/posix-functions/isinf.texi: Mention new module.
250         * MODULES.html.sh: Mention new module.
251
252 2008-07-14  Ben Pfaff  <blp@gnu.org>
253
254         Factor out some macros for use by additional modules.
255         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
256         exponentf.m4.
257         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
258         exponentd.m4.
259         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
260         file exponentl.m4.
261         * m4/exponentf.m4: New file.
262         * m4/exponentd.m4: New file.
263         * m4/exponentl.m4: New file.
264         * modules/isnanf: Use new file m4/exponentf.m4.
265         * modules/isnand: Use new file m4/exponentd.m4.
266         * modules/isnanl: Use new file m4/exponentl.m4.
267
268 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
269
270         mktime.c: normalize tp->tm_isdst value to -1/0/1.
271         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
272         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
273         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
274
275         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
276         readlink on platforms without PATH_MAX.
277
278 2008-07-21  Eric Blake  <ebb9@byu.net>
279
280         Warn, not fail, on stale version.
281         * top/GNUmakefile (_curr-ver): Tone down previous patch.
282
283         Don't allow installation with stale devel version number.
284         * top/GNUmakefile (_is-install-target): New macro.
285         (_curr-ver): Forbid installation with stale version number.
286
287 2008-07-20  Bruno Haible  <bruno@clisp.org>
288
289         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
290         TESTS_ENVIRONMENT.
291         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
292
293 2008-07-20  Bruno Haible  <bruno@clisp.org>
294
295         * lib/c-stack.h (c_stack_action): Add documentation.
296         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
297
298 2008-07-20  Bruno Haible  <bruno@clisp.org>
299
300         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
301         * modules/readlink (License): Likewise.
302
303 2008-07-17  Eric Blake  <ebb9@byu.net>
304
305         * modules/c-stack (Link): Fix typo.
306
307         Make c-stack use libsigsegv, when available.
308         * modules/c-stack (Depends-on): Add libsigsegv.
309         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
310         needed.
311         * lib/c-stack.c (SIGSTKSZ): Define fallback.
312         (segv_handler, overflow_handler, c_stack_action)
313         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
314         implementation when libsigsegv is available, but only when using
315         the library is necessary.
316         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
317         comment, explaining why XSI check fails on Linux.
318         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
319         * tests/test-c-stack2.sh: Tweak skip message.
320         * NEWS: Document new link-time requirements.
321
322 2008-07-16  Eric Blake  <ebb9@byu.net>
323
324         c-stack: Expose false positives when not using libsigsegv.
325         * modules/c-stack-tests (Files): Expand test.
326         * tests/test-c-stack.c (main): Add means to conditionally trigger
327         non-overflow SIGSEGV.
328         * tests/test-c-stack2.sh: New file.
329
330 2008-07-14  Bruno Haible  <bruno@clisp.org>
331
332         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
333         Reported by Eric Blake.
334
335 2008-07-14  Sam Steingold  <sds@gnu.org>
336             Bruno Haible  <bruno@clisp.org>
337
338         New module libsigsegv.
339         * modules/libsigsegv: New file.
340         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
341         modifications.
342         * MODULES.html.sh (Signal handling): New section.
343
344 2008-07-14  Bruno Haible  <bruno@clisp.org>
345
346         * modules/unictype/ctype-* (Description): Add the word "function".
347         Improves the resulting doc in MODULES.html.
348
349 2008-07-12  Ben Pfaff  <blp@gnu.org>
350
351         Add longlong module.
352         * modules/longlong: New file.
353
354 2008-07-12  Bruno Haible  <bruno@clisp.org>
355
356         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
357         to empty.
358
359 2008-07-10  Ben Pfaff  <blp@gnu.org>
360
361         Add isnan module.
362         * doc/posix-functions/isnan.texi: Mention new module.
363         * lib/math.in.h: Define isnan macro if we have decided to replace
364         it.
365         * m4/isnan.m4: New file.
366         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
367         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
368         also.
369         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
370         redundancy.
371         * m4/math_h.m4: Initialize and substitute variables for isnan
372         module.
373         * modules/isnan: New file.
374         * modules/isnan-tests: New file.
375         * modules/math: Add substitutions for new module.
376         * tests/test-isnan.c: New file.
377         * MODULES.html.sh: Mention new module.
378
379 2008-07-10  Ben Pfaff  <blp@gnu.org>
380
381         Add isnanf module.
382         * lib/isnanf.m4: New file.
383         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
384         (gl_HAVE_ISNANF_IN_LIBM): New macro.
385         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
386         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
387         * modules/isnanf: New file.
388         * modules/isnanf-tests: New file.
389         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
390         files.
391         * tests/test-isnanf-nolibm.c: factored most of its contents into
392         new file tests/test-isnanf.h.
393         * tests/test-isnanf.h: New file.
394         * tests/test-isnanf.c: New file.
395         * MODULES.html.sh: Mention new module.
396         * doc/glibc-functions/isnanf.texi: Mention new module.
397
398 2008-07-10  Ben Pfaff  <blp@gnu.org>
399
400         Add isnand module.
401         * lib/isnand.h: New file.
402         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
403         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
404         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
405         functionality also.
406         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
407         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
408         (gl_HAVE_ISNAND_IN_LIBM): New macro.
409         * modules/isnand: New file.
410         * modules/isnand-tests: New file.
411         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
412         files.
413         * tests/test-isnand-nolibm.c: factored most of its contents into
414         new file tests/test-isnand.h.
415         * tests/test-isnand.h: New file.
416         * tests/test-isnand.c: New file.
417         * MODULES.html.sh: Mention new module.
418
419 2008-07-10  Ben Pfaff  <blp@gnu.org>
420
421         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
422         * lib/isnand.h: Rename lib/isnand-nolibm.h.
423         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
424         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
425         * modules/isnanf-nolibm: Update references to renamed files.
426         * modules/isnand-nolibm: Likewise.
427         * modules/isnanf-nolibm-tests: Likewise.
428         * modules/isnand-nolibm-tests: Likewise.
429         * lib/frexp.c: Likewise.
430         * lib/isfinite.c: Likewise.
431         * lib/signbitd.c: Likewise.
432         * lib/signbitf.c: Likewise.
433         * lib/vasnprintf.c: Likewise.
434         * tests/test-ceilf1.c: Likewise.
435         * tests/test-ceilf2.c: Likewise.
436         * tests/test-floorf1.c: Likewise.
437         * tests/test-floorf2.c: Likewise.
438         * tests/test-frexp.c: Likewise.
439         * tests/test-round1.c: Likewise.
440         * tests/test-round2.c: Likewise.
441         * tests/test-roundf1.c: Likewise.
442         * tests/test-strtod.c: Likewise.
443         * tests/test-trunc1.c: Likewise.
444         * tests/test-trunc2.c: Likewise.
445         * tests/test-truncf1.c: Likewise.
446         * tests/test-truncf2.c: Likewise.
447         * NEWS: Mention the renamed header files.
448
449 2008-07-11  Jim Meyering  <meyering@redhat.com>
450
451         vc-list-files: make the last-resort awk code more portable
452         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
453         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
454         does not support it.
455
456 2008-07-10  Eric Blake  <ebb9@byu.net>
457
458         Work with tar's bootstrap.
459         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
460         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
461         an m4 comment.
462
463 2008-07-09  Jim Meyering  <meyering@redhat.com>
464
465         posix-shell.m4: fix typo that made this test malfunction
466         * m4/posix-shell.m4: Remove capitalization in variable name.
467
468 2008-07-08  Bruno Haible  <bruno@clisp.org>
469
470         * m4/onceonly.m4: Update comments.
471         Reported by Ben Pfaff <blp@cs.stanford.edu>.
472
473 2008-07-04  Jim Meyering  <meyering@redhat.com>
474
475         * users.txt: Add vc-dwim.
476         (bison, coreutils): Use the gitweb URL.
477
478 2008-07-03  Jim Meyering  <meyering@redhat.com>
479
480         * users.txt: Add libffcall.  From Sam Steingold.
481
482 2008-07-03  OndÅ™ej Vašík  <ovasik@redhat.com>
483
484         getdate.y: do not ignore TZ with relative day, month or year offset
485         * lib/getdate.y (get_date): Move the tz-handling block to follow the
486         relative-date-handling, since otherwise, the latter would clobber the
487         sole output (an updated Start value) of the tz-handling block.
488         * tests/test-getdate.c: Tests for the fix
489
490 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
491
492         Recognize 'foo_LIBRARIES += libgnu.a'.
493         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
494         makefile snippet has already specified an installation location,
495         also using '+='.
496
497 2008-07-02  OndÅ™ej Vašík  <ovasik@redhat.com>
498
499         getdate.y: factor out common actions
500         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
501         Use them in place of open-coded actions.
502
503 2008-07-01  Simon Josefsson  <simon@josefsson.org>
504
505         Add self-test for getdate module.
506         * modules/getdate-tests: New file.
507         * tests/test-getdate.c: New file.
508
509 2008-06-29  Bruno Haible  <bruno@clisp.org>
510
511         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
512         .gitignore.
513         Reported by Sylvain Beucler <beuc@beuc.net>.
514
515 2008-06-29  Bruno Haible  <bruno@clisp.org>
516
517         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
518         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
519
520 2008-06-29  Bruno Haible  <bruno@clisp.org>
521
522         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
523         EXTRA_DIST.
524         Reported by Sylvain Beucler <beuc@beuc.net>.
525
526 2008-06-26  Jim Meyering  <meyering@redhat.com>
527
528         make several modules depend on the "open" module
529         This provides slightly increased consistency when opening-for-write
530         the name of a non-directory spelled with a trailing slash.
531         * modules/chdir-safer: Likewise.
532         * modules/chown: Likewise.
533         * modules/clean-temp: Likewise.
534         * modules/copy-file: Likewise.
535         * modules/fchdir: Likewise.
536         * modules/fcntl-safer: Likewise.
537         * modules/pipe: Likewise.
538         * modules/utime: Likewise.
539         Prompted by Eric Blake and Bruno Haible.
540
541 2008-06-24  Andreas Schwab  <schwab@suse.de>
542
543         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
544         literals can be used as initializers for global variables.
545
546 2008-06-23  Eric Blake  <ebb9@byu.net>
547
548         Make gnulib-cache.m4 easier to diff.
549         * gnulib-tool (func_import): Allow newlines when reading cached
550         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
551
552 2008-06-23  Bruno Haible  <bruno@clisp.org>
553
554         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
555         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
556         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
557         m4/signalblocking.m4.
558         (gl_PREREQ_SIGACTION): Don't invoke it.
559         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
560         gl_PREREQ_SIG_HANDLER_H.
561         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
562         Don't check for sigaction here.
563
564 2008-06-23  Bruno Haible  <bruno@clisp.org>
565
566         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
567         (install_handlers): Don't set the SA_RESETHAND flag.
568
569 2008-06-23  Bruno Haible  <bruno@clisp.org>
570
571         * m4/sigaction.m4: Comment fixes.
572         * lib/signal.in.h: Likewise.
573
574 2008-06-23  Eric Blake  <ebb9@byu.net>
575
576         Fix typo.
577         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
578
579         Avoid SA_ namespace.
580         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
581         Reported by Ralf Wildenhues.
582
583         Avoid test failure due to SA_RESTORER.
584         * tests/test-sigaction.c (SA_MASK): New macro.
585         (main): Avoid failing due to extension flags being set.
586         Reported by Jim Meyering.
587
588         Revert use of sig-handler.h in sigprocmask.c.
589         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
590         it requires the existence of struct sigaction.
591         * lib/sigprocmask.c (handler_t): Restore typedef.
592         (rpl_signal, old_handlers): Use local type.
593
594 2008-06-22  Bruno Haible  <bruno@clisp.org>
595
596         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
597         conditionally.
598         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
599
600 2008-06-22  Bruno Haible  <bruno@clisp.org>
601
602         * doc/posix-functions/siginterrupt.texi: Move note.
603
604         * lib/signal.in.h (SA_RESTART): New macro.
605         * lib/sigaction.c: Update comment.
606
607         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
608
609         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
610         (gl_PREREQ_SIGPROCMASK): Invoke it.
611         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
612
613         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
614
615         * lib/sigprocmask.c: Update a comment.
616
617 2008-06-21  Eric Blake  <ebb9@byu.net>
618
619         Use sigaction module rather than signal().
620         * modules/c-stack (Depends-on): Add sigaction.
621         * modules/fatal-signal (Depends-on): Likewise.
622         * modules/nanosleep (Depends-on): Likewise.
623         * modules/sigprocmask (Files): Add sig-handler.h.
624         * modules/sigaction (Files): Likewise.
625         * lib/sig-handler.h (get_handler): New file, suggested by Paul
626         Eggert.
627         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
628         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
629         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
630         (init_fatal_signals): Likewise.
631         * lib/nanosleep.c (rpl_nanosleep): Likewise.
632         (siginterrupt): Delete fallback.
633         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
634         instead.
635         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
636         siginterrupt.
637
638         New module sigaction, for mingw.
639         * modules/sigaction: New module...
640         * modules/sigaction-tests: ...and its test.
641         * m4/sigaction.m4: New file.
642         * lib/sigaction.c: Likewise.
643         * tests/test-sigaction.c: Likewise.
644         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
645         * modules/signal (Makefile.am): Likewise.
646         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
647         needed.
648         * doc/posix-headers/signal.texi (signal.h): Mention provided
649         types.
650         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
651         that sigaction is preferable.
652         * doc/posix-functions/sigaction.texi (sigaction): Mention new
653         module.
654         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
655         sigaction.
656
657         Improve robustness of sigprocmask by overriding signal.
658         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
659         is in use.
660         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
661         (SIGKILL, SIGSTOP): Provide fallbacks.
662         (rpl_signal): Implement.
663         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
664         signal can be called inside handlers.
665
666         Fix nanosleep module on mingw.
667         * modules/nanosleep (Depends-on): Add sys_select.
668         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
669
670         Fix licensing of sigprocmask.
671         * modules/raise (License): Relicense as LGPL.
672
673 2008-06-21  Bruno Haible  <bruno@clisp.org>
674
675         * lib/propername.c (proper_name_utf8): Don't use the transliterated
676         result if it contains question marks.
677         Reported by Michael Geng <linux@michaelgeng.de>.
678
679 2008-06-19  Bruno Haible  <bruno@clisp.org>
680
681         Fix CVS-ism.
682         * doc/gnulib.texi: Include updated-stamp.texi.
683         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
684         (updated-stamp.texi): New rule.
685         (gnulib.info): Depend on it.
686         * doc/.gitignore: Add updated-stamp.texi.
687         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
688
689 2008-06-19  Bruno Haible  <bruno@clisp.org>
690
691         * doc/Makefile (gnulib.info): Update and simplify dependencies.
692         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
693
694 2008-06-19  Eric Blake  <ebb9@byu.net>
695
696         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
697         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
698         Reported by Stepan Kasal.
699
700 2008-06-18  Bruno Haible  <bruno@clisp.org>
701
702         * lib/fatal-signal.c (init_fatal_signals): Add comment.
703         Reported by Eric Blake.
704
705 2008-06-18  Eric Blake  <ebb9@byu.net>
706
707         Work around cygwin 1.5.25 strsignal bug.
708         * tests/test-strsignal.c: Allow for const char *.
709         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
710
711 2008-06-18  Simon Josefsson  <simon@josefsson.org>
712
713         * users.txt: Update URL to article and add author/date
714         information.
715
716 2008-06-17  Bruno Haible  <bruno@clisp.org>
717
718         New macro gl_DISABLE_THREADS.
719         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
720         if the user did not pass --enable-threads or --disable-threads option.
721         (gl_DISABLE_THREADS): New macro.
722         Reported by Eric Blake <ebb9@byu.net>.
723
724 2008-06-17  Bruno Haible  <bruno@clisp.org>
725
726         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
727         when the macro ignores it.
728         Based on a patch by Eric Blake <ebb9@byu.net>.
729
730 2008-06-17  Bruno Haible  <bruno@clisp.org>
731
732         * modules/tls (License): Change to LGPLv2+.
733         Reported by Eric Blake.
734
735 2008-06-17  Eric Blake  <ebb9@byu.net>
736
737         Simplify c-stack prerequisites.
738         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
739         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
740         no longer requires <ucontext.h> to exist.  Optimize setrlimit
741         check.
742         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
743         <sys/resource.h>.
744
745         Move c-stack test into testsuite.
746         * modules/c-stack-tests: New file.
747         * lib/c-stack.c [DEBUG]: Move test program...
748         * tests/test-c-stack.c: ...into this new file.  Skip rather than
749         fail test if sigaltstack is lacking.
750         * tests/test-c-stack.sh: New driver file.
751
752 2008-06-16  Eric Blake  <ebb9@byu.net>
753
754         Use raise module consistently.
755         * modules/fatal-signal (Depends-on): Add raise.
756         * modules/sigprocmask (Depends-on): Likewise.
757         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
758         * lib/sigprocmask.c (sigprocmask): Likewise.
759         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
760         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
761
762         Fix compliance bug in sigpending.
763         * lib/sigprocmask.c (sigpending): Return pending array via
764         parameter, not return value.
765
766 2008-06-14  Eric Blake  <ebb9@byu.net>
767
768         Improve obstack-printf test code.
769         * tests/test-obstack-printf.c (test_function): Fix comment, and
770         simplify usage of obstack_* in macros.  Add a test for coverage.
771         Reported by Bruno Haible.
772
773 2008-06-14  Bruno Haible  <bruno@clisp.org>
774
775         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
776         array size as a constant, not as a const variable.
777         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
778         AC_USE_SYSTEM_EXTENSIONS.
779         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
780         Test whether the obstack_printf function actually exists.
781         * modules/obstack-printf (Depends-on): Add extensions.
782         (Include): Remove obstack.h.
783         * modules/obstack-printf-posix (Depends-on): Add extensions.
784         (Include): Remove obstack.h.
785
786 2008-06-13  Eric Blake  <ebb9@byu.net>
787
788         Add obstack-printf and obstack-printf-posix modules.
789         * modules/obstack-printf: New file.
790         * modules/obstack-printf-posix: Likewise.
791         * MODULES.html.sh (Misc): Mention them.
792         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
793         Likewise.
794         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
795         Likewise.
796         * modules/stdio (Makefile.am): Accomodate new modules.
797         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
798         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
799         Declare.
800         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
801         functions.
802         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
803         (gl_REPLACE_OBSTACK_PRINTF): New macros
804         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
805         * tests/test-obstack-printf.c: New file.
806         * modules/obstack-printf-tests: Likewise.
807         * modules/obstack-printf-posix-tests: Likewise.
808
809 2008-06-11  Bruno Haible  <bruno@clisp.org>
810
811         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
812         * lib/open.c: Include errno.h.
813         (open): Fail when attempting to write to a file that has a trailing
814         slash.
815         * tests/test-open.c (main): Test against trailing slash bug.
816         * doc/posix-functions/open.texi: Mention the trailing slash bug.
817
818 2008-06-10  Bruno Haible  <bruno@clisp.org>
819
820         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
821         for $? to work inside the trap command, with various /bin/sh-s.
822         * tests/test-vc-list-files-cvs.sh: Likewise.
823
824 2008-06-10  Bruno Haible  <bruno@clisp.org>
825
826         * lib/acl-internal.h: Don't include gettext.h here.
827         * lib/set-mode-acl.c: Include gettext.h here.
828         * lib/copy-acl.c: Likewise.
829
830 2008-06-10  Bruno Haible  <bruno@clisp.org>
831
832         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
833         * lib/wait-process.c (wait_subprocess): Likewise.
834         * lib/execute.h (execute): Add termsigp argument.
835         * lib/execute.c (execute): Likewise.
836         * lib/csharpcomp.c (compile_csharp_using_pnet,
837         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
838         * lib/csharpexec.c (execute_csharp_using_pnet,
839         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
840         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
841         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
842         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
843         is_jikes_present): Update.
844         * lib/javaexec.c (execute_java_class): Update.
845         * lib/javaversion.c (execute_and_read_line): Update.
846         * NEWS: Document the changes.
847         Reported by Eric Blake.
848
849 2008-06-10  Eric Blake  <ebb9@byu.net>
850
851         Add missing include.
852         * tests/test-strstr.c (includes): Add <signal.h>.
853         * tests/test-strcasestr.c (includes): Likewise.
854         * tests/test-memmem.c (includes): Likewise.
855
856 2008-06-10  Bruno Haible  <bruno@clisp.org>
857
858         * lib/wait-process.c (wait_subprocess): Add an assertion.
859
860 2008-06-10  Bruno Haible  <bruno@clisp.org>
861
862         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
863
864 2008-06-10  Bruno Haible  <bruno@clisp.org>
865
866         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
867         using alarm().
868         * tests/test-strcasestr.c (main): Likewise.
869         * tests/test-strstr.c (main): Likewise.
870
871 2008-06-09  Bruno Haible  <bruno@clisp.org>
872
873         Work around the Solaris 10 ACE ACLs ABI change.
874         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
875         declare if ACL_NO_TRIVIAL is present.
876         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
877         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
878         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
879         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
880         define if ACL_NO_TRIVIAL is present.
881         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
882         and use the current ABI.
883         (file_has_acl): Use same #if condition as elsewhere.
884         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
885         in use, and use the current ABI.
886         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
887         Reported by Jim Meyering.
888
889 2008-06-09  Eric Blake  <ebb9@byu.net>
890
891         Work around environments that (stupidly) ignore SIGALRM.
892         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
893         before using alarm().
894         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
895         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
896         Reported by Ian Beckwith <ianb@erislabs.net>.
897
898         Produce autobuild blurb earlier in log.
899         * modules/autobuild (configure.ac-early): Move AB_INIT here.
900
901 2008-06-09  Jim Meyering  <meyering@redhat.com>
902         and OndÅ™ej Vašík  <ovasik@redhat.com>
903
904         utimens.c: correct kernel bug work-around
905         OndÅ™ej Vašík found that the invalid return value of 280 indicates
906         failure, not success, and the kernel bug we're trying to work
907         around affects not just the utimensat call, but also the fallback
908         futimens call.
909         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
910         not success.
911         [HAVE_FUTIMENS]: Use the same work-around, here.
912
913 2008-06-09  Jim Meyering  <meyering@redhat.com>
914
915         add more guards around definition of ACE_-related code
916         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
917         ALLOW and ACE_OWNER are also defined.
918
919 2008-06-08  Bruno Haible  <bruno@clisp.org>
920
921         * lib/acl-internal.h: Add me as co-author.
922         * lib/file-has-acl.c: Likewise.
923         * lib/set-mode-acl.c: Likewise.
924         * lib/copy-acl.c: Likewise.
925
926 2008-06-08  Bruno Haible  <bruno@clisp.org>
927
928         Add support for AIX ACLs.
929         * lib/acl-internal.h (acl_nontrivial): New declaration.
930         * lib/file-has-acl.c (acl_nontrivial): New function.
931         (file_has_acl): Add implementation using AIX 4 ACL API.
932         * lib/set-mode-acl.c (qset_acl): Likewise.
933         * lib/copy-acl.c (qcopy_acl): Likewise.
934
935 2008-06-08  Bruno Haible  <bruno@clisp.org>
936
937         Add support for HP-UX ACLs.
938         * lib/acl-internal.h (acl_nontrivial): New declaration.
939         * lib/file-has-acl.c (acl_nontrivial): New function.
940         (file_has_acl): Add implementation using HP-UX 11 ACL API.
941         * lib/set-mode-acl.c (qset_acl): Likewise.
942         * lib/copy-acl.c (qcopy_acl): Likewise.
943
944 2008-06-08  Bruno Haible  <bruno@clisp.org>
945
946         Add support for Cygwin ACLs.
947         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
948         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
949         the chmod_or_fchmod call.
950         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
951
952 2008-06-08  Bruno Haible  <bruno@clisp.org>
953
954         Fix bug with setuid modes in Solaris 10+ code.
955         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
956         succeeded, when the mode contains some special bits.
957
958 2008-06-08  Bruno Haible  <bruno@clisp.org>
959
960         Add support for Solaris 7..10 ACLs.
961         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
962         declarations.
963         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
964         functions.
965         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
966         * lib/set-mode-acl.c (qset_acl): Likewise.
967         * lib/copy-acl.c (qcopy_acl): Likewise.
968
969 2008-06-08  Bruno Haible  <bruno@clisp.org>
970
971         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
972         declaration.
973         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
974         (acl_access_nontrivial): Remove MacOS X case.
975         (file_has_acl): Use acl_extended_nontrivial.
976         * lib/copy-acl.c (qcopy_acl): Likewise.
977
978 2008-06-08  Bruno Haible  <bruno@clisp.org>
979
980         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
981
982 2008-06-08  Jim Meyering  <meyering@redhat.com>
983
984         * modules/acl (Maintainer): Add Bruno Haible.
985
986 2008-06-07  Bruno Haible  <bruno@clisp.org>
987
988         Improve support for Tru64 ACLs.
989         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
990         ACL on OSF/1.
991
992 2008-06-07  Bruno Haible  <bruno@clisp.org>
993
994         Add support for MacOS X ACLs.
995         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
996         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
997         * lib/set-mode-acl.c (qset_acl): Likewise.
998         * lib/copy-acl.c (qcopy_acl): Likewise.
999
1000 2008-06-07  Bruno Haible  <bruno@clisp.org>
1001
1002         Fix memory leak introduced on 2008-05-22.
1003         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
1004         use.
1005
1006 2008-06-07  Bruno Haible  <bruno@clisp.org>
1007
1008         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
1009         to construct an empty ACL.
1010
1011 2008-06-07  Bruno Haible  <bruno@clisp.org>
1012
1013         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
1014         precisely.
1015         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
1016
1017 2008-06-07  Bruno Haible  <bruno@clisp.org>
1018
1019         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
1020         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
1021
1022 2008-06-07  Bruno Haible  <bruno@clisp.org>
1023
1024         * doc/posix-functions/_setjmp.texi: Explain the use of this function
1025         regardless of POSIX.
1026         * doc/posix-functions/_longjmp.texi: Likewise.
1027         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
1028         SystemV platform in this case.
1029
1030 2008-06-06  Eric Blake  <ebb9@byu.net>
1031
1032         Document abort() bugs.
1033         * doc/posix-functions/abort.texi (abort): Mention anomalies.
1034
1035         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
1036         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
1037         sigsetjmp.
1038         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
1039         siglongjmp, but only as a macro.
1040         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
1041         is obsolete.
1042         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
1043
1044         Tweak documentation to cover cygwin argz bugs.
1045         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
1046         argz bug fix; no code change needed since no cygwin releases
1047         occurred between the last fix and the bug being tested.
1048         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
1049         module and recently fixed cygwin bugs.
1050         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
1051         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
1052         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
1053         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
1054         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
1055         Likewise.
1056         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
1057         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
1058         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
1059         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
1060         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
1061         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
1062         Likewise.
1063
1064         Avoid gcc warning on cygwin.
1065         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
1066         !ACL_NO_TRIVIAL]: Avoid unused variable.
1067
1068 2008-06-05  Eric Blake  <ebb9@byu.net>
1069
1070         Be tolerant of UNKNOWN version in gnulib-tool test dir.
1071         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
1072         git-version-gen fails to come up with a version.
1073         Reported by Simon Josefsson.
1074
1075 2008-06-05  Jim Meyering  <meyering@redhat.com>
1076             Paul Eggert  <eggert@cs.ucla.edu>
1077
1078         utimens.c: work around a probable Linux kernel bug
1079         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
1080         appears to be a kernel bug that causes utimensat to return 280
1081         instead of 0, indicating success.
1082
1083 2008-06-04  Bruno Haible  <bruno@clisp.org>
1084
1085         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
1086         2008-06-01 commit.
1087
1088 2008-06-04  Bruno Haible  <bruno@clisp.org>
1089
1090         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
1091         * lib/file-has-acl.c (acl_access_nontrivial): New function.
1092         (file_has_acl): Use it. Save errno afterwards.
1093         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
1094
1095 2008-06-03  Bruno Haible  <bruno@clisp.org>
1096
1097         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
1098         draft code. Simplify #ifs.
1099         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
1100         Put Solaris code after POSIX-draft code. Fix comments regarding
1101         Solaris 10, HP-UX. Mention Cygwin.
1102         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
1103
1104 2008-06-03  Eric Blake  <ebb9@byu.net>
1105
1106         Provide fallback for older kernels.
1107         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
1108         Provide runtime fallback if kernel lacks support.
1109         Reported by Mike Frysinger.
1110
1111 2008-06-02  Bruno Haible  <bruno@clisp.org>
1112
1113         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
1114         it exists.
1115
1116 2008-06-02  Bruno Haible  <bruno@clisp.org>
1117
1118         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
1119         * lib/copy-acl.c (qcopy_acl): Update comment.
1120
1121 2008-06-02  Bruno Haible  <bruno@clisp.org>
1122
1123         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
1124         like ACL APIs.
1125
1126 2008-06-02  Bruno Haible  <bruno@clisp.org>
1127
1128         * tests/test-file-has-acl.sh: Use different code for Cygwin.
1129         * tests/test-set-mode-acl.sh: Likewise.
1130         * tests/test-copy-acl.sh: Likewise.
1131         * tests/test-copy-file.sh: Likewise.
1132
1133 2008-06-02  Bruno Haible  <bruno@clisp.org>
1134
1135         * tests/test-file-has-acl.sh: Remove unused code.
1136
1137 2008-06-01  Bruno Haible  <bruno@clisp.org>
1138
1139         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
1140         (copy_acl): Just a wrapper around qcopy_acl that emits the error
1141         messages.
1142         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
1143
1144 2008-06-01  Bruno Haible  <bruno@clisp.org>
1145
1146         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
1147         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
1148         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
1149         APIs.
1150         * modules/acl-tests (configure.ac): Remove tests now contained in
1151         m4/acl.m4.
1152
1153 2008-06-02  Jim Meyering  <meyering@redhat.com>
1154
1155         announce-gen: use a better key-server host name
1156         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
1157         it may be more consistently reliable.  Suggested by Werner Koch
1158         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
1159
1160 2008-06-01  Bruno Haible  <bruno@clisp.org>
1161
1162         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
1163         Reported by Voroskoi Andras <voroskoi@gmail.com>.
1164
1165 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
1166
1167         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
1168
1169 2008-06-01  Bruno Haible  <bruno@clisp.org>
1170
1171         New ACL tests.
1172         * tests/test-file-has-acl.sh: New file.
1173         * tests/test-file-has-acl.c: New file.
1174         * tests/test-set-mode-acl.sh: New file.
1175         * tests/test-set-mode-acl.c: New file.
1176         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
1177         * tests/test-copy-acl.c: New file.
1178         * modules/acl-tests: New file, based on modules/copy-file-tests.
1179         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
1180         (Depends-on): Add acl-tests.
1181         (configure.ac): Remove checks.
1182         (Makefile.am): Don't create test-sameacls program here any more.
1183
1184 2008-06-01  Bruno Haible  <bruno@clisp.org>
1185
1186         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
1187         * tests/test-sameacls.c: Include progname.h.
1188         (main): Invoke set_program_name. Portability fixes for MacOS X,
1189         Solaris, HP-UX.
1190
1191 2008-06-01  Bruno Haible  <bruno@clisp.org>
1192
1193         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
1194         function.
1195         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
1196
1197 2008-06-01  Bruno Haible  <bruno@clisp.org>
1198
1199         * modules/rpmatch (Depends-on): Add strdup.
1200
1201 2008-06-01  Bruno Haible  <bruno@clisp.org>
1202
1203         * lib/pipe.c: Include unistd-safer.h.
1204         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
1205         * modules/pipe (Depends-on): Add unistd-safer.
1206
1207 2008-05-30  Simon Josefsson  <simon@josefsson.org>
1208
1209         * modules/autobuild (configure.ac): Call AB_INIT.
1210
1211 2008-05-30  Simon Josefsson  <simon@josefsson.org>
1212
1213         * tests/test-getaddrinfo.c: Don't print debug messages by default.
1214         Suggested by Bruno Haible <bruno@clisp.org>.
1215
1216 2008-05-30  Simon Josefsson  <simon@josefsson.org>
1217
1218         * tests/test-base64.c: Cast size_t to unsigned long when invoking
1219         printf.  Use %lu instead of %d.  Reported by Bruno Haible
1220         <bruno@clisp.org>.
1221
1222 2008-05-29  Eric Blake  <ebb9@byu.net>
1223
1224         Prefer new POSIX 200x interfaces over futimesat.
1225         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
1226         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
1227         when available.
1228         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
1229
1230 2008-05-28  Bruno Haible  <bruno@clisp.org>
1231
1232         * modules/stpcpy (License): Change to LGPLv2+.
1233         Requested by David Lutterkort <dlutter@redhat.com>.
1234
1235 2008-05-27  Bruno Haible  <bruno@clisp.org>
1236
1237         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
1238         current mingw.
1239         Reported by Jose E. Marchesi <jemarch@gnu.org>.
1240
1241 2008-05-27  Bruno Haible  <bruno@clisp.org>
1242
1243         * modules/iconv_open (Link): New section, from module 'iconv'.
1244         * modules/striconv (Link): Likewise.
1245         * modules/striconveh (Link): Likewise.
1246         * modules/xstriconv (Link): Likewise.
1247         * modules/unicodeio (Link): Likewise.
1248         * modules/propername (Link): Likewise.
1249         Reported by Jim Meyering.
1250
1251 2008-05-26  Jim Meyering  <meyering@redhat.com>
1252
1253         sha256: do not artificially restrict buffer length to be < 2^32
1254         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
1255         uint32_t to size_t.
1256         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
1257         to match.
1258
1259         avoid unaligned access errors, e.g., on sparc
1260         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
1261         direct access through a possibly-unaligned uint64* pointer.
1262         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
1263         direct access through a possibly-unaligned uint32* pointer.
1264         Prompted by this patch from Tom "spot" Callaway:
1265         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
1266
1267         sha512.c: fix typo in comment
1268         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
1269
1270 2008-05-25  Bruno Haible  <bruno@clisp.org>
1271
1272         * lib/set-mode-acl.c: Renamed from lib/acl.c.
1273         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
1274         (Makefile.am): Update lib_SOURCES.
1275
1276 2008-05-25  Bruno Haible  <bruno@clisp.org>
1277
1278         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
1279
1280 2008-05-25  Jim Meyering  <meyering@redhat.com>
1281
1282         useless-if-before-free: freed expr may have white-space differences
1283         * build-aux/useless-if-before-free: Recognize cases in which the
1284         freed expression differs from the tested one in embedded white
1285         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
1286         $1 was used, so we can't make any regexp shy.  Improved tests now
1287         detect this.
1288
1289         useless-if-before-free: accept white space in the expression.
1290         * build-aux/useless-if-before-free: For now, any white space
1291         in the expression must be identical in the free argument.
1292
1293         useless-if-before-free: efficiency tweak
1294         * build-aux/useless-if-before-free: Make the expression-matching
1295         regexp "shy".
1296         Make the *outer* regexp shy, not the expr-matching one.
1297
1298         update code-in-comment to accept cast of free arg
1299         * build-aux/useless-if-before-free: Update regexp.
1300
1301 2008-05-25  Bruno Haible  <bruno@clisp.org>
1302
1303         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
1304         * modules/copy-file-tests (Files, Makefile.am): Update.
1305         * tests/test-copy-file.c (func_test_copy): Update.
1306
1307 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
1308
1309         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
1310
1311 2008-05-23  Bruno Haible  <bruno@clisp.org>
1312
1313         Improve support for ACLs on OSF/1.
1314         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
1315         Remove fallback for unknown flavors of ACLs.
1316
1317 2008-05-22  Bruno Haible  <bruno@clisp.org>
1318
1319         Add support for ACLs on OSF/1.
1320         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
1321         replacements.
1322         (acl_free_text): New macro fallback.
1323         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
1324         acl_free.
1325         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
1326         acl_free_text function. Require AC_C_INLINE.
1327
1328 2008-05-22  Bruno Haible  <bruno@clisp.org>
1329
1330         Make copy_acl work on MacOS X 10.5.
1331         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
1332         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
1333         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
1334         If MODE_INSIDE_ACL, don't assume that every system has the same text
1335         representation for ACLs as FreeBSD.
1336         * lib/copy-acl.c (copy_acl): Add support for platforms with
1337         !MODE_INSIDE_ACL.
1338         * lib/file-has-acl.c (file_has_acl): Likewise.
1339         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
1340         FreeBSD, MacOS X, or IRIX, respectively.
1341
1342 2008-05-22  Bruno Haible  <bruno@clisp.org>
1343
1344         * lib/acl.h: Don't include <sys/acl.h>.
1345         (GETACLCNT): Move fallback to lib/acl-internal.h.
1346         * lib/acl-internal.h: Include <sys/acl.h> here.
1347         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
1348
1349 2008-05-22  Bruno Haible  <bruno@clisp.org>
1350
1351         Split off copy_acl function to separate file.
1352         * lib/copy-acl.c: New file, extracted from lib/acl.c.
1353         * lib/acl.c (copy_acl): Moved function to separate file.
1354         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
1355         * modules/acl (Files): Add lib/copy-acl.c.
1356         (Makefiles.am): Augment lib_SOURCES.
1357
1358 2008-05-22  Bruno Haible  <bruno@clisp.org>
1359
1360         * modules/copy-file-tests: New file.
1361         * tests/test-copy-file.sh: New file.
1362         * tests/test-copy-file.c: New file.
1363         * tests/test-copy-file-sameacls.c: New file.
1364
1365 2008-05-22  Eric Blake  <ebb9@byu.net>
1366
1367         Avoid gcc warning.
1368         * tests/test-memcmp.c (main): Pass NULL indirectly.
1369
1370 2008-05-21  Bruno Haible  <bruno@clisp.org>
1371
1372         Add reference doc about ACLs.
1373         * doc/acl-resources.txt: New file.
1374         * doc/acl-cygwin.txt: New file.
1375
1376 2008-05-21  Bruno Haible  <bruno@clisp.org>
1377
1378         Avoid one more warning from gcc.
1379         * lib/vasnprintf.c (IF_LINT): Update comments.
1380         (VASNPRINTF): Use it also for the 'prefix' array initializer.
1381
1382 2008-05-21  Jim Meyering  <meyering@redhat.com>
1383
1384         avoid a warning from gcc
1385         * lib/vasnprintf.c (IF_LINT): Define.
1386         (scale10_round_decimal_long_double):
1387         Use it to avoid a "may be used uninitialized" warning.
1388         (scale10_round_decimal_double): Likewise.
1389
1390 2008-05-21  Simon Josefsson  <simon@josefsson.org>
1391
1392         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
1393         declared.
1394
1395 2008-05-20  Bruno Haible  <bruno@clisp.org>
1396
1397         * tests/test-memcmp.c (main): Test also the sign of the result. Test
1398         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
1399
1400 2008-05-20  Simon Josefsson  <simon@josefsson.org>
1401
1402         * modules/memcmp-tests: New file.
1403         * tests/test-memcmp.c: New file.
1404
1405 2008-05-19  Bruno Haible  <bruno@clisp.org>
1406
1407         * modules/propername (Notice, configure.ac): Put quoted "..." into
1408         --keyword option.
1409         * lib/propername.h: Update comments accordingly.
1410         Reported by Eric Blake.
1411
1412 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
1413
1414         * modules/getpass-gnu (Depends-on): Add fseeko.
1415
1416 2008-05-19  Simon Josefsson  <simon@josefsson.org>
1417
1418         * modules/base64-tests: New file.
1419
1420 2008-05-19  Bo Borgerson <gigabo@gmail.com>
1421
1422         * lib/base64.c (base64_decode_ctx): If a decode context structure
1423         was passed in use it to ignore newlines.  If a context structure
1424         was _not_ passed in, continue to treat newlines as garbage (this
1425         is the historical behavior).  Formerly base64_decode.
1426         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
1427         takes a decode context structure.
1428         * lib/base64.h (base64_decode): Macro for four-argument calls.
1429         (base64_decode_alloc): Likewise.
1430         * lib/base64.c (base64_decode_ctx): If a decode context structure
1431         was passed in use it to ignore newlines.  If a context structure
1432         was _not_ passed in, continue to treat newlines as garbage (this
1433         is the historical behavior).  Formerly base64_decode.
1434         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
1435         takes a decode context structure.
1436         * lib/base64.h (base64_decode): Macro for four-argument calls.
1437         (base64_decode_alloc): Likewise.
1438
1439 2008-05-19  Jim Meyering  <meyering@redhat.com>
1440
1441         avoid a warning from gcc
1442         * lib/trim.c (IF_LINT): Define.
1443         (trim2): Use it to avoid a "may be used uninitialized" warning.
1444
1445         Fix doc typo.
1446         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
1447
1448 2008-05-19  Bruno Haible  <bruno@clisp.org>
1449
1450         * doc/glibc-functions/getpass.texi: Document limits of other
1451         implementations.
1452
1453 2008-05-19  Simon Josefsson  <simon@josefsson.org>
1454             Bruno Haible <bruno@clisp.org>
1455
1456         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
1457
1458 2008-05-18  Bruno Haible  <bruno@clisp.org>
1459
1460         * modules/propername: New file, from GNU gettext.
1461         * lib/propername.h: New file, from GNU gettext.
1462         * lib/propername.c: New file, from GNU gettext.
1463         * MODULES.html.sh (Internationalization functions): Add propername.
1464
1465 2008-05-16  Jim Meyering  <meyering@redhat.com>
1466             Bruno Haible  <bruno@clisp.org>
1467
1468         Avoid some warnings from "gcc -Wshadow".
1469         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
1470
1471 2008-05-15  Eric Blake  <ebb9@byu.net>
1472
1473         Extend previous patch to cygwin 1.7.0.
1474         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
1475         fast implementation in cygwin >= 1.7.0.
1476         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
1477         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
1478
1479 2008-05-15  Bruno Haible  <bruno@clisp.org>
1480
1481         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
1482         implementation in glibc >= 2.9.
1483         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
1484         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
1485
1486 2008-05-15  Bruno Haible  <bruno@clisp.org>
1487
1488         * MODULES.html.sh (Internationalization functions): Remove linebreak.
1489         (Unicode string functions): Add unilbrk/*.
1490         Reported by Karl Berry.
1491
1492 2008-05-15  Eric Blake  <ebb9@byu.net>
1493
1494         Fix violation of <stdbool.h> replacement in regex.
1495         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
1496         * lib/regexec.c (re_search_internal): Likewise.
1497         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
1498
1499 2008-05-15  Jim Meyering  <meyering@redhat.com>
1500
1501         avoid distracting test output when git or cvs is not found
1502         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
1503         * tests/test-vc-list-files-git.sh: Likewise.
1504
1505 2008-05-15  Eric Blake  <ebb9@byu.net>
1506
1507         Glibc finally accepted the memmem speedup code, bugzilla #5514.
1508         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
1509         glibc version.
1510         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
1511         * doc/posix-functions/strstr.texi (strstr): Likewise.
1512         * lib/str-two-way.h (MAX): Sychronize with glibc.
1513
1514 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
1515
1516         * lib/regcomp.c (optimize_utf8): Add a note on why we test
1517         opr.ctx_type.
1518         (calc_first): Initialize constraint field.
1519         (duplicate_node_closure): Use it instead of special casing ANCHORS.
1520         Fix grammar.
1521         (duplicate_node): Merge constraint field for all node types.
1522         (calc_eclosure_iter): Look at constraint field for all node types.
1523         * lib/regex_internal.c (create_cd_newstate): Don't look at
1524         opr.ctx_type.
1525
1526 2008-05-14  Bruno Haible  <bruno@clisp.org>
1527
1528         Help GCC to do better code generation.
1529         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
1530         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
1531         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
1532         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
1533         Declare with attribute 'malloc' if supported.
1534
1535 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
1536
1537         use "echo STR|wc -c" rather than unportable "expr length STR"
1538         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
1539         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
1540
1541 2008-05-14  Jim Meyering  <meyering@redhat.com>
1542
1543         use dd ibs=$n count=1 ... rather than less-portable head -c$n
1544         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
1545         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
1546         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
1547         via Collin Lasse.
1548
1549 2008-05-14  Eric Blake  <ebb9@byu.net>
1550
1551         Avoid quadratic growth in gl_LIBSOURCES.
1552         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
1553         Suggested by Bruno Haible.
1554
1555         Test xmemdup0.
1556         * modules/xmemdup0-tests: New file.
1557         * tests/test-xmemdup0.c: Likewise.
1558
1559 2008-05-13  Eric Blake  <ebb9@byu.net>
1560
1561         Split xmemdup0 into its own module.
1562         * modules/xmemdup0: New file.
1563         * lib/xmemdup0.h: Likewise.
1564         * lib/xmemdup0.c: Likewise.
1565         * MODULES.html.sh (Memory management functions): Add xmemdup0.
1566         * lib/xalloc.h (xmemdup0): Remove.
1567         * lib/xmalloc.c (xmemdup0): Likewise.
1568
1569 2008-05-13  Eric Blake  <ebb9@byu.net>
1570             Bruno Haible  <bruno@clisp.org>
1571
1572         Reduce number of forks required during autoconf.
1573         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
1574         and gl_LIBSOURCES_DIR.
1575         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
1576         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
1577         m4_syscmd per file.
1578         <m4_foreach_w>: Move...
1579         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
1580
1581 2008-05-13  Eric Blake  <ebb9@byu.net>
1582
1583         * gnulib-tool: Fix various comment typos.
1584
1585 2008-05-12  Bruno Haible  <bruno@clisp.org>
1586
1587         Tailor the linebreaking algorithm.
1588         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
1589
1590 2008-05-12  Bruno Haible  <bruno@clisp.org>
1591
1592         Update to Unicode 5.0.0.
1593         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
1594         LBP_JV, LBP_JT. Redistribute values.
1595         (unilbrk_table): Change size.
1596         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
1597         Unicode TR#14 rev. 22.
1598         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
1599         LBP_JV, LBP_JT. Redistribute values.
1600         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
1601         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
1602         Update.
1603         * lib/unilbrk/lbrkprop1.h: Regenerated.
1604         * lib/unilbrk/lbrkprop2.h: Regenerated.
1605         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
1606         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
1607         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
1608         Likewise.
1609         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
1610         Likewise.
1611         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
1612         result.
1613         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
1614         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
1615         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
1616         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
1617         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
1618         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
1619
1620 2008-05-11  Bruno Haible  <bruno@clisp.org>
1621
1622         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
1623
1624 2008-05-11  Bruno Haible  <bruno@clisp.org>
1625
1626         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
1627         * modules/unilbrk/gen-lbrk: New file.
1628
1629 2008-05-11  Bruno Haible  <bruno@clisp.org>
1630
1631         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
1632         * m4/sha512.m4 (gl_SHA512): Likewise.
1633
1634 2008-05-11  Jim Meyering  <meyering@redhat.com>
1635
1636         New modules: crypto/sha256, crypto/sha512 (from coreutils)
1637         * modules/crypto/sha256: New file.
1638         * modules/crypto/sha512: Likewise.
1639         * lib/sha256.c: Likewise.
1640         * lib/sha256.h: Likewise.
1641         * lib/sha512.c: Likewise.
1642         * lib/sha512.h: Likewise.
1643         * lib/u64.h: Likewise.
1644         * m4/sha256.m4: Likewise.
1645         * m4/sha512.m4: Likewise.
1646         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
1647
1648 2008-05-10  Bruno Haible  <bruno@clisp.org>
1649
1650         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
1651         (Input/Output <stdio.h>): Add xprintf.
1652         (Signal handling <signal.h>): Add strsignal.
1653         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
1654         (Core language properties): Add func.
1655         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
1656         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
1657         strings.
1658         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
1659         (Input/output): New section.
1660         (File system functions): Add openat-die, stat-macros.
1661         (Networking functions): Add sockets.
1662         (Unicode string functions): Add unictype/*.
1663         (Support for building libraries and executables): Add gperf.
1664         (Support for building documentation): Add agpl-3.0.
1665         (Misc): Add nocrash.
1666
1667 2008-05-10  Bruno Haible  <bruno@clisp.org>
1668
1669         * modules/unictype/gen-ctype: New file.
1670
1671 2008-05-10  Jim Meyering  <meyering@redhat.com>
1672
1673         Make chdir-safer.c more efficient on a system with no symlinks.
1674         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
1675         also if ELOOP is zero.  Suggested by Bruno Haible.
1676
1677         Make chdir-safer.c slightly safer.
1678         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
1679         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
1680
1681         Avoid compile failure on systems without ELOOP (like mingw).
1682         * lib/chdir-safer.c (ELOOP): Define if not already defined.
1683         Reported by Bruno Haible.
1684
1685 2008-05-10  Bruno Haible  <bruno@clisp.org>
1686
1687         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
1688         (is_utf8_encoding): Use a case-insensitive comparison.
1689         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
1690         streq.
1691
1692 2008-05-10  Bruno Haible  <bruno@clisp.org>
1693
1694         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
1695         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
1696         * lib/unilbrk/ulc-common.h (iconv_string_length,
1697         iconv_string_keeping_offsets): Remove declarations.
1698         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
1699         Don't include <iconv.h>, streq.h, xsize.h.
1700         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
1701         conversion.
1702         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
1703         <iconv.h>, streq.h, xsize.h.
1704         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
1705         conversion.
1706         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
1707         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
1708         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
1709         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
1710
1711 2008-05-10  Bruno Haible  <bruno@clisp.org>
1712
1713         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
1714         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
1715
1716         * modules/unilbrk/u32-width-linebreaks-tests: New file.
1717         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
1718
1719         * modules/unilbrk/u16-width-linebreaks-tests: New file.
1720         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
1721
1722         * modules/unilbrk/u8-width-linebreaks-tests: New file.
1723         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
1724
1725         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
1726         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
1727
1728         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
1729         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
1730
1731         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
1732         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
1733
1734         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
1735         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
1736
1737 2008-05-10  Bruno Haible  <bruno@clisp.org>
1738
1739         Split up 'linebreak' module.
1740         * lib/unilbrk.h: New file, based on lib/linebreak.h.
1741         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
1742         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
1743         modifications.
1744         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
1745         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
1746         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
1747         lib/linebreak.c.
1748         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
1749         lib/linebreak.c.
1750         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
1751         lib/linebreak.c.
1752         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
1753         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
1754         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
1755         lib/linebreak.c.
1756         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
1757         lib/linebreak.c.
1758         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
1759         lib/linebreak.c.
1760         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
1761         lib/linebreak.c.
1762         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
1763         lib/linebreak.c.
1764         * modules/unilbrk/base: New file.
1765         * modules/unilbrk/tables: New file.
1766         * modules/unilbrk/u8-possible-linebreaks: New file.
1767         * modules/unilbrk/u16-possible-linebreaks: New file.
1768         * modules/unilbrk/u32-possible-linebreaks: New file.
1769         * modules/unilbrk/ulc-common: New file.
1770         * modules/unilbrk/ulc-possible-linebreaks: New file.
1771         * modules/unilbrk/u8-width-linebreaks: New file.
1772         * modules/unilbrk/u16-width-linebreaks: New file.
1773         * modules/unilbrk/u32-width-linebreaks: New file.
1774         * modules/unilbrk/ulc-width-linebreaks: New file.
1775         * lib/linebreak.h: Remove file.
1776         * lib/linebreak.c: Remove file.
1777         * m4/linebreak.m4: Remove file.
1778         * modules/linebreak: Remove file.
1779         * NEWS: Mention the changes.
1780
1781 2008-05-09  Eric Blake  <ebb9@byu.net>
1782
1783         Add xmemdup0.
1784         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
1785         implementation.
1786         * lib/xmalloc.c (xmemdup0): New C implementation.
1787
1788 2008-05-08  Bruno Haible  <bruno@clisp.org>
1789
1790         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
1791
1792 2008-05-07  Eric Blake  <ebb9@byu.net>
1793
1794         Support cross-compilation of <wctype.h>.
1795         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
1796         AC_CACHE_CHECK.
1797
1798 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
1799
1800         * build-aux/vc-list-files: Add support for bzr.
1801
1802 2008-05-03  Jim Meyering  <meyering@redhat.com>
1803
1804         avoid failed assertion with tight malloc
1805         * tests/test-getndelim2.c: Correct an off-by-one assertion.
1806
1807 2008-05-03  Simon Josefsson  <simon@josefsson.org>
1808
1809         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
1810         are needed from arpa/inet.h.
1811         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
1812         Reported by Bruno Haible.
1813
1814 2008-05-02  Jim Meyering  <meyering@redhat.com>
1815
1816         avoid compilation error on FreeBSD 6
1817         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
1818
1819 2008-05-01  Jim Meyering  <meyering@redhat.com>
1820
1821         useless-if-before-free: correct --help's exit status description
1822         * build-aux/useless-if-before-free (usage): Like grep, exit 0
1823         for one or more matches, etc.  Reported by Bruno Haible.
1824
1825         vc-list-files: make the stand-alone gnulib test work
1826         * modules/vc-list-files-tests (configure.ac):
1827         Define and AC_SUBST abs_aux_dir.
1828         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
1829         $(abs_top_srcdir) to each script and having each of them
1830         duplicate the work of setting PATH, set PATH here, using
1831         the new variable, abs_aux_dir instead.
1832         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
1833         * tests/test-vc-list-files-git.sh: Likewise.
1834         Reported by Bruno Haible.
1835
1836 2008-05-01  Bruno Haible  <bruno@clisp.org>
1837
1838         * lib/getndelim2.c (getndelim2): Fix newsize computation during
1839         reallocation. Rename 'done' to 'found_delimiter'.
1840
1841 2008-05-01  Jim Meyering  <meyering@redhat.com>
1842
1843         vc-list-files: accommodate /bin/sh like the one from Solaris 10
1844         * build-aux/vc-list-files: Use `...`, not $(...).
1845
1846 2008-04-30  Jim Meyering  <meyering@redhat.com>
1847
1848         add tests for vc-list-files
1849         * modules/vc-list-files-tests: New module.
1850         * tests/test-vc-list-files-cvs.sh: New file.
1851         * tests/test-vc-list-files-git.sh: New file.
1852
1853         avoid a warning from gcc
1854         * lib/getndelim2.c (IF_LINT): Define.
1855         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
1856
1857         vc-list-files: work properly with build-aux/cvsu, too
1858         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
1859         to all cvs-based clauses.
1860
1861         vc-list-files: work properly in the CVS+awk case, too
1862         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
1863
1864         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
1865         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
1866         take more than one file argument, so .  Add quotes, just in case $dir
1867         ever contains a shell meta-character.  Prompted by Soren Hansen in
1868         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
1869
1870 2008-04-29  Eric Blake  <ebb9@byu.net>
1871
1872         Optimize getndelim2 to use block operations when possible.
1873         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
1874         freadseek, and memchr2.
1875         * lib/getndelim2.c (getndelim2): Use them for block reads.
1876
1877 2008-04-29  Bruno Haible  <bruno@clisp.org>
1878
1879         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
1880         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
1881         * modules/inet_ntop (Depends-on): Add extensions.
1882         * modules/inet_pton (Depends-on): Likewise.
1883         Reported by Simon Josefsson.
1884
1885 2008-04-29  Jim Meyering  <meyering@redhat.com>
1886
1887         When the is more than one match in a block, match all of them.
1888         * build-aux/useless-if-before-free: Iterate through each block
1889         until there are no more matches.
1890
1891         Fix broken useless-if-before-free script.
1892         * build-aux/useless-if-before-free: Fix typo: missing "?" after
1893         the expression to match cast of argument to free-like function.
1894
1895 2008-04-29  Eric Blake  <ebb9@byu.net>
1896
1897         Use new header.
1898         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
1899
1900 2008-04-29  Jim Meyering  <meyering@redhat.com>
1901
1902         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
1903         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
1904         by gnulib to exist and to declare e.g., inet_ntop.
1905         Don't include "inet_ntop.h", now removed.
1906
1907         * m4/arpa_inet_h.m4: Remove trailing blanks.
1908
1909 2008-04-29  Eric Blake  <ebb9@byu.net>
1910
1911         Silence valgrind on safe reads beyond potential array bounds.
1912         * lib/rawmemchr.valgrind: New file.
1913         * lib/strchrnul.valgrind: Likewise.
1914         * modules/rawmemchr (Files): Distribute new file.
1915         * modules/strchrnul (Files): Likewise.
1916         Suggested by Bruno Haible.
1917
1918 2008-04-29  Bruno Haible  <bruno@clisp.org>
1919
1920         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
1921         (inet_ntop, inet_pton): Change portability warning's wording.
1922         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
1923         Invoke gl_CHECK_NEXT_HEADERS.
1924         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
1925         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
1926         set ARPA_INET_H.
1927         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
1928         * modules/arpa_inet (Description): No longer only for systems that
1929         lack it.
1930         (Depends-on): Add include_next.
1931         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
1932         HAVE_ARPA_INET_H.
1933
1934 2008-04-29  Jim Meyering  <meyering@redhat.com>
1935
1936         * modules/mkdir (License): Re-license as LGPLv2+.
1937
1938 2008-04-29  Bruno Haible  <bruno@clisp.org>
1939
1940         * modules/rawmemchr (Maintainer): Set to Eric.
1941         * modules/strchrnul (Maintainer): Likewise.
1942
1943 2008-04-29  Simon Josefsson  <simon@josefsson.org>
1944
1945         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
1946         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
1947
1948         * modules/arpa_inet (arpa/inet.h): Use them.
1949
1950 2008-04-28  Eric Blake  <ebb9@byu.net>
1951
1952         Test getndelim2.
1953         * modules/getndelim2-tests: New file.
1954         * tests/test-getndelim2.c: Likewise.
1955         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
1956         stream.
1957         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
1958
1959         * MODULES.html.sh: Document new module.
1960
1961 2008-04-20  Bruno Haible  <bruno@clisp.org>
1962
1963         * lib/c-stack.c (die): Use raise.
1964         * modules/c-stack (Depends-on): Add raise.
1965
1966 2008-04-28  Bruno Haible  <bruno@clisp.org>
1967
1968         Expect rpmatch to be declared.
1969         * lib/yesno.c (rpmatch): Remove declaration.
1970
1971         Declare rpmatch.
1972         * lib/stdlib.in.h (rpmatch): New declaration.
1973         * lib/rpmatch.c: Include <stdlib.h> first.
1974         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
1975         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
1976         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
1977         HAVE_RPMATCH.
1978         * modules/rpmatch (Depends-on): Add stdlib, extensions.
1979         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
1980         (Include): Set to <stdlib.h>.
1981         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
1982         HAVE_RPMATCH.
1983         * NEWS: Document the change.
1984
1985 2008-04-28  Bruno Haible  <bruno@clisp.org>
1986
1987         Change rpmatch to use nl_langinfo when appropriate.
1988         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
1989         (N_): New macro.
1990         (localized_pattern): New function/macro.
1991         (try): Remove match, nomatch arguments. Copy the pattern into safe
1992         memory before caching it.
1993         (rpmatch): Use localized_pattern. Add translator comments.
1994         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
1995         Suggested by Eric Blake.
1996         * modules/rpmatch (Depends-on): Add stdbool.
1997
1998 2008-04-28  Eric Blake  <ebb9@byu.net>
1999
2000         Add rawmemchr module, matching glibc.
2001         * modules/string (Makefile.am): New indicator.
2002         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
2003         * lib/string.in.h (rawmemchr): Declare when appropriate.
2004         * modules/rawmemchr: New file.
2005         * m4/rawmemchr.m4: Likewise.
2006         * lib/rawmemchr.c: Likewise.
2007         * modules/rawmemchr-tests: Likewise.
2008         * tests/test-rawmemchr.c: Likewise.
2009         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
2010         module.
2011         * modules/strchrnul (Depends-on): Add rawmemchr.
2012         * lib/strchrnul.c (strchrnul): Optimize a corner case.
2013
2014         Whitespace cleanup.
2015         * tests/test-strchrnul.c: Reindent.
2016         * lib/strchrnul.c: Likewise.
2017
2018         Optimize and test strchrnul.
2019         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
2020         * modules/strchrnul-tests: New file.
2021         * tests/test-strchrnul.c: Likewise.
2022
2023         Remove intprops dependency.
2024         * modules/memchr (Depends-on): Remove intprops.
2025         * modules/memrchr (Depends-on): Likewise.
2026         * modules/memchr2 (Depends-on): Likewise.
2027         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
2028         * lib/memrchr.c (__memrchr): Likewise.
2029         * lib/memrchr2.c (memchr2): Likewise.
2030         Reported by Simon Josefsson.
2031
2032 2008-04-28  Simon Josefsson  <simon@josefsson.org>
2033
2034         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
2035         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2036
2037 2008-04-28  Simon Josefsson  <simon@josefsson.org>
2038
2039         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
2040
2041         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
2042
2043         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
2044
2045         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
2046         declarations.
2047         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
2048
2049         * m4/inet_pton.m4: Don't check for header files.
2050
2051         * m4/inet_ntop.m4: Don't check for header files.
2052
2053 2008-04-28  Simon Josefsson  <simon@josefsson.org>
2054
2055         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
2056         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
2057         trigger for cygwin).
2058         Reported by Bruno Haible  <bruno@clisp.org>.
2059
2060 2008-04-28  Bruno Haible  <bruno@clisp.org>
2061
2062         * doc/posix-functions/strdup.texi: Mention mingw problem.
2063
2064 2008-04-27  Bruno Haible  <bruno@clisp.org>
2065
2066         * modules/stat-time-tests (Depends-on): Add sleep.
2067         * tests/test-stat-time.c (force_unlink): New function.
2068         (cleanup): Use it.
2069         (test_mtime): Remove the ctime related tests.
2070         (test_ctime): New function, containing the ctime related tests.
2071         (main): Call test_ctime, except on native Windows platforms.
2072
2073 2008-04-27  Bruno Haible  <bruno@clisp.org>
2074
2075         * lib/rpmatch.c (rpmatch): Add some comments.
2076         Reported by James Youngman <jay@gnu.org>.
2077
2078 2008-04-27  Bruno Haible  <bruno@clisp.org>
2079
2080         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
2081         quiet NaNs.
2082
2083 2008-04-27  Bruno Haible  <bruno@clisp.org>
2084
2085         Make test-yesno.sh work on mingw.
2086         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
2087         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
2088         (main): Set stdin to binary mode.
2089         * modules/yesno-tests (Depends-on): Add binary-io.
2090
2091 2008-04-27  Bruno Haible  <bruno@clisp.org>
2092
2093         Fix 'isfinite' on x86, x86_64, ia64 platforms.
2094         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
2095         argument that lie outside the IEEE 854 domain.
2096         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
2097         (gl_ISFINITE): Use it.
2098         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
2099
2100 2008-04-27  Bruno Haible  <bruno@clisp.org>
2101
2102         Allow local renaming in config.h.
2103         * lib/memrchr.c (memrchr): Don't undefine outside libc.
2104
2105 2008-04-27  Bruno Haible  <bruno@clisp.org>
2106
2107         * lib/memchr.c (__memchr): Change type of 'i'.
2108         * lib/memchr2.c (memchr2): Likewise.
2109
2110 2008-04-26  Eric Blake  <ebb9@byu.net>
2111         and Bruno Haible  <bruno@clisp.org>
2112
2113         Optimize and test memrchr.
2114         * modules/memrchr (Depends-on): Add intprops.
2115         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
2116         * modules/memrchr-tests: New file.
2117         * tests/test-memrchr.c: New file.
2118
2119 2008-04-26  Bruno Haible  <bruno@clisp.org>
2120
2121         Add tentative support for DragonFly BSD.
2122         * lib/stdio-impl.h: Add macros for DragonFly BSD.
2123         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
2124         fp.
2125         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
2126         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
2127         * lib/fpurge.c (fpurge): Likewise.
2128         * lib/freadable.c (freaadable): Likewise.
2129         * lib/freadahead.c (freadahead): Likewise.
2130         * lib/freading.c (freading): Likewise.
2131         * lib/freadptr.c (freadptr): Likewise.
2132         * lib/freadseek.c (freadptrinc): Likewise.
2133         * lib/fseeko.c (fseeko): Likewise.
2134         * lib/fseterr.c (fseterr): Likewise.
2135         * lib/fwritable.c (fwritable): Likewise.
2136         * lib/fwriting.c (fwriting): Likewise.
2137
2138 2008-04-26  Bruno Haible  <bruno@clisp.org>
2139
2140         * lib/stdio-impl.h: New file.
2141         * lib/fbufmode.c: Include stdio-impl.h.
2142         (fbufmode): Use fp_, remove redundant #defines.
2143         * lib/fflush.c: Include stdio-impl.h.
2144         (clear_ungetc_buffer): Remove redundant #defines.
2145         * lib/fpurge.c: Include stdio-impl.h.
2146         (fpurge): Remove redundant #defines.
2147         * lib/freadable.c: Include stdio-impl.h.
2148         (freadable): Remove redundant #defines.
2149         * lib/freadahead.c: Include stdio-impl.h.
2150         (freadahead): Remove redundant #defines.
2151         * lib/freading.c: Include stdio-impl.h.
2152         (freading): Remove redundant #defines.
2153         * lib/freadptr.c: Include stdio-impl.h.
2154         (freadptr): Remove redundant #defines.
2155         * lib/freadseek.c: Include stdio-impl.h.
2156         (freadptrinc): Remove redundant #defines.
2157         * lib/fseeko.c: Include stdio-impl.h.
2158         (rpl_fseeko): Remove redundant #defines.
2159         * lib/fseterr.c: Include stdio-impl.h.
2160         (fseterr): Remove redundant #defines.
2161         * lib/fwritable.c: Include stdio-impl.h.
2162         (fwritable: Remove redundant #defines.
2163         * lib/fwriting.c: Include stdio-impl.h.
2164         (fwriting): Remove redundant #defines.
2165         * modules/fbufmode (Files): Add lib/stdio-impl.h.
2166         * modules/fflush (Files): Likewise.
2167         * modules/fpurge (Files): Likewise.
2168         * modules/freadable (Files): Likewise.
2169         * modules/freadahead (Files): Likewise.
2170         * modules/freading (Files): Likewise.
2171         * modules/freadptr (Files): Likewise.
2172         * modules/freadseek (Files): Likewise.
2173         * modules/fseeko (Files): Likewise.
2174         * modules/fseterr (Files): Likewise.
2175         * modules/fwritable (Files): Likewise.
2176         * modules/fwriting (Files): Likewise.
2177
2178 2008-04-26  Bruno Haible  <bruno@clisp.org>
2179
2180         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
2181         restore_seek_optimization, update_fpos_cache): New functions, extracted
2182         from rpl_fflush.
2183         (rpl_fflush): Use them.
2184         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
2185         (gl_REPLACE_FFLUSH): Use it.
2186
2187 2008-04-26  Bruno Haible  <bruno@clisp.org>
2188
2189         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
2190         on Solaris.
2191         * tests/test-xstrtoimax.sh: Likewise.
2192         * tests/test-xstrtoumax.sh: Likewise.
2193         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
2194
2195 2008-04-26  Bruno Haible  <bruno@clisp.org>
2196
2197         * modules/memchr-tests: New file.
2198         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
2199
2200 2008-04-26  Eric Blake  <ebb9@byu.net>
2201             Bruno Haible  <bruno@clisp.org>
2202
2203         * lib/memchr.c: Include intprops.h.
2204         (__memchr): Optimize parallel detection of matching bytes. Rename local
2205         variables. Add explanatory comments.
2206
2207 2008-04-26  Bruno Haible  <bruno@clisp.org>
2208
2209         Fix module 'memchr', broken since 2000-10-28.
2210         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
2211
2212 2008-04-26  Bruno Haible  <bruno@clisp.org>
2213
2214         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
2215         comments.
2216
2217 2008-04-25  Eric Blake  <ebb9@byu.net>
2218
2219         Use native fstatat on cygwin 1.7.0.
2220         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
2221         first.
2222
2223 2008-04-23  Eric Blake  <ebb9@byu.net>
2224
2225         Improve memchr2 performance.
2226         * lib/memchr2.c (memchr2): Further optimize parallel detection of
2227         NUL bytes.
2228         * modules/memchr2 (Depends-on): Use intprops.h.
2229
2230 2008-04-23  Simon Josefsson  <simon@josefsson.org>
2231
2232         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
2233         an inline function instead of a CPP macro.  Patch by Ben Pfaff
2234         <blp@cs.stanford.edu>.
2235
2236 2008-04-23  Simon Josefsson  <simon@josefsson.org>
2237
2238         * lib/arpa_inet.in.h: New file.
2239
2240         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
2241         (Makefile.am): Sed in substitute header file.
2242
2243         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
2244         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
2245
2246         * modules/inet_ntop (configure.ac): Use
2247         gl_ARPA_INET_MODULE_INDICATOR.
2248
2249         * modules/inet_pton (configure.ac): Use
2250         gl_ARPA_INET_MODULE_INDICATOR.
2251
2252 2008-04-22  Jim Meyering  <meyering@redhat.com>
2253
2254         * modules/verify (License): Re-license as LGPLv2+.
2255
2256 2008-04-22  Simon Josefsson  <simon@josefsson.org>
2257
2258         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
2259         parameter to void* as per POSIX standard (MinGW uses char*).
2260
2261 2008-04-21  Bruno Haible  <bruno@clisp.org>
2262
2263         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
2264         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
2265         Define to replacements if REPLACE_ISWCNTRL is 1.
2266         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
2267         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
2268         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
2269         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
2270         what it fixes.
2271         * doc/posix-functions/iswalpha.texi: Likewise.
2272         * doc/posix-functions/iswblank.texi: Likewise.
2273         * doc/posix-functions/iswcntrl.texi: Likewise.
2274         * doc/posix-functions/iswdigit.texi: Likewise.
2275         * doc/posix-functions/iswgraph.texi: Likewise.
2276         * doc/posix-functions/iswlower.texi: Likewise.
2277         * doc/posix-functions/iswprint.texi: Likewise.
2278         * doc/posix-functions/iswpunct.texi: Likewise.
2279         * doc/posix-functions/iswspace.texi: Likewise.
2280         * doc/posix-functions/iswupper.texi: Likewise.
2281         * doc/posix-functions/iswxdigit.texi: Likewise.
2282         Reported by Alain Guibert.
2283
2284 2008-04-21  Bruno Haible  <bruno@clisp.org>
2285
2286         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
2287         Patch by Alain Guibert.
2288
2289 2008-04-21  Bruno Haible  <bruno@clisp.org>
2290
2291         Fix test failures on mingw.
2292         * tests/test-xstrtol.c (print_no_progname): New function.
2293         (main): Install it in error_print_progname hook.
2294         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
2295         * tests/test-xstrtoimax.sh: Likewise.
2296         * tests/test-xstrtoumax.sh: Likewise.
2297
2298 2008-04-21  Bruno Haible  <bruno@clisp.org>
2299
2300         Fix test failure on mingw.
2301         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
2302
2303 2008-04-21  Bruno Haible  <bruno@clisp.org>
2304
2305         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
2306         Actually assign a value.
2307
2308 2008-04-20  Bruno Haible  <bruno@clisp.org>
2309
2310         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
2311         take 2.
2312         * lib/canonicalize.c (canonicalize_file_name): Elide if the
2313         'canonicalize-lgpl' module is also used.
2314         * lib/canonicalize-lgpl.c: Undo last change.
2315         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
2316
2317 2008-04-20  Bruno Haible  <bruno@clisp.org>
2318
2319         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
2320         config.h. Provide _mkdir based fallback for mingw.
2321         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
2322         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
2323         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
2324         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
2325         rather than defining mkdir in config.h.
2326         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
2327         (gl_SYS_STAT_H_DEFAULTS): New macro.
2328         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
2329         HAVE_IO_H any more.
2330         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
2331         HAVE_DECL_MKDIR and HAVE_IO_H.
2332
2333 2008-04-20  Bruno Haible  <bruno@clisp.org>
2334
2335         * lib/isapipe.c: Port to native Windows platforms.
2336
2337 2008-04-20  Bruno Haible  <bruno@clisp.org>
2338
2339         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
2340
2341 2008-04-21  Eric Blake  <ebb9@byu.net>
2342
2343         Work around preprocessors that don't handle UINTMAX_MAX.
2344         * lib/memchr2.c (memchr2): Avoid embedded #if.
2345         Reported by Alain Guibert, fix suggested by Bruno Haible.
2346
2347 2008-04-21  Simon Josefsson  <simon@josefsson.org>
2348
2349         * doc/posix-functions/strftime.texi (strftime): Explain better
2350         Windows incompatibility.  Suggested by Micah Cowan
2351         <micah@cowan.name>.
2352
2353 2008-04-20  Bruno Haible  <bruno@clisp.org>
2354
2355         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
2356         unistr/u8-mblen.
2357
2358 2008-04-20  Bruno Haible  <bruno@clisp.org>
2359
2360         Fix test failure on platforms with non-GNU iconv.
2361         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
2362         (U_TO_U8): Use it, rather than u16_to_u8.
2363         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
2364         units at the end of the input string.
2365         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
2366
2367 2008-04-20  Bruno Haible  <bruno@clisp.org>
2368
2369         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
2370         when the resulting length is 0.
2371         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
2372
2373 2008-04-20  Bruno Haible  <bruno@clisp.org>
2374
2375         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
2376         works.
2377         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
2378
2379 2008-04-20  Bruno Haible  <bruno@clisp.org>
2380
2381         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
2382         * modules/tsearch-tests (configure.ac): Test for initstate function.
2383
2384 2008-04-20  Bruno Haible  <bruno@clisp.org>
2385
2386         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
2387         for nlink_t if missing.
2388         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
2389
2390 2008-04-19  Bruno Haible  <bruno@clisp.org>
2391
2392         Work around snprintf bug on Linux libc5.
2393         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
2394         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
2395         gl_SNPRINTF_SIZE1.
2396         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
2397         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
2398         that test failed.
2399         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
2400         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
2401         * modules/snprintf (Files): Add m4/printf.m4.
2402         * modules/vsnprintf (Files): Likewise.
2403         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
2404         * doc/posix-functions/vsnprintf.texi: Likewise.
2405
2406 2008-04-19  Bruno Haible  <bruno@clisp.org>
2407
2408         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
2409         from 0.0058 to less than 10^-7.
2410
2411 2008-04-19  Bruno Haible  <bruno@clisp.org>
2412
2413         Fix rounding when a precision is given.
2414         * lib/vasnprintf.c (is_borderline): New function.
2415         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
2416         9...9x.
2417         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
2418         %e, %g.
2419         * tests/test-vasprintf-posix.c (test_function): Likewise.
2420         * tests/test-snprintf-posix.h (test_function): Likewise.
2421         * tests/test-sprintf-posix.h (test_function): Likewise.
2422         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
2423         * tests/test-printf-posix.h (test_function): Likewise.
2424         * tests/test-printf-posix.output: Update.
2425         Reported by John Darrington <john@darrington.wattle.id.au> via
2426         Ben Pfaff <blp@cs.stanford.edu>.
2427
2428 2008-04-18  Simon Josefsson  <simon@josefsson.org>
2429
2430         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
2431         Suggested by Bruno Haible <bruno@clisp.org>.
2432
2433 2008-04-17  Bruno Haible  <bruno@clisp.org>
2434
2435         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
2436         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
2437         implementation.
2438         Patch by Bruce Merry <bmerry@gmail.com>.
2439
2440 2008-04-17  Simon Josefsson  <simon@josefsson.org>
2441
2442         * doc/posix-functions/strftime.texi (strftime): Mention that %e
2443         doesn't work under Windows.
2444
2445 2008-04-16  Bruno Haible  <bruno@clisp.org>
2446
2447         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
2448         New macros.
2449         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
2450         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
2451         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
2452         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
2453         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
2454         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
2455         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
2456         macros.
2457         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
2458         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
2459         Northern Sotho, Uighur.
2460
2461 2008-04-16  Bruno Haible  <bruno@clisp.org>
2462
2463         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
2464         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
2465         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
2466         Reported by Daniel Bergström <daniel@octocode.com>.
2467
2468 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
2469             Bruno Haible  <bruno@clisp.org>
2470
2471         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
2472         function.
2473         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
2474         New functions, mostly extracted from gl_locale_name_default.
2475         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
2476
2477 2008-04-16  Eric Blake  <ebb9@byu.net>
2478
2479         Adjust strtod detection to catch glibc 2.7 bug.
2480         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
2481         Reported by John Gatewood Ham.
2482
2483 2008-04-16  Bruno Haible  <bruno@clisp.org>
2484
2485         Add tentative support for Linux libc5.
2486         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
2487         * lib/fpurge.c (fpurge): Likewise.
2488         * lib/freadable.c (freadable): Likewise.
2489         * lib/freadahead.c (freadahead): Likewise.
2490         * lib/freading.c (freading): Likewise.
2491         * lib/freadptr.c (freadptr): Likewise.
2492         * lib/freadseek.c (freadptrinc): Likewise.
2493         * lib/fseeko.c (rpl_fseeko): Likewise.
2494         * lib/fseterr.c (fseterr): Likewise.
2495         * lib/fwritable.c (fwritable): Likewise.
2496         * lib/fwriting.c (fwriting): Likewise.
2497         Reported by Alain Guibert <alguibert+bts@free.fr>.
2498
2499 2008-04-15  Bruno Haible  <bruno@clisp.org>
2500
2501         * modules/mathl (configure.ac): Define module indicator.
2502
2503 2008-04-15  Bruno Haible  <bruno@clisp.org>
2504
2505         * lib/logl.c (logl): Remove unused variables.
2506
2507 2008-04-15  Bruno Haible  <bruno@clisp.org>
2508
2509         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
2510         fails.
2511
2512 2008-04-15  Bruno Haible  <bruno@clisp.org>
2513
2514         * lib/trim.c (trim2): Fix argument of isspace() macro.
2515
2516 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
2517
2518         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
2519         to 0.
2520         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
2521
2522 2008-04-14  Bruno Haible  <bruno@clisp.org>
2523
2524         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
2525         AC_LANG_PROGRAM argument.
2526         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
2527         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
2528         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
2529         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
2530         * m4/math_h.m4 (gl_MATH_H): Likewise.
2531         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
2532         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
2533         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
2534         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
2535         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
2536         * m4/regex.m4 (gl_REGEX): Likewise.
2537         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
2538         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
2539         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
2540         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
2541         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
2542         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
2543         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
2544         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
2545
2546 2008-04-14  Jim Meyering  <meyering@redhat.com>
2547
2548         test-strtod: fix typos: s/abs/fabs/
2549         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
2550
2551 2008-04-13  Bruno Haible  <bruno@clisp.org>
2552
2553         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
2554         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
2555         module is also used and while not building the reloc-wrapper.
2556
2557 2008-04-13  Bruno Haible  <bruno@clisp.org>
2558
2559         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
2560
2561 2008-04-13  Bruno Haible  <bruno@clisp.org>
2562
2563         Fix AIX compilation failure introduced on 2008-04-02.
2564         * tests/test-frexp.c (exp): Undefine before redefining.
2565         * tests/test-frexpl.c (exp): Likewise.
2566
2567 2008-04-13  Bruno Haible  <bruno@clisp.org>
2568
2569         Work around a HP-UX stdio bug.
2570         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
2571         * tests/test-ftello.c (main): Likewise.
2572         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
2573         * doc/posix-functions/ftello.texi: Likewise.
2574
2575 2008-04-13  Bruno Haible  <bruno@clisp.org>
2576
2577         Make test-signbit pass on HP-UX/hppa.
2578         * tests/test-signbit.c (minus_zerol): New variable.
2579         (test_signbitl): Use it.
2580
2581 2008-04-13  Bruno Haible  <bruno@clisp.org>
2582
2583         Make truncl work on OSF/1 4.0.
2584         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
2585         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
2586         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
2587         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
2588         HAVE_DECL_TRUNCL.
2589         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
2590         HAVE_DECL_TRUNCL.
2591         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
2592
2593 2008-04-13  Bruno Haible  <bruno@clisp.org>
2594
2595         * lib/unictype.h: Remove trailing comma from enumeration definitions.
2596
2597 2008-04-13  Bruno Haible  <bruno@clisp.org>
2598
2599         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
2600         expression, so as to avoid HP-UX 11 cc compiler bug.
2601
2602 2008-04-13  Bruno Haible  <bruno@clisp.org>
2603
2604         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
2605
2606 2008-04-13  Bruno Haible  <bruno@clisp.org>
2607
2608         * lib/git-merge-changelog.c: Remove empty declaration outside of
2609         functions.
2610
2611 2008-04-13  Bruno Haible  <bruno@clisp.org>
2612
2613         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
2614
2615 2008-04-13  Bruno Haible  <bruno@clisp.org>
2616
2617         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
2618         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
2619         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
2620         also if it exists but lacks definitions of the SHUT_* macros.
2621         * modules/sys_socket (Description): Update.
2622         Reported by Elbert Pol <e.pol@chello.nl>.
2623
2624 2008-04-13  Bruno Haible  <bruno@clisp.org>
2625
2626         * lib/localcharset.c (OS2): Don't redefine if already defined.
2627         Reported by Elbert Pol <e.pol@chello.nl>.
2628
2629 2008-04-13  Bruno Haible  <bruno@clisp.org>
2630
2631         * lib/binary-io.h [__EMX__]: Include <io.h>.
2632         Reported by Elbert Pol <e.pol@chello.nl>.
2633
2634 2008-04-12  Bruno Haible  <bruno@clisp.org>
2635
2636         * lib/fpucw.h: Enable the definitions also for x86_64.
2637         Needed for NetBSD/x86_64.
2638         Reported by Thomas Klausner <tk@giga.or.at>.
2639
2640 2008-04-12  Bruno Haible  <bruno@clisp.org>
2641
2642         * tests/test-strtod.c: Include isnand.h.
2643         (main): Use isnand instead of isnan.
2644         Reported by Jim Meyering.
2645
2646 2008-04-12  Bruno Haible  <bruno@clisp.org>
2647
2648         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
2649         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
2650
2651 2008-04-12  Jim Meyering  <meyering@redhat.com>
2652
2653         * m4/math_h.m4 (gl_MATH_H): Fix typos.
2654
2655 2008-04-12  Bruno Haible  <bruno@clisp.org>
2656
2657         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
2658         Reported by Elbert Pol <e.pol@chello.nl>.
2659
2660 2008-04-12  Eric Blake  <ebb9@byu.net>
2661
2662         Work around Solaris 10 math.h bug.
2663         * m4/math_h.m4 (gl_MATH_H): Check for bug.
2664         (gl_MATH_H_DEFAULTS): Set up default.
2665         * modules/math (Makefile.am): Replace new indicators.
2666         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
2667         * tests/test-math.c (main): Test this.
2668         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
2669         * doc/posix-headers/math.texi (math.h): Mention bug.
2670         Reported by Nelson H. F. Beebe and Jim Meyering.
2671
2672 2008-04-11  Bruno Haible  <bruno@clisp.org>
2673
2674         Adapt to future versions of Apple GCC.
2675         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
2676         Reported by Peter O'Gorman <peter@pogma.com>.
2677
2678 2008-04-11  Bruno Haible  <bruno@clisp.org>
2679
2680         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
2681
2682 2008-04-11  Bruno Haible  <bruno@clisp.org>
2683
2684         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
2685
2686         * modules/getaddrinfo-tests (Makefile.am): Define
2687         test_getaddrinfo_LDADD.
2688
2689 2008-04-11  Bruno Haible  <bruno@clisp.org>
2690
2691         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
2692         (init): Fix syntax error.
2693         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
2694         is declared.
2695
2696 2008-04-11  Bruno Haible  <bruno@clisp.org>
2697
2698         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
2699         * modules/glob (Depends-on): Add stdbool.
2700
2701 2008-04-11  Bruno Haible  <bruno@clisp.org>
2702
2703         * lib/trim.c: Include <string.h>.
2704
2705 2008-04-11  Eric Blake  <ebb9@byu.net>
2706
2707         Avoid compile failure on OS/2.
2708         * lib/regex_internal.h (internal_function): Disable optimization
2709         on OS/2 (__EMX__), where it caused compiler error.
2710         Reported by Elbert Pol.
2711
2712 2008-04-11  Bruno Haible  <bruno@clisp.org>
2713
2714         Flush the standard error stream before aborting. Needed on mingw.
2715         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
2716         * tests/test-array_list.c (ASSERT): Likewise.
2717         * tests/test-array_oset.c (ASSERT): Likewise.
2718         * tests/test-avltree_list.c (ASSERT): Likewise.
2719         * tests/test-avltree_oset.c (ASSERT): Likewise.
2720         * tests/test-avltreehash_list.c (ASSERT): Likewise.
2721         * tests/test-binary-io.c (ASSERT): Likewise.
2722         * tests/test-byteswap.c (ASSERT): Likewise.
2723         * tests/test-c-ctype.c (ASSERT): Likewise.
2724         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
2725         * tests/test-c-strcasestr.c (ASSERT): Likewise.
2726         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
2727         * tests/test-c-strstr.c (ASSERT): Likewise.
2728         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
2729         * tests/test-canonicalize.c (ASSERT): Likewise.
2730         * tests/test-carray_list.c (ASSERT): Likewise.
2731         * tests/test-ceilf1.c (ASSERT): Likewise.
2732         * tests/test-ceilf2.c (ASSERT): Likewise.
2733         * tests/test-ceill.c (ASSERT): Likewise.
2734         * tests/test-count-one-bits.c (ASSERT): Likewise.
2735         * tests/test-fbufmode.c (ASSERT): Likewise.
2736         * tests/test-fflush2.c (ASSERT): Likewise.
2737         * tests/test-floorf1.c (ASSERT): Likewise.
2738         * tests/test-floorf2.c (ASSERT): Likewise.
2739         * tests/test-floorl.c (ASSERT): Likewise.
2740         * tests/test-fopen.c (ASSERT): Likewise.
2741         * tests/test-fpending.c (ASSERT): Likewise.
2742         * tests/test-fprintf-posix.c (ASSERT): Likewise.
2743         * tests/test-fpurge.c (ASSERT): Likewise.
2744         * tests/test-freadable.c (ASSERT): Likewise.
2745         * tests/test-freadahead.c (ASSERT): Likewise.
2746         * tests/test-freading.c (ASSERT): Likewise.
2747         * tests/test-freadptr.c (ASSERT): Likewise.
2748         * tests/test-freadptr2.c (ASSERT): Likewise.
2749         * tests/test-freadseek.c (ASSERT): Likewise.
2750         * tests/test-freopen.c (ASSERT): Likewise.
2751         * tests/test-frexp.c (ASSERT): Likewise.
2752         * tests/test-frexpl.c (ASSERT): Likewise.
2753         * tests/test-fseek.c (ASSERT): Likewise.
2754         * tests/test-fseeko.c (ASSERT): Likewise.
2755         * tests/test-fstrcmp.c (ASSERT): Likewise.
2756         * tests/test-ftell.c (ASSERT): Likewise.
2757         * tests/test-ftello.c (ASSERT): Likewise.
2758         * tests/test-func.c (ASSERT): Likewise.
2759         * tests/test-fwritable.c (ASSERT): Likewise.
2760         * tests/test-fwriting.c (ASSERT): Likewise.
2761         * tests/test-getdelim.c (ASSERT): Likewise.
2762         * tests/test-getline.c (ASSERT): Likewise.
2763         * tests/test-i-ring.c (ASSERT): Likewise.
2764         * tests/test-iconv-utf.c (ASSERT): Likewise.
2765         * tests/test-iconv.c (ASSERT): Likewise.
2766         * tests/test-isfinite.c (ASSERT): Likewise.
2767         * tests/test-isnand.c (ASSERT): Likewise.
2768         * tests/test-isnanf.c (ASSERT): Likewise.
2769         * tests/test-isnanl.h (ASSERT): Likewise.
2770         * tests/test-ldexpl.c (ASSERT): Likewise.
2771         * tests/test-linked_list.c (ASSERT): Likewise.
2772         * tests/test-linkedhash_list.c (ASSERT): Likewise.
2773         * tests/test-localename.c (ASSERT): Likewise.
2774         * tests/test-lseek.c (ASSERT): Likewise.
2775         * tests/test-mbscasecmp.c (ASSERT): Likewise.
2776         * tests/test-mbscasestr1.c (ASSERT): Likewise.
2777         * tests/test-mbscasestr2.c (ASSERT): Likewise.
2778         * tests/test-mbscasestr3.c (ASSERT): Likewise.
2779         * tests/test-mbscasestr4.c (ASSERT): Likewise.
2780         * tests/test-mbschr.c (ASSERT): Likewise.
2781         * tests/test-mbscspn.c (ASSERT): Likewise.
2782         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
2783         * tests/test-mbspbrk.c (ASSERT): Likewise.
2784         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
2785         * tests/test-mbsrchr.c (ASSERT): Likewise.
2786         * tests/test-mbsspn.c (ASSERT): Likewise.
2787         * tests/test-mbsstr1.c (ASSERT): Likewise.
2788         * tests/test-mbsstr2.c (ASSERT): Likewise.
2789         * tests/test-mbsstr3.c (ASSERT): Likewise.
2790         * tests/test-memchr2.c (ASSERT): Likewise.
2791         * tests/test-memmem.c (ASSERT): Likewise.
2792         * tests/test-open.c (ASSERT): Likewise.
2793         * tests/test-printf-frexp.c (ASSERT): Likewise.
2794         * tests/test-printf-frexpl.c (ASSERT): Likewise.
2795         * tests/test-printf-posix.c (ASSERT): Likewise.
2796         * tests/test-quotearg.c (ASSERT): Likewise.
2797         * tests/test-rbtree_list.c (ASSERT): Likewise.
2798         * tests/test-rbtree_oset.c (ASSERT): Likewise.
2799         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
2800         * tests/test-round1.c (ASSERT): Likewise.
2801         * tests/test-roundf1.c (ASSERT): Likewise.
2802         * tests/test-roundl.c (ASSERT): Likewise.
2803         * tests/test-signbit.c (ASSERT): Likewise.
2804         * tests/test-sleep.c (ASSERT): Likewise.
2805         * tests/test-snprintf-posix.c (ASSERT): Likewise.
2806         * tests/test-snprintf.c (ASSERT): Likewise.
2807         * tests/test-sprintf-posix.c (ASSERT): Likewise.
2808         * tests/test-stat-time.c (ASSERT): Likewise.
2809         * tests/test-strcasestr.c (ASSERT): Likewise.
2810         * tests/test-strerror.c (ASSERT): Likewise.
2811         * tests/test-striconv.c (ASSERT): Likewise.
2812         * tests/test-striconveh.c (ASSERT): Likewise.
2813         * tests/test-striconveha.c (ASSERT): Likewise.
2814         * tests/test-strsignal.c (ASSERT): Likewise.
2815         * tests/test-strstr.c (ASSERT): Likewise.
2816         * tests/test-strtod.c (ASSERT): Likewise.
2817         * tests/test-trunc1.c (ASSERT): Likewise.
2818         * tests/test-trunc2.c (ASSERT): Likewise.
2819         * tests/test-truncf1.c (ASSERT): Likewise.
2820         * tests/test-truncf2.c (ASSERT): Likewise.
2821         * tests/test-truncl.c (ASSERT): Likewise.
2822         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
2823         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
2824         * tests/test-vasnprintf.c (ASSERT): Likewise.
2825         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
2826         * tests/test-vasprintf.c (ASSERT): Likewise.
2827         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
2828         * tests/test-vprintf-posix.c (ASSERT): Likewise.
2829         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
2830         * tests/test-vsnprintf.c (ASSERT): Likewise.
2831         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
2832         * tests/test-wcwidth.c (ASSERT): Likewise.
2833         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
2834         * tests/test-xprintf-posix.c (ASSERT): Likewise.
2835         * tests/test-xvasprintf.c (ASSERT): Likewise.
2836         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
2837         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
2838         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
2839         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
2840         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
2841         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
2842         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
2843         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
2844         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
2845         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
2846         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
2847         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
2848         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
2849         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
2850         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
2851         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
2852         * tests/unictype/test-block_list.c (ASSERT): Likewise.
2853         * tests/unictype/test-block_of.c (ASSERT): Likewise.
2854         * tests/unictype/test-block_test.c (ASSERT): Likewise.
2855         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
2856         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
2857         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
2858         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
2859         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
2860         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
2861         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
2862         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
2863         * tests/unictype/test-combining.c (ASSERT): Likewise.
2864         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
2865         * tests/unictype/test-digit.c (ASSERT): Likewise.
2866         * tests/unictype/test-mirror.c (ASSERT): Likewise.
2867         * tests/unictype/test-numeric.c (ASSERT): Likewise.
2868         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
2869         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
2870         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
2871         * tests/unictype/test-scripts.c (ASSERT): Likewise.
2872         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
2873         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
2874         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
2875         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
2876         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
2877         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
2878         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
2879         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
2880         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
2881         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
2882         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
2883         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
2884         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
2885         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
2886         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
2887         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
2888         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
2889         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
2890         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
2891         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
2892         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
2893         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
2894         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
2895         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
2896         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
2897         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
2898         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
2899         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
2900         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
2901         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
2902         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
2903         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
2904         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
2905         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
2906         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
2907         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
2908         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
2909         Reported by Eric Blake.
2910
2911 2008-04-11  Bruno Haible  <bruno@clisp.org>
2912
2913         * lib/wchar.in.h: Tweak comment.
2914
2915 2008-04-11  Bruno Haible  <bruno@clisp.org>
2916
2917         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
2918         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
2919         gl_COMMON.
2920         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
2921
2922 2008-04-11  Bruno Haible  <bruno@clisp.org>
2923
2924         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
2925
2926 2008-04-11  Simon Josefsson  <simon@josefsson.org>
2927
2928         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
2929         of attempting to use non-existing /dev/*random.  Based on patch
2930         from Adam Strzelecki <ono@java.pl> in
2931         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
2932
2933 2008-04-08  Bruno Haible  <bruno@clisp.org>
2934
2935         Add tentative support for emx+gcc.
2936         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
2937         * lib/fpurge.c (fpurge): Likewise.
2938         * lib/freadable.c (freadable): Likewise.
2939         * lib/freadahead.c (freadahead): Likewise.
2940         * lib/freading.c (freading): Likewise.
2941         * lib/freadptr.c (freadptr): Likewise.
2942         * lib/freadseek.c (freadptrinc): Likewise.
2943         * lib/fseeko.c (rpl_fseeko): Likewise.
2944         * lib/fseterr.c (fseterr): Likewise.
2945         * lib/fwritable.c (fwritable): Likewise.
2946         * lib/fwriting.c (fwriting): Likewise.
2947         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
2948
2949 2008-04-09  Eric Blake  <ebb9@byu.net>
2950
2951         Avoid some autoconf warnings.
2952         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
2953         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
2954         * m4/afs.m4 (gl_AFS): Likewise.
2955         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
2956         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
2957         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
2958         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
2959         (gl_INTEGER_TYPE_SUFFIX): Likewise.
2960         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
2961         (AC_CHECK_DECLS_ONCE): Likewise.
2962         Rename file...
2963         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
2964         gnulib-tool requires autoconf 2.59 or better.
2965         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
2966
2967 2008-04-08  Eric Blake  <ebb9@byu.net>
2968
2969         Use 'git describe --match' if present (added in git 1.5.5).
2970         * build-aux/git-version-gen: Limit result to tags that match 'v*'
2971         if possible.
2972
2973 2008-04-08  Bruno Haible  <bruno@clisp.org>
2974
2975         Add tentative support for OpenServer.
2976         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
2977         _ptr, _cnt.
2978         * lib/fpurge.c (fpurge): Likewise.
2979         * lib/freadable.c (freadable): Likewise.
2980         * lib/freadahead.c (freadahead): Likewise.
2981         * lib/freading.c (freading): Likewise.
2982         * lib/freadptr.c (freadptr): Likewise.
2983         * lib/freadseek.c (freadptrinc): Likewise.
2984         * lib/fseeko.c (rpl_fseeko): Likewise.
2985         * lib/fseterr.c (fseterr): Likewise.
2986         * lib/fwritable.c (fwritable): Likewise.
2987         * lib/fwriting.c (fwriting): Likewise.
2988         Reported by Roger Cornelius <rac@tenzing.org> and
2989         Brian K. White <brian@aljex.com>.
2990
2991 2008-04-06  Jim Meyering  <meyering@redhat.com>
2992
2993         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
2994
2995 2008-04-06  Bruno Haible  <bruno@clisp.org>
2996
2997         Avoid possible error with non-ASCII bytes in UTF-8 locales.
2998         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
2999         * tests/test-printf-posix.sh: Likewise.
3000         * tests/test-vfprintf-posix.sh: Likewise.
3001         * tests/test-vprintf-posix.sh: Likewise.
3002         * tests/test-xprintf-posix.sh: Likewise.
3003
3004 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3005
3006         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
3007         hide error from 'ls', needed on OS/2.
3008         Report by Elbert Pol <elbert.pol@gmail.com>.
3009
3010 2008-04-04  Eric Blake  <ebb9@byu.net>
3011
3012         Make test-fseeko.c failures meaningful.
3013         * tests/test-fseeko.c: Print line number on failure.
3014         * tests/test-fseek.c: Likewise.
3015         Reported by Nelson H. F. Beebe.
3016
3017         Improve strtod bug detection check.
3018         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
3019         required for Solaris 10.
3020         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
3021
3022 2008-04-04  Bruno Haible  <bruno@clisp.org>
3023
3024         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
3025         by m4/setenv.m4.
3026
3027 2008-04-03  Eric Blake  <ebb9@byu.net>
3028
3029         Ensure sane .version contents.
3030         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
3031         version string.
3032         * build-aux/git-version-gen: Improve documentation.
3033
3034         Make GNU make output nicer.
3035         * top/GNUmakefile [!_have-Makefile]: Add dependency on
3036         MAKECMDGOALS to enforce message for all command line targets.  Set
3037         srcdir for use in maint.mk.
3038
3039         Another maintainer tweak.
3040         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
3041         a target that regenerates version.
3042
3043 2008-04-03  Jim Meyering  <meyering@redhat.com>
3044
3045         vc-list-files: don't cause coreutils "make po-check" failure
3046         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
3047
3048 2008-04-03  Eric Blake  <ebb9@byu.net>
3049
3050         Allow VPATH usage of vc-list-files.
3051         * build-aux/vc-list-files (scriptversion): Add timestamp.
3052         (options): Add --help, --version, -C.
3053         (CVS): Support installed cvsu.
3054
3055 2008-04-02  Bruno Haible  <bruno@clisp.org>
3056
3057         Avoid some "statement with no effect" warnings from gcc.
3058         * tests/test-wctype.c (main): Explicitly ignore unused values.
3059         Reported by Jim Meyering.
3060
3061 2008-04-02  Jim Meyering  <meyering@redhat.com>
3062
3063         Avoid some warnings from "gcc -Wshadow".
3064         * tests/test-frexp.c (exp): Define to a different identifier.
3065         * tests/test-frexpl.c (exp): Likewise.
3066
3067 2008-04-03  Jim Meyering  <meyering@redhat.com>
3068
3069         bootstrap: remove dangling *.[ch] symlinks from lib
3070         * build-aux/bootstrap [dangling symlink removal]: Move find's
3071         -depth option to precede all others, to avoid a warning.
3072         Remove *.[ch] files too, and from "$source_base" (usually lib/).
3073
3074 2008-04-02  Bruno Haible  <bruno@clisp.org>
3075
3076         Avoid some warnings from "gcc -Wshadow".
3077         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
3078         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
3079         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
3080         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
3081         Reported by Jim Meyering.
3082
3083 2008-04-01  Bruno Haible  <bruno@clisp.org>
3084
3085         Fix test to work on IRIX 6.5 with cc.
3086         * tests/test-math.c (numeric_equal): New function.
3087         (main): Use it.
3088
3089 2008-04-01  Bruno Haible  <bruno@clisp.org>
3090
3091         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
3092
3093 2008-04-01  Bruno Haible  <bruno@clisp.org>
3094
3095         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
3096         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
3097         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
3098         (Depends-on): Remove math.
3099
3100         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
3101         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
3102         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
3103         (Depends-on): Remove math.
3104
3105         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
3106         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
3107         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
3108         (Depends-on): Remove math.
3109         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
3110         (Depends-on): Remove math.
3111
3112         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
3113         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
3114         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
3115         (Depends-on): Remove math.
3116         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
3117         (Depends-on): Remove math.
3118
3119         * tests/test-round1.c: Include nan.h.
3120         (main): Use NaNd instead of NAN.
3121         * modules/round-tests (Files): Add tests/nan.h.
3122
3123         * tests/test-trunc1.c: Include nan.h.
3124         (main): Use NaNd instead of NAN.
3125         * modules/trunc-tests (Files): Add tests/nan.h.
3126
3127         * tests/test-roundf1.c: Include nan.h.
3128         (main): Use NaNf instead of NAN.
3129         * modules/roundf-tests (Files): Add tests/nan.h.
3130
3131         * tests/test-truncf1.c: Include nan.h.
3132         (main): Use NaNf instead of NAN.
3133         * modules/truncf-tests (Files): Add tests/nan.h.
3134
3135         * tests/test-ceilf1.c: Include nan.h.
3136         (main): Use NaNf instead of NAN.
3137         * modules/ceilf-tests (Files): Add tests/nan.h.
3138
3139         * tests/test-floorf1.c: Include nan.h.
3140         (main): Use NaNf instead of NAN.
3141         * modules/floorf-tests (Files): Add tests/nan.h.
3142
3143         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
3144         (main): Use NaNf instead of NAN.
3145         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
3146
3147         * tests/test-isnand.c: Include nan.h instead of <math.h>.
3148         (main): Use NaNd instead of NAN.
3149         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
3150
3151         * tests/test-frexp.c: Include nan.h.
3152         (main): Use NaNd instead of NAN.
3153         * modules/frexp-tests (Files): Add tests/nan.h.
3154
3155         * lib/isnan.c: Don't include <math.h>.
3156         (FUNC): Don't use NAN macro.
3157         * modules/isnand-nolibm (Depends-on): Remove math.
3158         * modules/isnanf-nolibm (Depends-on): Remove math.
3159         * modules/isnanl (Depends-on): Remove math.
3160         * modules/isnanl-nolibm (Depends-on): Remove math.
3161
3162         * tests/nan.h: New file.
3163
3164 2008-04-01  Eric Blake  <ebb9@byu.net>
3165
3166         Fix typos.
3167         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
3168         values to be the right type.
3169
3170         For now, cater to gnulib strtod inaccuracies.
3171         * tests/test-strtod.c (main): Allow 1-ulp error on expected
3172         fractional results.  While not as nice from a QoI perspective, it
3173         is a quicker patch than correctly implementing decimal to binary
3174         rounding.
3175
3176 2008-03-31  Eric Blake  <ebb9@byu.net>
3177
3178         Guarantee a definition of NAN.
3179         * lib/math.in.h (NAN): Define if missing.
3180         * tests/test-math.c (main): Test it.
3181         * doc/posix-headers/math.texi (math.h): Document this.
3182         * lib/isnan.c (rpl_isnand): Use it.
3183         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
3184         * tests/test-floorf1.c (NaN): Likewise.
3185         * tests/test-frexp.c (NaN): Likewise.
3186         * tests/test-isnand.c (NaN): Likewise.
3187         * tests/test-isnanf.c (NaN): Likewise.
3188         * tests/test-round1.c (NaN): Likewise.
3189         * tests/test-roundf1.c (NaN): Likewise.
3190         * tests/test-snprintf-posix.h (NaN): Likewise.
3191         * tests/test-sprintf-posix.h (NaN): Likewise.
3192         * tests/test-trunc1.c (NaN): Likewise.
3193         * tests/test-truncf1.c (NaN): Likewise.
3194         * tests/test-vasnprintf-posix.c (NaN): Likewise.
3195         * tests/test-vasprintf-posix.c (NaN): Likewise.
3196         * modules/isnand-nolibm (Depends-on): Add math.
3197         * modules/isnanf-nolibm (Depends-on): Likewise.
3198         * modules/isnanl (Depends-on): Likewise.
3199         * modules/isnanl-nolibm (Depends-on): Likewise.
3200         * modules/snprintf-posix-tests (Depends-on): Likewise.
3201         * modules/sprintf-posix-tests (Depends-on): Likewise.
3202         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
3203         * modules/vsprintf-posix-tests (Depends-on): Likewise.
3204         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
3205         * modules/vasprintf-posix-tests (Depends-on): Likewise.
3206
3207 2008-03-31  Bruno Haible  <bruno@clisp.org>
3208
3209         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
3210         * doc/posix-functions/strtod.texi: Likewise.
3211
3212 2008-03-31  Bruno Haible  <bruno@clisp.org>
3213
3214         * tests/test-strtod.c (main): Don't use C99 syntax.
3215
3216 2008-03-31  Bruno Haible  <bruno@clisp.org>
3217
3218         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
3219         Reported by Eric Blake.
3220
3221 2008-03-31  Jim Meyering  <meyering@redhat.com>
3222
3223         Don't compare actual signbit return values.
3224         * tests/test-strtod.c (main): Rather, compare only their
3225         zero/non-zero nature.
3226
3227 2008-03-31  Eric Blake  <ebb9@byu.net>
3228
3229         More strtod documentation.
3230         * doc/posix-functions/strtod.texi (strtod): Interpret more test
3231         failures as distinct bugs.
3232
3233 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
3234
3235         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
3236         Problem reported by Erik Benada in
3237         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
3238
3239 2008-03-30  Bruno Haible  <bruno@clisp.org>
3240
3241         * tests/test-strtod.c: Add comments about which assertion fails on which
3242         platform.
3243         * doc/posix-functions/strtod.texi: Add info about many more platforms.
3244
3245 2008-03-30  Eric Blake  <ebb9@byu.net>
3246
3247         Test signbit behavior on zeros.
3248         * tests/test-signbit.c (test_signbitf): Add tests for zero.
3249         (test_signbitd, test_signbitl): Likewise.
3250
3251         More strtod touchups.
3252         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
3253         sign of negative underflow, for now.  Use .5, not .1.
3254         * doc/posix-functions/strtod.texi (strtod): Mention these
3255         limitations.
3256         Reported by Jim Meyering.
3257
3258 2008-03-30  Bruno Haible  <bruno@clisp.org>
3259
3260         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
3261         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
3262
3263 2008-03-30  Bruno Haible  <bruno@clisp.org>
3264
3265         Avoid failure when attempting to return empty iconv results on some
3266         platforms.
3267         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
3268         allocation, don't report ENOMEM when the resulting string is empty.
3269
3270 2008-03-30  Bruno Haible  <bruno@clisp.org>
3271
3272         Fix buffer overrun.
3273         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
3274         Don't consider the width for tmp_length. Check count against tmp_length
3275         before doing the padding. Ensure enough allocation during padding.
3276
3277 2008-03-30  Eric Blake  <ebb9@byu.net>
3278
3279         strtod touchups.
3280         * lib/strtod.c (strtod): Avoid compiler warnings.
3281         Reported by Jim Meyering.
3282
3283 2008-03-30  Bruno Haible  <bruno@clisp.org>
3284
3285         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
3286         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
3287         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
3288         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
3289         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
3290         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
3291         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
3292         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
3293
3294         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
3295         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
3296         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
3297         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
3298         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
3299         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
3300         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
3301         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
3302
3303         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
3304         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
3305         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
3306         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
3307         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
3308         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
3309         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
3310         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
3311
3312         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
3313         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
3314
3315         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
3316         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
3317
3318         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
3319         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
3320
3321         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
3322         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
3323         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
3324
3325         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
3326         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
3327         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
3328
3329         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
3330         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
3331         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
3332
3333         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
3334         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
3335         * modules/vasprintf (Depends-on): Add EOVERFLOW.
3336
3337         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
3338         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
3339         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
3340         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
3341         (Depends-on): Add EOVERFLOW.
3342         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
3343         (Depends-on): Add EOVERFLOW.
3344         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
3345         (Depends-on): Add EOVERFLOW.
3346         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
3347         (Depends-on): Add EOVERFLOW.
3348         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
3349         (Depends-on): Add EOVERFLOW.
3350         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
3351         (Depends-on): Add EOVERFLOW.
3352         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
3353         (Depends-on): Add EOVERFLOW.
3354         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
3355         (Depends-on): Add EOVERFLOW.
3356
3357         * lib/sprintf.c (EOVERFLOW): Remove fallback.
3358         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
3359         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
3360
3361         * lib/snprintf.c (EOVERFLOW): Remove fallback.
3362         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
3363         * modules/snprintf (Depends-on): Add EOVERFLOW.
3364
3365         * lib/poll.c (EOVERFLOW): Remove fallback.
3366         * modules/poll (Depends-on): Add EOVERFLOW.
3367
3368         * lib/getugroups.c (EOVERFLOW): Remove fallback.
3369         * modules/getugroups (Depends-on): Add EOVERFLOW.
3370
3371         * lib/getdelim.c (EOVERFLOW): Remove fallback.
3372         * modules/getdelim (Depends-on): Add EOVERFLOW.
3373
3374         * lib/ftell.c (EOVERFLOW): Remove fallback.
3375         * modules/ftell (Depends-on): Add EOVERFLOW.
3376
3377         * lib/fprintf.c (EOVERFLOW): Remove fallback.
3378         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
3379         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
3380
3381         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
3382
3383         * modules/EOVERFLOW-tests: New file.
3384         * tests/test-EOVERFLOW.c: New file.
3385
3386         * modules/EOVERFLOW: New file.
3387         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
3388
3389 2008-03-30  Bruno Haible  <bruno@clisp.org>
3390
3391         Fix bug introduced on 2007-06-10.
3392         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
3393         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
3394
3395 2008-03-30  Bruno Haible  <bruno@clisp.org>
3396
3397         Improve freadseek's efficiency after ungetc.
3398         * lib/freadseek.c: Include freadahead.h.
3399         (freadptrinc): New function, extracted from freadseek.
3400         (freadseek): Use it in a loop. Use freadahead to determine the number
3401         of loop iterations.
3402         * modules/freadseek (Depends-on): Add freadahead.
3403         (configure.ac): Require AC_C_INLINE.
3404
3405 2008-03-30  Bruno Haible  <bruno@clisp.org>
3406
3407         * lib/freadseek.c (freadseek): Don't ignore the return value of
3408         freadptr.
3409
3410 2008-03-29  Eric Blake  <ebb9@byu.net>
3411
3412         Add hex float support.
3413         * modules/strtod (Depends-on): Add c-ctype.
3414         (Link): Mention POW_LIB.
3415         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
3416         whitespace between 'e' and exponent.
3417         * tests/test-strtod.c (main): Enable hex float tests.
3418         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
3419         now provides.
3420
3421         Document various strtod bugs, with some fixes.
3422         * doc/posix-functions/strtod.texi (strtod): Document bugs with
3423         "-0x", "inf", "nan", and hex constants.
3424         * doc/posix-functions/atof.texi (atof): Likewise.
3425         * modules/stdlib (Makefile.am): Support strtod.
3426         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
3427         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
3428         detect additional strtod bugs.
3429         * lib/stdlib.in.h (rpl_strtod): Add declarations.
3430         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
3431         bool where appropriate.  Parse 'inf' and 'nan'.
3432         * tests/test-strtod.c: New file.
3433         * modules/strtod (Depends-on): Add stdbool, stdlib.
3434         (configure.ac): Turn on module indicator.
3435         * modules/strtod-tests: New module.
3436
3437 2008-03-29  Eric Blake  <ebb9@byu.net>
3438
3439         Fix ftell on mingw.
3440         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
3441         * modules/ftell-tests (Depends-on): Add binary-io.
3442         * modules/ftello-tests (Depends-on): Likewise.
3443         * tests/test-ftell.c (main): Enhance test to cover behavior after
3444         ungetc.  Enforce binary mode.
3445         * tests/test-ftello.c (main): Likewise.
3446
3447         Pass test-freadseek on cygwin.
3448         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
3449         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
3450         ungetc buffer.
3451
3452         * tests/test-fflush2.c (main): Fix typo.
3453
3454 2008-03-29  Bruno Haible  <bruno@clisp.org>
3455
3456         * tests/test-fflush2.c (main): Temporarily disable the contents of
3457         this test.
3458         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
3459         Reported by Eric Blake.
3460
3461 2008-03-28  Simon Josefsson  <simon@josefsson.org>
3462
3463         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
3464         (GC_SHA224_DIGEST_SIZE): Add.
3465
3466         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
3467         (gc_hash_digest_length): Likewise.
3468         (gc_hash_buffer): Likewise.
3469
3470 2008-03-25  Bruno Haible  <bruno@clisp.org>
3471
3472         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
3473         detail which gettext release to use.
3474         Reported by Simon Josefsson.
3475
3476 2008-03-26  Jim Meyering  <meyering@redhat.com>
3477
3478         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
3479         * modules/gnumakefile (clean-GNUmakefile): Also, use
3480         test ... && ... || : syntax rather than if-then ... fi.
3481
3482         gnumakefile: Don't double-quote-expand $(VPATH) value.
3483         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
3484
3485 2008-03-24  Eric Blake  <ebb9@byu.net>
3486
3487         Alter GNUmakefile to install into top directory.
3488         * modules/maintainer-makefile: Split, and add dependency...
3489         * modules/gnumakefile: to this new module.
3490         * build-aux/GNUmakefile: Move...
3491         * top/GNUmakefile: ...here.
3492         * build-aux/maint.mk: Move...
3493         * top/maint.mk: ...here.
3494         * MODULES.html.sh (Support for maintaining...): Document new
3495         module.
3496
3497 2008-03-23  Bruno Haible  <bruno@clisp.org>
3498
3499         * gnulib-tool: New options --vc-files, --no-vc-files.
3500         (func_usage): Document them.
3501         (vc_files): New variable.
3502         (func_import): Consider vc_files.
3503         (func_create_testdir): Set vc_files to empty.
3504         Suggested by Jim Meyering and Karl Berry.
3505
3506 2008-03-23  Bruno Haible  <bruno@clisp.org>
3507
3508         Fix regex compilation error on HP-UX 11.
3509         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
3510         * modules/regex (Files): Add m4/mbstate_t.m4.
3511         Reported by Ton Voon <ton.voon@altinity.com>.
3512
3513 2008-03-23  Bruno Haible  <bruno@clisp.org>
3514
3515         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
3516
3517 2008-03-23  Eric Blake  <ebb9@byu.net>
3518             Bruno Haible  <bruno@clisp.org>
3519
3520         Install files from top/ in the destination directory.
3521         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
3522         augmentation also for the files from top/.
3523         (func_import, func_create_testdir): Rewrite file names:
3524         top/filename -> filename.
3525
3526 2008-03-23  Bruno Haible  <bruno@clisp.org>
3527
3528         Tweak "gnulib --version" output.
3529         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
3530
3531 2008-03-23  Bruno Haible  <bruno@clisp.org>
3532
3533         Tweak "gnulib --version" output.
3534         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
3535         rather than contents of ChangeLog, when possible.
3536
3537 2008-03-21  Eric Blake  <ebb9@byu.net>
3538
3539         More --version tweaks.
3540         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
3541         date of last ChangeLog entry.
3542
3543 2008-03-21  Jim Meyering  <meyering@redhat.com>
3544
3545         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
3546
3547 2008-03-20  Eric Blake  <ebb9@byu.net>
3548
3549         VPATH fix.
3550         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
3551
3552 2008-03-20  Simon Josefsson  <simon@josefsson.org>
3553
3554         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
3555         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
3556
3557 2008-03-20  Eric Blake  <ebb9@byu.net>
3558
3559         Sync GNUmakefile with coreutils.
3560         * build-aux/GNUmakefile (have-Makefile): Rename...
3561         (_have-Makefile): ...to this, for namespace consideration.
3562         (GNUmakefile.cfg): Include, if present.
3563         (_autoreconf): Define a default.
3564         (_is-dist-target): New rule for rebuilds to pick up intra-release
3565         version.
3566         (maint-cfg.mk): Rename...
3567         (cfg.mk): ...to this.
3568
3569 2008-03-18  Jim Meyering  <meyering@redhat.com>
3570
3571         New script and module: mktempd
3572         * MODULES.html.sh (maint+release support): Add mktempd.
3573         * build-aux/mktempd: New file.
3574         * modules/mktempd: New file.
3575
3576 2008-03-15  Jim Meyering  <meyering@redhat.com>
3577
3578         Undo last change.
3579         * lib/sha1.c, lib/md5.c: 63 != ~63.
3580         Reported by Andreas Schwab.
3581
3582         sha1.c, md5.c: Hoist a redundant expression.
3583         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
3584         "ctx->buflen" only once, before calling *_process_block.
3585         * lib/md5.c (md5_process_bytes): Likewise.
3586
3587 2008-03-14  Eric Blake  <ebb9@byu.net>
3588
3589         Bump copyright year in files generated by gnulib-tool.
3590         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
3591         gnulib-tool, rather than hard-coding it.
3592
3593         Fix 'gnulib-tool --version' output to work with git.
3594         * gnulib-tool (func_gnulib_dir): New function, extracted from...
3595         (startup): ...here.
3596         (func_version): Use it to invoke git-version-gen, rather than
3597         relying on CVS keyword expansion.  Modernize wording.
3598         (cvsdatestamp, last_checkin_date, version): Kill unused
3599         variables.
3600
3601 2008-03-12  Jim Meyering  <meyering@redhat.com>
3602
3603         Recognize optional cast of the argument to free.
3604         * build-aux/useless-if-before-free: Update regexps.
3605
3606         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
3607
3608 2008-03-11  Bruno Haible  <bruno@clisp.org>
3609
3610         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
3611         by a single package.
3612         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
3613         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
3614         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
3615         Reported by Sam Steingold <sds@gnu.org>.
3616
3617 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
3618
3619         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
3620         repositories.
3621
3622 2008-03-11  Bruno Haible  <bruno@clisp.org>
3623
3624         Avoid conflicts between local macro definitions.
3625         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
3626         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
3627
3628 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
3629             Bruno Haible  <bruno@clisp.org>
3630
3631         Make va_copy work with some version of xlc on AIX 5.1.
3632         * lib/stdarg.in.h: New file.
3633         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
3634         On AIX, use a <stdarg.h> file substitute.
3635         * modules/stdarg (Files): Add lib/stdarg.in.h.
3636         (Depends-on): Add include_next.
3637         (Makefile.am): Build a stdarg.h substitute if requested.
3638         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
3639
3640 2008-03-10  Bruno Haible  <bruno@clisp.org>
3641
3642         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
3643         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
3644         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
3645
3646 2008-03-10  Bruno Haible  <bruno@clisp.org>
3647
3648         * modules/stdlib (Depends-on): Add include_next, remove
3649         absolute-header.
3650
3651 2008-03-09  Bruno Haible  <bruno@clisp.org>
3652
3653         * lib/freadahead.h (freadahead): Document more precisely.
3654         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
3655         the sum of both buffer sizes.
3656         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
3657         * NEWS: Document the change.
3658
3659 2008-03-09  Bruno Haible  <bruno@clisp.org>
3660
3661         Extend freadptr to return also the buffer size.
3662         * lib/freadptr.h (freadptr): Add sizep argument.
3663         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
3664         (freadptr): Add sizep argument. Determine buffer size like freadahead
3665         does.
3666         * tests/test-freadptr.c: Don't include freadahead.h.
3667         (main): Adapt for new calling convention of freadptr.
3668         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
3669         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
3670         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
3671         tests/test-freadptr2.sh.
3672         (Depends): Remove freadahead.
3673         (TESTS): Add test-freadptr2.sh.
3674         (check_PROGRAMS): Add test-freadptr2.
3675
3676 2008-03-09  Bruno Haible  <bruno@clisp.org>
3677
3678         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
3679         Report and solution by Simon Josefsson.
3680
3681 2008-03-06  Bruno Haible  <bruno@clisp.org>
3682
3683         Make fflush after ungetc work on BSD platforms.
3684         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
3685         * tests/test-fflush2.c: New file.
3686         * tests/test-fflush2.sh: New file.
3687         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
3688         tests/test-fflush2.c.
3689         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
3690         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
3691
3692 2008-03-06  Eric Blake  <ebb9@byu.net>
3693
3694         Likewise for ftello.
3695         * modules/ftello (Dependencies): Add extensions.
3696         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
3697
3698 2008-03-06  Bruno Haible  <bruno@clisp.org>
3699
3700         * modules/fseeko (Dependencies): Add extensions.
3701         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
3702         Needed on glibc systems.
3703
3704 2008-03-06  Bruno Haible  <bruno@clisp.org>
3705
3706         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
3707         email address.
3708         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
3709
3710 2008-03-06  Bruno Haible  <bruno@clisp.org>
3711
3712         * users.txt: Add libgnupdf.
3713
3714 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
3715
3716         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
3717         (Header File Substitutes, Function Substitutes,
3718         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
3719         (Build robot for gnulib): Fix typo.
3720
3721 2008-03-06  Bruno Haible  <bruno@clisp.org>
3722
3723         * doc/gnulib-tool.texi (VCS Issues): Small updates.
3724         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
3725
3726 2008-03-06  Bruno Haible  <bruno@clisp.org>
3727
3728         * doc/func.texi: New file, extracted from doc/gnulib.texi.
3729         * doc/gnulib.texi: Include it.
3730
3731 2008-03-06  Simon Josefsson  <simon@josefsson.org>
3732
3733         * modules/func (License): Change license to unlimited; there was
3734         no LGPL parts in the module anyway.
3735
3736 2008-03-06  Simon Josefsson  <simon@josefsson.org>
3737
3738         * modules/__func__: Renamed to modules/func.
3739         * modules/__func__-tests: Renamed to modules/func-tests.
3740         * tests/test-__func__.c: Renamed to tests/test-func.c.
3741         * m4/__func__.m4: Renamed to m4/func.m4.
3742         * doc/gnulib.texi (__func__): Section renamed to func.
3743         Suggested by Eric Blake <ebb9@byu.net>.
3744
3745 2008-03-06  Simon Josefsson  <simon@josefsson.org>
3746
3747         * doc/gnulib.texi (__func__): Use C99 terminology when talking
3748         about __func__.  Make example self-contained.  Suggested by Eric
3749         Blake <ebb9@byu.net>.
3750
3751         * tests/test-__func__.c (main): Avoid extraneous () around __func.
3752         Suggested by Eric Blake <ebb9@byu.net>.
3753
3754 2008-03-06  Simon Josefsson  <simon@josefsson.org>
3755
3756         * modules/__func__: New file.
3757         * modules/__func__-tests: New file.
3758         * tests/test-__func__.c: New file.
3759         * m4/__func__.m4: New file.
3760         * doc/gnulib.texi (__func__): Document __func__ module.
3761
3762 2008-03-05  Simon Josefsson  <simon@josefsson.org>
3763
3764         * modules/byteswap (License): Re-license as LGPLv2+.
3765
3766 2008-03-05  Simon Josefsson  <simon@josefsson.org>
3767
3768         * doc/Makefile: Add pdf target.
3769
3770 2008-03-05  Simon Josefsson  <simon@josefsson.org>
3771
3772         * modules/inline (License): Use 'unlimited', since there are only
3773         *.m4 files in this module.
3774
3775 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
3776             Bruno Haible  <bruno@clisp.org>
3777
3778         Add support for HP C 7.1 on OpenVMS 8.3.
3779         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
3780
3781 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
3782
3783         Update VMS specifics.
3784         * lib/getopt.c [VMS]: Remove include of unixlib.h.
3785
3786 2008-03-02  Jim Meyering  <meyering@redhat.com>
3787
3788         Remove the last dependency on the "free" module.
3789         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
3790         Reported by Bob Proulx.
3791
3792         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
3793
3794         Remove useless "if" tests before free.  Deprecate "free" module.
3795         * doc/posix-functions/free.texi: Mention that this
3796         module is no longer useful.
3797         * modules/free (Notice): Say this module is obsolete.
3798         * modules/readutmp (Depends-on): Remove free.
3799         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
3800         * lib/putenv.c (putenv): Likewise.
3801         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
3802         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
3803         * tests/test-c-strcasestr.c (main): Likewise.
3804         * tests/test-c-strstr.c (main): Likewise.
3805         * tests/test-mbscasestr1.c (main): Likewise.
3806         * tests/test-mbscasestr2.c (main): Likewise.
3807         * tests/test-mbsstr1.c (main): Likewise.
3808         * tests/test-mbsstr2.c (main): Likewise.
3809         * tests/test-memmem.c (main): Likewise.
3810         * tests/test-strcasestr.c (main): Likewise.
3811         * tests/test-striconv.c (main): Likewise.
3812         * tests/test-striconveh.c (main): Likewise.
3813         * tests/test-striconveha.c (main): Likewise.
3814         * tests/test-strstr.c (main): Likewise.
3815
3816         * build-aux/git-version-gen: Adjust a comment and the Usage string.
3817
3818         bootstrap: sync from coreutils again
3819         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
3820
3821 2008-03-01  Jim Meyering  <meyering@redhat.com>
3822
3823         bootstrap: sync from coreutils
3824         * build-aux/bootstrap (update_po_files): Copy a .po file into place
3825         also when the target doesn't exist.
3826
3827 2008-03-01  Eric Blake  <ebb9@byu.net>
3828
3829         Fix bugs in last patch.
3830         * lib/memchr2.c (memchr2): Fix typo.
3831         * tests/test-memchr2.c: Test previous bug, and don't use GNU
3832         extension.
3833         Reported by Bruce Korb.
3834
3835         New module 'memchr2'.
3836         * modules/memchr2: New file.
3837         * modules/memchr2-tests: Likewise.
3838         * lib/memchr2.h: Likewise.
3839         * lib/memchr2.c: Likewise, based on memchr.c.
3840         * tests/test-memchr2.c: New test.
3841         * MODULES.html.sh (String handling): Add memchr2.
3842
3843 2008-02-29  Bruno Haible  <bruno@clisp.org>
3844
3845         * modules/freadseek-tests: New file.
3846         * tests/test-freadseek.sh: New file.
3847         * tests/test-freadseek.c: New file.
3848
3849         New module 'freadseek'.
3850         * modules/freadseek: New file.
3851         * lib/freadseek.h: New file.
3852         * lib/freadseek.c: New file.
3853         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
3854
3855 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
3856
3857         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
3858         wydawca.
3859
3860         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
3861         program_invocation_name and program_invocation_short_name are
3862         present.
3863
3864 2008-02-28  Bruno Haible  <bruno@clisp.org>
3865
3866         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
3867         * tests/test-freadptr.sh: Also test non-seekable stdin.
3868
3869 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
3870
3871         * build-aux/bootstrap (source_base, m4_base)
3872         (doc_base, tests_base): New variables.
3873         (gnulib_tool_options): Do not hardcode base directories, use
3874         the above variables instead.
3875
3876 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
3877
3878         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
3879
3880 2008-02-28  Bruno Haible  <bruno@clisp.org>
3881
3882         * modules/freadptr-tests: New file.
3883         * tests/test-freadptr.sh: New file.
3884         * tests/test-freadptr.c: New file.
3885
3886         New module 'freadptr'.
3887         * modules/freadptr: New file.
3888         * lib/freadptr.h: New file.
3889         * lib/freadptr.c: New file.
3890         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
3891
3892 2008-02-26  Karl Berry  <karl@freefriends.org>
3893
3894         Sync from Libtool:
3895         * libltdl/argz.c (argz_add, argz_count): New functions.
3896         * libltdl/argz.in.h: Declare them.
3897         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
3898
3899 2008-02-22  Bruno Haible  <bruno@clisp.org>
3900
3901         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
3902         is a pointer type.  Needed for HP-UX 10.
3903         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
3904         * doc/posix-functions/gmtime_r.texi: Likewise.
3905         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
3906
3907 2008-02-24  Bruno Haible  <bruno@clisp.org>
3908
3909         * modules/environ-tests: New file.
3910         * tests/test-environ.c: New file.
3911
3912         New module 'environ'.
3913         * modules/environ: New file.
3914         * lib/unistd.in.h (environ): New declaration.
3915         * m4/environ.m4: New file.
3916         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
3917         after use.
3918         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
3919         HAVE_DECL_ENVIRON.
3920         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
3921         HAVE_DECL_ENVIRON.
3922         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
3923         wrong claim that 'environ' is missing on some systems.
3924         * modules/execute (Depends-on): Add environ.
3925         * lib/execute.c (environ): Remove fallback declaration.
3926         * modules/pipe (Depends-on): Add environ.
3927         * lib/pipe.c (environ): Remove fallback declaration.
3928         * modules/setenv (Depends-on): Add environ.
3929         * lib/setenv.c (environ): Remove fallback declaration.
3930         * modules/unsetenv (Depends-on): Add environ.
3931         * lib/unsetenv.c (environ): Remove fallback declaration.
3932         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
3933         m4/environ.m4.
3934         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
3935         (gl_PREREQ_UNSETENV): Likewise.
3936
3937 2008-02-24  Bruno Haible  <bruno@clisp.org>
3938
3939         * doc/posix-functions/environ.texi: Document the MacOS X problem.
3940
3941 2008-02-20  Bob Proulx  <bob@proulx.com>
3942
3943         Enable use of older two part flavor 'git describe'.
3944         * build-aux/git-version-gen: If using the older two part flavor of
3945         git version then recreate the third part now present in the
3946         newer three part flavor of git describe.
3947
3948 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
3949
3950         * lib/fts.c (fts_build): Typo correction to comment.
3951
3952 2008-02-17  Bruno Haible  <bruno@clisp.org>
3953
3954         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
3955         generating no-op conflicts.
3956
3957 2008-02-17  Bruno Haible  <bruno@clisp.org>
3958
3959         Speed up by 10%.
3960         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
3961         result_entries, rather than an index-based loop.
3962
3963 2008-02-17  Bruno Haible  <bruno@clisp.org>
3964
3965         Speed up by 25%.
3966         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
3967         'hashcode_cached'.
3968         (entry_create): New function.
3969         (entry_hashcode): Use the cached hashcode if possible.
3970         (read_changelog_file, try_split_merged_entry): Use entry_create.
3971
3972 2008-02-17  Bruno Haible  <bruno@clisp.org>
3973
3974         Speed up from O(n^2) to O(n) for long ChangeLog files.
3975         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
3976         (read_changelog_file): Change implementation of entries_reversed list
3977         to rbtreehash.
3978         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
3979
3980 2008-02-17  Bruno Haible  <bruno@clisp.org>
3981
3982         New option --split-merged-entry.
3983         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
3984         (find_paragraph_end, try_split_merged_entry): New functions.
3985         (long_options): Add option --split-merged-entry.
3986         (usage): Document option --split-merged-entry.
3987         (main): Implement option --split-merged-entry.
3988         Reported by Eric Blake.
3989
3990 2008-02-17  Bruno Haible  <bruno@clisp.org>
3991
3992         * lib/git-merge-changelog.c: Include c-strstr.h.
3993         (main): Support the "git pull --rebase" situation.
3994         * modules/git-merge-changelog (Depends-on): Add c-strstr.
3995         Reported by Eric Blake.
3996
3997 2008-02-16  Eric Blake  <ebb9@byu.net>
3998
3999         Avoid doubling \ in common case of "c-maybe" quoting style.
4000         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
4001         eliding outer quotes.
4002         * lib/quotearg.h: Document this.
4003         * tests/test-quotearg.c (result_strings, inputs, results_g)
4004         (flag_results, locale_results): Test it by adding a new string to
4005         each test group.
4006         (compare_strings): Test new string.
4007
4008 2008-02-13  Eric Blake  <ebb9@byu.net>
4009
4010         Avoid trigraph quoting in default output.
4011         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
4012         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
4013         unless explicitly requested.
4014         * tests/test-quotearg.c (flag_results, main): Add additional tests.
4015
4016 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
4017
4018         Don't rely on signed integer overflowing to negative value.
4019         * lib/getugroups.c (getugroups): Include <limits.h>.
4020         Instead, compare against INT_MAX, and increment only if the test passes.
4021
4022 2008-02-13  Jim Meyering  <meyering@redhat.com>
4023         and Eric Blake  <ebb9@byu.net>
4024
4025         Avoid shadowing warning and compile errors on Linux.
4026         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
4027         forwarding macros on Linux.
4028         (dcgettext): Define a stub, for Linux.
4029         (results_g, main): Avoid warnings.
4030
4031 2008-02-12  Eric Blake  <ebb9@byu.net>
4032
4033         Silence warning in last patch.
4034         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
4035
4036         Quotearg part 4: add tests, fix c-maybe colon quoting.
4037         * lib/quotearg.h: Improve documentation.
4038         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
4039         escapes when adding outer quotes.  When quoting trigraphs, use
4040         valid C notation.  When quoting NUL, omit extra characters if next
4041         character is not digit.  Alter prototype.
4042         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
4043         callers.
4044         * modules/quotearg-tests: New module.
4045         * tests/test-quotearg.c: New test.
4046
4047 2008-02-07  Eric Blake  <ebb9@byu.net>
4048
4049         Quotearg part 3: add flag to control outer quote elision.
4050         * lib/quotearg.h (c_maybe_quoting_style): New style.
4051         (enum quoting_flags): Better documentation of flags.
4052         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
4053         c-maybe style.
4054         (quotearg_buffer_restyled): Handle new flag to elide outer
4055         quotes.
4056
4057         Quotearg part 2: add flag that can control NUL elision.
4058         * lib/quotearg.h (set_quoting_flags): New prototype.
4059         * lib/quotearg.c (struct quoting_options): Add flag field.
4060         (set_quoting_flags): New function.
4061         (quotearg_buffer_restyled): Add flags parameter.
4062         (quotearg_alloc_mem): Set the flag if length cannot be returned.
4063         (quotearg_n_options): Set the flag, since length cannot be
4064         returned.
4065         (quoting_options_from_style): Default flags correctly.
4066
4067         Quotearg part 1: more wrappers, restore quotearg_char state.
4068         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
4069         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
4070         (quotearg_colon_mem): New wrappers.
4071         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
4072         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
4073         functions.
4074         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
4075         (quotearg_colon_mem): New functions.
4076
4077 2008-02-11  Bruno Haible  <bruno@clisp.org>
4078
4079         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
4080         library in the current directory: it does not work with parallel make.
4081         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
4082
4083 2008-02-11  Bruno Haible  <bruno@clisp.org>
4084
4085         * .gitattributes: New file.
4086
4087 2008-02-11  Jim Meyering  <meyering@redhat.com>
4088
4089         useless-if-before-free: Fix reversed exit values.
4090         * build-aux/useless-if-before-free: Use correct values
4091         for EXIT_MATCH and EXIT_NO_MATCH.
4092
4093         * build-aux/useless-if-before-free: Close stdout carefully.
4094
4095 2008-02-10  Bruno Haible  <bruno@clisp.org>
4096
4097         New module 'git-merge-changelog'.
4098         * modules/git-merge-changelog: New file.
4099         * lib/git-merge-changelog.c: New file.
4100
4101 2008-02-10  Jim Meyering  <meyering@redhat.com>
4102
4103         useless-if-before-free: New option: --list (-l).
4104
4105         useless-if-before-free: Don't exit immediately upon open failure.
4106         * build-aux/useless-if-before-free: Exit 2 for errors.
4107         Upon failure to open a file, don't exit immediately.
4108         Rather, just warn and continue with any remaining files.
4109
4110 2008-02-10  Bruno Haible  <bruno@clisp.org>
4111
4112         New abstract list operation 'node_set_value'.
4113         * lib/gl_list.h (gl_list_node_set_value): New function.
4114         (struct gl_list_implementation): New field node_set_value.
4115         * lib/gl_list.c (gl_list_node_set_value): New function.
4116         * lib/gl_array_list.c (gl_array_node_set_value): New function.
4117         (gl_array_list_implementation): Update.
4118         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
4119         (gl_carray_list_implementation): Update.
4120         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
4121         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
4122         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
4123         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
4124         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
4125         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
4126         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
4127         Update.
4128         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
4129         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
4130         (gl_sublist_list_implementation): Update.
4131
4132 2008-02-10  Bruno Haible  <bruno@clisp.org>
4133
4134         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
4135         Needed when ELEMENT is #defined to 'some_type *'.
4136
4137 2008-02-10  Jim Meyering  <meyering@redhat.com>
4138
4139         New script and module: useless-if-before-free
4140         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
4141         * build-aux/useless-if-before-free: New file.
4142         * modules/useless-if-before-free: New file.
4143
4144         * build-aux/gitlog-to-changelog: Use committer date, not author date.
4145
4146         xstrtol_error: Fix typo.
4147         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
4148         s/exit_failure/exit_status/.
4149
4150 2008-02-09  Jim Meyering  <meyering@redhat.com>
4151
4152         New script and module: gitlog-to-changelog
4153         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
4154         * modules/gitlog-to-changelog: New file.
4155         * build-aux/gitlog-to-changelog: New file.
4156
4157 2008-02-08  Jim Meyering  <meyering@redhat.com>
4158
4159         Avoid two "parameter unused" warnings.
4160         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
4161         Mark "st" as used.
4162
4163         Use "git COMMAND", not "git-COMMAND".
4164         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
4165         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
4166         * build-aux/git-version-gen: Use "git status", not "git-status".
4167
4168 2008-02-07  Bruno Haible  <bruno@clisp.org>
4169
4170         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
4171         Avoids a crash on Windows Vista.
4172         Reported by Adam Strzelecki <ono@java.pl> via
4173         Simon Josefsson <simon@josefsson.org>.
4174
4175 2008-02-06  Bruno Haible  <bruno@clisp.org>
4176
4177         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
4178         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
4179         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
4180         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
4181         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
4182         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4183         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
4184         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
4185         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4186         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4187         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4188         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4189         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4190         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4191         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4192         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
4193         left-adjust flag.
4194         * tests/test-snprintf-posix.h (test_function): Likewise.
4195         * tests/test-sprintf-posix.h (test_function): Likewise.
4196         * tests/test-vasprintf-posix.c (test_function): Likewise.
4197         * doc/posix-functions/fprintf.texi: Update.
4198         * doc/posix-functions/printf.texi: Update.
4199         * doc/posix-functions/snprintf.texi: Update.
4200         * doc/posix-functions/sprintf.texi: Update.
4201         * doc/posix-functions/vfprintf.texi: Update.
4202         * doc/posix-functions/vprintf.texi: Update.
4203         * doc/posix-functions/vsnprintf.texi: Update.
4204         * doc/posix-functions/vsprintf.texi: Update.
4205         Reported by Peter Fales <psfales@alcatel-lucent.com>.
4206
4207 2008-02-06  Bruno Haible  <bruno@clisp.org>
4208
4209         Fix bug introduced on 2008-01-26.
4210         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
4211
4212 2008-02-06  Bruno Haible  <bruno@clisp.org>
4213
4214         Fix bug introduced on 2007-06-10.
4215         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
4216         !NEED_PRINTF_FLAG_ZERO.
4217
4218 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
4219
4220         getloadavg: use libperfstat on AIX5
4221         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
4222
4223 2008-02-03  Bruno Haible  <bruno@clisp.org>
4224
4225         * lib/diffseq.h: Add comments about required #includes.
4226         Reported by Michael Biggs <gnulib@doubleplum.net>.
4227
4228 2008-02-01  Bruno Haible  <bruno@clisp.org>
4229
4230         * users.txt: Add gnuit.
4231
4232 2008-01-31  Bruno Haible  <bruno@clisp.org>
4233
4234         * lib/md4.c (set_uint32): Mark as inline.
4235         * lib/md5.c (set_uint32): Likewise.
4236         * lib/sha1.c (set_uint32): Likewise.
4237         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
4238         * m4/md5.m4 (gl_MD5): Likewise.
4239         * m4/sha1.m4 (gl_SHA1): Likewise.
4240
4241 2008-01-31  Jim Meyering  <meyering@redhat.com>
4242
4243         Use "sizeof VAR", rather than a literal "4".
4244         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
4245         * lib/md4.c (md4_read_ctx): Likewise.
4246         * lib/sha1.c (sha1_read_ctx): Likewise.
4247
4248 2008-01-31  Simon Josefsson  <simon@josefsson.org>
4249
4250         * tests/test-sha1.c: New file, based on test-md5.c.
4251
4252         * modules/crypto/sha1-tests: New file.
4253
4254 2008-01-31  Simon Josefsson  <simon@josefsson.org>
4255
4256         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
4257
4258 2008-01-31  Jim Meyering  <meyering@redhat.com>
4259
4260         Prefer "sizeof v" over the equivalent "4".
4261         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
4262         * lib/md5.c (set_uint32): Likewise.
4263         * lib/sha1.c (set_uint32): Likewise.
4264
4265 2008-01-31  Simon Josefsson  <simon@josefsson.org>
4266
4267         * lib/sha1.c (set_uint32): Mark function as static.
4268
4269 2008-01-31  Simon Josefsson  <simon@josefsson.org>
4270
4271         md2: clarify comments to say that alignment is not required.
4272         * lib/md2.h: Remove warning about alignment in comment.
4273         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
4274         never been required.
4275
4276 2008-01-31  Simon Josefsson  <simon@josefsson.org>
4277
4278         md4: adapt alignment constraint fix from sha1.
4279         * lib/md4.c (set_uint32): New function, from sha1.c
4280         (md4_read_ctx): Use it.
4281         (md4_finish_ctx): Doc fix.
4282         * lib/md4.h: Doc fix.
4283
4284 2008-01-31  Simon Josefsson  <simon@josefsson.org>
4285
4286         md5: adapt alignment constraint fix from sha1.
4287         * lib/md5.c (set_uint32): New function, from sha1.c
4288         (md5_read_ctx): Use it.
4289         (md5_finish_ctx): Doc fix.
4290         * lib/md5.h: Doc fix.
4291
4292 2008-01-30  Peter Palfrader  <weasel@debian.org>
4293
4294         sha1: remove the result buffer alignment constraint
4295         * lib/sha1.c (set_uint32): New function.
4296         (sha1_read_ctx): Rewrite to remove the result buffer alignment
4297         constraint.
4298         (sha1_finish_ctx): Remove comment warning about alignment constraint.
4299         * lib/sha1.h: Likewise.
4300
4301 2008-01-30  Andreas Schwab  <schwab@suse.de>
4302             Bruno Haible  <bruno@clisp.org>
4303
4304         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
4305         correct definition of LDBL_MIN_EXP.
4306
4307 2008-01-30  Karl Berry  <karl@gnu.org>
4308
4309         * config/srclist-update: try to preserve x bit on updates.
4310         * config/srclistvars.sh: update for karl.
4311
4312 2008-01-29  Jim Meyering  <meyering@redhat.com>
4313
4314         vasnprintf.c: Avoid warning about unused label
4315         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
4316         "overflow" label definition and associated code with the
4317         same cpp condition that guards the sole use of that label.
4318
4319 2008-01-26  Bruno Haible  <bruno@clisp.org>
4320
4321         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
4322         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
4323         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
4324         * lib/isnanl-nolibm.h (isnanl): Likewise.
4325         Reported by Paul Eggert <eggert@cs.ucla.edu>.
4326
4327 2008-01-26  Bruno Haible  <bruno@clisp.org>
4328
4329         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
4330         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
4331
4332 2008-01-26  Bruno Haible  <bruno@clisp.org>
4333
4334         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
4335         GCC >= 4.0 built-in.
4336         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
4337
4338 2008-01-26  Bruno Haible  <bruno@clisp.org>
4339
4340         Rename isnan, applicable to 'double' only, to isnand.
4341         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
4342         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
4343         (configure.ac): Update.
4344         (Include): Replace "isnan.h" with "isnand.h".
4345         * m4/isnand.m4: Renamed from m4/isnan.m4.
4346         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
4347         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
4348         instead of isnan.c.
4349         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
4350         instead of HAVE_ISNAN_IN_LIBC.
4351         (isnand): Renamed from isnan.
4352         * lib/isnand.c: New file.
4353         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
4354         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
4355         (Makefile.am): Update.
4356         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
4357         Include isnand.h instead of isnan.h.
4358         (main): Test isnand instead of isnan.
4359         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
4360         isnan-nolibm.
4361         * modules/frexp (Depends-on): Likewise.
4362         * modules/frexp-tests (Depends-on): Likewise.
4363         * modules/frexp-nolibm (Depends-on): Likewise.
4364         * modules/frexp-nolibm-tests (Depends-on): Likewise.
4365         * modules/isfinite (Depends-on): Likewise.
4366         * modules/round-tests (Depends-on): Likewise.
4367         * modules/signbit (Depends-on): Likewise.
4368         * modules/signbit-tests (Depends-on): Likewise.
4369         * modules/snprintf-posix (Depends-on): Likewise.
4370         * modules/sprintf-posix (Depends-on): Likewise.
4371         * modules/trunc-tests (Depends-on): Likewise.
4372         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
4373         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
4374         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
4375         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
4376         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
4377         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
4378         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
4379         * modules/vasnprintf-posix (Depends-on): Likewise.
4380         * modules/vasprintf-posix (Depends-on): Likewise.
4381         * modules/vfprintf-posix (Depends-on): Likewise.
4382         * modules/vsnprintf-posix (Depends-on): Likewise.
4383         * modules/vsprintf-posix (Depends-on): Likewise.
4384         * lib/frexp.c: Include isnand.h instead of isnan.h.
4385         (ISNAN): Set to isnand instead of isnan.
4386         * lib/isfinite.c: Include isnand.h instead of isnan.h.
4387         (gl_isfinited): Use isnand instead of isnan.
4388         * lib/signbitd.c: Include isnand.h instead of isnan.h.
4389         (gl_signbitd): Use isnand instead of isnan.
4390         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
4391         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
4392         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
4393         (main): Use isnand instead of isnan.
4394         * tests/test-round1.c: Include isnand.h.
4395         (main): Use isnand instead of isnan.
4396         * tests/test-round2.c: Include isnand.h instead of isnan.h.
4397         (ISNAN): Set to isnand instead of isnan.
4398         * tests/test-trunc1.c: Include isnand.h.
4399         (main): Use isnand instead of isnan.
4400         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
4401         (equal): Use isnand instead of isnan.
4402         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
4403         isnand-nolibm.
4404         * NEWS: Mention the change.
4405
4406 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
4407             Bruno Haible  <bruno@clisp.org>
4408
4409         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
4410         the GCC builtins for signbits are present and set
4411         REPLACE_SIGNBIT_USING_GCC if so.
4412         * lib/math.in.h (signbit): Define using GCC builtins if
4413         REPLACE_SIGNBIT_USING_GCC is set.
4414         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
4415         REPLACE_SIGNBIT_USING_GCC.
4416         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
4417
4418 2008-01-25  Jim Meyering  <meyering@redhat.com>
4419
4420         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
4421         * lib/poll.c: Include <config.h>, not "config.h".
4422         * tests/test-getaddrinfo.c: Likewise.
4423
4424 2008-01-25  Simon Josefsson  <simon@josefsson.org>
4425
4426         * modules/sockets-tests: New file.
4427
4428 2008-01-24  Simon Josefsson  <simon@josefsson.org>
4429
4430         * modules/sockets: New module, can be used to call WSA_Startup and
4431         WSA_Cleanup when needed.
4432
4433         * lib/sockets.h, lib/sockets.c: New files.
4434
4435         * m4/sockets.m4: New file.
4436
4437         * tests/test-sockets.c: New file.
4438
4439 2008-01-19  Bruno Haible  <bruno@clisp.org>
4440
4441         * doc/posix-headers: Renamed from doc/headers.
4442         * doc/posix-functions: Renamed from doc/functions.
4443         * doc/gnulib.texi: Update.
4444
4445 2008-01-19  Bruno Haible  <bruno@clisp.org>
4446
4447         * doc/glibc-functions/strcasestr.texi: Include contents of
4448         doc/functions/strcasestr.texi, fixing the list of platforms.
4449         * doc/functions/strcasestr.texi: Remove file.
4450
4451 2008-01-19  Bruno Haible  <bruno@clisp.org>
4452
4453         * doc/glibc-functions/memmem.texi: Include contents of
4454         doc/functions/memmem.texi.
4455         * doc/functions/memmem.texi: Remove file.
4456
4457 2008-01-18  Bruno Haible  <bruno@clisp.org>
4458
4459         * doc/glibc-functions/*.texi: New files.
4460         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
4461         to use the new files.
4462
4463 2008-01-17  Bruno Haible  <bruno@clisp.org>
4464
4465         * tests/test-gethostname.c (main): Fix printf statement.
4466
4467 2008-01-17  Simon Josefsson  <simon@josefsson.org>
4468
4469         * modules/gethostname-tests: New file.
4470
4471         * tests/test-gethostname.c: New file.
4472
4473 2008-01-17  Simon Josefsson  <simon@josefsson.org>
4474
4475         * lib/gethostname.c: Include string.h unconditionally, strncpy is
4476         used by the UNAME case.  Reported by Bruno Haible
4477         <bruno@clisp.org>.
4478
4479 2008-01-17  Eric Blake  <ebb9@byu.net>
4480
4481         Convert c-strcasestr to be more efficient.
4482         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
4483         (Depends-on): Add c-strcase, remove malloca, strnlen.
4484         * tests/test-c-strcasestr.c (main): Enhance test.
4485         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
4486
4487 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
4488
4489         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
4490         Use it in creating po/Makevars.
4491
4492 2008-01-15  Simon Josefsson  <simon@josefsson.org>
4493
4494         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
4495         Applications that requires it should initialize libgcrypt
4496         manually.
4497
4498 2008-01-16  Simon Josefsson  <simon@josefsson.org>
4499
4500         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
4501
4502 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
4503
4504         Fix problem with getdate on mingw32 reported by Simon Josefsson
4505         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
4506         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
4507         tzname", when deciding whether to declare tzname.
4508         * lib/strftime.c (tzname): Likewise.
4509
4510 2008-01-15  Bruno Haible  <bruno@clisp.org>
4511
4512         Work around a MacOS X 10.5 bug in frexpl().
4513         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
4514         * doc/functions/frexpl.texi: Document the bug.
4515         Reported by Elias Pipping <pipping@gentoo.org>.
4516
4517 2008-01-14  Eric Blake  <ebb9@byu.net>
4518
4519         Touch up previous patch.
4520         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
4521         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
4522
4523         Convert strcasestr module to use Two-Way algorithm.
4524         * modules/strcasestr-simple: New module, based on the old
4525         strcasestr, but with Two-Way rather than KMP.
4526         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
4527         * lib/string.in.h (rpl_strcasestr): Declare.
4528         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
4529         performance.
4530         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
4531         * modules/string (Makefile.am): Support strcasestr.
4532         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
4533         * modules/strcasestr-tests (Depends-on): Check for alarm.
4534         * tests/test-strcasestr.c: Augment test.
4535         * lib/str-two-way.h: Clean up stray macro.
4536         * NEWS: Document new module.
4537         * MODULES.html.sh (string handling): Likewise.
4538         * doc/functions/strcasestr.texi: New file.
4539         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
4540         here, since it is not a POSIX function.
4541
4542 2008-01-14  Colin Watson  <cjwatson@debian.org>
4543             Bruno Haible  <bruno@clisp.org>
4544
4545         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
4546         works fine; if not, set REPLACE_STRSIGNAL.
4547         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
4548         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
4549         REPLACE_STRSIGNAL.
4550         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
4551         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
4552         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
4553
4554 2008-01-14  Bruno Haible  <bruno@clisp.org>
4555
4556         * modules/strsignal (Include): Change to <string.h>.
4557
4558 2008-01-14  Colin Watson  <cjwatson@debian.org>
4559
4560         * modules/argp (Notice): Add a notice recommending to change
4561         XGETTEXT_OPTIONS.
4562         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
4563
4564 2008-01-13  Colin Watson  <cjwatson@debian.org>
4565
4566         * modules/strsignal-tests: New file.
4567         * tests/test-strsignal.c: New file.
4568
4569         * lib/strsignal.c: New file, from glibc with modifications.
4570         * lib/siglist.h: New file, from glibc with modifications.
4571         * lib/string.in.h (strsignal): New declaration.
4572         * m4/strsignal.m4: New file.
4573         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
4574         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
4575         * modules/strsignal: New file.
4576         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
4577         HAVE_DECL_STRSIGNAL.
4578
4579 2008-01-13  Bruno Haible  <bruno@clisp.org>
4580
4581         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
4582         locale encoding is not ASCII. Needed for OpenBSD 4.0.
4583         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
4584         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
4585
4586 2008-01-13  Bruno Haible  <bruno@clisp.org>
4587
4588         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
4589         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
4590         * lib/argp.h (__attribute__): Likewise.
4591         * lib/c-stack.c (__attribute__): Likewise.
4592         * lib/error.h (__attribute__): Likewise.
4593         * lib/fts.c (__attribute__): Likewise.
4594         * lib/openat.h (__attribute__): Likewise.
4595         * lib/stdio.in.h (__attribute__): Likewise.
4596         * lib/string.in.h (__attribute__): Likewise.
4597         * lib/utimens.c (__attribute__): Likewise.
4598         * lib/vasnprintf.h (__attribute__): Likewise.
4599         * lib/xalloc.h (__attribute__): Likewise.
4600         * lib/xprintf.h (__attribute__): Likewise.
4601         * lib/xstrtol.h (__attribute__): Likewise.
4602         * lib/xvasprintf.h (__attribute__): Likewise.
4603
4604 2008-01-12  Bruno Haible  <bruno@clisp.org>
4605
4606         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
4607         * doc/glibc-headers/a.out.texi: New file.
4608         * doc/glibc-headers/aliases.texi: New file.
4609         * doc/glibc-headers/alloca.texi: New file.
4610         * doc/glibc-headers/ar.texi: New file.
4611         * doc/glibc-headers/argp.texi: New file.
4612         * doc/glibc-headers/argz.texi: New file.
4613         * doc/glibc-headers/byteswap.texi: New file.
4614         * doc/glibc-headers/crypt.texi: New file.
4615         * doc/glibc-headers/endian.texi: New file.
4616         * doc/glibc-headers/envz.texi: New file.
4617         * doc/glibc-headers/err.texi: New file.
4618         * doc/glibc-headers/error.texi: New file.
4619         * doc/glibc-headers/execinfo.texi: New file.
4620         * doc/glibc-headers/fpu_control.texi: New file.
4621         * doc/glibc-headers/fstab.texi: New file.
4622         * doc/glibc-headers/fts.texi: New file.
4623         * doc/glibc-headers/getopt.texi: New file.
4624         * doc/glibc-headers/ieee754.texi: New file.
4625         * doc/glibc-headers/ifaddrs.texi: New file.
4626         * doc/glibc-headers/libintl.texi: New file.
4627         * doc/glibc-headers/mcheck.texi: New file.
4628         * doc/glibc-headers/mntent.texi: New file.
4629         * doc/glibc-headers/obstack.texi: New file.
4630         * doc/glibc-headers/paths.texi: New file.
4631         * doc/glibc-headers/printf.texi: New file.
4632         * doc/glibc-headers/pty.texi: New file.
4633         * doc/glibc-headers/resolv.texi: New file.
4634         * doc/glibc-headers/shadow.texi: New file.
4635         * doc/glibc-headers/sysexits.texi: New file.
4636         * doc/glibc-headers/ttyent.texi: New file.
4637
4638 2008-01-12  Jim Meyering  <meyering@redhat.com>
4639
4640         announce-gen: emit Gnulib's git-based version string.
4641         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
4642         New option --gnulib-version=V, where V is expected to be
4643         the output of running git describe in the gnulib directory.
4644         (get_tool_versions): Request feedback on xdelta.  I suspect it's
4645         not useful, and plan to stop publishing an xdelta file with each
4646         coreutils release.
4647
4648         * build-aux/announce-gen: Also check for lzma-compressed files.
4649
4650 2008-01-11  Bruno Haible  <bruno@clisp.org>
4651
4652         * tests/test-memmem.c (main): Increase maximum allowed time.
4653         * tests/test-strstr.c (main): Likewise.
4654
4655 2008-01-11  Bruno Haible  <bruno@clisp.org>
4656
4657         * doc/functions/memmem.texi: Add more precisions about platforms.
4658         * doc/functions/strstr.texi: Likewise.
4659
4660 2008-01-10  Eric Blake  <ebb9@byu.net>
4661
4662         * m4/strstr.m4: Delete cruft from copy-n-paste.
4663         Reported by Bruno Haible.
4664
4665 2008-01-10  Bruno Haible  <bruno@clisp.org>
4666
4667         Make c-strstr rely on strstr.
4668         * lib/c-strstr.c: Don't include str-kmp.h.
4669         (c_strstr): Define in terms of strstr.
4670         * modules/c-strstr (Files): Remove lib/str-kmp.h.
4671         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
4672
4673 2008-01-10  Bruno Haible  <bruno@clisp.org>
4674
4675         * doc/gnulib.texi (String Functions in C Locale): New section.
4676         * doc/c-ctype.texi: New file.
4677         * doc/c-strcase.texi: New file.
4678         * doc/c-strcaseeq.texi: New file.
4679         * doc/c-strcasestr.texi: New file.
4680         * doc/c-strstr.texi: New file.
4681         * doc/c-strtod.texi: New file.
4682         * doc/c-strtold.texi: New file.
4683
4684 2008-01-10  Eric Blake  <ebb9@byu.net>
4685
4686         * lib/relocatable.h: Fix a comment.
4687
4688 2008-01-10  Eric Blake  <ebb9@byu.net>
4689
4690         Share two-way algorithm.
4691         * lib/str-two-way.h: New file, merged from...
4692         * lib/memmem.c: ...here...
4693         * lib/strstr.c: ...and here.
4694         * modules/memmem (Files): Use it.
4695         * modules/strstr (Files): Likewise.
4696
4697         Avoid quadratic strstr implementations.
4698         * lib/strstr.c: New file.
4699         * m4/strstr.m4: Likewise.
4700         * modules/strstr: Likewise.
4701         * modules/strstr-tests: Likewise.
4702         * tests/test-strstr.c: Likewise.
4703         * lib/string.in.h (rpl_strstr): Declare.
4704         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
4705         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
4706         * modules/string (Makefile.am): Likewise.
4707         * MODULES.html.sh (string handling): Mention new module.
4708         * doc/functions/strstr.texi (strstr): Document the bug.
4709
4710 2008-01-10  Bruno Haible  <bruno@clisp.org>
4711
4712         * lib/relocatable.h (relocate): State whether result is freshly
4713         allocated or not.
4714         * lib/relocatable.c (relocate): Return a freshly allocated string
4715         instead of a pointer to a privately held string.
4716         Reported by Sylvain Beucler <beuc@gnu.org>.
4717
4718 2008-01-10  Colin Watson  <cjwatson@debian.org>
4719
4720         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
4721         s/S_ISNLK/S_ISLNK/.
4722
4723 2008-01-09  Bruno Haible  <bruno@clisp.org>
4724
4725         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
4726         and other files.
4727         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
4728         if it's only a guess.
4729         * modules/memmem: Simplify by depending on memmem-simple.
4730
4731 2008-01-09  Bruno Haible  <bruno@clisp.org>
4732
4733         Work around OpenBSD 4.0 tdelete() bug.
4734         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
4735         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
4736         macros and don't redefine the enum values.
4737         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
4738         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
4739         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
4740
4741 2008-01-09  Bruno Haible  <bruno@clisp.org>
4742
4743         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
4744         (main): Don't perform the tests if setlocale did not install a UTF-8
4745         locale. Needed on OpenBSD 4.0.
4746         * modules/wcwidth-tests (Depends-on): Add localcharset.
4747
4748 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
4749
4750         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
4751         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
4752         * NEWS: announce this.
4753         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
4754
4755 2008-01-09  Simon Josefsson  <simon@josefsson.org>
4756         and Eric Blake  <ebb9@byu.net>
4757
4758         Add memmem-simple module.
4759         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
4760         (gl_FUNC_MEMMEM): Separate performance from presence checks.
4761         * modules/memmem-simple: New file.
4762         * modules/memmem (Description): Tweak.
4763         * MODULES.html.sh (string handling): Mention new module.
4764         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
4765         addressed by memmem-simple.
4766         * NEWS: Document the difference.
4767
4768 2008-01-09  Eric Blake  <ebb9@byu.net>
4769
4770         Give gcc some memmem optimization hints.
4771         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
4772         (strcasestr): Declare as pure.
4773         * modules/memmem (Maintainer): Claim my implementation.
4774
4775 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4776
4777         Support AIX 6.1 and higher.
4778         * build-aux/config.libpath: Likewise.
4779         * build-aux/config.rpath: Likewise.
4780
4781 2008-01-08  Jim Meyering  <meyering@redhat.com>
4782             Bruno Haible  <bruno@clisp.org>
4783
4784         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
4785         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
4786         Reported by Peter Fales in
4787         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
4788
4789 2008-01-08  Bruno Haible  <bruno@clisp.org>
4790
4791         * modules/unictype/category-of (Depends-on): Add
4792         unictype/category-none.
4793         * modules/unictype/category-and-tests (Depends-on): Add
4794         unictype/category-{L,N,Lu,Nd}.
4795         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
4796         * modules/unictype/category-or-tests (Depends-on): Add
4797         unictype/category-{L,N}.
4798         * modules/unictype/category-name-tests (Depends-on): Add
4799         unictype/category-{Z,Nl}.
4800         Reported by Simon Josefsson.
4801
4802 2008-01-08  Bruno Haible  <bruno@clisp.org>
4803
4804         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
4805         convention better.
4806         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
4807         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
4808         Reported by Peter Miller <millerp@canb.auug.org.au>.
4809
4810 2008-01-08  Eric Blake  <ebb9@byu.net>
4811
4812         Rewrite memmem to guarantee linear complexity without malloc.
4813         * lib/memmem.c (memmem): Use Two-Way rather than
4814         Knuth-Morris-Pratt, to allow O(1) space usage.
4815         (critical_factorization, two_way_short_needle)
4816         (two_way_long_needle): New functions.
4817         (knuth_morris_pratt): Delete.
4818         * modules/memmem (Depends-on): No longer need malloca or stdbool.
4819         Add stdint.
4820         * tests/test-memmem.c (main): Add tests for periodic needle and
4821         sublinear performance.
4822         * doc/functions/memmem.texi (memmem): Document other deficiencies
4823         in cygwin and older glibc.
4824
4825 2008-01-08  Bruno Haible  <bruno@clisp.org>
4826
4827         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
4828         augmentation.
4829
4830 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
4831
4832         Add a configure time option: --disable-acl.
4833         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
4834         AC_ARG_ENABLE(acl).
4835
4836 2008-01-06  Simon Josefsson  <simon@josefsson.org>
4837
4838         * tests/test-localename.c: Don't include obsolete "setenv.h".
4839
4840         * modules/localename-tests (Depends-on): Need unsetenv.
4841
4842 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4843
4844         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
4845
4846 2008-01-06  Colin Watson  <cjwatson@debian.org>
4847
4848         * users.txt: Add man-db.
4849
4850 2008-01-07  Bruno Haible  <bruno@clisp.org>
4851
4852         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
4853         previous section name.
4854
4855 2008-01-07  Bruno Haible  <bruno@clisp.org>
4856
4857         * lib/progname.c (set_program_name): Don't strip off a leading
4858         "lt-" prefix outside a .libs directory.
4859         Suggested by Paul Eggert.
4860
4861 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
4862             Bruno Haible  <bruno@clisp.org>
4863
4864         Improve memory cleanup in 'relocatable' module.
4865         * lib/relocatable.h (compute_curr_prefix): Change return type to
4866         'char *'.
4867         * lib/relocatable.c (compute_curr_prefix): Change return type to
4868         'char *'. Free curr_installdir after use.
4869         (relocate): Free curr_prefix_better after use.
4870         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
4871
4872 2008-01-01  Bruno Haible  <bruno@clisp.org>
4873
4874         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
4875         failure on older glibc systems.
4876         Reported by Peter Fales <psfales@alcatel-lucent.com>.
4877
4878 2008-01-05  Eric Blake  <ebb9@byu.net>
4879
4880         Avoid quadratic system memmem.
4881         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
4882         Reported by Ralf Wildenhues.
4883
4884         Fix memmem test for mingw.
4885         * modules/memmem-tests (configure.ac): Check for alarm.
4886         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
4887         it.
4888         * doc/functions/memmem.texi: New file.
4889         * doc/gnulib.texi (Function Substitutes): Add memmem.
4890         Reported by Bruno Haible.
4891
4892 2008-01-04  Bruno Haible  <bruno@clisp.org>
4893
4894         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
4895         Require gl_HEADER_STRINGS_H_DEFAULTS, not
4896         gl_HEADER_STRING_H_DEFAULTS.
4897
4898 2008-01-04  Eric Blake  <ebb9@byu.net>
4899
4900         Shorten duration of memmem test.
4901         * tests/test-memmem.c (main): Use alarm to declare failure if test
4902         is taking too long.
4903         Reported by Ralf Wildenhues.
4904
4905 2007-12-21  Simon Josefsson  <simon@josefsson.org>
4906
4907         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
4908         string, needed by strerror.
4909
4910 2008-01-03  Colin Watson  <cjwatson@debian.org>
4911             Bruno Haible  <bruno@clisp.org>
4912
4913         * doc/gnulib-tool.texi (Localization): New section.
4914
4915 2008-01-02  Bruno Haible  <bruno@clisp.org>
4916
4917         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
4918         variables to 'unsigned char *' type.
4919         Reported by Paul Eggert.
4920
4921 2008-01-02  Jim Meyering  <jim@meyering.net>
4922
4923         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
4924
4925 2007-12-31  Jim Meyering  <jim@meyering.net>
4926
4927         Avoid use of private FTS type name.
4928         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
4929
4930 2007-12-30  Karl Berry  <karl@gnu.org>
4931
4932         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
4933         work around defect in Texinfo and/or the standalone Info browser.
4934
4935 2007-12-30  Bruno Haible  <bruno@clisp.org>
4936
4937         Unify 5 copies of the KMP code.
4938         * lib/str-kmp.h: New file.
4939         * lib/c-strcasestr.c: Include str-kmp.h.
4940         (knuth_morris_pratt): Remove function.
4941         (c_strcasestr): Update.
4942         * lib/c-strstr.c: Include str-kmp.h.
4943         (knuth_morris_pratt): Remove function.
4944         (c_strcasestr): Update.
4945         * lib/mbscasestr.c: Include str-kmp.h.
4946         (knuth_morris_pratt_unibyte): Remove function.
4947         * lib/mbsstr.c: Include str-kmp.h.
4948         (knuth_morris_pratt_unibyte): Remove function.
4949         * lib/strcasestr.c: Include str-kmp.h.
4950         (knuth_morris_pratt): Remove function.
4951         (strcasestr): Update.
4952         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
4953         * modules/c-strstr (Files): Likewise.
4954         * modules/mbscasestr (Files): Likewise.
4955         * modules/mbsstr (Files): Likewise.
4956         * modules/strcasestr (Files): Likewise.
4957         Suggested by Paul Eggert.
4958
4959 2007-12-30  Bruno Haible  <bruno@clisp.org>
4960
4961         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
4962         defined.
4963
4964 2007-12-30  Bruno Haible  <bruno@clisp.org>
4965
4966         * lib/xmalloca.h: Include xalloc.h.
4967         (xnmalloca): New macro.
4968
4969 2007-12-30  Bruno Haible  <bruno@clisp.org>
4970
4971         * lib/malloca.h (nmalloca): New macro.
4972         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
4973         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
4974         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
4975         knuth_morris_pratt_multibyte): Likewise.
4976         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
4977         knuth_morris_pratt_multibyte): Likewise.
4978         * lib/memmem.c (knuth_morris_pratt): Likewise.
4979         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
4980
4981 2007-12-25  Bruno Haible  <bruno@clisp.org>
4982
4983         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
4984         * lib/glob.c: Don't include openat.h.
4985         (link_exists2_p): Add back the code that deals with the
4986         !GLOB_ALTDIRFUNC case.
4987         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
4988         let it do the filename concatenation.
4989         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
4990         * modules/glob (Depends-on): Remove openat.
4991
4992 2007-12-31  Bruno Haible  <bruno@clisp.org>
4993
4994         * modules/dirfd (License): Change to LGPLv2+.
4995         Approved by Jim Meyering.
4996
4997 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
4998
4999         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
5000         when multiplying M by sizeof (size_t).
5001
5002 2007-12-10  Martin Lambers  <marlam@marlam.de>
5003
5004         Override getpagesize on mingw.
5005         * lib/getpagesize.c: New file.
5006         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
5007         * modules/getpagesize (Files): Add lib/getpagesize.c.
5008         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
5009         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
5010         REPLACE_GETPAGESIZE.
5011         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
5012
5013 2007-12-25  Bruno Haible  <bruno@clisp.org>
5014
5015         * modules/localcharset (Notice): New field.
5016         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
5017         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
5018
5019 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
5020             Bruno Haible  <bruno@clisp.org>
5021
5022         Avoid using the syntax symbol() in formatted documentation.
5023         * MODULES.html.sh (func_module): When replacing symbol() with a
5024         hyperlink, remove the parentheses. Show an error if some remain.
5025         Recognize and render the '...' syntax.
5026         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
5027         Rework. Add paragraph about GCC's inlining.
5028         * doc/alloca.texi: Likewise.
5029         * doc/error.texi: Remove parentheses from symbol reference.
5030         * doc/gnulib-intro.texi: Likewise.
5031         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
5032         * modules/fnmatch (Description): Reword to say "the ... function".
5033         * modules/full-read (Description): Likewise.
5034         * modules/full-write (Description): Likewise.
5035         * modules/safe-read (Description): Likewise.
5036         * modules/safe-write (Description): Likewise.
5037         * modules/strchrnul (Description): Likewise.
5038         * modules/trim (Description): Likewise.
5039         * modules/error (Description): Remove parentheses from symbol
5040         references.
5041         * modules/verror (Description): Likewise.
5042         Reported by Karl Berry.
5043
5044 2007-12-25  Bruno Haible  <bruno@clisp.org>
5045
5046         Fixup after 2007-10-16 commit.
5047         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
5048
5049 2007-12-24  Bruno Haible  <bruno@clisp.org>
5050
5051         Make --enable-relocatable work with DESTDIR.
5052         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
5053         to compute installdir from destprog.
5054         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
5055         also set the RELOC_DESTDIR variable.
5056         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
5057
5058 2007-12-24  Bruno Haible  <bruno@clisp.org>
5059
5060         Fix link error due to xalloc_die().
5061         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
5062         of xreadlink.
5063         * lib/relocwrapper.c: Update comments.
5064         * build-aux/install-reloc: Remove xreadlink.c from file list.
5065         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
5066         xreadlink.c.
5067         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
5068
5069 2007-12-24  Bruno Haible  <bruno@clisp.org>
5070
5071         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
5072         * lib/setenv.h: Remove file.
5073         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
5074         lib/setenv.h.
5075         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
5076         (Depends-on): Add stdlib.
5077         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
5078         gl_FUNC_UNSETENV.
5079         (Include): Replace setenv.h with <stdlib.h>.
5080         * modules/unsetenv: New file.
5081         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
5082         * lib/unsetenv.c: Include <stdlib.h> first.
5083         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
5084         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
5085         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
5086         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
5087         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
5088         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
5089         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
5090         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
5091         * doc/functions/unsetenv.texi: Update.
5092         * modules/xsetenv (Depends-on): Add unsetenv.
5093         * modules/getdate (Depends-on): Likewise.
5094         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
5095         * lib/xsetenv.c: Don't include setenv.h.
5096         * lib/getdate.y: Likewise.
5097         * lib/relocwrapper.c: Likewise.
5098         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
5099         (Depends-on): Add stdlib.
5100         * NEWS: Mention the changes.
5101         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
5102
5103 2007-12-23  Bruno Haible  <bruno@clisp.org>
5104
5105         * lib/memmem.c (memmem): Use lowercase variable names. Tab
5106         indentation.
5107
5108 2007-12-23  Bruno Haible  <bruno@clisp.org>
5109
5110         * lib/c-strcasestr.c: Add more comments.
5111         * lib/c-strstr.c: Likewise.
5112         * lib/mbscasestr.c: Likewise.
5113         * lib/mbsstr.c: Likewise.
5114         * lib/strcasestr.c: Likewise.
5115         * lib/memmem.c: Likewise.
5116
5117 2007-12-23  Bruno Haible  <bruno@clisp.org>
5118
5119         * tests/test-memmem.c: Include <string.h> first.
5120
5121 2007-12-22  Bruno Haible  <bruno@clisp.org>
5122
5123         * gnulib-tool (func_create_testdir): Change $auxdir while generating
5124         the contents of $testsbase.
5125         Reported by Ralf Wildenhues.
5126
5127 2007-12-22  Bruno Haible  <bruno@clisp.org>
5128
5129         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
5130         two variables local_ldadd_before, local_ldadd_last.
5131
5132 2007-12-20  Eric Blake  <ebb9@byu.net>
5133
5134         Work around circular library issue when cross-compiling.
5135         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
5136         that progname.o does not need to pull in rpl_memcmp.
5137
5138 2007-12-19  Eric Blake  <ebb9@byu.net>
5139
5140         Fix memmem to avoid O(n^2) worst-case complexity.
5141         * lib/memmem.c (knuth_morris_pratt): New function.
5142         (memmem): Use it if first few naive iterations fail.
5143         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
5144         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
5145         * modules/memchr (License): Likewise.
5146         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
5147         malloca.
5148         * tests/test-memmem.c: Rewrite, borrowing ideas from
5149         test-mbsstr1.c; the old version wouldn't even compile!
5150         * modules/memmem-tests: New file.
5151         * lib/string.in.h (rpl_memmem): Add declaration.
5152         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
5153         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
5154         REPLACE_MEMMEM.
5155
5156 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
5157
5158         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
5159         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
5160         before any system include files, and undef after them all.  This
5161         should fix a problem on VMS reported by John E. Malmberg in
5162         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
5163
5164 2007-12-17  Eric Blake  <ebb9@byu.net>
5165
5166         Revert addition of verify, for BSD/OS.
5167         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
5168         can't handle large files, for the sake of obsolete platforms.
5169         * modules/fseeko (Depends-on): Remove verify.
5170         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
5171         * doc/functions/ftello.texi (ftello): Likewise.
5172         * doc/functions/fgetpos.texi (fgetpos): Likewise.
5173         Reported by Larry Jones.
5174
5175 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
5176
5177         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
5178         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
5179
5180 2007-12-17  Jim Meyering  <meyering@redhat.com>
5181
5182         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
5183         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
5184         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
5185         * modules/getcwd (Depends-on): Add openat.
5186         Reported by Petr Salinger.
5187
5188 2007-12-17  Bruno Haible  <bruno@clisp.org>
5189
5190         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
5191         avoid a segmentation fault of the configure test on x86_64 systems.
5192
5193 2007-12-15  Jim Meyering  <meyering@redhat.com>
5194
5195         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
5196
5197 2007-12-13  Eric Blake  <ebb9@byu.net>
5198
5199         Another fseek test.
5200         * tests/test-fseek.c (main): Also test ungetc handling.
5201         * tests/test-fseeko.c (main): Likewise.
5202         * modules/fseeko (Depends-on): Add verify.
5203         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
5204         large.
5205         Reported by Larry Jones.
5206
5207         Fix fseeko on mingw.
5208         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
5209         seek.
5210
5211         Beef up fseek tests.
5212         * tests/test-fseek.c (main): Also test eof handling.
5213         * tests/test-fseeko.c (main): Likewise.
5214         Reported by Larry Jones.
5215
5216 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
5217
5218         Fix fseeko on BSD-based platforms.
5219         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
5220         successful seek.
5221
5222 2007-12-12  Eric Blake  <ebb9@byu.net>
5223
5224         Allow circular dependency of separate libtests.a
5225         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
5226         when use_libtests.
5227
5228 2007-12-11  Eric Blake  <ebb9@byu.net>
5229
5230         Fix bug with -0.0L in previous patch.
5231         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
5232         * tests/test-isnan.c (main): Also test on zeroes.
5233         * tests/test-isnanf.c (main): Likewise.
5234         * tests/test-isnanl.h (main): Likewise.
5235
5236         Detect pseudo-denormals on x86 even when cross-compiling.
5237         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
5238         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
5239         invalid bit patterns that happen to satisfy ==.
5240
5241         Avoid link failures with separate libtests.a.
5242         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
5243         last, to satisfy circular dependencies.
5244
5245 2007-12-11  Eric Blake  <ebb9@byu.net>
5246         and Bruno Haible  <bruno@clisp.org>
5247
5248         Fix OpenBSD 4.0 <float.h> handling of long double.
5249         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
5250         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
5251         * doc/headers/float.texi (float.h): Document OpenBSD bug.
5252
5253 2007-12-11  Jim Meyering  <meyering@redhat.com>
5254
5255         * users.txt: Add libvirt.
5256
5257         Support versions of autoconf prior to 2.59c.
5258         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
5259         if it is not already defined.
5260
5261 2007-12-09  Bruno Haible  <bruno@clisp.org>
5262
5263         Let 'gnulib-tool --import' collect sources needed for the tests in
5264         tests/ rather than in lib/.
5265         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
5266         argument. If true, add rules to generate libtests.a, and put libtests.a
5267         into $(LDADD). Consider source files in subdirectories and set
5268         uses_subdirs.
5269         (func_emit_initmacro_start, func_emit_initmacro_end,
5270         func_emit_initmacro_done): Pass all arguments explicitly.
5271         (func_import): Determine two module lists main_modules,
5272         testsrelated_modules. Determine use_libtests. Determine two variables
5273         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
5274         instead of just sed_transform_lib_file. Determine two variables
5275         main_files and testsrelated_files. Compute 'files' as the union of
5276         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
5277         func_add_or_update. In the generated gnulib-comp.m4, collect the
5278         object files for tests/ in different variables than those for lib/.
5279         Substitute LIBTESTS_LIBDEPS.
5280         (func_create_testdir): Combine the uses_subdirs results from
5281         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
5282
5283 2007-12-09  Bruno Haible  <bruno@clisp.org>
5284
5285         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
5286         the build-aux directory.
5287
5288 2007-12-09  Bruno Haible  <bruno@clisp.org>
5289
5290         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
5291         introduced on 2006-09-09.
5292
5293 2007-12-07  Jim Meyering  <meyering@redhat.com>
5294
5295         Let these macros work also with autoconf-2.59.
5296         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
5297         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
5298         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
5299
5300 2007-12-06  Jim Meyering  <meyering@redhat.com>
5301
5302         Avoid a configure-time syntax error in gl_FUNC_ACL.
5303         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
5304         function in each branch, before testing the cache variable.
5305
5306 2007-12-04  Eric Blake  <ebb9@byu.net>
5307
5308         Make scripts executable.
5309         * build-aux/config.guess: Add execute permissions.
5310         * build-aux/config.sub: Likewise.
5311         * build-aux/gendocs.sh: Likewise.
5312
5313         Fix frexp on mingw.
5314         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
5315         cross-compiling.
5316         * doc/functions/frexp.texi (frexp): Document the bug.
5317
5318         Make cygwin fseeko check more reliable.
5319         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
5320         version numbers, rather than unrelated feature check.
5321         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
5322         * doc/functions/ftello.texi (ftello): Likewise.
5323         Reported by Bruno Haible.
5324
5325         * m4/strerror.m4: Bump version number.
5326
5327 2007-12-03  Bruno Haible  <bruno@clisp.org>
5328
5329         * doc/functions/mprotect.texi: Mention the mingw problem.
5330
5331 2007-12-03  Eric Blake  <ebb9@byu.net>
5332
5333         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
5334         REPLACE_STRERROR is initialized before this macro.
5335
5336 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
5337
5338         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
5339         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
5340         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
5341         put -lsec in even for programs other than 'ls'.  This fixes a problem
5342         for gettext reported by Bruno Haible in
5343         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
5344         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
5345         Add support for Solaris 10.  This isn't efficient, but should get the
5346         job done for now.
5347
5348 2007-12-03  James Youngman  <jay@gnu.org>
5349
5350         * doc/regexprops-generic.texi: change "an close-group" to "a
5351         close-group" and "illegal" to "not allowed".
5352
5353 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5354
5355         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
5356         pr_byname.h. Needed for the rare case when the maintainer has done
5357         "make maintainer-clean" in the source directory and then attempts a
5358         build outside the source directory.
5359         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
5360         scripts_byname.h.
5361
5362 2007-12-02  Martin Lambers <marlam@marlam.de>
5363             Bruno Haible  <bruno@clisp.org>
5364
5365         * lib/getpagesize.h: Remove file.
5366         * lib/unistd.in.h: Include declaration of getpagesize here.
5367         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
5368         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
5369         HAVE_SYS_PARAM_H.
5370         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
5371         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
5372         * modules/getpagesize (Files): Remove lib/getpagesize.h.
5373         (Depends-on): Add unistd.
5374         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
5375         (Include): Use <unistd.h> instead of getpagesize.h.
5376         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
5377         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
5378         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
5379         gl_GETPAGESIZE invocation, already handled by module dependency.
5380         * lib/pagealign_alloc.c: Don't include getpagesize.h.
5381
5382 2007-12-02  Bruno Haible  <bruno@clisp.org>
5383
5384         * modules/strings-tests: New file.
5385         * tests/test-strings.c: New file.
5386
5387         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
5388         * lib/strings.in.h: New file.
5389         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
5390         * m4/strings_h.m4: New file.
5391         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
5392         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
5393         * modules/strings: New file.
5394         * modules/string (Makefile.am): Update.
5395         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
5396         Reported by Karl Berry.
5397
5398 2007-12-01  Eric Blake  <ebb9@byu.net>
5399
5400         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
5401         accomodate fix in cygwin 1.5.25.
5402
5403 2007-12-01  Jim Meyering  <meyering@redhat.com>
5404
5405         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
5406         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
5407         that would inhibit utf8-optimization of a regexp containing line-
5408         or buffer-anchors, e.g., `^', `$'.
5409
5410 2007-11-30  Bruno Haible  <bruno@clisp.org>
5411
5412         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
5413         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
5414         glthread_recursive_lock_init.
5415         * lib/lock.c (glthread_recursive_lock_init)
5416         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
5417         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
5418
5419 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
5420
5421         New function qset_acl, like set_acl but with syscall semantics.
5422         * lib/acl.h (qset_acl): New decl.
5423         * lib/acl.c (qset_acl): New function.
5424         (set_acl): Use new function.  Use more-consistent diagnostics.
5425
5426 2007-11-28  Jim Meyering  <meyering@redhat.com>
5427
5428         * modules/physmem (License): Change from GPL to LGPLv2+.
5429
5430 2007-11-26  Bruno Haible  <bruno@clisp.org>
5431
5432         * lib/vasnprintf.c (decode_long_double): Don't abort if the
5433         'long double' type has excess precision.
5434         Reported by Jim Meyering in
5435         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
5436
5437 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5438
5439         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
5440         Sync from <http://gnu.org/licenses>.
5441         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
5442         with license text from same location.
5443         * doc/maintain.texi, doc/standards.texi:  Sync from
5444         <http://savannah.gnu.org/projects/gnustandards>.
5445
5446 2007-11-22  OndÅ™ej Vašík  <ovasik@redhat.com>
5447         and Jim Meyering  <meyering@redhat.com>
5448
5449         Adjust getdate' grammar to accept a slightly more regular language.
5450         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
5451         Before, the former was rejected.
5452         * lib/getdate.y (digits_to_date_time): New function, factored
5453         out of ...
5454         (number): ...here.  Just call digits_to_date_time.
5455         (hybrid): New non-terminal to handle an <unsigned number,
5456         signed relative offset> sequence consistently.
5457
5458 2007-11-18  Jim Meyering  <meyering@redhat.com>
5459
5460         Pull my changes from coreutils:
5461         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
5462         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
5463         use of $gnulib_tool_option_extras, so that it's separated from the
5464         preceding argument.
5465
5466         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
5467         * build-aux/bootstrap (cp_mark_as_generated): Create any required
5468         parent destination directories before copying a file into place.
5469
5470 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
5471
5472         bootstrap: work also with 4-argument variant of AC_INIT
5473         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
5474
5475 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
5476
5477         Port test-getaddrinfo to Solaris.
5478         Problem reported by Bruno Haible in
5479         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
5480         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
5481         explanation of setting 'hints'.
5482         Don't reject an implementation merely because it returns EAI_SERVICE.
5483         (EAI_SERVICE): Define to 0 if not defined.
5484
5485 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
5486
5487         The license of gnu-make and posix-shell is now "GPLed build tool".
5488         * modules/gnu-make (License): Likewise.
5489         * modules/posix-shell (License): Likewise.
5490
5491         New module posix-shell, for determining a POSIX shell
5492         or perhaps something that is close enough to a POSIX shell.
5493         * m4/posix-shell.m4: New file.
5494         * modules/posix-shell: New file.
5495
5496         * MODULES.html.sh: Mention new module.
5497
5498         New module gnu-make, for determining whether we're using GNU Make.
5499         * m4/gnu-make.m4: New file.
5500         * modules/gnu-make: New file.
5501         * MODULES.html.sh: Mention new module.
5502
5503 2007-11-14  Jim Meyering  <meyering@redhat.com>
5504
5505         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
5506         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
5507         use this macro to create a function _definition_.
5508         Remove useless "#undef ARGMATCH_DIE".
5509
5510 2007-11-14  Bruno Haible  <bruno@clisp.org>
5511
5512         * lib/config.charset: Update for OpenBSD 4.1.
5513         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
5514
5515 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
5516
5517         Document 64-bit #if problems in stdint.texi.
5518         * doc/headers/stdint.texi (stdint.h): Mention problems with
5519         64-bit-#if, and how to work around them.
5520
5521         Don't insist on 'long long int' support in the preprocessor.  It
5522         breaks too many things.  For example, PRIdMAX still uses a 'long
5523         long int' format with the latest Sun compiler, even though
5524         HAVE_LONG_LONG_INT isn't defined due to that compiler's
5525         preprocessor problem.  This causes the latest coreutils to dump
5526         core on Solaris 10 sparc with the Sun C compiler.
5527         Instead, fix the 2007-10-16 problem in a different way, by evaluating
5528         the troublesome expressions at configure-time, not at #if-time.
5529         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
5530         preprocessor.
5531         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
5532         compile-time C checks, done at 'configure'-time.
5533         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
5534         * modules/inttypes (Makefile): Substitute the new symbols that
5535         gl_INTTYPES_H now generates.
5536         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
5537
5538 2007-11-12  Bruno Haible  <bruno@clisp.org>
5539
5540         Tests for Unicode character classification functions.
5541
5542         * modules/unictype/bidicategory-byname-tests: New file.
5543         * modules/unictype/bidicategory-name-tests: New file.
5544         * modules/unictype/bidicategory-of-tests: New file.
5545         * modules/unictype/bidicategory-test-tests: New file.
5546         * modules/unictype/block-list-tests: New file.
5547         * modules/unictype/block-of-tests: New file.
5548         * modules/unictype/block-test-tests: New file.
5549         * modules/unictype/category-C-tests: New file.
5550         * modules/unictype/category-Cc-tests: New file.
5551         * modules/unictype/category-Cf-tests: New file.
5552         * modules/unictype/category-Cn-tests: New file.
5553         * modules/unictype/category-Co-tests: New file.
5554         * modules/unictype/category-Cs-tests: New file.
5555         * modules/unictype/category-L-tests: New file.
5556         * modules/unictype/category-Ll-tests: New file.
5557         * modules/unictype/category-Lm-tests: New file.
5558         * modules/unictype/category-Lo-tests: New file.
5559         * modules/unictype/category-Lt-tests: New file.
5560         * modules/unictype/category-Lu-tests: New file.
5561         * modules/unictype/category-M-tests: New file.
5562         * modules/unictype/category-Mc-tests: New file.
5563         * modules/unictype/category-Me-tests: New file.
5564         * modules/unictype/category-Mn-tests: New file.
5565         * modules/unictype/category-N-tests: New file.
5566         * modules/unictype/category-Nd-tests: New file.
5567         * modules/unictype/category-Nl-tests: New file.
5568         * modules/unictype/category-No-tests: New file.
5569         * modules/unictype/category-P-tests: New file.
5570         * modules/unictype/category-Pc-tests: New file.
5571         * modules/unictype/category-Pd-tests: New file.
5572         * modules/unictype/category-Pe-tests: New file.
5573         * modules/unictype/category-Pf-tests: New file.
5574         * modules/unictype/category-Pi-tests: New file.
5575         * modules/unictype/category-Po-tests: New file.
5576         * modules/unictype/category-Ps-tests: New file.
5577         * modules/unictype/category-S-tests: New file.
5578         * modules/unictype/category-Sc-tests: New file.
5579         * modules/unictype/category-Sk-tests: New file.
5580         * modules/unictype/category-Sm-tests: New file.
5581         * modules/unictype/category-So-tests: New file.
5582         * modules/unictype/category-Z-tests: New file.
5583         * modules/unictype/category-Zl-tests: New file.
5584         * modules/unictype/category-Zp-tests: New file.
5585         * modules/unictype/category-Zs-tests: New file.
5586         * modules/unictype/category-and-not-tests: New file.
5587         * modules/unictype/category-and-tests: New file.
5588         * modules/unictype/category-byname-tests: New file.
5589         * modules/unictype/category-name-tests: New file.
5590         * modules/unictype/category-none-tests: New file.
5591         * modules/unictype/category-of-tests: New file.
5592         * modules/unictype/category-or-tests: New file.
5593         * modules/unictype/category-test-withtable-tests: New file.
5594         * modules/unictype/combining-class-tests: New file.
5595         * modules/unictype/ctype-alnum-tests: New file.
5596         * modules/unictype/ctype-alpha-tests: New file.
5597         * modules/unictype/ctype-blank-tests: New file.
5598         * modules/unictype/ctype-cntrl-tests: New file.
5599         * modules/unictype/ctype-digit-tests: New file.
5600         * modules/unictype/ctype-graph-tests: New file.
5601         * modules/unictype/ctype-lower-tests: New file.
5602         * modules/unictype/ctype-print-tests: New file.
5603         * modules/unictype/ctype-punct-tests: New file.
5604         * modules/unictype/ctype-space-tests: New file.
5605         * modules/unictype/ctype-upper-tests: New file.
5606         * modules/unictype/ctype-xdigit-tests: New file.
5607         * modules/unictype/decimal-digit-tests: New file.
5608         * modules/unictype/digit-tests: New file.
5609         * modules/unictype/mirror-tests: New file.
5610         * modules/unictype/numeric-tests: New file.
5611         * modules/unictype/property-alphabetic-tests: New file.
5612         * modules/unictype/property-ascii-hex-digit-tests: New file.
5613         * modules/unictype/property-bidi-arabic-digit-tests: New file.
5614         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
5615         * modules/unictype/property-bidi-block-separator-tests: New file.
5616         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
5617         * modules/unictype/property-bidi-common-separator-tests: New file.
5618         * modules/unictype/property-bidi-control-tests: New file.
5619         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
5620         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
5621         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
5622         * modules/unictype/property-bidi-european-digit-tests: New file.
5623         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
5624         * modules/unictype/property-bidi-left-to-right-tests: New file.
5625         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
5626         * modules/unictype/property-bidi-other-neutral-tests: New file.
5627         * modules/unictype/property-bidi-pdf-tests: New file.
5628         * modules/unictype/property-bidi-segment-separator-tests: New file.
5629         * modules/unictype/property-bidi-whitespace-tests: New file.
5630         * modules/unictype/property-byname-tests: New file.
5631         * modules/unictype/property-combining-tests: New file.
5632         * modules/unictype/property-composite-tests: New file.
5633         * modules/unictype/property-currency-symbol-tests: New file.
5634         * modules/unictype/property-dash-tests: New file.
5635         * modules/unictype/property-decimal-digit-tests: New file.
5636         * modules/unictype/property-default-ignorable-code-point-tests: New file.
5637         * modules/unictype/property-deprecated-tests: New file.
5638         * modules/unictype/property-diacritic-tests: New file.
5639         * modules/unictype/property-extender-tests: New file.
5640         * modules/unictype/property-format-control-tests: New file.
5641         * modules/unictype/property-grapheme-base-tests: New file.
5642         * modules/unictype/property-grapheme-extend-tests: New file.
5643         * modules/unictype/property-grapheme-link-tests: New file.
5644         * modules/unictype/property-hex-digit-tests: New file.
5645         * modules/unictype/property-hyphen-tests: New file.
5646         * modules/unictype/property-id-continue-tests: New file.
5647         * modules/unictype/property-id-start-tests: New file.
5648         * modules/unictype/property-ideographic-tests: New file.
5649         * modules/unictype/property-ids-binary-operator-tests: New file.
5650         * modules/unictype/property-ids-trinary-operator-tests: New file.
5651         * modules/unictype/property-ignorable-control-tests: New file.
5652         * modules/unictype/property-iso-control-tests: New file.
5653         * modules/unictype/property-join-control-tests: New file.
5654         * modules/unictype/property-left-of-pair-tests: New file.
5655         * modules/unictype/property-line-separator-tests: New file.
5656         * modules/unictype/property-logical-order-exception-tests: New file.
5657         * modules/unictype/property-lowercase-tests: New file.
5658         * modules/unictype/property-math-tests: New file.
5659         * modules/unictype/property-non-break-tests: New file.
5660         * modules/unictype/property-not-a-character-tests: New file.
5661         * modules/unictype/property-numeric-tests: New file.
5662         * modules/unictype/property-other-alphabetic-tests: New file.
5663         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
5664         * modules/unictype/property-other-grapheme-extend-tests: New file.
5665         * modules/unictype/property-other-id-continue-tests: New file.
5666         * modules/unictype/property-other-id-start-tests: New file.
5667         * modules/unictype/property-other-lowercase-tests: New file.
5668         * modules/unictype/property-other-math-tests: New file.
5669         * modules/unictype/property-other-uppercase-tests: New file.
5670         * modules/unictype/property-paired-punctuation-tests: New file.
5671         * modules/unictype/property-paragraph-separator-tests: New file.
5672         * modules/unictype/property-pattern-syntax-tests: New file.
5673         * modules/unictype/property-pattern-white-space-tests: New file.
5674         * modules/unictype/property-private-use-tests: New file.
5675         * modules/unictype/property-punctuation-tests: New file.
5676         * modules/unictype/property-quotation-mark-tests: New file.
5677         * modules/unictype/property-radical-tests: New file.
5678         * modules/unictype/property-sentence-terminal-tests: New file.
5679         * modules/unictype/property-soft-dotted-tests: New file.
5680         * modules/unictype/property-space-tests: New file.
5681         * modules/unictype/property-terminal-punctuation-tests: New file.
5682         * modules/unictype/property-test-tests: New file.
5683         * modules/unictype/property-titlecase-tests: New file.
5684         * modules/unictype/property-unassigned-code-value-tests: New file.
5685         * modules/unictype/property-unified-ideograph-tests: New file.
5686         * modules/unictype/property-uppercase-tests: New file.
5687         * modules/unictype/property-variation-selector-tests: New file.
5688         * modules/unictype/property-white-space-tests: New file.
5689         * modules/unictype/property-xid-continue-tests: New file.
5690         * modules/unictype/property-xid-start-tests: New file.
5691         * modules/unictype/property-zero-width-tests: New file.
5692         * modules/unictype/scripts-tests: New file.
5693         * modules/unictype/syntax-c-ident-tests: New file.
5694         * modules/unictype/syntax-c-whitespace-tests: New file.
5695         * modules/unictype/syntax-java-ident-tests: New file.
5696         * modules/unictype/syntax-java-whitespace-tests: New file.
5697         * tests/unictype/test-bidi_byname.c: New file.
5698         * tests/unictype/test-bidi_name.c: New file.
5699         * tests/unictype/test-bidi_of.c: New file.
5700         * tests/unictype/test-bidi_test.c: New file.
5701         * tests/unictype/test-block_list.c: New file.
5702         * tests/unictype/test-block_of.c: New file.
5703         * tests/unictype/test-block_test.c: New file.
5704         * tests/unictype/test-categ_and.c: New file.
5705         * tests/unictype/test-categ_and_not.c: New file.
5706         * tests/unictype/test-categ_byname.c: New file.
5707         * tests/unictype/test-categ_name.c: New file.
5708         * tests/unictype/test-categ_none.c: New file.
5709         * tests/unictype/test-categ_of.c: New file.
5710         * tests/unictype/test-categ_or.c: New file.
5711         * tests/unictype/test-categ_test_withtable.c: New file.
5712         * tests/unictype/test-combining.c: New file.
5713         * tests/unictype/test-decdigit.c: New file.
5714         * tests/unictype/test-digit.c: New file.
5715         * tests/unictype/test-mirror.c: New file.
5716         * tests/unictype/test-numeric.c: New file.
5717         * tests/unictype/test-pr_byname.c: New file.
5718         * tests/unictype/test-pr_test.c: New file.
5719         * tests/unictype/test-predicate-part1.h: New file.
5720         * tests/unictype/test-predicate-part2.h: New file.
5721         * tests/unictype/test-scripts.c: New file.
5722         * tests/unictype/test-sy_c_ident.c: New file.
5723         * tests/unictype/test-sy_java_ident.c: New file.
5724
5725         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
5726         for Unicode 5.0.0.
5727         * tests/unictype/test-categ_Cc.c: Likewise.
5728         * tests/unictype/test-categ_Cf.c: Likewise.
5729         * tests/unictype/test-categ_Cn.c: Likewise.
5730         * tests/unictype/test-categ_Co.c: Likewise.
5731         * tests/unictype/test-categ_Cs.c: Likewise.
5732         * tests/unictype/test-categ_L.c: Likewise.
5733         * tests/unictype/test-categ_Ll.c: Likewise.
5734         * tests/unictype/test-categ_Lm.c: Likewise.
5735         * tests/unictype/test-categ_Lo.c: Likewise.
5736         * tests/unictype/test-categ_Lt.c: Likewise.
5737         * tests/unictype/test-categ_Lu.c: Likewise.
5738         * tests/unictype/test-categ_M.c: Likewise.
5739         * tests/unictype/test-categ_Mc.c: Likewise.
5740         * tests/unictype/test-categ_Me.c: Likewise.
5741         * tests/unictype/test-categ_Mn.c: Likewise.
5742         * tests/unictype/test-categ_N.c: Likewise.
5743         * tests/unictype/test-categ_Nd.c: Likewise.
5744         * tests/unictype/test-categ_Nl.c: Likewise.
5745         * tests/unictype/test-categ_No.c: Likewise.
5746         * tests/unictype/test-categ_P.c: Likewise.
5747         * tests/unictype/test-categ_Pc.c: Likewise.
5748         * tests/unictype/test-categ_Pd.c: Likewise.
5749         * tests/unictype/test-categ_Pe.c: Likewise.
5750         * tests/unictype/test-categ_Pf.c: Likewise.
5751         * tests/unictype/test-categ_Pi.c: Likewise.
5752         * tests/unictype/test-categ_Po.c: Likewise.
5753         * tests/unictype/test-categ_Ps.c: Likewise.
5754         * tests/unictype/test-categ_S.c: Likewise.
5755         * tests/unictype/test-categ_Sc.c: Likewise.
5756         * tests/unictype/test-categ_Sk.c: Likewise.
5757         * tests/unictype/test-categ_Sm.c: Likewise.
5758         * tests/unictype/test-categ_So.c: Likewise.
5759         * tests/unictype/test-categ_Z.c: Likewise.
5760         * tests/unictype/test-categ_Zl.c: Likewise.
5761         * tests/unictype/test-categ_Zp.c: Likewise.
5762         * tests/unictype/test-categ_Zs.c: Likewise.
5763         * tests/unictype/test-ctype_alnum.c: Likewise.
5764         * tests/unictype/test-ctype_alpha.c: Likewise.
5765         * tests/unictype/test-ctype_blank.c: Likewise.
5766         * tests/unictype/test-ctype_cntrl.c: Likewise.
5767         * tests/unictype/test-ctype_digit.c: Likewise.
5768         * tests/unictype/test-ctype_graph.c: Likewise.
5769         * tests/unictype/test-ctype_lower.c: Likewise.
5770         * tests/unictype/test-ctype_print.c: Likewise.
5771         * tests/unictype/test-ctype_punct.c: Likewise.
5772         * tests/unictype/test-ctype_space.c: Likewise.
5773         * tests/unictype/test-ctype_upper.c: Likewise.
5774         * tests/unictype/test-ctype_xdigit.c: Likewise.
5775         * tests/unictype/test-decdigit.h: Likewise.
5776         * tests/unictype/test-digit.h: Likewise.
5777         * tests/unictype/test-numeric.h: Likewise.
5778         * tests/unictype/test-pr_alphabetic.c: Likewise.
5779         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
5780         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
5781         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
5782         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
5783         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
5784         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
5785         * tests/unictype/test-pr_bidi_control.c: Likewise.
5786         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
5787         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
5788         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
5789         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
5790         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
5791         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
5792         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
5793         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
5794         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
5795         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
5796         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
5797         * tests/unictype/test-pr_combining.c: Likewise.
5798         * tests/unictype/test-pr_composite.c: Likewise.
5799         * tests/unictype/test-pr_currency_symbol.c: Likewise.
5800         * tests/unictype/test-pr_dash.c: Likewise.
5801         * tests/unictype/test-pr_decimal_digit.c: Likewise.
5802         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
5803         * tests/unictype/test-pr_deprecated.c: Likewise.
5804         * tests/unictype/test-pr_diacritic.c: Likewise.
5805         * tests/unictype/test-pr_extender.c: Likewise.
5806         * tests/unictype/test-pr_format_control.c: Likewise.
5807         * tests/unictype/test-pr_grapheme_base.c: Likewise.
5808         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
5809         * tests/unictype/test-pr_grapheme_link.c: Likewise.
5810         * tests/unictype/test-pr_hex_digit.c: Likewise.
5811         * tests/unictype/test-pr_hyphen.c: Likewise.
5812         * tests/unictype/test-pr_id_continue.c: Likewise.
5813         * tests/unictype/test-pr_id_start.c: Likewise.
5814         * tests/unictype/test-pr_ideographic.c: Likewise.
5815         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
5816         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
5817         * tests/unictype/test-pr_ignorable_control.c: Likewise.
5818         * tests/unictype/test-pr_iso_control.c: Likewise.
5819         * tests/unictype/test-pr_join_control.c: Likewise.
5820         * tests/unictype/test-pr_left_of_pair.c: Likewise.
5821         * tests/unictype/test-pr_line_separator.c: Likewise.
5822         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
5823         * tests/unictype/test-pr_lowercase.c: Likewise.
5824         * tests/unictype/test-pr_math.c: Likewise.
5825         * tests/unictype/test-pr_non_break.c: Likewise.
5826         * tests/unictype/test-pr_not_a_character.c: Likewise.
5827         * tests/unictype/test-pr_numeric.c: Likewise.
5828         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
5829         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
5830         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
5831         * tests/unictype/test-pr_other_id_continue.c: Likewise.
5832         * tests/unictype/test-pr_other_id_start.c: Likewise.
5833         * tests/unictype/test-pr_other_lowercase.c: Likewise.
5834         * tests/unictype/test-pr_other_math.c: Likewise.
5835         * tests/unictype/test-pr_other_uppercase.c: Likewise.
5836         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
5837         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
5838         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
5839         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
5840         * tests/unictype/test-pr_private_use.c: Likewise.
5841         * tests/unictype/test-pr_punctuation.c: Likewise.
5842         * tests/unictype/test-pr_quotation_mark.c: Likewise.
5843         * tests/unictype/test-pr_radical.c: Likewise.
5844         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
5845         * tests/unictype/test-pr_soft_dotted.c: Likewise.
5846         * tests/unictype/test-pr_space.c: Likewise.
5847         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
5848         * tests/unictype/test-pr_titlecase.c: Likewise.
5849         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
5850         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
5851         * tests/unictype/test-pr_uppercase.c: Likewise.
5852         * tests/unictype/test-pr_variation_selector.c: Likewise.
5853         * tests/unictype/test-pr_white_space.c: Likewise.
5854         * tests/unictype/test-pr_xid_continue.c: Likewise.
5855         * tests/unictype/test-pr_xid_start.c: Likewise.
5856         * tests/unictype/test-pr_zero_width.c: Likewise.
5857         * tests/unictype/test-sy_c_whitespace.c: Likewise.
5858         * tests/unictype/test-sy_java_whitespace.c: Likewise.
5859
5860 2007-11-12  Bruno Haible  <bruno@clisp.org>
5861
5862         Unicode character classification functions.
5863         * lib/unictype.h: New file.
5864         * modules/unictype/base: New file.
5865         * modules/unictype/category-L: New file.
5866         * modules/unictype/category-Lu: New file.
5867         * modules/unictype/category-Ll: New file.
5868         * modules/unictype/category-Lt: New file.
5869         * modules/unictype/category-Lm: New file.
5870         * modules/unictype/category-Lo: New file.
5871         * modules/unictype/category-M: New file.
5872         * modules/unictype/category-Mn: New file.
5873         * modules/unictype/category-Mc: New file.
5874         * modules/unictype/category-Me: New file.
5875         * modules/unictype/category-N: New file.
5876         * modules/unictype/category-Nd: New file.
5877         * modules/unictype/category-Nl: New file.
5878         * modules/unictype/category-No: New file.
5879         * modules/unictype/category-P: New file.
5880         * modules/unictype/category-Pc: New file.
5881         * modules/unictype/category-Pd: New file.
5882         * modules/unictype/category-Ps: New file.
5883         * modules/unictype/category-Pe: New file.
5884         * modules/unictype/category-Pi: New file.
5885         * modules/unictype/category-Pf: New file.
5886         * modules/unictype/category-Po: New file.
5887         * modules/unictype/category-S: New file.
5888         * modules/unictype/category-Sm: New file.
5889         * modules/unictype/category-Sc: New file.
5890         * modules/unictype/category-Sk: New file.
5891         * modules/unictype/category-So: New file.
5892         * modules/unictype/category-Z: New file.
5893         * modules/unictype/category-Zs: New file.
5894         * modules/unictype/category-Zl: New file.
5895         * modules/unictype/category-Zp: New file.
5896         * modules/unictype/category-C: New file.
5897         * modules/unictype/category-Cc: New file.
5898         * modules/unictype/category-Cf: New file.
5899         * modules/unictype/category-Cs: New file.
5900         * modules/unictype/category-Co: New file.
5901         * modules/unictype/category-Cn: New file.
5902         * modules/unictype/category-or: New file.
5903         * modules/unictype/category-of: New file.
5904         * modules/unictype/category-test: New file.
5905         * modules/unictype/category-test-withtable: New file.
5906         * modules/unictype/category-byname: New file.
5907         * modules/unictype/category-none: New file.
5908         * modules/unictype/category-and: New file.
5909         * modules/unictype/category-and-not: New file.
5910         * modules/unictype/category-name: New file.
5911         * modules/unictype/combining-class: New file.
5912         * modules/unictype/category-all: New file.
5913         * modules/unictype/bidicategory-all: New file.
5914         * modules/unictype/bidicategory-byname: New file.
5915         * modules/unictype/bidicategory-name: New file.
5916         * modules/unictype/bidicategory-of: New file.
5917         * modules/unictype/bidicategory-test: New file.
5918         * modules/unictype/decimal-digit: New file.
5919         * modules/unictype/digit: New file.
5920         * modules/unictype/numeric: New file.
5921         * modules/unictype/mirror: New file.
5922         * modules/unictype/property-white-space: New file.
5923         * modules/unictype/property-alphabetic: New file.
5924         * modules/unictype/property-other-alphabetic: New file.
5925         * modules/unictype/property-not-a-character: New file.
5926         * modules/unictype/property-default-ignorable-code-point: New file.
5927         * modules/unictype/property-other-default-ignorable-code-point: New
5928         file.
5929         * modules/unictype/property-deprecated: New file.
5930         * modules/unictype/property-logical-order-exception: New file.
5931         * modules/unictype/property-variation-selector: New file.
5932         * modules/unictype/property-private-use: New file.
5933         * modules/unictype/property-unassigned-code-value: New file.
5934         * modules/unictype/property-uppercase: New file.
5935         * modules/unictype/property-other-uppercase: New file.
5936         * modules/unictype/property-lowercase: New file.
5937         * modules/unictype/property-other-lowercase: New file.
5938         * modules/unictype/property-titlecase: New file.
5939         * modules/unictype/property-soft-dotted: New file.
5940         * modules/unictype/property-id-start: New file.
5941         * modules/unictype/property-other-id-start: New file.
5942         * modules/unictype/property-id-continue: New file.
5943         * modules/unictype/property-other-id-continue: New file.
5944         * modules/unictype/property-xid-start: New file.
5945         * modules/unictype/property-xid-continue: New file.
5946         * modules/unictype/property-pattern-white-space: New file.
5947         * modules/unictype/property-pattern-syntax: New file.
5948         * modules/unictype/property-join-control: New file.
5949         * modules/unictype/property-grapheme-base: New file.
5950         * modules/unictype/property-grapheme-extend: New file.
5951         * modules/unictype/property-other-grapheme-extend: New file.
5952         * modules/unictype/property-grapheme-link: New file.
5953         * modules/unictype/property-bidi-control: New file.
5954         * modules/unictype/property-bidi-left-to-right: New file.
5955         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
5956         * modules/unictype/property-bidi-arabic-right-to-left: New file.
5957         * modules/unictype/property-bidi-european-digit: New file.
5958         * modules/unictype/property-bidi-eur-num-separator: New file.
5959         * modules/unictype/property-bidi-eur-num-terminator: New file.
5960         * modules/unictype/property-bidi-arabic-digit: New file.
5961         * modules/unictype/property-bidi-common-separator: New file.
5962         * modules/unictype/property-bidi-block-separator: New file.
5963         * modules/unictype/property-bidi-segment-separator: New file.
5964         * modules/unictype/property-bidi-whitespace: New file.
5965         * modules/unictype/property-bidi-non-spacing-mark: New file.
5966         * modules/unictype/property-bidi-boundary-neutral: New file.
5967         * modules/unictype/property-bidi-pdf: New file.
5968         * modules/unictype/property-bidi-embedding-or-override: New file.
5969         * modules/unictype/property-bidi-other-neutral: New file.
5970         * modules/unictype/property-hex-digit: New file.
5971         * modules/unictype/property-ascii-hex-digit: New file.
5972         * modules/unictype/property-ideographic: New file.
5973         * modules/unictype/property-unified-ideograph: New file.
5974         * modules/unictype/property-radical: New file.
5975         * modules/unictype/property-ids-binary-operator: New file.
5976         * modules/unictype/property-ids-trinary-operator: New file.
5977         * modules/unictype/property-zero-width: New file.
5978         * modules/unictype/property-space: New file.
5979         * modules/unictype/property-non-break: New file.
5980         * modules/unictype/property-iso-control: New file.
5981         * modules/unictype/property-format-control: New file.
5982         * modules/unictype/property-dash: New file.
5983         * modules/unictype/property-hyphen: New file.
5984         * modules/unictype/property-punctuation: New file.
5985         * modules/unictype/property-line-separator: New file.
5986         * modules/unictype/property-paragraph-separator: New file.
5987         * modules/unictype/property-quotation-mark: New file.
5988         * modules/unictype/property-sentence-terminal: New file.
5989         * modules/unictype/property-terminal-punctuation: New file.
5990         * modules/unictype/property-currency-symbol: New file.
5991         * modules/unictype/property-math: New file.
5992         * modules/unictype/property-other-math: New file.
5993         * modules/unictype/property-paired-punctuation: New file.
5994         * modules/unictype/property-left-of-pair: New file.
5995         * modules/unictype/property-combining: New file.
5996         * modules/unictype/property-composite: New file.
5997         * modules/unictype/property-decimal-digit: New file.
5998         * modules/unictype/property-numeric: New file.
5999         * modules/unictype/property-diacritic: New file.
6000         * modules/unictype/property-extender: New file.
6001         * modules/unictype/property-ignorable-control: New file.
6002         * modules/unictype/property-test: New file.
6003         * modules/unictype/property-byname: New file.
6004         * modules/unictype/property-all: New file.
6005         * modules/unictype/scripts: New file.
6006         * modules/unictype/scripts-all: New file.
6007         * modules/unictype/block-of: New file.
6008         * modules/unictype/block-test: New file.
6009         * modules/unictype/block-list: New file.
6010         * modules/unictype/block-all: New file.
6011         * modules/unictype/syntax-c-whitespace: New file.
6012         * modules/unictype/syntax-java-whitespace: New file.
6013         * modules/unictype/syntax-c-ident: New file.
6014         * modules/unictype/syntax-java-ident: New file.
6015         * modules/unictype/ctype-alnum: New file.
6016         * modules/unictype/ctype-alpha: New file.
6017         * modules/unictype/ctype-cntrl: New file.
6018         * modules/unictype/ctype-digit: New file.
6019         * modules/unictype/ctype-graph: New file.
6020         * modules/unictype/ctype-lower: New file.
6021         * modules/unictype/ctype-print: New file.
6022         * modules/unictype/ctype-punct: New file.
6023         * modules/unictype/ctype-space: New file.
6024         * modules/unictype/ctype-upper: New file.
6025         * modules/unictype/ctype-xdigit: New file.
6026         * modules/unictype/ctype-blank: New file.
6027         * lib/unictype/bidi_byname.c: New file.
6028         * lib/unictype/bidi_name.c: New file.
6029         * lib/unictype/bidi_of.c: New file.
6030         * lib/unictype/bidi_test.c: New file.
6031         * lib/unictype/bitmap.h: New file.
6032         * lib/unictype/block_test.c: New file.
6033         * lib/unictype/blocks.c: New file.
6034         * lib/unictype/categ_C.c: New file.
6035         * lib/unictype/categ_Cc.c: New file.
6036         * lib/unictype/categ_Cf.c: New file.
6037         * lib/unictype/categ_Cn.c: New file.
6038         * lib/unictype/categ_Co.c: New file.
6039         * lib/unictype/categ_Cs.c: New file.
6040         * lib/unictype/categ_L.c: New file.
6041         * lib/unictype/categ_Ll.c: New file.
6042         * lib/unictype/categ_Lm.c: New file.
6043         * lib/unictype/categ_Lo.c: New file.
6044         * lib/unictype/categ_Lt.c: New file.
6045         * lib/unictype/categ_Lu.c: New file.
6046         * lib/unictype/categ_M.c: New file.
6047         * lib/unictype/categ_Mc.c: New file.
6048         * lib/unictype/categ_Me.c: New file.
6049         * lib/unictype/categ_Mn.c: New file.
6050         * lib/unictype/categ_N.c: New file.
6051         * lib/unictype/categ_Nd.c: New file.
6052         * lib/unictype/categ_Nl.c: New file.
6053         * lib/unictype/categ_No.c: New file.
6054         * lib/unictype/categ_P.c: New file.
6055         * lib/unictype/categ_Pc.c: New file.
6056         * lib/unictype/categ_Pd.c: New file.
6057         * lib/unictype/categ_Pe.c: New file.
6058         * lib/unictype/categ_Pf.c: New file.
6059         * lib/unictype/categ_Pi.c: New file.
6060         * lib/unictype/categ_Po.c: New file.
6061         * lib/unictype/categ_Ps.c: New file.
6062         * lib/unictype/categ_S.c: New file.
6063         * lib/unictype/categ_Sc.c: New file.
6064         * lib/unictype/categ_Sk.c: New file.
6065         * lib/unictype/categ_Sm.c: New file.
6066         * lib/unictype/categ_So.c: New file.
6067         * lib/unictype/categ_Z.c: New file.
6068         * lib/unictype/categ_Zl.c: New file.
6069         * lib/unictype/categ_Zp.c: New file.
6070         * lib/unictype/categ_Zs.c: New file.
6071         * lib/unictype/categ_and.c: New file.
6072         * lib/unictype/categ_and_not.c: New file.
6073         * lib/unictype/categ_byname.c: New file.
6074         * lib/unictype/categ_name.c: New file.
6075         * lib/unictype/categ_none.c: New file.
6076         * lib/unictype/categ_of.c: New file.
6077         * lib/unictype/categ_or.c: New file.
6078         * lib/unictype/categ_test.c: New file.
6079         * lib/unictype/combining.c: New file.
6080         * lib/unictype/ctype_alnum.c: New file.
6081         * lib/unictype/ctype_alpha.c: New file.
6082         * lib/unictype/ctype_blank.c: New file.
6083         * lib/unictype/ctype_cntrl.c: New file.
6084         * lib/unictype/ctype_digit.c: New file.
6085         * lib/unictype/ctype_graph.c: New file.
6086         * lib/unictype/ctype_lower.c: New file.
6087         * lib/unictype/ctype_print.c: New file.
6088         * lib/unictype/ctype_punct.c: New file.
6089         * lib/unictype/ctype_space.c: New file.
6090         * lib/unictype/ctype_upper.c: New file.
6091         * lib/unictype/ctype_xdigit.c: New file.
6092         * lib/unictype/decdigit.c: New file.
6093         * lib/unictype/digit.c: New file.
6094         * lib/unictype/identsyntaxmap.h: New file.
6095         * lib/unictype/mirror.c: New file.
6096         * lib/unictype/numeric.c: New file.
6097         * lib/unictype/pr_alphabetic.c: New file.
6098         * lib/unictype/pr_ascii_hex_digit.c: New file.
6099         * lib/unictype/pr_bidi_arabic_digit.c: New file.
6100         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
6101         * lib/unictype/pr_bidi_block_separator.c: New file.
6102         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
6103         * lib/unictype/pr_bidi_common_separator.c: New file.
6104         * lib/unictype/pr_bidi_control.c: New file.
6105         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
6106         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
6107         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
6108         * lib/unictype/pr_bidi_european_digit.c: New file.
6109         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
6110         * lib/unictype/pr_bidi_left_to_right.c: New file.
6111         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
6112         * lib/unictype/pr_bidi_other_neutral.c: New file.
6113         * lib/unictype/pr_bidi_pdf.c: New file.
6114         * lib/unictype/pr_bidi_segment_separator.c: New file.
6115         * lib/unictype/pr_bidi_whitespace.c: New file.
6116         * lib/unictype/pr_byname.c: New file.
6117         * lib/unictype/pr_byname.gperf: New file.
6118         * lib/unictype/pr_combining.c: New file.
6119         * lib/unictype/pr_composite.c: New file.
6120         * lib/unictype/pr_currency_symbol.c: New file.
6121         * lib/unictype/pr_dash.c: New file.
6122         * lib/unictype/pr_decimal_digit.c: New file.
6123         * lib/unictype/pr_default_ignorable_code_point.c: New file.
6124         * lib/unictype/pr_deprecated.c: New file.
6125         * lib/unictype/pr_diacritic.c: New file.
6126         * lib/unictype/pr_extender.c: New file.
6127         * lib/unictype/pr_format_control.c: New file.
6128         * lib/unictype/pr_grapheme_base.c: New file.
6129         * lib/unictype/pr_grapheme_extend.c: New file.
6130         * lib/unictype/pr_grapheme_link.c: New file.
6131         * lib/unictype/pr_hex_digit.c: New file.
6132         * lib/unictype/pr_hyphen.c: New file.
6133         * lib/unictype/pr_id_continue.c: New file.
6134         * lib/unictype/pr_id_start.c: New file.
6135         * lib/unictype/pr_ideographic.c: New file.
6136         * lib/unictype/pr_ids_binary_operator.c: New file.
6137         * lib/unictype/pr_ids_trinary_operator.c: New file.
6138         * lib/unictype/pr_ignorable_control.c: New file.
6139         * lib/unictype/pr_iso_control.c: New file.
6140         * lib/unictype/pr_join_control.c: New file.
6141         * lib/unictype/pr_left_of_pair.c: New file.
6142         * lib/unictype/pr_line_separator.c: New file.
6143         * lib/unictype/pr_logical_order_exception.c: New file.
6144         * lib/unictype/pr_lowercase.c: New file.
6145         * lib/unictype/pr_math.c: New file.
6146         * lib/unictype/pr_non_break.c: New file.
6147         * lib/unictype/pr_not_a_character.c: New file.
6148         * lib/unictype/pr_numeric.c: New file.
6149         * lib/unictype/pr_other_alphabetic.c: New file.
6150         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
6151         * lib/unictype/pr_other_grapheme_extend.c: New file.
6152         * lib/unictype/pr_other_id_continue.c: New file.
6153         * lib/unictype/pr_other_id_start.c: New file.
6154         * lib/unictype/pr_other_lowercase.c: New file.
6155         * lib/unictype/pr_other_math.c: New file.
6156         * lib/unictype/pr_other_uppercase.c: New file.
6157         * lib/unictype/pr_paired_punctuation.c: New file.
6158         * lib/unictype/pr_paragraph_separator.c: New file.
6159         * lib/unictype/pr_pattern_syntax.c: New file.
6160         * lib/unictype/pr_pattern_white_space.c: New file.
6161         * lib/unictype/pr_private_use.c: New file.
6162         * lib/unictype/pr_punctuation.c: New file.
6163         * lib/unictype/pr_quotation_mark.c: New file.
6164         * lib/unictype/pr_radical.c: New file.
6165         * lib/unictype/pr_sentence_terminal.c: New file.
6166         * lib/unictype/pr_soft_dotted.c: New file.
6167         * lib/unictype/pr_space.c: New file.
6168         * lib/unictype/pr_terminal_punctuation.c: New file.
6169         * lib/unictype/pr_test.c: New file.
6170         * lib/unictype/pr_titlecase.c: New file.
6171         * lib/unictype/pr_unassigned_code_value.c: New file.
6172         * lib/unictype/pr_unified_ideograph.c: New file.
6173         * lib/unictype/pr_uppercase.c: New file.
6174         * lib/unictype/pr_variation_selector.c: New file.
6175         * lib/unictype/pr_white_space.c: New file.
6176         * lib/unictype/pr_xid_continue.c: New file.
6177         * lib/unictype/pr_xid_start.c: New file.
6178         * lib/unictype/pr_zero_width.c: New file.
6179         * lib/unictype/scripts.c: New file.
6180         * lib/unictype/sy_c_ident.c: New file.
6181         * lib/unictype/sy_c_whitespace.c: New file.
6182         * lib/unictype/sy_java_ident.c: New file.
6183         * lib/unictype/sy_java_whitespace.c: New file.
6184
6185         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
6186         Unicode 5.0.0.
6187         * lib/unictype/blocks.h: Likewise.
6188         * lib/unictype/categ_C.h: Likewise.
6189         * lib/unictype/categ_Cc.h: Likewise.
6190         * lib/unictype/categ_Cf.h: Likewise.
6191         * lib/unictype/categ_Cn.h: Likewise.
6192         * lib/unictype/categ_Co.h: Likewise.
6193         * lib/unictype/categ_Cs.h: Likewise.
6194         * lib/unictype/categ_L.h: Likewise.
6195         * lib/unictype/categ_Ll.h: Likewise.
6196         * lib/unictype/categ_Lm.h: Likewise.
6197         * lib/unictype/categ_Lo.h: Likewise.
6198         * lib/unictype/categ_Lt.h: Likewise.
6199         * lib/unictype/categ_Lu.h: Likewise.
6200         * lib/unictype/categ_M.h: Likewise.
6201         * lib/unictype/categ_Mc.h: Likewise.
6202         * lib/unictype/categ_Me.h: Likewise.
6203         * lib/unictype/categ_Mn.h: Likewise.
6204         * lib/unictype/categ_N.h: Likewise.
6205         * lib/unictype/categ_Nd.h: Likewise.
6206         * lib/unictype/categ_Nl.h: Likewise.
6207         * lib/unictype/categ_No.h: Likewise.
6208         * lib/unictype/categ_P.h: Likewise.
6209         * lib/unictype/categ_Pc.h: Likewise.
6210         * lib/unictype/categ_Pd.h: Likewise.
6211         * lib/unictype/categ_Pe.h: Likewise.
6212         * lib/unictype/categ_Pf.h: Likewise.
6213         * lib/unictype/categ_Pi.h: Likewise.
6214         * lib/unictype/categ_Po.h: Likewise.
6215         * lib/unictype/categ_Ps.h: Likewise.
6216         * lib/unictype/categ_S.h: Likewise.
6217         * lib/unictype/categ_Sc.h: Likewise.
6218         * lib/unictype/categ_Sk.h: Likewise.
6219         * lib/unictype/categ_Sm.h: Likewise.
6220         * lib/unictype/categ_So.h: Likewise.
6221         * lib/unictype/categ_Z.h: Likewise.
6222         * lib/unictype/categ_Zl.h: Likewise.
6223         * lib/unictype/categ_Zp.h: Likewise.
6224         * lib/unictype/categ_Zs.h: Likewise.
6225         * lib/unictype/categ_of.h: Likewise.
6226         * lib/unictype/combining.h: Likewise.
6227         * lib/unictype/ctype_alnum.h: Likewise.
6228         * lib/unictype/ctype_alpha.h: Likewise.
6229         * lib/unictype/ctype_blank.h: Likewise.
6230         * lib/unictype/ctype_cntrl.h: Likewise.
6231         * lib/unictype/ctype_digit.h: Likewise.
6232         * lib/unictype/ctype_graph.h: Likewise.
6233         * lib/unictype/ctype_lower.h: Likewise.
6234         * lib/unictype/ctype_print.h: Likewise.
6235         * lib/unictype/ctype_punct.h: Likewise.
6236         * lib/unictype/ctype_space.h: Likewise.
6237         * lib/unictype/ctype_upper.h: Likewise.
6238         * lib/unictype/ctype_xdigit.h: Likewise.
6239         * lib/unictype/decdigit.h: Likewise.
6240         * lib/unictype/digit.h: Likewise.
6241         * lib/unictype/mirror.h: Likewise.
6242         * lib/unictype/numeric.h: Likewise.
6243         * lib/unictype/pr_alphabetic.h: Likewise.
6244         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
6245         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
6246         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
6247         * lib/unictype/pr_bidi_block_separator.h: Likewise.
6248         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
6249         * lib/unictype/pr_bidi_common_separator.h: Likewise.
6250         * lib/unictype/pr_bidi_control.h: Likewise.
6251         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
6252         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
6253         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
6254         * lib/unictype/pr_bidi_european_digit.h: Likewise.
6255         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
6256         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
6257         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
6258         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
6259         * lib/unictype/pr_bidi_pdf.h: Likewise.
6260         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
6261         * lib/unictype/pr_bidi_whitespace.h: Likewise.
6262         * lib/unictype/pr_combining.h: Likewise.
6263         * lib/unictype/pr_composite.h: Likewise.
6264         * lib/unictype/pr_currency_symbol.h: Likewise.
6265         * lib/unictype/pr_dash.h: Likewise.
6266         * lib/unictype/pr_decimal_digit.h: Likewise.
6267         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
6268         * lib/unictype/pr_deprecated.h: Likewise.
6269         * lib/unictype/pr_diacritic.h: Likewise.
6270         * lib/unictype/pr_extender.h: Likewise.
6271         * lib/unictype/pr_format_control.h: Likewise.
6272         * lib/unictype/pr_grapheme_base.h: Likewise.
6273         * lib/unictype/pr_grapheme_extend.h: Likewise.
6274         * lib/unictype/pr_grapheme_link.h: Likewise.
6275         * lib/unictype/pr_hex_digit.h: Likewise.
6276         * lib/unictype/pr_hyphen.h: Likewise.
6277         * lib/unictype/pr_id_continue.h: Likewise.
6278         * lib/unictype/pr_id_start.h: Likewise.
6279         * lib/unictype/pr_ideographic.h: Likewise.
6280         * lib/unictype/pr_ids_binary_operator.h: Likewise.
6281         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
6282         * lib/unictype/pr_ignorable_control.h: Likewise.
6283         * lib/unictype/pr_iso_control.h: Likewise.
6284         * lib/unictype/pr_join_control.h: Likewise.
6285         * lib/unictype/pr_left_of_pair.h: Likewise.
6286         * lib/unictype/pr_line_separator.h: Likewise.
6287         * lib/unictype/pr_logical_order_exception.h: Likewise.
6288         * lib/unictype/pr_lowercase.h: Likewise.
6289         * lib/unictype/pr_math.h: Likewise.
6290         * lib/unictype/pr_non_break.h: Likewise.
6291         * lib/unictype/pr_not_a_character.h: Likewise.
6292         * lib/unictype/pr_numeric.h: Likewise.
6293         * lib/unictype/pr_other_alphabetic.h: Likewise.
6294         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
6295         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
6296         * lib/unictype/pr_other_id_continue.h: Likewise.
6297         * lib/unictype/pr_other_id_start.h: Likewise.
6298         * lib/unictype/pr_other_lowercase.h: Likewise.
6299         * lib/unictype/pr_other_math.h: Likewise.
6300         * lib/unictype/pr_other_uppercase.h: Likewise.
6301         * lib/unictype/pr_paired_punctuation.h: Likewise.
6302         * lib/unictype/pr_paragraph_separator.h: Likewise.
6303         * lib/unictype/pr_pattern_syntax.h: Likewise.
6304         * lib/unictype/pr_pattern_white_space.h: Likewise.
6305         * lib/unictype/pr_private_use.h: Likewise.
6306         * lib/unictype/pr_punctuation.h: Likewise.
6307         * lib/unictype/pr_quotation_mark.h: Likewise.
6308         * lib/unictype/pr_radical.h: Likewise.
6309         * lib/unictype/pr_sentence_terminal.h: Likewise.
6310         * lib/unictype/pr_soft_dotted.h: Likewise.
6311         * lib/unictype/pr_space.h: Likewise.
6312         * lib/unictype/pr_terminal_punctuation.h: Likewise.
6313         * lib/unictype/pr_titlecase.h: Likewise.
6314         * lib/unictype/pr_unassigned_code_value.h: Likewise.
6315         * lib/unictype/pr_unified_ideograph.h: Likewise.
6316         * lib/unictype/pr_uppercase.h: Likewise.
6317         * lib/unictype/pr_variation_selector.h: Likewise.
6318         * lib/unictype/pr_white_space.h: Likewise.
6319         * lib/unictype/pr_xid_continue.h: Likewise.
6320         * lib/unictype/pr_xid_start.h: Likewise.
6321         * lib/unictype/pr_zero_width.h: Likewise.
6322         * lib/unictype/scripts.h: Likewise.
6323         * lib/unictype/scripts_byname.gperf: Likewise.
6324         * lib/unictype/sy_c_ident.h: Likewise.
6325         * lib/unictype/sy_c_whitespace.h: Likewise.
6326         * lib/unictype/sy_java_ident.h: Likewise.
6327         * lib/unictype/sy_java_whitespace.h: Likewise.
6328
6329         * lib/unictype/Makefile: New file.
6330         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
6331         glibc.
6332         * lib/unictype/3level.h: New file, copied from glibc.
6333         * lib/unictype/3levelbit.h: New file.
6334
6335 2007-11-11  Bruno Haible  <bruno@clisp.org>
6336
6337         * modules/gperf: New file.
6338         * modules/iconv_open (Depends-on): Add it.
6339         (Makefile.am): Remove the GPERF definition.
6340
6341 2007-11-11  Bruno Haible  <bruno@clisp.org>
6342
6343         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
6344         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
6345
6346 2007-11-11  Bruno Haible  <bruno@clisp.org>
6347
6348         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
6349         (usage): Remove function.
6350
6351 2007-11-11  Bruno Haible  <bruno@clisp.org>
6352
6353         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
6354         gl_FUNC_CEILF_LIBS.
6355         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
6356         gl_FUNC_CEIL_LIBS.
6357         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
6358         gl_FUNC_CEILL_LIBS.
6359         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
6360         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
6361         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
6362
6363 2007-11-11  Bruno Haible  <bruno@clisp.org>
6364
6365         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
6366         roundf were declared but do not exist on functions.
6367         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
6368         roundl were declared but do not exist on functions.
6369         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
6370         HAVE_FLOORL_AND_CEILL, respectively.
6371         Needed for Sun C on Solaris 10.
6372
6373 2007-11-11  Bruno Haible  <bruno@clisp.org>
6374
6375         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
6376         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
6377         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
6378         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
6379         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
6380         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
6381         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
6382         HAVE_DECL_ROUNDF.
6383         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
6384         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
6385         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
6386         of HAVE_DECL_ROUND*.
6387         * modules/math (Makefile.am): Update.
6388
6389 2007-11-10  Bruno Haible  <bruno@clisp.org>
6390
6391         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
6392         ptrdiff_t as m4/intl.m4.
6393
6394 2007-11-10  Jim Meyering  <meyering@redhat.com>
6395
6396         Avoid link failure for the argmatch test.
6397         * tests/test-argmatch.c (usage): Define function to avoid a link
6398         failure: argmatch_die requires a usage function.
6399
6400 2007-11-09  Bruno Haible  <bruno@clisp.org>
6401
6402         * doc/functions/snprintf.texi: Mention BeOS deficiency.
6403         * doc/functions/vsnprintf.texi: Likewise.
6404         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
6405         with a size argument < 2.
6406
6407 2007-11-09  Bruno Haible  <bruno@clisp.org>
6408
6409         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
6410         buffer. Fixes an inefficiency introduced on 2007-11-03.
6411
6412 2007-11-09  Bruno Haible  <bruno@clisp.org>
6413
6414         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
6415         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
6416
6417 2007-11-08  Jim Meyering  <meyering@redhat.com>
6418
6419         Change cache variable name prefix "jm_" to "gl_" everywhere.
6420         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
6421         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
6422         * m4/uptime.m4: s/gl_/jm_/
6423
6424 2007-11-07  Bruno Haible  <bruno@clisp.org>
6425
6426         Update to GNU gettext 0.17.
6427         * m4/intl.m4: Update to GNU gettext 0.17.
6428         * m4/po.m4: Likewise.
6429         * modules/gettext (Files): Remove m4/ulonglong.m4.
6430         (configure.ac): Require gettext infrastructure from version 0.17.
6431
6432 2007-11-06  Bruno Haible  <bruno@clisp.org>
6433
6434         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
6435         symbolic values are not defined in a public header.
6436         * lib/freadable.c (freadable) [QNX]: Likewise.
6437         * lib/freadahead.c (freadahead) [QNX]: Likewise.
6438         * lib/freading.c (freading) [QNX]: Likewise.
6439         * lib/fseterr.c (fseterr) [QNX]: Likewise.
6440         * lib/fwritable.c (fwritable) [QNX]: Likewise.
6441         * lib/fwriting.c (fwriting) [QNX]: Likewise.
6442         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
6443         Reported by Alain Magloire.
6444
6445         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
6446
6447 2007-11-05  Bruno Haible  <bruno@clisp.org>
6448
6449         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
6450         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
6451         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
6452         Reported by Eric Blake.
6453
6454 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6455             Bruno Haible  <bruno@clisp.org>
6456
6457         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
6458         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
6459         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
6460         (malloc): Undefine also before including <stdlib.h>.
6461         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
6462         Needed on OSF/1 4.0.
6463
6464 2007-11-05  Jim Meyering  <meyering@redhat.com>
6465
6466         git-version-gen: sync from coreutils.
6467         * build-aux/git-version-gen: Add comments.
6468         Change the first '-' to '.' in the snapshot version string,
6469         e.g., 6.9-377-08144 -> 6.9.377-08144
6470         Remove first parameter.
6471         Don't declare a version "-dirty" merely because a time
6472         stamp has changed.
6473
6474 2007-11-04  Bruno Haible  <bruno@clisp.org>
6475
6476         * lib/lock.h: Protect all macro definitions containing an 'if'
6477         statement through a "do { ... } while (0)".
6478         * lib/tls.h: Likewise.
6479
6480 2007-11-04  Bruno Haible  <bruno@clisp.org>
6481
6482         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
6483
6484 2007-11-04  Bruno Haible  <bruno@clisp.org>
6485
6486         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
6487         * modules/fprintf-posix (Depends-on): Add nocrash.
6488         * modules/snprintf-posix (Depends-on): Likewise.
6489         * modules/sprintf-posix (Depends-on): Likewise.
6490         * modules/vasnprintf-posix (Depends-on): Likewise.
6491         * modules/vasprintf-posix (Depends-on): Likewise.
6492         * modules/vfprintf-posix (Depends-on): Likewise.
6493         * modules/vsnprintf-posix (Depends-on): Likewise.
6494         * modules/vsprintf-posix (Depends-on): Likewise.
6495         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
6496         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
6497         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
6498         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
6499         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
6500         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
6501         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
6502
6503 2007-11-04  Bruno Haible  <bruno@clisp.org>
6504
6505         * modules/nocrash: New file.
6506         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
6507         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
6508
6509 2007-11-04  Bruno Haible  <bruno@clisp.org>
6510
6511         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
6512         precision handling.
6513         * tests/test-vasprintf-posix.c (test_function): Likewise.
6514         * tests/test-snprintf-posix.h (test_function): Likewise.
6515         * tests/test-sprintf-posix.h (test_function): Likewise.
6516
6517         Fix *printf behaviour for large precisions on mingw and BeOS.
6518         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
6519         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
6520         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
6521         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
6522         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
6523         gl_PRINTF_PRECISION and test its result. Invoke
6524         gl_PREREQ_VASNPRINTF_PRECISION.
6525         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6526         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6527         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6528         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6529         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6530         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6531         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6532         * doc/functions/fprintf.texi: Update.
6533         * doc/functions/printf.texi: Update.
6534         * doc/functions/snprintf.texi: Update.
6535         * doc/functions/sprintf.texi: Update.
6536         * doc/functions/vfprintf.texi: Update.
6537         * doc/functions/vprintf.texi: Update.
6538         * doc/functions/vsnprintf.texi: Update.
6539         * doc/functions/vsprintf.texi: Update.
6540
6541 2007-11-04  Bruno Haible  <bruno@clisp.org>
6542
6543         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
6544
6545 2007-11-04  Bruno Haible  <bruno@clisp.org>
6546
6547         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
6548         Reported by Sylvain Beucler <beuc@gnu.org>.
6549
6550 2007-11-03  Bruno Haible  <bruno@clisp.org>
6551
6552         * tests/test-fprintf-posix2.sh: New file.
6553         * tests/test-fprintf-posix2.c: New file.
6554         * modules/fprintf-posix-tests (Files): Add them.
6555         (TESTS): Add test-fprintf-posix2.sh.
6556         (configure.ac): Check for getrlimit and setrlimit.
6557         (check_PROGRAMS): Add test-fprintf-posix2.
6558
6559         * tests/test-printf-posix2.sh: New file.
6560         * tests/test-printf-posix2.c: New file.
6561         * modules/printf-posix-tests (Files): Add them.
6562         (TESTS): Add test-printf-posix2.sh.
6563         (configure.ac): Check for getrlimit and setrlimit.
6564         (check_PROGRAMS): Add test-printf-posix2.
6565
6566         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
6567         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
6568         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
6569         (decode_double): New function, copied from decode_long_double.
6570         (scale10_round_decimal_decoded): New function, extracted from
6571         scale10_round_decimal_long_double.
6572         (scale10_round_decimal_long_double): Use it.
6573         (scale10_round_decimal_double): New function.
6574         (floorlog10): New function.
6575         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
6576         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
6577         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
6578         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
6579         gl_PRINTF_ENOMEM and test its result. Invoke
6580         gl_PREREQ_VASNPRINTF_ENOMEM.
6581         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
6582         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
6583         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
6584         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
6585         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
6586         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
6587         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
6588         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
6589         * modules/snprintf-posix (Depends-on): Likewise.
6590         * modules/sprintf-posix (Depends-on): Likewise.
6591         * modules/vasnprintf-posix (Depends-on): Likewise.
6592         * modules/vasprintf-posix (Depends-on): Likewise.
6593         * modules/vfprintf-posix (Depends-on): Likewise.
6594         * modules/vsnprintf-posix (Depends-on): Likewise.
6595         * modules/vsprintf-posix (Depends-on): Likewise.
6596         * doc/functions/fprintf.texi: Update.
6597         * doc/functions/printf.texi: Update.
6598         * doc/functions/snprintf.texi: Update.
6599         * doc/functions/sprintf.texi: Update.
6600         * doc/functions/vfprintf.texi: Update.
6601         * doc/functions/vprintf.texi: Update.
6602         * doc/functions/vsnprintf.texi: Update.
6603         * doc/functions/vsprintf.texi: Update.
6604
6605 2007-11-03  Bruno Haible  <bruno@clisp.org>
6606
6607         * modules/frexp-nolibm-tests: New file.
6608
6609         * modules/frexp-nolibm: New file.
6610         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
6611
6612 2007-11-03  Bruno Haible  <bruno@clisp.org>
6613
6614         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
6615         value is C99 compliant.
6616         Needed for OSF/1 5.1.
6617
6618 2007-11-03  Bruno Haible  <bruno@clisp.org>
6619
6620         Fix out-of-memory handling of vasnprintf.
6621         * lib/printf-parse.c: Include <errno.h>.
6622         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
6623         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
6624         is already set.
6625
6626 2007-11-02  Eric Blake  <ebb9@byu.net>
6627
6628         Fix tests on cygwin.
6629         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
6630
6631 2007-11-01  Bruno Haible  <bruno@clisp.org>
6632
6633         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
6634         warning.
6635         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
6636         needed for POSIX compatibility.
6637
6638 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
6639
6640         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
6641         for compatibility with GNU.
6642
6643 2007-11-01  Bruno Haible  <bruno@clisp.org>
6644
6645         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
6646         (putenv): Renamed from rpl_putenv. Change argument type from
6647         'const char *' to 'char *'.
6648         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
6649         of defining putenv in config.h, just set REPLACE_PUTENV.
6650         * modules/putenv (Depends-on): Add stdlib.
6651         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
6652         (Include): Use <stdlib.h>.
6653         * lib/stdlib.in.h (putenv): New declaration.
6654         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
6655         REPLACE_PUTENV.
6656         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
6657         REPLACE_PUTENV.
6658         Needed for MacOS X 10.5.0.
6659         Reported by Peter O'Gorman <peter@pogma.com>.
6660
6661 2007-11-01  Jim Meyering  <meyering@redhat.com>
6662
6663         Treat an empty date string exactly like "0".
6664         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
6665         if the remaining date string (to be parsed) is empty, use "0".
6666         Reported by Mischa Molhoek and discussed in this thread:
6667         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
6668
6669 2007-10-31  Bruno Haible  <bruno@clisp.org>
6670
6671         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
6672         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
6673         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
6674         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
6675         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
6676         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
6677
6678 2007-10-31  Bruno Haible  <bruno@clisp.org>
6679
6680         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
6681         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
6682         (AC_TYPE_LONG_LONG_INT): Use it.
6683         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
6684         it as well.
6685         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
6686         to m4/longlong.m4.
6687         * modules/stdint (Files): Remove m4/ulonglong.m4.
6688         * modules/strtoull (Files): Use m4/longlong.m4 instead of
6689         m4/ulonglong.m4.
6690         * modules/strtoumax (Files): Likewise.
6691
6692 2007-10-30  Bruno Haible  <bruno@clisp.org>
6693
6694         * modules/xvasprintf-posix: New file.
6695         Suggested by Eric Blake.
6696
6697 2007-10-30  Bruno Haible  <bruno@clisp.org>
6698
6699         * modules/xprintf-posix-tests: New file.
6700         * tests/test-xprintf-posix.sh: New file.
6701         * tests/test-xprintf-posix.c: New file.
6702         * tests/test-xfprintf-posix.c: New file.
6703
6704         * modules/xprintf-posix: New file.
6705
6706 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6707
6708         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
6709         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
6710         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
6711
6712 2007-10-29  Bruno Haible  <bruno@clisp.org>
6713
6714         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
6715         contain the special marker '_cv_'.
6716         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
6717         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
6718         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
6719         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
6720         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
6721         Reported by Ralf Wildenhues.
6722
6723 2007-10-29  Bruno Haible  <bruno@clisp.org>
6724
6725         * gnulib-tool (func_import): When --lgpl is not specified, set
6726         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
6727         GPLv3.
6728         Reported by Simon Josefsson.
6729
6730 2007-10-28  Bruno Haible  <bruno@clisp.org>
6731
6732         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
6733         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
6734         HAVE_DECL_ISFINITE.
6735         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
6736         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
6737         HAVE_DECL_ISFINITE.
6738
6739 2007-10-28  Bruno Haible  <bruno@clisp.org>
6740
6741         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
6742         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
6743
6744 2007-10-28  Bruno Haible  <bruno@clisp.org>
6745
6746         Fix link errors with Sun C 5.0 on Solaris 10.
6747         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
6748         function is declared but not present in the compiler's libm.
6749         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
6750         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
6751         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
6752         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
6753         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
6754         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
6755         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
6756         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
6757         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
6758         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
6759         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
6760         HAVE_DECL_FLOORL.
6761
6762 2007-10-28  Bruno Haible  <bruno@clisp.org>
6763
6764         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
6765         gl_FUNC_FLOORL. Cache the result.
6766         (gl_FUNC_FLOORL): Use it.
6767         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
6768         gl_FUNC_CEILL. Cache the result.
6769         (gl_FUNC_CEILL): Use it.
6770
6771         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
6772         gl_FUNC_FLOOR. Cache the result.
6773         (gl_FUNC_FLOOR): Use it.
6774         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
6775         gl_FUNC_CEIL. Cache the result.
6776         (gl_FUNC_CEIL): Use it.
6777
6778         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
6779         gl_FUNC_FLOORF. Cache the result.
6780         (gl_FUNC_FLOORF): Use it.
6781         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
6782         gl_FUNC_CEILF. Cache the result.
6783         (gl_FUNC_CEILF): Use it.
6784
6785 2007-10-28  Bruno Haible  <bruno@clisp.org>
6786
6787         * gnulib-tool: Allow specifying the LGPL version number through
6788         --lgpl=2 or --lgpl=3.
6789         (func_usage): Document --lgpl with argument.
6790         Handle --lgpl=... arguments.
6791         (func_import): Recognize also gl_LGPL calls with an argument. When
6792         --lgpl=2 is used and the module's license is just LGPL, report an
6793         error. Set sed_transform_lib_file according to the lgpl variable. In
6794         the generated files, use --lgpl or gl_LGPL invocations with argument,
6795         if necessary.
6796         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
6797         an LGPv2+ license.
6798         * doc/gnulib-tool.texi (Modified imports): Update explanation of
6799         gl_LGPL macro.
6800
6801 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6802             Bruno Haible  <bruno@clisp.org>
6803
6804         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
6805         (u16_uctomb_aux): Likewise.
6806         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
6807         !HAVE_INLINE.
6808         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
6809
6810 2007-10-28  Bruno Haible  <bruno@clisp.org>
6811
6812         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
6813         Invoke AM_GETTEXT_OPTION if it exists.
6814         * modules/vasprintf: Likewise.
6815         * modules/verror: Likewise.
6816         * modules/xprintf: Likewise.
6817         * modules/xvasprintf: Likewise.
6818
6819 2007-10-27  Ben Pfaff  <blp@gnu.org>
6820
6821         * lib/math.in.h: Define isfinite macro and prototypes for
6822         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
6823         implementations.
6824         * m4/math_h.m4: New substitutions for isfinite module.
6825         * lib/isfinite.c: New file.
6826         * m4/isfinite.m4: New file.
6827         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
6828         * modules/isfinite: New file.
6829         * modules/isfinite-tests: New file.
6830         * tests/tests-isfinite.c: New file.
6831         * doc/functions/isfinite.texi: Mention isfinite module.
6832         * MODULES.html.sh: Mention new module.
6833
6834 2007-10-27  Ben Pfaff  <blp@gnu.org>
6835
6836         Ralf Wildenhues reported that Tru64 4.0D declares the round
6837         functions but does not have definitions.
6838         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
6839         cannot be found in any library, set the output variable to
6840         "missing" instead of "".
6841         * m4/round.m4: Also use our substitute if we cannot find round in
6842         any library, even if it is declared.
6843         * m4/roundf.m4: Likewise for roundf.
6844         * m4/roundl.m4: Likewise for roundl.
6845         * lib/math.in.h: Undefine roundf, round, roundl before defining
6846         their replacements, to allow for hypothetical systems where these
6847         may be defined as macros but not available in libraries.
6848
6849 2007-10-27  Bruno Haible  <bruno@clisp.org>
6850
6851         * doc/gnulib.texi: Invoke @firstparagraphindent.
6852         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
6853         changes in gnulib.
6854         (Source changes): New section.
6855
6856 2007-10-26  Bruno Haible  <bruno@clisp.org>
6857
6858         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
6859         borrowed from autoconf.
6860
6861 2007-10-26  Bruno Haible  <bruno@clisp.org>
6862
6863         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
6864         strerror returned the empty string. Needed on HP-UX 11.00.
6865
6866 2007-10-24  Micah Cowan  <micah@cowan.name>
6867
6868         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
6869         * build-aux/bootstrap: Remove support for now-unnecessary option,
6870         --cvs-user, and envvars CVS_USER, CVS_RSH.
6871
6872 2007-10-24  Jim Meyering  <meyering@redhat.com>
6873
6874         Avoid diagnostics from sha1sum when there is no cached checksum.
6875         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
6876         if the po.s1 file hasn't been created yet.
6877
6878         * build-aux/bootstrap: Sync from coreutils:
6879         2007-10-24  Jim Meyering  <meyering@redhat.com>
6880         Get gnulib from the git repository, not from an obsolete cvs one.
6881         * build-aux/bootstrap: Suggestion from Micah Cowan.
6882         2007-10-04  Jim Meyering  <jim@meyering.net>
6883         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
6884         (update_po_files): Work also when there are no .po files in po/.
6885
6886 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
6887
6888         * README: Append ".git" to git and cg examples.
6889         Problem reported by Benoit Sigoure.
6890
6891 2007-10-23  Micah Cowan  <micah@cowan.name>
6892
6893         * users.txt: Add wget.
6894
6895 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6896
6897         Fix linking of some unistdio tests on FreeBSD.
6898         * modules/unistdio/u16-vsnprintf-tests
6899         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
6900         * modules/unistdio/u16-vsprintf-tests
6901         (test_u16_vsnprintf1_LDADD): Likewise.
6902         * modules/unistdio/u32-vsnprintf-tests
6903         (test_u32_vsnprintf1_LDADD): Likewise.
6904         * modules/unistdio/u32-vsprintf-tests
6905         (test_u32_vsprintf1_LDADD): Likewise.
6906         * modules/unistdio/u8-vsnprintf-tests
6907         (test_u8_vsnprintf1_LDADD): Likewise.
6908         * modules/unistdio/u8-vsprintf-tests
6909         (test_u8_vsprintf1_LDADD): Likewise.
6910         * modules/unistdio/ulc-vsnprintf-tests
6911         (test_ulc_vsnprintf1_LDADD): Likewise.
6912         * modules/unistdio/ulc-vsprintf-tests
6913         (test_ulc_vsprintf1_LDADD): Likewise.
6914
6915         Fix linking of some uniconv tests on FreeBSD.
6916         * modules/uniconv/u16-conv-from-enc-tests
6917         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
6918         * modules/uniconv/u16-conv-to-enc-tests
6919         (test_u16_conv_to_enc_LDADD): Likewise.
6920         * modules/uniconv/u16-strconv-from-enc-tests
6921         (test_u16_strconv_from_enc_LDADD): Likewise.
6922         * modules/uniconv/u16-strconv-to-enc-tests
6923         (test_u16_strconv_to_enc_LDADD): Likewise.
6924         * modules/uniconv/u32-conv-from-enc-tests
6925         (test_u32_conv_from_enc_LDADD): Likewise.
6926         * modules/uniconv/u32-conv-to-enc-tests
6927         (test_u32_conv_to_enc_LDADD): Likewise.
6928         * modules/uniconv/u32-strconv-from-enc-tests
6929         (test_u32_strconv_from_enc_LDADD): Likewise.
6930         * modules/uniconv/u32-strconv-to-enc-tests
6931         (test_u32_strconv_to_enc_LDADD): Likewise.
6932         * modules/uniconv/u8-conv-from-enc-tests
6933         (test_u8_conv_from_enc_LDADD): Likewise.
6934         * modules/uniconv/u8-conv-to-enc-tests
6935         (test_u8_conv_to_enc_LDADD): Likewise.
6936         * modules/uniconv/u8-strconv-from-enc-tests
6937         (test_u8_strconv_from_enc_LDADD): Likewise.
6938         * modules/uniconv/u8-strconv-to-enc-tests
6939         (test_u8_strconv_to_enc_LDADD): Likewise.
6940
6941 2007-10-22  Bruno Haible  <bruno@clisp.org>
6942
6943         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
6944         size.
6945
6946 2007-10-22  Eric Blake  <ebb9@byu.net>
6947
6948         Tweak x*printf documentation.
6949         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
6950         variable name and comments.
6951         Suggested by Bruno Haible.
6952
6953 2007-10-22  Bruno Haible  <bruno@clisp.org>
6954
6955         * lib/acl.c (copy_acl): Fix file name in comment.
6956
6957 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
6958
6959         Fix Tru64 problem with stdbool.h.
6960         * lib/stdbool.in.h (false, true):
6961         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
6962         Don't declare as an enum in this situation; it runs afoul of Tru64.
6963         Problem reported by Steven M. Schweda in
6964         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
6965
6966 2007-10-22  Eric Blake  <ebb9@byu.net>
6967
6968         Also wrap vf?printf.
6969         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
6970         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
6971         (xvprintf, xvfprintf): New functions.
6972
6973 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6974
6975         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
6976         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
6977
6978         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
6979         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
6980
6981 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
6982
6983         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
6984         by Bruno Haible.
6985
6986 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6987
6988         * lib/getloadavg.c
6989         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
6990         Undef `sys' after including sys/table.h, for Tru64 4.0D.
6991
6992         * tests/test-i-ring.c: Work for C89.
6993
6994 2007-10-22  Bruno Haible  <bruno@clisp.org>
6995
6996         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
6997         -1u, in preprocessor expression, so that we don't test for the bug
6998         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
6999         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
7000
7001 2007-10-22  Eric Blake  <ebb9@byu.net>
7002
7003         * tests/test-yesno.sh: Silence stderr during test.
7004
7005 2007-10-22  Simon Josefsson  <simon@josefsson.org>
7006
7007         * modules/crypto/gc-camellia: New file.
7008
7009         * m4/gc-camellia.m4: New file.
7010
7011         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
7012
7013         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
7014
7015 2007-10-22  Simon Josefsson  <simon@josefsson.org>
7016
7017         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
7018         --help to stdout.  Reported by sms@antinode.org (Steven
7019         M. Schweda).
7020
7021 2007-10-22  Simon Josefsson  <simon@josefsson.org>
7022
7023         * users.txt: Fix link to libksba.
7024
7025 2007-10-21  Ben Pfaff  <blp@gnu.org>
7026
7027         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
7028         round.c roundf implementation that depends on floorf and ceilf to
7029         be tested unconditionally.
7030
7031 2007-10-21  Ben Pfaff  <blp@gnu.org>
7032
7033         * m4/check-libm-func.m4: Removed.
7034         * m4/check-math-lib.m4: New file.
7035         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
7036         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
7037         definition and lack of AC_LIBOBJ([roundf]).
7038         * m4/roundl.m4: Ditto, and similarly for roundl.
7039         * modules/round: Reference new m4 file.
7040         * modules/roundf: Ditto.
7041         * modules/roundl: Ditto.
7042         * tests/test-round2.c (main): Use ROUND instead of round.
7043         Bug report from Bruno Haible.
7044
7045 2007-10-21  Bruno Haible  <bruno@clisp.org>
7046
7047         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
7048         context.
7049
7050 2007-10-21  Bruno Haible  <bruno@clisp.org>
7051
7052         * tests/test-wcwidth.c (main): Allow negative result for some control
7053         characters.
7054
7055         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
7056         Needed on OSF/1 5.1.
7057
7058 2007-10-21  Bruno Haible  <bruno@clisp.org>
7059
7060         * tests/test-floorf1.c: Include isnanf.h.
7061         (main): Use isnanf() instead of isnan().
7062         * tests/test-ceilf1.c: Include isnanf.h.
7063         (main): Use isnanf() instead of isnan().
7064         * tests/test-truncf1.c: Include isnanf.h.
7065         (main): Use isnanf() instead of isnan().
7066         * tests/test-roundf1.c: Include isnanf.h.
7067         (main): Use isnanf() instead of isnan().
7068
7069 2007-10-21  Eric Blake  <ebb9@byu.net>
7070
7071         * users.txt: Update URL for m4.
7072
7073 2007-10-21  Bruno Haible  <bruno@clisp.org>
7074
7075         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
7076
7077 2007-10-21  Bruno Haible  <bruno@clisp.org>
7078
7079         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
7080         Git's management files if the CVS files are not present.
7081
7082 2007-10-20  Bruno Haible  <bruno@clisp.org>
7083
7084         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
7085         gcc-3.4.x.
7086
7087 2007-10-20  Ben Pfaff  <blp@gnu.org>
7088
7089         * lib/math.in.h: Declare round, roundf, roundl if we are providing
7090         implementations.
7091         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
7092         * lib/round.c: New file.
7093         * lib/roundf.c: New file.
7094         * lib/roundl.c: New file.
7095         * m4/round.m4: New file.
7096         * m4/roundf.m4: New file.
7097         * m4/roundl.m4: New file.
7098         * m4/check-libm-func-m4: New file.
7099         * modules/math: Replace round, roundf, roundl related @VARS@ in
7100         math.in.h.
7101         * modules/round: New file.
7102         * modules/round-tests: New file.
7103         * modules/roundf: New file.
7104         * modules/roundf-tests: New file.
7105         * modules/roundl: New file.
7106         * modules/roundl-tests: New file.
7107         * tests/test-round1.c: New file.
7108         * tests/test-round2.c: New file.
7109         * tests/test-roundf1.c: New file.
7110         * tests/test-roundf2.c: New file.
7111         * tests/test-roundl.c: New file.
7112         * doc/functions/round.texi: Mention round module.
7113         * doc/functions/roundf.texi: Mention roundf module.
7114         * doc/functions/roundl.texi: Mention roundl module.
7115         * MODULES.html.sh: Mention new modules.
7116         Thanks to Bruno Haible for suggestions.
7117
7118 2007-10-20  Jim Meyering  <meyering@redhat.com>
7119
7120         * lib/xprintf.c: Include <config.h> unconditionally.
7121
7122         Change xprintf's license to GPL.
7123         * modules/xprintf (License): s/LGPL/GPL/, since this module
7124         depends on modules (exit and exitfail) which are GPL.
7125         Suggestion from Bruno Haible.
7126
7127         xprintf fixes.
7128         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
7129         Use a clearer diagnostic.
7130         Patch from Bruno Haible.
7131
7132 2007-10-20  Bruno Haible  <bruno@clisp.org>
7133
7134         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
7135         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
7136         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7137
7138 2007-10-20  Bruno Haible  <bruno@clisp.org>
7139
7140         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
7141         precision in the comparison result > x - 1 or similar.
7142         * tests/test-ceilf2.c (correct_result_p): Likewise.
7143         * tests/test-truncf2.c (correct_result_p): Likewise.
7144         * tests/test-trunc2.c (correct_result_p): Likewise.
7145         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7146
7147 2007-10-20  Bruno Haible  <bruno@clisp.org>
7148
7149         * modules/ceil: New file.
7150         * m4/ceil.m4: New file.
7151         * doc/functions/ceil.texi: Mention the 'ceil' module.
7152
7153 2007-10-20  Bruno Haible  <bruno@clisp.org>
7154
7155         * modules/floor: New file.
7156         * m4/floor.m4: New file.
7157         * doc/functions/floor.texi: Mention the 'floor' module.
7158
7159 2007-10-20  Bruno Haible  <bruno@clisp.org>
7160
7161         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
7162         of %a.
7163         * modules/floorf-tests (Depends-on): Likewise.
7164         * modules/truncf-tests (Depends-on): Likewise.
7165         * modules/trunc-tests (Depends-on): Likewise.
7166         Reported by Ben Pfaff.
7167
7168 2007-10-19  Jim Meyering  <meyering@redhat.com>
7169
7170         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
7171         Don't bother testing specific errno values.  Just test ferror.
7172
7173         New module: xprintf
7174         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
7175
7176 2007-10-19  Bruno Haible  <bruno@clisp.org>
7177
7178         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
7179         syntax.
7180         * modules/javaexec (Makefile.am): Likewise.
7181         * modules/relocatable-prog (Makefile.am): Likewise.
7182         Suggested by Jim Meyering.
7183
7184 2007-10-18  Bruno Haible  <bruno@clisp.org>
7185
7186         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
7187         Reported by Jim Meyering.
7188
7189 2007-10-18  Eric Blake  <ebb9@byu.net>
7190
7191         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
7192
7193 2007-10-18  Bruno Haible  <bruno@clisp.org>
7194
7195         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
7196         the format string into writable memory. Needed in Fortify conditions.
7197
7198 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
7199             Bruno Haible  <bruno@clisp.org>
7200
7201         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
7202         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
7203         * modules/trim (Depends-on): Add mbchar.
7204         (configure.ac): Add gl_FUNC_MBRTOWC.
7205         (Makefile.am): Augment lib_SOURCES.
7206
7207 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
7208
7209         Modify glob.c to use fstatat and dirfd, to simplify it.
7210         Suggested by Eric Blake.
7211         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
7212         Don't include <stdbool.h>; not used.
7213         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
7214         (link_exists_p): Simplify implementation, since we can now assume
7215         dirfd and fstatat.
7216         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
7217
7218 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7219
7220         * gnulib-tool (func_get_dependencies): Fix sed script to
7221         match only tests.
7222
7223 2007-10-17  Bruno Haible  <bruno@clisp.org>
7224
7225         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
7226         allow locale names without encoding suffix.
7227         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
7228         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
7229
7230 2007-10-16  Bruno Haible  <bruno@clisp.org>
7231
7232         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
7233         * lib/getgroups.c (getgroups): Likewise.
7234         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
7235
7236 2007-10-16  Bruno Haible  <bruno@clisp.org>
7237
7238         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
7239         * modules/malloc-posix (License): Likewise.
7240         * modules/realloc-posix (License): Likewise.
7241         * modules/calloc-posix (License): Likewise.
7242         * modules/intprops (License): Change from GPL to LGPL, with
7243         Paul Eggert's approval.
7244
7245 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
7246
7247         Merge glibc changes into lib/glob.c.
7248
7249         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
7250         2007-10-15 04:59:03 UTC.  Here are the changes:
7251
7252         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
7253
7254         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
7255
7256         * lib/glob.c: Add some branch prediction throughout.
7257
7258         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
7259
7260         [BZ #5103]
7261         * lib/glob.c (glob): Recognize patterns starting \/.
7262
7263         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
7264
7265         [BZ #3996]
7266         * lib/glob.c (attribute_hidden): Define if not defined.
7267         (glob): Unescape dirname, filename or username when needed and not
7268         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
7269         is NULL.  Handle unescaped [ in pattern without closing ].
7270         Don't pass GLOB_CHECK down to recursive glob for directories.
7271         (__glob_pattern_type): New function.
7272         (__glob_pattern_p): Implement using __glob_pattern_type.
7273         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
7274         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
7275         Remove unreachable code.
7276
7277         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
7278
7279         * lib/glob.c (glob_in_dir): Add some comments and asserts to
7280         explain why there are no leaks.
7281
7282         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
7283
7284         [BZ #3253]
7285         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
7286         time, rather allocate increasingly bigger arrays of pointers, if
7287         possible with alloca, if too large with malloc.
7288
7289 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
7290
7291         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
7292         Problem reported by H.Merijn Brand in
7293         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
7294         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
7295         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
7296
7297 2007-10-15  Bruno Haible  <bruno@clisp.org>
7298
7299         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
7300         with explicit rpl_ prefix.
7301         * lib/fopen.c (fopen): Likewise.
7302         * lib/freopen.c (freopen): Likewise.
7303         * lib/iconv.c (iconv): Likewise.
7304         * lib/iconv_close.c (iconv_close): Likewise.
7305
7306 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7307
7308         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
7309
7310 2007-10-15  Bruno Haible  <bruno@clisp.org>
7311
7312         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
7313         <stddef.h> instead of <stdlib.h> since we only need NULL.
7314         Reported by Ben Pfaff <blp@cs.stanford.edu>.
7315
7316 2007-10-15  Bruno Haible  <bruno@clisp.org>
7317
7318         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
7319         Replace paragraph talking about LIBOBJS.
7320         Reported by Colin Watson <cjwatson@debian.org>.
7321
7322 2007-10-15  Bruno Haible  <bruno@clisp.org>
7323
7324         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
7325         <stdlib.h> before using NULL.
7326
7327 2007-10-15  Simon Josefsson  <simon@josefsson.org>
7328
7329         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
7330         Reported by Albert Chin <china@thewrittenword.com>.
7331
7332 2007-10-14  Bruno Haible  <bruno@clisp.org>
7333
7334         * modules/iconv_open-utf-tests: New file.
7335         * tests/test-iconv-utf.c: New file.
7336
7337         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
7338         * modules/iconv_open-utf: New file.
7339         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
7340         (iconv, iconv_close): New declarations.
7341         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
7342         be defined.
7343         (iconv_open): Add special handling of conversion between UTF-8 and
7344         UTF-{16,32}{BE,LE}.
7345         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
7346         * lib/iconv_close.c: New file.
7347         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
7348         gl_FUNC_ICONV_OPEN.
7349         (gl_FUNC_ICONV_OPEN): Use it.
7350         (gl_FUNC_ICONV_OPEN_UTF): New macro.
7351         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
7352         and REPLACE_ICONV_UTF.
7353         * modules/iconv_open (Depends-on): Add c-strcase.
7354         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
7355         ICONV_CONST.
7356         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
7357
7358 2007-10-13  Albert Chin  <china@thewrittenword.com>
7359             Bruno Haible  <bruno@clisp.org>
7360
7361         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
7362         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
7363
7364 2007-10-13  Bruno Haible  <bruno@clisp.org>
7365
7366         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
7367         defined, use the ISO C99 inline semantics.
7368         * lib/argp.h (ARGP_EI): Likewise.
7369
7370 2007-10-13  Bruno Haible  <bruno@clisp.org>
7371
7372         Handle 'inline' change in gcc 4.3.0.
7373         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
7374         argp_fmtstream_write, argp_fmtstream_set_lmargin,
7375         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
7376         argp_fmtstream_point): Disable 'extern' declaration if the function
7377         definition is going to be provided inline.
7378         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
7379         semantics, not the ISO C99 inline semantics.
7380         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
7381         'extern' declaration if the function definition is going to be provided
7382         inline.
7383         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
7384         the GNU C inline semantics, not the ISO C99 inline semantics. With
7385         GCC 4.2, avoid a warning.
7386
7387 2007-10-13  Bruno Haible  <bruno@clisp.org>
7388
7389         * lib/freading.h (freading): Enable the use of __freading for
7390         glibc >= 2.7.
7391         * lib/freading.c (freading): Likewise.
7392
7393 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
7394
7395         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
7396         "warning: C99 inline functions are not supported; using GNU89".
7397
7398 2007-10-12  Bruno Haible  <bruno@clisp.org>
7399
7400         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
7401         of 2.
7402         * tests/test-ceilf2.c: New file.
7403         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
7404
7405         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
7406         * modules/ceilf-tests: Update.
7407
7408 2007-10-12  Bruno Haible  <bruno@clisp.org>
7409
7410         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
7411         of 2.
7412         * tests/test-floorf2.c: New file.
7413         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
7414
7415         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
7416         * modules/floorf-tests: Update.
7417
7418 2007-10-12  Bruno Haible  <bruno@clisp.org>
7419
7420         * tests/test-trunc2.c: New file.
7421         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
7422
7423         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
7424         * modules/trunc-tests: Update.
7425
7426 2007-10-12  Bruno Haible  <bruno@clisp.org>
7427
7428         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
7429         of 2.
7430         * tests/test-truncf2.c: New file.
7431         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
7432
7433         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
7434         * modules/truncf-tests: Update.
7435
7436 2007-10-11  Eric Blake  <ebb9@byu.net>
7437
7438         Don't claim strerror is broken on Interix.
7439         * doc/functions/strerror.texi (strerror): Known broken systems are
7440         now Solaris 8, and not Interix.
7441         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
7442         Interix on cross-compile.
7443         Reported by Martin Koeppe in
7444         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
7445
7446 2007-10-11  Bruno Haible  <bruno@clisp.org>
7447
7448         * modules/i-ring-tests: New file.
7449         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
7450         instead of assert.
7451
7452 2007-10-11  Bruno Haible  <bruno@clisp.org>
7453
7454         * modules/filenamecat-tests: New file.
7455         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
7456         * lib/filenamecat.c: Remove test code.
7457
7458 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
7459
7460         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
7461
7462         * lib/strerror.c: Include <string.h> always, to test interface,
7463         and to remove the need for the dummy.
7464         Include intprops.h to compute width instead of doing it ourselves
7465         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
7466         (strerror): Define it to return NULL if there's no system strerror.
7467         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
7468         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
7469         ancient pre-strerror Unix systems well any more.  Saying "unknown
7470         system error" is enough.
7471         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
7472         simpler strerror.c implementation.
7473         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
7474         Simplify the tests to reflect the simpler strerror implementation.
7475         * modules/strerror (Depends-on): Add intprops.
7476
7477 2007-10-09  Eric Blake  <ebb9@byu.net>
7478
7479         Silence test-fpending.
7480         * modules/fpending-tests (Files): Add wrapper script.
7481         * tests/test-fpending.sh: New file.
7482
7483 2007-10-09  Bruno Haible  <bruno@clisp.org>
7484
7485         * MODULES.html.sh (func_module): Don't create a hyperlink for
7486         function names like 'printf_frexp'.
7487         (Misc): Add crc, memxor.
7488         (Characteristics of floating types): New section.
7489         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
7490         isnanf-nolibm, signbit, trunc, truncf, truncl.
7491         (Enhancements for ISO C 99 functions): New subsection Input/output.
7492         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
7493         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
7494         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
7495         (Compatibility checks for POSIX:2001 functions): Add clock-time.
7496         (Enhancements for POSIX:2001 functions): Add chdir-long.
7497         (File system functions): Add areadlink, chdir-safer, read-file.
7498         Remove cycle-check.
7499         (File system as inode set): New section.
7500         (Date and time): Add gethrxtime.
7501         (Multithreading): Add openmp.
7502         (Internationalization functions): Add localename.
7503         (Unicode string functions): Add unistr/u*-mbsnlen.
7504         (Support for maintaining and releasing projects): Add git-version-gen.
7505         (Lone files): Remove directories.
7506
7507 2007-10-08  Ben Pfaff  <blp@gnu.org>
7508
7509         * lib/xmalloca.h: Fix typo in comment.
7510
7511 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
7512
7513         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
7514         when avoiding problems with integer overflow.  Use a portable test
7515         instead.
7516
7517 2007-10-08  Simon Josefsson  <simon@josefsson.org>
7518
7519         * modules/dummy (License): Change to LGPLv2+.
7520         * modules/float (License): Likewise
7521         * modules/realloc (License): Likewise
7522         * modules/stdlib (License): Likewise
7523
7524 2007-10-07  Bruno Haible  <bruno@clisp.org>
7525
7526         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
7527         * floor.c (TWO_MANT_DIG): Likewise.
7528         * ceil.c (TWO_MANT_DIG): Likewise.
7529         Reported by Ben Pfaff.
7530
7531 2007-10-07  Bruno Haible  <bruno@clisp.org>
7532
7533         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
7534         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
7535         * lib/frexp.c (FUNC): Likewise.
7536         * lib/printf-frexp.h (printf_frexp): Likewise.
7537         * lib/printf-frexpl.h (printf_frexpl): Likewise.
7538         * lib/printf-frexp.c (FUNC): Likewise.
7539         Suggested by Jim Meyering.
7540
7541 2007-10-07  Jim Meyering  <meyering@redhat.com>
7542
7543         Make xnanosleep's integer overflow test more robust.
7544         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
7545         so that gcc-4.3.0 doesn't optimize away this test for overflow.
7546
7547 2007-10-07  Bruno Haible  <bruno@clisp.org>
7548
7549         * NEWS: Mention the license change.
7550
7551         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
7552         abbreviations in the modules files.
7553
7554         Change copyright notice from GPLv2+ to GPLv3+.
7555         * README: Change copyright notice.
7556         * MODULES.html.sh: Likewise.
7557         * build-aux/bootstrap.conf: Likewise.
7558         * build-aux/config.libpath: Likewise.
7559         * build-aux/csharpcomp.sh.in: Likewise.
7560         * build-aux/csharpexec.sh.in: Likewise.
7561         * build-aux/install-reloc: Likewise.
7562         * build-aux/javacomp.sh.in: Likewise.
7563         * build-aux/javaexec.sh.in: Likewise.
7564         * build-aux/ldd.sh.in: Likewise.
7565         * build-aux/reloc-ldflags: Likewise.
7566         * build-aux/relocatable.sh.in: Likewise.
7567         * build-aux/x-to-1.in: Likewise.
7568         * check-module: Likewise.
7569         * config/srclistvars.sh: Likewise.
7570         * gnulib-tool: Likewise.
7571         * lib/acl-internal.h: Likewise.
7572         * lib/acl.c: Likewise.
7573         * lib/acl.h: Likewise.
7574         * lib/acl_entries.c: Likewise.
7575         * lib/areadlink-with-size.c: Likewise.
7576         * lib/areadlink.c: Likewise.
7577         * lib/areadlink.h: Likewise.
7578         * lib/argmatch.c: Likewise.
7579         * lib/argmatch.h: Likewise.
7580         * lib/argp-ba.c: Likewise.
7581         * lib/argp-eexst.c: Likewise.
7582         * lib/argp-fmtstream.c: Likewise.
7583         * lib/argp-fmtstream.h: Likewise.
7584         * lib/argp-fs-xinl.c: Likewise.
7585         * lib/argp-help.c: Likewise.
7586         * lib/argp-namefrob.h: Likewise.
7587         * lib/argp-parse.c: Likewise.
7588         * lib/argp-pin.c: Likewise.
7589         * lib/argp-pv.c: Likewise.
7590         * lib/argp-pvh.c: Likewise.
7591         * lib/argp-xinl.c: Likewise.
7592         * lib/argp.h: Likewise.
7593         * lib/at-func.c: Likewise.
7594         * lib/atanl.c: Likewise.
7595         * lib/backupfile.c: Likewise.
7596         * lib/backupfile.h: Likewise.
7597         * lib/basename.c: Likewise.
7598         * lib/binary-io.h: Likewise.
7599         * lib/byteswap.in.h: Likewise.
7600         * lib/c-stack.c: Likewise.
7601         * lib/c-stack.h: Likewise.
7602         * lib/c-strcasestr.c: Likewise.
7603         * lib/c-strcasestr.h: Likewise.
7604         * lib/c-strstr.c: Likewise.
7605         * lib/c-strstr.h: Likewise.
7606         * lib/c-strtod.c: Likewise.
7607         * lib/calloc.c: Likewise.
7608         * lib/canon-host.c: Likewise.
7609         * lib/canon-host.h: Likewise.
7610         * lib/canonicalize-lgpl.c: Likewise.
7611         * lib/canonicalize.c: Likewise.
7612         * lib/canonicalize.h: Likewise.
7613         * lib/ceil.c: Likewise.
7614         * lib/ceilf.c: Likewise.
7615         * lib/ceill.c: Likewise.
7616         * lib/chdir-long.c: Likewise.
7617         * lib/chdir-long.h: Likewise.
7618         * lib/chdir-safer.c: Likewise.
7619         * lib/chdir-safer.h: Likewise.
7620         * lib/chown.c: Likewise.
7621         * lib/classpath.c: Likewise.
7622         * lib/classpath.h: Likewise.
7623         * lib/clean-temp.c: Likewise.
7624         * lib/clean-temp.h: Likewise.
7625         * lib/cloexec.c: Likewise.
7626         * lib/close-stream.c: Likewise.
7627         * lib/closein.c: Likewise.
7628         * lib/closein.h: Likewise.
7629         * lib/closeout.c: Likewise.
7630         * lib/closeout.h: Likewise.
7631         * lib/concat-filename.c: Likewise.
7632         * lib/copy-file.c: Likewise.
7633         * lib/copy-file.h: Likewise.
7634         * lib/count-one-bits.h: Likewise.
7635         * lib/crc.c: Likewise.
7636         * lib/crc.h: Likewise.
7637         * lib/creat-safer.c: Likewise.
7638         * lib/csharpcomp.c: Likewise.
7639         * lib/csharpcomp.h: Likewise.
7640         * lib/csharpexec.c: Likewise.
7641         * lib/csharpexec.h: Likewise.
7642         * lib/cycle-check.c: Likewise.
7643         * lib/cycle-check.h: Likewise.
7644         * lib/diacrit.c: Likewise.
7645         * lib/diacrit.h: Likewise.
7646         * lib/diffseq.h: Likewise.
7647         * lib/dirchownmod.c: Likewise.
7648         * lib/dirent.in.h: Likewise.
7649         * lib/dirfd.c: Likewise.
7650         * lib/dirfd.h: Likewise.
7651         * lib/dirname.c: Likewise.
7652         * lib/dirname.h: Likewise.
7653         * lib/dummy.c: Likewise.
7654         * lib/dup-safer.c: Likewise.
7655         * lib/dup2.c: Likewise.
7656         * lib/eealloc.h: Likewise.
7657         * lib/error.c: Likewise.
7658         * lib/error.h: Likewise.
7659         * lib/euidaccess.c: Likewise.
7660         * lib/exclude.c: Likewise.
7661         * lib/exclude.h: Likewise.
7662         * lib/execute.c: Likewise.
7663         * lib/execute.h: Likewise.
7664         * lib/exitfail.c: Likewise.
7665         * lib/exitfail.h: Likewise.
7666         * lib/expl.c: Likewise.
7667         * lib/fatal-signal.c: Likewise.
7668         * lib/fatal-signal.h: Likewise.
7669         * lib/fbufmode.c: Likewise.
7670         * lib/fbufmode.h: Likewise.
7671         * lib/fchdir.c: Likewise.
7672         * lib/fchmodat.c: Likewise.
7673         * lib/fchownat.c: Likewise.
7674         * lib/fcntl--.h: Likewise.
7675         * lib/fcntl-safer.h: Likewise.
7676         * lib/fcntl.in.h: Likewise.
7677         * lib/fd-safer.c: Likewise.
7678         * lib/fflush.c: Likewise.
7679         * lib/file-has-acl.c: Likewise.
7680         * lib/file-set.c: Likewise.
7681         * lib/file-type.c: Likewise.
7682         * lib/file-type.h: Likewise.
7683         * lib/fileblocks.c: Likewise.
7684         * lib/filemode.c: Likewise.
7685         * lib/filemode.h: Likewise.
7686         * lib/filename.h: Likewise.
7687         * lib/filenamecat.c: Likewise.
7688         * lib/filenamecat.h: Likewise.
7689         * lib/findprog.c: Likewise.
7690         * lib/findprog.h: Likewise.
7691         * lib/float.in.h: Likewise.
7692         * lib/floor.c: Likewise.
7693         * lib/floorf.c: Likewise.
7694         * lib/floorl.c: Likewise.
7695         * lib/fopen-safer.c: Likewise.
7696         * lib/fopen.c: Likewise.
7697         * lib/fpending.c: Likewise.
7698         * lib/fpending.h: Likewise.
7699         * lib/fprintf.c: Likewise.
7700         * lib/fprintftime.h: Likewise.
7701         * lib/fpucw.h: Likewise.
7702         * lib/fpurge.c: Likewise.
7703         * lib/fpurge.h: Likewise.
7704         * lib/freadable.c: Likewise.
7705         * lib/freadable.h: Likewise.
7706         * lib/freadahead.c: Likewise.
7707         * lib/freadahead.h: Likewise.
7708         * lib/freading.c: Likewise.
7709         * lib/freading.h: Likewise.
7710         * lib/free.c: Likewise.
7711         * lib/freopen.c: Likewise.
7712         * lib/frexp.c: Likewise.
7713         * lib/frexpl.c: Likewise.
7714         * lib/fseek.c: Likewise.
7715         * lib/fseterr.c: Likewise.
7716         * lib/fseterr.h: Likewise.
7717         * lib/fstatat.c: Likewise.
7718         * lib/fstrcmp.c: Likewise.
7719         * lib/fstrcmp.h: Likewise.
7720         * lib/fsusage.c: Likewise.
7721         * lib/fsusage.h: Likewise.
7722         * lib/ftell.c: Likewise.
7723         * lib/ftello.c: Likewise.
7724         * lib/fts-cycle.c: Likewise.
7725         * lib/fts.c: Likewise.
7726         * lib/fts_.h: Likewise.
7727         * lib/full-read.c: Likewise.
7728         * lib/full-read.h: Likewise.
7729         * lib/full-write.c: Likewise.
7730         * lib/full-write.h: Likewise.
7731         * lib/fwritable.c: Likewise.
7732         * lib/fwritable.h: Likewise.
7733         * lib/fwriteerror.c: Likewise.
7734         * lib/fwriteerror.h: Likewise.
7735         * lib/fwriting.c: Likewise.
7736         * lib/fwriting.h: Likewise.
7737         * lib/gcd.c: Likewise.
7738         * lib/gcd.h: Likewise.
7739         * lib/getcwd.c: Likewise.
7740         * lib/getdate.h: Likewise.
7741         * lib/getdate.y: Likewise.
7742         * lib/getdomainname.c: Likewise.
7743         * lib/getdomainname.h: Likewise.
7744         * lib/getgroups.c: Likewise.
7745         * lib/gethostname.c: Likewise.
7746         * lib/gethrxtime.c: Likewise.
7747         * lib/gethrxtime.h: Likewise.
7748         * lib/getloadavg.c: Likewise.
7749         * lib/getndelim2.c: Likewise.
7750         * lib/getndelim2.h: Likewise.
7751         * lib/getnline.c: Likewise.
7752         * lib/getnline.h: Likewise.
7753         * lib/getopt.c: Likewise.
7754         * lib/getopt.in.h: Likewise.
7755         * lib/getopt1.c: Likewise.
7756         * lib/getopt_int.h: Likewise.
7757         * lib/getpagesize.h: Likewise.
7758         * lib/getsubopt.c: Likewise.
7759         * lib/gettime.c: Likewise.
7760         * lib/getugroups.c: Likewise.
7761         * lib/getugroups.h: Likewise.
7762         * lib/getusershell.c: Likewise.
7763         * lib/gl_anyavltree_list1.h: Likewise.
7764         * lib/gl_anyavltree_list2.h: Likewise.
7765         * lib/gl_anyhash_list1.h: Likewise.
7766         * lib/gl_anyhash_list2.h: Likewise.
7767         * lib/gl_anylinked_list1.h: Likewise.
7768         * lib/gl_anylinked_list2.h: Likewise.
7769         * lib/gl_anyrbtree_list1.h: Likewise.
7770         * lib/gl_anyrbtree_list2.h: Likewise.
7771         * lib/gl_anytree_list1.h: Likewise.
7772         * lib/gl_anytree_list2.h: Likewise.
7773         * lib/gl_anytree_oset.h: Likewise.
7774         * lib/gl_anytreehash_list1.h: Likewise.
7775         * lib/gl_anytreehash_list2.h: Likewise.
7776         * lib/gl_array_list.c: Likewise.
7777         * lib/gl_array_list.h: Likewise.
7778         * lib/gl_array_oset.c: Likewise.
7779         * lib/gl_array_oset.h: Likewise.
7780         * lib/gl_avltree_list.c: Likewise.
7781         * lib/gl_avltree_list.h: Likewise.
7782         * lib/gl_avltree_oset.c: Likewise.
7783         * lib/gl_avltree_oset.h: Likewise.
7784         * lib/gl_avltreehash_list.c: Likewise.
7785         * lib/gl_avltreehash_list.h: Likewise.
7786         * lib/gl_carray_list.c: Likewise.
7787         * lib/gl_carray_list.h: Likewise.
7788         * lib/gl_linked_list.c: Likewise.
7789         * lib/gl_linked_list.h: Likewise.
7790         * lib/gl_linkedhash_list.c: Likewise.
7791         * lib/gl_linkedhash_list.h: Likewise.
7792         * lib/gl_list.c: Likewise.
7793         * lib/gl_list.h: Likewise.
7794         * lib/gl_oset.c: Likewise.
7795         * lib/gl_oset.h: Likewise.
7796         * lib/gl_rbtree_list.c: Likewise.
7797         * lib/gl_rbtree_list.h: Likewise.
7798         * lib/gl_rbtree_oset.c: Likewise.
7799         * lib/gl_rbtree_oset.h: Likewise.
7800         * lib/gl_rbtreehash_list.c: Likewise.
7801         * lib/gl_rbtreehash_list.h: Likewise.
7802         * lib/gl_sublist.c: Likewise.
7803         * lib/gl_sublist.h: Likewise.
7804         * lib/group-member.c: Likewise.
7805         * lib/group-member.h: Likewise.
7806         * lib/hard-locale.c: Likewise.
7807         * lib/hard-locale.h: Likewise.
7808         * lib/hash-pjw.c: Likewise.
7809         * lib/hash-pjw.h: Likewise.
7810         * lib/hash-triple.c: Likewise.
7811         * lib/hash.c: Likewise.
7812         * lib/hash.h: Likewise.
7813         * lib/human.c: Likewise.
7814         * lib/human.h: Likewise.
7815         * lib/i-ring.c: Likewise.
7816         * lib/i-ring.h: Likewise.
7817         * lib/idcache.c: Likewise.
7818         * lib/imaxabs.c: Likewise.
7819         * lib/imaxdiv.c: Likewise.
7820         * lib/inet_pton.c: Likewise.
7821         * lib/inet_pton.h: Likewise.
7822         * lib/intprops.h: Likewise.
7823         * lib/inttostr.c: Likewise.
7824         * lib/inttostr.h: Likewise.
7825         * lib/inttypes.in.h: Likewise.
7826         * lib/isapipe.c: Likewise.
7827         * lib/isdir.c: Likewise.
7828         * lib/isnan.c: Likewise.
7829         * lib/isnan.h: Likewise.
7830         * lib/isnanf.c: Likewise.
7831         * lib/isnanf.h: Likewise.
7832         * lib/isnanl-nolibm.h: Likewise.
7833         * lib/isnanl.c: Likewise.
7834         * lib/isnanl.h: Likewise.
7835         * lib/javacomp.c: Likewise.
7836         * lib/javacomp.h: Likewise.
7837         * lib/javaexec.c: Likewise.
7838         * lib/javaexec.h: Likewise.
7839         * lib/javaversion.c: Likewise.
7840         * lib/javaversion.h: Likewise.
7841         * lib/javaversion.java: Likewise.
7842         * lib/lbrkprop.h: Likewise.
7843         * lib/lchmod.h: Likewise.
7844         * lib/lchown.c: Likewise.
7845         * lib/ldexpl.c: Likewise.
7846         * lib/linebreak.c: Likewise.
7847         * lib/linebreak.h: Likewise.
7848         * lib/linebuffer.c: Likewise.
7849         * lib/linebuffer.h: Likewise.
7850         * lib/locale.in.h: Likewise.
7851         * lib/logl.c: Likewise.
7852         * lib/long-options.c: Likewise.
7853         * lib/long-options.h: Likewise.
7854         * lib/lstat.c: Likewise.
7855         * lib/lstat.h: Likewise.
7856         * lib/math.in.h: Likewise.
7857         * lib/mbchar.c: Likewise.
7858         * lib/mbchar.h: Likewise.
7859         * lib/mbfile.h: Likewise.
7860         * lib/mbiter.h: Likewise.
7861         * lib/mbscasecmp.c: Likewise.
7862         * lib/mbscasestr.c: Likewise.
7863         * lib/mbschr.c: Likewise.
7864         * lib/mbscspn.c: Likewise.
7865         * lib/mbslen.c: Likewise.
7866         * lib/mbsncasecmp.c: Likewise.
7867         * lib/mbsnlen.c: Likewise.
7868         * lib/mbspbrk.c: Likewise.
7869         * lib/mbspcasecmp.c: Likewise.
7870         * lib/mbsrchr.c: Likewise.
7871         * lib/mbssep.c: Likewise.
7872         * lib/mbsspn.c: Likewise.
7873         * lib/mbsstr.c: Likewise.
7874         * lib/mbstok_r.c: Likewise.
7875         * lib/mbswidth.c: Likewise.
7876         * lib/mbswidth.h: Likewise.
7877         * lib/mbuiter.h: Likewise.
7878         * lib/memcasecmp.c: Likewise.
7879         * lib/memcasecmp.h: Likewise.
7880         * lib/memchr.c: Likewise.
7881         * lib/memcmp.c: Likewise.
7882         * lib/memcoll.c: Likewise.
7883         * lib/memcoll.h: Likewise.
7884         * lib/memcpy.c: Likewise.
7885         * lib/memrchr.c: Likewise.
7886         * lib/mkancesdirs.c: Likewise.
7887         * lib/mkdir-p.c: Likewise.
7888         * lib/mkdir-p.h: Likewise.
7889         * lib/mkdir.c: Likewise.
7890         * lib/mkdirat.c: Likewise.
7891         * lib/mkdtemp.c: Likewise.
7892         * lib/mkstemp-safer.c: Likewise.
7893         * lib/mkstemp.c: Likewise.
7894         * lib/modechange.c: Likewise.
7895         * lib/modechange.h: Likewise.
7896         * lib/mountlist.c: Likewise.
7897         * lib/mountlist.h: Likewise.
7898         * lib/mpsort.c: Likewise.
7899         * lib/nanosleep.c: Likewise.
7900         * lib/obstack.c: Likewise.
7901         * lib/obstack.h: Likewise.
7902         * lib/open-safer.c: Likewise.
7903         * lib/open.c: Likewise.
7904         * lib/openat-die.c: Likewise.
7905         * lib/openat-priv.h: Likewise.
7906         * lib/openat-proc.c: Likewise.
7907         * lib/openat.c: Likewise.
7908         * lib/openat.h: Likewise.
7909         * lib/pagealign_alloc.c: Likewise.
7910         * lib/pagealign_alloc.h: Likewise.
7911         * lib/physmem.c: Likewise.
7912         * lib/physmem.h: Likewise.
7913         * lib/pipe-safer.c: Likewise.
7914         * lib/pipe.c: Likewise.
7915         * lib/pipe.h: Likewise.
7916         * lib/posixtm.c: Likewise.
7917         * lib/posixtm.h: Likewise.
7918         * lib/posixver.c: Likewise.
7919         * lib/printf-frexp.c: Likewise.
7920         * lib/printf-frexp.h: Likewise.
7921         * lib/printf-frexpl.c: Likewise.
7922         * lib/printf-frexpl.h: Likewise.
7923         * lib/printf.c: Likewise.
7924         * lib/progname.c: Likewise.
7925         * lib/progname.h: Likewise.
7926         * lib/progreloc.c: Likewise.
7927         * lib/putenv.c: Likewise.
7928         * lib/quote.c: Likewise.
7929         * lib/quote.h: Likewise.
7930         * lib/quotearg.c: Likewise.
7931         * lib/quotearg.h: Likewise.
7932         * lib/raise.c: Likewise.
7933         * lib/readline.c: Likewise.
7934         * lib/readline.h: Likewise.
7935         * lib/readlink.c: Likewise.
7936         * lib/readtokens.c: Likewise.
7937         * lib/readtokens.h: Likewise.
7938         * lib/readtokens0.c: Likewise.
7939         * lib/readtokens0.h: Likewise.
7940         * lib/readutmp.c: Likewise.
7941         * lib/readutmp.h: Likewise.
7942         * lib/realloc.c: Likewise.
7943         * lib/relocwrapper.c: Likewise.
7944         * lib/rename-dest-slash.c: Likewise.
7945         * lib/rename.c: Likewise.
7946         * lib/rmdir.c: Likewise.
7947         * lib/rpmatch.c: Likewise.
7948         * lib/safe-read.c: Likewise.
7949         * lib/safe-read.h: Likewise.
7950         * lib/safe-write.c: Likewise.
7951         * lib/safe-write.h: Likewise.
7952         * lib/same-inode.h: Likewise.
7953         * lib/same.c: Likewise.
7954         * lib/same.h: Likewise.
7955         * lib/save-cwd.c: Likewise.
7956         * lib/save-cwd.h: Likewise.
7957         * lib/savedir.c: Likewise.
7958         * lib/savedir.h: Likewise.
7959         * lib/savewd.c: Likewise.
7960         * lib/savewd.h: Likewise.
7961         * lib/search.in.h: Likewise.
7962         * lib/setenv.c: Likewise.
7963         * lib/setenv.h: Likewise.
7964         * lib/settime.c: Likewise.
7965         * lib/sh-quote.c: Likewise.
7966         * lib/sh-quote.h: Likewise.
7967         * lib/sig2str.c: Likewise.
7968         * lib/sig2str.h: Likewise.
7969         * lib/signal.in.h: Likewise.
7970         * lib/signbitd.c: Likewise.
7971         * lib/signbitf.c: Likewise.
7972         * lib/signbitl.c: Likewise.
7973         * lib/sigprocmask.c: Likewise.
7974         * lib/sincosl.c: Likewise.
7975         * lib/sleep.c: Likewise.
7976         * lib/sprintf.c: Likewise.
7977         * lib/sqrtl.c: Likewise.
7978         * lib/stat-time.h: Likewise.
7979         * lib/stdio--.h: Likewise.
7980         * lib/stdio-safer.h: Likewise.
7981         * lib/stdlib--.h: Likewise.
7982         * lib/stdlib-safer.h: Likewise.
7983         * lib/stdlib.in.h: Likewise.
7984         * lib/stpcpy.c: Likewise.
7985         * lib/stpncpy.c: Likewise.
7986         * lib/strchrnul.c: Likewise.
7987         * lib/strcspn.c: Likewise.
7988         * lib/strerror.c: Likewise.
7989         * lib/strftime.c: Likewise.
7990         * lib/strftime.h: Likewise.
7991         * lib/striconveh.c: Likewise.
7992         * lib/striconveh.h: Likewise.
7993         * lib/striconveha.c: Likewise.
7994         * lib/striconveha.h: Likewise.
7995         * lib/stripslash.c: Likewise.
7996         * lib/strnlen1.c: Likewise.
7997         * lib/strnlen1.h: Likewise.
7998         * lib/strtod.c: Likewise.
7999         * lib/strtoimax.c: Likewise.
8000         * lib/strtok_r.c: Likewise.
8001         * lib/strtol.c: Likewise.
8002         * lib/strtoll.c: Likewise.
8003         * lib/strtoul.c: Likewise.
8004         * lib/strtoull.c: Likewise.
8005         * lib/sysexits.in.h: Likewise.
8006         * lib/tempname.c: Likewise.
8007         * lib/tempname.h: Likewise.
8008         * lib/timespec.h: Likewise.
8009         * lib/tls.c: Likewise.
8010         * lib/tls.h: Likewise.
8011         * lib/tmpdir.c: Likewise.
8012         * lib/tmpdir.h: Likewise.
8013         * lib/tmpfile-safer.c: Likewise.
8014         * lib/tmpfile.c: Likewise.
8015         * lib/trigl.c: Likewise.
8016         * lib/trigl.h: Likewise.
8017         * lib/trim.c: Likewise.
8018         * lib/trim.h: Likewise.
8019         * lib/trunc.c: Likewise.
8020         * lib/truncf.c: Likewise.
8021         * lib/truncl.c: Likewise.
8022         * lib/tsearch.c: Likewise.
8023         * lib/unicodeio.c: Likewise.
8024         * lib/unicodeio.h: Likewise.
8025         * lib/unistd--.h: Likewise.
8026         * lib/unistd-safer.h: Likewise.
8027         * lib/unistdio/ulc-fprintf.c: Likewise.
8028         * lib/unistdio/ulc-vfprintf.c: Likewise.
8029         * lib/unlinkdir.c: Likewise.
8030         * lib/unlinkdir.h: Likewise.
8031         * lib/unlocked-io.h: Likewise.
8032         * lib/unsetenv.c: Likewise.
8033         * lib/userspec.c: Likewise.
8034         * lib/utime.c: Likewise.
8035         * lib/utimecmp.c: Likewise.
8036         * lib/utimecmp.h: Likewise.
8037         * lib/utimens.c: Likewise.
8038         * lib/verify.h: Likewise.
8039         * lib/verror.c: Likewise.
8040         * lib/verror.h: Likewise.
8041         * lib/version-etc-fsf.c: Likewise.
8042         * lib/version-etc.c: Likewise.
8043         * lib/version-etc.h: Likewise.
8044         * lib/vfprintf.c: Likewise.
8045         * lib/vprintf.c: Likewise.
8046         * lib/vsprintf.c: Likewise.
8047         * lib/w32spawn.h: Likewise.
8048         * lib/wait-process.c: Likewise.
8049         * lib/wait-process.h: Likewise.
8050         * lib/wcwidth.c: Likewise.
8051         * lib/write-any-file.c: Likewise.
8052         * lib/xalloc-die.c: Likewise.
8053         * lib/xalloc.h: Likewise.
8054         * lib/xasprintf.c: Likewise.
8055         * lib/xgetcwd.c: Likewise.
8056         * lib/xgetcwd.h: Likewise.
8057         * lib/xgetdomainname.c: Likewise.
8058         * lib/xgetdomainname.h: Likewise.
8059         * lib/xgethostname.c: Likewise.
8060         * lib/xmalloc.c: Likewise.
8061         * lib/xmalloca.c: Likewise.
8062         * lib/xmalloca.h: Likewise.
8063         * lib/xmemcoll.c: Likewise.
8064         * lib/xnanosleep.c: Likewise.
8065         * lib/xreadlink.c: Likewise.
8066         * lib/xreadlink.h: Likewise.
8067         * lib/xsetenv.c: Likewise.
8068         * lib/xsetenv.h: Likewise.
8069         * lib/xstriconv.c: Likewise.
8070         * lib/xstriconv.h: Likewise.
8071         * lib/xstrndup.c: Likewise.
8072         * lib/xstrndup.h: Likewise.
8073         * lib/xstrtod.c: Likewise.
8074         * lib/xstrtod.h: Likewise.
8075         * lib/xstrtol-error.c: Likewise.
8076         * lib/xstrtol.c: Likewise.
8077         * lib/xstrtol.h: Likewise.
8078         * lib/xtime.h: Likewise.
8079         * lib/xvasprintf.c: Likewise.
8080         * lib/xvasprintf.h: Likewise.
8081         * lib/yesno.c: Likewise.
8082         * lib/yesno.h: Likewise.
8083         * posix-modules: Likewise.
8084         * tests/test-alloca-opt.c: Likewise.
8085         * tests/test-arcfour.c: Likewise.
8086         * tests/test-arctwo.c: Likewise.
8087         * tests/test-argmatch.c: Likewise.
8088         * tests/test-argp-2.sh: Likewise.
8089         * tests/test-argp.c: Likewise.
8090         * tests/test-arpa_inet.c: Likewise.
8091         * tests/test-array_list.c: Likewise.
8092         * tests/test-array_oset.c: Likewise.
8093         * tests/test-atexit.c: Likewise.
8094         * tests/test-avltree_list.c: Likewise.
8095         * tests/test-avltree_oset.c: Likewise.
8096         * tests/test-avltreehash_list.c: Likewise.
8097         * tests/test-base64.c: Likewise.
8098         * tests/test-binary-io.c: Likewise.
8099         * tests/test-byteswap.c: Likewise.
8100         * tests/test-c-ctype.c: Likewise.
8101         * tests/test-c-strcasecmp.c: Likewise.
8102         * tests/test-c-strcasestr.c: Likewise.
8103         * tests/test-c-strncasecmp.c: Likewise.
8104         * tests/test-c-strstr.c: Likewise.
8105         * tests/test-canonicalize-lgpl.c: Likewise.
8106         * tests/test-canonicalize.c: Likewise.
8107         * tests/test-carray_list.c: Likewise.
8108         * tests/test-ceilf.c: Likewise.
8109         * tests/test-ceill.c: Likewise.
8110         * tests/test-count-one-bits.c: Likewise.
8111         * tests/test-crc.c: Likewise.
8112         * tests/test-dirname.c: Likewise.
8113         * tests/test-fbufmode.c: Likewise.
8114         * tests/test-fcntl.c: Likewise.
8115         * tests/test-fflush.c: Likewise.
8116         * tests/test-floorf.c: Likewise.
8117         * tests/test-floorl.c: Likewise.
8118         * tests/test-fopen.c: Likewise.
8119         * tests/test-fprintf-posix.c: Likewise.
8120         * tests/test-fprintf-posix.h: Likewise.
8121         * tests/test-fpurge.c: Likewise.
8122         * tests/test-freadable.c: Likewise.
8123         * tests/test-freadahead.c: Likewise.
8124         * tests/test-freading.c: Likewise.
8125         * tests/test-freopen.c: Likewise.
8126         * tests/test-frexp.c: Likewise.
8127         * tests/test-frexpl.c: Likewise.
8128         * tests/test-fseek.c: Likewise.
8129         * tests/test-fseeko.c: Likewise.
8130         * tests/test-fseterr.c: Likewise.
8131         * tests/test-fstrcmp.c: Likewise.
8132         * tests/test-ftell.c: Likewise.
8133         * tests/test-ftello.c: Likewise.
8134         * tests/test-fwritable.c: Likewise.
8135         * tests/test-fwriting.c: Likewise.
8136         * tests/test-getaddrinfo.c: Likewise.
8137         * tests/test-getpass.c: Likewise.
8138         * tests/test-gettimeofday.c: Likewise.
8139         * tests/test-hmac-md5.c: Likewise.
8140         * tests/test-hmac-sha1.c: Likewise.
8141         * tests/test-iconv.c: Likewise.
8142         * tests/test-iconvme.c: Likewise.
8143         * tests/test-inttypes.c: Likewise.
8144         * tests/test-isnan.c: Likewise.
8145         * tests/test-isnanf.c: Likewise.
8146         * tests/test-isnanl-nolibm.c: Likewise.
8147         * tests/test-isnanl.c: Likewise.
8148         * tests/test-isnanl.h: Likewise.
8149         * tests/test-ldexpl.c: Likewise.
8150         * tests/test-linked_list.c: Likewise.
8151         * tests/test-linkedhash_list.c: Likewise.
8152         * tests/test-locale.c: Likewise.
8153         * tests/test-localename.c: Likewise.
8154         * tests/test-lock.c: Likewise.
8155         * tests/test-lseek.c: Likewise.
8156         * tests/test-malloca.c: Likewise.
8157         * tests/test-math.c: Likewise.
8158         * tests/test-mbscasecmp.c: Likewise.
8159         * tests/test-mbscasestr1.c: Likewise.
8160         * tests/test-mbscasestr2.c: Likewise.
8161         * tests/test-mbscasestr3.c: Likewise.
8162         * tests/test-mbscasestr4.c: Likewise.
8163         * tests/test-mbschr.c: Likewise.
8164         * tests/test-mbscspn.c: Likewise.
8165         * tests/test-mbsncasecmp.c: Likewise.
8166         * tests/test-mbspbrk.c: Likewise.
8167         * tests/test-mbspcasecmp.c: Likewise.
8168         * tests/test-mbsrchr.c: Likewise.
8169         * tests/test-mbsspn.c: Likewise.
8170         * tests/test-mbsstr1.c: Likewise.
8171         * tests/test-mbsstr2.c: Likewise.
8172         * tests/test-mbsstr3.c: Likewise.
8173         * tests/test-md5.c: Likewise.
8174         * tests/test-memmem.c: Likewise.
8175         * tests/test-netinet_in.c: Likewise.
8176         * tests/test-open.c: Likewise.
8177         * tests/test-printf-frexp.c: Likewise.
8178         * tests/test-printf-frexpl.c: Likewise.
8179         * tests/test-printf-posix.c: Likewise.
8180         * tests/test-printf-posix.h: Likewise.
8181         * tests/test-rbtree_list.c: Likewise.
8182         * tests/test-rbtree_oset.c: Likewise.
8183         * tests/test-rbtreehash_list.c: Likewise.
8184         * tests/test-read-file.c: Likewise.
8185         * tests/test-rijndael.c: Likewise.
8186         * tests/test-search.c: Likewise.
8187         * tests/test-signbit.c: Likewise.
8188         * tests/test-sleep.c: Likewise.
8189         * tests/test-snprintf-posix.c: Likewise.
8190         * tests/test-snprintf-posix.h: Likewise.
8191         * tests/test-snprintf.c: Likewise.
8192         * tests/test-sprintf-posix.c: Likewise.
8193         * tests/test-sprintf-posix.h: Likewise.
8194         * tests/test-stat-time.c: Likewise.
8195         * tests/test-stdbool.c: Likewise.
8196         * tests/test-stdint.c: Likewise.
8197         * tests/test-stdio.c: Likewise.
8198         * tests/test-stdlib.c: Likewise.
8199         * tests/test-stpncpy.c: Likewise.
8200         * tests/test-strcasestr.c: Likewise.
8201         * tests/test-striconv.c: Likewise.
8202         * tests/test-striconveh.c: Likewise.
8203         * tests/test-striconveha.c: Likewise.
8204         * tests/test-string.c: Likewise.
8205         * tests/test-sys_select.c: Likewise.
8206         * tests/test-sys_socket.c: Likewise.
8207         * tests/test-sys_stat.c: Likewise.
8208         * tests/test-sys_time.c: Likewise.
8209         * tests/test-sysexits.c: Likewise.
8210         * tests/test-time.c: Likewise.
8211         * tests/test-tls.c: Likewise.
8212         * tests/test-trunc.c: Likewise.
8213         * tests/test-truncf.c: Likewise.
8214         * tests/test-truncl.c: Likewise.
8215         * tests/test-unistd.c: Likewise.
8216         * tests/test-vasnprintf-posix.c: Likewise.
8217         * tests/test-vasnprintf-posix2.c: Likewise.
8218         * tests/test-vasnprintf.c: Likewise.
8219         * tests/test-vasprintf-posix.c: Likewise.
8220         * tests/test-vasprintf.c: Likewise.
8221         * tests/test-verify.c: Likewise.
8222         * tests/test-vfprintf-posix.c: Likewise.
8223         * tests/test-vprintf-posix.c: Likewise.
8224         * tests/test-vsnprintf-posix.c: Likewise.
8225         * tests/test-vsnprintf.c: Likewise.
8226         * tests/test-vsprintf-posix.c: Likewise.
8227         * tests/test-wchar.c: Likewise.
8228         * tests/test-wctype.c: Likewise.
8229         * tests/test-wcwidth.c: Likewise.
8230         * tests/test-xstrtol.c: Likewise.
8231         * tests/test-xvasprintf.c: Likewise.
8232         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
8233         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
8234         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
8235         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
8236         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
8237         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
8238         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
8239         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
8240         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
8241         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
8242         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
8243         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
8244         * tests/uniname/test-uninames.c: Likewise.
8245         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
8246         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
8247         * tests/unistdio/test-u16-printf1.h: Likewise.
8248         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
8249         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
8250         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
8251         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
8252         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
8253         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
8254         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
8255         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
8256         * tests/unistdio/test-u32-printf1.h: Likewise.
8257         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
8258         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
8259         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
8260         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
8261         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
8262         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
8263         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
8264         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
8265         * tests/unistdio/test-u8-printf1.h: Likewise.
8266         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
8267         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
8268         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
8269         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
8270         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
8271         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
8272         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
8273         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
8274         * tests/unistdio/test-ulc-printf1.h: Likewise.
8275         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
8276         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
8277         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
8278         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
8279         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
8280         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
8281         * tests/uniwidth/test-u16-strwidth.c: Likewise.
8282         * tests/uniwidth/test-u16-width.c: Likewise.
8283         * tests/uniwidth/test-u32-strwidth.c: Likewise.
8284         * tests/uniwidth/test-u32-width.c: Likewise.
8285         * tests/uniwidth/test-u8-strwidth.c: Likewise.
8286         * tests/uniwidth/test-u8-width.c: Likewise.
8287         * tests/uniwidth/test-uc_width.c: Likewise.
8288         * config/srclist-update: Likewise.
8289         (fixlicense): Update to GPLv3+.
8290
8291         Change copyright notice from LGPLv2.1+ to LGPLv3+.
8292         * tests/test-tsearch.c: Change copyright notice.
8293
8294         Change copyright notice from LGPLv2.0+ to LGPLv3+.
8295         * lib/c-strcaseeq.h: Change copyright notice.
8296         * lib/streq.h: Likewise.
8297         * lib/uniconv.h: Likewise.
8298         * lib/uniconv/u-conv-from-enc.h: Likewise.
8299         * lib/uniconv/u-conv-to-enc.h: Likewise.
8300         * lib/uniconv/u-strconv-from-enc.h: Likewise.
8301         * lib/uniconv/u-strconv-to-enc.h: Likewise.
8302         * lib/uniconv/u16-conv-from-enc.c: Likewise.
8303         * lib/uniconv/u16-conv-to-enc.c: Likewise.
8304         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
8305         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
8306         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
8307         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
8308         * lib/uniconv/u32-conv-from-enc.c: Likewise.
8309         * lib/uniconv/u32-conv-to-enc.c: Likewise.
8310         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
8311         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
8312         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
8313         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
8314         * lib/uniconv/u8-conv-from-enc.c: Likewise.
8315         * lib/uniconv/u8-conv-to-enc.c: Likewise.
8316         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
8317         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
8318         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
8319         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
8320         * lib/uniname.h: Likewise.
8321         * lib/uniname/uniname.c: Likewise.
8322         * lib/unistdio.h: Likewise.
8323         * lib/unistdio/u-asnprintf.h: Likewise.
8324         * lib/unistdio/u-asprintf.h: Likewise.
8325         * lib/unistdio/u-printf-args.c: Likewise.
8326         * lib/unistdio/u-printf-args.h: Likewise.
8327         * lib/unistdio/u-printf-parse.h: Likewise.
8328         * lib/unistdio/u-snprintf.h: Likewise.
8329         * lib/unistdio/u-sprintf.h: Likewise.
8330         * lib/unistdio/u-vasprintf.h: Likewise.
8331         * lib/unistdio/u-vsnprintf.h: Likewise.
8332         * lib/unistdio/u-vsprintf.h: Likewise.
8333         * lib/unistdio/u16-asnprintf.c: Likewise.
8334         * lib/unistdio/u16-asprintf.c: Likewise.
8335         * lib/unistdio/u16-printf-parse.c: Likewise.
8336         * lib/unistdio/u16-snprintf.c: Likewise.
8337         * lib/unistdio/u16-sprintf.c: Likewise.
8338         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
8339         * lib/unistdio/u16-u16-asprintf.c: Likewise.
8340         * lib/unistdio/u16-u16-snprintf.c: Likewise.
8341         * lib/unistdio/u16-u16-sprintf.c: Likewise.
8342         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
8343         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
8344         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
8345         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
8346         * lib/unistdio/u16-vasnprintf.c: Likewise.
8347         * lib/unistdio/u16-vasprintf.c: Likewise.
8348         * lib/unistdio/u16-vsnprintf.c: Likewise.
8349         * lib/unistdio/u16-vsprintf.c: Likewise.
8350         * lib/unistdio/u32-asnprintf.c: Likewise.
8351         * lib/unistdio/u32-asprintf.c: Likewise.
8352         * lib/unistdio/u32-printf-parse.c: Likewise.
8353         * lib/unistdio/u32-snprintf.c: Likewise.
8354         * lib/unistdio/u32-sprintf.c: Likewise.
8355         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
8356         * lib/unistdio/u32-u32-asprintf.c: Likewise.
8357         * lib/unistdio/u32-u32-snprintf.c: Likewise.
8358         * lib/unistdio/u32-u32-sprintf.c: Likewise.
8359         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
8360         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
8361         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
8362         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
8363         * lib/unistdio/u32-vasnprintf.c: Likewise.
8364         * lib/unistdio/u32-vasprintf.c: Likewise.
8365         * lib/unistdio/u32-vsnprintf.c: Likewise.
8366         * lib/unistdio/u32-vsprintf.c: Likewise.
8367         * lib/unistdio/u8-asnprintf.c: Likewise.
8368         * lib/unistdio/u8-asprintf.c: Likewise.
8369         * lib/unistdio/u8-printf-parse.c: Likewise.
8370         * lib/unistdio/u8-snprintf.c: Likewise.
8371         * lib/unistdio/u8-sprintf.c: Likewise.
8372         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
8373         * lib/unistdio/u8-u8-asprintf.c: Likewise.
8374         * lib/unistdio/u8-u8-snprintf.c: Likewise.
8375         * lib/unistdio/u8-u8-sprintf.c: Likewise.
8376         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
8377         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
8378         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
8379         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
8380         * lib/unistdio/u8-vasnprintf.c: Likewise.
8381         * lib/unistdio/u8-vasprintf.c: Likewise.
8382         * lib/unistdio/u8-vsnprintf.c: Likewise.
8383         * lib/unistdio/u8-vsprintf.c: Likewise.
8384         * lib/unistdio/ulc-asnprintf.c: Likewise.
8385         * lib/unistdio/ulc-asprintf.c: Likewise.
8386         * lib/unistdio/ulc-printf-parse.c: Likewise.
8387         * lib/unistdio/ulc-snprintf.c: Likewise.
8388         * lib/unistdio/ulc-sprintf.c: Likewise.
8389         * lib/unistdio/ulc-vasnprintf.c: Likewise.
8390         * lib/unistdio/ulc-vasprintf.c: Likewise.
8391         * lib/unistdio/ulc-vsnprintf.c: Likewise.
8392         * lib/unistdio/ulc-vsprintf.c: Likewise.
8393         * lib/unistr.h: Likewise.
8394         * lib/unistr/u-cpy-alloc.h: Likewise.
8395         * lib/unistr/u-cpy.h: Likewise.
8396         * lib/unistr/u-endswith.h: Likewise.
8397         * lib/unistr/u-move.h: Likewise.
8398         * lib/unistr/u-set.h: Likewise.
8399         * lib/unistr/u-startswith.h: Likewise.
8400         * lib/unistr/u-stpcpy.h: Likewise.
8401         * lib/unistr/u-stpncpy.h: Likewise.
8402         * lib/unistr/u-strcat.h: Likewise.
8403         * lib/unistr/u-strcpy.h: Likewise.
8404         * lib/unistr/u-strcspn.h: Likewise.
8405         * lib/unistr/u-strdup.h: Likewise.
8406         * lib/unistr/u-strlen.h: Likewise.
8407         * lib/unistr/u-strncat.h: Likewise.
8408         * lib/unistr/u-strncpy.h: Likewise.
8409         * lib/unistr/u-strnlen.h: Likewise.
8410         * lib/unistr/u-strpbrk.h: Likewise.
8411         * lib/unistr/u-strspn.h: Likewise.
8412         * lib/unistr/u-strstr.h: Likewise.
8413         * lib/unistr/u-strtok.h: Likewise.
8414         * lib/unistr/u16-check.c: Likewise.
8415         * lib/unistr/u16-chr.c: Likewise.
8416         * lib/unistr/u16-cmp.c: Likewise.
8417         * lib/unistr/u16-cpy-alloc.c: Likewise.
8418         * lib/unistr/u16-cpy.c: Likewise.
8419         * lib/unistr/u16-endswith.c: Likewise.
8420         * lib/unistr/u16-mblen.c: Likewise.
8421         * lib/unistr/u16-mbsnlen.c: Likewise.
8422         * lib/unistr/u16-mbtouc-aux.c: Likewise.
8423         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
8424         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
8425         * lib/unistr/u16-mbtouc.c: Likewise.
8426         * lib/unistr/u16-mbtoucr.c: Likewise.
8427         * lib/unistr/u16-move.c: Likewise.
8428         * lib/unistr/u16-next.c: Likewise.
8429         * lib/unistr/u16-prev.c: Likewise.
8430         * lib/unistr/u16-set.c: Likewise.
8431         * lib/unistr/u16-startswith.c: Likewise.
8432         * lib/unistr/u16-stpcpy.c: Likewise.
8433         * lib/unistr/u16-stpncpy.c: Likewise.
8434         * lib/unistr/u16-strcat.c: Likewise.
8435         * lib/unistr/u16-strchr.c: Likewise.
8436         * lib/unistr/u16-strcmp.c: Likewise.
8437         * lib/unistr/u16-strcpy.c: Likewise.
8438         * lib/unistr/u16-strcspn.c: Likewise.
8439         * lib/unistr/u16-strdup.c: Likewise.
8440         * lib/unistr/u16-strlen.c: Likewise.
8441         * lib/unistr/u16-strmblen.c: Likewise.
8442         * lib/unistr/u16-strmbtouc.c: Likewise.
8443         * lib/unistr/u16-strncat.c: Likewise.
8444         * lib/unistr/u16-strncmp.c: Likewise.
8445         * lib/unistr/u16-strncpy.c: Likewise.
8446         * lib/unistr/u16-strnlen.c: Likewise.
8447         * lib/unistr/u16-strpbrk.c: Likewise.
8448         * lib/unistr/u16-strrchr.c: Likewise.
8449         * lib/unistr/u16-strspn.c: Likewise.
8450         * lib/unistr/u16-strstr.c: Likewise.
8451         * lib/unistr/u16-strtok.c: Likewise.
8452         * lib/unistr/u16-to-u32.c: Likewise.
8453         * lib/unistr/u16-to-u8.c: Likewise.
8454         * lib/unistr/u16-uctomb-aux.c: Likewise.
8455         * lib/unistr/u16-uctomb.c: Likewise.
8456         * lib/unistr/u32-check.c: Likewise.
8457         * lib/unistr/u32-chr.c: Likewise.
8458         * lib/unistr/u32-cmp.c: Likewise.
8459         * lib/unistr/u32-cpy-alloc.c: Likewise.
8460         * lib/unistr/u32-cpy.c: Likewise.
8461         * lib/unistr/u32-endswith.c: Likewise.
8462         * lib/unistr/u32-mblen.c: Likewise.
8463         * lib/unistr/u32-mbsnlen.c: Likewise.
8464         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
8465         * lib/unistr/u32-mbtouc.c: Likewise.
8466         * lib/unistr/u32-mbtoucr.c: Likewise.
8467         * lib/unistr/u32-move.c: Likewise.
8468         * lib/unistr/u32-next.c: Likewise.
8469         * lib/unistr/u32-prev.c: Likewise.
8470         * lib/unistr/u32-set.c: Likewise.
8471         * lib/unistr/u32-startswith.c: Likewise.
8472         * lib/unistr/u32-stpcpy.c: Likewise.
8473         * lib/unistr/u32-stpncpy.c: Likewise.
8474         * lib/unistr/u32-strcat.c: Likewise.
8475         * lib/unistr/u32-strchr.c: Likewise.
8476         * lib/unistr/u32-strcmp.c: Likewise.
8477         * lib/unistr/u32-strcpy.c: Likewise.
8478         * lib/unistr/u32-strcspn.c: Likewise.
8479         * lib/unistr/u32-strdup.c: Likewise.
8480         * lib/unistr/u32-strlen.c: Likewise.
8481         * lib/unistr/u32-strmblen.c: Likewise.
8482         * lib/unistr/u32-strmbtouc.c: Likewise.
8483         * lib/unistr/u32-strncat.c: Likewise.
8484         * lib/unistr/u32-strncmp.c: Likewise.
8485         * lib/unistr/u32-strncpy.c: Likewise.
8486         * lib/unistr/u32-strnlen.c: Likewise.
8487         * lib/unistr/u32-strpbrk.c: Likewise.
8488         * lib/unistr/u32-strrchr.c: Likewise.
8489         * lib/unistr/u32-strspn.c: Likewise.
8490         * lib/unistr/u32-strstr.c: Likewise.
8491         * lib/unistr/u32-strtok.c: Likewise.
8492         * lib/unistr/u32-to-u16.c: Likewise.
8493         * lib/unistr/u32-to-u8.c: Likewise.
8494         * lib/unistr/u32-uctomb.c: Likewise.
8495         * lib/unistr/u8-check.c: Likewise.
8496         * lib/unistr/u8-chr.c: Likewise.
8497         * lib/unistr/u8-cmp.c: Likewise.
8498         * lib/unistr/u8-cpy-alloc.c: Likewise.
8499         * lib/unistr/u8-cpy.c: Likewise.
8500         * lib/unistr/u8-endswith.c: Likewise.
8501         * lib/unistr/u8-mblen.c: Likewise.
8502         * lib/unistr/u8-mbsnlen.c: Likewise.
8503         * lib/unistr/u8-mbtouc-aux.c: Likewise.
8504         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
8505         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
8506         * lib/unistr/u8-mbtouc.c: Likewise.
8507         * lib/unistr/u8-mbtoucr.c: Likewise.
8508         * lib/unistr/u8-move.c: Likewise.
8509         * lib/unistr/u8-next.c: Likewise.
8510         * lib/unistr/u8-prev.c: Likewise.
8511         * lib/unistr/u8-set.c: Likewise.
8512         * lib/unistr/u8-startswith.c: Likewise.
8513         * lib/unistr/u8-stpcpy.c: Likewise.
8514         * lib/unistr/u8-stpncpy.c: Likewise.
8515         * lib/unistr/u8-strcat.c: Likewise.
8516         * lib/unistr/u8-strchr.c: Likewise.
8517         * lib/unistr/u8-strcmp.c: Likewise.
8518         * lib/unistr/u8-strcpy.c: Likewise.
8519         * lib/unistr/u8-strcspn.c: Likewise.
8520         * lib/unistr/u8-strdup.c: Likewise.
8521         * lib/unistr/u8-strlen.c: Likewise.
8522         * lib/unistr/u8-strmblen.c: Likewise.
8523         * lib/unistr/u8-strmbtouc.c: Likewise.
8524         * lib/unistr/u8-strncat.c: Likewise.
8525         * lib/unistr/u8-strncmp.c: Likewise.
8526         * lib/unistr/u8-strncpy.c: Likewise.
8527         * lib/unistr/u8-strnlen.c: Likewise.
8528         * lib/unistr/u8-strpbrk.c: Likewise.
8529         * lib/unistr/u8-strrchr.c: Likewise.
8530         * lib/unistr/u8-strspn.c: Likewise.
8531         * lib/unistr/u8-strstr.c: Likewise.
8532         * lib/unistr/u8-strtok.c: Likewise.
8533         * lib/unistr/u8-to-u16.c: Likewise.
8534         * lib/unistr/u8-to-u32.c: Likewise.
8535         * lib/unistr/u8-uctomb-aux.c: Likewise.
8536         * lib/unistr/u8-uctomb.c: Likewise.
8537         * lib/unitypes.h: Likewise.
8538         * lib/uniwidth.h: Likewise.
8539         * lib/uniwidth/cjk.h: Likewise.
8540         * lib/uniwidth/u16-strwidth.c: Likewise.
8541         * lib/uniwidth/u16-width.c: Likewise.
8542         * lib/uniwidth/u32-strwidth.c: Likewise.
8543         * lib/uniwidth/u32-width.c: Likewise.
8544         * lib/uniwidth/u8-strwidth.c: Likewise.
8545         * lib/uniwidth/u8-width.c: Likewise.
8546         * lib/uniwidth/width.c: Likewise.
8547
8548 2007-10-07  Bruno Haible  <bruno@clisp.org>
8549
8550         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
8551         The file is still under LGPL (see modules/inttypes).
8552
8553 2007-10-06  Bruno Haible  <bruno@clisp.org>
8554
8555         * modules/trunc (Dependencies): Add 'extensions'.
8556         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
8557         Reported by Ben Pfaff <blp@gnu.org>.
8558
8559 2007-10-06  Bruno Haible  <bruno@clisp.org>
8560
8561         * modules/freopen-tests: New file.
8562         * tests/test-freopen.c: New file.
8563
8564         * modules/fopen-tests: New file.
8565         * tests/test-fopen.c: New file.
8566
8567         * modules/fopen: New file.
8568         * lib/fopen.c: New file.
8569         * m4/fopen.m4: New file.
8570         * modules/freopen: New file.
8571         * lib/freopen.c: New file.
8572         * m4/freopen.m4: New file.
8573         * lib/stdio.in.h (fopen, freopen): New declarations.
8574         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
8575         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
8576         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
8577         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
8578         * doc/functions/fopen.texi: Mention the 'fopen' module.
8579         * doc/functions/freopen.texi: Mention the 'freopen' module.
8580
8581 2007-10-06  Bruno Haible  <bruno@clisp.org>
8582
8583         * modules/open-tests: New file.
8584         * tests/test-open.c: New file.
8585
8586         * modules/open: New file.
8587         * lib/open.c: New file.
8588         * m4/open.m4: New file.
8589         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
8590         lib/open.c does.
8591         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
8592         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
8593         macros.
8594         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
8595         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
8596         REPLACE_OPEN.
8597         * doc/functions/open.texi: Mention the 'open' module.
8598
8599 2007-10-04  Bruno Haible  <bruno@clisp.org>
8600
8601         * modules/ceill-tests: New file.
8602         * tests/test-ceill.c: New file.
8603
8604         * modules/ceill: New file.
8605         * lib/ceill.c: Replace entire file.
8606         * m4/ceill.m4: New file.
8607         * lib/math.in.h (ceill): Replace declaration.
8608         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
8609         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
8610         * doc/functions/ceill.texi: Mention the 'ceill' module.
8611         * modules/mathl (Files): Remove lib/ceill.c.
8612         (Depends-on): Add ceill.
8613
8614 2007-10-04  Bruno Haible  <bruno@clisp.org>
8615
8616         * modules/ceilf-tests: New file.
8617         * tests/test-ceilf.c: New file.
8618
8619         * modules/ceilf: New file.
8620         * lib/ceil.c: New file.
8621         * lib/ceilf.c: New file.
8622         * m4/ceilf.m4: New file.
8623         * lib/math.in.h (ceilf): New declaration.
8624         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
8625         HAVE_DECL_CEILF.
8626         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
8627         HAVE_DECL_CEILF.
8628         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
8629
8630 2007-10-04  Bruno Haible  <bruno@clisp.org>
8631
8632         * modules/floorl-tests: New file.
8633         * tests/test-floorl.c: New file.
8634
8635         * modules/floorl: New file.
8636         * lib/floorl.c: Replace entire file.
8637         * m4/floorl.m4: New file.
8638         * lib/math.in.h (floorl): Replace declaration.
8639         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
8640         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
8641         * doc/functions/floorl.texi: Mention the 'floorl' module.
8642         * modules/mathl (Files): Remove lib/floorl.c.
8643         (Depends-on): Add floorl.
8644
8645 2007-10-04  Bruno Haible  <bruno@clisp.org>
8646
8647         * modules/floorf-tests: New file.
8648         * tests/test-floorf.c: New file.
8649
8650         * modules/floorf: New file.
8651         * lib/floor.c: New file.
8652         * lib/floorf.c: New file.
8653         * m4/floorf.m4: New file.
8654         * lib/math.in.h (floorf): New declaration.
8655         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
8656         HAVE_DECL_FLOORF.
8657         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
8658         HAVE_DECL_FLOORF.
8659         * doc/functions/floorf.texi: Mention the 'floorf' module.
8660
8661 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
8662             Bruno Haible  <bruno@clisp.org>
8663
8664         Advertise for the Git server instead of the CVS server.
8665         * doc/gnulib-intro.texi (Steady Development): Mention the Git
8666         repository instead of the CVS one.
8667         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
8668         about all VCS systems generically.
8669         * doc/gnulib.texi (Introduction): Capitalize `Git'.
8670
8671 2007-10-04  Bruno Haible  <bruno@clisp.org>
8672
8673         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
8674         means.
8675         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
8676
8677 2007-10-04  Bruno Haible  <bruno@clisp.org>
8678
8679         * modules/truncl-tests: New file.
8680         * tests/test-truncl.c: New file.
8681
8682         * modules/truncl: New file.
8683         * lib/truncl.c: New file.
8684         * m4/truncl.m4: New file.
8685         * lib/math.in.h (truncl): New declaration.
8686         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
8687         HAVE_DECL_TRUNCL.
8688         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
8689         HAVE_DECL_TRUNCL.
8690         * doc/functions/truncl.texi: Mention the 'truncl' module.
8691
8692 2007-10-04  Bruno Haible  <bruno@clisp.org>
8693
8694         * modules/truncf-tests: New file.
8695         * tests/test-truncf.c: New file.
8696
8697         * modules/truncf: New file.
8698         * lib/trunc.c: Make paramerizable through USE_* macros.
8699         * lib/truncf.c: New file.
8700         * m4/truncf.m4: New file.
8701         * lib/math.in.h (truncf): New declaration.
8702         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
8703         HAVE_DECL_TRUNCF.
8704         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
8705         HAVE_DECL_TRUNCF.
8706         * doc/functions/truncf.texi: Mention the 'truncf' module.
8707
8708 2007-10-03  Bruno Haible  <bruno@clisp.org>
8709
8710         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
8711         augmentation also for tests modules.
8712         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
8713         * modules/atexit-tests (Makefile.am): Likewise.
8714         * modules/binary-io-tests (Makefile.am): Likewise.
8715         * modules/c-strcase-tests (Makefile.am): Likewise.
8716         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
8717         * modules/canonicalize-tests (Makefile.am): Likewise.
8718         * modules/closein-tests (Makefile.am): Likewise.
8719         * modules/fprintf-posix-tests (Makefile.am): Likewise.
8720         * modules/freadahead-tests (Makefile.am): Likewise.
8721         * modules/fseek-tests (Makefile.am): Likewise.
8722         * modules/fseeko-tests (Makefile.am): Likewise.
8723         * modules/ftell-tests (Makefile.am): Likewise.
8724         * modules/ftello-tests (Makefile.am): Likewise.
8725         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
8726         * modules/isnanl-tests (Makefile.am): Likewise.
8727         * modules/lseek-tests (Makefile.am): Likewise.
8728         * modules/mbscasecmp-tests (Makefile.am): Likewise.
8729         * modules/mbscasestr-tests (Makefile.am): Likewise.
8730         * modules/mbschr-tests (Makefile.am): Likewise.
8731         * modules/mbscspn-tests (Makefile.am): Likewise.
8732         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
8733         * modules/mbspbrk-tests (Makefile.am): Likewise.
8734         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
8735         * modules/mbsrchr-tests (Makefile.am): Likewise.
8736         * modules/mbsspn-tests (Makefile.am): Likewise.
8737         * modules/mbsstr-tests (Makefile.am): Likewise.
8738         * modules/printf-posix-tests (Makefile.am): Likewise.
8739         * modules/snprintf-posix-tests (Makefile.am): Likewise.
8740         * modules/sprintf-posix-tests (Makefile.am): Likewise.
8741         * modules/tsearch-tests (Makefile.am): Likewise.
8742         * modules/uniname/uniname-tests (Makefile.am): Likewise.
8743         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
8744         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
8745         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
8746         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
8747         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
8748         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
8749         * modules/vprintf-posix-tests (Makefile.am): Likewise.
8750         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
8751         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
8752         * modules/xstrtoimax-tests (Makefile.am): Likewise.
8753         * modules/xstrtol-tests (Makefile.am): Likewise.
8754         * modules/xstrtoumax-tests (Makefile.am): Likewise.
8755         * modules/yesno-tests (Makefile.am): Likewise.
8756
8757 2007-10-03  Bruno Haible  <bruno@clisp.org>
8758
8759         * modules/trunc-tests: New file.
8760         * tests/test-trunc.c: New file.
8761
8762         * modules/trunc: New file.
8763         * lib/trunc.c: New file.
8764         * m4/trunc.m4: New file.
8765         * lib/math.in.h (trunc): New declaration.
8766         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
8767         HAVE_DECL_TRUNC.
8768         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
8769         HAVE_DECL_TRUNC.
8770         * doc/functions/trunc.texi: Mention the 'trunc' module.
8771
8772 2007-10-03  Bruno Haible  <bruno@clisp.org>
8773
8774         * tests/test-fpending.c: New file, mostly copied
8775         from coreutils/lib/t-fpending.c.
8776         * modules/fpending-tests: New file.
8777
8778 2007-10-03  Bruno Haible  <bruno@clisp.org>
8779
8780         Port the stdio extensions to QNX (untested).
8781         * lib/fseterr.c (fseterr): Add support for QNX.
8782         * lib/fbufmode.c (fbufmode): Likewise.
8783         * lib/freadable.c (freadable): Likewise.
8784         * lib/fwritable.c (fwritable): Likewise.
8785         * lib/freading.c (freading): Likewise.
8786         * lib/fwriting.c (fwriting): Likewise.
8787         * lib/freadahead.c (freadahed): Likewise.
8788         * lib/fpurge.c (fpurge): Likewise.
8789         * lib/fseeko.c (rpl_fseeko): Likewise.
8790
8791 2007-10-03  Bruno Haible  <bruno@clisp.org>
8792             Jim Meyering  <jim@meyering.net>
8793             Eric Blake  <ebb9@byu.net>
8794
8795         * doc/relocatable.texi: Use @command instead of @program.
8796
8797 2007-10-02  Jim Meyering  <jim@meyering.net>
8798
8799         Perform one more "_.h" -> ".in.h" substitution.
8800         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
8801         instead of unistd_.h here, too.
8802
8803 2007-10-01  Bruno Haible  <bruno@clisp.org>
8804
8805         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
8806         Needed for the alloca-opt module.
8807
8808 2007-09-30  Bruno Haible  <bruno@clisp.org>
8809
8810         * lib/alloca.in.h: Renamed from lib/alloca_.h.
8811         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
8812         alloca_.h.
8813         * lib/argz.in.h: Renamed from lib/argz_.h.
8814         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
8815         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
8816         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
8817         byteswap_.h.
8818         * lib/dirent.in.h: Renamed from lib/dirent_.h.
8819         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
8820         dirent_.h.
8821         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
8822         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
8823         fcntl_.h.
8824         * lib/float.in.h: Renamed from lib/float_.h.
8825         * modules/float (Files, Makefile.am): Use float.in.h instead of
8826         float_.h.
8827         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
8828         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
8829         fnmatch_.h.
8830         * lib/getopt.in.h: Renamed from lib/getopt_.h.
8831         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
8832         getopt_.h.
8833         * lib/glob.in.h: Renamed from lib/glob_.h.
8834         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
8835         * lib/iconv.in.h: Renamed from lib/iconv_.h.
8836         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
8837         iconv_.h.
8838         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
8839         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
8840         inttypes_.h.
8841         * lib/locale.in.h: Renamed from lib/locale_.h.
8842         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
8843         locale_.h.
8844         * lib/math.in.h: Renamed from lib/math_.h.
8845         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
8846         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
8847         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
8848         of netinet_in_.h. Add dependency.
8849         * lib/poll.in.h: Renamed from lib/poll_.h.
8850         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
8851         * lib/search.in.h: Renamed from lib/search_.h.
8852         * modules/search (Files, Makefile.am): Use search.in.h instead of
8853         search_.h.
8854         * lib/signal.in.h: Renamed from lib/signal_.h.
8855         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
8856         _signal.h.
8857         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
8858         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
8859         stdbool_.h.
8860         * lib/stdint.in.h: Renamed from lib/stdint_.h.
8861         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
8862         stdint_.h.
8863         * lib/stdio.in.h: Renamed from lib/stdio_.h.
8864         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
8865         stdio_.h.
8866         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
8867         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
8868         stdlib_.h.
8869         * lib/string.in.h: Renamed from lib/string_.h.
8870         * modules/string (Files, Makefile.am): Use string.in.h instead of
8871         string_.h.
8872         * doc/gnulib-tool.texi (Initial import): Update.
8873         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
8874         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
8875         of sys_select_.h. Add dependency.
8876         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
8877         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
8878         of sys_socket_.h.
8879         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
8880         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
8881         sys_stat_.h.
8882         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
8883         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
8884         sys_time_.h.
8885         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
8886         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
8887         sysexits_.h.
8888         * lib/time.in.h: Renamed from lib/time_.h.
8889         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
8890         * lib/unistd.in.h: Renamed from lib/unistd_.h.
8891         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
8892         unistd_.h.
8893         * lib/wchar.in.h: Renamed from lib/wchar_.h.
8894         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
8895         wchar_.h.
8896         * lib/wctype.in.h: Renamed from lib/wctype_.h.
8897         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
8898         wctype_.h.
8899         * build-aux/bootstrap (slurp): Update.
8900         * lib/.cppi-disable: Update.
8901
8902 2007-09-30  Bruno Haible  <bruno@clisp.org>
8903
8904         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
8905         Needed on BeOS.
8906
8907 2007-09-30  Bruno Haible  <bruno@clisp.org>
8908
8909         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
8910
8911 2007-09-29  Bruno Haible  <bruno@clisp.org>
8912
8913         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
8914
8915 2007-09-29  Bruno Haible  <bruno@clisp.org>
8916
8917         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
8918         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
8919         * build-aux/install-reloc: Compile also areadlink.c.
8920         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
8921
8922 2007-09-29  Bruno Haible  <bruno@clisp.org>
8923
8924         * gnulib-tool (func_emit_initmacro_done): Indentation.
8925
8926 2007-09-29  Bruno Haible  <bruno@clisp.org>
8927
8928         * README: Add CVS checkout update instructions.
8929         Info from Bob Proulx <bob@proulx.com>.
8930
8931 2007-09-28  Eric Blake  <ebb9@byu.net>
8932
8933         Provide move-if-change.
8934         * build-aux/move-if-change: New file, based on best practice
8935         rather than any canonical upstream location.
8936
8937 2007-09-28  Jim Meyering  <jim@meyering.net>
8938
8939         Fix canonicalize loop-detection corner case.
8940         Do not attempt to stat the symlink values stored via seen_triple.
8941         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
8942         on linux-2.6.18, (but not 2.6.22).
8943         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
8944         triple_compare.  The former compares dev,ino,filename, while the latter
8945         would actually stat dirname(filename) when dev and ino were equal.
8946         * lib/hash-triple.c: Install <string.h>.
8947         (STREQ): Define.
8948         (triple_compare_ino_str): New function.
8949         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
8950
8951 2007-09-28  Eric Blake  <ebb9@byu.net>
8952
8953         Enforce that AC_REPLACE_FUNCS files exist.
8954         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
8955         override check for typos.
8956
8957         Fix test-closein on Solaris 10.
8958         * tests/test-closein.c (main): Don't assume stdin can be inherited
8959         closed on all systems.
8960         * tests/test-closein.sh: Likewise.
8961         Reported by Piotr Tarnowski.
8962
8963 2007-09-28  Jim Meyering  <jim@meyering.net>
8964
8965         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
8966
8967 2007-09-27  Jim Meyering  <jim@meyering.net>
8968
8969         canonicalize: Avoid a false-positive cycle failure.
8970         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
8971         Sort.  Remove cycle-check.
8972         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
8973         not cycle-check.h.
8974         (seen_triple): New function.
8975         (canonicalize_filename_mode): Use it instead of cycle-check.
8976         * tests/test-canonicalize.c: Add a test for this bug.
8977         * tests/test-canonicalize.sh: Set up and run the test.
8978
8979         New module, file-set, from coreutils.
8980         * modules/file-set: Define it.
8981         * lib/file-set.c, lib/file-set.h: Implement.
8982
8983         New module, hash-triple, from coreutils.
8984         * modules/hash-triple: Define it.
8985         * lib/hash-triple.c, lib/hash-triple.h: Implement.
8986
8987 2007-09-25  Eric Blake  <ebb9@byu.net>
8988
8989         Fix strerror on Interix.
8990         * lib/string_.h (strerror): Declare replacement.
8991         * doc/functions/strerror.texi (strerror): Document the Interix
8992         shortcoming.
8993         * modules/string (Makefile.am): Support new hooks.
8994         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
8995         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
8996         gl_FUNC_STRERROR_SEPARATE.
8997         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
8998         * lib/strerror.c (rpl_strerror): Provide replacement.
8999         * modules/strerror (Depends-on): Add string.
9000         (configure.ac): Detect use of module.
9001         * tests/test-strerror.c: New file.
9002         * modules/strerror-tests: New test module.
9003         * modules/argp (Depends-on): Add strerror.
9004         * modules/error (Depends-on): Likewise.
9005         Reported by Martin Koeppe.
9006
9007 2007-09-24  Bruno Haible  <bruno@clisp.org>
9008
9009         * README: Update git instructions.
9010
9011 2007-09-24  Eric Blake  <ebb9@byu.net>
9012
9013         Revert fpending breakage from 2007-09-08.
9014         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
9015         __fpending.c.
9016
9017 2007-09-24  Jim Meyering  <jim@meyering.net>
9018
9019         filenamecat.c: Add a test.
9020         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
9021         showing how the function works when DIR is the empty string.
9022
9023 2007-09-21  Simon Josefsson  <simon@josefsson.org>
9024
9025         * tests/test-canonicalize.sh: Turn on executable bit.
9026
9027 2007-09-19  Eric Blake  <ebb9@byu.net>
9028
9029         * README: Update CVS instructions.
9030
9031 2007-09-18  Bruno Haible  <bruno@clisp.org>
9032
9033         * modules/areadlink: New file.
9034         * lib/areadlink.h (areadlink): New declaration.
9035         * lib/areadlink.c: New file, based on lib/xreadlink.c.
9036
9037 2007-09-17  Jim Meyering  <jim@meyering.net>
9038
9039         * lib/savewd.c (ESTALE) [!defined]: Define.
9040         Reported to be required on Interix by Martin Koeppe.
9041
9042 2007-09-17  Bruno Haible  <bruno@clisp.org>
9043
9044         * gnulib-tool (func_version): Use $version.
9045
9046 2007-09-16  Bruno Haible  <bruno@clisp.org>
9047
9048         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
9049         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
9050         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
9051         Reported by Greg Schafer <gschafer@zip.com.au>.
9052
9053 2007-09-15  Bruno Haible  <bruno@clisp.org>
9054
9055         * gnulib-tool (sed): Try a little harder to make bash understand the
9056         alias.
9057         Reported by Bruce Korb <bruce.korb@gmail.com>.
9058
9059 2007-09-13  Eric Blake  <ebb9@byu.net>
9060
9061         * ChangeLog: Remove conflict markers.
9062
9063 2007-09-13  Simon Josefsson  <simon@josefsson.org>
9064
9065         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
9066         Reported by Bruno Haible <bruno@clisp.org>.
9067
9068 2007-09-12  Bruno Haible  <bruno@clisp.org>
9069
9070         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
9071         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
9072         is not defined.
9073
9074 2007-09-12  Eric Blake  <ebb9@byu.net>
9075
9076         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
9077         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
9078         Autoconf definition.
9079         * modules/euidaccess (Depends-on): Add extensions, for
9080         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
9081         * modules/fnmatch (Depends-on): Likewise.
9082         * modules/getaddrinfo (Depends-on): Likewise.
9083         * modules/getdelim (Depends-on): Likewise.
9084         * modules/getline (Depends-on): Likewise.
9085         * modules/getsubopt (Depends-on): Likewise.
9086         * modules/gettext (Depends-on): Likewise.
9087         * modules/group-member (Depends-on): Likewise.
9088         * modules/mbchar (Depends-on): Likewise.
9089         * modules/memmem (Depends-on): Likewise.
9090         * modules/mempcpy (Depends-on): Likewise.
9091         * modules/memrchr (Depends-on): Likewise.
9092         * modules/pagealign_alloc (Depends-on): Likewise.
9093         * modules/readutmp (Depends-on): Likewise.
9094         * modules/stpcpy (Depends-on): Likewise.
9095         * modules/stpncpy (Depends-on): Likewise.
9096         * modules/strchrnul (Depends-on): Likewise.
9097         * modules/strndup (Depends-on): Likewise.
9098         * modules/strsep (Depends-on): Likewise.
9099         * modules/strverscmp (Depends-on): Likewise.
9100         * modules/vasprintf (Depends-on): Likewise.
9101         * modules/wcwidth (Depends-on): Likewise.
9102         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
9103         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
9104         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
9105         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
9106         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
9107         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
9108         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
9109         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
9110         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
9111         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
9112         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
9113         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
9114         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
9115         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
9116         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
9117         * m4/readutmp.m4 (gl_READUTMP): Likewise.
9118         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
9119         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
9120         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
9121         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
9122         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
9123         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
9124         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
9125         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
9126         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
9127         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
9128         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
9129         so that lock.m4 can be used in gettext without extensions module.
9130
9131 2007-09-11  Bruno Haible  <bruno@clisp.org>
9132
9133         * m4/isc-posix.m4: Remove file.
9134         Suggested by Eric Blake.
9135
9136 2007-09-11  Eric Blake  <ebb9@byu.net>
9137
9138         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
9139
9140 2007-09-10  Bruno Haible  <bruno@clisp.org>
9141
9142         * posix-modules: Fix typo in error message.
9143         Reported by Matt <mkraai@beckman.com>.
9144
9145 2007-09-09  Bruno Haible  <bruno@clisp.org>
9146
9147         * doc/functions/getdelim.texi: Update list of platforms lacking the
9148         function.
9149         * doc/functions/getline.texi: Likewise.
9150
9151 2007-09-09  Jim Meyering  <jim@meyering.net>
9152
9153         * lib/hash.c (hash_initialize): Detect calloc failure.
9154         Reported by Bruno Haible.
9155
9156 2007-09-09  Bruno Haible  <bruno@clisp.org>
9157
9158         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
9159         malloc or realloc fails.
9160
9161 2007-09-09  Bruno Haible  <bruno@clisp.org>
9162
9163         * modules/getcwd (Depends-on): Add malloc-posix.
9164         * modules/glob (Depends-on): Likewise.
9165         * modules/putenv (Depends-on): Likewise.
9166         * modules/strdup (Depends-on): Likewise.
9167         * modules/getdelim (Depends-on): Add realloc-posix.
9168         * modules/read-file (Depends-on): Likewise.
9169
9170 2007-09-09  Bruno Haible  <bruno@clisp.org>
9171
9172         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
9173         (gl_FUNC_MALLOC_POSIX): Require it.
9174         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
9175         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
9176         * modules/realloc (Files): Add m4/malloc.m4.
9177         * modules/calloc (Files): Likewise.
9178
9179 2007-09-09  Bruno Haible  <bruno@clisp.org>
9180
9181         * modules/malloc-posix: New file.
9182         * modules/malloc (Depends-on): Add malloc-posix.
9183         * lib/malloc.c: Include errno.h.
9184         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
9185         and a POSIX-compatible malloc into a single function. Set ENOMEM
9186         when returning NULL.
9187         * m4/malloc.m4: New file.
9188         * doc/functions/malloc.texi: Mention the malloc-posix module.
9189         * lib/stdlib_.h (malloc): New declaration.
9190         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
9191         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
9192         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
9193         and HAVE_MALLOC_POSIX.
9194
9195 2007-09-09  Bruno Haible  <bruno@clisp.org>
9196
9197         * modules/realloc-posix: New file.
9198         * modules/realloc (Depends-on): Add realloc-posix.
9199         * lib/realloc.c: Include errno.h.
9200         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
9201         and a POSIX-compatible realloc into a single function. Set ENOMEM
9202         when returning NULL.
9203         * m4/realloc.m4: New file.
9204         * doc/functions/realloc.texi: Mention the realloc-posix module.
9205         * lib/stdlib_.h (realloc): New declaration.
9206         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
9207         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
9208         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
9209         and HAVE_REALLOC_POSIX.
9210
9211 2007-09-09  Bruno Haible  <bruno@clisp.org>
9212
9213         * modules/calloc-posix: New file.
9214         * modules/calloc (Depends-on): Add calloc-posix.
9215         * lib/calloc.c: Include errno.h.
9216         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
9217         and a POSIX-compatible calloc into a single function. Set ENOMEM
9218         when returning NULL.
9219         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
9220         * doc/functions/calloc.texi: Mention the calloc-posix module.
9221         * lib/stdlib_.h (calloc): New declaration.
9222         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
9223         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
9224         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
9225         and HAVE_CALLOC_POSIX.
9226
9227 2007-09-09  Bruno Haible  <bruno@clisp.org>
9228
9229         Allow for modules to show an arbitrary notice.
9230         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
9231         * gnulib-tool: New option --extract-notice.
9232         (func_usage): Document it.
9233         (sed_extract_prog): Update.
9234         (func_get_notice): New function.
9235         (func_modules_notice): New function.
9236         (func_import, func_create_testdir): Invoke it.
9237         Suggested by Jim Meyering.
9238
9239 2007-09-09  Bruno Haible  <bruno@clisp.org>
9240
9241         * gnulib-tool: New options --verbose, --quiet.
9242         (func_usage): Document them.
9243         (verbose): New variable.
9244         (func_execute_command): New function.
9245         (func_import): Don't show the module list and the file list if
9246         $verbose < 0.
9247         (func_create_testdir): Likewise. Use func_execute_command.
9248         (func_create_megatestdir): Use func_execute_command.
9249
9250 2007-09-08  Bruno Haible  <bruno@clisp.org>
9251
9252         * gnulib-tool (func_import): Prefer rsync over wget when available,
9253         for fetching the PO files.
9254
9255 2007-09-08  Bruno Haible  <bruno@clisp.org>
9256
9257         * posix-modules: New file. Portions copied from gnulib-tool.
9258         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
9259
9260 2007-09-08  Jim Meyering  <jim@meyering.net>
9261
9262         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
9263         * lib/fpending.h: Rename from __fpending.h.
9264         * lib/fpending.c: Rename from __fpending.c.
9265         Include "fpending.h", not "__fpending.h".
9266         * lib/__fpending.h, lib/__fpending.c: Remove files.
9267         * modules/fpending (Files): Reflect new file names.
9268         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
9269
9270 2007-09-08  Bruno Haible  <bruno@clisp.org>
9271
9272         * m4/inttypes-h.m4: Remove stub file.
9273
9274 2007-09-07  Simon Josefsson  <simon@josefsson.org>
9275
9276         * doc/headers/stdint.texi: Discuss #include_next issue.
9277
9278 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
9279
9280         * build-aux/bootstrap: Remove obsolete comment about wget --help.
9281
9282 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9283
9284         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
9285         in variable name.
9286
9287 2007-09-03  Jim Meyering  <jim@meyering.net>
9288
9289         New module: git-version-gen.
9290         * modules/git-version-gen: New file.
9291
9292         Import changes from coreutils for bootstrap script.
9293
9294         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
9295
9296         bootstrap: uses rsync to download the .po files
9297         * build-aux/bootstrap (po_download_command_format): New global.
9298         (download_po_files): Use rsync.
9299         (update_po_files): Don't remove .po files after download,
9300         so future rsync runs can take advantage of the copies.
9301
9302         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
9303
9304         Solve the unnecessary-.po-file-regeneration problem once and for all.
9305         * build-aux/bootstrap (download_po_files): New function, renamed from
9306         get_translations.  Now, downloads, but doesn't update LINGUAS.
9307         (update_po_files): New function.
9308
9309         bootstrap: Ignore more.
9310         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
9311         uniwidth to e.g., lib/.gitignore.
9312         (slurp): Handle the sys_stat_.h -> sys mapping, too.
9313
9314         * build-aux/bootstrap: New setting: vc_ignore.
9315         (insert_sorted_if_absent): Create $file if absent.
9316         Adapt to new, possibly empty, list: $vc_ignore.
9317
9318         bootstrap: generate more ignorable names
9319         * build-aux/bootstrap (slurp): When generating ignorable names,
9320         also map .sin to .sed, .gperf to .c, and .y to .c.
9321
9322 2007-09-03  Jim Meyering  <jim@meyering.net>
9323
9324         * build-aux/git-version-gen: New file, from coreutils.  For details, see
9325         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
9326
9327 2007-09-02  Bruno Haible  <bruno@clisp.org>
9328
9329         Fix mis-recognition of 'mcs' on QNX 6.
9330         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
9331         output contains the string "Mono".
9332         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
9333         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
9334
9335 2007-09-01  Bruno Haible  <bruno@clisp.org>
9336
9337         Fix collision between uniwidth/* and linebreak modules.
9338         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
9339         u32_width): Remove declarations.
9340         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
9341         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
9342         streq3, streq2, streq1, streq0): Remove functions.
9343         (STREQ): Remove macro.
9344         (is_cjk_encoding): Remove function.
9345         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
9346         (uc_width, u8_width, u16_width, u32_width): Remove functions.
9347         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
9348         * NEWS: Document the change.
9349
9350 2007-09-01  Bruno Haible  <bruno@clisp.org>
9351
9352         * lib/streq.h: Add double-inclusion guard.
9353
9354 2007-09-01  Karl Berry  <karl@gnu.org>
9355
9356         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
9357
9358 2007-08-28  Jim Meyering  <jim@meyering.net>
9359
9360         Rename mreadlink_with_size to areadlink_with_size.
9361         * NEWS: Document the change.
9362         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
9363         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
9364         * lib/mreadlink.h: Rename this to...
9365         * lib/areadlink.h: ...this.
9366         * modules/mreadlink-with-size: Rename this to...
9367         * modules/areadlink-with-size: ...this.
9368         * lib/canonicalize.c: Reflect the renaming.
9369         * modules/canonicalize: Likewise.
9370
9371 2007-08-26  Bruno Haible  <bruno@clisp.org>
9372
9373         * gnulib-tool (func_import): When deciding which files to remove,
9374         consider also dangling symbolic links.
9375         Reported by Eric Blake.
9376
9377 2007-08-26  Bruno Haible  <bruno@clisp.org>
9378
9379         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
9380
9381 2007-08-23  Simon Josefsson  <simon@josefsson.org>
9382
9383         * lib/readline.c: Don't include getline.h, the prototype is now
9384         found in stdio.h.
9385
9386 2007-08-23  Jim Meyering  <jim@meyering.net>
9387
9388         Getdelim touchup.
9389         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
9390         around the funlockfile call, since funlockfile never sets errno.
9391         Don't set errno upon failed realloc.
9392
9393 2007-08-22  Eric Blake  <ebb9@byu.net>
9394
9395         Getline touchups.
9396         * lib/getdelim.c (getdelim): Revert regression that required *n to
9397         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
9398         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
9399         getdelim, rather than whether implementation is missing.
9400         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
9401         * lib/stdio_.h (getline): Also declare if replacement is
9402         required.
9403         * doc/functions/getdelim.texi: New file.
9404         * doc/functions/getline.texi: Likewise.
9405         * doc/gnulib.texi (Function Substitutes): Add new files.
9406         Reported by Bruno Haible.
9407
9408 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
9409
9410         * users.txt: Add Guile.
9411
9412 2007-08-22  Eric Blake  <ebb9@byu.net>
9413
9414         * tests/test-getdelim.c (main): Use remove, not unlink.
9415         * tests/test-getline.c (main): Likewise.
9416
9417         Move getline and getdelim into stdio.h, per POSIX 200x.
9418         * modules/getline (Files): Remove getline.h.
9419         (Depends-on): Add stdio.
9420         (configure.ac): Add module indicator.
9421         * modules/getdelim (Files): Remove getdelim.h.
9422         (Depends-on): Add stdio.
9423         (configure.ac): Add module indicator.
9424         * modules/stdio (Makefile.am): Work with new indicators.
9425         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
9426         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
9427         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
9428         * lib/getdelim.h: Delete.
9429         * lib/getline.h: Delete.
9430         * lib/stdio_.h (getdelim, getline): Declare.
9431         * modules/getdelim-tests: New module.
9432         * modules/getline-tests: Likewise.
9433         * tests/test-getdelim.c: New file.
9434         * tests/test-getline.c: Likewise.
9435         * NEWS: Document the change.
9436         * lib/getline.c: Update choice of header.
9437         * lib/csharpcomp.c: Likewise.
9438         * lib/getpass.c: Likewise.
9439         * lib/javacomp.c: Likewise.
9440         * lib/javaversion.c: Likewise.
9441         * lib/yesno.c: Likewise.
9442         * lib/getdelim.c: Likewise.
9443         (getdelim): Set errno on failure, and avoid memory leak.
9444
9445 2007-08-19  Bruno Haible  <bruno@clisp.org>
9446
9447         * modules/closein (Depends-on): Add freadahead.
9448         * lib/closein.c: Include freadahead.h.
9449         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
9450         is zero.
9451
9452 2007-08-19  Bruno Haible  <bruno@clisp.org>
9453
9454         * modules/freadahead-tests: New file.
9455         * tests/test-freadahead.sh: New file.
9456         * tests/test-freadahead.c: New file.
9457
9458         * modules/freadahead: New file.
9459         * lib/freadahead.h: New file.
9460         * lib/freadahead.c: New file.
9461         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
9462         fbufmode, fpurge, freadable, fwritable.
9463
9464 2007-08-19  Eric Blake  <ebb9@byu.net>
9465
9466         Test yesno in combination with closein.
9467         * lib/yesno.c (yesno): Document use of stdin.
9468         * modules/yesno-tests (Files): New module.
9469         * tests/test-yesno.c (main): New file.
9470         * tests/test-yesno.sh: Likewise.
9471
9472 2007-08-19  Bruno Haible  <bruno@clisp.org>
9473
9474         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
9475         * lib/fseeko.c (rpl_fseeko): Likewise.
9476         * lib/fseterr.c (fseterr): Likewise.
9477
9478 2007-08-19  Bruno Haible  <bruno@clisp.org>
9479
9480         * tests/test-lseek.c (main): Disable a test for BeOS.
9481         * doc/functions/lseek.texi: Document the BeOS bug.
9482
9483 2007-08-19  Bruno Haible  <bruno@clisp.org>
9484             Eric Blake  <ebb9@byu.net>
9485
9486         * lib/lseek.c: Include <sys/stat.h>.
9487         (rpl_lseek): Add workaround code also for Unix platforms.
9488         Needed for BeOS.
9489         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
9490         * doc/functions/lseek.texi: Document BeOS definiency.
9491
9492 2007-08-18  Bruno Haible  <bruno@clisp.org>
9493
9494         * modules/fstrcmp-tests: New file.
9495         * tests/test-fstrcmp.c: New file.
9496
9497 2007-08-18  Bruno Haible  <bruno@clisp.org>
9498
9499         * modules/fstrcmp: New file, from GNU gettext with modifications.
9500         * lib/fstrcmp.h: New file, from GNU gettext.
9501         * lib/fstrcmp.c: New file, from GNU gettext.
9502         * MODULES.html.sh (String handling): Add fstrcmp.
9503
9504 2007-08-18  Bruno Haible  <bruno@clisp.org>
9505
9506         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
9507         'bool'.
9508         (diag, compareseq): Remove const from the ctxt argument.
9509         (USE_HEURISTIC): Undefine at the end.
9510
9511 2007-08-18  Jim Meyering  <jim@meyering.net>
9512
9513         New file: lib/idcache.h
9514         * NEWS: Mention the addition.
9515         * modules/idcache (Files): Add lib/idcache.h
9516         * lib/idcache.c: Include "idcache.h".
9517         Don't include <sys/types.h>.
9518         Add a FIXME comment.
9519         Move file-scoped "static" declarations to the top.
9520         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
9521
9522 2007-08-17  Bruno Haible  <bruno@clisp.org>
9523         and Paul Eggert  <eggert@cs.ucla.edu>
9524
9525         * MODULES.html.sh: Add diffseq.
9526         * modules/diffseq: New file.
9527         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
9528         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
9529
9530 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
9531
9532         Import changes from coreutils for bootstrap script.
9533
9534         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
9535
9536         * build-aux/bootstrap (slurp): Work even in environments where
9537         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
9538         current code does not slurp files whose names start with ".", and
9539         this looks like it might be a troublesome area.
9540
9541         2007-07-11  Jim Meyering  <jim@meyering.net>
9542
9543         If there's a GPL vN copyright comment, require that N == 3.
9544
9545         2007-07-08  Jim Meyering  <jim@meyering.net>
9546
9547         Run the coreutils-specific code only if tests/Makefile.am.in exists.
9548         * build-aux/bootstrap (mam_template): Move definition out of loop.
9549
9550         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
9551
9552         * build-aux/bootstrap (symlink_to_dir): Rename function from
9553         symlink_to_gnulib.  Add a directory parameter.  Update all
9554         callers.
9555         (cp_mark_as_generated): Also check for -- and link to -- files in
9556         gl/.
9557
9558         2007-07-08  Jim Meyering  <jim@meyering.net>
9559
9560         Adapt to deeper hierarchy in gnulib.
9561         * build-aux/bootstrap (symlink_to_dir): If the destination
9562         directory doesn't exist, create it. This is required at least for
9563         "lib/uniwidth/cjk.h".
9564
9565         2007-05-15  Jim Meyering  <jim@meyering.net>
9566
9567         * build-aux/bootstrap: Now that generated Makefile.am files
9568         are no longer under version control, they must be created at
9569         bootstrap time.
9570
9571 2007-08-14  Ben Pfaff  <blp@gnu.org>
9572
9573         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
9574
9575 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
9576
9577         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
9578         given the changes below.
9579         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
9580         even on hosts that have padding bits beyond the supported 64.
9581
9582 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
9583
9584         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
9585         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
9586         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
9587         depends on it.
9588         (xstrtol_error): Remove.
9589         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
9590         but with a different signature.
9591         (ATTRIBUTE_NORETURN, __attribute__): New macros.
9592         * lib/xstrtol-error.c: Include exitfail.h.
9593         (xstrtol_fatal): New function, with a different signature from the
9594         old xstrtol_error, so that the caller need not worry about passing
9595         in an exit status, or about storage management of the option argument.
9596         (xstrtol_error): Now a static function.  Redo signature to
9597         implement xstrtol_fatal.  Output the correct number of hyphens in
9598         front of the option so that the caller need not worry about
9599         storage management.
9600         (N_): New macro.
9601         (_): Remove; not used now.
9602         * modules/xstrtol: Depend on getopt.
9603         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
9604         of old STRTOL_FATAL_ERROR macro.
9605         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
9606         of test program.
9607         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
9608         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
9609
9610 2007-08-08  Eric Blake  <ebb9@byu.net>
9611
9612         * lib/xstrtol-error.c: Add missing include.
9613
9614         Move xstrtol messages into gnulib domain, when --pobase is used.
9615         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
9616         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
9617         * modules/xstrtol (Files): Distribute new file.
9618         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
9619         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
9620         * tests/test-xstrtol.c: ...into new file.
9621         * tests/test-xstrtoul.c: Also test xstrtoul.
9622         * tests/test-xstrtoimax.c: Also test xstrtoimax.
9623         * tests/test-xstrtoumax.c: Also test xstrtoumax.
9624         * tests/test-xstrtol.sh: Drive the tests.
9625         * tests/test-xstrtoimax.sh: Likewise.
9626         * tests/test-xstrtoumax.sh: Likewise.
9627         * modules/xstrtol-tests: New module.
9628         * modules/xstrtoimax-tests: Likewise.
9629         * modules/xstrtoumax-tests: Likewise.
9630
9631 2007-08-08  Jim Meyering  <jim@meyering.net>
9632
9633         New function: mfile_name_concat.
9634         * lib/filenamecat.c (mfile_name_concat): New function, just like
9635         file_name_concat, but return NULL upon failure rather than exiting
9636         with a diagnostic.
9637         * lib/filenamecat.h: Declare it.
9638
9639 2007-08-07  Bruno Haible  <bruno@clisp.org>
9640
9641         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
9642         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
9643         warning from gcc.
9644         Reported by Eric Blake.
9645
9646 2007-08-07  Simon Josefsson  <simon@josefsson.org>
9647
9648         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
9649         * modules/crypto/arcfour (License): Likewise.
9650         * modules/crypto/des-tests (License): Likewise.
9651         * modules/crypto/gc-arctwo-tests (License): Likewise.
9652         * modules/crypto/gc-des-tests (License): Likewise.
9653         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
9654         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
9655         * modules/crypto/gc-md2-tests (License): Likewise.
9656         * modules/crypto/gc-md4-tests (License): Likewise.
9657         * modules/crypto/gc-md5-tests (License): Likewise.
9658         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
9659         * modules/crypto/gc-rijndael-tests (License): Likewise.
9660         * modules/crypto/gc-sha1-tests (License): Likewise.
9661         * modules/crypto/gc-tests (License): Likewise.
9662         * modules/crypto/hmac-md5 (License): Likewise.
9663         * modules/crypto/hmac-sha1 (License): Likewise.
9664         * modules/crypto/md2-tests (License): Likewise.
9665         * modules/crypto/md4-tests (License): Likewise.
9666         * modules/crypto/md5 (License): Likewise.
9667         * modules/crypto/rijndael (License): Likewise.
9668         * modules/crypto/sha1 (License): Likewise.
9669         * modules/memxor (License): Likewise.
9670
9671 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
9672         and Bruno Haible  <bruno@clisp.org>
9673
9674         * NEWS: Describe interface changes to human, xstrtol.
9675         * lib/human.h: Include <xstrtol.h>.
9676         (human_options): Return enum strtol_error, not int.  Remove
9677         bool arg; take int * instead.
9678         * lib/human.c: Don't include "gettext.h".
9679         (_): Remove; no longer used.
9680         Don't include <xstrtol.h>, since human.h does it.
9681         (human_options): Adjust to abovementioned interface changes.
9682         Do not report error to stderr; that's now the caller's
9683         responsibility.
9684         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
9685         interface change.
9686         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
9687         Str, Argument_type_string.  All uses changed.  Put " argument"
9688         in diagnostics to make them clearer.  Change wording of suffix
9689         message for clarity.
9690         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
9691         Argument_type_string.
9692         (STRTOL_FATAL_WARN): Remove; no longer used.
9693         * modules/human (Depends-on): Remove gettext-h.
9694
9695 2007-08-06  Simon Josefsson  <simon@josefsson.org>
9696
9697         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
9698
9699 2007-07-31  Bruno Haible  <bruno@clisp.org>
9700
9701         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
9702         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
9703         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
9704
9705 2007-07-31  Bruno Haible  <bruno@clisp.org>
9706
9707         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
9708         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
9709
9710 2007-07-30  Bruno Haible  <bruno@clisp.org>
9711
9712         * modules/base64 (License): Use the synonymous term "LGPLv2+".
9713         * modules/c-ctype (License): Likewise.
9714         * modules/c-strcase (License): Likewise.
9715         * modules/check-version (License): Likewise.
9716         * modules/iconv (License): Likewise.
9717         * modules/iconv_open (License): Likewise.
9718         * modules/read-file (License): Likewise.
9719         * modules/striconv (License): Likewise.
9720         * modules/strverscmp (License): Likewise.
9721         * modules/vasprintf (License): Likewise.
9722         * modules/crypto/des (License): Likewise.
9723         * modules/crypto/gc (License): Likewise.
9724         * modules/crypto/gc-arcfour (License): Likewise.
9725         * modules/crypto/gc-arctwo (License): Likewise.
9726         * modules/crypto/gc-des (License): Likewise.
9727         * modules/crypto/gc-hmac-md5 (License): Likewise.
9728         * modules/crypto/gc-hmac-sha1 (License): Likewise.
9729         * modules/crypto/gc-md2 (License): Likewise.
9730         * modules/crypto/gc-md4 (License): Likewise.
9731         * modules/crypto/gc-md5 (License): Likewise.
9732         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
9733         * modules/crypto/gc-random (License): Likewise.
9734         * modules/crypto/gc-rijndael (License): Likewise.
9735         * modules/crypto/gc-sha1 (License): Likewise.
9736         * modules/crypto/md2 (License): Likewise.
9737         * modules/crypto/md4 (License): Likewise.
9738
9739 2007-07-30  Jim Meyering  <jim@meyering.net>
9740
9741         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
9742         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
9743         it has valid stat data.  This bug would cause du not to count the
9744         sizes of inaccessible directories.
9745         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
9746         in <http://bugzilla.redhat.com/250077>.
9747
9748 2007-07-25  Peter O'Gorman  <peter@pogma.com>
9749             Bruno Haible  <bruno@clisp.org>
9750
9751         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
9752         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
9753         #include_next, gives a diagnostic about it, but reports no error in
9754         the exit code.
9755         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
9756
9757 2007-07-24  Ben Pfaff  <blp@gnu.org>
9758
9759         Improve name: "count-one-bits" is better than "popcount".
9760         * MODULES.html.sh: Update name.
9761         * lib/popcount.h: Renamed lib/count-one-bits.h.
9762         (popcount): Renamed count_one_bits.
9763         (popcountl): Renamed count_one_bits_l.
9764         (popcountll): Renamed count_one_bits_ll.
9765         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
9766         * modules/popcount: Renamed module/count-one-bits.
9767         * modules/popcount-tests: Renamed module/count-one-bits-tests.
9768         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
9769
9770 2007-07-23  Ben Pfaff  <blp@gnu.org>
9771
9772         * lib/popcount.h (popcount32): Reduce size of constants, to allow
9773         better code generation, and add U to large constants to avoid
9774         warnings, in non-GCC case.
9775         Suggested by Bruno Haible.
9776
9777 2007-07-23  Ben Pfaff  <blp@gnu.org>
9778
9779         * lib/popcount.h: Use verify_true instead of if...abort.
9780         * modules/popcount: Depend on verify module.
9781         Suggested by Jim Meyering.
9782
9783 2007-07-23  Bruno Haible  <bruno@clisp.org>
9784
9785         * gnulib-tool (func_import): Create a .cvsignore file also when the
9786         directory is not yet in CVS but the toplevel directory is. When
9787         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
9788         Reported by Karl Berry.
9789
9790 2007-07-22  Ben Pfaff  <blp@gnu.org>
9791
9792         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
9793         case.
9794         Suggested by Eric Blake.
9795
9796 2007-07-22  Ben Pfaff  <blp@gnu.org>
9797
9798         New module: popcount.
9799         * MODULES.html.sh: Add popcount.
9800         * modules/popcount: New file.
9801         * modules/popcount-tests: New file.
9802         * tests/test-popcount.c: New file.
9803         * lib/popcount.h: New file.
9804         * m4/popcount.m4: New file.
9805
9806 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
9807
9808         * build-aux/announce-gen: Update to GPLv3.
9809
9810         * build-aux/config.guess: Update from config.
9811
9812 2007-07-21  Bruno Haible  <bruno@clisp.org>
9813
9814         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
9815         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
9816
9817 2007-07-20  Jim Meyering  <jim@meyering.net>
9818
9819         * check-module: Diagnose a self-dependency.
9820
9821 2007-07-19  Bruno Haible  <bruno@clisp.org>
9822
9823         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
9824         empty.
9825         Reported by Eric Blake.
9826
9827 2007-07-18  Bruno Haible  <bruno@clisp.org>
9828
9829         * gnulib-tool: New options --po-base, --po-domain.
9830         (func_usage): Document them.
9831         (pobase, po_domain): New variables.
9832         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
9833         DEFAULT_TEXT_DOMAIN.
9834         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
9835         (func_import): Consider pobase and po_domain. Create a po/ directory.
9836         (func_create_testdir): Set pobase and po_domain to empty.
9837         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
9838         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
9839
9840 2007-07-18  Bruno Haible  <bruno@clisp.org>
9841
9842         * gnulib-tool (func_get_automake_snippet): Synthesize also an
9843         EXTRA_DIST augmentation for files in build-aux/.
9844
9845 2007-07-16  Bruno Haible  <bruno@clisp.org>
9846
9847         * modules/lseek (License): Use the synonymous term "LGPLv2+".
9848         * modules/getdelim (License): Likewise.
9849
9850 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9851
9852         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
9853         * modules/d-type (License): Likewise.
9854         * modules/extensions (License): Likewise.
9855         * modules/fnmatch (License): Likewise.
9856         * modules/fseeko (License): Likewise.
9857         * modules/getaddrinfo (License): Likewise.
9858         * modules/getline (License): Likewise.
9859         * modules/getlogin_r (License): Likewise.
9860         * modules/getpass (License): Likewise.
9861         * modules/gettimeofday (License): Likewise.
9862         * modules/glob (License): Likewise.
9863         * modules/inet_ntop (License): Likewise.
9864         * modules/malloc (License): Likewise.
9865         * modules/malloca (License): Likewise.
9866         * modules/memmem (License): Likewise.
9867         * modules/mempcpy (License): Likewise.
9868         * modules/memset (License): Likewise.
9869         * modules/minmax (License): Likewise.
9870         * modules/mktime (License): Likewise.
9871         * modules/netinet_in (License): Likewise.
9872         * modules/pathmax (License): Likewise.
9873         * modules/poll (License): Likewise.
9874         * modules/regex (License): Likewise.
9875         * modules/snprintf (License): Likewise.
9876         * modules/stdbool (License): Likewise.
9877         * modules/stdint (License): Likewise.
9878         * modules/stdio (License): Likewise.
9879         * modules/strcase (License): Likewise.
9880         * modules/strcasestr (License): Likewise.
9881         * modules/strdup (License): Likewise.
9882         * modules/string (License): Likewise.
9883         * modules/strndup (License): Likewise.
9884         * modules/strnlen (License): Likewise.
9885         * modules/strpbrk (License): Likewise.
9886         * modules/strptime (License): Likewise.
9887         * modules/strsep (License): Likewise.
9888         * modules/sys_select (License): Likewise.
9889         * modules/sys_socket (License): Likewise.
9890         * modules/sys_stat (License): Likewise.
9891         * modules/sys_time (License): Likewise.
9892         * modules/time (License): Likewise.
9893         * modules/time_r (License): Likewise.
9894         * modules/timegm (License): Likewise.
9895         * modules/unistd (License): Likewise.
9896         * modules/vsnprintf (License): Likewise.
9897         * modules/wctype (License): Likewise.
9898
9899 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9900
9901         * modules/argz (License): LGPLv2+.
9902
9903 2007-07-15  Karl Berry  <karl@gnu.org>
9904
9905         * doc/gnulib.texi: revise node structure per new fdl.texi.
9906
9907 2007-07-14  Bruno Haible  <bruno@clisp.org>
9908
9909         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
9910         the output file.
9911         * lib/uniname/uninames.h: Regenerated.
9912
9913 2007-07-14  Karl Berry  <karl@gnu.org>
9914
9915         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
9916         omitting sectioning and index commands.
9917
9918 2007-07-13  Bruno Haible  <bruno@clisp.org>
9919
9920         New gnulib-tool option --more-symlinks.
9921         * gnulib-tool (func_usage): Document --more-symlinks.
9922         (do_copyrights): New variable.
9923         Recognize option --more-symlinks.
9924         (func_import): Don't add a copyright notice transform to
9925         sed_transform_lib_file if do_copyrights is empty.
9926
9927 2007-07-13  Bruno Haible  <bruno@clisp.org>
9928
9929         * lib/vasnprintf.c (decimal_point_char): Define also if
9930         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
9931         && !NEED_PRINTF_DIRECTIVE_A.
9932         Reported by Clemens Koller <clemens.koller@anagramm.de> via
9933         Gary V. Vaughan <gary@gnu.org>.
9934
9935 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
9936
9937         * lib/inttypes_.h: Undo previous change, since it was fixed
9938         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
9939
9940 2007-07-13  Bruno Haible  <bruno@clisp.org>
9941
9942         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
9943         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
9944
9945 2007-07-13  Jim Meyering  <jim@meyering.net>
9946
9947         df: Don't fail for Tru64's "file-on-file mount".
9948         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
9949         so we fall through and use statfs instead.  Details here:
9950         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
9951         Reported by Albert Chin.
9952
9953 2007-07-13  Bruno Haible  <bruno@clisp.org>
9954
9955         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
9956         * modules/configmake (License): Likewise.
9957         * modules/gettext (License): Likewise.
9958         * modules/gettext-h (License): Likewise.
9959         * modules/include_next (License): Likewise.
9960         * modules/link-warning (License): Likewise.
9961         * modules/localcharset (License): Likewise.
9962         * modules/localename (License): Likewise.
9963         * modules/lock (License): Likewise.
9964         * modules/relocatable-lib-lgpl (License): Likewise.
9965         * modules/size_max (License): Likewise.
9966         * modules/vasnprintf (License): Likewise.
9967         * modules/wchar (License): Likewise.
9968         * modules/xsize (License): Likewise.
9969
9970 2007-07-13  Bruno Haible  <bruno@clisp.org>
9971
9972         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
9973         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
9974
9975 2007-07-12  Bruno Haible  <bruno@clisp.org>
9976
9977         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
9978         in the modules files.
9979
9980 2007-07-11  Karl Berry  <karl@gnu.org>
9981
9982         * MODULES.html.sh (func_module): use
9983          sed -e '\|^'"${includefile}"'$|d'
9984          instead of /.../d, to avoid errors on $includefile's containing /.
9985
9986 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
9987
9988         * gnulib-tool (func_import): Avoid duplication of --avoid
9989         statements
9990         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
9991         names to `_' in variable names.
9992
9993 2007-07-10  Eric Blake  <ebb9@byu.net>
9994
9995         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
9996         * NEWS: Document this change.
9997
9998 2007-07-08  Bruno Haible  <bruno@clisp.org>
9999
10000         Update to Unicode 5.0.
10001         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
10002         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
10003         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
10004         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
10005         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
10006         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
10007         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
10008         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
10009         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
10010         U+10A3F, U+1D242..U+1D244.
10011         (nonspacing_table_ind): Update.
10012         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
10013         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
10014
10015 2007-07-08  Bruno Haible  <bruno@clisp.org>
10016
10017         Update to Unicode 5.0.
10018         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
10019         code transform. Extend the name index field of unicode_name_to_code and
10020         unicode_code_to_name from 16 to 24 bits.
10021         * lib/uniname/uniname.c (unicode_character_name,
10022         unicode_name_character): Add the range 0x12xxx to the code transform.
10023         * lib/uniname/uninames.h: Regenerated.
10024         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
10025
10026 2007-07-07  Bruno Haible  <bruno@clisp.org>
10027
10028         * modules/wcwidth-tests: New file.
10029         * tests/test-wcwidth.c: New file.
10030
10031         Work around MacOS X wcwidth() bug.
10032         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
10033         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
10034         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
10035         original wcwidth in non-UTF-8 locales.
10036         * modules/wcwidth (Depends-on): Add localcharset, streq,
10037         uniwidth/width.
10038         * doc/functions/wcwidth.texi: Update.
10039
10040 2007-07-07  Bruno Haible  <bruno@clisp.org>
10041
10042         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
10043         (wcwidth): New declaration.
10044         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
10045         macros.
10046         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
10047         here. Prepare for creating <wchar.h> unconditionally.
10048         * modules/wchar (Depends-on): Add link-warning.
10049         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
10050         REPLACE_WCWIDTH, and GL_LINK_WARNING.
10051         * lib/wcwidth.h: Remove file.
10052         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
10053         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
10054         * modules/wcwidth (Files): Remove lib/wcwidth.h.
10055         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
10056         (Include): Replace wcwidth.h with <wchar.h>.
10057         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
10058         * lib/mbchar.h: Don't include wcwidth.h.
10059         * lib/mbswidth.c: Likewise.
10060         * NEWS: Mention the change.
10061
10062 2007-07-07  Bruno Haible  <bruno@clisp.org>
10063
10064         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
10065         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
10066         definition with an external declaration.
10067         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
10068         defined as a function. Remove AC_C_INLINE requirement.
10069         * modules/wcwidth (Files): Add lib/wcwidth.c.
10070         (Makefile.am): Remove redundant statement.
10071
10072 2007-07-07  Bruno Haible  <bruno@clisp.org>
10073
10074         * MODULES.html.sh (Unicode string functions): Add the new modules.
10075
10076         * tests/uniwidth/test-u32-strwidth.c: New file.
10077         * modules/uniwidth/u32-strwidth-tests: New file.
10078
10079         * lib/uniwidth/u32-strwidth.c: New file.
10080         * modules/uniwidth/u32-strwidth: New file.
10081
10082         * tests/uniwidth/test-u16-strwidth.c: New file.
10083         * modules/uniwidth/u16-strwidth-tests: New file.
10084
10085         * lib/uniwidth/u16-strwidth.c: New file.
10086         * modules/uniwidth/u16-strwidth: New file.
10087
10088         * tests/uniwidth/test-u8-strwidth.c: New file.
10089         * modules/uniwidth/u8-strwidth-tests: New file.
10090
10091         * lib/uniwidth/u8-strwidth.c: New file.
10092         * modules/uniwidth/u8-strwidth: New file.
10093
10094         * tests/uniwidth/test-u32-width.c: New file.
10095         * modules/uniwidth/u32-width-tests: New file.
10096
10097         * lib/uniwidth/u32-width.c: New file.
10098         * modules/uniwidth/u32-width: New file.
10099
10100         * tests/uniwidth/test-u16-width.c: New file.
10101         * modules/uniwidth/u16-width-tests: New file.
10102
10103         * lib/uniwidth/u16-width.c: New file.
10104         * modules/uniwidth/u16-width: New file.
10105
10106         * tests/uniwidth/test-u8-width.c: New file.
10107         * modules/uniwidth/u8-width-tests: New file.
10108
10109         * lib/uniwidth/u8-width.c: New file.
10110         * modules/uniwidth/u8-width: New file.
10111
10112         * tests/uniwidth/test-uc_width.c: New file.
10113         * modules/uniwidth/width-tests: New file.
10114
10115         * lib/uniwidth/width.c: New file, from GNU libiconv.
10116         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
10117         * modules/uniwidth/width: New file.
10118
10119         * lib/uniwidth.h: New file, from GNU libiconv.
10120         * modules/uniwidth/base: New file.
10121
10122 2007-07-07  Bruno Haible  <bruno@clisp.org>
10123
10124         * lib/uniname.h: New file, from GNU gettext.
10125         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
10126         * lib/uniname/uninames.h: New file, from GNU gettext.
10127         * lib/uniname/uniname.c: New file, from GNU gettext.
10128         * tests/uniname/test-uninames.sh: New file.
10129         * tests/uniname/test-uninames.c: New file, from GNU gettext.
10130         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
10131         * modules/uniname/base: New file.
10132         * modules/uniname/uniname: New file.
10133         * modules/uniname/uniname-tests: New file.
10134         * MODULES.html.sh (Unicode string functions): Add the new modules.
10135
10136 2007-07-06  Bruno Haible  <bruno@clisp.org>
10137
10138         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
10139
10140 2007-07-06  Bruno Haible  <bruno@clisp.org>
10141
10142         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
10143         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
10144         includes <cygwin/sys_time.h> which includes <sys/select.h> which
10145         include <sys/time.h>.
10146         Reported by Eric Blake.
10147
10148 2007-07-06  Eric Blake  <ebb9@byu.net>
10149
10150         Fix testing canonicalize on cygwin.
10151         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
10152         Revert patch from 2007-06-19.
10153         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
10154         canonicalize module is also in use.
10155         * tests/test-canonicalize.c: New file.
10156         * tests/test-canonicalize.sh: Likewise.
10157         * modules/canonicalize-tests: Likewise.
10158
10159 2007-07-06  Jim Meyering  <jim@meyering.net>
10160
10161         * lib/getugroups.c (getugroups): Detect getgrent failure.
10162         Adjust comment to reflect reality: this function may return -1.
10163
10164 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
10165
10166         * build-aux/bootstrap (TP_URL,get_translations): Update to use
10167         the new TP address.
10168         (usage): Fix typo
10169         (gnulib_mk): New variable.
10170
10171 2007-07-05  Jim Meyering  <jim@meyering.net>
10172
10173         Don't let endgrent clobber errno, no matter how improbable.
10174         * lib/getugroups.c (getugroups): Save and restore errno around
10175         endgrent call.
10176
10177         Close the group DB even when failing with 2^31 or more members.
10178         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
10179
10180 2007-07-04  Jim Meyering  <jim@meyering.net>
10181
10182         * lib/getugroups.h: New file.
10183         * lib/getugroups.c: Include "getugroups.h".
10184         Remove uses of "register" keyword.
10185         Move local variable, "cp", down into scope where used.
10186         Give "username" parameter the "const" attribute.
10187         * modules/getugroups (Files): Add lib/getugroups.h
10188
10189 2007-07-04  Karl Berry  <karl@gnu.org>
10190
10191         * MODULES.html.sh (func_all_modules): Complete rename of
10192         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
10193
10194 2007-07-02  Bruno Haible  <bruno@clisp.org>
10195
10196         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
10197         mode, when inttypes.h comes from gnulib.
10198         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
10199
10200 2007-07-02  Simon Josefsson  <simon@josefsson.org>
10201
10202         * NEWS: Mention lgpl module name change.
10203
10204         * modules/lgpl-2.1: Renamed from lgpl.
10205
10206         * NEWS: Mention gpl module name change.
10207
10208         * modules/gpl-3.0: New file, based on gpl-2.0.
10209
10210         * modules/gpl-2.0: Renamed from gpl.
10211
10212         * modules/gpl: Fix filename, doc/gpl.texi is now found at
10213         doc/gpl-2.0.texi.
10214
10215 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
10216
10217         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
10218         #define __STDC_LIMIT_MACROS temporarily while including
10219         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
10220         Problem reported by Joel E. Denny in
10221         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
10222
10223 2007-07-01  Bruno Haible  <bruno@clisp.org>
10224
10225         * lib/unistdio.h: New file.
10226         * lib/unistdio/u-asnprintf.h: New file.
10227         * lib/unistdio/u-asprintf.h: New file.
10228         * lib/unistdio/u-printf-args.c: New file.
10229         * lib/unistdio/u-printf-args.h: New file.
10230         * lib/unistdio/u-printf-parse.h: New file.
10231         * lib/unistdio/u-snprintf.h: New file.
10232         * lib/unistdio/u-sprintf.h: New file.
10233         * lib/unistdio/u-vasprintf.h: New file.
10234         * lib/unistdio/u-vsnprintf.h: New file.
10235         * lib/unistdio/u-vsprintf.h: New file.
10236         * lib/unistdio/ulc-asnprintf.c: New file.
10237         * lib/unistdio/ulc-asprintf.c: New file.
10238         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
10239         * lib/unistdio/ulc-printf-parse.c: New file.
10240         * lib/unistdio/ulc-snprintf.c: New file.
10241         * lib/unistdio/ulc-sprintf.c: New file.
10242         * lib/unistdio/ulc-vasnprintf.c: New file.
10243         * lib/unistdio/ulc-vasprintf.c: New file.
10244         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
10245         * lib/unistdio/ulc-vsnprintf.c: New file.
10246         * lib/unistdio/ulc-vsprintf.c: New file.
10247         * lib/unistdio/u8-asnprintf.c: New file.
10248         * lib/unistdio/u8-asprintf.c: New file.
10249         * lib/unistdio/u8-printf-parse.c: New file.
10250         * lib/unistdio/u8-snprintf.c: New file.
10251         * lib/unistdio/u8-sprintf.c: New file.
10252         * lib/unistdio/u8-vasnprintf.c: New file.
10253         * lib/unistdio/u8-vasprintf.c: New file.
10254         * lib/unistdio/u8-vsnprintf.c: New file.
10255         * lib/unistdio/u8-vsprintf.c: New file.
10256         * lib/unistdio/u8-u8-asnprintf.c: New file.
10257         * lib/unistdio/u8-u8-asprintf.c: New file.
10258         * lib/unistdio/u8-u8-snprintf.c: New file.
10259         * lib/unistdio/u8-u8-sprintf.c: New file.
10260         * lib/unistdio/u8-u8-vasnprintf.c: New file.
10261         * lib/unistdio/u8-u8-vasprintf.c: New file.
10262         * lib/unistdio/u8-u8-vsnprintf.c: New file.
10263         * lib/unistdio/u8-u8-vsprintf.c: New file.
10264         * lib/unistdio/u16-asnprintf.c: New file.
10265         * lib/unistdio/u16-asprintf.c: New file.
10266         * lib/unistdio/u16-printf-parse.c: New file.
10267         * lib/unistdio/u16-snprintf.c: New file.
10268         * lib/unistdio/u16-sprintf.c: New file.
10269         * lib/unistdio/u16-vasnprintf.c: New file.
10270         * lib/unistdio/u16-vasprintf.c: New file.
10271         * lib/unistdio/u16-vsnprintf.c: New file.
10272         * lib/unistdio/u16-vsprintf.c: New file.
10273         * lib/unistdio/u16-u16-asnprintf.c: New file.
10274         * lib/unistdio/u16-u16-asprintf.c: New file.
10275         * lib/unistdio/u16-u16-snprintf.c: New file.
10276         * lib/unistdio/u16-u16-sprintf.c: New file.
10277         * lib/unistdio/u16-u16-vasnprintf.c: New file.
10278         * lib/unistdio/u16-u16-vasprintf.c: New file.
10279         * lib/unistdio/u16-u16-vsnprintf.c: New file.
10280         * lib/unistdio/u16-u16-vsprintf.c: New file.
10281         * lib/unistdio/u32-asnprintf.c: New file.
10282         * lib/unistdio/u32-asprintf.c: New file.
10283         * lib/unistdio/u32-printf-parse.c: New file.
10284         * lib/unistdio/u32-snprintf.c: New file.
10285         * lib/unistdio/u32-sprintf.c: New file.
10286         * lib/unistdio/u32-vasnprintf.c: New file.
10287         * lib/unistdio/u32-vasprintf.c: New file.
10288         * lib/unistdio/u32-vsnprintf.c: New file.
10289         * lib/unistdio/u32-vsprintf.c: New file.
10290         * lib/unistdio/u32-u32-asnprintf.c: New file.
10291         * lib/unistdio/u32-u32-asprintf.c: New file.
10292         * lib/unistdio/u32-u32-snprintf.c: New file.
10293         * lib/unistdio/u32-u32-sprintf.c: New file.
10294         * lib/unistdio/u32-u32-vasnprintf.c: New file.
10295         * lib/unistdio/u32-u32-vasprintf.c: New file.
10296         * lib/unistdio/u32-u32-vsnprintf.c: New file.
10297         * lib/unistdio/u32-u32-vsprintf.c: New file.
10298         * tests/unistdio/test-ulc-asnprintf1.c: New file.
10299         * tests/unistdio/test-ulc-asnprintf1.h: New file.
10300         * tests/unistdio/test-ulc-printf1.h: New file.
10301         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
10302         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
10303         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
10304         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
10305         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
10306         * tests/unistdio/test-ulc-vasprintf1.c: New file.
10307         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
10308         * tests/unistdio/test-ulc-vsprintf1.c: New file.
10309         * tests/unistdio/test-u8-asnprintf1.c: New file.
10310         * tests/unistdio/test-u8-asnprintf1.h: New file.
10311         * tests/unistdio/test-u8-printf1.h: New file.
10312         * tests/unistdio/test-u8-vasnprintf1.c: New file.
10313         * tests/unistdio/test-u8-vasnprintf2.c: New file.
10314         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
10315         * tests/unistdio/test-u8-vasnprintf3.c: New file.
10316         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
10317         * tests/unistdio/test-u8-vasprintf1.c: New file.
10318         * tests/unistdio/test-u8-vsnprintf1.c: New file.
10319         * tests/unistdio/test-u8-vsprintf1.c: New file.
10320         * tests/unistdio/test-u16-asnprintf1.c: New file.
10321         * tests/unistdio/test-u16-asnprintf1.h: New file.
10322         * tests/unistdio/test-u16-printf1.h: New file.
10323         * tests/unistdio/test-u16-vasnprintf1.c: New file.
10324         * tests/unistdio/test-u16-vasnprintf2.c: New file.
10325         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
10326         * tests/unistdio/test-u16-vasnprintf3.c: New file.
10327         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
10328         * tests/unistdio/test-u16-vasprintf1.c: New file.
10329         * tests/unistdio/test-u16-vsnprintf1.c: New file.
10330         * tests/unistdio/test-u16-vsprintf1.c: New file.
10331         * tests/unistdio/test-u32-asnprintf1.c: New file.
10332         * tests/unistdio/test-u32-asnprintf1.h: New file.
10333         * tests/unistdio/test-u32-printf1.h: New file.
10334         * tests/unistdio/test-u32-vasnprintf1.c: New file.
10335         * tests/unistdio/test-u32-vasnprintf2.c: New file.
10336         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
10337         * tests/unistdio/test-u32-vasnprintf3.c: New file.
10338         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
10339         * tests/unistdio/test-u32-vasprintf1.c: New file.
10340         * tests/unistdio/test-u32-vsnprintf1.c: New file.
10341         * tests/unistdio/test-u32-vsprintf1.c: New file.
10342         * modules/unistdio/base: New file.
10343         * modules/unistdio/u-printf-args: New file.
10344         * modules/unistdio/ulc-asnprintf: New file.
10345         * modules/unistdio/ulc-asprintf: New file.
10346         * modules/unistdio/ulc-fprintf: New file.
10347         * modules/unistdio/ulc-printf-parse: New file.
10348         * modules/unistdio/ulc-snprintf: New file.
10349         * modules/unistdio/ulc-sprintf: New file.
10350         * modules/unistdio/ulc-vasnprintf: New file.
10351         * modules/unistdio/ulc-vasprintf: New file.
10352         * modules/unistdio/ulc-vfprintf: New file.
10353         * modules/unistdio/ulc-vsnprintf: New file.
10354         * modules/unistdio/ulc-vsprintf: New file.
10355         * modules/unistdio/u8-asnprintf: New file.
10356         * modules/unistdio/u8-asprintf: New file.
10357         * modules/unistdio/u8-printf-parse: New file.
10358         * modules/unistdio/u8-snprintf: New file.
10359         * modules/unistdio/u8-sprintf: New file.
10360         * modules/unistdio/u8-vasnprintf: New file.
10361         * modules/unistdio/u8-vasprintf: New file.
10362         * modules/unistdio/u8-vsnprintf: New file.
10363         * modules/unistdio/u8-vsprintf: New file.
10364         * modules/unistdio/u8-u8-asnprintf: New file.
10365         * modules/unistdio/u8-u8-asprintf: New file.
10366         * modules/unistdio/u8-u8-snprintf: New file.
10367         * modules/unistdio/u8-u8-sprintf: New file.
10368         * modules/unistdio/u8-u8-vasnprintf: New file.
10369         * modules/unistdio/u8-u8-vasprintf: New file.
10370         * modules/unistdio/u8-u8-vsnprintf: New file.
10371         * modules/unistdio/u8-u8-vsprintf: New file.
10372         * modules/unistdio/u16-asnprintf: New file.
10373         * modules/unistdio/u16-asprintf: New file.
10374         * modules/unistdio/u16-printf-parse: New file.
10375         * modules/unistdio/u16-snprintf: New file.
10376         * modules/unistdio/u16-sprintf: New file.
10377         * modules/unistdio/u16-vasnprintf: New file.
10378         * modules/unistdio/u16-vasprintf: New file.
10379         * modules/unistdio/u16-vsnprintf: New file.
10380         * modules/unistdio/u16-vsprintf: New file.
10381         * modules/unistdio/u16-u16-asnprintf: New file.
10382         * modules/unistdio/u16-u16-asprintf: New file.
10383         * modules/unistdio/u16-u16-snprintf: New file.
10384         * modules/unistdio/u16-u16-sprintf: New file.
10385         * modules/unistdio/u16-u16-vasnprintf: New file.
10386         * modules/unistdio/u16-u16-vasprintf: New file.
10387         * modules/unistdio/u16-u16-vsnprintf: New file.
10388         * modules/unistdio/u16-u16-vsprintf: New file.
10389         * modules/unistdio/u32-asnprintf: New file.
10390         * modules/unistdio/u32-asprintf: New file.
10391         * modules/unistdio/u32-printf-parse: New file.
10392         * modules/unistdio/u32-snprintf: New file.
10393         * modules/unistdio/u32-sprintf: New file.
10394         * modules/unistdio/u32-vasnprintf: New file.
10395         * modules/unistdio/u32-vasprintf: New file.
10396         * modules/unistdio/u32-vsnprintf: New file.
10397         * modules/unistdio/u32-vsprintf: New file.
10398         * modules/unistdio/u32-u32-asnprintf: New file.
10399         * modules/unistdio/u32-u32-asprintf: New file.
10400         * modules/unistdio/u32-u32-snprintf: New file.
10401         * modules/unistdio/u32-u32-sprintf: New file.
10402         * modules/unistdio/u32-u32-vasnprintf: New file.
10403         * modules/unistdio/u32-u32-vasprintf: New file.
10404         * modules/unistdio/u32-u32-vsnprintf: New file.
10405         * modules/unistdio/u32-u32-vsprintf: New file.
10406         * modules/unistdio/ulc-asnprintf-tests: New file.
10407         * modules/unistdio/ulc-vasnprintf-tests: New file.
10408         * modules/unistdio/ulc-vasprintf-tests: New file.
10409         * modules/unistdio/ulc-vsnprintf-tests: New file.
10410         * modules/unistdio/ulc-vsprintf-tests: New file.
10411         * modules/unistdio/u8-asnprintf-tests: New file.
10412         * modules/unistdio/u8-vasnprintf-tests: New file.
10413         * modules/unistdio/u8-vasprintf-tests: New file.
10414         * modules/unistdio/u8-vsnprintf-tests: New file.
10415         * modules/unistdio/u8-vsprintf-tests: New file.
10416         * modules/unistdio/u16-asnprintf-tests: New file.
10417         * modules/unistdio/u16-vasnprintf-tests: New file.
10418         * modules/unistdio/u16-vasprintf-tests: New file.
10419         * modules/unistdio/u16-vsnprintf-tests: New file.
10420         * modules/unistdio/u16-vsprintf-tests: New file.
10421         * modules/unistdio/u32-asnprintf-tests: New file.
10422         * modules/unistdio/u32-vasnprintf-tests: New file.
10423         * modules/unistdio/u32-vasprintf-tests: New file.
10424         * modules/unistdio/u32-vsnprintf-tests: New file.
10425         * modules/unistdio/u32-vsprintf-tests: New file.
10426         * MODULES.html.sh (Unicode string functions): Add the new modules.
10427
10428 2007-07-01  Bruno Haible  <bruno@clisp.org>
10429
10430         * lib/sprintf.c (sprintf): Limit the available length estimation,
10431         to avoid address wraparound.
10432         * lib/vsprintf.c (vsprintf): Likewise.
10433         * modules/sprintf-posix (Dependencies): Add stdint.
10434         * modules/vsprintf-posix (Dependencies): Likewise.
10435
10436 2007-07-01  Bruno Haible  <bruno@clisp.org>
10437
10438         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
10439         Windows PATH as well. Conservative double-quoting. Comments.
10440
10441 2007-07-01  Bruno Haible  <bruno@clisp.org>
10442             Eric Blake  <ebb9@byu.net>
10443             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10444
10445         * gnulib-tool (self_abspathname): Fix algorithm to cope with
10446         empty components in $PATH, denoting '.'.
10447
10448 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10449
10450         * gnulib-tool: Fix indentation.
10451         (func_create_megatestdir): Likewise.
10452         Report by Bruno Haible.
10453
10454 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10455
10456         Sync from Automake.
10457         * build-aux/gnupload: Fix shell portability issues with for loops.
10458         Report by Karl Berry.
10459
10460 2007-06-29  Simon Josefsson  <simon@josefsson.org>
10461
10462         * build-aux/maint.mk (POURL): Use translationproject.org.
10463
10464 2007-06-27  Simon Josefsson  <simon@josefsson.org>
10465             Bruno Haible  <bruno@clisp.org>
10466
10467         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
10468         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
10469         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
10470         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
10471         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
10472
10473 2007-06-27  Bruno Haible  <bruno@clisp.org>
10474
10475         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
10476         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
10477
10478 2007-06-26  Karl Berry  <karl@gnu.org>
10479
10480         * MODULES.html.sh: remove xreadlink-with-size.
10481
10482 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
10483
10484         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
10485         method that I hope also handles the double-include problem noted
10486         by Bruno Haible in
10487         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
10488
10489 2007-06-23  Bruno Haible  <bruno@clisp.org>
10490
10491         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
10492         Don't let the 'mostlyclean' target fail if the last subdirectory could
10493         not be removed.
10494         Reported by Karl Berry.
10495
10496 2007-06-23  Bruno Haible  <bruno@clisp.org>
10497
10498         * gnulib-tool (echo): Add a speedier workaround for ksh.
10499         * tests/test-echo.sh: Likewise.
10500
10501 2007-06-23  Bruno Haible  <bruno@clisp.org>
10502
10503         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
10504         * tests/test-echo.sh: Likewise.
10505
10506 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10507
10508         * gnulib-tool (IFS): Initialize early, so we don't set it to
10509         empty later.
10510         (self_abspathname): Rewrite algorithm to set it, reindent.
10511         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
10512         (func_create_megatestdir): Merge some sed scripts.
10513
10514 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
10515
10516         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
10517         exposed by Sun Studio 11 cc on Solaris 8.
10518
10519 2007-06-22  Bruno Haible  <bruno@clisp.org>
10520
10521         * gnulib-tool (echo): Ensure the echo primitive does not interpret
10522         backslashes.
10523         * tests/test-echo.sh: New file.
10524
10525 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10526
10527         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
10528         simplify `sed_replace_build_aux' scripts, they are portable but
10529         echoing them with `echo' is not.
10530         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
10531
10532 2007-06-21  Karl Berry  <karl@gnu.org>
10533
10534         * config/srclist.txt: guess we can't handle the licenses via
10535         srclist at the moment.
10536
10537 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
10538
10539         * MODULES.html.sh: Add include_next.
10540         * modules/include_next: New file.
10541
10542 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
10543
10544         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
10545         INCLUDE_NEXT.
10546         (gl_CHECK_NEXT_HEADERS): New macro.
10547         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
10548         the obsolescent gl_ABSOLUTE_HEADER.
10549         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
10550         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
10551         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
10552         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
10553         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
10554         * m4/math_h.m4 (gl_MATH_H): Likewise.
10555         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
10556         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
10557         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
10558         * m4/stdint.m4 (gl_STDINT_H): Likewise.
10559         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
10560         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
10561         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
10562         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
10563         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
10564         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
10565         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
10566         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
10567         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
10568         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
10569         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
10570         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
10571         * m4/inttypes.m4 (gl_INTTYPES_H): Define
10572         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
10573         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
10574         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
10575         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
10576         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
10577         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
10578         * lib/float_.h: Likewise.
10579         * lib/inttypes_.h: Likewise.
10580         * lib/math_.h: Likewise.
10581         * lib/search_.h: Likewise.
10582         * lib/signal_.h: Likewise.
10583         * lib/stdint_.h: Likewise.
10584         * lib/stdio_.h: Likewise.
10585         * lib/stdlib_.h: Likewise.
10586         * lib/string_.h: Likewise.
10587         * lib/sys_stat_.h: Likewise.
10588         * lib/sys_time_.h: Likewise.
10589         * lib/time_.h: Likewise.
10590         * lib/unistd_.h: Likewise.
10591         * lib/wchar_.h: Likewise.
10592         * lib/wctype_.h: Likewise.
10593         * lib/dirent_.h: Likewise.
10594         * lib/iconv_.h: Likewise.
10595         * lib/locale_.h: Likewise.
10596         * lib/netinet_in_.h: Likewise.
10597         * lib/sys_select_.h: Likewise.
10598         * lib/sys_socket_.h: Likewise.
10599         * lib/sysexits_.h: Likewise.
10600         * modules/fcntl (Depends-on): Depend on include_next, not
10601         absolute_header.
10602         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
10603         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
10604         * modules/fchdir: Likewise.
10605         * modules/float: Likewise.
10606         * modules/iconv_open: Likewise.
10607         * modules/inttypes: Likewise.
10608         * modules/locale: Likewise.
10609         * modules/math: Likewise.
10610         * modules/netinet_in: Likewise.
10611         * modules/search: Likewise.
10612         * modules/signal: Likewise.
10613         * modules/stdint: Likewise.
10614         * modules/stdio: Likewise.
10615         * modules/stdlib: Likewise.
10616         * modules/string: Likewise.
10617         * modules/sys_select: Likewise.
10618         * modules/sys_socket: Likewise.
10619         * modules/sys_stat: Likewise.
10620         * modules/sys_time: Likewise.
10621         * modules/sysexits: Likewise.
10622         * modules/time: Likewise.
10623         * modules/unistd: Likewise.
10624         * modules/wchar: Likewise.
10625         * modules/wctype: Likewise.
10626         * modules/sys_stat: Change maintainer to "all".
10627         * modules/unistd: Likewise.
10628
10629 2007-06-20  Karl Berry  <karl@gnu.org>
10630
10631         * config/srclist.txt: track www changes in license files.
10632
10633 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
10634
10635         * build-aux/bootstrap: Remove stray dot.
10636         Make sure build_aux settings are honored when linking
10637         gnulib_extra_files.
10638
10639 2007-06-19  Eric Blake  <ebb9@byu.net>
10640
10641         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
10642         Allow compilation on cygwin.
10643
10644 2007-06-19  Jim Meyering  <jim@meyering.net>
10645
10646         xreadlink-with-size: Remove module.  No longer used.
10647         Ex-callers now use xreadlink or mreadlink-with-size.
10648         * modules/xreadlink-with-size: Remove module.
10649         * lib/xreadlink-with-size.c: Remove file.
10650         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
10651         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
10652         just before the function definition *is* accurate.
10653
10654         Eliminate one way canonicalize_filename_mode could exit.
10655         * lib/canonicalize.c (canonicalize_filename_mode):
10656         Use mreadlink_with_size, not xreadlink_with_size.
10657
10658 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
10659
10660         Detect porting problems to FreeBSD/arm, which has time_t wider than
10661         long int.  Original problem reported for GNU diff by Xin Li in
10662         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
10663         * modules/getdate (Depends-on): Add intprops, verify.
10664         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
10665         is an integer type no wider than long int.
10666
10667 2007-06-18  Jim Meyering  <jim@meyering.net>
10668
10669         New module: mreadlink-with-size.
10670         * MODULES.html.sh: Add mreadlink-with-size.
10671         * modules/mreadlink-with-size: New module
10672         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
10673         not xreadlink-with-size.
10674         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
10675
10676 2007-06-16  Bruno Haible  <bruno@clisp.org>
10677
10678         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
10679         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
10680         Reported by Gary V. Vaughan <gary@gnu.org>.
10681
10682 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
10683
10684         Revamp lchown so that it lives in unistd.h where it belongs.
10685         * lib/lchown.h: Remove.
10686         * lib/dirchownmod.c: Don't include lib/lchown.h.
10687         * lib/fchownat.c: Likewise.
10688         * lib/openat.c: Likewise.
10689         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
10690         does not follow symlinks.
10691         (EOPNOTSUPP): Define if not defined.
10692         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
10693         is defined to 0.
10694         (lchown): New decl.
10695         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
10696         Do not check for lchown decl.
10697         Set REPLACE_LCHOWN.
10698         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
10699         REPLACE_LCHOWN.
10700         * modules/chown: Make it clear it follows symlinks.
10701         * modules/lchown: Make it clear it doesn't follow symlinks.
10702         (Files): Remove lib/lchown.h
10703         (Depends-on): Add unistd.
10704         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
10705         (Include): Include <unistd.h>, not "lchown.h".
10706         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
10707         REPLACE_LCHOWN.
10708
10709 2007-06-15  Jim Meyering  <jim@meyering.net>
10710
10711         Change license (GPL to LGPL) of fsusage and dependents.
10712         * modules/fsusage (License): Change to LGPL.
10713         * modules/full-read (License): Likewise.
10714         * modules/full-write (License): Likewise.
10715         * modules/safe-read (License): Likewise.
10716         * modules/safe-write (License): Likewise.
10717
10718 2007-06-14  Ben Pfaff  <blp@gnu.org>
10719
10720         Missing part of allocsa -> malloca transition.
10721         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
10722         gl_MALLOCA.
10723
10724 2007-06-12  Bruno Haible  <bruno@clisp.org>
10725
10726         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
10727         to ia64, x86_64, i386.
10728         Reported by Eric Blake.
10729
10730 2007-06-12  Bruno Haible  <bruno@clisp.org>
10731
10732         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
10733         cross-compiling to x86_64.
10734
10735 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
10736
10737         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
10738         glitch reported by Ralf Wildenhues in
10739         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
10740
10741         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
10742         Vin Shelton.
10743
10744 2007-06-11  Bruno Haible  <bruno@clisp.org>
10745
10746         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
10747         replacement string.
10748         Reported by Eric Blake.
10749
10750 2007-06-10  Bruno Haible  <bruno@clisp.org>
10751
10752         Prepare vasnprintf code for use with Unicode strings.
10753         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
10754         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
10755         TYPE_U32_STRING.
10756         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
10757         a_u32_string variants.
10758         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
10759         * lib/printf-args.c: Don't include config.h and the specification
10760         header if PRINTF_FETCHARGS is already defined.
10761         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
10762         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
10763         TYPE_U16_STRING, TYPE_U32_STRING.
10764         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
10765         u16_directive, u16_directives, u32_directive, u32_directives): New
10766         types.
10767         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
10768         New declarations.
10769         * lib/printf-parse.c: Don't include config.h and the specification
10770         header if PRINTF_PARSE is already defined. Eliminate the set of
10771         parameters for WIDE_CHAR_VERSION; the user of this file must provide
10772         them now. Include c-ctype.h.
10773         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
10774         directive and CHAR_T_ONLY_ASCII.
10775         * lib/vasnprintf.c: Don't include config.h and the specification header
10776         if VASNPRINTF is already defined.
10777         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
10778         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
10779         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
10780         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
10781         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
10782         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
10783         code accordingly.
10784         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
10785         pad_ourselves also in this case, with the 'c' and 's' directives, and
10786         with a different notion of "width".
10787         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
10788
10789 2007-06-10  Bruno Haible  <bruno@clisp.org>
10790
10791         * modules/unistr/u32-mbsnlen: New file.
10792         * lib/unistr/u32-mbsnlen.c: New file.
10793
10794         * modules/unistr/u16-mbsnlen: New file.
10795         * lib/unistr/u16-mbsnlen.c: New file.
10796
10797         * modules/unistr/u8-mbsnlen: New file.
10798         * lib/unistr/u8-mbsnlen.c: New file.
10799
10800         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
10801         declarations.
10802
10803 2007-06-10  Bruno Haible  <bruno@clisp.org>
10804
10805         * lib/string_.h (mbsnlen): New declaration.
10806         * lib/mbsnlen.c: New file.
10807         * m4/mbsnlen.m4: New file.
10808         * modules/mbsnlen: New file.
10809         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
10810         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
10811         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
10812
10813 2007-06-10  Bruno Haible  <bruno@clisp.org>
10814
10815         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
10816
10817 2007-06-10  Bruno Haible  <bruno@clisp.org>
10818
10819         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
10820         * lib/mbuiter.h: Likewise.
10821
10822 2007-06-10  Bruno Haible  <bruno@clisp.org>
10823
10824         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
10825         declaration.
10826
10827 2007-06-10  Karl Berry  <karl@gnu.org>
10828
10829         * config/srclist.txt: remove gettext entries, Bruno prefers
10830         to update individually.
10831
10832 2007-06-10  Bruno Haible  <bruno@clisp.org>
10833
10834         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
10835         'maxlen'. Ensure only length + width bytes are allocated, not
10836         length + 1 + width.
10837
10838 2007-06-09  Bruno Haible  <bruno@clisp.org>
10839
10840         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
10841         (CHAR_T): Remove macro.
10842         (VASNPRINTF): Update.
10843
10844 2007-06-09  Bruno Haible  <bruno@clisp.org>
10845
10846         * MODULES.html.sh (Unicode string functions): Add the new modules.
10847
10848         * modules/uniconv/u32-conv-to-enc: New file.
10849         * lib/uniconv/u32-conv-to-enc.c: New file.
10850         * modules/uniconv/u32-conv-to-enc-tests: New file.
10851         * tests/uniconv/test-u32-conv-to-enc.c: New file.
10852
10853         * modules/uniconv/u16-conv-to-enc: New file.
10854         * lib/uniconv/u16-conv-to-enc.c: New file.
10855         * lib/uniconv/u-conv-to-enc.h: New file.
10856         * modules/uniconv/u16-conv-to-enc-tests: New file.
10857         * tests/uniconv/test-u16-conv-to-enc.c: New file.
10858
10859         * modules/uniconv/u8-conv-to-enc: New file.
10860         * lib/uniconv/u8-conv-to-enc.c: New file.
10861         * modules/uniconv/u8-conv-to-enc-tests: New file.
10862         * tests/uniconv/test-u8-conv-to-enc.c: New file.
10863
10864         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
10865         u32_conv_to_encoding): New declarations.
10866
10867 2007-06-09  Bruno Haible  <bruno@clisp.org>
10868
10869         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
10870
10871 2007-06-09  Bruno Haible  <bruno@clisp.org>
10872
10873         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
10874         * modules/malloca: Renamed from modules/allocsa, updated.
10875         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
10876         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
10877         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
10878         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
10879         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
10880         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
10881         * modules/xmalloca: Renamed from modules/xallocsa, updated.
10882         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
10883         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
10884         * modules/c-strcasestr (Depends-on): Update.
10885         * lib/c-strcasestr.c: Update.
10886         * modules/c-strstr (Depends-on): Update.
10887         * lib/c-strstr.c: Update.
10888         * modules/canonicalize-lgpl (Depends-on): Update.
10889         * lib/canonicalize-lgpl.c: Update.
10890         * modules/clean-temp (Depends-on): Update.
10891         * lib/clean-temp.c: Update.
10892         * modules/csharpcomp (Depends-on): Update.
10893         * lib/csharpcomp.c: Update.
10894         * modules/csharpexec (Depends-on): Update.
10895         * lib/csharpexec.c: Update.
10896         * modules/javacomp (Depends-on): Update.
10897         * lib/javacomp.c: Update.
10898         * modules/javaexec (Depends-on): Update.
10899         * lib/javaexec.c: Update.
10900         * modules/mbscasestr (Depends-on): Update.
10901         * lib/mbscasestr.c: Update.
10902         * modules/mbsstr (Depends-on): Update.
10903         * lib/mbsstr.c: Update.
10904         * modules/setenv (Depends-on): Update.
10905         * lib/setenv.c: Update.
10906         * modules/strcasestr (Depends-on): Update.
10907         * lib/strcasestr.c: Update.
10908         * modules/striconveha (Depends-on): Update.
10909         * lib/striconveha.c: Update.
10910         * modules/relocatable-prog-wrapper (Files): Update.
10911         * lib/relocwrapper.c: Update.
10912         * build-aux/install-reloc: Update.
10913         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
10914
10915 2007-06-08  Bruno Haible  <bruno@clisp.org>
10916
10917         Port to uClibc.
10918         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
10919         * lib/fpurge.c (fpurge): Likewise.
10920         * lib/freading.c (freading): Likewise.
10921         * lib/fseeko.c (rpl_fseeko): Likewise.
10922         * lib/fseterr.c (fseterr): Likewise.
10923         * lib/fwriting.c (fwriting): Likewise.
10924         * tests/test-fflush.c (main): Avoid a failure on uClibc.
10925
10926 2007-06-08  Bruno Haible  <bruno@clisp.org>
10927
10928         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
10929         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
10930         * modules/gettext (Files): Add m4/intlmacosx.m4.
10931
10932 2007-06-07  Bruno Haible  <bruno@clisp.org>
10933
10934         * modules/localename-tests: New file.
10935         * tests/test-localename.c: New file.
10936
10937         New module 'localename'.
10938         * lib/localename.h: New file.
10939         * lib/localename.c: New file, from GNU gettext.
10940         * m4/localename.m4: New file.
10941         * modules/localename: New file.
10942
10943 2007-06-07  Bruno Haible  <bruno@clisp.org>
10944
10945         Work around the lack of <wchar.h> on some builds of uClibc.
10946         * doc/headers/wchar.texi: Update.
10947         * lib/wchar_.h: Include <wchar.h> only if it exists.
10948         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
10949         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
10950         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
10951         doesn't exist.
10952         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
10953         * modules/mbfile (Depends-on): Add wchar.
10954         * modules/mbiter (Depends-on): Likewise.
10955         * modules/mbuiter (Depends-on): Likewise.
10956         Reported by Simon Josefsson.
10957
10958 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
10959
10960         Work around problem reported by Steven M. Schweda in
10961         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
10962         Tru64 5.1B with the Compaq compiler environment installed declares
10963         an 'isblank' function but does not define it in the C library.
10964         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
10965         * lib/regex_internal.h (isblank): Likewise.
10966         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
10967         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
10968
10969 2007-06-05  Bruno Haible  <bruno@clisp.org>
10970
10971         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
10972         ia64.
10973         * modules/printf-safe: New file.
10974         * modules/fprintf-posix (Depends-on): Add printf-safe.
10975         * modules/printf-posix (Depends-on): Likewise.
10976         * modules/snprintf-posix (Depends-on): Likewise.
10977         * modules/sprintf-posix (Depends-on): Likewise.
10978         * modules/vasnprintf-posix (Depends-on): Likewise.
10979         * modules/vasprintf-posix (Depends-on): Likewise.
10980         * modules/vfprintf-posix (Depends-on): Likewise.
10981         * modules/vprintf-posix (Depends-on): Likewise.
10982         * modules/vsnprintf-posix (Depends-on): Likewise.
10983         * modules/vsprintf-posix (Depends-on): Likewise.
10984         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
10985         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
10986         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
10987         "no" on i386, x86_64, ia64.
10988         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
10989         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
10990         on i386, x86_64, ia64.
10991         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
10992         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
10993         on i386, x86_64, ia64.
10994         * tests/test-vasnprintf-posix.c: Include float.h.
10995         (LDBL80_WORDS): New macro.
10996         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
10997         on i386, x86_64, ia64.
10998         * tests/test-vasprintf-posix.c: Include float.h.
10999         (LDBL80_WORDS): New macro.
11000         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
11001         on i386, x86_64, ia64.
11002         * tests/test-snprintf-posix.c: Include float.h.
11003         * tests/test-sprintf-posix.c: Likewise.
11004         * tests/test-vsnprintf-posix.c: Likewise.
11005         * tests/test-vsprintf-posix.c: Likewise.
11006
11007 2007-06-05  Bruno Haible  <bruno@clisp.org>
11008
11009         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
11010         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
11011         non-IEEE numbers on i386, x86_64, ia64.
11012         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
11013         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
11014         * tests/test-isnanl.h: Include float.h.
11015         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
11016
11017 2007-06-05  Bruno Haible  <bruno@clisp.org>
11018
11019         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
11020         also the %a / %A. Handle the %a / %A code before this extra handling.
11021
11022 2007-06-05  Bruno Haible  <bruno@clisp.org>
11023
11024         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
11025         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
11026
11027 2007-06-05  Bruno Haible  <bruno@clisp.org>
11028
11029         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
11030         typo in variable name.
11031
11032 2007-06-05  Eric Blake  <ebb9@byu.net>
11033
11034         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
11035         Reported by Simon Josefsson.
11036
11037 2007-06-04  Bruno Haible  <bruno@clisp.org>
11038
11039         Avoid test failures on some PowerPC platforms.
11040         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
11041         Define differently for PowerPC.
11042         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
11043         Reported by Gary V. Vaughan <gary@gnu.org>.
11044
11045 2007-06-02  Bruno Haible  <bruno@clisp.org>
11046
11047         Fix test-stdint failure on FreeBSD/ia64.
11048         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
11049         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
11050         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
11051         * doc/headers/stdint.texi: Update.
11052
11053 2007-06-01  Bruno Haible  <bruno@clisp.org>
11054
11055         * tests/test-binary-io.c (main): Pass a third argument to open().
11056         Reported by Gary V. Vaughan <gary@gnu.org>.
11057
11058 2007-06-01  Bruno Haible  <bruno@clisp.org>
11059
11060         * doc/functions/frexpl.texi: Update for mingw.
11061
11062 2007-06-01  Bruno Haible  <bruno@clisp.org>
11063
11064         * tests/test-lseek.c (main): Disable test of errno for invalid third
11065         argument.
11066         * doc/functions/lseek.texi: Update.
11067         Reported by Gary V. Vaughan <gary@gnu.org>.
11068
11069 2007-05-28  Bruno Haible  <bruno@clisp.org>
11070
11071         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
11072
11073 2007-05-31  Eric Blake  <ebb9@byu.net>
11074
11075         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
11076         cross compiling.
11077
11078 2007-05-30  Eric Blake  <ebb9@byu.net>
11079         and Bruno Haible  <bruno@clisp.org>
11080
11081         Work around mingw test failures exposed by m4-1.4.9b.
11082         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
11083         * tests/test-unistd.c: Disable uid_t and git_t tests for the
11084         moment.
11085
11086 2007-05-30  Bruno Haible  <bruno@clisp.org>
11087
11088         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
11089         assuming that they are closed. Needed on HP-UX 11.
11090
11091 2007-05-29  Bruno Haible  <bruno@clisp.org>
11092
11093         Fix a problem with #include_next.
11094         * lib/dirent_.h: Split the double-inclusion guard.
11095         * lib/fcntl_.h: Likewise.
11096         * lib/float_.h: Likewise.
11097         * lib/iconv_.h: Likewise.
11098         * lib/inttypes_.h: Likewise.
11099         * lib/locale_.h: Likewise.
11100         * lib/math_.h: Likewise.
11101         * lib/netinet_in_.h: Likewise.
11102         * lib/search_.h: Likewise.
11103         * lib/signal_.h: Likewise.
11104         * lib/stdint_.h: Likewise.
11105         * lib/stdio_.h: Likewise.
11106         * lib/stdlib_.h: Likewise.
11107         * lib/string_.h: Likewise.
11108         * lib/sys_select_.h: Likewise.
11109         * lib/sys_socket_.h: Likewise.
11110         * lib/sys_stat_.h: Likewise.
11111         * lib/sys_time_.h: Likewise.
11112         * lib/sysexits_.h: Likewise.
11113         * lib/time_.h: Likewise.
11114         * lib/unistd_.h: Likewise.
11115         * lib/wchar_.h: Likewise.
11116         * lib/wctype_.h: Likewise.
11117
11118 2007-05-29  Bruno Haible  <bruno@clisp.org>
11119
11120         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
11121         for the moment.
11122
11123 2007-05-29  Bruno Haible  <bruno@clisp.org>
11124
11125         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
11126         invocation.
11127         Reported by Eric Blake.
11128
11129 2007-05-29  Bruno Haible  <bruno@clisp.org>
11130
11131         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
11132         compiling case.
11133
11134 2007-05-29  Eric Blake  <ebb9@byu.net>
11135             Bruno Haible  <bruno@clisp.org>
11136
11137         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
11138         cross compiles.
11139
11140 2007-05-28  Eric Blake  <ebb9@byu.net>
11141
11142         * modules/closein-tests (test_closein_LDADD): Support test on
11143         cygwin with libtool.
11144
11145 2007-05-28  Bruno Haible  <bruno@clisp.org>
11146
11147         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
11148         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
11149         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
11150         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
11151         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
11152         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
11153         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
11154         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
11155         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
11156
11157 2007-05-28  Eric Blake  <ebb9@byu.net>
11158
11159         Unconditionally include <config.h> in unit tests.
11160         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
11161         * tests/test-allocsa.c, tests/test-arcfour.c,
11162         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
11163         tests/test-array_list.c, tests/test-array_oset.c,
11164         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
11165         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
11166         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
11167         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
11168         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
11169         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
11170         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
11171         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
11172         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
11173         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
11174         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
11175         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
11176         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
11177         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
11178         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
11179         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
11180         test-md5.c, test-memmem.c, test-printf-posix.c,
11181         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
11182         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
11183         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
11184         test-strcasestr.c, test-striconv.c, test-striconveh.c,
11185         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
11186         test-vasnprintf-posix2.c, test-vasnprintf.c,
11187         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
11188         test-vfprintf-posix.c, test-vprintf-posix.c,
11189         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
11190         test-xvasprintf.c: Likewise.
11191
11192 2007-05-28  Bruno Haible  <bruno@clisp.org>
11193
11194         * gnulib-tool (func_import): Remember the --with-tests command-line
11195         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
11196         Reported by Eric Blake.
11197
11198 2007-05-28  Bruno Haible  <bruno@clisp.org>
11199
11200         * modules/ftell-tests: New file.
11201         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
11202         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
11203
11204         * lib/ftell.c: New file.
11205         * modules/ftell: New file.
11206         * m4/ftell.m4: New file.
11207         * doc/functions/ftell.texi: Update.
11208         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
11209         REPLACE_FTELL.
11210         * lib/stdio_.h (rpl_ftell): New declaration.
11211         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
11212         REPLACE_FTELL.
11213
11214 2007-05-28  Eric Blake  <ebb9@byu.net>
11215
11216         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
11217
11218 2007-05-28  Bruno Haible  <bruno@clisp.org>
11219
11220         * modules/fseek-tests: New file.
11221         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
11222         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
11223
11224         * lib/fseek.c: New file.
11225         * modules/fseek: New file.
11226         * m4/fseek.m4: New file.
11227         * doc/functions/fseek.texi: Update.
11228         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
11229         REPLACE_FSEEK.
11230         * lib/stdio_.h (rpl_fseek): New declaration.
11231         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
11232         REPLACE_FSEEK.
11233
11234 2007-05-28  Bruno Haible  <bruno@clisp.org>
11235
11236         * lib/stdio_.h (fflush): More comments.
11237
11238 2007-05-28  Bruno Haible  <bruno@clisp.org>
11239
11240         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
11241         runtime test.
11242
11243 2007-05-28  Eric Blake  <ebb9@byu.net>
11244
11245         Improve lseek module.
11246         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
11247         * lib/unistd_.h (lseek): Scale back link warning message.
11248         * tests/test-lseek.c: Beef up test.
11249         * tests/test-lseek.sh: Exercise more facets of lseek.
11250         Reported by Bruno Haible.
11251
11252 2007-05-28  Bruno Haible  <bruno@clisp.org>
11253
11254         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
11255         to define.
11256
11257 2007-05-27  Bruno Haible  <bruno@clisp.org>
11258
11259         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
11260
11261 2007-05-27  Bruno Haible  <bruno@clisp.org>
11262
11263         * modules/openmp: New file.
11264         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
11265         Noah Misch.
11266
11267 2007-05-26  Bruno Haible  <bruno@clisp.org>
11268
11269         * modules/chdir-long (Depends-on): Add fchdir.
11270         * modules/chdir-safer (Depends-on): Likewise.
11271         * modules/fts (Depends-on): Likewise.
11272         * modules/fts-lgpl (Depends-on): Likewise.
11273         * modules/openat (Depends-on): Likewise.
11274         * modules/savewd (Depends-on): Likewise.
11275
11276 2007-05-24  Eric Blake  <ebb9@byu.net>
11277
11278         Fix lseek on mingw.
11279         * modules/lseek: New module.
11280         * m4/lseek.m4: New file.
11281         * lib/lseek.c: New file.
11282         * modules/lseek-tests: New file.
11283         * tests/test-lseek.c: New file.
11284         * tests/test-lseek.sh: New file.
11285         * MODULES.html.sh: Document lseek module.
11286         * modules/fflush (Depends-on): Add lseek, fseeko.
11287         * modules/fseeko (Depends-on): Likewise.
11288         * modules/ftello (Depends-on): Likewise.
11289         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
11290         broken.
11291         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
11292         broken.
11293         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
11294         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
11295         * lib/ftello.c (rpl_ftello): Likewise.
11296         * tests/test-fseeko.c (main): Test this.
11297         * tests/test-fseeko.sh: Likewise.
11298         * tests/test-ftello.c (main): Likewise.
11299         * tests/test-ftello.sh: Likewise.
11300         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
11301         implies replacing fseek.
11302         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
11303         HAVE_FTELLO.
11304         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
11305         * modules/unistd (Makefile.am): Likewise.
11306         * lib/unistd_.h (lseek): Declare a replacement.
11307         * doc/functions/lseek.texi (lseek): Document this fix.
11308         * doc/functions/fseek.texi (fseek): Likewise.
11309         * doc/functions/ftell.texi (ftell): Likewise.
11310
11311 2007-05-24  Bruno Haible  <bruno@clisp.org>
11312
11313         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
11314         in the printed representation of a NaN.
11315         * tests/test-vasprintf-posix.c (test_function): Likewise.
11316         * tests/test-snprintf-posix.h (test_function): Likewise.
11317         * tests/test-sprintf-posix.h (test_function): Likewise.
11318         Reported by Eric Blake.
11319
11320 2007-05-23  Eric Blake  <ebb9@byu.net>
11321
11322         Fix fseeko/ftello on cygwin 1.5.24.
11323         * doc/functions/fseeko.texi (fseeko): Document the fix.
11324         * doc/functions/ftello.texi (ftello): Document the fix.
11325         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
11326         * doc/functions/stdout.text (stdout): New file.
11327         * doc/functions/stderr.text (stderr): New file.
11328         * doc/gnulib.texi (Function Substitutes): Use new files.
11329         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
11330         prior to 1.7.0.
11331         * tests/test-ftello.c (main): Likewise for ftello.
11332         * tests/test-fseeko.sh: New file.
11333         * tests/test-ftello.sh: New file.
11334         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
11335         with seekable stdin.
11336         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
11337         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
11338         (gl_REPLACE_FSEEKO): New macro.
11339         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
11340         * modules/fseeko (Files): Distribute fseeko.c.
11341         * modules/ftello (Files): Distribute ftello.c.
11342         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
11343         mode.
11344         * lib/ftello.c (rpl_ftello): New file.
11345         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
11346         fseeko, ftello.
11347         (gl_STDIN_LARGE_OFFSET): New macro.
11348         * modules/stdio (Makefile.am): Perform the replacement.
11349         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
11350
11351 2007-05-23  Bruno Haible  <bruno@clisp.org>
11352
11353         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
11354         GNULIB_POSIXCHECK is defined.
11355
11356 2007-05-21  Bruno Haible  <bruno@clisp.org>
11357
11358         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
11359         Check also the output for NaN arguments. When cross-compiling, guess
11360         no on IRIX.
11361         * lib/vasnprintf.c: Update comments.
11362         * tests/test-vasnprintf-posix.c (strisnan): New function.
11363         (test_function): Use it.
11364         * tests/test-vasprintf-posix.c (strisnan): New function.
11365         (test_function): Use it.
11366         * tests/test-snprintf-posix.h (strisnan): New function.
11367         (test_function): Use it.
11368         * tests/test-sprintf-posix.h (strisnan): New function.
11369         (test_function): Use it.
11370         Reported by Eric Blake.
11371
11372 2007-05-20  Bruno Haible  <bruno@clisp.org>
11373
11374         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
11375         numbers that fails on BeOS.
11376         * doc/functions/frexpl.texi: Update.
11377
11378 2007-05-20  Jim Meyering  <jim@meyering.net>
11379
11380         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
11381         forced upon us by glibc-2.6.
11382
11383 2007-05-20  Bruno Haible  <bruno@clisp.org>
11384
11385         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
11386         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
11387         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
11388         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
11389         NEED_PRINTF_INFINITE.
11390         (is_infinitel): New function.
11391         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
11392         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
11393         gl_PREREQ_VASNPRINTF_INFINITE.
11394         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
11395         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11396         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
11397         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
11398         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
11399         gl_PREREQ_VASNPRINTF_INFINITE.
11400         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
11401         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11402         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11403         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11404         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11405         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11406         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11407         * doc/functions/fprintf.texi: Update.
11408         * doc/functions/printf.texi: Update.
11409         * doc/functions/snprintf.texi: Update.
11410         * doc/functions/sprintf.texi: Update.
11411         * doc/functions/vfprintf.texi: Update.
11412         * doc/functions/vprintf.texi: Update.
11413         * doc/functions/vsnprintf.texi: Update.
11414         * doc/functions/vsprintf.texi: Update.
11415
11416 2007-05-20  Bruno Haible  <bruno@clisp.org>
11417
11418         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
11419         was not found in libc.
11420         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
11421
11422 2007-05-20  Bruno Haible  <bruno@clisp.org>
11423
11424         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
11425         printed as "-nan" instead of "nan".
11426         * tests/test-vasprintf-posix.c (test_function): Likewise.
11427         * tests/test-snprintf-posix.h (test_function): Likewise.
11428         * tests/test-sprintf-posix.h (test_function): Likewise.
11429         Needed for HP-UX 11.
11430
11431 2007-05-20  Jim Meyering  <jim@meyering.net>
11432
11433         Fix buggy test for the fchownat-deref bug.
11434         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
11435         symlink required for the run-test.  Without it, this test would
11436         always declare that fchownat doesn't work, and client code would
11437         unnecessarily use the replacement function with fixed libc.
11438         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
11439         Reported by Greg Schafer.
11440
11441 2007-05-19  Bruno Haible  <bruno@clisp.org>
11442
11443         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
11444         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
11445         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
11446         Needed for IRIX 6.5 and Solaris 2.5.1.
11447
11448 2007-05-19  Bruno Haible  <bruno@clisp.org>
11449
11450         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
11451         (test_function): Skip tests involving -0.0 on platforms where
11452         -0.0 = 0.0.
11453         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
11454         (test_function): Skip tests involving -0.0 on platforms where
11455         -0.0 = 0.0.
11456         * tests/test-snprintf-posix.h (have_minus_zero): New function.
11457         (test_function): Skip tests involving -0.0 on platforms where
11458         -0.0 = 0.0.
11459         * tests/test-sprintf-posix.h (have_minus_zero): New function.
11460         (test_function): Skip tests involving -0.0 on platforms where
11461         -0.0 = 0.0.
11462         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
11463         tests.
11464         * tests/test-printf-posix.h (test_function): Likewise.
11465         * tests/test-printf-posix.output: Remove all -0.0 related results.
11466         Needed for IRIX 6.5.
11467
11468 2007-05-19  Bruno Haible  <bruno@clisp.org>
11469
11470         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
11471         printed as "nan0x7fffffff" instead of "nan".
11472         * tests/test-vasprintf-posix.c (test_function): Likewise.
11473         * tests/test-snprintf-posix.h (test_function): Likewise.
11474         * tests/test-sprintf-posix.h (test_function): Likewise.
11475         * tests/test-fprintf-posix.h (NaN): Remove macro.
11476         (test_function): Remove all NaN related tests.
11477         * tests/test-printf-posix.h (NaN): Remove macro.
11478         (test_function): Remove all NaN related tests.
11479         * tests/test-printf-posix.output: Remove all NaN related results.
11480         Needed for IRIX 6.5.
11481
11482 2007-05-19  Bruno Haible  <bruno@clisp.org>
11483
11484         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
11485         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
11486
11487 2007-05-19  Bruno Haible  <bruno@clisp.org>
11488
11489         * lib/float_.h: New file.
11490         * m4/float_h.m4: New file.
11491         * modules/float: New file.
11492         * modules/isnanl (Dependencies): Add float.
11493         * modules/isnanl-nolibm (Dependencies): Likewise.
11494         * modules/mathl (Dependencies): Likewise.
11495         * modules/printf-frexpl (Dependencies): Likewise.
11496         * modules/signbit (Dependencies): Likewise.
11497         * modules/vasnprintf (Dependencies): Likewise.
11498         * doc/headers/float.texi: Update.
11499
11500 2007-05-19  Jim Meyering  <jim@meyering.net>
11501
11502         * lib/utimens.c (gl_futimens): Rename from futimens,
11503         now that glibc-2.6 declares futimens.
11504         * lib/utimens.h: Likewise.
11505
11506 2007-05-19  Bruno Haible  <bruno@clisp.org>
11507
11508         Avoid test failures on mingw.
11509         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
11510         * tests/test-printf-posix.sh: Likewise.
11511         * tests/test-vfprintf-posix.sh: Likewise.
11512         * tests/test-vprintf-posix.sh: Likewise.
11513
11514 2007-05-19  Bruno Haible  <bruno@clisp.org>
11515
11516         Fix *printf result for NaN, Inf, -0.0 on mingw.
11517         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
11518         * lib/vasnprintf.c: Include math.h and isnan.h.
11519         (is_infinite_or_zero): New function.
11520         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
11521         values in the %f, %F, %e, %E, %g, %G directives.
11522         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
11523         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11524         gl_PRINTF_INFINITE and test its result. Invoke
11525         gl_PREREQ_VASNPRINTF_INFINITE.
11526         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
11527         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11528         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11529         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11530         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11531         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11532         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11533         * doc/functions/fprintf.texi: Update.
11534         * doc/functions/printf.texi: Update.
11535         * doc/functions/snprintf.texi: Update.
11536         * doc/functions/sprintf.texi: Update.
11537         * doc/functions/vfprintf.texi: Update.
11538         * doc/functions/vprintf.texi: Update.
11539         * doc/functions/vsnprintf.texi: Update.
11540         * doc/functions/vsprintf.texi: Update.
11541
11542 2007-05-19  Bruno Haible  <bruno@clisp.org>
11543
11544         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
11545         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
11546         Instead of multiplying with 10^k, set extra_zeroes to k.
11547         (scale10_round_long_double): Remove function.
11548
11549 2007-05-18  Bruno Haible  <bruno@clisp.org>
11550
11551         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
11552         introduced on 2007-05-06.
11553
11554 2007-05-18  Bruno Haible  <bruno@clisp.org>
11555
11556         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
11557         %g directives.
11558         * tests/test-vasprintf-posix.c (test_function): Likewise.
11559         * tests/test-snprintf-posix.h (test_function): Likewise.
11560         * tests/test-sprintf-posix.h (test_function): Likewise.
11561
11562 2007-05-18  Bruno Haible  <bruno@clisp.org>
11563
11564         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
11565         (strmatch): New function.
11566         (test_function): Test the %f directive on numbers of various exponents.
11567         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
11568         (strmatch): New function.
11569         (test_function): Test the %f directive on numbers of various exponents.
11570         * tests/test-snprintf-posix.h (strmatch): New function.
11571         (test_function): Test the %f directive on numbers of various exponents.
11572         * tests/test-sprintf-posix.h (strmatch): New function.
11573         (test_function): Test the %f directive on numbers of various exponents.
11574         * tests/test-snprintf-posix.c (SIZEOF): New macro.
11575         * tests/test-sprintf-posix.c (SIZEOF): New macro.
11576         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
11577         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
11578
11579 2007-05-18  Bruno Haible  <bruno@clisp.org>
11580
11581         Add support for 'long double' number output.
11582         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
11583         * lib/vasnprintf.c: Include math.h and float+.h.
11584         (mp_limb_t): New type.
11585         (GMP_LIMB_BITS): New macro.
11586         (mp_twolimb_t): New type.
11587         (GMP_TWOLIMB_BITS): New macro.
11588         (mpn_t): New type.
11589         (multiply, divide, convert_to_decimal, decode_long_double,
11590         scale10_round_long_double, scale10_round_decimal_long_double,
11591         floorlog10l): New functions.
11592         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
11593         for the %f, %F, %e, %E, %g, %G directives.
11594         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
11595         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
11596         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
11597         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
11598         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
11599         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11600         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11601         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11602         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11603         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11604         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11605         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
11606         * modules/snprintf-posix (Depends-on): Likewise.
11607         * modules/sprintf-posix (Depends-on): Likewise.
11608         * modules/vasnprintf-posix (Depends-on): Likewise.
11609         * modules/vasprintf-posix (Depends-on): Likewise.
11610         * modules/vfprintf-posix (Depends-on): Likewise.
11611         * modules/vsnprintf-posix (Depends-on): Likewise.
11612         * modules/vsprintf-posix (Depends-on): Likewise.
11613         * modules/vasnprintf (Files): Add lib/float+.h.
11614         * doc/functions/fprintf.texi: Update.
11615         * doc/functions/printf.texi: Update.
11616         * doc/functions/snprintf.texi: Update.
11617         * doc/functions/sprintf.texi: Update.
11618         * doc/functions/vfprintf.texi: Update.
11619         * doc/functions/vprintf.texi: Update.
11620         * doc/functions/vsnprintf.texi: Update.
11621         * doc/functions/vsprintf.texi: Update.
11622
11623 2007-05-18  Bruno Haible  <bruno@clisp.org>
11624
11625         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
11626
11627 2007-05-18  Bruno Haible  <bruno@clisp.org>
11628
11629         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
11630         for printing 64-bit integers. Needed for mingw.
11631
11632 2007-05-18  Bruno Haible  <bruno@clisp.org>
11633
11634         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
11635         gl_FUNC_FREXPL_WORKS.
11636         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
11637
11638 2007-05-18  Bruno Haible  <bruno@clisp.org>
11639
11640         * modules/frexpl-nolibm-tests: New file.
11641
11642         * modules/frexpl-nolibm: New file.
11643         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
11644
11645 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
11646
11647         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
11648         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
11649         GCC 4.2, which otherwise issues a lot of warnings.
11650         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
11651         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
11652         Likewise.
11653         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
11654         * modules/iconv_open (iconv.h): Likewise.
11655         * modules/locale (locale.h): Likewise.
11656         * modules/netinet_in (netinet/in.h): Likewise.
11657         * modules/sys_select (sys_select.h): Likewise.
11658         * modules/sys_socket (sys/socket.h): Likewise.
11659         * modules/sys_stat (sys/stat.h): Likewise.
11660         * modules/sysexits (sysexits.h): Likewise.
11661         * modules/unistd (unistd.h): Likewise.
11662
11663 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11664
11665         * modules/closein-tests (Makefile.am): Distribute
11666         `test-closein.sh'.
11667
11668 2007-05-17  Bruno Haible  <bruno@clisp.org>
11669
11670         * tests/test-printf-posix.output: Renamed from
11671         tests/test-fprintf-posix.out.
11672         * modules/fprintf-posix-tests: Update.
11673         * modules/printf-posix-tests: Update.
11674         * modules/vfprintf-posix-tests: Update.
11675         * modules/vprintf-posix-tests: Update.
11676         * tests/test-fprintf-posix.sh: Update.
11677         * tests/test-printf-posix.sh: Update.
11678         * tests/test-vfprintf-posix.sh: Update.
11679         * tests/test-vprintf-posix.sh: Update.
11680         Reported by Ralf Wildenhues.
11681
11682 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
11683
11684         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
11685         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
11686         GCC 4.2, which otherwise issues a lot of warnings.
11687         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
11688         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
11689         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
11690         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
11691         it should no longer be needed.
11692         * lib/string_.h: Likewise.
11693         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
11694         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
11695         * modules/inttypes (inttypes.h): Likewise.
11696         * modules/math (math.h): Likewise.
11697         * modules/search (search.h): Likewise.
11698         * modules/signal (signal.h): Likewise.
11699         * modules/stdint (stdint.h): Likewise.
11700         * modules/stdio (stdio.h): Likewise.
11701         * modules/stdlib (stdlib.h): Likewise.
11702         * modules/string (string.h): Likewise.
11703         * modules/sys_time (sys/time.h): Likewise.
11704         * modules/time (time.h): Likewise.
11705         * modules/wchar (wchar.h): Likewise.
11706         * modules/wctype (wtype.h): Likewise.
11707
11708 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
11709
11710         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
11711
11712 2007-05-13  Bruno Haible  <bruno@clisp.org>
11713
11714         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
11715         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
11716         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
11717         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
11718         (gl_PREREQ_STRTOK_R): Don't require it here.
11719
11720 2007-05-13  Bruno Haible  <bruno@clisp.org>
11721
11722         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
11723         when used in C++ mode.
11724
11725 2007-05-12  Bruno Haible  <bruno@clisp.org>
11726
11727         * lib/linebuffer.h: Tweak doc.
11728         * lib/linebuffer.c: Likewise.
11729
11730 2007-05-12  James Youngman  <jay@gnu.org>
11731
11732         * lib/linebuffer.c (readlinebuffer_delim): New function,
11733         like readlinebuffer, but use a caller-specified delimiter.
11734         (readlinebuffer): Just call readlinebuffer_delim with '\n'
11735         as the delimiter.
11736         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
11737
11738 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
11739
11740         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
11741         * modules/openat (Files): Remove openat-die.c.
11742         (Depends-on): Add openat-die.
11743         * modules/openat-die: New module.
11744
11745 2007-05-06  Bruno Haible  <bruno@clisp.org>
11746
11747         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
11748         Update with info about Cygwin.
11749         * doc/functions/fprintf.texi: Update.
11750         * doc/functions/printf.texi: Update.
11751         * doc/functions/snprintf.texi: Update.
11752         * doc/functions/sprintf.texi: Update.
11753         * doc/functions/vfprintf.texi: Update.
11754         * doc/functions/vprintf.texi: Update.
11755         * doc/functions/vsnprintf.texi: Update.
11756         * doc/functions/vsprintf.texi: Update.
11757         Reported by Eric Blake.
11758
11759 2007-05-06  Bruno Haible  <bruno@clisp.org>
11760
11761         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
11762         padding ourselves for the floating-point directives.
11763         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
11764         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
11765         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
11766         gl_PRINTF_FLAG_ZERO and test its result. Invoke
11767         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
11768         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11769         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
11770         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11771         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11772         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11773         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11774         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11775         * tests/test-snprintf-posix.h (test_function): Also check the width
11776         and some flags in the %f directive.
11777         * tests/test-sprintf-posix.h (test_function): Likewise.
11778         * tests/test-vasnprintf-posix.c (test_function): Likewise.
11779         * tests/test-vasprintf-posix.c (test_function): Likewise.
11780         * doc/functions/fprintf.texi: Update.
11781         * doc/functions/printf.texi: Update.
11782         * doc/functions/snprintf.texi: Update.
11783         * doc/functions/sprintf.texi: Update.
11784         * doc/functions/vfprintf.texi: Update.
11785         * doc/functions/vprintf.texi: Update.
11786         * doc/functions/vsnprintf.texi: Update.
11787         * doc/functions/vsprintf.texi: Update.
11788
11789 2007-05-06  Bruno Haible  <bruno@clisp.org>
11790
11791         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
11792         pass the ' flag character to sprintf or snprintf.
11793         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
11794         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
11795         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
11796         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
11797         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
11798         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
11799         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
11800         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
11801         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
11802         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
11803         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11804         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
11805         * tests/test-snprintf-posix.h (test_function): Also check the grouping
11806         flag.
11807         * tests/test-sprintf-posix.h (test_function): Likewise.
11808         * tests/test-vasnprintf-posix.c (test_function): Likewise.
11809         * tests/test-vasprintf-posix.c (test_function): Likewise.
11810         * doc/functions/fprintf.texi: Update.
11811         * doc/functions/printf.texi: Update.
11812         * doc/functions/snprintf.texi: Update.
11813         * doc/functions/sprintf.texi: Update.
11814         * doc/functions/vfprintf.texi: Update.
11815         * doc/functions/vprintf.texi: Update.
11816         * doc/functions/vsnprintf.texi: Update.
11817         * doc/functions/vsprintf.texi: Update.
11818
11819 2007-05-01  Bruno Haible  <bruno@clisp.org>
11820
11821         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
11822
11823 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
11824
11825         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
11826         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
11827
11828 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
11829
11830         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
11831         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
11832         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
11833
11834 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
11835
11836         * lib/argp-help.c (struct hol_entry): New member `ord'.
11837         (HOL_ENTRY_PTRCMP): Use ord for comparison
11838         (hol_sort): Initialize ord.
11839
11840 2007-05-01  Bruno Haible  <bruno@clisp.org>
11841
11842         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
11843         Reported by Eric Blake.
11844         * doc/gnulib.texi (Function Substitutes): Update.
11845
11846 2007-05-01  Bruno Haible  <bruno@clisp.org>
11847
11848         * doc/functions.texi: Remove file, now redundant through
11849         doc/functions/*.texi.
11850
11851 2007-05-01  Bruno Haible  <bruno@clisp.org>
11852
11853         * modules/argp (Depends-on): Add sleep.
11854
11855 2007-05-01  Bruno Haible  <bruno@clisp.org>
11856
11857         * modules/sleep-tests: New file.
11858         * tests/test-sleep.c: New file.
11859
11860         * modules/sleep: New file.
11861         * lib/sleep.c: New file.
11862         * m4/sleep.m4: New file.
11863         * lib/unistd_.h (sleep): New declaration.
11864         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
11865         HAVE_SLEEP.
11866         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
11867         * doc/functions/sleep.texi: Document the sleep module.
11868
11869 2007-05-01  Bruno Haible  <bruno@clisp.org>
11870
11871         * lib/sigprocmask.h: Remove file.
11872         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
11873         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
11874         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
11875         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
11876         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
11877         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
11878         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
11879         HAVE_SIGSET_T as a shell variable.
11880         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
11881         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
11882         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
11883         (Depends-on): Add signal. Remove verify.
11884         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
11885         (Include): Mention <signal.h> instead of sigprocmask.h.
11886         * NEWS: Mention the change.
11887         * lib/fatal-signal.c: Don't include sigprocmask.h.
11888
11889 2007-05-01  Bruno Haible  <bruno@clisp.org>
11890
11891         * modules/signal: New file.
11892         * lib/signal_.h: New file.
11893         * m4/signal_h.m4: New file.
11894
11895 2007-05-01  Bruno Haible  <bruno@clisp.org>
11896
11897         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
11898         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
11899         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
11900         HAVE_WCTYPE_CTMP_BUG into wctype.h.
11901
11902 2007-05-01  Bruno Haible  <bruno@clisp.org>
11903
11904         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
11905         configure time.
11906         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
11907         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
11908         * modules/sys_stat (Makefile.am): Substitute their values into
11909         sys/stat.h.
11910
11911 2007-05-01  Bruno Haible  <bruno@clisp.org>
11912
11913         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
11914         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
11915         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
11916
11917 2007-05-01  Bruno Haible  <bruno@clisp.org>
11918
11919         * doc/header/assert.texi: Undo last change: don't mention the gnulib
11920         'assert' module here.
11921
11922 2007-05-01  Bruno Haible  <bruno@clisp.org>
11923
11924         * doc/functions/*.texi: New files.
11925         * doc/functions/google-ranking.txt: New file.
11926         * doc/gnulib.texi (Function Substitutes): New chapter.
11927         (ctime, inet_ntoa): Remove sections.
11928         * doc/ctime.texi: Remove file.
11929         * doc/inet_ntoa.texi: Remove file.
11930         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
11931         dependencies.
11932         (%.info): New rule, specifying a --reference-limit.
11933
11934 2007-05-01  Bruno Haible  <bruno@clisp.org>
11935
11936         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
11937
11938 2007-05-01  Bruno Haible  <bruno@clisp.org>
11939
11940         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
11941         the portability of 'mkdir' to mingw systems.
11942
11943 2007-05-01  Bruno Haible  <bruno@clisp.org>
11944
11945         * doc/headers/google-ranking.txt: New file.
11946
11947 2007-04-30  Eric Blake  <ebb9@byu.net>
11948
11949         Prefer fseeko to fseek.
11950         * modules/getpass (Depends-on): Add fseeko.
11951         * lib/getpass.c (getpass): Use fseeko, not fseek.
11952
11953 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
11954
11955         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
11956         assumes the sorting is stable, while most qsort implementations
11957         are not.  Use argument addresses to ensure they never compare as
11958         equal.
11959
11960         * tests/test-argp-2.sh (usage-indent test): Fix output
11961         (func_compare): Restore diff options
11962         * tests/test-argp.c: Restore #include "progname.h"
11963
11964 2007-04-29  Bruno Haible  <bruno@clisp.org>
11965
11966         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
11967         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
11968         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
11969         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
11970         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
11971         (configure.ac): Define CHECK_SNPRINTF_POSIX.
11972         (TESTS, check_PROGRAMS): Add test-snprintf.
11973         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
11974         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
11975         (TESTS, check_PROGRAMS): Add test-vsnprintf.
11976         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
11977         assertions that fail on HP-UX, OSF/1, or IRIX.
11978         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
11979
11980 2007-04-29  Bruno Haible  <bruno@clisp.org>
11981
11982         * MODULES.html.sh (posix_functions): Remove 'contents'.
11983
11984 2007-04-29  Karl Berry  <karl@gnu.org>
11985
11986         * config/srclist.txt (gendocs_template_min): new entry.
11987
11988 2007-04-29  Bruno Haible  <bruno@clisp.org>
11989
11990         Work around fpurge bug on BSD systems.
11991         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
11992         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
11993         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
11994         fpurge to rpl_fpurge if the system already has this function.
11995         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
11996         the case where the system already has this function. Correct invariants
11997         on BSD systems.
11998         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
11999         BSD systems.
12000
12001 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
12002
12003         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
12004         proposed by Sven Verdoolaege.
12005
12006         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
12007         options.
12008         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
12009         (usage and help tests): Update
12010
12011 2007-04-29  Bruno Haible  <bruno@clisp.org>
12012
12013         * tests/test-fflush.c (main): Use a file of size 17, not 10.
12014         Print more information in case of failure. Disable a test on BeOS.
12015
12016 2007-04-29  Bruno Haible  <bruno@clisp.org>
12017
12018         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
12019         This helps debugging on systems on which no gdb is available.
12020
12021 2007-04-29  Bruno Haible  <bruno@clisp.org>
12022
12023         * lib/freading.h: Improve comments.
12024         * lib/fwriting.h: Likewise.
12025         * tests/test-freading.c (main): Don't check freading immediately after
12026         repositioning. Needed for glibc.
12027
12028 2007-04-29  Bruno Haible  <bruno@clisp.org>
12029
12030         * lib/freading.c (freading): Trivial simplification.
12031
12032 2007-04-28  Bruno Haible  <bruno@clisp.org>
12033
12034         * tests/test-fwriting.c (main): Also test the interaction between
12035         fflush and fwriting.
12036         * modules/fwriting-tests (Depends-on): Add fflush.
12037
12038         * tests/test-freading.c (main): Also test the interaction between
12039         fflush and freading.
12040         * modules/freading-tests (Depends-on): Add fflush.
12041
12042 2007-04-28  Bruno Haible  <bruno@clisp.org>
12043
12044         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
12045         fseeko and ftello.
12046         Suggested by Eric Blake.
12047
12048 2007-04-28  Jim Meyering  <jim@meyering.net>
12049
12050         Avoid false-negative in gl_STDINT_H's C99 conformance test.
12051         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
12052         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
12053
12054 2007-04-27  Eric Blake  <ebb9@byu.net>
12055
12056         * doc/headers/assert.texi (assert.h): Document assert module use.
12057
12058 2007-04-27  Bruno Haible  <bruno@clisp.org>
12059
12060         * doc/headers/*.texi: New files.
12061         * doc/gnulib.texi (Header File Substitutes): New chapter.
12062         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
12063         dependencies.
12064         (standards.info ,standards.html, standards.dvi): Update dependencies.
12065         (mostlyclean, clean): New targets.
12066
12067 2007-04-27  Bruno Haible  <bruno@clisp.org>
12068
12069         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
12070         * modules/sysexits (Files, Makefile.am): Update.
12071
12072         * lib/sys_socket_.h: Renamed from lib/socket_.h.
12073         * modules/sys_socket (Files, Makefile.am): Update.
12074
12075         * lib/sys_stat_.h: Renamed from lib/stat_.h.
12076         * modules/sys_stat (Files, Makefile.am): Update.
12077
12078 2007-04-27  Eric Blake  <ebb9@byu.net>
12079
12080         * lib/freading.h: Improve comments.
12081         * lib/fwriting.h: Likewise.
12082         * lib/fflush.c: Likewise.
12083
12084         Fix closein for mingw.
12085         * modules/closein-tests: Add tests for closein.
12086         * tests/test-closein.c: New file.
12087         * tests/test-closein.sh: Likewise.
12088         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
12089         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
12090
12091 2007-04-27  Bruno Haible  <bruno@clisp.org>
12092
12093         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
12094         version is < 6.
12095         * lib/math_.h [__DECC]: Likewise.
12096         * lib/stdio_.h [__DECC]: Likewise.
12097         * lib/stdlib_.h [__DECC]: Likewise.
12098         * lib/string_.h [__DECC]: Likewise.
12099         * lib/time_.h [__DECC]: Likewise.
12100         * lib/wchar_.h [__DECC]: Likewise.
12101         * lib/wctype_.h [__DECC]: Likewise.
12102
12103 2007-04-27  Bruno Haible  <bruno@clisp.org>
12104
12105         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
12106
12107 2007-04-27  Bruno Haible  <bruno@clisp.org>
12108
12109         * lib/fflush.c: Add comments.
12110         * modules/fpurge-tests (Depends-on): Add fflush.
12111         * modules/freadable-tests (Depends-on): Likewise.
12112         * modules/fwritable-tests (Depends-on): Likewise.
12113
12114 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
12115
12116         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
12117         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
12118         Report by Bruno Haible <bruno@clisp.org>.
12119
12120 2007-04-26  Eric Blake  <ebb9@byu.net>
12121
12122         Fix fflush on mingw.
12123         * modules/fflush (Depends-on): Add freading.
12124         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
12125         but unread data.
12126
12127 2007-04-26  Eric Blake  <ebb9@byu.net>
12128         and Bruno Haible  <bruno@clisp.org>
12129
12130         Implement freading and fwriting.
12131         * lib/freading.c: New file.
12132         * lib/freading.h: Likewise.
12133         * m4/freading.m4: Likewise.
12134         * modules/freading: Likewise.
12135         * modules/freading-tests: Likewise.
12136         * tests/test-freading.c: Likewise.
12137         * lib/fwriting.c: New file.
12138         * lib/fwriting.h: Likewise.
12139         * m4/fwriting.m4: Likewise.
12140         * modules/fwriting: Likewise.
12141         * modules/fwriting-tests: Likewise.
12142         * tests/test-fwriting.c: Likewise.
12143         * MODULES.html.sh (File stream based Input/Output): Mention them.
12144
12145 2007-04-26  Bruno Haible  <bruno@clisp.org>
12146
12147         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
12148         'long' when we assume it.
12149         Suggested by Eric Blake.
12150
12151 2007-04-26  Bruno Haible  <bruno@clisp.org>
12152
12153         Ensure fseeko, ftello are declared on glibc systems.
12154         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
12155         * modules/fseeko (configure.ac-early): Likewise.
12156         * modules/ftello (configure.ac-early): Likewise.
12157         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
12158         AC_FUNC_FSEEKO for this.
12159         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
12160         (gl_CHECK_FSEEKO): Remove macro.
12161
12162 2007-04-26  Bruno Haible  <bruno@clisp.org>
12163
12164         * tests/test-fflush.c (main): Also check the ftell result after
12165         fflush and fseek/fseeko.
12166         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
12167         file descriptor position cache in the stream.
12168         * lib/fseeko.c (rpl_fseeko): Likewise.
12169
12170 2007-04-26  Bruno Haible  <bruno@clisp.org>
12171
12172         * modules/fflush-tests (Depends-on): Add fseeko.
12173
12174 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
12175             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12176
12177         * lib/argz_.h: ensure error_t definition is obtained in same
12178         mechanism system argz.h would have.
12179         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
12180         argz facilities are known bad.  Err on the side of caution if
12181         cross-compiling.
12182
12183 2007-04-25  Eric Blake  <ebb9@byu.net>
12184
12185         * lib/fpurge.c (includes): Use stdlib.h for free.
12186         * tests/test-fflush.c (main): Also test fflush-fseeko.
12187
12188 2007-04-25  Bruno Haible  <bruno@clisp.org>
12189
12190         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
12191         * lib/fseeko.c: New file.
12192         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
12193         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
12194         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
12195         gl_FUNC_FSEEKO.
12196         (gl_FUNC_FSEEKO): Invoke it.
12197         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
12198         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
12199         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
12200
12201 2007-04-25  Bruno Haible  <bruno@clisp.org>
12202
12203         * modules/fflush (Depends-on): Add ftello.
12204
12205 2007-04-25  Bruno Haible  <bruno@clisp.org>
12206
12207         * modules/ftello-tests: New file.
12208         * tests/test-ftello.c: New file.
12209
12210         * modules/ftello: New file.
12211         * m4/ftello.m4: New file.
12212         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
12213         HAVE_FTELLO.
12214         * lib/stdio_.h (ftello): New declaration.
12215         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
12216         HAVE_FTELLO.
12217
12218 2007-04-25  Bruno Haible  <bruno@clisp.org>
12219
12220         * modules/fseeko-tests: New file.
12221         * tests/test-fseeko.c: New file.
12222
12223         * modules/fseeko: New file.
12224         * m4/fseeko.m4: New file.
12225         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
12226         HAVE_FSEEKO.
12227         * lib/stdio_.h (fseeko): New declaration.
12228         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
12229         HAVE_FSEEKO.
12230
12231 2007-04-25  Bruno Haible  <bruno@clisp.org>
12232
12233         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
12234
12235 2007-04-25  Bruno Haible  <bruno@clisp.org>
12236
12237         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
12238         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
12239         * tests/test-unistd.c: Likewise.
12240         * tests/test-fcntl.c: Likewise.
12241
12242 2007-04-23  Eric Blake  <ebb9@byu.net>
12243
12244         * lib/fflush.c: Fix missing include.
12245         Reported by Bruno Haible.
12246
12247 2007-04-23  Bruno Haible  <bruno@clisp.org>
12248
12249         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
12250         Reported by Eric Blake.
12251
12252 2007-04-23  Bruno Haible  <bruno@clisp.org>
12253
12254         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
12255
12256 2007-04-23  Bruno Haible  <bruno@clisp.org>
12257
12258         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
12259
12260 2007-04-23  Bruno Haible  <bruno@clisp.org>
12261
12262         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
12263         Needed on HP-UX 11.
12264
12265 2007-04-16  Eric Blake  <ebb9@byu.net>
12266
12267         Make fflush rely on fpurge.
12268         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
12269         open coding all variants.
12270         * modules/fflush (Depends-on): Add fpurge and unistd.
12271         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
12272         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
12273
12274         Fix --with-tests compilation on cygwin.
12275         * modules/argmatch-tests (Makefile.am): List gnulib library first
12276         in LDADD.
12277         * modules/argp-tests (Makefile.am): Likewise.
12278         * modules/array-list-tests (Makefile.am): Likewise.
12279         * modules/array-oset-tests (Makefile.am): Likewise.
12280         * modules/avltree-list-tests (Makefile.am): Likewise.
12281         * modules/avltree-oset-tests (Makefile.am): Likewise.
12282         * modules/avltreehash-list-tests (Makefile.am): Likewise.
12283         * modules/carray-list-tests (Makefile.am): Likewise.
12284         * modules/dirname-tests (Makefile.am): Likewise.
12285         * modules/frexp-tests (Makefile.am): Likewise.
12286         * modules/isnanl-tests (Makefile.am): Likewise.
12287         * modules/linked-list-tests (Makefile.am): Likewise.
12288         * modules/linkedhash-list-tests (Makefile.am): Likewise.
12289         * modules/lock-tests (Makefile.am): Likewise.
12290         * modules/rbtree-list-tests (Makefile.am): Likewise.
12291         * modules/rbtree-oset-tests (Makefile.am): Likewise.
12292         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
12293         * modules/tls-tests (Makefile.am): Likewise.
12294         * modules/tsearch-tests (Makefile.am): Likewise.
12295         * modules/xvasprintf-tests (Makefile.am): Likewise.
12296
12297         Fix fpurge for cygwin.
12298         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
12299         value.
12300         * modules/fpurge-tests (Depends-on): Clean up trash.
12301
12302 2007-04-16  Simon Josefsson  <simon@josefsson.org>
12303
12304         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
12305
12306         * m4/autobuild.m4: Re-indent.
12307
12308 2007-04-13  Bruno Haible  <bruno@clisp.org>
12309
12310         * modules/fpurge-tests: New file.
12311         * tests/test-fpurge.c: New file.
12312
12313         * modules/fpurge: New file.
12314         * lib/fpurge.h: New file.
12315         * lib/fpurge.c: New file.
12316         * m4/fpurge.m4: New file.
12317
12318 2007-04-13  Bruno Haible  <bruno@clisp.org>
12319
12320         * modules/fbufmode-tests: New file.
12321         * tests/test-fbufmode.c: New file.
12322
12323         * modules/fbufmode: New file.
12324         * lib/fbufmode.h: New file.
12325         * lib/fbufmode.c: New file.
12326         * m4/fbufmode.m4: New file.
12327
12328 2007-04-13  Bruno Haible  <bruno@clisp.org>
12329
12330         * modules/fwritable-tests: New file.
12331         * tests/test-fwritable.c: New file.
12332
12333         * modules/fwritable: New file.
12334         * lib/fwritable.h: New file.
12335         * lib/fwritable.c: New file.
12336         * m4/fwritable.m4: New file.
12337
12338 2007-04-13  Bruno Haible  <bruno@clisp.org>
12339
12340         * modules/freadable-tests: New file.
12341         * tests/test-freadable.c: New file.
12342
12343         * modules/freadable: New file.
12344         * lib/freadable.h: New file.
12345         * lib/freadable.c: New file.
12346         * m4/freadable.m4: New file.
12347
12348 2007-04-13  Bruno Haible  <bruno@clisp.org>
12349
12350         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
12351         MOSTLYCLEANFILES.
12352
12353 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
12354
12355         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
12356         gzip bootstrap.conf to avoid dragging in i18n machinery.
12357         (gnulib_tool_option): Use it.
12358
12359 2007-04-13  Bruno Haible  <bruno@clisp.org>
12360
12361         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
12362         %F directives.
12363         * tests/test-vasprintf-posix.c (test_function): Likewise.
12364         * tests/test-snprintf-posix.h (test_function): Likewise.
12365         * tests/test-sprintf-posix.h (test_function): Likewise.
12366         * tests/test-fprintf-posix.h (test_function): Likewise.
12367         * tests/test-printf-posix.h (test_function): Likewise.
12368         * tests/test-fprintf-posix.out: Likewise.
12369
12370 2007-04-13  Bruno Haible  <bruno@clisp.org>
12371
12372         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
12373         * modules/tls-tests (configure.ac): Likewise.
12374         Reported by Arto C. Nirkko <anirkko@insel.ch>.
12375
12376 2007-04-13  Bruno Haible  <bruno@clisp.org>
12377
12378         * lib/tls.c (glthread_tls_get): Fix return type.
12379         Patch by Arto C. Nirkko <anirkko@insel.ch>.
12380
12381 2007-04-12  Eric Blake  <ebb9@byu.net>
12382
12383         * modules/gettime (Depends-on): Remove gettime.
12384         Reported by Dmitry V. Levin.
12385
12386 2007-04-12  Bruno Haible  <bruno@clisp.org>
12387
12388         * modules/fflush (Include): Mention <stdio.h>.
12389         * modules/strtoimax (Include): Mention <inttypes.h>.
12390         * modules/strtoumax (Include): Likewise.
12391
12392 2007-04-12  Eric Blake  <ebb9@byu.net>
12393
12394         * .cvsignore: New file.
12395         * .gitignore: Likewise.
12396
12397 2007-04-12  Bruno Haible  <bruno@clisp.org>
12398
12399         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
12400         not before, since $(LDADD) often contains libgnu.a.
12401         * modules/striconv-tests (test_striconv_LDADD): Likewise.
12402         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
12403         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
12404         Needed on Cygwin.
12405
12406 2007-04-12  Eric Blake  <ebb9@byu.net>
12407
12408         Work around glibc's failure to flush stdin on fclose.
12409         * lib/closein.c (close_stdin): Flush stdin before closing.
12410
12411         Work around glibc's failure to reset seekable stdin on exit.
12412         * modules/closein: New module.
12413         * lib/closein.c: New file.
12414         * lib/closein.h: Likewise.
12415         * m4/closein.m4: Likewise.
12416         * MODULES.html.sh (File stream based Input/Output): Document it.
12417
12418 2007-04-12  Simon Josefsson  <simon@josefsson.org>
12419
12420         * gnulib-tool: Rename generated 'autobuild' script to
12421         'do-autobuild' in --create-megatestdir output.
12422
12423         * doc/gnulib.texi (Build robot for gnulib): Fix.
12424
12425 2007-04-12  Simon Josefsson  <simon@josefsson.org>
12426
12427         * modules/sysexits (Depends-on): Add absolute-header.
12428
12429 2007-04-12  Eric Blake  <ebb9@byu.net>
12430
12431         No need to preserve errno on success.
12432         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
12433         Reported by Bruno Haible.
12434
12435 2007-04-12  Simon Josefsson  <simon@josefsson.org>
12436
12437         * MODULES.html.sh (Support for maintaining and releasing
12438         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
12439
12440 2007-04-12  Simon Josefsson  <simon@josefsson.org>
12441
12442         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
12443
12444 2007-04-12  Simon Josefsson  <simon@josefsson.org>
12445
12446         * modules/autobuild: New module.
12447
12448         * m4/autobuild.m4: New file.
12449
12450 2007-04-11  Bruno Haible  <bruno@clisp.org>
12451
12452         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
12453         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
12454         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
12455         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
12456         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
12457         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12458         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12459         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
12460         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12461         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12462         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
12463         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12464         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12465         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
12466         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12467         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12468         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
12469         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12470         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12471         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
12472         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12473         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12474         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
12475         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12476         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12477         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
12478         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
12479         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
12480         Reported by Eric Blake.
12481
12482 2007-04-11  Bruno Haible  <bruno@clisp.org>
12483
12484         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
12485
12486 2007-04-10  Bruno Haible  <bruno@clisp.org>
12487
12488         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
12489         for NaN and Infinity. Needed on FreeBSD 6.1.
12490         * tests/test-vasnprintf-posix.c (test_function): Undo last change
12491         regarding results for "%010a" of Infinity and NaN.
12492         * tests/test-vasprintf-posix.c (test_function): Likewise.
12493         * tests/test-snprintf-posix.h (test_function): Likewise.
12494         * tests/test-sprintf-posix.h (test_function): Likewise.
12495         * tests/test-fprintf-posix.h (test_function): Likewise.
12496         * tests/test-printf-posix.h (test_function): Likewise.
12497         * tests/test-fprintf-posix.out: Likewise.
12498
12499 2007-04-10  Bruno Haible  <bruno@clisp.org>
12500
12501         * modules/locale-tests: New file.
12502         * tests/test-locale.c: New file.
12503
12504         * modules/locale: New file.
12505         * lib/locale_.h: New file.
12506         * m4/locale_h.m4: New file.
12507
12508 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
12509             Bruno Haible  <bruno@clisp.org>
12510
12511         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
12512         be determined, test for availability of the copysignf, copysign,
12513         copysignl functions.
12514         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
12515         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
12516         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
12517
12518 2007-04-09  Eric Blake  <ebb9@byu.net>
12519
12520         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
12521         * modules/stdio (Makefile.am): Support fflush.
12522         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
12523         * modules/fflush: New file.
12524         * lib/fflush.c: Likewise.
12525         * m4/fflush.m4: Likewise.
12526         * modules/fflush-tests: New test.
12527         * tests/test-fflush.c: Likewise.
12528         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
12529
12530 2007-04-06  Bruno Haible  <bruno@clisp.org>
12531
12532         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
12533         (VASNPRINTF): Use signbit for faster determination whether to print a
12534         minus sign.
12535         * modules/vasnprintf (Files): Remove lib/float+.h.
12536         * modules/fprintf-posix (Depends-on): Add signbit.
12537         * modules/snprintf-posix (Depends-on): Likewise.
12538         * modules/sprintf-posix (Depends-on): Likewise.
12539         * modules/vasnprintf-posix (Depends-on): Likewise.
12540         * modules/vasprintf-posix (Depends-on): Likewise.
12541         * modules/vfprintf-posix (Depends-on): Likewise.
12542         * modules/vsnprintf-posix (Depends-on): Likewise.
12543         * modules/vsprintf-posix (Depends-on): Likewise.
12544
12545 2007-04-06  Bruno Haible  <bruno@clisp.org>
12546
12547         * tests/test-frexp.c (main): Test also the sign bit of zero results.
12548         * tests/test-frexpl.c (main): Likewise.
12549         * tests/test-ldexpl.c (main): Likewise.
12550         * modules/frexp-tests (Depends-on): Add signbit.
12551         * modules/frexpl-tests (Depdends-on): Likewise.
12552         * modules/ldexpl-tests (Depdends-on): Likewise.
12553
12554 2007-04-06  Bruno Haible  <bruno@clisp.org>
12555
12556         * modules/signbit-tests: New file.
12557         * tests/test-signbit.c: New file.
12558
12559         * modules/signbit: New file.
12560         * lib/signbitf.c: New file.
12561         * lib/signbitd.c: New file.
12562         * lib/signbitl.c: New file.
12563         * m4/signbit.m4: New file.
12564         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
12565         (signbit): New macro.
12566         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
12567         REPLACE_SIGNBIT.
12568         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
12569         REPLACE_FREXPL into math.h.
12570
12571 2007-04-06  Bruno Haible  <bruno@clisp.org>
12572
12573         * modules/isnanf-nolibm-tests: New file.
12574         * tests/test-isnanf.c: New file.
12575
12576         * modules/isnanf-nolibm: New file.
12577         * lib/isnanf.h: New file.
12578         * lib/isnanf.c: New file.
12579         * lib/isnan.c: Consider the USE_FLOAT macro.
12580         * m4/isnanf.m4: New file.
12581
12582 2007-04-06  Bruno Haible  <bruno@clisp.org>
12583
12584         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
12585         (Link): New section.
12586
12587         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
12588
12589 2007-04-06  Bruno Haible  <bruno@clisp.org>
12590
12591         Assume the 'long double' type.
12592         * m4/longdouble.m4: Remove file.
12593         * config/srclist.txt: Don't mention longdouble.m4.
12594         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
12595         * lib/float+.h: Likewise.
12596         * lib/frexp.c: Likewise.
12597         * lib/printf-args.h: Likewise.
12598         * lib/printf-args.c: Likewise.
12599         * lib/printf-frexp.c: Likewise.
12600         * lib/printf-parse.c: Likewise.
12601         * lib/vasnprintf.c: Likewise.
12602         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
12603         * m4/intl.m4: Likewise.
12604         * m4/isnanl.m4: Likewise.
12605         * m4/printf.m4: Likewise.
12606         * m4/printf-frexpl.m4: Likewise.
12607         * m4/vasnprintf.m4: Likewise.
12608         * modules/allocsa (Files): Remove m4/longdouble.m4.
12609         * modules/gettext (Files): Likewise.
12610         * modules/relocatable-prog-wrapper (Files): Likewise.
12611         * modules/vasnprintf (Files): Likewise.
12612         * modules/isnanl (Files): Likewise.
12613         (Include): Simplify.
12614         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
12615         (Include): Simplify.
12616         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
12617         (Include): Simplify.
12618         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
12619         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
12620         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
12621         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
12622         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
12623         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
12624         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
12625         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
12626         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
12627         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
12628         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
12629         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
12630         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
12631         * tests/test-isnanl.c: Likewise.
12632         * tests/test-snprintf-posix.h: Likewise.
12633         * tests/test-sprintf-posix.h: Likewise.
12634         * tests/test-vasnprintf-posix.c: Likewise.
12635         * tests/test-vasnprintf-posix2.c: Likewise.
12636         * tests/test-vasprintf-posix.c: Likewise.
12637
12638 2007-04-06  Bruno Haible  <bruno@clisp.org>
12639
12640         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
12641         * lib/math_.h [__DECC]: Include the overridden include file through
12642         #include_next, outside the double-inclusion guard.
12643         * lib/stdio_.h [__DECC]: Likewise.
12644         * lib/stdlib_.h [__DECC]: Likewise.
12645         * lib/string_.h [__DECC]: Likewise.
12646         * lib/time_.h [__DECC]: Likewise.
12647         * lib/wchar_.h [__DECC]: Likewise.
12648         * lib/wctype_.h [__DECC]: Likewise.
12649         * lib/inttypes_.h [__DECC]: Likewise.
12650         Reported by Albert Chin <china@thewrittenword.com> in
12651         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
12652
12653 2007-04-04  Eric Blake  <ebb9@byu.net>
12654
12655         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
12656         1.5.x.
12657
12658 2007-04-04  Bruno Haible  <bruno@clisp.org>
12659
12660         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
12661         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
12662
12663 2007-04-04  Bruno Haible  <bruno@clisp.org>
12664
12665         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
12666         results for "%010a" of Infinity and NaN.
12667         * tests/test-vasprintf-posix.c (test_function): Likewise.
12668         * tests/test-snprintf-posix.h (test_function): Likewise.
12669         * tests/test-sprintf-posix.h (test_function): Likewise.
12670         * tests/test-fprintf-posix.h (test_function): Remove these tests.
12671         * tests/test-printf-posix.h (test_function): Likewise.
12672         * tests/test-fprintf-posix.out: Update.
12673         Needed for FreeBSD 6.1.
12674
12675 2007-04-04  Bruno Haible  <bruno@clisp.org>
12676
12677         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
12678         directly used by the gnulib modules nor by gnulib-tool.
12679
12680 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
12681
12682         * DEPENDENCIES: Give overall description of version dependency
12683         desirability.  Use more-typical names for apps.
12684         Add shell, coreutils, diffutils, grep, tar, gzip.
12685
12686 2007-04-04  Simon Josefsson  <simon@josefsson.org>
12687
12688         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
12689
12690 2007-04-04  Karl Berry  <karl@gnu.org>
12691
12692         * MODULES.html.sh (func_module): missing '.
12693
12694 2007-04-03  Bruno Haible  <bruno@clisp.org>
12695
12696         * modules/argmatch-tests (Makefile.am): New variable
12697         test_argmatch_LDADD.
12698         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
12699         * modules/array-list-tests (Makefile.am): New variable
12700         test_array_list_LDADD.
12701         * modules/array-oset-tests (Makefile.am): New variable
12702         test_array_oset_LDADD.
12703         * modules/avltree-list-tests (Makefile.am): New variable
12704         test_avltree_list_LDADD.
12705         * modules/avltree-oset-tests (Makefile.am): New variable
12706         test_avltree_oset_LDADD.
12707         * modules/avltreehash-list-tests (Makefile.am): New variable
12708         test_avltreehash_list_LDADD.
12709         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
12710         test_canonicalize_lgpl_LDADD.
12711         * modules/carray-list-tests (Makefile.am): New variable
12712         test_carray_list_LDADD.
12713         * modules/dirname-tests (Makefile.am): New variable
12714         test_dirname_LDADD.
12715         * modules/linked-list-tests (Makefile.am): New variable
12716         test_linked_list_LDADD.
12717         * modules/linkedhash-list-tests (Makefile.am): New variable
12718         test_linkedhash_list_LDADD.
12719         * modules/rbtree-list-tests (Makefile.am): New variable
12720         test_rbtree_list_LDADD.
12721         * modules/rbtree-oset-tests (Makefile.am): New variable
12722         test_rbtree_oset_LDADD.
12723         * modules/rbtreehash-list-tests (Makefile.am): New variable
12724         test_rbtreehash_list_LDADD.
12725         * modules/xvasprintf-tests (Makefile.am): New variable
12726         test_xvasprintf_LDADD.
12727         Reported by Eric Blake.
12728
12729 2007-04-03  Eric Blake  <ebb9@byu.net>
12730
12731         * DEPENDENCIES: Weaken m4 requirements.
12732
12733 2007-04-03  Bruno Haible  <bruno@clisp.org>
12734
12735         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
12736         * modules/isnanl-tests (configure.ac): Likewise.
12737
12738 2007-04-03  Ben Pfaff  <blp@gnu.org>
12739
12740         * modules/iconv_open: Add $(srcdir)/ to source directory
12741         references in Makefile fragments that call gperf, to fix VPATH
12742         builds.
12743
12744 2007-04-03  Bruno Haible  <bruno@clisp.org>
12745
12746         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
12747         * lib/ldexpl.c: Undo last change.
12748
12749 2007-04-03  Bruno Haible  <bruno@clisp.org>
12750
12751         * modules/printf-frexpl (Depends-on): Undo last change.
12752         (Files): Add m4/ldexpl.m4.
12753
12754 2007-04-03  Bruno Haible  <bruno@clisp.org>
12755
12756         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
12757         * modules/isnanl (Link): New section.
12758
12759         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
12760         * modules/frexp (Link): New section.
12761
12762         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
12763         * modules/frexpl (Link): New section.
12764
12765         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
12766         * modules/ldexpl (Link): New section.
12767
12768 2007-04-03  Bruno Haible  <bruno@clisp.org>
12769
12770         * modules/TEMPLATE-EXTENDED: New file.
12771         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
12772
12773 2007-04-03  Bruno Haible  <bruno@clisp.org>
12774
12775         * DEPENDENCIES: New file.
12776         Suggested by Simon Josefsson.
12777
12778 2007-04-03  Bruno Haible  <bruno@clisp.org>
12779
12780         * doc/gnulib.texi: Escape @.
12781
12782 2007-04-03  James Youngman  <jay@gnu.org>
12783         and Paul Eggert  <eggert@cs.ucla.edu>
12784
12785         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
12786         birthtime on all systems that have birthtime, not just those which
12787         use st_birthtimensec rather than st_birthtim.  Putting zero in
12788         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
12789         that the birth time is not available for files on an NFS mount.
12790
12791 2007-04-03  Simon Josefsson  <simon@josefsson.org>
12792
12793         * modules/memxor: Move back from crypto/, suggested by Bruno.
12794         * modules/crypto/hmac-sha1: Fix memxor dependency.
12795
12796         * modules/crypto/gc: Moved from ../.
12797
12798 2007-04-02  Eric Blake  <ebb9@byu.net>
12799
12800         * lib/ldexpl.c (includes): Avoid libm.
12801
12802         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
12803
12804 2007-04-02  Bruno Haible  <bruno@clisp.org>
12805
12806         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
12807         on IRIX.
12808
12809 2007-04-02  Bruno Haible  <bruno@clisp.org>
12810
12811         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
12812         x86 or x86_64 platforms running MacOS X.
12813         Reported by Ryan Schmidt <@ryandesign.com>.
12814
12815 2007-04-02  Bruno Haible  <bruno@clisp.org>
12816
12817         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
12818         i386.
12819
12820 2007-04-01  Simon Josefsson  <simon@josefsson.org>
12821
12822         * modules/crypto/arcfour: Moved from ../.
12823         * modules/crypto/arcfour-tests: Moved from ../.
12824         * modules/crypto/arctwo: Moved from ../.
12825         * modules/crypto/arctwo-tests: Moved from ../.
12826         * modules/crypto/des: Moved from ../.
12827         * modules/crypto/des-tests: Moved from ../.
12828         * modules/crypto/gc-arcfour: Moved from ../.
12829         * modules/crypto/gc-arcfour-tests: Moved from ../.
12830         * modules/crypto/gc-arctwo: Moved from ../.
12831         * modules/crypto/gc-arctwo-tests: Moved from ../.
12832         * modules/crypto/gc-des: Moved from ../.
12833         * modules/crypto/gc-des-tests: Moved from ../.
12834         * modules/crypto/gc-hmac-md5: Moved from ../.
12835         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
12836         * modules/crypto/gc-hmac-sha1: Moved from ../.
12837         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
12838         * modules/crypto/gc-md2: Moved from ../.
12839         * modules/crypto/gc-md2-tests: Moved from ../.
12840         * modules/crypto/gc-md4: Moved from ../.
12841         * modules/crypto/gc-md4-tests: Moved from ../.
12842         * modules/crypto/gc-md5: Moved from ../.
12843         * modules/crypto/gc-md5-tests: Moved from ../.
12844         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
12845         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
12846         * modules/crypto/gc-random: Moved from ../.
12847         * modules/crypto/gc-rijndael: Moved from ../.
12848         * modules/crypto/gc-rijndael-tests: Moved from ../.
12849         * modules/crypto/gc-sha1: Moved from ../.
12850         * modules/crypto/gc-sha1-tests: Moved from ../.
12851         * modules/crypto/gc-tests: Moved from ../.
12852         * modules/crypto/hmac-md5: Moved from ../.
12853         * modules/crypto/hmac-md5-tests: Moved from ../.
12854         * modules/crypto/hmac-sha1: Moved from ../.
12855         * modules/crypto/hmac-sha1-tests: Moved from ../.
12856         * modules/crypto/md2: Moved from ../.
12857         * modules/crypto/md2-tests: Moved from ../.
12858         * modules/crypto/md4: Moved from ../.
12859         * modules/crypto/md4-tests: Moved from ../.
12860         * modules/crypto/md5: Moved from ../.
12861         * modules/crypto/md5-tests: Moved from ../.
12862         * modules/crypto/memxor: Moved from ../.
12863         * modules/crypto/rijndael: Moved from ../.
12864         * modules/crypto/rijndael-tests: Moved from ../.
12865         * modules/crypto/sha1: Moved from ../.
12866
12867 2007-03-30  James Youngman  <jay@gnu.org>
12868
12869         * tests/test-stat-time.c (prepare_test): use chmod() rather than
12870         rename() to change the ctime of a file (because ctime is unaffected
12871         by rename on jfs2 on AIX 5.1).
12872         (main): Start by doing cleanup, in case a previous run failed leaving
12873         test files behind.
12874
12875 2007-03-31  Bruno Haible  <bruno@clisp.org>
12876
12877         Support old proprietary implementations of iconv.
12878         * modules/iconv_open: New file.
12879         * lib/iconv_.h: New file.
12880         * m4/iconv_h.m4: New file.
12881         * lib/iconv_open.c: New file.
12882         * lib/iconv_open-aix.gperf: New file.
12883         * lib/iconv_open-hpux.gperf: New file.
12884         * lib/iconv_open-irix.gperf: New file.
12885         * lib/iconv_open-osf.gperf: New file.
12886         * m4/iconv_open.m4: New file.
12887         * modules/linebreak (Depends-on): Add iconv_open.
12888         * modules/striconv (Depends-on): Likewise.
12889         * modules/striconveh (Depends-on): Likewise.
12890         * modules/unicodeio (Depends-on): Likewise.
12891         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
12892         (iconv_t)(-1).
12893         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
12894         conversion if cd is (iconv_t)(-1).
12895         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
12896         is not possible.
12897
12898 2007-03-31  Bruno Haible  <bruno@clisp.org>
12899
12900         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
12901         work on Solaris either. Protect also second use of "autodetect_jp".
12902
12903 2007-03-31  Bruno Haible  <bruno@clisp.org>
12904
12905         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
12906         the function is not present.
12907
12908 2007-03-31  Bruno Haible  <bruno@clisp.org>
12909
12910         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
12911         the function is not present.
12912
12913 2007-03-31  Bruno Haible  <bruno@clisp.org>
12914
12915         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
12916         a bug in HP-UX iconv_open().
12917
12918 2007-03-31  Bruno Haible  <bruno@clisp.org>
12919
12920         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
12921         (Mathematics <math.h>): New section, add fpieee.
12922         (Input/output <stdio.h>): Add fseterr.
12923         (Mathematics <math.h>): New section, add printf-frexp.
12924         (Container data structures): Add sublist.
12925         (Core language properties): Add fpucw, inline.
12926         (Functions for greatest-width integer types <inttypes.h>): Add
12927         imaxabs, imaxdiv, inttypes.
12928         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
12929         isnanl-nolibm, ldexp.
12930         (Mathematics <math.h>): New section, add printf-frexpl.
12931         (Support for systems lacking POSIX:2001): Add fprintf-posix,
12932         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
12933         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
12934         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
12935         (Unicode string functions): Add unistr/u*-mbtoucr.
12936         (Java): Add javacomp-script, javaexec-script.
12937         (C#): Add csharpcomp-script, csharpexec-script.
12938         (Support for building libraries and executables): Add havelib,
12939         relocatable-*.
12940         (Support for maintaining and releasing projects): Renamed from
12941         'Support for maintaining and release projects'. Add announce-gen.
12942
12943 2007-03-31  Bruno Haible  <bruno@clisp.org>
12944
12945         * README: Talk primarily about git.
12946         (git and CVS): Renamed from CVS.
12947         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
12948         gnulib is available through git.
12949         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
12950
12951 2007-03-30  Bruno Haible  <bruno@clisp.org>
12952
12953         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
12954         * lib/poll_.h: Likewise.
12955         * lib/stat_.h: Likewise.
12956         * lib/sys_time_.h: Likewise.
12957         * lib/sysexit_.h: Likewise.
12958         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
12959         * lib/stdbool_.h: Likewise.
12960         * lib/byteswap_.h: Add double-inclusion guard.
12961
12962 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
12963
12964         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
12965
12966 2007-03-30  Karl Berry  <karl@gnu.org>
12967
12968         * config/srclist-update: double space after USA in the license
12969         substitution, since that's how it's usually (?) written.
12970
12971 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
12972
12973         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
12974         reported by Bruno Haible.
12975
12976 2007-03-29  Bruno Haible  <bruno@clisp.org>
12977
12978         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
12979         a bug in AIX iconv().
12980
12981 2007-03-29  Bruno Haible  <bruno@clisp.org>
12982
12983         * modules/ldexpl-tests: New file.
12984         * tests/test-ldexpl.c: New file.
12985
12986 2007-03-29  Bruno Haible  <bruno@clisp.org>
12987
12988         * lib/ldexpl.c: Include fpucw.h.
12989         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
12990         multiplication.
12991         * modules/ldexpl (Depends-on): Add fpucw.
12992
12993 2007-03-29  Bruno Haible  <bruno@clisp.org>
12994
12995         * modules/ldexpl: New file.
12996         * m4/ldexpl.m4: New file.
12997         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
12998         set.
12999         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
13000         REPLACE_LDEXPL.
13001         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
13002         REPLACE_LDEXPL.
13003         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
13004         gl_FUNC_LDEXPL_WORKS.
13005         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
13006         * modules/mathl (Files): Remove lib/ldexpl.c.
13007         (Depends-on): Add ldexpl.
13008
13009 2007-03-29  Bruno Haible  <bruno@clisp.org>
13010
13011         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
13012
13013 2007-03-29  Bruno Haible  <bruno@clisp.org>
13014
13015         * tests/test-striconveh.c (main): Don't assume that a direct conversion
13016         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
13017         and possibly also HP-UX.
13018         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
13019         work on AIX, IRIX, HP-UX, OSF/1.
13020         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
13021         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
13022         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
13023         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
13024         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
13025         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
13026
13027 2007-03-29  Bruno Haible  <bruno@clisp.org>
13028
13029         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
13030
13031 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
13032
13033         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
13034         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
13035
13036 2007-03-29  Eric Blake  <ebb9@byu.net>
13037
13038         * lib/acl-internal.h: Remove redundant include.
13039         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
13040         Cygwin when a file is locked.
13041
13042 2007-03-29  Bruno Haible  <bruno@clisp.org>
13043
13044         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
13045         file.
13046         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
13047
13048 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
13049
13050         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
13051         try to remove a parent directory if the child couldn't be removed
13052         (except for the first rmdir, which could fail because the child
13053         doesn't exist).  Problem reported by Jeff Blaine in
13054         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
13055
13056 2007-03-28  Bruno Haible  <bruno@clisp.org>
13057
13058         * lib/striconveh.c (utf8conv_carefully): New function.
13059         (mem_cd_iconveh_internal): Invoke it.
13060
13061 2007-03-28  Bruno Haible  <bruno@clisp.org>
13062
13063         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
13064         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
13065         input.
13066         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
13067         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
13068         unistr/u8-uctomb.
13069
13070 2007-03-28  Bruno Haible  <bruno@clisp.org>
13071
13072         * modules/unistr/u8-mbtoucr: New file.
13073         * lib/unistr/u8-mbtoucr.c: New file.
13074         * modules/unistr/u16-mbtoucr: New file.
13075         * lib/unistr/u16-mbtoucr.c: New file.
13076         * modules/unistr/u16-mbtoucr: New file.
13077         * lib/unistr/u16-mbtoucr.c: New file.
13078         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
13079
13080 2007-03-27  Simon Josefsson  <simon@josefsson.org>
13081             Bruno Haible  <bruno@clisp.org>
13082
13083         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
13084         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
13085         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
13086
13087         * m4/stdio_h.m4: Add stubs for vasprintf too.
13088
13089         * modules/stdio: Support vasprintf in sed command.
13090
13091         * modules/vasprintf: Depend on stdio for prototypes.  Remove
13092         vasprintf.h.  Add stdio module indicator.
13093
13094         * lib/stdio_.h: Declare asprintf and vasprintf, based on
13095         vasprintf.h.
13096
13097         * lib/vasprintf.h: File removed.
13098
13099         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
13100         * lib/vasprintf.c: Ditto.
13101         * lib/xvasprintf.c: Ditto.
13102         * tests/test-vasprintf-posix.c: Ditto.
13103         * tests/test-vasprintf.c: Ditto.
13104
13105 2007-03-27  Bruno Haible  <bruno@clisp.org>
13106
13107         Make vasnprintf multithread-safe.
13108         * lib/vasnprintf.c (decimal_point_char): New function.
13109         (VASNPRINTF): Use it.
13110         Suggested by Simon Josefsson.
13111
13112 2007-03-27  Eric Blake  <ebb9@byu.net>
13113
13114         Support sub-second birthtime on cygwin.
13115         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
13116         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
13117         (get_stat_birthtime): Also work with st_birthtim.
13118
13119 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
13120
13121         * lib/stat-time.h (USE_BIRTHTIME): Remove.
13122         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
13123         (get_stat_birthtime_ns): Do not try to use "spare" fields.
13124         (get_stat_birthtime_ns): Simplify compile-time tests.
13125         (get_stat_birthtime): Change the API to look like
13126         get_stat_mtime etc., except return a negative tv_nsec on error.
13127         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
13128         Don't check for "spare" fields.
13129         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
13130         or for struct stat.st_birthtime, as these tests aren't used.
13131         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
13132
13133 2007-03-27  Bruno Haible  <bruno@clisp.org>
13134
13135         * lib/stat-time.h: Include <sys/stat.h>.
13136
13137 2007-03-27  James Youngman  <jay@gnu.org>
13138
13139         * lib/stat-time.h (get_stat_birthtime): New function for
13140           retrieving st_birthtime as provided by UFS2 (hence *BSD).
13141         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
13142           and its variants.
13143         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
13144         * modules/stat-time-test: New file.
13145         * tests/test-stat-time.c: New test, devised by Bruno Haible.
13146
13147 2007-03-26  Bruno Haible  <bruno@clisp.org>
13148
13149         Better support of signalling NaNs.
13150         * lib/atanl.c: Include isnanl.h.
13151         (atanl): Perform test for NaN at the beginning of the function and
13152         through a call to isnanl.
13153         * lib/cosl.c: Include isnanl.h.
13154         (cosl): Perform test for NaN at the beginning of the function and
13155         through a call to isnanl.
13156         * lib/ldexpl.c: Include isnanl.h.
13157         (ldexpl): Perform test for NaN through a call to isnanl.
13158         * lib/logl.c: Include isnanl.h.
13159         (logl): Perform test for NaN at the beginning of the function and
13160         through a call to isnanl.
13161         * lib/sinl.c: Include isnanl.h.
13162         (sinl): Perform test for NaN at the beginning of the function and
13163         through a call to isnanl.
13164         * lib/sqrtl.c: Include isnanl.h.
13165         (sqrtl): Perform test for NaN at the beginning of the function and
13166         through a call to isnanl.
13167         * lib/tanl.c: Include isnanl.h.
13168         (tanl): Perform test for NaN at the beginning of the function and
13169         through a call to isnanl.
13170         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
13171         * modules/mathl (Depends-on): Add isnanl.
13172
13173 2007-03-26  Eric Blake  <ebb9@byu.net>
13174
13175         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
13176         regression in logic sense of previous patch.
13177
13178 2007-03-26  Bruno Haible  <bruno@clisp.org>
13179
13180         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
13181         unportable shell command "if ! ...".
13182         Reported by Ralf Wildenhues.
13183
13184 2007-03-25  Bruno Haible  <bruno@clisp.org>
13185
13186         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
13187         <sysexits.h> file, and only add EX_CONFIG.
13188         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
13189         absolute file name and whether it is sufficient. Substitute also
13190         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
13191         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
13192         ABSOLUTE_SYSEXITS_H into sysexits.h.
13193
13194 2007-03-25  Bruno Haible  <bruno@clisp.org>
13195
13196         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
13197         hints is NULL.
13198
13199 2007-03-25  Bruno Haible  <bruno@clisp.org>
13200
13201         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
13202         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
13203
13204 2007-03-25  Bruno Haible  <bruno@clisp.org>
13205
13206         * lib/vasnprintf.c: Include langinfo.h.
13207         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
13208         multithread-safe.
13209         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
13210         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
13211         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
13212         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
13213         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
13214         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
13215         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
13216         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
13217         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
13218         Reported by Simon Josefsson.
13219
13220 2007-03-25  Bruno Haible  <bruno@clisp.org>
13221
13222         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
13223         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
13224         * modules/vasnprintf (Depends-on): Add stdint.
13225
13226 2007-03-25  Bruno Haible  <bruno@clisp.org>
13227
13228         * modules/fpieee: New file.
13229         * m4/fpieee.m4: New file.
13230         * modules/isnan-nolibm (Depends-on): Add fpieee.
13231         * modules/isnanl-nolibm (Depends-on): Add fpieee.
13232         * modules/isnanl (Depends-on): Add fpieee.
13233
13234 2007-03-25  Bruno Haible  <bruno@clisp.org>
13235
13236         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
13237
13238 2007-03-25  Bruno Haible  <bruno@clisp.org>
13239
13240         Avoid test failures on IRIX 6.5.
13241         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
13242         (main): Use it.
13243         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
13244         macros.
13245         (main): Use them.
13246
13247 2007-03-25  Bruno Haible  <bruno@clisp.org>
13248
13249         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
13250         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
13251         exists but doesn't work.
13252         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
13253         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
13254         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
13255         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
13256
13257 2007-03-25  Bruno Haible  <bruno@clisp.org>
13258
13259         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
13260         returns inf. Needed on IRIX 6.5.
13261
13262 2007-03-25  Bruno Haible  <bruno@clisp.org>
13263
13264         * tests/test-frexpl.c: Include isnanl-nolibm.h.
13265         (main): Use isnanl instead of x != x idiom.
13266         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
13267
13268         * tests/test-frexp.c: Include isnan.h.
13269         (main): Use isnan instead of x != x idiom.
13270         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
13271
13272 2007-03-25  Bruno Haible  <bruno@clisp.org>
13273
13274         * tests/test-frexp.c (NaN): New function/macro.
13275         (main): Use it instead of 0.0 / 0.0.
13276         * tests/test-isnan.c (NaN): New function/macro.
13277         (main): Use it instead of 0.0 / 0.0.
13278         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
13279         (test_function): Use it instead of 0.0 / 0.0.
13280         * tests/test-vasprintf-posix.c (NaN): New function/macro.
13281         (test_function): Use it instead of 0.0 / 0.0.
13282         * tests/test-snprintf-posix.h (NaN): New function/macro.
13283         (test_function): Use it instead of 0.0 / 0.0.
13284         * tests/test-sprintf-posix.h (NaN): New function/macro.
13285         (test_function): Use it instead of 0.0 / 0.0.
13286         * tests/test-fprintf-posix.h (NaN): New function/macro.
13287         (test_function): Use it instead of 0.0 / 0.0.
13288         * tests/test-printf-posix.h (NaN): New function/macro.
13289         (test_function): Use it instead of 0.0 / 0.0.
13290
13291         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
13292
13293 2007-03-25  Bruno Haible  <bruno@clisp.org>
13294
13295         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
13296
13297 2007-03-25  Bruno Haible  <bruno@clisp.org>
13298
13299         * lib/regexec.c (merge_state_with_log): Make static.
13300
13301 2007-03-25  Bruno Haible  <bruno@clisp.org>
13302
13303         * lib/trigl.c (kernel_rem_pio2): Make static.
13304
13305 2007-03-25  Bruno Haible  <bruno@clisp.org>
13306
13307         * lib/sincosl.c (sincosl_table): Make static.
13308
13309 2007-03-25  Bruno Haible  <bruno@clisp.org>
13310
13311         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
13312         if the compiler does not support C99.
13313
13314 2007-03-25  Bruno Haible  <bruno@clisp.org>
13315
13316         * modules/time (Makefile.am): Ensure all rule action lines start with a
13317         tab.
13318
13319 2007-03-24  Bruno Haible  <bruno@clisp.org>
13320
13321         * modules/tsearch-tests: New file.
13322         * tests/test-tsearch.sh: New file.
13323         * tests/test-tsearch.c: New file, mostly copied from glibc.
13324
13325         * modules/search-tests: New file.
13326         * tests/test-search.c: New file.
13327
13328         * modules/search: New file.
13329         * lib/search_.h: New file, incorporating lib/tsearch.h.
13330         * m4/search_h.m4: New file.
13331         * lib/tsearch.h: Remove file.
13332         * lib/tsearch.c: Include search.h instead of tsearch.h.
13333         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
13334         HAVE_TSEARCH.
13335         * modules/tsearch (Files): Remove lib/tsearch.h.
13336         (Depends-on): Add search.
13337         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
13338         (Include): Change tsearch.h into search.h.
13339
13340 2007-03-24  Bruno Haible  <bruno@clisp.org>
13341
13342         * modules/fpucw: New file.
13343         * lib/fpucw.h: New file.
13344         * lib/frexp.c: Include fpucw.h.
13345         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
13346         (FUNC): Use them.
13347         * lib/printf-frexp.c: Include fpucw.h.
13348         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
13349         (FUNC): Use them.
13350         * lib/vasnprintf.c: Include fpucw.h.
13351         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
13352         'long double' calculations.
13353         * tests/test-frexpl.c: Include fpucw.h.
13354         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
13355         * tests/test-printf-frexpl.c: Include fpucw.h.
13356         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
13357         * modules/frexpl (Depends-on): Add fpucw.
13358         * modules/printf-frexpl (Depends-on): Likewise.
13359         * modules/fprintf-posix (Depends-on): Likewise.
13360         * modules/snprintf-posix (Depends-on): Likewise.
13361         * modules/sprintf-posix (Depends-on): Likewise.
13362         * modules/vasnprintf-posix (Depends-on): Likewise.
13363         * modules/vasprintf-posix (Depends-on): Likewise.
13364         * modules/vfprintf-posix (Depends-on): Likewise.
13365         * modules/vsnprintf-posix (Depends-on): Likewise.
13366         * modules/vsprintf-posix (Depends-on): Likewise.
13367         * modules/frexpl-tests (Depends-on): Likewise.
13368         * modules/printf-frexpl-tests (Depends-on): Likewise.
13369
13370 2007-03-24  Bruno Haible  <bruno@clisp.org>
13371
13372         * lib/float+.h: New file.
13373         * lib/isnan.c: Include float+.h.
13374         (SIZE): New macro.
13375         (FUNC): Compare only SIZE bytes of the value.
13376         * lib/vasnprintf.c: Include float+.h.
13377         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
13378         SIZEOF_LDBL or SIZEOF_DBL bytes.
13379         * modules/isnan-nolibm (Files): Add lib/float+.h.
13380         * modules/isnanl-nolibm (Files): Add lib/float+.h.
13381         * modules/isnanl (Files): Add lib/float+.h.
13382         * modules/vasnprintf (Files): Add lib/float+.h.
13383
13384 2007-03-24  Bruno Haible  <bruno@clisp.org>
13385
13386         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
13387         include isnanl-nolibm.h.
13388
13389 2007-03-24  Bruno Haible  <bruno@clisp.org>
13390
13391         * tests/test-read-file.c (main): Don't produce spurious output for
13392         expected situations. Make the test fail if it encountered unexpected
13393         results.
13394
13395 2007-03-24  Bruno Haible  <bruno@clisp.org>
13396
13397         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
13398         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
13399
13400 2007-03-24  Bruno Haible  <bruno@clisp.org>
13401
13402         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
13403
13404 2007-03-24  Bruno Haible  <bruno@clisp.org>
13405
13406         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
13407         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
13408
13409         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
13410         * modules/utf8-ucs4: Turn into a symbolic link to module
13411         unistr/u8-mbtouc.
13412
13413         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
13414         utf8-ucs4-unsafe.
13415         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
13416         unistr/u8-mbtouc-unsafe.
13417
13418         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
13419         * modules/utf16-ucs4: Turn into a symbolic link to module
13420         unistr/u16-mbtouc.
13421
13422         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
13423         utf16-ucs4-unsafe.
13424         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
13425         unistr/u16-mbtouc-unsafe.
13426
13427         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
13428         * modules/ucs4-utf8: Turn into a symbolic link to module
13429         unistr/u8-ubtomb.
13430
13431         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
13432         * modules/ucs4-utf16: Turn into a symbolic link to module
13433         unistr/u16-ubtomb.
13434
13435 2007-03-24  Bruno Haible  <bruno@clisp.org>
13436
13437         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
13438         Enable the function only if HAVE_INLINE.
13439         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
13440         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
13441         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
13442         Enable the function only if HAVE_INLINE.
13443         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
13444         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
13445         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
13446         Enable the function only if HAVE_INLINE.
13447         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
13448         Enable the function only if HAVE_INLINE.
13449         * modules/utf8-ucs4: Update.
13450         * modules/utf8-ucs4-unsafe: Update.
13451         * modules/utf16-ucs4: Update.
13452         * modules/utf16-ucs4-unsafe: Update.
13453         * modules/ucs4-utf8: Update.
13454         * modules/ucs4-utf16: Update.
13455
13456 2007-03-24  Bruno Haible  <bruno@clisp.org>
13457
13458         * lib/utf8-ucs4.h: Remove file.
13459         * lib/utf8-ucs4-unsafe.h: Remove file.
13460         * lib/utf16-ucs4.h: Remove file.
13461         * lib/utf16-ucs4-unsafe.h: Remove file.
13462         * lib/ucs4-utf8.h: Remove file.
13463         * lib/ucs4-utf16.h: Remove file.
13464         * lib/unistr.h: Include their previous contents.
13465         * m4/utf-ucs4.m4: Remove file.
13466         * m4/ucs4-utf.m4: Remove file.
13467         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
13468         (Depends-on): Add unistr/base.
13469         (configure.ac): Remove gl_UTF_UCS4.
13470         (Makefile.am): Update.
13471         (Include): Change to unistr.h.
13472         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
13473         (Depends-on): Add unistr/base.
13474         (configure.ac): Remove gl_UTF_UCS4.
13475         (Makefile.am): Update.
13476         (Include): Change to unistr.h.
13477         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
13478         (Depends-on): Add unistr/base.
13479         (configure.ac): Remove gl_UTF_UCS4.
13480         (Makefile.am): Update.
13481         (Include): Change to unistr.h.
13482         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
13483         (Depends-on): Add unistr/base.
13484         (configure.ac): Remove gl_UTF_UCS4.
13485         (Makefile.am): Update.
13486         (Include): Change to unistr.h.
13487         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
13488         (Depends-on): Add unistr/base.
13489         (configure.ac): Remove gl_UCS4_UTF.
13490         (Makefile.am): Update.
13491         (Include): Change to unistr.h.
13492         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
13493         (Depends-on): Add unistr/base.
13494         (configure.ac): Remove gl_UCS4_UTF.
13495         (Makefile.am): Update.
13496         (Include): Change to unistr.h.
13497         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
13498         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
13499         utf8-ucs4-unsafe.h.
13500         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
13501         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
13502         utf16-ucs4-unsafe.h.
13503         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
13504         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
13505         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
13506         * lib/unistr/u8-strchr.c: Likewise.
13507         * lib/unistr/u8-strrchr.c: Likewise.
13508         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
13509         * lib/unistr/u16-strchr.c: Likewise.
13510         * lib/unistr/u16-strrchr.c: Likewise.
13511         * lib/striconveh.c: Update.
13512         * lib/linebreak.c: Update.
13513
13514 2007-03-24  Bruno Haible  <bruno@clisp.org>
13515
13516         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
13517         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
13518
13519 2007-03-22  Bruno Haible  <bruno@clisp.org>
13520
13521         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
13522
13523 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
13524
13525         * MODULES.html.sh (File system functions): New module write-any-file.
13526         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
13527         * m4/write-any-file.m4: New files.
13528
13529 2007-03-23  Eric Blake  <ebb9@byu.net>
13530
13531         * gnulib-tool: Rearrange space-tab sequences, since some editors
13532         like to eat them.
13533
13534 2007-03-23  Eric Blake  <ebb9@byu.net>
13535
13536         * lib/version-etc.c (version_etc_va): Update license wording to
13537         be more concise.  Recommended by Richard Stallman.
13538
13539 2007-03-22  Bruno Haible  <bruno@clisp.org>
13540
13541         * lib/poll.c (MSG_PEEK): New fallback definition.
13542
13543 2007-03-22  Bruno Haible  <bruno@clisp.org>
13544
13545         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
13546         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
13547         (main): Update.
13548         Fixes a compilation error on BeOS.
13549
13550 2007-03-22  Bruno Haible  <bruno@clisp.org>
13551
13552         * modules/frexpl-tests: New file.
13553         * tests/test-frexpl.c: New file.
13554
13555         * modules/frexpl: New file.
13556         * m4/frexpl.m4: New file.
13557         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
13558         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
13559         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
13560         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
13561         (Depends-on): Add frexpl. Remove isnanl-nolibm.
13562         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
13563
13564 2007-03-22  Bruno Haible  <bruno@clisp.org>
13565
13566         * lib/frexpl.c: Share code with lib/frexp.c.
13567         * modules/mathl (Files): Add lib/frexp.c.
13568         (Depends-on): Add isnanl-nolibm.
13569
13570 2007-03-22  Bruno Haible  <bruno@clisp.org>
13571
13572         * modules/printf-frexp (Files): Add m4/frexp.m4.
13573         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
13574         only if the found frexp function actually works.
13575
13576 2007-03-22  Bruno Haible  <bruno@clisp.org>
13577
13578         * lib/frexp.c: Remove older implementation that uses divisions.
13579
13580 2007-03-21  Bruno Haible  <bruno@clisp.org>
13581
13582         * modules/frexp-tests: New file.
13583         * tests/test-frexp.c: New file.
13584
13585         * modules/frexp: New file.
13586         * lib/frexp.c: New file.
13587         * m4/frexp.m4: New file.
13588         * lib/math_.h (frexp): New declaration.
13589         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
13590         REPLACE_FREXP.
13591         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
13592
13593 2007-03-21  Bruno Haible  <bruno@clisp.org>
13594
13595         * modules/isnanl-tests: New file.
13596         * tests/test-isnanl.c: New file.
13597
13598         * modules/isnanl: New file.
13599         * lib/isnanl.h: New file.
13600         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
13601         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
13602         gl_FUNC_ISNANL_WORKS.
13603         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
13604         New macros.
13605
13606 2007-03-21  Bruno Haible  <bruno@clisp.org>
13607
13608         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
13609         lib/isnanl.h.
13610         (Include): Update.
13611         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
13612         * lib/vasnprintf.c: Update.
13613         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
13614         tests/test-isnanl.h, remove tests/test-isnanl.c.
13615         (Makefile.am): Update.
13616         * tests/test-isnanl-nolibm.c: New file.
13617         * tests/test-isnanl.h: New file.
13618         * tests/test-isnanl.c: Remove file.
13619
13620 2007-03-21  Jim Meyering  <jim@meyering.net>
13621
13622         When trying to open ".", treat ESTALE like EACCES.
13623         * lib/savewd.c (savewd_save): Resort to forking not just upon
13624         failure with EACCES, but also when errno is ESTALE.
13625
13626 2007-03-20  Bruno Haible  <bruno@clisp.org>
13627
13628         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
13629         Needed on AIX 5.1. Reported by Matthew Woehlke.
13630
13631 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
13632
13633         Suggestions by Bruno Haible:
13634         * lib/acl-internal.h: Include "gettext.h" rather than rolling
13635         our own.
13636         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
13637         * modules/acl (Depends-on): Add gettext.
13638
13639 2007-03-19  Bruno Haible  <bruno@clisp.org>
13640
13641         * modules/iconvme: Remove file.
13642         * lib/iconvme.h: Remove file.
13643         * lib/iconvme.c: Remove file.
13644         * m4/iconvme.m4: Remove file.
13645
13646 2007-03-19  Bruno Haible  <bruno@clisp.org>
13647
13648         * doc/relocatable-maint.texi: Break long shell script line.
13649         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
13650
13651 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
13652
13653         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
13654         handle file_has_acl.
13655         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
13656         * lib/acl.c: Move header inclusions and related macro defns into
13657         lib/acl-internal.h.
13658         (S_ISLNK): Remove defn, since that's now done for us.
13659         (file_has_acl): Move to lib/file-has-acl.c.
13660         Call acl_trivial if available.  This is the crucial part of the fix.
13661         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
13662         shared within the library.  Rewrite a bit, partly to make it compatible
13663         with the GNU coding style.
13664         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
13665         Remove unnecessary double-quotes.
13666         Don't test for acl_to_text; the build will catch that.
13667         Replace acl_entries if it doesn't exist and it is needed.
13668         Check for -lsec and acl_trivial (as used on Solaris 10).
13669         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
13670         lib/file-has-acl.c.
13671         (Depends-on): Add sys_stat, for S_ISLNK.
13672
13673 2007-03-19  Ben Pfaff  <blp@gnu.org>
13674
13675         * doc/gnulib.texi: Fix typos.
13676         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
13677
13678 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
13679
13680         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
13681         If size is zero here, buf must be zero.
13682
13683 2007-03-19  Simon Josefsson  <simon@josefsson.org>
13684
13685         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
13686         <bruno@clisp.org>.
13687
13688 2007-03-18  Bruno Haible  <bruno@clisp.org>
13689
13690         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
13691         Suggested by Eric Blake.
13692
13693 2007-03-18  Ben Pfaff  <blp@gnu.org>
13694
13695         * doc/relocatable.texi: Recommend using as prefix a directory
13696         that does not exist and will never be created.  Based on
13697         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
13698         and others.
13699
13700 2007-03-17  Bruno Haible  <bruno@clisp.org>
13701
13702         * lib/fchownat.c: Include lchown.h.
13703
13704 2007-03-17  Bruno Haible  <bruno@clisp.org>
13705
13706         Fix endless loop when the given allocated size was > INT_MAX.
13707         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
13708         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
13709         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
13710         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
13711         * lib/sprintf.c (sprintf): Likewise.
13712
13713 2007-03-17  Bruno Haible  <bruno@clisp.org>
13714
13715         * tests/test-argp-2.sh (func_compare): Output a context diff.
13716
13717 2007-03-17  Bruno Haible  <bruno@clisp.org>
13718
13719         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
13720         locale's decimal-point character.
13721
13722 2007-03-17  Bruno Haible  <bruno@clisp.org>
13723
13724         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
13725         before comparing it. Needed because on some platforms (e.g. x86) a
13726         'long double' occupies less bytes than sizeof (long double).
13727
13728 2007-03-17  Bruno Haible  <bruno@clisp.org>
13729
13730         * tests/test-crc.c (main): Make printf statements 64-bit clean.
13731         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
13732         * tests/test-getaddrinfo.c (simple): Likewise.
13733         * tests/test-read-file.c (main): Likewise.
13734
13735 2007-03-17  Bruno Haible  <bruno@clisp.org>
13736
13737         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
13738
13739 2007-03-17  Bruno Haible  <bruno@clisp.org>
13740
13741         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
13742         unused variable.
13743
13744 2007-03-17  Bruno Haible  <bruno@clisp.org>
13745
13746         * tests/test-c-strcasecmp.c: Include c-strcase.h.
13747         * tests/test-c-strncasecmp.c: Likewise.
13748
13749 2007-03-17  Bruno Haible  <bruno@clisp.org>
13750
13751         * modules/stdlib (Depends-on): Add unistd.
13752         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
13753         Needed for MacOS X 10.3.
13754
13755 2007-03-17  Bruno Haible  <bruno@clisp.org>
13756
13757         * lib/unistr/u-strdup.h: Include <stdlib.h>.
13758
13759 2007-03-17  Bruno Haible  <bruno@clisp.org>
13760
13761         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
13762
13763 2007-03-17  Bruno Haible  <bruno@clisp.org>
13764
13765         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
13766         to reflect files copied from gnulib (with or without modifications).
13767         Suggested by Jim Meyering.
13768
13769 2007-03-17  Eric Blake  <ebb9@byu.net>
13770
13771         * NEWS: Document stdlib change from 2007-02-18.
13772
13773 2007-03-17  Jim Meyering  <jim@meyering.net>
13774
13775         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
13776         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
13777         someone uses a name containing shell meta-characters.
13778         Reported by Alfred M. Szmidt.
13779
13780         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
13781
13782 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
13783
13784         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
13785         and copy gettext configuration files only if configure.ac contains
13786         a use of AM_GNU_GETTEXT_VERSION.
13787
13788 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
13789
13790         * build-aux/bootstrap (gnulib_name): New variable.
13791         (gnulib_tool_options): Use it.
13792
13793 2007-03-13  Simon Josefsson  <simon@josefsson.org>
13794
13795         * tests/test-des.c: Use new namespace.
13796
13797 2007-03-15  Bruno Haible  <bruno@clisp.org>
13798
13799         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
13800         Reported by James Youngman <jay@gnu.org>.
13801
13802 2007-03-15  Bruno Haible  <bruno@clisp.org>
13803
13804         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
13805         declared prototype. Needed with cc on OSF/1 5.1.
13806
13807 2007-03-15  Bruno Haible  <bruno@clisp.org>
13808
13809         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
13810         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
13811         (struct gl_list_implementation): Add dispose_fn argument to the
13812         'create_empty', 'create' methods.
13813         (struct gl_list_impl_base): Add field 'dispose_fn'.
13814         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
13815         argument.
13816         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
13817         dispose_fn argument.
13818         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
13819         dispose_fn on the dropped values.
13820         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
13821         dispose_fn argument.
13822         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
13823         dropped values.
13824         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
13825         (gl_tree_remove_node): Call dispose_fn on the dropped value.
13826         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
13827         (gl_tree_remove_node): Call dispose_fn on the dropped value.
13828         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
13829         argument.
13830         (gl_tree_list_free): Call dispose_fn on the dropped values.
13831         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
13832         the dropped values.
13833         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
13834         Add dispose_fn argument.
13835         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
13836         Call dispose_fn on the dropped values.
13837         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
13838         Add dispose_fn argument.
13839         (gl_sublist_create): Initialize the 'dispose_fn' field.
13840         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
13841         * tests/test-array_list.c (main): Update.
13842         * tests/test-carray_list.c (main): Update.
13843         * tests/test-avltree_list.c (main): Update.
13844         * tests/test-rbtree_list.c (main): Update.
13845         * tests/test-avltreehash_list.c (main): Update.
13846         * tests/test-rbtreehash_list.c (main): Update.
13847         * tests/test-linked_list.c (main): Update.
13848         * tests/test-linkedhash_list.c (main): Update.
13849         * tests/test-array_oset.c (main): Update.
13850
13851 2007-03-15  Bruno Haible  <bruno@clisp.org>
13852
13853         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
13854         (gl_oset_create_empty): Add dispose_fn argument.
13855         (struct gl_oset_implementation): Add dispose_fn argument to
13856         'create_empty' method.
13857         (struct gl_oset_impl_base): Add dispose_fn field.
13858         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
13859         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
13860         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
13861         values.
13862         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
13863         (gl_tree_oset_free): Call dispose_fn on the dropped values.
13864         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
13865         dropped value.
13866         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
13867         dropped value.
13868         * tests/test-array_oset.c (main): Update.
13869         * tests/test-avltree_oset.c (main): Update.
13870         * tests/test-rbtree_oset.c (main): Update.
13871         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
13872
13873 2007-03-13  Bruno Haible  <bruno@clisp.org>
13874
13875         * tests/test-stdbool.c (i): Update after last patch.
13876
13877 2007-03-12  Bruno Haible  <bruno@clisp.org>
13878
13879         * lib/quotearg.c: Include <wctype.h> early, before the definition of
13880         the iswprint macro. Needed on Solaris 2.5.1.
13881
13882 2007-03-12  Bruno Haible  <bruno@clisp.org>
13883
13884         * tests/test-printf-frexp.c (main): Declare x as volatile.
13885
13886 2007-03-12  Simon Josefsson  <simon@josefsson.org>
13887
13888         * doc/gnulib.texi (Build robot for gnulib): New section.
13889
13890 2007-03-12  Jim Meyering  <jim@meyering.net>
13891
13892         * build-aux/bootstrap: New file.
13893         * build-aux/bootstrap.conf: New file, from coreutils.
13894
13895 2007-03-11  Bruno Haible  <bruno@clisp.org>
13896
13897         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
13898
13899 2007-03-12  Simon Josefsson  <simon@josefsson.org>
13900
13901         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
13902         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
13903         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
13904
13905 2007-03-11  Bruno Haible  <bruno@clisp.org>
13906
13907         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
13908         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
13909
13910 2007-03-11  Bruno Haible  <bruno@clisp.org>
13911
13912         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
13913         formula. Needed for SunPRO C 5.0.
13914
13915 2007-03-11  Bruno Haible  <bruno@clisp.org>
13916
13917         * modules/long-options (Depends-on): Add getopt.
13918
13919 2007-03-11  Bruno Haible  <bruno@clisp.org>
13920
13921         * modules/modechange (Depends-on): Add stdbool.
13922
13923 2007-03-11  Bruno Haible  <bruno@clisp.org>
13924
13925         * modules/i-ring (Depends-on): Add stdbool.
13926
13927 2007-03-11  Bruno Haible  <bruno@clisp.org>
13928
13929         * modules/gc-des (Depends-on): Add stdbool.
13930
13931 2007-03-11  Bruno Haible  <bruno@clisp.org>
13932
13933         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
13934
13935 2007-03-11  Bruno Haible  <bruno@clisp.org>
13936
13937         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
13938
13939 2007-03-11  Bruno Haible  <bruno@clisp.org>
13940
13941         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
13942
13943 2007-03-11  Bruno Haible  <bruno@clisp.org>
13944
13945         * lib/vasnprintf.c (sprintf): Undefine.
13946
13947 2007-03-11  Bruno Haible  <bruno@clisp.org>
13948
13949         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
13950         initializers in SunPRO C and Compaq C compilers.
13951
13952 2007-03-11  Bruno Haible  <bruno@clisp.org>
13953
13954         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
13955         decrementing code ANSI C compliant.
13956
13957 2007-03-11  Bruno Haible  <bruno@clisp.org>
13958
13959         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
13960         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
13961
13962 2007-03-11  Bruno Haible  <bruno@clisp.org>
13963
13964         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
13965         <stdbool.h> substitute doesn't pass.
13966
13967 2007-03-11  Bruno Haible  <bruno@clisp.org>
13968
13969         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
13970
13971 2007-03-11  Bruno Haible  <bruno@clisp.org>
13972
13973         * gnulib-tool (func_create_megatestdir): Create also an autobuild
13974         script, for submission to autobuild.josefsson.org.
13975
13976 2007-03-10  Bruno Haible  <bruno@clisp.org>
13977
13978         * modules/canonicalize-lgpl-tests: New file.
13979         * tests/test-canonicalize-lgpl.sh: New file.
13980         * tests/test-canonicalize-lgpl.c: New file.
13981
13982         * modules/c-strcase-tests: New file.
13983         * tests/test-c-strcase.sh: New file.
13984         * tests/test-c-strcasecmp.c: New file.
13985         * tests/test-c-strncasecmp.c: New file.
13986
13987         * modules/atexit-tests: New file.
13988         * tests/test-atexit.sh: New file.
13989         * tests/test-atexit.c: New file.
13990
13991 2007-03-10  Bruno Haible  <bruno@clisp.org>
13992
13993         * tests/test-binary-io.sh: Use temporary filenames that are not so
13994         likely to clash with those of other tests (in a parallel make).
13995         * tests/test-binary-io.c: Likewise.
13996
13997 2007-03-10  Bruno Haible  <bruno@clisp.org>
13998
13999         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
14000         fallback; use #error instead.
14001         Suggested by Simon Josefsson.
14002
14003 2007-03-10  Bruno Haible  <bruno@clisp.org>
14004
14005         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
14006         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
14007         first and the last.
14008
14009 2007-03-10  Bruno Haible  <bruno@clisp.org>
14010
14011         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
14012
14013 2007-03-10  Bruno Haible  <bruno@clisp.org>
14014
14015         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
14016         "make distcheck".
14017         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
14018         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
14019         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
14020
14021 2007-03-10  Bruno Haible  <bruno@clisp.org>
14022
14023         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
14024         variable.
14025         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
14026         variable.
14027
14028 2007-03-09  Eric Blake  <ebb9@byu.net>
14029         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
14030
14031         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
14032         types are not being provided by gnulib.
14033         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
14034         types are supported.
14035
14036 2007-03-10  Bruno Haible  <bruno@clisp.org>
14037
14038         * lib/stdio_.h (__attribute__): New macro.
14039         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
14040         vsprintf): Specify __attribute__ __format__ for GCC.
14041         Suggested by Eric Blake.
14042
14043 2007-03-09  Bruno Haible  <bruno@clisp.org>
14044
14045         * modules/printf-posix-tests: New file.
14046         * tests/test-printf-posix.sh: New file.
14047         * tests/test-printf-posix.c: New file.
14048
14049         * modules/printf-posix: New file.
14050         * lib/printf.c: New file.
14051         * m4/printf-posix-rpl.m4: New file.
14052         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
14053         REPLACE_PRINTF.
14054         * lib/stdio_.h (printf): New declaration.
14055         (format, __format__, ____printf____, ____scanf____, ____strftime____,
14056         ____strfmon____): New macros.
14057         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
14058         REPLACE_PRINTF.
14059
14060 2007-03-09  Bruno Haible  <bruno@clisp.org>
14061
14062         * tests/test-vasnprintf-posix2.sh: New file.
14063         * tests/test-vasnprintf-posix2.c: New file.
14064         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
14065         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
14066         (Makefile.am): Activate test-vasnprintf-posix2.sh.
14067
14068         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
14069         a locale dependent decimal point, rather than always '.'.
14070
14071 2007-03-09  Eric Blake  <ebb9@byu.net>
14072
14073         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
14074         spite of platforms like Tandem/NSK that define it to -1.
14075
14076 2007-03-08  Bruno Haible  <bruno@clisp.org>
14077
14078         * modules/vprintf-posix-tests: New file.
14079         * tests/test-vprintf-posix.sh: New file.
14080         * tests/test-vprintf-posix.c: New file.
14081         * tests/test-printf-posix.h: New file.
14082
14083         * modules/vprintf-posix: New file.
14084         * lib/vprintf.c: New file.
14085         * m4/vprintf-posix.m4: New file.
14086         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
14087         REPLACE_VPRINTF.
14088         * lib/stdio_.h (vprintf): New declaration.
14089         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
14090         REPLACE_VPRINTF.
14091
14092 2007-03-08  Bruno Haible  <bruno@clisp.org>
14093
14094         * modules/fprintf-posix-tests: New file.
14095         * tests/test-fprintf-posix.sh: New file.
14096         * tests/test-fprintf-posix.c: New file.
14097
14098         * modules/fprintf-posix: New file.
14099         * lib/fprintf.c: New file.
14100         * m4/fprintf-posix.m4: New file.
14101         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
14102         REPLACE_FPRINTF.
14103         * lib/stdio_.h (fprintf): New declaration.
14104         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
14105         REPLACE_FPRINTF.
14106
14107 2007-03-08  Bruno Haible  <bruno@clisp.org>
14108
14109         * modules/vfprintf-posix-tests: New file.
14110         * tests/test-vfprintf-posix.sh: New file.
14111         * tests/test-vfprintf-posix.c: New file.
14112         * tests/test-fprintf-posix.h: New file.
14113         * tests/test-fprintf-posix.out: New file.
14114
14115         * modules/vfprintf-posix: New file.
14116         * lib/vfprintf.c: New file.
14117         * m4/vfprintf-posix.m4: New file.
14118         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
14119         REPLACE_VFPRINTF.
14120         * lib/stdio_.h (vfprintf): New declaration.
14121         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
14122         REPLACE_VFPRINTF.
14123
14124 2007-03-08  Bruno Haible  <bruno@clisp.org>
14125
14126         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
14127
14128 2007-03-08  Bruno Haible  <bruno@clisp.org>
14129
14130         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
14131         instead of 'expr' invocations.
14132         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
14133         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
14134         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
14135         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14136         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
14137         Suggested by Paul Eggert.
14138
14139 2007-03-08  Bruno Haible  <bruno@clisp.org>
14140
14141         * modules/fseterr-tests: New file.
14142         * tests/test-fseterr.c: New file.
14143
14144         * modules/fseterr: New file.
14145         * lib/fseterr.h: New file.
14146         * lib/fseterr.c: New file.
14147
14148 2007-03-08  Bruno Haible  <bruno@clisp.org>
14149
14150         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
14151         * lib/getopt_.h: Likewise.
14152         * lib/mbswidth.h: Likewise.
14153         * lib/setenv.h: Likewise.
14154         * lib/vasnprintf.h: Likewise.
14155         * lib/vasprintf.h: Likewise.
14156         * lib/verror.h: Likewise.
14157         * lib/xsetenv.h: Likewise.
14158         * lib/xvasprintf.h: Likewise.
14159
14160 2007-03-08  Jim Meyering  <jim@meyering.net>
14161
14162         * users.txt: Add parted.
14163
14164         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
14165
14166 2007-03-07  Bruno Haible  <bruno@clisp.org>
14167
14168         * m4/printf.m4: Make the shell script snippets copy&pastable.
14169
14170 2007-03-02  Bruno Haible  <bruno@clisp.org>
14171
14172         * lib/netinet_in_.h: New file.
14173         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
14174         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
14175         * modules/netinet_in (Files): Add lib/netinet_in_.h.
14176         (Depends-on): Add absolute-header.
14177         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
14178         into netinet/in.h.
14179
14180 2007-03-03  Bruno Haible  <bruno@clisp.org>
14181
14182         * lib/sys_select_.h: New file.
14183         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
14184         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
14185         * modules/sys_select (Files): Add lib/sys_select_.h.
14186         (Depends-on): Add absolute-header.
14187         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
14188         into sys/select.h.
14189
14190 2007-03-02  Bruno Haible  <bruno@clisp.org>
14191
14192         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
14193         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
14194         values.
14195         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
14196         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
14197         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
14198         * modules/sys_socket (Depends-on): Add absolute-header.
14199         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
14200         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
14201         (Include): Remove requirement of inclusion of <sys/types.h>.
14202
14203 2007-03-02  Bruno Haible  <bruno@clisp.org>
14204
14205         * lib/byteswap_.h (bswap_32): Fix formula.
14206
14207 2007-03-06  Bruno Haible  <bruno@clisp.org>
14208
14209         * modules/sprintf-posix-tests: New file.
14210         * tests/test-sprintf-posix.c: New file.
14211
14212         * modules/sprintf-posix: New file.
14213         * lib/sprintf.c: New file.
14214         * m4/sprintf-posix.m4: New file.
14215         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
14216         REPLACE_SPRINTF.
14217         * lib/stdio_.h (sprintf): New declaration.
14218         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
14219         REPLACE_SPRINTF.
14220
14221 2007-03-06  Bruno Haible  <bruno@clisp.org>
14222
14223         * modules/vsprintf-posix-tests: New file.
14224         * tests/test-vsprintf-posix.c: New file.
14225         * tests/test-sprintf-posix.h: New file.
14226
14227         * modules/vsprintf-posix: New file.
14228         * lib/vsprintf.c: New file.
14229         * m4/vsprintf-posix.m4: New file.
14230         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
14231         REPLACE_VSPRINTF.
14232         * lib/stdio_.h (vsprintf): New declaration.
14233         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
14234         REPLACE_VSPRINTF.
14235
14236 2007-03-06  Bruno Haible  <bruno@clisp.org>
14237
14238         * modules/vsnprintf (Depend-on): Remove minmax.
14239
14240 2007-03-06  Bruno Haible  <bruno@clisp.org>
14241
14242         * modules/snprintf-posix-tests: New file.
14243         * tests/test-snprintf-posix.c: New file.
14244
14245         * modules/snprintf-posix: New file.
14246         * m4/snprintf-posix.m4: New file.
14247         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
14248         gl_FUNC_SNPRINTF.
14249         (gl_FUNC_SNPRINTF): Invoke it.
14250         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
14251         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
14252         is set.
14253         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
14254
14255 2007-03-06  Bruno Haible  <bruno@clisp.org>
14256
14257         * modules/vsnprintf-posix-tests: New file.
14258         * tests/test-vsnprintf-posix.c: New file.
14259         * tests/test-snprintf-posix.h: New file.
14260
14261         * modules/vsnprintf-posix: New file.
14262         * m4/vsnprintf-posix.m4: New file.
14263         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
14264         gl_FUNC_VSNPRINTF.
14265         (gl_FUNC_VSNPRINTF): Invoke it.
14266         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
14267         * lib/stdio_.h (vsnprintf): Define as a replacement if
14268         REPLACE_VSNPRINTF is set.
14269         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
14270
14271 2007-03-06  Bruno Haible  <bruno@clisp.org>
14272
14273         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
14274         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
14275
14276 2007-03-06  Bruno Haible  <bruno@clisp.org>
14277
14278         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
14279         (asinl): Declare also if HAVE_DECL_ASINL is set.
14280         (atanl): Declare also if HAVE_DECL_ATANL is set.
14281         (ceill): Declare also if HAVE_DECL_CEILL is set.
14282         (cosl): Declare also if HAVE_DECL_COSL is set.
14283         (expl): Declare also if HAVE_DECL_EXPL is set.
14284         (floorl): Declare also if HAVE_DECL_FLOORL is set.
14285         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
14286         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
14287         (logl): Declare also if HAVE_DECL_LOGL is set.
14288         (sinl): Declare also if HAVE_DECL_SINL is set.
14289         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
14290         (tanl): Declare also if HAVE_DECL_TANL is set.
14291         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
14292         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
14293         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
14294         declaration of frexpl, ldexpl.
14295         * modules/printf-frexpl (Depends-on): Add math.
14296         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
14297
14298 2007-03-05  Bruno Haible  <bruno@clisp.org>
14299
14300         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
14301         frexpl and ldexpl are declared.
14302         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
14303
14304 2007-03-05  Bruno Haible  <bruno@clisp.org>
14305
14306         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
14307         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
14308
14309 2007-03-05  Bruno Haible  <bruno@clisp.org>
14310
14311         * lib/stdio_.h: Include <stddef.h>.
14312
14313 2007-03-05  Bruno Haible  <bruno@clisp.org>
14314
14315         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
14316
14317 2007-03-05  Bruno Haible  <bruno@clisp.org>
14318
14319         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
14320         NetBSD 4, from Ralf Wildenhues.
14321
14322 2007-03-04  Bruno Haible  <bruno@clisp.org>
14323
14324         * lib/vasprintf.h: Update #if logic for the case when the functions
14325         exist but are overridden.
14326
14327 2007-03-04  Bruno Haible  <bruno@clisp.org>
14328
14329         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
14330         implementations: glibc-2.4 and MacOS X 10.3.
14331         * tests/test-vasnprintf-posix.c (test_function): Test also the case
14332         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
14333         * tests/test-vasprintf-posix.c (test_function): Likewise.
14334
14335 2007-03-04  Bruno Haible  <bruno@clisp.org>
14336
14337         * modules/vasprintf-posix-tests: New file.
14338         * tests/test-vasprintf-posix.c: New file.
14339
14340         * modules/vasprintf-posix: New file.
14341         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
14342         defined.
14343         * m4/vasprintf-posix.m4: New file.
14344         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
14345         gl_FUNC_VASPRINTF.
14346         (gl_FUNC_VASPRINTF): Invoke it.
14347         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
14348         here.
14349         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
14350
14351 2007-03-04  Bruno Haible  <bruno@clisp.org>
14352
14353         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
14354         REPLACE_GETTIMEOFDAY.
14355         * modules/sys_time (Makefile.am): Likewise.
14356         * m4/sys_time_h.m4: Likewise.
14357         * m4/gettimeofday.m4: Likewise.
14358
14359 2007-03-04  Bruno Haible  <bruno@clisp.org>
14360
14361         * modules/vasnprintf-posix-tests: New file.
14362         * tests/test-vasnprintf-posix.c: New file.
14363
14364         * modules/vasnprintf-posix: New file.
14365         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
14366         printf-frexpl.h.
14367         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
14368         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
14369         REPLACE_VASNPRINTF is defined.
14370         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
14371         gl_FUNC_VASNPRINTF.
14372         (gl_FUNC_VASNPRINTF): Invoke it.
14373         * m4/vasnprintf-posix.m4: New file.
14374         * m4/printf.m4: New file.
14375
14376 2007-03-04  Bruno Haible  <bruno@clisp.org>
14377
14378         Compile progreloc.c only if --enable-relocatable is specified.
14379         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
14380         if --enable-relocatable was specified.
14381         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
14382         lib_SOURCES.
14383
14384 2007-03-04  Jim Meyering  <jim@meyering.net>
14385
14386         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
14387         Use it consistently, rather than enumerating errno constants.
14388
14389 2007-03-04  Bruno Haible  <bruno@clisp.org>
14390
14391         * modules/xvasprintf-tests: New file.
14392         * tests/test-xvasprintf.c: New file.
14393
14394         * modules/vasprintf-tests: New file.
14395         * tests/test-vasprintf.c: New file.
14396
14397         * modules/vasnprintf-tests: New file.
14398         * tests/test-vasnprintf.c: New file.
14399
14400         * modules/vsnprintf-tests: New file.
14401         * tests/test-vsnprintf.c: New file.
14402
14403         * modules/snprintf-tests: New file.
14404         * tests/test-snprintf.c: New file.
14405
14406 2007-03-04  Bruno Haible  <bruno@clisp.org>
14407
14408         Compile relocatable.c only if --enable-relocatable is specified.
14409         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
14410         gl_RELOCATABLE_LIBRARY.
14411         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
14412         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
14413         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
14414         gl_RELOCATABLE_LIBRARY.
14415         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
14416         (Makefile.am): Remove lib_SOURCES.
14417         * modules/relocatable-lib-lgpl (configure.ac): Invoke
14418         gl_RELOCATABLE_LIBRARY.
14419         (Makefile.am): Remove lib_SOURCES.
14420         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
14421         always.
14422         * modules/relocatable-prog-wrapper (configure.ac): Invoke
14423         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
14424
14425 2007-03-04  Bruno Haible  <bruno@clisp.org>
14426
14427         * modules/argmatch-tests: New file.
14428         * tests/test-argmatch.c: New file.
14429
14430         * tests/test-allocsa.c (main): Halve the number of loop runs.
14431
14432         * modules/alloca-opt-tests: New file.
14433         * tests/test-alloca-opt.c: New file.
14434
14435 2007-03-04  Jim Meyering  <jim@meyering.net>
14436
14437         Work around difference between Linux ACLs and Solaris 10 ZFS.
14438         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
14439         for EINVAL.
14440
14441 2007-03-03  Bruno Haible  <bruno@clisp.org>
14442
14443         * modules/relocatable-prog (Depends-on): Add back progreloc's
14444         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
14445
14446 2007-03-03  Bruno Haible  <bruno@clisp.org>
14447
14448         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
14449         * modules/relocatable-lib: New file.
14450
14451 2007-03-03  Bruno Haible  <bruno@clisp.org>
14452
14453         * modules/relocatable-prog: Renamed from modules/relocatable.
14454         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
14455
14456 2007-03-03  Bruno Haible  <bruno@clisp.org>
14457
14458         * modules/relocatable-script (Files): Add doc/relocatable.texi,
14459         m4/relocatable-lib.m4.
14460         (Depends-on): Remove 'relocatable'.
14461         (configure.ac): Add gl_RELOCATABLE_NOP.
14462
14463 2007-03-03  Bruno Haible  <bruno@clisp.org>
14464
14465         * modules/relocatable-prog-wrapper: New file.
14466         * modules/relocatable (Depends-on): Add it. Remove all other
14467         dependencies except progname.
14468         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
14469
14470         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
14471         (gl_FUNC_STRERROR): Nop.
14472         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
14473
14474         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
14475         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
14476
14477         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
14478         (gl_FUNC_READLINK): Update.
14479
14480         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
14481
14482 2007-03-03  Bruno Haible  <bruno@clisp.org>
14483
14484         * lib/xreadlink.c: Include <unistd.h> unconditionally.
14485         * modules/xreadlink (Depends-on): Add unistd.
14486         * modules/xreadlink-with-size (Depends-on): Likewise.
14487
14488 2007-03-03  Bruno Haible  <bruno@clisp.org>
14489
14490         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
14491         extracted from gt_FUNC_SETENV.
14492         (gt_FUNC_SETENV): Remove macro.
14493         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
14494         remove gt_FUNC_SETENV.
14495
14496 2007-03-03  Bruno Haible  <bruno@clisp.org>
14497
14498         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
14499         ENABLE_RELOCATABLE here.
14500         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
14501
14502 2007-03-03  Bruno Haible  <bruno@clisp.org>
14503
14504         * modules/rbtreehash-list-tests (Depends-on): Add progname.
14505         * tests/test-rbtreehash_list.c: Include progname.h.
14506         (main): Call set_program_name.
14507
14508         * modules/rbtree-oset-tests (Depends-on): Add progname.
14509         * tests/test-rbtree_oset.c: Include progname.h.
14510         (main): Call set_program_name.
14511
14512         * modules/rbtree-list-tests (Depends-on): Add progname.
14513         * tests/test-rbtree_list.c: Include progname.h.
14514         (main): Call set_program_name.
14515
14516         * modules/linked-list-tests (Depends-on): Add progname.
14517         * tests/test-linked_list.c: Include progname.h.
14518         (main): Call set_program_name.
14519
14520 2007-03-03  Bruno Haible  <bruno@clisp.org>
14521
14522         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
14523         All uses of __restrict changed to _Restrict_.
14524         * lib/glob_.h (__restrict): Remove macro.
14525
14526 2007-03-02  Bruno Haible  <bruno@clisp.org>
14527
14528         * modules/gettext (configure.ac): Require gettext infrastructure
14529         from version 0.16.1.
14530
14531 2007-03-02  Bruno Haible  <bruno@clisp.org>
14532
14533         * modules/linkedhash-list-tests (Depends-on): Add progname.
14534         * tests/test-linkedhash_list.c: Include progname.h.
14535         (main): Call set_program_name.
14536
14537         * modules/carray-list-tests (Depends-on): Add progname.
14538         * tests/test-carray_list.c: Include progname.h.
14539         (main): Call set_program_name.
14540
14541         * modules/avltreehash-list-tests (Depends-on): Add progname.
14542         * tests/test-avltreehash_list.c: Include progname.h.
14543         (main): Call set_program_name.
14544
14545         * modules/avltree-oset-tests (Depends-on): Add progname.
14546         * tests/test-avltree_oset.c: Include progname.h.
14547         (main): Call set_program_name.
14548
14549         * modules/avltree-list-tests (Depends-on): Add progname.
14550         * tests/test-avltree_list.c: Include progname.h.
14551         (main): Call set_program_name.
14552
14553         * modules/array-oset-tests (Depends-on): Add progname.
14554         * tests/test-array_oset.c: Include progname.h.
14555         (main): Call set_program_name.
14556
14557         * modules/array-list-tests (Depends-on): Add progname.
14558         * tests/test-array_list.c: Include progname.h.
14559         (main): Call set_program_name.
14560
14561         * modules/argp-tests (Depends-on): Add progname.
14562         * tests/test-argp.c: Include argp.h first. Include progname.h.
14563         (main): Call set_program_name.
14564
14565 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
14566
14567         * doc/gnulib-tool.texi (Initial import): Reword description of
14568         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
14569         limited effect even if defined after the first system include.
14570
14571 2007-03-01  Bruno Haible  <bruno@clisp.org>
14572
14573         * build-aux/config.libpath: Update to libtool-1.5.22.
14574         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
14575
14576 2007-03-01  Bruno Haible  <bruno@clisp.org>
14577
14578         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
14579         foo_CFLAGS.
14580         Reported by Ralf Wildenhues.
14581
14582 2007-03-01  Bruno Haible  <bruno@clisp.org>
14583
14584         * build-aux/install-reloc: Remove object files left over by some
14585         compilers.
14586         Reported by Ralf Wildenhues.
14587
14588 2007-03-01  Bruno Haible  <bruno@clisp.org>
14589
14590         * build-aux/install-reloc: Break long lines.
14591
14592 2007-03-01  Bruno Haible  <bruno@clisp.org>
14593
14594         * doc/relocatable.texi: Document that it may not work on OpenBSD.
14595         Reported by Ralf Wildenhues.
14596
14597 2007-03-01  Bruno Haible  <bruno@clisp.org>
14598
14599         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
14600         include ordering constraints.
14601
14602 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
14603
14604         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
14605         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
14606         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
14607         as another example.
14608         * lib/time_.h: Fix misspelling.
14609         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
14610         Require gl_HEADER_TIME_H_DEFAULTS.
14611         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
14612         * m4/time_r.m4 (gl_TIME_R): Likewise.
14613         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
14614
14615 2007-03-01  Bruno Haible  <bruno@clisp.org>
14616
14617         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
14618         * m4/utimens.m4 (gl_UTIMENS): Likewise.
14619
14620 2007-03-01  Jim Meyering  <jim@meyering.net>
14621
14622         * modules/xreadlink (Maintainer): Add my name.
14623         * modules/xreadlink-with-size (Depends-on): Alphabetize.
14624
14625 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
14626             Bruno Haible  <bruno@clisp.org>
14627
14628         * build-aux/install-reloc: Compile also c-ctype.c.
14629         * build-aux/relocatable.sh.in: New file.
14630         * doc/relocatable.texi: New file.
14631         * doc/relocatable-maint.texi: New file.
14632         * doc/gnulib.texi: Include relocatable-maint.texi.
14633         * lib/progreloc.c: Include unistd.h unconditionally.
14634         * lib/relocwrapper.c: Include unistd.h unconditionally.
14635         Include c-ctype.h.
14636         (add_dotbin): Use c_tolower.
14637         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
14638         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
14639         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
14640         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
14641         to m4/relocatable-lib.m4.
14642         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
14643         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
14644         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
14645         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
14646         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
14647         * modules/relocatable: New file.
14648         * modules/relocatable-lib: New file.
14649         * modules/relocatable-script: New file.
14650
14651 2007-02-28  Bruno Haible  <bruno@clisp.org>
14652
14653         Import --enable-relocatable infrastructure.
14654         * build-aux/config.libpath: New file, from GNU gettext.
14655         * build-aux/install-reloc: New file, from GNU gettext.
14656         * build-aux/reloc-ldflags: New file, from GNU gettext.
14657         * lib/relocatable.h: New file, from GNU gettext.
14658         * lib/relocatable.c: New file, from GNU gettext.
14659         * lib/relocwrapper.c: New file, from GNU gettext.
14660         * m4/relocatable.m4: New file, from GNU gettext.
14661
14662 2007-02-28  Bruno Haible  <bruno@clisp.org>
14663
14664         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
14665
14666         * modules/xreadlink: New file, from GNU gettext with modifications.
14667         * lib/xreadlink.c: New file, from GNU gettext.
14668         * lib/xreadlink.h: Add comments.
14669         (xreadlink): New declaration.
14670
14671         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
14672         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
14673         lib/xreadlink-with-size.c.
14674         (configure.ac): Remove gl_XREADLINK invocation.
14675         (Makefile.am): Augment lib_SOURCES.
14676         * m4/xreadlink.m4: Remove file.
14677         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
14678         (xreadlink_with_size): Renamed from xreadink.
14679         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
14680         * modules/canonicalize (Depends-on): Replace xreadlink with
14681         xreadlink-with-size.
14682         * lib/canonicalize.c (canonicalize_filename_mode): Update.
14683
14684 2007-02-25  Jim Meyering  <jim@meyering.net>
14685
14686         * build-aux/announce-gen: When complaining about excess arguments,
14687         list them.
14688
14689 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
14690
14691         * README: Document signed integer overflow situation more
14692         accurately.
14693
14694 2007-02-25  Bruno Haible  <bruno@clisp.org>
14695
14696         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
14697         'a' or 'A' conversion.
14698
14699 2007-02-25  Bruno Haible  <bruno@clisp.org>
14700
14701         * modules/filename: Renamed from modules/pathname.
14702         (Files): Replace lib/pathname.h with lib/filename.h. Replace
14703         lib/concatpath.c with lib/concat-filename.c.
14704         (Makefile.am): Update.
14705         (Include): Replace pathname.h with filename.h.
14706         * lib/filename.h: Renamed from lib/pathname.h.
14707         (concatenated_filename): Renamed from concatenated_pathname.
14708         * lib/concat-filename.c: Renamed from lib/concatpath.c.
14709         (concatenated_filename): Renamed from concatenated_pathname.
14710         * lib/findprog.c: Include filename.h instead of pathname.h.
14711         (find_in_path): Update.
14712         * lib/javacomp.c: Include filename.h instead of pathname.h.
14713         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
14714         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
14715         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
14716         is_oldgcj_14_13_usable, is_javac_usable): Update.
14717         * lib/javaexec.c: Include filename.h instead of pathname.h.
14718         (execute_java_class): Update.
14719         * modules/findprog: Update.
14720         * modules/javacomp: Update.
14721         * modules/javaexec: Update.
14722         * MODULES.html.sh (File system functions): Add 'filename', remove
14723         'pathname'.
14724
14725 2007-02-25  Bruno Haible  <bruno@clisp.org>
14726
14727         * modules/printf-frexpl-tests: New file.
14728         * tests/test-printf-frexpl.c: New file.
14729
14730         * modules/printf-frexpl: New file.
14731         * lib/printf-frexpl.h: New file.
14732         * lib/printf-frexpl.c: New file.
14733         * m4/printf-frexpl.m4: New file.
14734
14735 2007-02-25  Bruno Haible  <bruno@clisp.org>
14736
14737         * modules/printf-frexp-tests: New file.
14738         * tests/test-printf-frexp.c: New file.
14739
14740         * modules/printf-frexp: New file.
14741         * lib/printf-frexp.h: New file.
14742         * lib/printf-frexp.c: New file.
14743         * m4/printf-frexp.m4: New file.
14744
14745 2007-02-25  Bruno Haible  <bruno@clisp.org>
14746
14747         Assume automake >= 1.10 for the tests.
14748         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
14749         * modules/arctwo-tests: Likewise.
14750         * modules/argp-tests: Likewise.
14751         * modules/avltree-list-tests: Likewise.
14752         * modules/avltree-oset-tests: Likewise.
14753         * modules/avltreehash-list-tests: Likewise.
14754         * modules/carray-list-tests: Likewise.
14755         * modules/crc-tests: Likewise.
14756         * modules/des-tests: Likewise.
14757         * modules/gc-arcfour-tests: Likewise.
14758         * modules/gc-arctwo-tests: Likewise.
14759         * modules/gc-des-tests: Likewise.
14760         * modules/gc-hmac-md5-tests: Likewise.
14761         * modules/gc-hmac-sha1-tests: Likewise.
14762         * modules/gc-md2-tests: Likewise.
14763         * modules/gc-md4-tests: Likewise.
14764         * modules/gc-md5-tests: Likewise.
14765         * modules/gc-pbkdf2-sha1-tests: Likewise.
14766         * modules/gc-rijndael-tests: Likewise.
14767         * modules/gc-sha1-tests: Likewise.
14768         * modules/gc-tests: Likewise.
14769         * modules/getaddrinfo-tests: Likewise.
14770         * modules/hmac-md5-tests: Likewise.
14771         * modules/hmac-sha1-tests: Likewise.
14772         * modules/linked-list-tests: Likewise.
14773         * modules/linkedhash-list-tests: Likewise.
14774         * modules/lock-tests: Likewise.
14775         * modules/md2-tests: Likewise.
14776         * modules/md4-tests: Likewise.
14777         * modules/md5-tests: Likewise.
14778         * modules/rbtree-list-tests: Likewise.
14779         * modules/rbtree-oset-tests: Likewise.
14780         * modules/rbtreehash-list-tests: Likewise.
14781         * modules/read-file-tests: Likewise.
14782         * modules/rijndael-tests: Likewise.
14783         * modules/stdint-tests: Likewise.
14784         * modules/tls-tests: Likewise.
14785
14786 2007-02-24  Bruno Haible  <bruno@clisp.org>
14787
14788         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
14789         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
14790         function; instead check whether isnan with a double argument links.
14791         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
14792         function; instead check whether isnan with a 'long double' argument
14793         links.
14794         Reported by Eric Blake <ebb9@byu.net>.
14795
14796 2007-02-24  Bruno Haible  <bruno@clisp.org>
14797
14798         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
14799         defined.
14800         * lib/isnanl.c: Remove all code. Just include isnan.c.
14801         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
14802
14803 2007-02-25  Jim Meyering  <jim@meyering.net>
14804
14805         Avoid conflicting types for 'unsetenv' on FreeBSD.
14806         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
14807         conflicting with FreeBSD's (5.0 and 6.1) function declaration
14808         in stdlib.h.
14809
14810 2007-02-24  Bruno Haible  <bruno@clisp.org>
14811
14812         * modules/isnanl-nolibm-tests: New file.
14813         * tests/test-isnanl.c: New file.
14814
14815         * modules/isnanl-nolibm: New file.
14816         * lib/isnanl.h: New file.
14817         * lib/isnanl.c: New file.
14818         * m4/isnanl.m4: New file.
14819
14820 2007-02-24  Bruno Haible  <bruno@clisp.org>
14821
14822         * modules/isnan-nolibm-tests: New file.
14823         * tests/test-isnan.c: New file.
14824
14825         * modules/isnan-nolibm: New file.
14826         * lib/isnan.h: New file.
14827         * lib/isnan.c: New file.
14828         * m4/isnan.m4: New file.
14829
14830 2007-02-24  Bruno Haible  <bruno@clisp.org>
14831
14832         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
14833         assume that an exponent fits in 20 bits.
14834
14835 2007-02-24  Jim Meyering  <jim@meyering.net>
14836
14837         * m4/regex.m4: Update the description of the configure-time option,
14838         --without-included-regex, to state accurately what the defaults are,
14839         and perhaps to give people an idea why using this option is risky.
14840
14841 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
14842
14843         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
14844         loops on small arguments.  This attempts to avoid the problem
14845         Bruno Haible reported for AIX 4.3.2 in
14846         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
14847
14848 2007-02-23  Bruno Haible  <bruno@clisp.org>
14849
14850         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
14851         Needed for help2man.
14852
14853 2007-02-23  Karl Berry  <karl@gnu.org>
14854
14855         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
14856         exists, foo.h should be cvs-ignored, not committed.
14857
14858 2007-02-23  Eric Blake  <ebb9@byu.net>
14859
14860         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
14861         * lib/stat-time.h (includes): Likewise.
14862         * lib/utimecmp.c (includes): Likewise.
14863         * lib/utimens.h (includes): Likewise.
14864         * lib/getdate.y (includes): Also include "timespec.h" for use
14865         internal to the module.
14866         * modules/utimens (Depends-on): Revert yesterday's patch.
14867         * modules/nanosleep (Depends-on): Add missing dependency.
14868
14869 2007-02-22  Bruno Haible  <bruno@clisp.org>
14870
14871         * lib/glob.c: Don't include getlogin_r.h.
14872
14873 2007-02-22  Jim Meyering  <jim@meyering.net>
14874
14875         * modules/utimens (Depends-on): Add timespec, required for
14876         utimens.h's inclusion of timespec.h.
14877
14878 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
14879
14880         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
14881         long unreadable paths in GNU/Linux.  Problem reported by Andreas
14882         Schwab in
14883         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
14884         I'll try to think of a better way to fix the Solaris problem.
14885
14886         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
14887         like glibc; on Solaris 10, it fails with errno == EINVAL.
14888         POSIX says the behavior is unspecified if the first argument is NULL,
14889         so play it safe and never pass NULL to the system getcwd.
14890
14891 2007-02-21  Jim Meyering  <jim@meyering.net>
14892
14893         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
14894         of gettimeofday.  It would conflict with the one now always
14895         provided via sys_time_.h.  Reported by Matthew Woehlke, as
14896         an IRIX 6.5 build failure.
14897
14898 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
14899
14900         Minor fixups to port to Solaris 10 with Sun C 5.8.
14901         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
14902         * modules/getcwd (Depends-on): Add dirfd.
14903         * lib/putenv.c (putenv): #undef it.
14904         (rpl_putenv): New decl.
14905         (malloc, free): Include <stdlib.h> rather than prototyping separately.
14906
14907 2007-02-20  Bruno Haible  <bruno@clisp.org>
14908
14909         * modules/stdio-tests: New file.
14910         * tests/test-stdio.c: New file.
14911
14912         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
14913         (Depends-on): Add stdio.
14914         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
14915         (Include): Use <stdio.h> instead of vsnprintf.h.
14916         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
14917         HAVE_DECL_VSNPRINTF.
14918         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
14919
14920         * modules/snprintf (Files): Remove lib/snprintf.h.
14921         (Depends-on): Add stdio.
14922         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
14923         (Include): Use <stdio.h> instead of snprintf.h.
14924         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
14925         HAVE_DECL_SNPRINTF.
14926         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
14927         * lib/getaddrinfo.c: Likewise.
14928
14929         * modules/stdio: New file.
14930         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
14931         * lib/snprintf.h: Remove file.
14932         * lib/vsnprintf.h: Remove file.
14933         * lib/.cppi-disable: Remove snprintf.h.
14934         * m4/stdio_h.m4: New file.
14935         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
14936
14937 2007-02-20  Jim Meyering  <jim@meyering.net>
14938
14939         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
14940         used by e.g., mingw.  From Bruno Haible.
14941
14942 2007-02-19  Bruno Haible  <bruno@clisp.org>
14943
14944         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
14945         warnings.
14946         Reported by Ben Pfaff <blp@cs.stanford.edu>.
14947
14948 2007-02-19  Bruno Haible  <bruno@clisp.org>
14949
14950         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
14951         from mingw users.
14952
14953 2007-02-19  Bruno Haible  <bruno@clisp.org>
14954
14955         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
14956         warnings.
14957         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
14958
14959 2007-02-19  Jim Meyering  <jim@meyering.net>
14960
14961         Don't use FD after a successful "fdopendir (fd)".
14962         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
14963         Reset it by calling dirfd on the just-obtained DIR*.
14964
14965         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
14966         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
14967
14968 2007-02-18  Bruno Haible  <bruno@clisp.org>
14969
14970         * lib/readlink.c: Include <unistd.h>.
14971         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
14972         HAVE_READLINK.
14973         * modules/readlink (Depends-on): Add unistd.
14974         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14975         (Include): Add <unistd.h>.
14976
14977         * lib/getlogin_r.h: Remove file.
14978         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
14979         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
14980         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
14981         HAVE_DECL_GETLOGIN_R.
14982         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
14983         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14984         (Include): Use <unistd.h> instead of getlogin_r.h.
14985
14986         * lib/getcwd.h: Remove file.
14987         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
14988         * lib/xgetcwd.c: Likewise.
14989         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
14990         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
14991         * modules/getcwd (Files): Remove lib/getcwd.h.
14992         (Depends-on): Add unistd.
14993         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
14994         (Include): Use <unistd.h> instad of getcwd.h.
14995
14996         * lib/ftruncate.c: Include <unistd.h> first.
14997         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
14998         Set HAVE_FTRUNCATE.
14999         * modules/ftruncate (Depends-on): Add unistd.
15000         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
15001
15002         * lib/fchdir.c: Include <unistd.h> first.
15003         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
15004         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
15005         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
15006         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
15007         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
15008
15009         * lib/dup2.c: Include <unistd.h> first.
15010         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
15011         HAVE_DUP2.
15012         * modules/dup2 (Depends-on): Add unistd.
15013         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
15014
15015         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
15016         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
15017         REPLACE_CHOWN. Don't define chown as a macro here.
15018         * modules/chown (Depends-on): Add unistd.
15019         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
15020
15021         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
15022         Add definition for GL_LINK_WARNING.
15023         (chown, dup2): New declarations.
15024         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
15025         link warning.
15026         (ftruncate): New declaration.
15027         (getcwd): New declaration, taken from old getcwd.h.
15028         (getlogin_r): New declaration, taken from old getlogin_r.h.
15029         (readlink): New declaration.
15030         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
15031         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
15032         (gl_PREREQ_UNISTD): Remove macro.
15033         (gl_UNISTD_MODULE_INDICATOR): New macro.
15034         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
15035         many new variables. Don't set UNISTD_H.
15036         * modules/unistd (Description): Change.
15037         (Depends-on): Add link-warning.
15038         (configure.ac): Update.
15039         (Makefile.am): Create unistd.h always. Substitute many new variables
15040         into it.
15041
15042 2007-02-18  Bruno Haible  <bruno@clisp.org>
15043
15044         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
15045         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
15046         HAVE_GETSUBOPT.
15047         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
15048         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
15049         * lib/getsubopt.h: Remove file.
15050         * modules/getsubopt (Files): Remove lib/getsubopt.h.
15051         (Depends-on): Add stdlib.
15052         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
15053         (Includes): Use <stdlib.h> instead of getsubopt.h.
15054         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
15055         Set HAVE_GETSUBOPT.
15056         * lib/getsubopt.c: Don't include getsubopt.h.
15057
15058 2007-02-18  Bruno Haible  <bruno@clisp.org>
15059
15060         * modules/fchdir (Depends-on): Add dup2.
15061
15062 2007-02-18  Bruno Haible  <bruno@clisp.org>
15063
15064         * lib/stdlib_.h: Handle glibc's special invocation convention
15065         specially.
15066
15067 2007-02-18  Bruno Haible  <bruno@clisp.org>
15068
15069         * modules/stdlib-tests: New file.
15070         * tests/test-stdlib.c: New file.
15071
15072         * modules/mkstemp (Files): Remove lib/mkstemp.h.
15073         (Depends-on): Add stdlib.
15074         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
15075         (Includes): Use <stdlib.h> instead of mkstemp.h.
15076         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
15077         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
15078         * lib/mkstemp.c: Don't include mkstemp.h.
15079         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
15080         * lib/stdlib--.h: Don't include mkstemp.h.
15081
15082         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
15083         (Depends-on): Add stdlib.
15084         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
15085         (Includes): Use <stdlib.h> instead of mkdtemp.h.
15086         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
15087         HAVE_MKDTEMP.
15088         * lib/mkdtemp.c: Don't include mkdtemp.h.
15089         * lib/clean-temp.c: Don't include mkdtemp.h.
15090
15091         * modules/exit (Files): Remove lib/exit.h.
15092         (Depends-on): Add stdlib.
15093         (Makefile.am): Remove lib_SOURCES.
15094         (Include): Use <stdlib.h> instead of exit.h.
15095         * lib/argmatch.c: Don't include exit.h.
15096         * lib/execute.c: Likewise.
15097         * lib/pagealign_alloc.c: Likewise.
15098         * lib/pipe.c: Likewise.
15099         * lib/wait-process.c: Likewise.
15100         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
15101         * lib/exitfail.c: Likewise.
15102         * lib/savewd.c: Likewise.
15103         * lib/xsetenv.c: Likewise.
15104
15105         * modules/stdlib: New file.
15106         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
15107         and extra comments about mkstemp().
15108         * lib/exit.h: Remove file.
15109         * lib/mkdtemp.h: Remove file.
15110         * lib/mkstemp.h: Remove file.
15111         * m4/stdlib_h.m4: New file.
15112         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
15113
15114 2007-02-18  Bruno Haible  <bruno@clisp.org>
15115
15116         * modules/math-tests: New file.
15117         * tests/test-math.c: New file.
15118
15119         * modules/math: New file.
15120         * modules/mathl (Files): Remove lib/mathl.h.
15121         (Depends-on): Add math.
15122         (Makefile.am): Don't mention mathl.h.
15123         (Include): Use <math.h> instead of mathl.h.
15124         * lib/math_.h: New file.
15125         * lib/mathl.h: Remove file.
15126         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
15127         mathl.h.
15128         * lib/asinl.c: Likewise.
15129         * lib/atanl.c: Likewise.
15130         * lib/ceill.c: Likewise.
15131         * lib/cosl.c: Likewise.
15132         * lib/expl.c: Likewise.
15133         * lib/floorl.c: Likewise.
15134         * lib/frexpl.c: Likewise.
15135         * lib/ldexpl.c: Likewise.
15136         * lib/logl.c: Likewise.
15137         * lib/sincosl.c: Likewise.
15138         * lib/sinl.c: Likewise.
15139         * lib/sqrtl.c: Likewise.
15140         * lib/tanl.c: Likewise.
15141         * lib/trigl.c: Likewise.
15142         * m4/math_h.m4: New file.
15143         * MODULES.html.sh (Mathematics): Add math.
15144
15145 2007-02-17  Bruno Haible  <bruno@clisp.org>
15146
15147         * modules/wctype-tests: New file.
15148         * tests/test-wctype.c: New file.
15149
15150         * modules/wchar-tests: New file.
15151         * tests/test-wchar.c: New file.
15152
15153         * modules/unistd-tests: New file.
15154         * tests/test-unistd.c: New file.
15155
15156         * modules/time-tests: New file.
15157         * tests/test-time.c: New file.
15158
15159         * modules/sysexits-tests: New file.
15160         * tests/test-sysexits.c: New file.
15161
15162         * modules/sys_time-tests: New file.
15163         * tests/test-sys_time.c: New file.
15164
15165         * modules/sys_stat-tests: New file.
15166         * tests/test-sys_stat.c: New file.
15167
15168         * modules/sys_socket-tests: New file.
15169         * tests/test-sys_socket.c: New file.
15170
15171         * modules/sys_select-tests: New file.
15172         * tests/test-sys_select.c: New file.
15173
15174         * modules/string-tests: New file.
15175         * tests/test-string.c: New file.
15176
15177         * modules/stdbool-tests: New file.
15178         * tests/test-stdbool.c: New file.
15179
15180         * modules/netinet_in-tests: New file.
15181         * tests/test-netinet_in.c: New file.
15182
15183         * modules/inttypes-tests: New file.
15184         * tests/test-inttypes.c: New file.
15185
15186         * modules/fcntl-tests: New file.
15187         * tests/test-fcntl.c: New file.
15188
15189         * modules/byteswap-tests: New file.
15190         * tests/test-byteswap.c: New file.
15191
15192         * modules/arpa_inet-tests: New file.
15193         * tests/test-arpa_inet.c: New file.
15194
15195 2007-02-17  Bruno Haible  <bruno@clisp.org>
15196
15197         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
15198         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
15199         if the corresponding module is not enabled. Emit link warnings if
15200         the function is used nevertheless.
15201         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
15202         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
15203         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
15204         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
15205         * modules/inttypes (Depends-on): Add link-warning.
15206         (Makefile.am): Copy the contents of build-aux/link-warning.h into
15207         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
15208         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
15209         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
15210         * modules/imaxdiv (configure.ac): Likewise.
15211         * modules/strtoimax (configure.ac): Likewise.
15212         * modules/strtoumax (configure.ac): Likewise.
15213
15214 2007-02-17  Bruno Haible  <bruno@clisp.org>
15215
15216         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
15217         gl_STRING_MODULE_INDICATOR_DEFAULTS.
15218         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
15219         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
15220
15221 2007-02-17  Bruno Haible  <bruno@clisp.org>
15222
15223         * modules/link-warning: New file.
15224         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
15225         * lib/string_.h (GL_LINK_WARNING): Remove definition.
15226         * modules/string (Depends-on): Add link-warning.
15227         (Makefile.am): Copy the contents of build-aux/link-warning.h into
15228         string.h.
15229         * MODULES.html.sh (Support for building libraries and executables): Add
15230         link-warning.
15231
15232 2007-02-17  Bruno Haible  <bruno@clisp.org>
15233
15234         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
15235         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
15236         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
15237         long lines.
15238
15239 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
15240             Bruno Haible  <bruno@clisp.org>
15241
15242         * modules/tmpfile: New file.
15243         * lib/tmpfile.c: New file.
15244         * m4/tmpfile.m4: New file.
15245         * MODULES.html.sh (func_all_modules): New section "Input/output".
15246
15247 2007-02-15  Bruno Haible  <bruno@clisp.org>
15248
15249         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
15250         (supports_delete_on_close): New function.
15251         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
15252
15253 2007-02-14  Bruno Haible  <bruno@clisp.org>
15254
15255         * modules/mbspcasecmp-tests: New file.
15256         * tests/test-mbspcasecmp.sh: New file.
15257         * tests/test-mbspcasecmp.c: New file.
15258
15259         New module mbspcasecmp.
15260         * modules/mbspcasecmp: New file.
15261         * lib/mbspcasecmp.c: New file.
15262         * lib/string_.h (strncasecmp): Change warning message.
15263         (mbspcasecmp): New declaration.
15264         * m4/mbspcasecmp.m4: New file.
15265         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15266         GNULIB_MBSPCASECMP.
15267         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
15268         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
15269
15270 2007-02-14  Bruno Haible  <bruno@clisp.org>
15271
15272         * modules/mbsncasecmp-tests: New file.
15273         * tests/test-mbsncasecmp.sh: New file.
15274         * tests/test-mbsncasecmp.c: New file.
15275
15276         New module mbsncasecmp.
15277         * modules/mbsncasecmp: New file.
15278         * lib/mbsncasecmp.c: New file.
15279         * lib/string_.h (mbsncasecmp): New declaration.
15280         * m4/mbsncasecmp.m4: New file.
15281         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15282         GNULIB_MBSNCASECMP.
15283         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
15284         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
15285
15286 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
15287
15288         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
15289         Verify that it doesn't overlap with our flags.
15290         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
15291         do not have the desired effect in multibyte locales; instead, use
15292         mbscasecmp.
15293         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
15294         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
15295         we don't require GNU fnmatch ourselves (if our users require it, they
15296         should do so explicitly).
15297
15298         Fix regex code so it doesn't rely on strcasecmp.
15299         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
15300         Otherwise, include gnulib's langinfo.h.
15301         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
15302         undesirable behavior in non-C locales.  Instead, rely on localecharset.
15303         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
15304         * modules/regex (FILES): Remove m4/codeset.m4.
15305         (Depends-on): Add localcharset.  Remove strcase.
15306
15307 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15308
15309         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
15310         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
15311
15312 2007-02-13  Bruno Haible  <bruno@clisp.org>
15313
15314         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
15315         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
15316
15317 2007-02-12  Bruno Haible  <bruno@clisp.org>
15318
15319         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
15320         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
15321         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
15322         time warning rather than a link error.
15323
15324 2007-02-12  Bruno Haible  <bruno@clisp.org>
15325
15326         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
15327         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
15328         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
15329
15330 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
15331
15332         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
15333         args, not 2.
15334
15335 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
15336
15337         New module 'time', so that apps can include <time.h> as per
15338         POSIX and GNU instead of separate include files like time_r.h
15339         and timegm.h.  This implementation tries out a simpler approach
15340         for replacing decls in standard include files (as compared to
15341         the string module), somewhat as an experiment.
15342
15343         * config/srclist.txt: Comment out mktime.c for now.
15344         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
15345         since it doesn't apply any more.  Use generic wording instead.
15346         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
15347         'time'.
15348         * lib/time_.h, m4/time_h.m4, modules/time: New files.
15349         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
15350         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
15351         Don't include <sys/types.h>; no longer needed since we assume C89.
15352         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
15353         * lib/strftime.c: Likewise.
15354         * lib/time_r.c: Likewise.
15355         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
15356         * lib/nanosleep.c: Include <time.h> first, to check interface.
15357         * lib/strptime.c: Likewise.
15358         * lib/time_r.c: Likewise.
15359         * lib/timegm.c: Likewise.
15360         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
15361         needed.
15362         * lib/timegm.c: Don't include timegm.h; no longer needed.
15363         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
15364         time.h now handles any problems in that area.
15365         (struct timespec, nanosleep): Remove; time.h now arranges for these.
15366         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
15367         that time.h defines struct timespec.
15368         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
15369         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
15370         handles that.
15371         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
15372         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
15373         needed.  Set REPLACE_LOCALTIME.
15374         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
15375         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
15376         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
15377         nanosleep; time_h.m4 now does that.  Don't require
15378         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
15379         module handles this now.
15380         * modules/getdate (Depends-on): Remove timespec.  Add time.
15381         * modules/nanosleep (Depends-on): Likewise.
15382         * modules/stat-time (Depends-on): Likewise.
15383         * modules/nanosleep (Include): Include time.h, not timespec.h.
15384         * modules/strptime (Files): Remove lib/strptime.h.
15385         (Depends-on): Add extensions, time.
15386         (Include): Include time.h, not strptime.h.
15387         * modules/time_r (Files): Remove lib/time_r.h.
15388         (Depends-on): Add time.
15389         (Include): Include time.h, not time_r.h.
15390         * modules/timegm: Likewise.
15391         * modules/timespec (Description): Now does timespec-related decls
15392         of our own, instead of struct timespec itself.
15393         (Depends-on): Add time; remove extensions.
15394         (Maintainer): Add self.
15395         * modules/utimecmp (Depends-on): Add time; remove timespec.
15396         * modules/utimens (Depends-on): Likewise.
15397         * modules/xnanosleep (Depends-on): Likewise.
15398
15399 2007-02-11  Bruno Haible  <bruno@clisp.org>
15400
15401         * lib/c-strstr.c: Include allocsa.h.
15402         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
15403         * lib/c-strcasestr.c: Include allocsa.h.
15404         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
15405         * lib/strcasestr.c: Include allocsa.h.
15406         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
15407         * lib/mbsstr.c: Include allocsa.h.
15408         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
15409         allocsa/freesa instead of malloc/free.
15410         * lib/mbscasestr.c: Include allocsa.h.
15411         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
15412         allocsa/freesa instead of malloc/free.
15413         * modules/c-strstr (Depends-on): Add allocsa.
15414         * modules/c-strcasestr (Depends-on): Likewise.
15415         * modules/strcasestr (Depends-on): Likewise.
15416         * modules/mbsstr (Depends-on): Likewise.
15417         * modules/mbscasestr (Depends-on): Likewise.
15418
15419 2007-02-11  Bruno Haible  <bruno@clisp.org>
15420
15421         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
15422
15423         * modules/mbsspn-tests: New file.
15424         * tests/test-mbsspn.sh: New file.
15425         * tests/test-mbsspn.c: New file.
15426
15427 2007-02-11  Bruno Haible  <bruno@clisp.org>
15428
15429         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
15430
15431         * modules/mbspbrk-tests: New file.
15432         * tests/test-mbspbrk.sh: New file.
15433         * tests/test-mbspbrk.c: New file.
15434
15435 2007-02-11  Bruno Haible  <bruno@clisp.org>
15436
15437         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
15438         unneeded cast.
15439
15440         * modules/mbscspn-tests: New file.
15441         * tests/test-mbscspn.sh: New file.
15442         * tests/test-mbscspn.c: New file.
15443
15444 2007-02-11  Bruno Haible  <bruno@clisp.org>
15445
15446         * modules/mbscasecmp-tests: New file.
15447         * tests/test-mbscasecmp.sh: New file.
15448         * tests/test-mbscasecmp.c: New file.
15449
15450 2007-02-11  Bruno Haible  <bruno@clisp.org>
15451
15452         Ensure O(n) worst-case complexity of mbscasestr.
15453         * lib/mbscasestr.c: Include stdbool.h.
15454         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
15455         functions.
15456         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
15457         the bookkeeping indicates that it's worth it.
15458         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
15459
15460         * modules/mbscasestr-tests: New file.
15461         * tests/test-mbscasestr1.c: New file.
15462         * tests/test-mbscasestr2.sh: New file.
15463         * tests/test-mbscasestr2.c: New file.
15464         * tests/test-mbscasestr3.sh: New file.
15465         * tests/test-mbscasestr3.c: New file.
15466         * tests/test-mbscasestr4.sh: New file.
15467         * tests/test-mbscasestr4.c: New file.
15468         * m4/locale-tr.m4: New file.
15469
15470 2007-02-11  Bruno Haible  <bruno@clisp.org>
15471
15472         Ensure O(n) worst-case complexity of mbsstr.
15473         * lib/mbsstr.c: Include stdbool.h.
15474         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
15475         functions.
15476         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
15477         bookkeeping indicates that it's worth it.
15478         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
15479
15480         * modules/mbsstr-tests: New file.
15481         * tests/test-mbsstr1.c: New file.
15482         * tests/test-mbsstr2.sh: New file.
15483         * tests/test-mbsstr2.c: New file.
15484         * tests/test-mbsstr3.sh: New file.
15485         * tests/test-mbsstr3.c: New file.
15486         * m4/locale-fr.m4: New file.
15487
15488 2007-02-11  Bruno Haible  <bruno@clisp.org>
15489
15490         * lib/mbsrchr.c (mbsrchr): Fix bug.
15491
15492         * modules/mbsrchr-tests: New file.
15493         * tests/test-mbsrchr.sh: New file.
15494         * tests/test-mbsrchr.c: New file.
15495
15496 2007-02-11  Bruno Haible  <bruno@clisp.org>
15497
15498         * lib/mbschr.c (mbschr): Fix bug.
15499
15500         * modules/mbschr-tests: New file.
15501         * tests/test-mbschr.sh: New file.
15502         * tests/test-mbschr.c: New file.
15503         * m4/locale-zh.m4: New file.
15504
15505 2007-02-11  Bruno Haible  <bruno@clisp.org>
15506
15507         Support for copying multibyte string iterators.
15508         * lib/mbiter.h: Include <string.h>.
15509         (mbiter_multi_copy): New function.
15510         (mbi_copy): New macro.
15511         * lib/mbuiter.h: Include <string.h>.
15512         (mbuiter_multi_copy): New function.
15513         (mbui_copy): New macro.
15514
15515 2007-02-11  Bruno Haible  <bruno@clisp.org>
15516
15517         New module mbslen.
15518         * modules/mbslen: New file.
15519         * lib/mbslen.c: New file.
15520         * lib/string_.h (mbslen): New declaration.
15521         * m4/mbslen.m4: New file.
15522         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15523         GNULIB_MBSLEN.
15524         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
15525         * MODULES.html.sh (Internationalization functions): Add mbslen.
15526
15527 2007-02-11  Bruno Haible  <bruno@clisp.org>
15528
15529         Ensure O(n) worst-case complexity of strcasestr substitute.
15530         * lib/strcasestr.c: Include stdbool.h.
15531         (knuth_morris_pratt): New function.
15532         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
15533         bookkeeping indicates that it's worth it.
15534         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
15535
15536         * modules/strcasestr-tests: New file.
15537         * tests/test-strcasestr.c: New file.
15538
15539 2007-02-11  Bruno Haible  <bruno@clisp.org>
15540
15541         Ensure O(n) worst-case complexity of c_strcasestr.
15542         * lib/c-strcasestr.c: Include stdbool.h, string.h.
15543         (knuth_morris_pratt): New function.
15544         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
15545         the bookkeeping indicates that it's worth it.
15546         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
15547
15548         * modules/c-strcasestr-tests: New file.
15549         * tests/test-c-strcasestr.c: New file.
15550
15551 2007-02-11  Bruno Haible  <bruno@clisp.org>
15552
15553         Ensure O(n) worst-case complexity of c_strstr.
15554         * lib/c-strstr.c: Include stdbool.h, string.h.
15555         (knuth_morris_pratt): New function.
15556         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
15557         bookkeeping indicates that it's worth it.
15558         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
15559
15560         * lib/c-strstr.c: Complete rewrite for maintainability.
15561
15562         * modules/c-strstr-tests: New file.
15563         * tests/test-c-strstr.c: New file.
15564
15565 2007-02-11  Bruno Haible  <bruno@clisp.org>
15566
15567         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
15568         5.2.1 and earlier, whereby \055 was treated just like the range
15569         delimiter '-'.
15570         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
15571
15572 2007-02-08  Bruno Haible  <bruno@clisp.org>
15573
15574         * modules/regex (Depends-on): Add stdbool.
15575         Reported by Dalibor Topic <robilad@kaffe.org>.
15576
15577 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
15578
15579         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
15580         Prefer returning from main to exiting from it.
15581         Remove unnecessary parens after sizeof.
15582
15583 2007-02-05  Bruno Haible  <bruno@clisp.org>
15584
15585         New module mbssep.
15586         * modules/mbssep: New file.
15587         * lib/mbssep.c: New file.
15588         * lib/string_.h (strsep): Add a conditional link warning.
15589         (mbssep): New declaration.
15590         * m4/mbssep.m4: New file.
15591         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15592         GNULIB_MBSSEP.
15593         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
15594         * MODULES.html.sh (Internationalization functions): Add mbssep.
15595
15596 2007-02-05  Bruno Haible  <bruno@clisp.org>
15597
15598         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
15599         Optimize search in case of 1 delimiter.
15600
15601 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
15602
15603         * lib/acl.h: Include sys/types.h before sys/acl.h.
15604
15605 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
15606
15607         Merge upstream fix for glibc bugzilla #3957:
15608
15609         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
15610
15611         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
15612         bit for RE_HAT_LISTS_NOT_NEWLINE.
15613         (build_charclass_op): Remove bogus comment.
15614
15615 2007-02-05  Simon Josefsson  <simon@josefsson.org>
15616
15617         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
15618
15619 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
15620
15621         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
15622         * lib/memmem.c [!defined _LIBC]: Include config.h.
15623
15624 2007-02-04  Bruno Haible  <bruno@clisp.org>
15625
15626         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
15627         warning message.
15628
15629 2007-02-04  Bruno Haible  <bruno@clisp.org>
15630
15631         New module mbstok_r.
15632         * modules/mbstok_r: New file.
15633         * lib/mbstok_r.c: New file.
15634         * lib/string_.h (strtok_r): Change argument names to match the
15635         comments. Add a conditional link warning.
15636         (mbstok_r): New declaration.
15637         * m4/mbstok_r.m4: New file.
15638         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15639         GNULIB_MBSTOK_R.
15640         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
15641         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
15642
15643 2007-02-04  Bruno Haible  <bruno@clisp.org>
15644
15645         New module mbsspn.
15646         * modules/mbsspn: New file.
15647         * lib/mbsspn.c: New file.
15648         * lib/string_.h (strspn): Add a conditional link warning.
15649         (mbsspn): New declaration.
15650         * m4/mbsspn.m4: New file.
15651         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15652         GNULIB_MBSSPN.
15653         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
15654         * MODULES.html.sh (Internationalization functions): Add mbsspn.
15655
15656 2007-02-04  Bruno Haible  <bruno@clisp.org>
15657
15658         New module mbspbrk.
15659         * modules/mbspbrk: New file.
15660         * lib/mbspbrk.c: New file.
15661         * lib/string_.h (strpbrk): Add a conditional link warning.
15662         (mbspbrk): New declaration.
15663         * m4/mbspbrk.m4: New file.
15664         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15665         GNULIB_MBSPBRK.
15666         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
15667         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
15668
15669 2007-02-04  Bruno Haible  <bruno@clisp.org>
15670
15671         New module mbscspn.
15672         * modules/mbscspn: New file.
15673         * lib/mbscspn.c: New file.
15674         * lib/string_.h (strcspn): Add a conditional link warning.
15675         (mbscspn): New declaration.
15676         * m4/mbscspn.m4: New file.
15677         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15678         GNULIB_MBSCSPN.
15679         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
15680         * MODULES.html.sh (Internationalization functions): Add mbscspn.
15681
15682 2007-02-04  Bruno Haible  <bruno@clisp.org>
15683
15684         New module mbscasestr, reduced goal of strcasestr.
15685         * modules/mbscasestr: New file.
15686         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
15687         (mbscasestr): Renamed from strcasestr.
15688         * lib/strcasestr.c: Don't include mbuiter.h.
15689         (strcasestr): Remove support for multibyte locales.
15690         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
15691         Change the conditional link warning.
15692         (mbscasestr): New declaration.
15693         * m4/mbscasestr.m4: New file.
15694         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
15695         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
15696         REPLACE_STRCASESTR.
15697         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
15698         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
15699         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
15700         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
15701         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
15702         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
15703         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
15704         (Depends-on): Remove mbuiter.
15705         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
15706
15707 2007-02-04  Bruno Haible  <bruno@clisp.org>
15708
15709         Simplify handling of strncasecmp.
15710         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
15711         the conditional link warning.
15712         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
15713         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
15714         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
15715         * modules/strcase (configure.ac): Don't invoke
15716         gl_STRING_MODULE_INDICATOR.
15717         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
15718
15719 2007-02-04  Bruno Haible  <bruno@clisp.org>
15720
15721         New module mbscasecmp, reduced goal of strcasecmp.
15722         * modules/mbscasecmp: New file.
15723         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
15724         (mbscasecmp): Renamed from strcasecmp.
15725         * lib/strcasecmp.c: Don't include mbuiter.h.
15726         (strcasecmp): Remove support for multibyte locales.
15727         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
15728         Change the conditional link warning.
15729         (mbscasecmp): New declaration.
15730         * m4/mbscasecmp.m4: New file.
15731         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
15732         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
15733         REPLACE_STRCASECMP.
15734         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
15735         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15736         GNULIB_MBSCASECMP.
15737         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
15738         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
15739         * modules/strcase (Files): Remove m4/mbrtowc.m4.
15740         (Depends-on): Remove mbuiter.
15741         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
15742
15743 2007-02-04  Bruno Haible  <bruno@clisp.org>
15744
15745         New module mbsstr. Remove module strstr.
15746         * modules/mbsstr: New file.
15747         * modules/strstr: Remove file.
15748         * lib/mbsstr.c: Renamed from lib/strstr.c.
15749         (mbsstr): Renamed from strstr.
15750         * lib/string_.h (strstr): Remove declaration. Change the conditional
15751         link warning.
15752         (mbsstr): New declaration.
15753         * m4/mbsstr.m4: New file.
15754         * m4/strstr.m4: Remove file.
15755         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
15756         REPLACE_STRSTR.
15757         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
15758         Don't initialize GNULIB_STRSTR.
15759         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
15760         substitute GNULIB_STRSTR and REPLACE_STRSTR.
15761         * MODULES.html.sh (Internationalization functions): Add mbsstr.
15762         (Support for systems lacking ANSI C 89): Remove strstr.
15763
15764 2007-02-04  Bruno Haible  <bruno@clisp.org>
15765
15766         New module mbsrchr.
15767         * modules/mbsrchr: New file.
15768         * lib/mbsrchr.c: New file.
15769         * lib/string_.h (strrchr): Add a conditional link warning.
15770         (mbsrchr): New declaration.
15771         * m4/mbsrchr.m4: New file.
15772         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15773         GNULIB_MBSRCHR.
15774         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
15775         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
15776
15777 2007-02-04  Bruno Haible  <bruno@clisp.org>
15778
15779         New module mbschr.
15780         * modules/mbschr: New file.
15781         * lib/mbschr.c: New file.
15782         * lib/string_.h (strchr): Add a conditional link warning.
15783         (mbschr): New declaration.
15784         * m4/mbschr.m4: New file.
15785         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
15786         GNULIB_MBSCHR.
15787         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
15788         * MODULES.html.sh (Internationalization functions): Add mbschr.
15789
15790 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
15791
15792         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
15793
15794         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
15795
15796 2007-02-04  Bruno Haible  <bruno@clisp.org>
15797
15798         New module description section 'configure.ac-early'.
15799         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
15800         (func_get_autoconf_early_snippet): New function.
15801         (func_import, func_create_testdir): Use it. Remove special cases for
15802         modules 'extensions' and 'lock'.
15803         * modules/extensions (configure.ac-early): Require
15804         gl_USE_SYSTEM_EXTENSIONS.
15805         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
15806
15807 2007-02-04  Bruno Haible  <bruno@clisp.org>
15808
15809         Make use of gcj-4.3's -fsource and -ftarget option.
15810         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
15811         and if so try the options -fsource and -ftarget.
15812         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
15813         source_version, ftarget_option, target_version arguments.
15814         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
15815         (is_envjavac_oldgcj_14_14_usable): Renamed from
15816         is_envjavac_gcj_14_14_usable.
15817         (is_envjavac_oldgcj_14_13_usable): Renamed from
15818         is_envjavac_gcj_14_13_usable.
15819         (is_gcj_present): Update.
15820         (is_gcj_43, is_gcj43_usable): New functions.
15821         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
15822         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
15823         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
15824         try the options -fsource and -ftarget.
15825
15826 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
15827
15828         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
15829         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
15830         larger value.
15831
15832 2007-02-03  Jim Meyering  <jim@meyering.net>
15833
15834         Give tools a better chance to allocate space for very large buffers.
15835         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
15836
15837         Make pwd and readlink work also when run with an unreadable parent dir
15838         on systems with openat support.
15839         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
15840         provided getcwd function, even when we have openat support.
15841         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
15842
15843 2007-02-02  Bruno Haible  <bruno@clisp.org>
15844
15845         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
15846         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
15847         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
15848         portability problems if one of these functions is only used on specific
15849         platforms.
15850         Reported by Paul Eggert.
15851
15852 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
15853
15854         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
15855         is causing more trouble than it's curing.
15856         * lib/regex_internal.h (__mempcpy): Remove.
15857         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
15858         (and make the code a tad smaller to boot).
15859         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
15860
15861 2007-02-02  Jim Meyering  <jim@meyering.net>
15862
15863         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
15864         section, not in the Makefile.am: one.
15865
15866 2007-02-02  Eric Blake  <ebb9@byu.net>
15867
15868         * lib/strchrnul.c: Always include config.h first.
15869
15870         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
15871         gnulib strstr is not necessary here.
15872
15873 2007-02-02  Simon Josefsson  <simon@josefsson.org>
15874
15875         * m4/socklen.m4: Fix typo.
15876
15877 2007-02-02  Eric Blake  <ebb9@byu.net>
15878
15879         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
15880         * modules/netinet_in (Makefile.am): Likewise.
15881
15882 2007-02-01  Bruno Haible  <bruno@clisp.org>
15883
15884         * lib/string_.h (GL_LINK_WARNING): New macro.
15885         (strcasecmp, strstr, strcasestr): If provided by the system,
15886         conditionally define as a macro that leads to a warning instead of to
15887         an error.
15888         (strncasecmp): Conditionally define as a macro that leads to a warning.
15889
15890 2007-02-01  Karl Berry  <karl@gnu.org>
15891
15892         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
15893
15894 2007-02-01  Bruno Haible  <bruno@clisp.org>
15895
15896         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
15897         renamings.
15898
15899 2007-02-01  Eric Blake  <ebb9@byu.net>
15900
15901         * modules/regex (Depends-on): Revert dependence on mempcpy.
15902         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
15903         module's definition of mempcpy.
15904         Reported by Paul Eggert.
15905
15906 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
15907
15908         * lib/string_.h: If the gnulib module XYZ is not present, undefine
15909         the symbol XYZ before redefining it.  This fixes a problem with
15910         programs that don't use XYZ, when compiled on systems that define
15911         XYZ to something else.
15912
15913 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
15914
15915         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
15916         occurs when "mkdir -m foo" creates a setgid directory that is (1)
15917         writeable to group or other and (2) is intended to have a special
15918         mode bit that is set or cleared.  In such a case, the directory
15919         should be neither group- nor other-writeable until the special
15920         mode bits are right.
15921
15922 2007-01-31  Eric Blake  <ebb9@byu.net>
15923
15924         * modules/mountlist (Depends-on): Add strstr.
15925
15926         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
15927         bug.
15928         * modules/string (Makefile.am): Remove redundant replacement.
15929         * modules/regex (Depends-on): Add mempcpy.
15930
15931 2007-01-31  Bruno Haible  <bruno@clisp.org>
15932
15933         New module description field 'Link'.
15934         * gnulib-tool (func_usage): Document --extract-link-directive.
15935         (sed_extract_prog): Recognize 'Link' directive.
15936         (func_get_link_directive): New function.
15937         (func_import): Show summary of link directives.
15938         Handle --extract-link-directive option.
15939         * modules/acl (Link): New section.
15940         * modules/clock-time (Link): New section.
15941         * modules/euidaccess (Link): New section.
15942         * modules/gettext (Link): New section.
15943         * modules/iconv (Link): New section.
15944         * modules/lock (Link): New section.
15945         * modules/nanosleep (Link): New section.
15946         * modules/readline (Link): New section.
15947
15948 2007-01-27  Bruno Haible  <bruno@clisp.org>
15949
15950         Enforce the use of gnulib modules for unportable <string.h> functions.
15951         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
15952         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
15953         (gl_HEADER_STRING_H_BODY): Require it.
15954         * lib/string_.h: If the gnulib module XYZ is not present, redefine
15955         the symbol XYZ to one that gives a link error.
15956         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
15957         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
15958         * modules/mempcpy (configure.ac): Likewise.
15959         * modules/memrchr (configure.ac): Likewise.
15960         * modules/stpcpy (configure.ac): Likewise.
15961         * modules/stpncpy (configure.ac): Likewise.
15962         * modules/strcase (configure.ac): Likewise.
15963         * modules/strcasestr (configure.ac): Likewise.
15964         * modules/strchrnul (configure.ac): Likewise.
15965         * modules/strdup (configure.ac): Likewise.
15966         * modules/strndup (configure.ac): Likewise.
15967         * modules/strnlen (configure.ac): Likewise.
15968         * modules/strpbrk (configure.ac): Likewise.
15969         * modules/strsep (configure.ac): Likewise.
15970         * modules/strstr (configure.ac): Likewise.
15971         * modules/strtok_r (configure.ac): Likewise.
15972
15973 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
15974
15975         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
15976
15977 2007-01-30  Jim Meyering  <jim@meyering.net>
15978
15979         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
15980
15981 2007-01-29  Bruno Haible  <bruno@clisp.org>
15982
15983         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
15984         * lib/execute.c: Likewise.
15985         * lib/pipe.c: Likewise.
15986         * lib/printf-args.h: Likewise.
15987         * lib/printf-args.c: Likewise.
15988         * lib/printf-parse.c: Likewise.
15989         * lib/vasnprintf.c: Likewise.
15990
15991 2007-01-29  Eric Blake  <ebb9@byu.net>
15992
15993         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
15994         declaration.
15995
15996 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
15997
15998         * lib/strptime.h (strptime): Use 'restrict' for args where
15999         POSIX requires this.
16000         * lib/strptime.c (strptime): Likewise.
16001         Change license notice from LGPL to GPL, since gnulib-tool will
16002         change this as needed.
16003         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
16004         defined.
16005         Include "strptime.h" first, to check interface.
16006         Do not #undef _LIBC and _NL_CURRENT.
16007         Do not include <stdlib.h>; no longer needed.
16008         Include "time_r.h" and declare ptime_locale_status
16009         only if _LIBC is not defined.
16010         (__P): Remove unused macro.
16011         (match_string): Bring back glibc version, but use it only if _LIBC
16012         is defined.
16013         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
16014         Remove unnecessary assertion and abort() call.
16015         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
16016         * m4/strptime.m4: Fix serial number comment.
16017         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
16018         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
16019         (Depends-on): Add time_r.
16020
16021 2007-01-29  Bruno Haible  <bruno@clisp.org>
16022
16023         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
16024         strptime.
16025         * modules/strptime (Depends-on): Add stdbool.
16026         * lib/strptime.h: Include <time.h> always. Add comments.
16027
16028 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
16029
16030         * modules/strptime: New file.
16031         * lib/strptime.h: New file.
16032         * lib/strptime.c: New file.
16033         * m4/strptime.m4: New file.
16034
16035 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
16036
16037         * MODULES.html.sh: New module mpsort.
16038         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
16039
16040         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
16041         a circularity problem with HP-UX ia64 reported by Bob Proulx in
16042         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
16043         All uses changed.
16044         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
16045         All uses changed.
16046         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
16047         to _Restrict_.
16048         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
16049         the parameter matches the prototype.
16050
16051 2007-01-28  Jim Meyering  <jim@meyering.net>
16052
16053         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
16054         sys/time.h here, reverting that part of the previous patch:
16055         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
16056
16057 2007-01-28  Bruno Haible  <bruno@clisp.org>
16058
16059         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
16060         value of $(SYS_TIME_H).
16061         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
16062         remove it conditionally, too. [added by Jim Meyering]
16063         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
16064         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
16065         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
16066         GETTIMEOFDAY_REPLACEMENT to 1.
16067
16068 2007-01-28  Bruno Haible  <bruno@clisp.org>
16069
16070         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
16071         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
16072         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
16073         Set UNISTD_H instead of UNISTD_H2.
16074         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
16075
16076 2007-01-28  Bruno Haible  <bruno@clisp.org>
16077
16078         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
16079         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
16080
16081 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16082
16083         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
16084         (func_create_testdir): Ensure C locale for `grep' and `tr'
16085         character ranges.
16086         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
16087         ACLOCAL_AMFLAGS parsing state machine.
16088
16089 2007-01-27  Bruno Haible  <bruno@clisp.org>
16090
16091         * modules/unistr/base: Update.
16092
16093 2007-01-27  Bruno Haible  <bruno@clisp.org>
16094
16095         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
16096         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
16097         * modules/unistr/u32-mbtouc-unsafe: Renamed from
16098         modules/unistr/u32-mbtouc.
16099         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
16100         * lib/unistr.h: Update.
16101         * lib/linebreak.c: Update.
16102         * modules/unistr/u32-mbtouc: Renamed from
16103         modules/unistr/u32-mbtouc-safe.
16104         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
16105         * lib/unistr.h: Update.
16106         * lib/unistr/u32-to-u8.c: Update.
16107         * lib/unistr/u32-to-u16.c: Update.
16108
16109 2007-01-27  Bruno Haible  <bruno@clisp.org>
16110
16111         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
16112         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
16113         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
16114         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
16115         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
16116         * modules/unistr/u16-mbtouc-unsafe: Renamed from
16117         modules/unistr/u16-mbtouc.
16118         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
16119         * lib/unistr.h: Update.
16120         * lib/linebreak.c: Update.
16121         * modules/linebreak: Update.
16122         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
16123         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
16124         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
16125         * modules/unistr/u16-mbtouc: Renamed from
16126         modules/unistr/u16-mbtouc-safe.
16127         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
16128         * lib/unistr.h: Update.
16129         * lib/unistr/u16-to-u8.c: Update.
16130         * modules/unistr/u16-to-u8: Update.
16131         * lib/unistr/u16-to-u32.c: Update.
16132         * modules/unistr/u16-to-u32: Update.
16133
16134 2007-01-27  Bruno Haible  <bruno@clisp.org>
16135
16136         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
16137         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
16138         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
16139         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
16140         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
16141         * modules/unistr/u8-mbtouc-unsafe: Renamed from
16142         modules/unistr/u8-mbtouc.
16143         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
16144         * lib/unistr.h: Update.
16145         * lib/striconveh.c: Update.
16146         * modules/striconveh: Update.
16147         * lib/linebreak.c: Update.
16148         * modules/linebreak: Update.
16149         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
16150         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
16151         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
16152         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
16153         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
16154         * lib/unistr.h: Update.
16155         * lib/striconveh.c: Update.
16156         * modules/striconveh: Update.
16157         * lib/unistr/u8-to-u16.c: Update.
16158         * modules/unistr/u8-to-u16: Update.
16159         * lib/unistr/u8-to-u32.c: Update.
16160         * modules/unistr/u8-to-u32: Update.
16161
16162 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16163
16164         Sync from Libtool.
16165         * lib/argz.c: Do not include strings.h nor memory.h, include
16166         string.h unconditionally.  Patch by Simon Josefsson.
16167
16168 2007-01-27  Bruno Haible  <bruno@clisp.org>
16169
16170         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
16171         from gl_HEADER_STRING_H_BODY.
16172         (gl_HEADER_STRING_H_BODY): Require it.
16173         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
16174         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
16175         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
16176         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
16177         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
16178         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
16179         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
16180         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
16181         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
16182         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
16183         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
16184         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
16185         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
16186         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
16187         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
16188
16189 2007-01-27  Bruno Haible  <bruno@clisp.org>
16190
16191         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
16192         check_PROGRAMS into noinst_PROGRAMS.
16193         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
16194         check_PROGRAMS in this case.
16195         (func_import): Set for_test to false.
16196         (func_create_testdir): Set for_test to true.
16197
16198 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
16199             Bruno Haible  <bruno@clisp.org>
16200
16201         * modules/strcasestr (Files): Remove lib/strcasestr.h.
16202         (Depends-on): Add string.
16203         (Includes): Use <string.h> instead of strcasestr.h.
16204         * modules/string (Makefile.am): Also substitute the value of
16205         REPLACE_STRCASESTR.
16206         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
16207         assume strcasestr is declared in <string.h> not <strings.h>. Also
16208         set REPLACE_STRCASESTR.
16209         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
16210         REPLACE_STRCASESTR.
16211         * lib/strcasestr.h: Remove file.
16212         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
16213         * lib/string_.h (strcasestr): New declaration.
16214
16215 2007-01-27  Bruno Haible  <bruno@clisp.org>
16216
16217         * lib/string_.h: Use 'extern'.
16218
16219 2007-01-27  Jim Meyering  <jim@meyering.net>
16220
16221         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
16222         of set-but-not-used local, "q".
16223
16224         * lib/mempcpy.c: Include <config.h> before <string.h>.
16225         This fixes a compilation error on HP-UX, due to the system's
16226         "restrict"-using mempcpy prototype.
16227
16228 2007-01-26  Bruno Haible  <bruno@clisp.org>
16229
16230         Small optimization.
16231         * lib/javacomp.c: Include c-strstr.h.
16232          (is_envjavac_gcj): Use c_strstr instead of strstr.
16233         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
16234
16235 2007-01-26  Bruno Haible  <bruno@clisp.org>
16236
16237         * MODULES.html.sh (Unicode string functions): Add the new modules.
16238
16239         * modules/uniconv/u32-strconv-to-locale: New file.
16240         * lib/uniconv/u32-strconv-to-locale.c: New file.
16241
16242         * modules/uniconv/u16-strconv-to-locale: New file.
16243         * lib/uniconv/u16-strconv-to-locale.c: New file.
16244
16245         * modules/uniconv/u8-strconv-to-locale: New file.
16246         * lib/uniconv/u8-strconv-to-locale.c: New file.
16247
16248         * modules/uniconv/u32-strconv-from-locale: New file.
16249         * lib/uniconv/u32-strconv-from-locale.c: New file.
16250
16251         * modules/uniconv/u16-strconv-from-locale: New file.
16252         * lib/uniconv/u16-strconv-from-locale.c: New file.
16253
16254         * modules/uniconv/u8-strconv-from-locale: New file.
16255         * lib/uniconv/u8-strconv-from-locale.c: New file.
16256
16257         * modules/uniconv/u32-strconv-to-enc: New file.
16258         * lib/uniconv/u32-strconv-to-enc.c: New file.
16259         * modules/uniconv/u32-strconv-to-enc-tests: New file.
16260         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
16261
16262         * modules/uniconv/u16-strconv-to-enc: New file.
16263         * lib/uniconv/u16-strconv-to-enc.c: New file.
16264         * lib/uniconv/u-strconv-to-enc.h: New file.
16265         * modules/uniconv/u16-strconv-to-enc-tests: New file.
16266         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
16267
16268         * modules/uniconv/u8-strconv-to-enc: New file.
16269         * lib/uniconv/u8-strconv-to-enc.c: New file.
16270         * modules/uniconv/u8-strconv-to-enc-tests: New file.
16271         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
16272
16273         * modules/uniconv/u32-strconv-from-enc: New file.
16274         * lib/uniconv/u32-strconv-from-enc.c: New file.
16275         * modules/uniconv/u32-strconv-from-enc-tests: New file.
16276         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
16277
16278         * modules/uniconv/u16-strconv-from-enc: New file.
16279         * lib/uniconv/u16-strconv-from-enc.c: New file.
16280         * modules/uniconv/u16-strconv-from-enc-tests: New file.
16281         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
16282
16283         * modules/uniconv/u8-strconv-from-enc: New file.
16284         * lib/uniconv/u8-strconv-from-enc.c: New file.
16285         * lib/uniconv/u-strconv-from-enc.h: New file.
16286         * modules/uniconv/u8-strconv-from-enc-tests: New file.
16287         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
16288
16289         * modules/uniconv/u32-conv-from-enc: New file.
16290         * lib/uniconv/u32-conv-from-enc.c: New file.
16291         * modules/uniconv/u32-conv-from-enc-tests: New file.
16292         * tests/uniconv/test-u32-conv-from-enc.c: New file.
16293
16294         * modules/uniconv/u16-conv-from-enc: New file.
16295         * lib/uniconv/u16-conv-from-enc.c: New file.
16296         * lib/uniconv/u-conv-from-enc.h: New file.
16297         * modules/uniconv/u16-conv-from-enc-tests: New file.
16298         * tests/uniconv/test-u16-conv-from-enc.c: New file.
16299
16300         * modules/uniconv/u8-conv-from-enc: New file.
16301         * lib/uniconv/u8-conv-from-enc.c: New file.
16302         * modules/uniconv/u8-conv-from-enc-tests: New file.
16303         * tests/uniconv/test-u8-conv-from-enc.c: New file.
16304
16305         * modules/uniconv/base: New file.
16306         * lib/uniconv.h: New file.
16307
16308 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
16309
16310         * doc/gnulib-tool.texi (Initial import): Update to match current
16311         behavior with strdup module.
16312         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
16313         * lib/memmem.h: Remove; all uses removed.  This is now done
16314         by <string.h>.
16315         * lib/mempcpy.h: Likewise.
16316         * lib/memrchr.h: Likewise.
16317         * lib/stpcpy.h: Likewise.
16318         * lib/stpncpy.h: Likewise.
16319         * lib/strcase.h: Likewise.
16320         * lib/strchrnul.h: Likewise.
16321         * lib/strdup.h: Likewise.
16322         * lib/strndup.h: Likewise.
16323         * lib/strnlen.h: Likewise.
16324         * lib/strpbrk.h: Likewise.
16325         * lib/strsep.h: Likewise.
16326         * lib/strstr.h: Likewise.
16327         * lib/strtok_r.h: Likewise.
16328         * lib/string_.h: New file.
16329         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
16330         Rely on <string.h> instead.
16331         * lib/canon-host.c: Likewise.
16332         * lib/chdir-long.c: Likewise.
16333         * lib/concatpath.c: Likewise.
16334         * lib/exclude.c: Likewise.
16335         * lib/fchdir.c: Likewise.
16336         * lib/getaddrinfo.c: Likewise.
16337         * lib/getcwd.c: Likewise.
16338         * lib/getsubopt.c: Likewise.
16339         * lib/glob.c: Likewise.
16340         * lib/hard-locale.c: Likewise.
16341         * lib/iconvme.c: Likewise.
16342         * lib/javacomp.c: Likewise.
16343         * lib/mempcpy.c: Likewise.
16344         * lib/memrchr.c: Likewise.
16345         * lib/regex_internal.h: Likewise.
16346         * lib/stpncpy.c: Likewise.
16347         * lib/strcasecmp.c: Likewise.
16348         * lib/strchrnul.c: Likewise.
16349         * lib/strdup.c: Likewise.
16350         * lib/striconv.c: Likewise.
16351         * lib/striconveh.c: Likewise.
16352         * lib/striconveha.c: Likewise.
16353         * lib/strncasecmp.c: Likewise.
16354         * lib/strndup.c: Likewise.
16355         * lib/strnlen.c: Likewise.
16356         * lib/strsep.c: Likewise.
16357         * lib/strstr.c: Likewise.
16358         * lib/strtok_r.c: Likewise.
16359         * lib/userspec.c: Likewise.
16360         * lib/w32spawn.h: Likewise.
16361         * lib/xstrndup.c: Likewise.
16362         * lib/mountlist.c (strstr): Remove decl.
16363         * m4/string_h.m4: New file.
16364         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
16365         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
16366         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
16367         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
16368         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
16369         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
16370         Set REPLACE_STRCASECMP if necessary.
16371         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
16372         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
16373         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
16374         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
16375         HAVE_DECL_STRDUP if necessary.
16376         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
16377         since gl_FUNC_STRNDUP does that now.
16378         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
16379         Check for decl here...
16380         (gl_PREREQ_STRNLEN): ... not here.
16381         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
16382         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
16383         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
16384         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
16385         necessary.
16386         * modules/string: New file.
16387         * modules/memmem (Files): Remove special-purpose include file.
16388         (Depends-on): Add string.
16389         (Include): Include <string.h>, not the removed file.
16390         * modules/mempcpy: Likewise.
16391         * modules/memrchr: Likewise.
16392         * modules/stpcpy: Likewise.
16393         * modules/stpncpy: Likewise.
16394         * modules/strcase: Likewise.
16395         * modules/strchrnul: Likewise.
16396         * modules/strdup: Likewise.
16397         * modules/strndup: Likewise.
16398         * modules/strnlen: Likewise.
16399         * modules/strpbrk: Likewise.
16400         * modules/strsep: Likewise.
16401         * modules/strstr: Likewise.
16402         * modules/strtok_r: Likewise.
16403         * tests/test-dirname.c: Don't include "strdup.h", since
16404         <string.h> now suffices.
16405         * tests/test-memmem.c: Don't include "memmem.h", since
16406         <string.h> now suffices.
16407
16408 2007-01-25  Bruno Haible  <bruno@clisp.org>
16409
16410         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
16411         *resultp is 0.
16412
16413         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
16414         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
16415         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
16416         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
16417
16418         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
16419         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
16420         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
16421         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
16422         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
16423         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
16424
16425 2007-01-24  Bruno Haible  <bruno@clisp.org>
16426
16427         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
16428         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
16429         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
16430         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
16431         gl_FUNC_FTS_CORE.
16432         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
16433         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
16434         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
16435         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
16436         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
16437         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
16438         gl_FUNC_FCHOWNAT.
16439         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
16440         gl_FUNC_STRFTIME.
16441         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
16442         Reported by Ralf Wildenhues.
16443
16444 2007-01-24  Bruno Haible  <bruno@clisp.org>
16445
16446         Drop AC_REQUIRE calls that are redundant with the module dependencies.
16447         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
16448         gl_GETADDRINFO.
16449         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
16450         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
16451         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
16452
16453 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
16454
16455         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
16456         Don't use 'exit'; just return from 'main'.
16457         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
16458
16459         * lib/fnmatch_.h: Readjust white space and comments to match
16460         glibc, to avoid spurious diffs.
16461
16462 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
16463
16464         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
16465         2004-12-01 change by Jakub Jelinek, since this code won't compile
16466         if !LIBC.  Problem reported by Bob Proulx.
16467
16468 2007-01-23  Bruno Haible  <bruno@clisp.org>
16469
16470         * lib/striconveh.c: Include c-strcaseeq.h.
16471         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
16472         * modules/striconveh (Depends-on): Add c-strcaseeq.
16473
16474 2007-01-23  Bruno Haible  <bruno@clisp.org>
16475
16476         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
16477
16478         * modules/c-strcaseeq: New file.
16479         * lib/c-strcaseeq.h: New file.
16480
16481         * modules/streq: New file.
16482         * lib/streq.h: New file.
16483
16484 2007-01-23  Bruno Haible  <bruno@clisp.org>
16485
16486         * modules/striconveha-tests: New file.
16487         * tests/test-striconveha.c: New file.
16488
16489         * lib/striconveha.h: Include <stdbool.h>.
16490         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
16491         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
16492         (mem_iconveha_notranslit): Renamed from mem_iconveha.
16493         (mem_iconveha): New function.
16494         (str_iconveha_notranslit): Renamed from str_iconveha.
16495         (str_iconveha): New function.
16496         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
16497         c-strcase.
16498
16499 2007-01-23  Bruno Haible  <bruno@clisp.org>
16500
16501         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
16502         encodings without forgiving before trying any encoding with handler.
16503         (str_iconveha): Try all encodings without forgiving before trying any
16504         encoding with handler.
16505
16506 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
16507
16508         Import the following changes from libc.
16509
16510         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
16511
16512         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
16513
16514         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
16515
16516         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
16517         normal_bracket label.
16518
16519         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
16520
16521         [BZ #361]
16522         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
16523         to normal_bracket after fetching the next character.
16524
16525 2007-01-22  Bruno Haible  <bruno@clisp.org>
16526
16527         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
16528         argument.
16529         * lib/striconveh.c (iconv_carefully_1): New function.
16530         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
16531         argument.
16532         (str_cd_iconveh): Update.
16533         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
16534         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
16535         * tests/test-striconveh.c (MAGIC): New macro.
16536         (new_offsets): New function.
16537         (main): Test call with and without offsets.
16538
16539 2007-01-22  Bruno Haible  <bruno@clisp.org>
16540
16541         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
16542         * modules/sys_select (Makefile.am): Likewise.
16543         * modules/sys_socket (Makefile.am): Likewise.
16544         * modules/sys_time (Makefile.am): Likewise.
16545
16546 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
16547
16548         * modules/gettimeofday (License): Change from GPL to LGPL, since
16549         gettimeofday is a library function.
16550
16551 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16552
16553         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
16554
16555 2007-01-21  Bruno Haible  <bruno@clisp.org>
16556
16557         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
16558
16559 2007-01-21  Bruno Haible  <bruno@clisp.org>
16560
16561         * modules/striconveha: New file.
16562         * lib/striconveha.h: New file.
16563         * lib/striconveha.c: New file.
16564         * MODULES.html.sh (Internationalization functions): Add striconveha.
16565         * lib/striconv.c (str_iconv): Optimize the case of an empty input
16566         string.
16567         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
16568
16569 2007-01-21  Bruno Haible  <bruno@clisp.org>
16570
16571         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
16572         * lib/striconveh.c (str_iconveh): Likewise.
16573
16574 2007-01-21  Bruno Haible  <bruno@clisp.org>
16575
16576         * lib/striconveh.h (mem_iconveh): New declaration.
16577         * lib/striconveh.c (mem_iconveh): New function.
16578         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
16579
16580 2007-01-21  Bruno Haible  <bruno@clisp.org>
16581
16582         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
16583
16584         * lib/striconveh.h (mem_cd_iconveh): Change specification.
16585         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
16586         original result buffer.
16587         (str_cd_iconveh): Update.
16588         * tests/test-striconveh.c (main): Update.
16589
16590         * lib/striconv.h (mem_cd_iconv): Change specification.
16591         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
16592         result buffer.
16593         (str_cd_iconv): Update.
16594         * tests/test-striconv.c (main): Update.
16595
16596 2007-01-21  Bruno Haible  <bruno@clisp.org>
16597
16598         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
16599
16600 2007-01-20  Jim Meyering  <jim@meyering.net>
16601
16602         * lib/userspec.c (parse_with_separator): If a user or group string
16603         starts with "+", skip the corresponding name-to-ID look-up, since
16604         such a look-up must fail: user and group names may not include "+".
16605
16606 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
16607
16608         * lib/poll.c: Include sys/time.h and time.h unconditionally,
16609         since we now assume the sys_time module.
16610         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
16611         check for sys/time.h; no longer needed.
16612         * modules/poll (Depends-on): Depend on sys_time.
16613
16614 2007-01-18  Bruno Haible  <bruno@clisp.org>
16615
16616         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
16617         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
16618
16619         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
16620         gettimeofday.
16621
16622         * tests/test-gettimeofday.c: Include <time.h>.
16623         (dummy): Remove variable.
16624
16625         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
16626         gl_HEADER_SYS_TIME_H.
16627         (gl_HEADER_SYS_TIME_H): New macro.
16628
16629         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
16630         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
16631         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
16632         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
16633         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
16634         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
16635         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
16636         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
16637         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
16638         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
16639         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
16640
16641         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
16642         last change; it caused a compilation error when cross-compiling to
16643         Cygwin.
16644
16645 2007-01-18  Jim Meyering  <jim@meyering.net>
16646
16647         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
16648         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
16649         than the race-prone "test -d sys || mkdir sys".
16650         (configure.ac): Use AC_PROG_MKDIR_P.
16651         * modules/sys_select: Likewise.
16652         * modules/sys_socket: Likewise.
16653         * modules/sys_time: Likewise.
16654
16655 2007-01-18  Eric Blake  <ebb9@byu.net>
16656
16657         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
16658         replace gettimeofday.
16659         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
16660         name, to avoid infinite recursion.
16661
16662 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
16663
16664         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
16665         module sys_time.
16666         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
16667         assume timespec.h defines struct timeval.
16668         * lib/settime.c: Likewise.
16669         * lib/utimens.c: Likewise.
16670         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
16671         since we now assume the gettimeofday module.
16672         * lib/tempname.c (__gen_tempname): Likewise.
16673         * lib/gettimeofday.h: Remove.
16674         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
16675         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
16676         Include <time.h>, for 'time()'.
16677         (localtime_buffer_addr): Also use this workaround if
16678         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
16679         to simplify the uses.  All uses changed.
16680         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
16681         that #undef is inside {}, and 'const' follows type name consistently.
16682         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
16683         (gettimeofday): Do not use the maximum possible value for
16684         tv->tv_usec, since that might break usages other than ls.c.
16685         Instead, we'll leave ls.c alone.  This undoes today's patch
16686         by Bruno.  Add a compile-time warning for 1s-clock resolution;
16687         we've never observed the problem but might as well keep the
16688         canary.
16689         * lib/nanosleep.c: Include timespec.h first, for interface check.
16690         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
16691         now assume the sys_time module.
16692         * lib/tempname.c: Likewise.
16693         * lib/timespec.h: Likewise.
16694         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
16695         needed.
16696         * lib/strftime.c: Likewise.
16697         * lib/timespec.h: Likewise.
16698         * lib/posixtm.c: Include posixtm.h first, for interface check.
16699         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
16700         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
16701         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
16702         * lib/sys_time_.h: New file.
16703         * lib/timespec.h (struct timespec): Use long int, not long.
16704         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
16705         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
16706         Remove obsolescent call to AC_HEADER_TIME.
16707         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
16708         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
16709         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
16710         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
16711         Likewise.
16712         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
16713         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
16714         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
16715         into the sys_time module.  Check for gettimeofday just once.
16716         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
16717         for gettimeofday signature to just check the signature.  Merely
16718         compile it, since linking doesn't test signature.  Improve test for
16719         whether gettimeofday.o is actually needed.
16720         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
16721         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
16722         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
16723         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
16724         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
16725         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
16726         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
16727         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
16728         than worrying about sys/time.h.
16729         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
16730         Don't bother worrying about TIME_WITH_SYS_TIME.
16731         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
16732         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
16733         * m4/sys_time_h.m4: New file.
16734         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
16735         Don't include sys/time.h.  Return from main rather than exiting.
16736         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
16737         all uses changed.
16738         * modules/gethrxtime (Depends-on): Add sys_time.
16739         * modules/gettime (Depends-on): Likewise.
16740         * modules/gettimeofday (Depends-on): Likewise.
16741         * modules/nanosleep (Depends-on): Likewise.
16742         * modules/settime (Depends-on): Likewise.
16743         * modules/tempname (Depends-on): Likewise.
16744         * modules/utimens (Depends-on): Likewise.
16745         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
16746         (Include:) Change back to <sys/time.h>.
16747         (Maintainer:) Add self.
16748         * modules/sys_time: New file.
16749         * modules/tempname (Depends-on): Add gettimeofday.
16750         * tests/test-gettimeofday.c: Include <sys/time.h>
16751         rather than gettimeofday.h.
16752
16753 2007-01-17  Bruno Haible  <bruno@clisp.org>
16754
16755         * gnulib-tool (func_get_license): Revert last patch. Instead, let
16756         the license default to GPL.
16757         (func_create_testdir): Don't complain if a module is LGPL and its
16758         tests module depends on GPLed modules.
16759
16760 2007-01-17  Bruno Haible  <bruno@clisp.org>
16761
16762         * lib/gettimeofday.c (gettimeofday): Add code for the case
16763         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
16764         maximum possible value for tv->tv_usec, rather than the minimum one.
16765
16766 2005-10-08  Martin Lambers  <marlam@marlam.de>
16767 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
16768 2007-01-16  Bruno Haible  <bruno@clisp.org>
16769
16770         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
16771         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
16772         gl_FUNC_GETTIMEOFDAY.
16773         (Include): Add gettimeofday.h.
16774         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
16775         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
16776         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
16777         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
16778         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
16779         * lib/gettimeofday.h: New file.
16780         * lib/gettimeofday.c: Include <sys/timeb.h>.
16781         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
16782         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
16783         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
16784         fall back on time().
16785
16786         * tests/test-gettimeofday.c: New file.
16787         * modules/gettimeofday-tests: New file.
16788
16789 2007-01-16  Eric Blake  <ebb9@byu.net>
16790
16791         * modules/fnmatch (Depends-on): Depend on wchar.
16792         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
16793         * m4/fnmatch.m4: Likewise.
16794         * modules/mbchar (Makefile.am): Assume <wchar.h>.
16795         * m4/mbchar.m4: Likewise.
16796         * modules/mbswidth (Depends-on): Depend on wchar.
16797         * lib/mbswidth.c: Assume <wchar.h>.
16798         * m4/mbswidth.m4: Likewise.
16799         * modules/quotearg (Depends-on): Depend on wchar.
16800         * lib/quotearg.c: Assume <wchar.h>.
16801         * m4/quotearg.m4: Likewise.
16802         * modules/regex (Depends-on): Depend on wchar.
16803         * lib/regex_internal.h: Assume <wchar.h>.
16804         * m4/regex.m4: Likewise.
16805         * modules/stdint (Depends-on): Depend on wchar.
16806         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
16807         * m4/stdint.m4: Likewise.
16808         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
16809         * modules/strftime (Depends-on): Depend on wchar.
16810         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
16811         * modules/strtol (Depends-on): Depend on wchar.
16812         * lib/strtol.c: Assume <wchar.h>.
16813         * modules/wcwidth (Depends-on): Depend on wchar.
16814         * lib/wcwidth.h: Assume <wchar.h>.
16815         * m4/wcwidth.m4: Likewise.
16816
16817 2007-01-16  Bruno Haible  <bruno@clisp.org>
16818
16819         * modules/csharpexec-script: New, created from...
16820         * modules/csharpexec: ... this.
16821
16822 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
16823
16824         * modules/javaexec-script: New, created from...
16825         * modules/javaexec: ... this.
16826
16827 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
16828
16829         * modules/poll (Dependencies): Add sys_select.
16830
16831 2007-01-15  Jim Meyering  <jim@meyering.net>
16832
16833         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
16834         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
16835         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
16836         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
16837
16838 2007-01-15  Bruno Haible  <bruno@clisp.org>
16839
16840         * modules/striconveh: New file.
16841         * lib/striconveh.h: New file.
16842         * lib/striconveh.c: New file.
16843         * MODULES.html.sh (Internationalization functions): Add striconveh.
16844
16845         * modules/striconveh-tests: New file.
16846         * tests/test-striconveh.c: New file.
16847
16848 2007-01-15  Bruno Haible  <bruno@clisp.org>
16849
16850         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
16851         not from GNU libiconv or GNU libc.
16852
16853 2007-01-15  Bruno Haible  <bruno@clisp.org>
16854
16855         * doc/gnulib-intro.texi (Copyright): Explain the different license
16856         terms for module descriptions, autoconf macros, tests, documentation.
16857
16858 2007-01-14  Bruno Haible  <bruno@clisp.org>
16859
16860         * modules/striconv-tests: New file.
16861         * tests/test-striconv.c: New file.
16862
16863 2007-01-14  Bruno Haible  <bruno@clisp.org>
16864
16865         * modules/iconv-tests: New file.
16866         * tests/test-iconv.c: New file.
16867
16868 2007-01-14  Bruno Haible  <bruno@clisp.org>
16869
16870         * gnulib-tool (func_get_license): For test modules, use the license of
16871         the main module.
16872
16873 2007-01-14  Bruno Haible  <bruno@clisp.org>
16874
16875         * modules/iconv (Include): Clarify that <iconv.h> can only be included
16876         if iconv is found to exist.
16877
16878 2007-01-14  Bruno Haible  <bruno@clisp.org>
16879
16880         * modules/c-ctype-tests: New file.
16881         * tests/test-c-ctype.c: New file.
16882
16883 2007-01-14  Bruno Haible  <bruno@clisp.org>
16884
16885         * modules/binary-io-tests: New file.
16886         * tests/test-binary-io.sh: New file.
16887         * tests/test-binary-io.c: New file.
16888
16889 2007-01-14  Bruno Haible  <bruno@clisp.org>
16890
16891         * modules/array-oset-tests: New file.
16892         * tests/test-array_oset.c: New file.
16893
16894 2007-01-14  Bruno Haible  <bruno@clisp.org>
16895
16896         * modules/array-list-tests: New file.
16897         * tests/test-array_list.c: New file.
16898
16899 2007-01-14  Bruno Haible  <bruno@clisp.org>
16900
16901         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
16902         and make.
16903         Reported by Simon Josefsson in
16904         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
16905
16906 2007-01-14  Bruno Haible  <bruno@clisp.org>
16907
16908         * modules/allocsa-tests: New file.
16909         * tests/test-allocsa.c: New file.
16910
16911 2007-01-14  Bruno Haible  <bruno@clisp.org>
16912
16913         * modules/fchdir (Depends-on): Add absolute-header.
16914         * modules/unistd (Depends-on): Likewise.
16915
16916 2006-12-30  Bruno Haible  <bruno@clisp.org>
16917
16918         * modules/fchdir: New file.
16919         * modules/unistd (Files): Add lib/unistd_.h.
16920         (Makefile.am): Generate unistd.h from unistd_.h.
16921         * lib/fchdir.c: New file.
16922         * lib/dirent_.h: New file.
16923         * lib/unistd_.h: New file.
16924         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
16925         * m4/fchdir.m4: New file.
16926         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
16927         (gl_HEADER_UNISTD): Invoke it.
16928         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
16929         function.
16930         * lib/backupfile.c (opendir, closedir): Undefine.
16931         * lib/chown.c (open, close): Undefine.
16932         * lib/clean-temp.c (open, close): Undefine.
16933         * lib/copy-file.c (open, close): Undefine.
16934         * lib/execute.c (open, close): Undefine.
16935         * lib/fsusage.c (open, close): Undefine.
16936         * lib/gc-gnulib.c (open, close): Undefine.
16937         * lib/getcwd.c (opendir, closedir): Undefine.
16938         * lib/glob.c (opendir, closedir): Undefine.
16939         * lib/javacomp.c (open, close): Undefine.
16940         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
16941         * lib/openat-proc.c (open, close): Undefine.
16942         * lib/pagealign_alloc.c (open, close): Undefine.
16943         * lib/pipe.c (open, close): Undefine.
16944         * lib/progreloc.c (open, close): Undefine.
16945         * lib/savedir.c (opendir, closedir): Undefine.
16946         * lib/utime.c (open, close): Undefine.
16947         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
16948
16949 2007-01-10  Bruno Haible  <bruno@clisp.org>
16950
16951         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
16952
16953 2007-01-12  Eric Blake  <ebb9@byu.net>
16954
16955         Provide a robust <wchar.h>.  Further simplifications are now
16956         possible in other modules, but not included here.
16957         * modules/wchar: New module.
16958         * m4/wchar.m4: New file.
16959         * lib/wchar_.h: Likewise.
16960         * modules/mbchar (Depends-on): Depend on wchar, as the first use
16961         of the new module.
16962         * MODULES.html.sh (Extended multibyte and wide character utilities):
16963         New section.
16964
16965 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
16966
16967         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
16968         to a reasonable default for memory allocation.
16969         (xreadlink): Don't allocate a huge buffer, to work around a buggy
16970         file system that reports garbage st_size values for symlinks.
16971         Problem reported by Liyang Hu.
16972
16973 2007-01-11  Simon Josefsson  <simon@josefsson.org>
16974
16975         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
16976         Emacs .#* auto-save files).
16977
16978 2007-01-11  Bruno Haible  <bruno@clisp.org>
16979
16980         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
16981         directory.
16982
16983 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
16984
16985         Use @...@ consistently in lib/wctype_.h.
16986         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
16987         on it being set to 1 or 0.
16988         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
16989         go back to AC_SUBSTing it.
16990         * modules/wctype (Makefile.am): Undo previous change.
16991
16992 2007-01-10  Eric Blake  <ebb9@byu.net>
16993
16994         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
16995         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
16996         * modules/wctype (Makefile.am): Likewise.
16997         Reported by Chris McGuire.
16998
16999 2007-01-10  Jim Meyering  <jim@meyering.net>
17000
17001         fts.c: a small readability/maintainability improvement
17002         * lib/fts.c (fts_read): Make this code slightly more readable and
17003         maintainable by hoisting the "sp->fts_cur = p" assignments to
17004         immediately follow the statements that set P.  Derived from
17005         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
17006
17007 2007-01-10  Eric Blake  <ebb9@byu.net>
17008
17009         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
17010         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
17011         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
17012         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
17013         Reported by Chris McGuire.
17014
17015 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17016
17017         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
17018         in sed script.
17019
17020 2007-01-09  Bruno Haible  <bruno@clisp.org>
17021
17022         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
17023         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
17024         variables.
17025         (func_module): Use them.
17026
17027 2007-01-09  Bruno Haible  <bruno@clisp.org>
17028
17029         * modules/unistr/base: New file.
17030         * lib/unistr.h: New file.
17031
17032         * modules/unistr/u8-to-u16: New file.
17033         * lib/unistr/u8-to-u16.c: New file.
17034
17035         * modules/unistr/u8-to-u32: New file.
17036         * lib/unistr/u8-to-u32.c: New file.
17037
17038         * modules/unistr/u16-to-u8: New file.
17039         * lib/unistr/u16-to-u8.c: New file.
17040
17041         * modules/unistr/u16-to-u32: New file.
17042         * lib/unistr/u16-to-u32.c: New file.
17043
17044         * modules/unistr/u32-to-u8: New file.
17045         * lib/unistr/u32-to-u8.c: New file.
17046
17047         * modules/unistr/u32-to-u16: New file.
17048         * lib/unistr/u32-to-u16.c: New file.
17049
17050         * modules/unistr/u8-check: New file.
17051         * modules/unistr/u16-check: New file.
17052         * modules/unistr/u32-check: New file.
17053         * lib/unistr/u8-check.c: New file.
17054         * lib/unistr/u16-check.c: New file.
17055         * lib/unistr/u32-check.c: New file.
17056
17057         * modules/unistr/u8-chr: New file.
17058         * modules/unistr/u16-chr: New file.
17059         * modules/unistr/u32-chr: New file.
17060         * lib/unistr/u8-chr.c: New file.
17061         * lib/unistr/u16-chr.c: New file.
17062         * lib/unistr/u32-chr.c: New file.
17063
17064         * modules/unistr/u8-cmp: New file.
17065         * modules/unistr/u16-cmp: New file.
17066         * modules/unistr/u32-cmp: New file.
17067         * lib/unistr/u8-cmp.c: New file.
17068         * lib/unistr/u16-cmp.c: New file.
17069         * lib/unistr/u32-cmp.c: New file.
17070
17071         * modules/unistr/u8-cpy: New file.
17072         * modules/unistr/u16-cpy: New file.
17073         * modules/unistr/u32-cpy: New file.
17074         * lib/unistr/u8-cpy.c: New file.
17075         * lib/unistr/u16-cpy.c: New file.
17076         * lib/unistr/u32-cpy.c: New file.
17077         * lib/unistr/u-cpy.h: New file.
17078
17079         * modules/unistr/u8-cpy-alloc: New file.
17080         * modules/unistr/u16-cpy-alloc: New file.
17081         * modules/unistr/u32-cpy-alloc: New file.
17082         * lib/unistr/u8-cpy-alloc.c: New file.
17083         * lib/unistr/u16-cpy-alloc.c: New file.
17084         * lib/unistr/u32-cpy-alloc.c: New file.
17085         * lib/unistr/u-cpy-alloc.h: New file.
17086
17087         * modules/unistr/u8-endswith: New file.
17088         * modules/unistr/u16-endswith: New file.
17089         * modules/unistr/u32-endswith: New file.
17090         * lib/unistr/u8-endswith.c: New file.
17091         * lib/unistr/u16-endswith.c: New file.
17092         * lib/unistr/u32-endswith.c: New file.
17093         * lib/unistr/u-endswith.h: New file.
17094
17095         * modules/unistr/u8-mblen: New file.
17096         * modules/unistr/u16-mblen: New file.
17097         * modules/unistr/u32-mblen: New file.
17098         * lib/unistr/u8-mblen.c: New file.
17099         * lib/unistr/u16-mblen.c: New file.
17100         * lib/unistr/u32-mblen.c: New file.
17101
17102         * modules/unistr/u8-mbtouc: New file.
17103         * modules/unistr/u16-mbtouc: New file.
17104         * modules/unistr/u32-mbtouc: New file.
17105         * lib/unistr/u8-mbtouc.c: New file.
17106         * lib/unistr/u16-mbtouc.c: New file.
17107         * lib/unistr/u32-mbtouc.c: New file.
17108
17109         * modules/unistr/u8-mbtouc-safe: New file.
17110         * modules/unistr/u16-mbtouc-safe: New file.
17111         * modules/unistr/u32-mbtouc-safe: New file.
17112         * lib/unistr/u8-mbtouc-safe.c: New file.
17113         * lib/unistr/u16-mbtouc-safe.c: New file.
17114         * lib/unistr/u32-mbtouc-safe.c: New file.
17115
17116         * modules/unistr/u8-move: New file.
17117         * modules/unistr/u16-move: New file.
17118         * modules/unistr/u32-move: New file.
17119         * lib/unistr/u8-move.c: New file.
17120         * lib/unistr/u16-move.c: New file.
17121         * lib/unistr/u32-move.c: New file.
17122         * lib/unistr/u-move.h: New file.
17123
17124         * modules/unistr/u8-next: New file.
17125         * modules/unistr/u16-next: New file.
17126         * modules/unistr/u32-next: New file.
17127         * lib/unistr/u8-next.c: New file.
17128         * lib/unistr/u16-next.c: New file.
17129         * lib/unistr/u32-next.c: New file.
17130
17131         * modules/unistr/u8-prev: New file.
17132         * modules/unistr/u16-prev: New file.
17133         * modules/unistr/u32-prev: New file.
17134         * lib/unistr/u8-prev.c: New file.
17135         * lib/unistr/u16-prev.c: New file.
17136         * lib/unistr/u32-prev.c: New file.
17137
17138         * modules/unistr/u8-set: New file.
17139         * modules/unistr/u16-set: New file.
17140         * modules/unistr/u32-set: New file.
17141         * lib/unistr/u8-set.c: New file.
17142         * lib/unistr/u16-set.c: New file.
17143         * lib/unistr/u32-set.c: New file.
17144         * lib/unistr/u-set.h: New file.
17145
17146         * modules/unistr/u8-startswith: New file.
17147         * modules/unistr/u16-startswith: New file.
17148         * modules/unistr/u32-startswith: New file.
17149         * lib/unistr/u8-startswith.c: New file.
17150         * lib/unistr/u16-startswith.c: New file.
17151         * lib/unistr/u32-startswith.c: New file.
17152         * lib/unistr/u-startswith.h: New file.
17153
17154         * modules/unistr/u8-stpcpy: New file.
17155         * modules/unistr/u16-stpcpy: New file.
17156         * modules/unistr/u32-stpcpy: New file.
17157         * lib/unistr/u8-stpcpy.c: New file.
17158         * lib/unistr/u16-stpcpy.c: New file.
17159         * lib/unistr/u32-stpcpy.c: New file.
17160         * lib/unistr/u-stpcpy.h: New file.
17161
17162         * modules/unistr/u8-stpncpy: New file.
17163         * modules/unistr/u16-stpncpy: New file.
17164         * modules/unistr/u32-stpncpy: New file.
17165         * lib/unistr/u8-stpncpy.c: New file.
17166         * lib/unistr/u16-stpncpy.c: New file.
17167         * lib/unistr/u32-stpncpy.c: New file.
17168         * lib/unistr/u-stpncpy.h: New file.
17169
17170         * modules/unistr/u8-strcat: New file.
17171         * modules/unistr/u16-strcat: New file.
17172         * modules/unistr/u32-strcat: New file.
17173         * lib/unistr/u8-strcat.c: New file.
17174         * lib/unistr/u16-strcat.c: New file.
17175         * lib/unistr/u32-strcat.c: New file.
17176         * lib/unistr/u-strcat.h: New file.
17177
17178         * modules/unistr/u8-strchr: New file.
17179         * modules/unistr/u16-strchr: New file.
17180         * modules/unistr/u32-strchr: New file.
17181         * lib/unistr/u8-strchr.c: New file.
17182         * lib/unistr/u16-strchr.c: New file.
17183         * lib/unistr/u32-strchr.c: New file.
17184
17185         * modules/unistr/u8-strcmp: New file.
17186         * modules/unistr/u16-strcmp: New file.
17187         * modules/unistr/u32-strcmp: New file.
17188         * lib/unistr/u8-strcmp.c: New file.
17189         * lib/unistr/u16-strcmp.c: New file.
17190         * lib/unistr/u32-strcmp.c: New file.
17191
17192         * modules/unistr/u8-strcpy: New file.
17193         * modules/unistr/u16-strcpy: New file.
17194         * modules/unistr/u32-strcpy: New file.
17195         * lib/unistr/u8-strcpy.c: New file.
17196         * lib/unistr/u16-strcpy.c: New file.
17197         * lib/unistr/u32-strcpy.c: New file.
17198         * lib/unistr/u-strcpy.h: New file.
17199
17200         * modules/unistr/u8-strcspn: New file.
17201         * modules/unistr/u16-strcspn: New file.
17202         * modules/unistr/u32-strcspn: New file.
17203         * lib/unistr/u8-strcspn.c: New file.
17204         * lib/unistr/u16-strcspn.c: New file.
17205         * lib/unistr/u32-strcspn.c: New file.
17206         * lib/unistr/u-strcspn.h: New file.
17207
17208         * modules/unistr/u8-strdup: New file.
17209         * modules/unistr/u16-strdup: New file.
17210         * modules/unistr/u32-strdup: New file.
17211         * lib/unistr/u8-strdup.c: New file.
17212         * lib/unistr/u16-strdup.c: New file.
17213         * lib/unistr/u32-strdup.c: New file.
17214         * lib/unistr/u-strdup.h: New file.
17215
17216         * modules/unistr/u8-strlen: New file.
17217         * modules/unistr/u16-strlen: New file.
17218         * modules/unistr/u32-strlen: New file.
17219         * lib/unistr/u8-strlen.c: New file.
17220         * lib/unistr/u16-strlen.c: New file.
17221         * lib/unistr/u32-strlen.c: New file.
17222         * lib/unistr/u-strlen.h: New file.
17223
17224         * modules/unistr/u8-strmblen: New file.
17225         * modules/unistr/u16-strmblen: New file.
17226         * modules/unistr/u32-strmblen: New file.
17227         * lib/unistr/u8-strmblen.c: New file.
17228         * lib/unistr/u16-strmblen.c: New file.
17229         * lib/unistr/u32-strmblen.c: New file.
17230
17231         * modules/unistr/u8-strmbtouc: New file.
17232         * modules/unistr/u16-strmbtouc: New file.
17233         * modules/unistr/u32-strmbtouc: New file.
17234         * lib/unistr/u8-strmbtouc.c: New file.
17235         * lib/unistr/u16-strmbtouc.c: New file.
17236         * lib/unistr/u32-strmbtouc.c: New file.
17237
17238         * modules/unistr/u8-strncat: New file.
17239         * modules/unistr/u16-strncat: New file.
17240         * modules/unistr/u32-strncat: New file.
17241         * lib/unistr/u8-strncat.c: New file.
17242         * lib/unistr/u16-strncat.c: New file.
17243         * lib/unistr/u32-strncat.c: New file.
17244         * lib/unistr/u-strncat.h: New file.
17245
17246         * modules/unistr/u8-strncmp: New file.
17247         * modules/unistr/u16-strncmp: New file.
17248         * modules/unistr/u32-strncmp: New file.
17249         * lib/unistr/u8-strncmp.c: New file.
17250         * lib/unistr/u16-strncmp.c: New file.
17251         * lib/unistr/u32-strncmp.c: New file.
17252
17253         * modules/unistr/u8-strncpy: New file.
17254         * modules/unistr/u16-strncpy: New file.
17255         * modules/unistr/u32-strncpy: New file.
17256         * lib/unistr/u8-strncpy.c: New file.
17257         * lib/unistr/u16-strncpy.c: New file.
17258         * lib/unistr/u32-strncpy.c: New file.
17259         * lib/unistr/u-strncpy.h: New file.
17260
17261         * modules/unistr/u8-strnlen: New file.
17262         * modules/unistr/u16-strnlen: New file.
17263         * modules/unistr/u32-strnlen: New file.
17264         * lib/unistr/u8-strnlen.c: New file.
17265         * lib/unistr/u16-strnlen.c: New file.
17266         * lib/unistr/u32-strnlen.c: New file.
17267         * lib/unistr/u-strnlen.h: New file.
17268
17269         * modules/unistr/u8-strpbrk: New file.
17270         * modules/unistr/u16-strpbrk: New file.
17271         * modules/unistr/u32-strpbrk: New file.
17272         * lib/unistr/u8-strpbrk.c: New file.
17273         * lib/unistr/u16-strpbrk.c: New file.
17274         * lib/unistr/u32-strpbrk.c: New file.
17275         * lib/unistr/u-strpbrk.h: New file.
17276
17277         * modules/unistr/u8-strrchr: New file.
17278         * modules/unistr/u16-strrchr: New file.
17279         * modules/unistr/u32-strrchr: New file.
17280         * lib/unistr/u8-strrchr.c: New file.
17281         * lib/unistr/u16-strrchr.c: New file.
17282         * lib/unistr/u32-strrchr.c: New file.
17283
17284         * modules/unistr/u8-strspn: New file.
17285         * modules/unistr/u16-strspn: New file.
17286         * modules/unistr/u32-strspn: New file.
17287         * lib/unistr/u8-strspn.c: New file.
17288         * lib/unistr/u16-strspn.c: New file.
17289         * lib/unistr/u32-strspn.c: New file.
17290         * lib/unistr/u-strspn.h: New file.
17291
17292         * modules/unistr/u8-strstr: New file.
17293         * modules/unistr/u16-strstr: New file.
17294         * modules/unistr/u32-strstr: New file.
17295         * lib/unistr/u8-strstr.c: New file.
17296         * lib/unistr/u16-strstr.c: New file.
17297         * lib/unistr/u32-strstr.c: New file.
17298         * lib/unistr/u-strstr.h: New file.
17299
17300         * modules/unistr/u8-strtok: New file.
17301         * modules/unistr/u16-strtok: New file.
17302         * modules/unistr/u32-strtok: New file.
17303         * lib/unistr/u8-strtok.c: New file.
17304         * lib/unistr/u16-strtok.c: New file.
17305         * lib/unistr/u32-strtok.c: New file.
17306         * lib/unistr/u-strtok.h: New file.
17307
17308         * modules/unistr/u8-uctomb: New file.
17309         * modules/unistr/u16-uctomb: New file.
17310         * modules/unistr/u32-uctomb: New file.
17311         * lib/unistr/u8-uctomb.c: New file.
17312         * lib/unistr/u16-uctomb.c: New file.
17313         * lib/unistr/u32-uctomb.c: New file.
17314
17315         * MODULES.html.sh (Unicode string functions): Add the new modules.
17316
17317 2007-01-08  Bruno Haible  <bruno@clisp.org>
17318
17319         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
17320         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
17321         subdirectories.
17322
17323 2007-01-08  Karl Berry  <karl@gnu.org>
17324
17325         * doc/error.texi: mention that main() fns must set program_name
17326         when progname is used.
17327
17328 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
17329
17330         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
17331         WCTYPE_H is empty, for the benefit of builds from non-distclean
17332         directories.  Problem reported by Eric Blake in
17333         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
17334
17335 2007-01-08  Bruno Haible  <bruno@clisp.org>
17336
17337         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
17338         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
17339         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
17340         PROVIDE_CANONICALIZE_FILENAME_MODE.
17341         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
17342
17343 2007-01-08  Bruno Haible  <bruno@clisp.org>
17344
17345         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
17346         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
17347         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
17348         * lib/fts.c: Likewise.
17349         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
17350
17351 2006-12-25  Bruno Haible  <bruno@clisp.org>
17352
17353         * modules/utf8-ucs4-safe: New file.
17354         * lib/utf8-ucs4-safe.h: New file.
17355         * lib/unistr/utf8-ucs4-safe.c: New file.
17356
17357         * modules/utf16-ucs4-safe: New file.
17358         * lib/utf16-ucs4-safe.h: New file.
17359         * lib/unistr/utf16-ucs4-safe.c: New file.
17360
17361         * MODULES.html.sh (Unicode string functions): Add the new modules.
17362
17363 2007-01-08  Bruno Haible  <bruno@clisp.org>
17364
17365         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
17366         (Depends-on): Add unitypes.
17367         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
17368         (u8_mbtouc_aux): Move out to separate file.
17369         (u8_mbtouc): Use ucs4_t, uint8_t types.
17370         * lib/unistr/utf8-ucs4.c: New file.
17371
17372         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
17373         (Depends-on): Add unitypes.
17374         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
17375         (u16_mbtouc_aux): Move out to separate file.
17376         (u16_mbtouc): Use ucs4_t, uint16_t types.
17377         * lib/unistr/utf16-ucs4.c: New file.
17378
17379         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
17380         (Depends-on): Add unitypes.
17381         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
17382         (u8_uctomb_aux): Move out to separate file.
17383         (u8_uctomb): Use ucs4_t, uint8_t types.
17384         * lib/unistr/ucs4-utf8.c: New file.
17385
17386         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
17387         (Depends-on): Add unitypes.
17388         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
17389         (u16_uctomb_aux): Move out to separate file.
17390         (u16_uctomb): Use ucs4_t, uint16_t types.
17391         * lib/unistr/ucs4-utf16.c: New file.
17392
17393 2006-12-25  Bruno Haible  <bruno@clisp.org>
17394
17395         * modules/unitypes: New file.
17396         * lib/unitypes.h: New file.
17397         * MODULES.html.sh (func_all_modules): New section "Unicode string
17398         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
17399         this section. Add unitypes.
17400
17401 2007-01-08  Bruno Haible  <bruno@clisp.org>
17402
17403         Avoid variable names that conflict with those from libtool.
17404         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
17405         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
17406         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
17407         library_names_spec to acl_library_names_spec, hardcode_* to
17408         acl_hardcode_*.
17409         Reported by Ralf Wildenhues.
17410
17411 2007-01-08  Bruno Haible  <bruno@clisp.org>
17412
17413         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
17414         definition.
17415         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
17416         definition.
17417         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
17418         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
17419         definition.
17420         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
17421         definition.
17422         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
17423         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
17424         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
17425         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
17426         definition.
17427         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
17428         definition.
17429         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
17430         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
17431         GC_USE_<algorithm>.
17432         * lib/gc-libgcrypt.c: Likewise.
17433         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
17434         * modules/gc-arctwo (configure.ac): Likewise.
17435         * modules/gc-des (configure.ac): Likewise.
17436         * modules/gc-hmac-md5 (configure.ac): Likewise.
17437         * modules/gc-hmac-sha1 (configure.ac): Likewise.
17438         * modules/gc-md2 (configure.ac): Likewise.
17439         * modules/gc-md4 (configure.ac): Likewise.
17440         * modules/gc-md5 (configure.ac): Likewise.
17441         * modules/gc-random (configure.ac): Likewise.
17442         * modules/gc-rijndael (configure.ac): Likewise.
17443         * modules/gc-sha1 (configure.ac): Likewise.
17444
17445 2007-01-08  Bruno Haible  <bruno@clisp.org>
17446
17447         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
17448         macro definition.
17449         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
17450         definition.
17451         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
17452         definition.
17453         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
17454         * modules/fcntl-safer (configure.ac): Likewise.
17455         * modules/fopen-safer (configure.ac): Likewise.
17456         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
17457         GNULIB_FWRITEERROR macro definition.
17458
17459 2007-01-08  Bruno Haible  <bruno@clisp.org>
17460
17461         * m4/gnulib-common.m4: New file.
17462         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
17463         (func_get_filelist): Add m4/gnulib-common.m4.
17464
17465 2007-01-08  Bruno Haible  <bruno@clisp.org>
17466
17467         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
17468         command.
17469
17470 2007-01-08  Jim Meyering  <jim@meyering.net>
17471
17472         Use a more robust test for a "can't happen" condition.
17473         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
17474         narrowed the st_size value.  Presuming the "can't happen" condition
17475         is true, that narrowing could conceivably convert an invalid st_size
17476         value into a valid one.  Instead, use a change based on Matthew
17477         Woehlke's original patch.
17478
17479         Slight readability improvement: use an assert-like macro
17480         in place of literal "abort ()" uses.
17481         * lib/fts.c (fts_assert): Define.
17482         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
17483         Use this macro instead of a bare 'abort'.
17484
17485 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
17486
17487         Don't worry about using IRIX 5.3's wctype.h broken definitions;
17488         simply work around them.
17489         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
17490         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
17491         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
17492         declaring.
17493         Don't bother to define as macros, since the standard doesn't require it.
17494         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
17495         longer worry about IRIX 5.3.
17496         (HAVE_WCTYPE_CTMP_BUG): Remove.
17497
17498 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
17499
17500         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
17501         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
17502         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
17503         Problems reported by Georg Schwarz for IRIX 5.3.
17504
17505         * gnulib-tool (autoconf_minversion): Take the maximum version number
17506         found, not the minimum.  Problem reported by James Youngman.
17507
17508 2007-01-03  Karl Berry  <karl@gnu.org>
17509
17510         * doc/error.texi: new file, explaining interaction with progname.
17511         * doc/gnulib.texi: include it.  Update copyright.
17512
17513 2007-01-03  Simon Josefsson  <simon@josefsson.org>
17514
17515         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
17516         AC_CANONICAL_HOST, to improve autobuild outputs.
17517
17518 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
17519             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
17520
17521         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
17522         sockets, server sockets, and other file descriptors.  Count errors
17523         to compute the return value.  Reorder the code a bit to be easier
17524         to follow.  Don't set event bits that were not requested (except
17525         POLLERR and POLLHUP).
17526
17527 2007-01-01  Bruno Haible  <bruno@clisp.org>
17528
17529         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
17530
17531 2007-01-03  Jim Meyering  <jim@meyering.net>
17532
17533         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
17534
17535 2007-01-02  Bruno Haible  <bruno@clisp.org>
17536
17537         * modules/settime (Include): Require timespec.h.
17538         * modules/nanosleep (Include): Likewise.
17539
17540 2007-01-01  Bruno Haible  <bruno@clisp.org>
17541
17542         * gnulib-tool (func_emit_copyright_notice): Bump year.
17543         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
17544
17545 2007-01-01  Bruno Haible  <bruno@clisp.org>
17546
17547         Improve support for OpenBSD.
17548         * build-aux/config.rpath (libname_spec): Export.
17549         (library_names_spec): New variable. Export.
17550         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
17551         library_names_spec from the config.rpath output. Locate shared library
17552         through the name pattern in library_names_spec.
17553
17554 2007-01-01  Eric Blake  <ebb9@byu.net>
17555
17556         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
17557
17558 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
17559
17560         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
17561         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
17562         assume the C locale, and avoid an "eval" that could cause trouble.
17563         Problem with SORT reported by Bob Proulx.
17564
17565         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
17566         Define.  Trivial patch from Henning Nielsen Lund, originally
17567         sent to bug-grep@gnu.org today.
17568
17569 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
17570
17571         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
17572         struct stat.  Problem reported by Henning Nielsen Lund.
17573         * lib/acl.c: Include acl.h first, to check interface.  Don't
17574         bother to include sys/types.h and sys/stat.h again.
17575
17576 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
17577
17578         Import the following change from libc; problem reported by
17579         Sven Verdoolaege.
17580
17581         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
17582
17583         [BZ #1373]
17584         * lib/argp.h: Remove __NTH for __argp_usage inline function.
17585
17586 2006-12-28  Jim Meyering  <jim@meyering.net>
17587
17588         * build-aux/announce-gen: Do not assume that the package
17589         builds any of tar.gz, tar.bz2, and .xdelta files.
17590         Suggestion from Simon Josefsson.
17591
17592 2006-12-28  Simon Josefsson  <simon@josefsson.org>
17593
17594         * modules/announce-gen: New file.
17595
17596 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
17597
17598         * lib/mbchar.h: Just include <wctype.h>; the wctype module
17599         handles its gotchas now.
17600         * lib/mbswidth.c: Likewise.
17601         * lib/wcwidth.h: Likewise.
17602         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
17603         and iswcntrl; the wctype module does this stuff now.
17604         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
17605         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
17606         * modules/mbchar (Depends-on): Add wctype.
17607         * modules/mbswidth (Depends-on): Likewise.
17608         * modules/wcwidth (Depends-on): Likewise.
17609
17610 2006-12-27  Eric Blake  <ebb9@byu.net>
17611
17612         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
17613         module uses more than what <wctype.h> is required to provide.
17614
17615 2006-12-26  Eric Blake  <ebb9@byu.net>
17616
17617         * gnulib-tool (sed_extract_prog): Avoid space-tab.
17618
17619 2006-12-26  Eric Blake  <ebb9@byu.net>
17620
17621         * modules/absolute-header: New module.
17622         * modules/fcntl (Depends-on): Depend on it.
17623         * modules/inttypes (Depends-on): Likewise.
17624         * modules/stdint (Depends-on): Likewise.
17625         * modules/sys_stat (Depends-on): Likewise.
17626         * modules/wctype (Depends-on): Likewise.
17627         * MODULES.html.sh (Support for building libraries and
17628         executables): Document it.
17629
17630 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
17631
17632         * gnulib-tool (SED): Remove, undoing previous change.
17633         The problem was that it broke coreutils on Solaris, because
17634         "sed --posix" leaked into a makefile.
17635         (sed): New alias, if 'alias' and GNU sed.
17636
17637 2006-12-24  Jim Meyering  <jim@meyering.net>
17638
17639         Work around an fchownat bug in glibc-2.4:
17640         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
17641         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
17642         in spite of the -P option.
17643         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
17644         New macros.
17645         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
17646         * modules/openat (Files): Add lib/fchownat.c.
17647         * lib/openat.c (fchownat): Don't define here.  Move to...
17648         * lib/fchownat.c: ...this new file.
17649
17650 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
17651
17652         Fix bug reported by Bruno Haible in
17653         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
17654         where quotearg.c didn't compile on Mac OS X 10.2 because it
17655         lacks <wchar.h> and wint_t.
17656         * lib/wctype_.h (__wctype_wint_t): New type.
17657         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
17658         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
17659         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
17660         Arg is now of type __wctype_wint_t, not wint_t.
17661         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
17662         substitute HAVE_WINT_T.
17663         * modules/wctype (Files): Add m4/wint_t.m4.
17664         (wctype.h): Substitute HAVE_WINT_T.
17665
17666 2006-12-23  Bruno Haible  <bruno@clisp.org>
17667
17668         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
17669
17670 2006-12-23  Bruno Haible  <bruno@clisp.org>
17671
17672         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
17673         S_ISLNK.
17674         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
17675         mingw.
17676
17677 2006-12-22  Bruno Haible  <bruno@clisp.org>
17678
17679         * lib/copy-file.c: Include acl.h.
17680         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
17681         Close the file descriptors only after being done with copy_acl.
17682         * modules/copy-file (Depends-on): Add acl.
17683
17684 2006-12-22  Bruno Haible  <bruno@clisp.org>
17685
17686         * gnulib-tool (SED): New variable.
17687         Use $SED instead of sed everywhere.
17688
17689 2006-12-22  Bruno Haible  <bruno@clisp.org>
17690
17691         * modules/no-c++: New file.
17692         * m4/no-c++.m4: New file.
17693         * MODULES.html.sh (Support for building libraries and executables):
17694         Add no-c++.
17695
17696 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
17697
17698         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
17699         Include <limits.h>, and use its INT_MAX to rewrite the
17700         j loop so that it does not overflow 'int'.  Problem reported by
17701         Ralf Wildenhues in
17702         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
17703         Play it safe by shifting left by 1 rather than multiplying by 2,
17704         as GCC is less likely to optimize this away when the value
17705         is signed (when it assumes overflow leads to undefined behavior).
17706         Also, don't assume time_t uses two's complement.
17707
17708 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
17709
17710         * MODULES.html.sh: New module wctype.
17711         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
17712         * lib/fnmatch.c: Don't bother to include <wchar.h> before
17713         <wctype.h>, since the new wctype module should fix this.
17714         * lib/quotearg.c: Include <wctype.h> unconditionally, since
17715         the wctype module should arrange for it.
17716         * lib/regex_internal.h: Likewise.
17717         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
17718         since the wctype module should handle this now.
17719         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
17720         * modules/fnmatch (Depends-on): Add wctype.
17721         * modules/quotearg (Depends-on): Likewise.
17722         * modules/regex (Depends-on): Likewise.
17723
17724 2006-12-19  Bruno Haible  <bruno@clisp.org>
17725
17726         * lib/strdup.h [C++]: Wrap definitions in extern "C".
17727         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
17728
17729 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17730
17731         * modules/savewd (Depends-on): Fix dependency on fcntl.
17732
17733 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
17734
17735         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
17736         conforms to C99, rather than relying on the user's environment
17737         setting of STDINT_H.
17738
17739 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
17740         and Eric Blake  <ebb9@byu.net>
17741
17742         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
17743         This is more consistent with the other defines here.
17744         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
17745         Port to z/OS.  Problem reported by Paul Gilmartin.
17746         Change local vars to use gl_ prefix rather than ac_.
17747         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
17748         with other defines.
17749         * modules/double-slash-root: New module.
17750         * modules/dirname (Files): Remove m4/double-slash-root.m4.
17751         (Depends-on): Add double-slash-root.
17752         * MODULES.html.sh (File system functions): Mention new module.
17753
17754 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
17755
17756         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
17757         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
17758         This is for the benefit of gzip, which doesn't do i18n.
17759
17760 2006-12-12  Jim Meyering  <jim@meyering.net>
17761
17762         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
17763         Reported by Andreas Schwab <schwab@suse.de>.
17764
17765 2006-12-12  Bruno Haible  <bruno@clisp.org>
17766
17767         Merge these changes.
17768         2006-09-05  Bruno Haible  <bruno@clisp.org>
17769         * lib/iconvme.c (iconv_string): No need to save and restore errno when
17770         iconv_alloc succeeded.
17771         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
17772         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
17773         test for " && dest " at the end - dest is always != NULL there. Call
17774         iconv with 4xNULL arguments initially, to reset the state. Call iconv
17775         with 2xNULL arguments, also to flush the state storage. Handle the
17776         IRIX iconv behaviour. Realloc the final result, to throw away unused
17777         memory.
17778
17779 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
17780
17781         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
17782         and fchmodat unconditionally, since glibc 2.4 has them.
17783         Problem reported by Arkadiusz Miskiewicz.
17784
17785 2006-12-10  Bruno Haible  <bruno@clisp.org>
17786
17787         * gnulib-tool (func_import): Show the include files only for those
17788         modules that are copied and specified.
17789         Reported by Karl Berry.
17790
17791 2006-12-08  Jim Meyering  <jim@meyering.net>
17792
17793         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
17794         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
17795
17796         * build-aux/announce-gen: Add two new options, both optional:
17797         --bootstrap-tools=TOOL_LIST
17798               a comma-separated list of tools, e.g.,
17799               autoconf,automake,bison,gnulib
17800         --gnulib-snapshot-date=DATE
17801               if gnulib is in the bootstrap tool list,
17802               then report this as the snapshot date.
17803               If not specified, use the current date/time.
17804               If you specify a date here, be sure it's UTC.
17805
17806 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17807
17808         * tests/test-argp-2.sh: Fix test to match actual output.
17809         (func_compare): Fix sed script to be portable.
17810
17811 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
17812
17813         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
17814         workaround for this case.  It is not autoconfigured now; offhand
17815         it's hard to see how to autoconfigure it.
17816
17817 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
17818
17819         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
17820         a directory that is about to be chowned.  Such a directory's
17821         initial file permissions should permit the owner only and this
17822         should not be changed until after the chown, since the group and
17823         other bits would be incorrect if they granted permission before
17824         the chown.
17825
17826         Fix porting problem for iswctype reported by Georg Schwarz in:
17827         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
17828         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
17829         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
17830         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
17831         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
17832
17833 2006-12-03  Jim Meyering  <jim@meyering.net>
17834
17835         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
17836         p->fts_statp may not yet be defined.
17837         (fts_read): Instead, set it in the caller, once p->fts_statp is
17838         sure to be defined, and corresponds to a top-level directory.
17839         This bug made du -x fail.  Here's the coreutils test case:
17840         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
17841         Reported by Mike Frysinger.
17842
17843 2006-12-01  Jim Meyering  <jim@meyering.net>
17844
17845         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
17846         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
17847         Reported by Simon Josefsson.
17848
17849 2006-11-30  Jim Meyering  <jim@meyering.net>
17850
17851         * m4/warning.m4: Use the all-permissive copyright notice
17852         recommended by RMS (rather than LGPL).
17853         * m4/vararrays.m4: Likewise.
17854         * m4/flexmember.m4: Likewise.
17855
17856 2006-11-29  Bruno Haible  <bruno@clisp.org>
17857
17858         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
17859         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
17860         using +=.
17861         Reported by Simon Josefsson <simon@josefsson.org>.
17862
17863 2006-11-28  James Youngman <jay@gnu.org>
17864
17865         * README: Advise users that they might find the bug-gnulib@gnu.org
17866         and autotools-announce@gnu.org mailing lists useful.
17867
17868 2006-11-28  Bruno Haible  <bruno@clisp.org>
17869
17870         * m4/ptrdiff_max.m4: Remove file.
17871
17872 2006-11-21  Bruno Haible  <bruno@clisp.org>
17873
17874         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
17875         _AC_COMPUTE_INT.
17876         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
17877         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
17878         _AC_COMPUTE_INT.
17879         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
17880         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
17881         _AC_COMPUTE_INT.
17882         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
17883
17884 2006-11-28  Jim Meyering  <jim@meyering.net>
17885
17886         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
17887         warning from "gcc -Wshadow" about shadowing the builtin.
17888
17889 2006-11-27  Bruno Haible  <bruno@clisp.org>
17890
17891         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
17892         _AC_COMPUTE_INT.
17893         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
17894
17895 2006-11-27  Bruno Haible  <bruno@clisp.org>
17896             Paul Eggert  <eggert@cs.ucla.edu>
17897
17898         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
17899
17900 2006-11-26  Bruno Haible  <bruno@clisp.org>
17901
17902         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
17903         noinst_LTLIBRARIES.
17904
17905 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
17906             Bruno Haible  <bruno@clisp.org>
17907
17908         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
17909         if compiling with "gcc -ansi".
17910
17911 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
17912
17913         Fix some incompatibilities with gcc -ansi -pedantic.
17914         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
17915         if compiling pedantically with GCC, unless it's C99 or later.
17916         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
17917         it mishandles gcc -ansi -pedantic as well.
17918         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
17919         if gcc -pedantic.
17920         * lib/regexec.c (check_node_accept_bytes): Don't use auto
17921         initializers for struct if -pedantic, unless it's C99 or later.
17922
17923 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
17924
17925         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
17926         Don't close an fd more than once. Identical atimes indicate
17927         success, not failure.
17928
17929 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
17930
17931         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
17932
17933 2006-11-23  Jim Meyering  <jim@meyering.net>
17934
17935         * build-aux/announce-gen: New file.  From coreutils.
17936
17937 2006-11-22  Jim Meyering  <jim@meyering.net>
17938
17939         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
17940         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
17941         (fts_read): Use a temporary to narrow the overused st_size member
17942         before using it in a switch statement.  Reported by Matthew Woehlke.
17943
17944         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
17945         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
17946
17947 2006-11-20  Bruno Haible  <bruno@clisp.org>
17948
17949         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
17950         changequote instead of pairs of brackets.
17951         Reported by Andreas Schwab <schwab@suse.de>.
17952
17953 2006-11-21  Jim Meyering  <jim@meyering.net>
17954
17955         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
17956         so as to remain compatible with older compilers.
17957         Patch from Michael Deutschmann.
17958
17959 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
17960
17961         * MODULES.html.sh (File system functions): Add openat.
17962
17963         * lib/openat.h (rpl_fstatat): New macro, if
17964         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
17965         (fstatat): Define to rpl_fstatat under the same conditions,
17966         unless COMPILING_FSTATAT.
17967         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
17968         seems to have the bug.
17969         * lib/fstatat.c: New file.
17970         * modules/openat (Files): Add it.
17971
17972 2006-11-20  Bruno Haible  <bruno@clisp.org>
17973
17974         * Makefile: New file.
17975
17976 2006-11-20  Jim Meyering  <jim@meyering.net>
17977
17978         The beginnings of syntax-related checks for gnulib.
17979         * lib/Makefile: New file.
17980         * lib/t-idcache: New script.  Ensure that the two halves of
17981         idcache.c stay in sync.
17982
17983         * lib/idcache.c: Adjust comments in user- and group- portions to
17984         be more accurate, and to be consistent with one another.
17985
17986 2006-11-20  Jim Meyering  <jim@meyering.net>
17987
17988         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
17989         continue using the flexible array member (thus, this module performs
17990         half as many malloc calls), with the addition that...
17991         (getgroup, getuser): Consistently record a non-match via an empty
17992         "name" string, and map an empty string match to a NULL return value.
17993         * modules/idcache (Depends-on): Re-add flexmember.
17994
17995         * lib/idcache.c (getuser): Remove all uses of the register keyword.
17996         (getuidbyname, getgroup, getgidbyname): Likewise.
17997
17998         Use cleaner syntax: NULL rather than 0.
17999         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
18000
18001 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
18002
18003         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
18004         It mishandled the case where the group was missing.
18005         Problem reported by Greg Schafer.
18006         * modules/idcache: Likewise.
18007
18008 2006-11-18  Jim Meyering  <jim@meyering.net>
18009
18010         * check-module (%exempt_header): Add exception for some
18011         conditionally-included headers.
18012
18013         * modules/i-ring (Depends-on): Add verify.
18014         (License): Change to LGPL.
18015
18016 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
18017
18018         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
18019         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
18020         and inttostr.h.  Use snprintf rather than uinttostr, so that
18021         LGPLed code doesn't depend on GPLed.
18022
18023 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
18024
18025         * modules/inline (License): Change from GPL to LGPL.
18026
18027 2006-11-17  Jim Meyering  <jim@meyering.net>
18028
18029         * modules/d-type (License): Switch to LGPL.
18030
18031 2006-11-15  Bruno Haible  <bruno@clisp.org>
18032
18033         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
18034
18035 2006-11-15  Eric Blake  <ebb9@byu.net>
18036
18037         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
18038         the module dependency.
18039
18040 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
18041             Bruno Haible  <bruno@clisp.org>
18042
18043         * gnulib-tool (func_create_testdir): Add license consistency check.
18044
18045 2006-11-15  Eric Blake  <ebb9@byu.net>
18046
18047         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
18048         random "(cached)" in configure output.
18049
18050 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18051
18052         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
18053         test for conforming inttypes.h is both announced and cached.
18054
18055         * MODULES.html.sh (seen_modules, seen_files): New variables.
18056         (func_module): Rewrite to use a few less gnulib-tool and sed
18057         invocations.  Avoid a couple of quadratic algorithms for ...
18058         (missed_modules, missed_files): ... these, with ...
18059         (func_append, func_tmpdir): ... these new functions, from
18060         gnulib-tool.  Analogously, install traps for cleanup.
18061
18062         * tests/test-gc.c (main): Remove unused variables.
18063         * tests/test-read-file.c: Include stdlib.h, for 'free'.
18064
18065 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
18066
18067         * modules/inttostr (License): Change to LGPL.
18068
18069 2006-11-14  Eric Blake  <ebb9@byu.net>
18070
18071         * modules/tempname (License): Change to LGPL.
18072
18073 2006-11-14  Eric Blake  <ebb9@byu.net>
18074
18075         * doc/functions.texi (Function Portability): *printf functions on
18076         Cygwin now understand all POSIX size specifiers.
18077
18078 2006-11-14  Bruno Haible  <bruno@clisp.org>
18079
18080         * modules/c-ctype (License): Change to LGPL.
18081
18082 2006-11-12  Bruno Haible  <bruno@clisp.org>
18083
18084         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
18085         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
18086         for GNOME libraries, for which the include files are installed in
18087         subdirectories of $prefix/include.
18088
18089 2006-11-12  Bruno Haible  <bruno@clisp.org>
18090
18091         * m4/lib-link.m4: Require at least autoconf-2.54.
18092         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
18093         name to underscores for the --with option.
18094
18095 2006-11-13  Bruno Haible  <bruno@clisp.org>
18096
18097         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
18098         the tests directory.
18099         Reported by Ralf Wildenhues.
18100
18101 2006-11-13  Bruno Haible  <bruno@clisp.org>
18102
18103         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
18104         (func_emit_initmacro_end): Undo the override here.
18105         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
18106         Works around the famous automake error in coreutils.
18107
18108 2006-11-13  Eric Blake  <ebb9@byu.net>
18109
18110         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
18111         element, not its node.
18112
18113 2006-11-12  Bruno Haible  <bruno@clisp.org>
18114
18115         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
18116         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
18117
18118 2006-11-12  Bruno Haible  <bruno@clisp.org>
18119
18120         * gnulib-tool: New option --local-symlink.
18121         (func_usage): Document it.
18122         (lsymbolic): New variable.
18123         (func_import, func_create_testdir): If --symlink was not specified,
18124         test whether --local-symlink was specified and the file comes from
18125         the local_gnulib_dir.
18126
18127 2006-11-12  Bruno Haible  <bruno@clisp.org>
18128
18129         * gnulib-tool (func_ln): New function.
18130         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
18131
18132 2006-11-12  Bruno Haible  <bruno@clisp.org>
18133
18134         Finish support for source files in subdirectories.
18135         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
18136         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
18137         AUTOMAKE_OPTIONS.
18138         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
18139
18140 2006-11-12  Bruno Haible  <bruno@clisp.org>
18141
18142         * gnulib-tool (func_get_automake_snippet): Synthesize also an
18143         EXTRA_lib_SOURCES augmentation.
18144         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
18145
18146 2006-11-12  Jim Meyering  <jim@meyering.net>
18147
18148         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
18149         file descriptors.  This also averts a failure on systems with
18150         native openat support when a traversed directory lacks "x" access.
18151         * lib/fts_.h: Include "i-ring.h"
18152         (struct FTS) [fts_fd_ring]: New member.
18153         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
18154         (FCHDIR): Add parentheses.
18155         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
18156         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
18157         When descending, rather than simply closing the previous
18158         fts_cwd_fd value, push that file descriptor onto the ring.
18159         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
18160         (fts_open): Initialize the new fd_ring member.
18161         (fts_close): Clear the ring.
18162         (fts_safe_changedir): When possible, use our new fd_ring to skip
18163         the diropen and fstat and dev/ino comparison that would normally
18164         accompany a virtual `chdir ("..")'.
18165
18166         * modules/fts (Depends-on): Add i-ring.
18167         * modules/i-ring: New module.
18168         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
18169         * m4/i-ring.m4: New file.
18170
18171 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18172
18173         * gnulib-tool (func_create_testdir): Fix replacement of
18174         `build-aux' in configure.ac.  Run autotools in gltests
18175         subdirectory.
18176         (func_create_testdir, func_create_megatestdir, test): There is
18177         no need for '--force' in most autotool invocations in a new
18178         tree.  Actually fail the whole test if any of the tools, or the
18179         configure or make stages fail.
18180
18181         Sync from Automake.
18182         * build-aux/gnupload: Revert last change.  Add pointer to upload
18183         instructions of the GNU Maintenance Instructions.
18184         Suggestion by Karl Berry.
18185
18186 2006-11-10  Jim Meyering  <jim@meyering.net>
18187
18188         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
18189
18190 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
18191
18192         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
18193         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
18194         (bind_textdomain_codeset) [! ENABLE_NLS]:
18195         Evaluate all the arguments.  That way, callers get compatible behavior
18196         if the arguments have side effects.  Also, it avoids some GCC
18197         diagnostics in some cases; Joel E. Denny reported problems when Bison
18198         was configured with --enable-gcc-warnigs.
18199
18200 2006-11-10  Jim Meyering  <jim@meyering.net>
18201
18202         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
18203         relevant options in CFLAGS (like -O, -fno-inline) are taken into
18204         account.
18205
18206 2006-11-10  Jim Meyering  <jim@meyering.net>
18207
18208         * modules/inline: New file/module.
18209         * modules/xalloc (Files): Remove m4/inline.m4.
18210         (Depends-on): Add inline, instead.
18211         * modules/oset: Likewise.
18212         * modules/list: Likewise.
18213
18214 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
18215
18216         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
18217         Problem reported by Matthew Woehlke.
18218
18219 2006-11-09  Bruno Haible  <bruno@clisp.org>
18220
18221         * lib/tempname.c (gen_tempname): Remove variant that invokes
18222         __gen_tempname.
18223         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
18224         __gen_tempname.
18225
18226 2006-11-08  Bruno Haible  <bruno@clisp.org>
18227
18228         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
18229         to 'yes' instead of 'cross-compiling'.
18230
18231 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
18232
18233         * lib/quotearg.h (quotearg_free): New decl.
18234         * lib/quotearg.c (quotearg_free): New function.
18235         (slot0, nslots, slotvec0, slotvec):
18236         Now file-scope so that quotearg_free can get at them.
18237
18238 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18239
18240         Sync from Automake.
18241         * build-aux/gnupload: Add missing 'gnu' to example URL.
18242         Report by Karl Berry.
18243
18244 2006-11-08  Bruno Haible  <bruno@clisp.org>
18245
18246         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
18247         Suggested by Paul Eggert.
18248
18249 2006-11-08  Jim Meyering  <jim@meyering.net>
18250
18251         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
18252         It's already included if !_LIBC.
18253         (fts_safe_changedir): Add a comment.
18254
18255 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
18256
18257         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
18258         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
18259         Matthew Woehlke.
18260
18261         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
18262         definitions up, to avoid colliding with change below.
18263         (static_inline) [HAVE_INLINE]: New macro.
18264         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
18265         Provide extern decls when !HAVE_INLINE.  Do not define unless
18266         static_inline is defined, either by us or by xmalloc.c.  Use
18267         static_inline rather than static inline.
18268         (XCALLOC): Optimize sizeof(T) = 1 case.
18269         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
18270
18271 2006-11-07  Bruno Haible  <bruno@clisp.org>
18272
18273         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
18274         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
18275         AC_C_INLINE.
18276         * modules/xalloc (Files): Add m4/inline.m4.
18277
18278 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18279
18280         * README: Fix typo.
18281         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
18282         (Miscellanous Notes): ...from this.
18283
18284 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
18285
18286         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
18287         Mention that offsetof should be used instead of sizeof.
18288         From Bruno Haible.
18289
18290 2006-11-07  Bruno Haible  <bruno@clisp.org>
18291
18292         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
18293
18294 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
18295
18296         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
18297         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
18298         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
18299         (gl_tree_add_before, gl_tree_add_after):
18300         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
18301         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
18302         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
18303         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
18304         (gl_linked_add_after, gl_linked_add_at): Likewise.
18305         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
18306         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
18307         (gl_tree_add_before, gl_tree_add_after): Likewise.
18308         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
18309         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
18310         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
18311
18312 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18313
18314         * lib/gl_oset.h: Use C comment style, not C++ comment style.
18315
18316 2006-11-06  Bruno Haible  <bruno@clisp.org>
18317
18318         * m4/inline.m4: New file.
18319         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
18320         * modules/list (Files): Add m4/inline.m4.
18321         * modules/oset (Files): Likewise.
18322
18323 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
18324
18325         * lib/idcache.c: Include <stddef.h>, for offsetof.
18326         (struct userid.name): Change from char * to a flexible array member.
18327         All uses changed.
18328         * modules/idcache (Depends-on): Add flexmember.
18329
18330         * MODULES.html.sh (Core language properties): New module flexmember.
18331         * modules/flexmember, m4/flexmember.m4: New files.
18332
18333         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
18334         inline functions that are identical with the old xnmalloc_inline,
18335         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
18336         that we can avoid some unnecessary integer multiplications and
18337         divisions in the common case where the element size is known at
18338         compile time.
18339         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
18340         needed.
18341         (xnboundedmalloc): Remove.
18342         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
18343         arguments, for consistency with rest of this header.
18344         (xcharalloc): Rewrite using XNMALLOC.
18345         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
18346         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
18347         versions have been moved to lib/xalloc.h and renamed to be the
18348         non-*_inline versions.
18349         (xmalloc, xrealloc): Implement without reference to the xnmalloc
18350         and xnrealloc functions, since those functions are now inline and
18351         now call us.
18352         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
18353         renaming described above.
18354         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
18355         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
18356         captures the dependency in AC_C_INLINE.
18357
18358         New module canonicalize-lgpl, proposed by Charles Wilson in
18359         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
18360         with a few small changes afterwards.
18361         * MODULES.html.sh (File system functions): New module
18362         canonicalize-lgpl.
18363         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
18364         and canonicalize_file_name.
18365         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
18366         * modules/canonicalize-lgpl: New files.
18367
18368 2006-11-05  Bruno Haible  <bruno@clisp.org>
18369
18370         * gnulib-tool (func_import, func_create_testdir): Create directories
18371         also for files in subdirectories of lib/.
18372
18373 2006-11-05  Bruno Haible  <bruno@clisp.org>
18374
18375         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
18376         ANSI C compliant.
18377
18378 2006-11-03  Bruno Haible  <bruno@clisp.org>
18379
18380         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
18381         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
18382         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
18383         (xnboundedmalloc): New inline function.
18384         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
18385         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
18386         xmalloc.
18387         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
18388         xmalloc.
18389         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
18390         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
18391         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
18392         xmalloc.
18393         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
18394         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
18395         xmalloc.
18396         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
18397         gl_tree_add_after): Use XMALLOC instead of xmalloc.
18398         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
18399         xmalloc.
18400         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
18401         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
18402         gl_tree_add_after): Use XMALLOC instead of xmalloc.
18403         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
18404         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
18405         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
18406         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
18407
18408 2006-11-03  Bruno Haible  <bruno@clisp.org>
18409
18410         * lib/c-ctype.h [C++]: Define functions without name mangling.
18411         * lib/fwriteerror.h [C++]: Likewise.
18412         * lib/gcd.h [C++]: Likewise.
18413         * lib/linebreak.h [C++]: Likewise.
18414
18415 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
18416
18417         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
18418         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
18419         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
18420         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
18421         Check for functions and headers just once.
18422         Check for declaration of canonicalize_file_name.
18423         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
18424
18425 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
18426
18427         * gnulib-tool (func_import): Fix typo in actioncmd.
18428
18429 2006-11-02  Bruno Haible  <bruno@clisp.org>
18430
18431         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
18432         newline sequence in the Makefile.am snippet as a space, like "make"
18433         does.
18434         Reported by Roger Persson <perrog@gmail.com>.
18435
18436 2006-11-01  Bruno Haible  <bruno@clisp.org>
18437
18438         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
18439         already declared in <string.h>.
18440         * lib/strcase.h (strncasecmp): Don't declare it if yes.
18441
18442 2006-11-01  Bruno Haible  <bruno@clisp.org>
18443
18444         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
18445         * lib/strcase.h: Include <string.h>.
18446         (strcasecmp): Define to rpl_strcasecmp here.
18447
18448 2006-11-01  Bruno Haible  <bruno@clisp.org>
18449
18450         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
18451
18452 2006-11-01  Eric Blake  <ebb9@byu.net>
18453
18454         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
18455
18456         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
18457
18458 2006-10-29  Bruno Haible  <bruno@clisp.org>
18459
18460         Make it compile in C++ mode.
18461         * lib/full-write.c (full_rw): Add a cast.
18462
18463 2006-11-01  Bruno Haible  <bruno@clisp.org>
18464
18465         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
18466         be POSIX compliant.
18467         Reported by Roger Persson <perrog@gmail.com>.
18468
18469 2006-11-01  Eric Blake  <ebb9@byu.net>
18470
18471         * lib/getopt_.h: Fix comments.
18472
18473 2006-10-31  Eric Blake  <ebb9@byu.net>
18474
18475         * modules/tmpdir (Depends-on): Add sys_stat.
18476         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
18477         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
18478         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
18479         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
18480         tempname.
18481
18482 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
18483
18484         Avoid some C++ diagnostics reported by Bruno Haible.
18485         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
18486         xmalloc.
18487         (quotearg_alloc): Use xcharalloc rather than xmalloc.
18488         (struct slotvec): Move to top level.
18489         (quotearg_n_options): Rewrite to avoid xmalloc.
18490         * lib/xalloc.h (xcharalloc): New function.
18491         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
18492         [defined __cplusplus]: Add function template that provides result
18493         type propagation.  This part of the change is from Bruno Haible.
18494
18495 2006-10-29  Bruno Haible  <bruno@clisp.org>
18496
18497         Make it compile in C++ mode.
18498         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
18499         * lib/strnlen1.c (strnlen1): Cast memchr result.
18500         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
18501         * lib/clean-temp.c (string_equals, string_hash): Add casts.
18502         (create_temp_dir): Rename local variable 'template'.
18503         (compile_csharp_using_sscli): Add cast.
18504         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
18505         * lib/findprog.c (find_in_path): Likewise.
18506         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
18507         * lib/wait-process.c (register_slave_subprocess): Likewise.
18508
18509 2006-10-22  Bruno Haible  <bruno@clisp.org>
18510
18511         * modules/tsearch: New file.
18512         * lib/tsearch.h: New file.
18513         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
18514         * m4/tsearch.m4: New file.
18515         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
18516
18517 2006-10-29  Eric Blake  <ebb9@byu.net>
18518
18519         * lib/arcfour.c: Assume config.h.
18520         * lib/arctwo.c: Likewise.
18521         * lib/base64.c: Likewise.
18522         * lib/check-version.c: Likewise.
18523         * lib/crc.c: Likewise.
18524         * lib/des.c: Likewise.
18525         * lib/gc-gnulib.c: Likewise.
18526         * lib/gc-libgcrypt.c: Likewise.
18527         * lib/gc-pbkdf2-sha1.c: Likewise.
18528         * lib/getaddrinfo.c: Likewise.
18529         * lib/getdelim.c: Likewise.
18530         * lib/getline.c: Likewise.
18531         * lib/hmac-md5.c: Likewise.
18532         * lib/hmac-sha1.c: Likewise.
18533         * lib/iconvme.c: Likewise.
18534         * lib/md2.c: Likewise.
18535         * lib/md4.c: Likewise.
18536         * lib/memxor.c: Likewise.
18537         * lib/read-file.c: Likewise.
18538         * lib/readline.c: Likewise.
18539         * lib/rijndael-alg-fst.c: Likewise.
18540         * lib/rijndael-api-fst.c: Likewise.
18541         * lib/xgetdomainname.c: Likewise.
18542
18543 2006-10-28  Eric Blake  <ebb9@byu.net>
18544
18545         * lib/xstrndup.c: Assume config.h.
18546
18547 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
18548
18549         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
18550         stat-macros.h is now for our own macros, whereas stat_h is for
18551         macros in the <sys/stat.h> name space.
18552         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
18553         (STAT_MACROS_H): Remove.
18554         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
18555         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
18556         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
18557         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
18558         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
18559         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
18560         Move these macros to ...
18561         * lib/stat_.h: here.  Don't include stat-macros.h.
18562         * lib/canonicalize.c: Don't include stat-macros.h.
18563         * lib/chown.c: Likewise.
18564         * lib/euidaccess.c: Likewise.
18565         * lib/file-type.c: Likewise.
18566         * lib/filemode.c: Likewise.
18567         * lib/glob.c: Likewise.
18568         * lib/isapipe.c: Likewise.
18569         * lib/lchown.c: Likewise.
18570         * lib/lstat.c: Likewise.
18571         * lib/mkdir-p.c: Likewise.
18572         * lib/rmdir.c: Likewise.
18573         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
18574         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
18575         unless mkdir isn't declared, to speed up 'configure'.
18576         Always create sys/stat.h, since it's unlikely any real sys/stat.h
18577         would define all the S_* symbols.
18578         * modules/canonicalize (Depends-on):
18579         Depend on sys_stat, not stat-macros.
18580         * modules/chown: Likewise.
18581         * modules/euidaccess: Likewise.
18582         * modules/filemode: Likewise.
18583         * modules/file-type: Likewise.
18584         * modules/glob: Likewise.
18585         * modules/isapipe: Likewise.
18586         * modules/lchown: Likewise.
18587         * modules/lstat: Likewise.
18588         * modules/mkancesdirs: Likewise.
18589         * modules/rmdir: Likewise.
18590         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
18591         * modules/modechange: Likewise.
18592         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
18593         (configure.ac): Remove gl_STAT_MACROS.
18594         * modules/sys_stat (Depends-on): Remove stat-macros.
18595
18596 2006-10-27  Bruno Haible  <bruno@clisp.org>
18597
18598         * m4/signed.m4: Remove file.
18599         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
18600         invocation.
18601         * modules/vasnprintf (Files): Remove m4/signed.m4.
18602
18603 2006-10-27  Bruno Haible  <bruno@clisp.org>
18604
18605         Update to GNU gettext 0.16.
18606         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
18607         m4/inttypes-h.m4, m4/signed.m4.
18608         * m4/gettext.m4: Update to GNU gettext 0.16.
18609         * m4/intl.m4: New file, from GNU gettext.
18610         * m4/intldir.m4: New file, from GNU gettext.
18611         * config/srclist.txt: Update
18612
18613 2006-10-27  Eric Blake  <ebb9@byu.net>
18614
18615         * MODULES.html.sh: Document tempname.
18616         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
18617         dependencies.
18618         (Files): Move lib/tempname.c...
18619         * modules/tempname: ...to this new module.
18620         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
18621         (gl_PREREQ_TEMPNAME): Move...
18622         * m4/tempname.m4: ...to this new file.
18623         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
18624         * modules/sys_stat (Depends-on): Add stat-macros.
18625         * lib/stat_.h (includes): Pick up stat macros.
18626         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
18627         if stat macros are broken.
18628         * lib/tempname.c (includes): No need to include "stat-macros.h".
18629         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
18630         (direxists, __path_search) [!_LIBC]: Don't compile these in
18631         gnulib; the tmpdir module covers that.
18632         * lib/tempname.h: New file.
18633
18634 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
18635
18636         * COPYING: Explain how gnulib-tool converts licence headers.
18637         Almost all wording by Eric Blake.
18638
18639 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
18640
18641         * lib/mbchar.h (is_basic_table): Make read-only.
18642         * lib/mbchar.c (is_basic_table): Likewise.
18643         Reported by John Darrington.
18644
18645 2006-10-25  Bruno Haible  <bruno@clisp.org>
18646
18647         * lib/progname.h (set_program_name): Undefine before defining.
18648
18649 2006-10-25  Bruno Haible  <bruno@clisp.org>
18650
18651         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
18652         false for non-gcc C++ compilers.
18653         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
18654
18655 2006-10-24  Bruno Haible  <bruno@clisp.org>
18656
18657         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
18658         iconv implementations like Irix iconv.
18659
18660 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
18661
18662         * modules/vararrays: New file.
18663         * m4/vararrays.m4: New file, taken from diffutils.
18664         * MODULES.html.sh: New module vararrays.
18665
18666 2006-10-24  Karl Berry  <karl@gnu.org>
18667
18668         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
18669         Don't call GNU Unix.
18670
18671 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18672
18673         * users.txt: Add Libtool.
18674
18675         Sync from Libtool:
18676
18677         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
18678
18679         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
18680         to gnulib's policy of including config.h unconditionally.
18681
18682 2006-10-24  Bruno Haible  <bruno@clisp.org>
18683
18684         * modules/wcwidth (Files): Add m4/wint_t.m4.
18685         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
18686         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
18687
18688 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
18689
18690         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
18691         to pacify GCC with some -W flags enabled.  Problem reported by
18692         Bruno Haible.
18693
18694 2006-10-24  Jim Meyering  <jim@meyering.net>
18695
18696         * MODULES.html.sh: Remove uinttostr.  It's not a module.
18697         Reported by Karl Berry.
18698
18699 2006-10-23  Bruno Haible  <bruno@clisp.org>
18700
18701         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
18702
18703 2006-10-24  Bruno Haible  <bruno@clisp.org>
18704
18705         * lib/gl_list.h: Use C comment style, not C++ comment style.
18706
18707 2006-10-23  Eric Blake  <ebb9@byu.net>
18708
18709         * lib/getaddrinfo.c (includes): Add missing include.
18710
18711 2006-10-23  Bruno Haible  <bruno@clisp.org>
18712             Paul Eggert  <eggert@cs.ucla.edu>
18713
18714         Ability to rename obstack_free.
18715         * lib/obstack.h (__obstack_free): New macro. Declare instead of
18716         obstack_free.
18717         (obstack_free): Invoke the __obstack_free macro.
18718         * lib/obstack.c (obstack_free): Use __obstack_free macro.
18719
18720 2006-10-23  Bruno Haible  <bruno@clisp.org>
18721             Paul Eggert  <eggert@cs.ucla.edu>
18722
18723         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
18724         __argc, __argv from the declaration. (They are defined as macros on
18725         mingw.)
18726
18727 2006-10-22  Bruno Haible  <bruno@clisp.org>
18728
18729         * doc/gnulib-intro.texi: New file.
18730         * doc/gnulib.texi: Include it.
18731
18732 2006-10-21  Bruno Haible  <bruno@clisp.org>
18733
18734         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
18735         "Introduction", "Miscellanous Notes", "Particular Modules".
18736
18737 2006-10-21  Bruno Haible  <bruno@clisp.org>
18738
18739         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
18740         Change mostlyclean-local rule to avoid sh syntax error from bash
18741         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
18742
18743 2006-10-23  Jim Meyering  <jim@meyering.net>
18744
18745         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
18746         in place of snprintf.
18747
18748         * modules/inttostr (Files): Add lib/uinttostr.c.
18749         * lib/uinttostr.c (inttostr): New file/function.
18750         * lib/inttostr.h (uinttostr): Declare.
18751         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
18752         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
18753         Add uinttostr.
18754         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
18755
18756 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
18757
18758         * lib/canonicalize.c (ELOOP): Define if not already defined.
18759         Problem reported by Bruno Haible in
18760         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
18761
18762 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
18763
18764         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
18765         Problem reported by Perry Smith and Ville Laurikari.
18766
18767         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
18768         uses.
18769
18770 2006-10-19  Bruno Haible  <bruno@clisp.org>
18771
18772         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
18773         for mingw.
18774
18775 2006-10-19  Bruno Haible  <bruno@clisp.org>
18776
18777         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
18778         Needed for mingw.
18779
18780 2006-10-19  Bruno Haible  <bruno@clisp.org>
18781
18782         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
18783
18784 2006-10-19  Bruno Haible  <bruno@clisp.org>
18785
18786         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
18787         it.
18788
18789 2006-10-19  Bruno Haible  <bruno@clisp.org>
18790
18791         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
18792         invocation.
18793
18794 2006-10-19  Bruno Haible  <bruno@clisp.org>
18795
18796         * gnulib-tool (func_create_testdir): Don't include ftruncate and
18797         mountlist by default.
18798
18799 2006-10-16  Bruno Haible  <bruno@clisp.org>
18800
18801         * lib/c-strstr.c: Include c-strstr.h.
18802
18803 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
18804
18805         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
18806         in a slash.
18807
18808 2006-10-18  Bruno Haible  <bruno@clisp.org>
18809
18810         * lib/lock.h [C++]: Wrap definitions in extern "C".
18811
18812 2006-10-18  Bruno Haible  <bruno@clisp.org>
18813
18814         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
18815         gl_LIBOBJS list.
18816
18817 2006-10-18  Bruno Haible  <bruno@clisp.org>
18818
18819         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
18820
18821 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
18822
18823         * lib/xstrtol.h: Include gettext.h.
18824         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
18825         Problem reported by Eric Blake.
18826         * modules/xstrtol (Depends-on): Add gettext-h.
18827
18828 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
18829
18830         * lib/strftime.c (advance): New macro.
18831         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
18832         incomplete type, so you can't add 0 to it.  Problem and patch
18833         reported by Eelco Dolstra for dietlibc.
18834
18835 2006-10-18  Jim Meyering  <jim@meyering.net>
18836
18837         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
18838         type for a local, and rename it: s/up/user_proc/.
18839
18840 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
18841
18842         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
18843         READ_UTMP_USER_PROCESS.
18844         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
18845
18846 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
18847
18848         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
18849         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
18850
18851 2006-10-17  Eric Blake  <ebb9@byu.net>
18852
18853         * lib/sigprocmask.c (sigprocmask): Fix typo.
18854
18855         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
18856
18857         * modules/clean-temp (Makefile.am): Don't add to make output...
18858         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
18859         config.h.
18860
18861 2006-10-17  Bruno Haible  <bruno@clisp.org>
18862
18863         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
18864         differently if DEFAULT_TEXT_DOMAIN is set.
18865
18866 2006-10-16  Bruno Haible  <bruno@clisp.org>
18867
18868         * lib/clean-temp.c: Include fwriteerror.h.
18869
18870 2006-10-16  Bruno Haible  <bruno@clisp.org>
18871
18872         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
18873
18874 2006-10-16  Bruno Haible  <bruno@clisp.org>
18875
18876         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
18877         * lib/sigprocmask.h: Include <sys/types.h>.
18878         (sigset_t): Use the system's definition if present.
18879
18880 2006-10-17  Eric Blake  <ebb9@byu.net>
18881
18882         * lib/xvasprintf.c (includes): Assume config.h.
18883         * lib/xasprintf.c (includes): Likewise.
18884
18885 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
18886
18887         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
18888         at least as wide as intmax_t.
18889
18890 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
18891
18892         (Imported from Automake.)
18893         * build-aux/gnupload: Update to version 1.1 of directive file.
18894
18895 2006-10-16  Eric Blake  <ebb9@byu.net>
18896
18897         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
18898         match Automake 1.10a.
18899
18900 2006-10-14  Bruno Haible  <bruno@clisp.org>
18901
18902         * modules/sigprocmask: New file.
18903         * lib/sigprocmask.h: New file.
18904         * lib/sigprocmask.c: New file.
18905         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
18906         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
18907         request sigprocmask.o.
18908         (gl_PREREQ_SIGPROCMASK): New macro.
18909         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
18910         (Depends-on): Add sigprocmask.
18911         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
18912         gt_SIGNALBLOCKING. Test for 'raise' only once.
18913         * lib/fatal-signal.c: Include sigprocmask.h.
18914         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
18915         unblock_fatal_signals): Define always.
18916         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
18917         sigprocmask.
18918
18919 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
18920
18921         Sync from Automake.
18922         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
18923         which incorrectly sets the mode of an existing destination
18924         directory.  In some cases the unpatched install-sh could do the
18925         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
18926         system.  We hope this is rare in practice, but it's clearly worth
18927         fixing.  Problem reported by Alex Unleashed in
18928         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
18929         Also, don't bother to check for -m bugs unless we're using -m;
18930         suggested by Stepan Kasal.
18931
18932 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18933
18934         Sync from Automake.
18935         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
18936         `-c' flag, so they appear at the same position as in %FASTDEP%
18937         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
18938         which ignores unknown options only after the first non-option.
18939         Bug report against M4 by Nelson H. F. Beebe.
18940
18941 2006-10-13  Jim Meyering  <jim@meyering.net>
18942
18943         Fix a bug in yesterday's change.
18944         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
18945         p->fts_statp->st_dev would be used uninitialized.
18946         Ensures that we always call fts_stat on the very first entry.
18947         Miklos Szeredi reported that find -xdev stopped working.
18948
18949 2006-10-12  Bruno Haible  <bruno@clisp.org>
18950
18951         * gnulib-tool (func_get_automake_snippet): Append an automatically
18952         computed EXTRA_DIST augmentation.
18953         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
18954         * modules/alloca-opt (Makefile.am): Likewise.
18955         * modules/allocsa (Makefile.am): Likewise.
18956         * modules/arcfour (Makefile.am): Likewise.
18957         * modules/arctwo (Makefile.am): Likewise.
18958         * modules/argmatch (Makefile.am): Likewise.
18959         * modules/argz (Makefile.am): Likewise.
18960         * modules/atexit (Makefile.am): Likewise.
18961         * modules/backupfile (Makefile.am): Likewise.
18962         * modules/byteswap (Makefile.am): Likewise.
18963         * modules/c-strtod (Makefile.am): Likewise.
18964         * modules/c-strtold (Makefile.am): Likewise.
18965         * modules/calloc (Makefile.am): Likewise.
18966         * modules/canon-host (Makefile.am): Likewise.
18967         * modules/canonicalize (Makefile.am): Likewise.
18968         * modules/chdir-long (Makefile.am): Likewise.
18969         * modules/chdir-safer (Makefile.am): Likewise.
18970         * modules/check-version (Makefile.am): Likewise.
18971         * modules/chown (Makefile.am): Likewise.
18972         * modules/cloexec (Makefile.am): Likewise.
18973         * modules/close-stream (Makefile.am): Likewise.
18974         * modules/closeout (Makefile.am): Likewise.
18975         * modules/crc (Makefile.am): Likewise.
18976         * modules/csharpexec (Makefile.am): Likewise.
18977         * modules/cycle-check (Makefile.am): Likewise.
18978         * modules/des (Makefile.am): Likewise.
18979         * modules/dev-ino (Makefile.am): Likewise.
18980         * modules/dirfd (Makefile.am): Likewise.
18981         * modules/dirname (Makefile.am): Likewise.
18982         * modules/dup2 (Makefile.am): Likewise.
18983         * modules/eealloc (Makefile.am): Likewise.
18984         * modules/error (Makefile.am): Likewise.
18985         * modules/euidaccess (Makefile.am): Likewise.
18986         * modules/exclude (Makefile.am): Likewise.
18987         * modules/exitfail (Makefile.am): Likewise.
18988         * modules/fcntl-safer (Makefile.am): Likewise.
18989         * modules/fcntl (Makefile.am): Likewise.
18990         * modules/file-type (Makefile.am): Likewise.
18991         * modules/fileblocks (Makefile.am): Likewise.
18992         * modules/filemode (Makefile.am): Likewise.
18993         * modules/filenamecat (Makefile.am): Likewise.
18994         * modules/fnmatch (Makefile.am): Likewise.
18995         * modules/fopen-safer (Makefile.am): Likewise.
18996         * modules/fpending (Makefile.am): Likewise.
18997         * modules/fprintftime (Makefile.am): Likewise.
18998         * modules/free (Makefile.am): Likewise.
18999         * modules/fsusage (Makefile.am): Likewise.
19000         * modules/ftruncate (Makefile.am): Likewise.
19001         * modules/fts (Makefile.am): Likewise.
19002         * modules/gc-arcfour (Makefile.am): Likewise.
19003         * modules/gc-des (Makefile.am): Likewise.
19004         * modules/gc-hmac-md5 (Makefile.am): Likewise.
19005         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
19006         * modules/gc-md4 (Makefile.am): Likewise.
19007         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
19008         * modules/gc-sha1 (Makefile.am): Likewise.
19009         * modules/gc (Makefile.am): Likewise.
19010         * modules/getaddrinfo (Makefile.am): Likewise.
19011         * modules/getcwd (Makefile.am): Likewise.
19012         * modules/getdelim (Makefile.am): Likewise.
19013         * modules/getdomainname (Makefile.am): Likewise.
19014         * modules/getgroups (Makefile.am): Likewise.
19015         * modules/gethostname (Makefile.am): Likewise.
19016         * modules/gethrxtime (Makefile.am): Likewise.
19017         * modules/getline (Makefile.am): Likewise.
19018         * modules/getloadavg (Makefile.am): Likewise.
19019         * modules/getlogin_r (Makefile.am): Likewise.
19020         * modules/getndelim2 (Makefile.am): Likewise.
19021         * modules/getopt (Makefile.am): Likewise.
19022         * modules/getpagesize (Makefile.am): Likewise.
19023         * modules/getpass-gnu (Makefile.am): Likewise.
19024         * modules/getpass (Makefile.am): Likewise.
19025         * modules/getsubopt (Makefile.am): Likewise.
19026         * modules/gettime (Makefile.am): Likewise.
19027         * modules/gettimeofday (Makefile.am): Likewise.
19028         * modules/getugroups (Makefile.am): Likewise.
19029         * modules/getusershell (Makefile.am): Likewise.
19030         * modules/glob (Makefile.am): Likewise.
19031         * modules/group-member (Makefile.am): Likewise.
19032         * modules/hard-locale (Makefile.am): Likewise.
19033         * modules/hash (Makefile.am): Likewise.
19034         * modules/hmac-md5 (Makefile.am): Likewise.
19035         * modules/hmac-sha1 (Makefile.am): Likewise.
19036         * modules/human (Makefile.am): Likewise.
19037         * modules/idcache (Makefile.am): Likewise.
19038         * modules/imaxabs (Makefile.am): Likewise.
19039         * modules/imaxdiv (Makefile.am): Likewise.
19040         * modules/inet_ntop (Makefile.am): Likewise.
19041         * modules/inet_pton (Makefile.am): Likewise.
19042         * modules/intprops (Makefile.am): Likewise.
19043         * modules/inttostr (Makefile.am): Likewise.
19044         * modules/inttypes (Makefile.am): Likewise.
19045         * modules/isapipe (Makefile.am): Likewise.
19046         * modules/javaversion (Makefile.am): Likewise.
19047         * modules/lchmod (Makefile.am): Likewise.
19048         * modules/lchown (Makefile.am): Likewise.
19049         * modules/localcharset (Makefile.am): Likewise.
19050         * modules/long-options (Makefile.am): Likewise.
19051         * modules/lstat (Makefile.am): Likewise.
19052         * modules/malloc (Makefile.am): Likewise.
19053         * modules/mathl (Makefile.am): Likewise.
19054         * modules/mbchar (Makefile.am): Likewise.
19055         * modules/md2 (Makefile.am): Likewise.
19056         * modules/md4 (Makefile.am): Likewise.
19057         * modules/md5 (Makefile.am): Likewise.
19058         * modules/memcasecmp (Makefile.am): Likewise.
19059         * modules/memchr (Makefile.am): Likewise.
19060         * modules/memcmp (Makefile.am): Likewise.
19061         * modules/memcoll (Makefile.am): Likewise.
19062         * modules/memcpy (Makefile.am): Likewise.
19063         * modules/memmem (Makefile.am): Likewise.
19064         * modules/memmove (Makefile.am): Likewise.
19065         * modules/mempcpy (Makefile.am): Likewise.
19066         * modules/memrchr (Makefile.am): Likewise.
19067         * modules/memset (Makefile.am): Likewise.
19068         * modules/memxor (Makefile.am): Likewise.
19069         * modules/mkancesdirs (Makefile.am): Likewise.
19070         * modules/mkdir-p (Makefile.am): Likewise.
19071         * modules/mkdir (Makefile.am): Likewise.
19072         * modules/mkdtemp (Makefile.am): Likewise.
19073         * modules/mkstemp (Makefile.am): Likewise.
19074         * modules/mktime (Makefile.am): Likewise.
19075         * modules/modechange (Makefile.am): Likewise.
19076         * modules/mountlist (Makefile.am): Likewise.
19077         * modules/nanosleep (Makefile.am): Likewise.
19078         * modules/obstack (Makefile.am): Likewise.
19079         * modules/openat (Makefile.am): Likewise.
19080         * modules/pagealign_alloc (Makefile.am): Likewise.
19081         * modules/pathmax (Makefile.am): Likewise.
19082         * modules/physmem (Makefile.am): Likewise.
19083         * modules/poll (Makefile.am): Likewise.
19084         * modules/posixtm (Makefile.am): Likewise.
19085         * modules/posixver (Makefile.am): Likewise.
19086         * modules/putenv (Makefile.am): Likewise.
19087         * modules/quote (Makefile.am): Likewise.
19088         * modules/quotearg (Makefile.am): Likewise.
19089         * modules/raise (Makefile.am): Likewise.
19090         * modules/read-file (Makefile.am): Likewise.
19091         * modules/readline (Makefile.am): Likewise.
19092         * modules/readlink (Makefile.am): Likewise.
19093         * modules/readtokens (Makefile.am): Likewise.
19094         * modules/readutmp (Makefile.am): Likewise.
19095         * modules/realloc (Makefile.am): Likewise.
19096         * modules/regex (Makefile.am): Likewise.
19097         * modules/rename-dest-slash (Makefile.am): Likewise.
19098         * modules/rename (Makefile.am): Likewise.
19099         * modules/rijndael (Makefile.am): Likewise.
19100         * modules/rmdir (Makefile.am): Likewise.
19101         * modules/rpmatch (Makefile.am): Likewise.
19102         * modules/safe-read (Makefile.am): Likewise.
19103         * modules/safe-write (Makefile.am): Likewise.
19104         * modules/same-inode (Makefile.am): Likewise.
19105         * modules/same (Makefile.am): Likewise.
19106         * modules/save-cwd (Makefile.am): Likewise.
19107         * modules/savedir (Makefile.am): Likewise.
19108         * modules/setenv (Makefile.am): Likewise.
19109         * modules/settime (Makefile.am): Likewise.
19110         * modules/sha1 (Makefile.am): Likewise.
19111         * modules/sig2str (Makefile.am): Likewise.
19112         * modules/snprintf (Makefile.am): Likewise.
19113         * modules/stat-macros (Makefile.am): Likewise.
19114         * modules/stat-time (Makefile.am): Likewise.
19115         * modules/stdbool (Makefile.am): Likewise.
19116         * modules/stdint (Makefile.am): Likewise.
19117         * modules/stdlib-safer (Makefile.am): Likewise.
19118         * modules/stpcpy (Makefile.am): Likewise.
19119         * modules/stpncpy (Makefile.am): Likewise.
19120         * modules/strcase (Makefile.am): Likewise.
19121         * modules/strcasestr (Makefile.am): Likewise.
19122         * modules/strchrnul (Makefile.am): Likewise.
19123         * modules/strcspn (Makefile.am): Likewise.
19124         * modules/strdup (Makefile.am): Likewise.
19125         * modules/strerror (Makefile.am): Likewise.
19126         * modules/strftime (Makefile.am): Likewise.
19127         * modules/strndup (Makefile.am): Likewise.
19128         * modules/strnlen (Makefile.am): Likewise.
19129         * modules/strpbrk (Makefile.am): Likewise.
19130         * modules/strsep (Makefile.am): Likewise.
19131         * modules/strstr (Makefile.am): Likewise.
19132         * modules/strtod (Makefile.am): Likewise.
19133         * modules/strtoimax (Makefile.am): Likewise.
19134         * modules/strtok_r (Makefile.am): Likewise.
19135         * modules/strtol (Makefile.am): Likewise.
19136         * modules/strtoll (Makefile.am): Likewise.
19137         * modules/strtoul (Makefile.am): Likewise.
19138         * modules/strtoull (Makefile.am): Likewise.
19139         * modules/strtoumax (Makefile.am): Likewise.
19140         * modules/strverscmp (Makefile.am): Likewise.
19141         * modules/sys_socket (Makefile.am): Likewise.
19142         * modules/sys_stat (Makefile.am): Likewise.
19143         * modules/sysexits (Makefile.am): Likewise.
19144         * modules/time_r (Makefile.am): Likewise.
19145         * modules/timegm (Makefile.am): Likewise.
19146         * modules/timespec (Makefile.am): Likewise.
19147         * modules/tmpfile-safer (Makefile.am): Likewise.
19148         * modules/trim (Makefile.am): Likewise.
19149         * modules/unistd-safer (Makefile.am): Likewise.
19150         * modules/unlinkdir (Makefile.am): Likewise.
19151         * modules/unlocked-io (Makefile.am): Likewise.
19152         * modules/userspec (Makefile.am): Likewise.
19153         * modules/utime (Makefile.am): Likewise.
19154         * modules/utimecmp (Makefile.am): Likewise.
19155         * modules/utimens (Makefile.am): Likewise.
19156         * modules/vasnprintf (Makefile.am): Likewise.
19157         * modules/vasprintf (Makefile.am): Likewise.
19158         * modules/vsnprintf (Makefile.am): Likewise.
19159         * modules/xalloc (Makefile.am): Likewise.
19160         * modules/xgetcwd (Makefile.am): Likewise.
19161         * modules/xnanosleep (Makefile.am): Likewise.
19162         * modules/xreadlink (Makefile.am): Likewise.
19163         * modules/xstrtod (Makefile.am): Likewise.
19164         * modules/xstrtol (Makefile.am): Likewise.
19165         * modules/xstrtold (Makefile.am): Likewise.
19166         * modules/yesno (Makefile.am): Likewise.
19167         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
19168
19169 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
19170
19171         * modules/error (Makefile.am): Distribute files through
19172         EXTRA_DIST, not lib_SOURCES.
19173
19174 2006-10-12  Eric Blake  <ebb9@byu.net>
19175
19176         * modules/error (Makefile.am): Distribute files in /lib.
19177         * modules/obstack (Makefile.am): Likewise.
19178
19179 2006-10-12  Bruno Haible  <bruno@clisp.org>
19180
19181         * modules/acl (Makefile.am): Distribute all files in lib/ through
19182         EXTRA_DIST.
19183         * modules/arcfour (Makefile.am): Likewise.
19184         * modules/arctwo (Makefile.am): Likewise.
19185         * modules/argmatch (Makefile.am): Likewise.
19186         * modules/argz (Makefile.am): Likewise.
19187         * modules/atexit (Makefile.am): Likewise.
19188         * modules/backupfile (Makefile.am): Likewise.
19189         * modules/c-strtod (Makefile.am): Likewise.
19190         * modules/c-strtold (Makefile.am): Likewise.
19191         * modules/calloc (Makefile.am): Likewise.
19192         * modules/canon-host (Makefile.am): Likewise.
19193         * modules/canonicalize (Makefile.am): Likewise.
19194         * modules/chdir-long (Makefile.am): Likewise.
19195         * modules/chdir-safer (Makefile.am): Likewise.
19196         * modules/check-version (Makefile.am): Likewise.
19197         * modules/chown (Makefile.am): Likewise.
19198         * modules/cloexec (Makefile.am): Likewise.
19199         * modules/close-stream (Makefile.am): Likewise.
19200         * modules/closeout (Makefile.am): Likewise.
19201         * modules/crc (Makefile.am): Likewise.
19202         * modules/cycle-check (Makefile.am): Likewise.
19203         * modules/des (Makefile.am): Likewise.
19204         * modules/dirfd (Makefile.am): Likewise.
19205         * modules/dirname (Makefile.am): Likewise.
19206         * modules/dup2 (Makefile.am): Likewise.
19207         * modules/euidaccess (Makefile.am): Likewise.
19208         * modules/exclude (Makefile.am): Likewise.
19209         * modules/exitfail (Makefile.am): Likewise.
19210         * modules/fcntl-safer (Makefile.am): Likewise.
19211         * modules/file-type (Makefile.am): Likewise.
19212         * modules/fileblocks (Makefile.am): Likewise.
19213         * modules/filemode (Makefile.am): Likewise.
19214         * modules/filenamecat (Makefile.am): Likewise.
19215         * modules/fnmatch (Makefile.am): Likewise.
19216         * modules/fopen-safer (Makefile.am): Likewise.
19217         * modules/fpending (Makefile.am): Likewise.
19218         * modules/fprintftime (Makefile.am): Likewise.
19219         * modules/free (Makefile.am): Likewise.
19220         * modules/fsusage (Makefile.am): Likewise.
19221         * modules/ftruncate (Makefile.am): Likewise.
19222         * modules/fts (Makefile.am): Likewise.
19223         * modules/gc (Makefile.am): Likewise.
19224         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
19225         * modules/getaddrinfo (Makefile.am): Likewise.
19226         * modules/getcwd (Makefile.am): Likewise.
19227         * modules/getdelim (Makefile.am): Likewise.
19228         * modules/getdomainname (Makefile.am): Likewise.
19229         * modules/getgroups (Makefile.am): Likewise.
19230         * modules/gethostname (Makefile.am): Likewise.
19231         * modules/gethrxtime (Makefile.am): Likewise.
19232         * modules/getline (Makefile.am): Likewise.
19233         * modules/getloadavg (Makefile.am): Likewise.
19234         * modules/getlogin_r (Makefile.am): Likewise.
19235         * modules/getopt (Makefile.am): Likewise.
19236         * modules/getpass (Makefile.am): Likewise.
19237         * modules/getpass-gnu (Makefile.am): Likewise.
19238         * modules/getsubopt (Makefile.am): Likewise.
19239         * modules/gettime (Makefile.am): Likewise.
19240         * modules/gettimeofday (Makefile.am): Likewise.
19241         * modules/getugroups (Makefile.am): Likewise.
19242         * modules/getusershell (Makefile.am): Likewise.
19243         * modules/glob (Makefile.am): Likewise.
19244         * modules/group-member (Makefile.am): Likewise.
19245         * modules/hard-locale (Makefile.am): Likewise.
19246         * modules/hash (Makefile.am): Likewise.
19247         * modules/hmac-md5 (Makefile.am): Likewise.
19248         * modules/hmac-sha1 (Makefile.am): Likewise.
19249         * modules/human (Makefile.am): Likewise.
19250         * modules/idcache (Makefile.am): Likewise.
19251         * modules/imaxabs (Makefile.am): Likewise.
19252         * modules/imaxdiv (Makefile.am): Likewise.
19253         * modules/inet_ntop (Makefile.am): Likewise.
19254         * modules/inet_pton (Makefile.am): Likewise.
19255         * modules/inttostr (Makefile.am): Likewise.
19256         * modules/isapipe (Makefile.am): Likewise.
19257         * modules/lchown (Makefile.am): Likewise.
19258         * modules/long-options (Makefile.am): Likewise.
19259         * modules/lstat (Makefile.am): Likewise.
19260         * modules/malloc (Makefile.am): Likewise.
19261         * modules/mathl (Makefile.am): Likewise.
19262         * modules/mbchar (Makefile.am): Likewise.
19263         * modules/md2 (Makefile.am): Likewise.
19264         * modules/md4 (Makefile.am): Likewise.
19265         * modules/md5 (Makefile.am): Likewise.
19266         * modules/memcasecmp (Makefile.am): Likewise.
19267         * modules/memchr (Makefile.am): Likewise.
19268         * modules/memcmp (Makefile.am): Likewise.
19269         * modules/memcoll (Makefile.am): Likewise.
19270         * modules/memcpy (Makefile.am): Likewise.
19271         * modules/memmem (Makefile.am): Likewise.
19272         * modules/memmove (Makefile.am): Likewise.
19273         * modules/mempcpy (Makefile.am): Likewise.
19274         * modules/memrchr (Makefile.am): Likewise.
19275         * modules/memset (Makefile.am): Likewise.
19276         * modules/memxor (Makefile.am): Likewise.
19277         * modules/mkancesdirs (Makefile.am): Likewise.
19278         * modules/mkdir (Makefile.am): Likewise.
19279         * modules/mkdir-p (Makefile.am): Likewise.
19280         * modules/mkdtemp (Makefile.am): Likewise.
19281         * modules/mkstemp (Makefile.am): Likewise.
19282         * modules/mktime (Makefile.am): Likewise.
19283         * modules/modechange (Makefile.am): Likewise.
19284         * modules/mountlist (Makefile.am): Likewise.
19285         * modules/nanosleep (Makefile.am): Likewise.
19286         * modules/openat (Makefile.am): Likewise.
19287         * modules/pagealign_alloc (Makefile.am): Likewise.
19288         * modules/physmem (Makefile.am): Likewise.
19289         * modules/poll (Makefile.am): Likewise.
19290         * modules/posixtm (Makefile.am): Likewise.
19291         * modules/posixver (Makefile.am): Likewise.
19292         * modules/putenv (Makefile.am): Likewise.
19293         * modules/quote (Makefile.am): Likewise.
19294         * modules/quotearg (Makefile.am): Likewise.
19295         * modules/raise (Makefile.am): Likewise.
19296         * modules/read-file (Makefile.am): Likewise.
19297         * modules/readline (Makefile.am): Likewise.
19298         * modules/readlink (Makefile.am): Likewise.
19299         * modules/readtokens (Makefile.am): Likewise.
19300         * modules/readutmp (Makefile.am): Likewise.
19301         * modules/realloc (Makefile.am): Likewise.
19302         * modules/regex (Makefile.am): Likewise.
19303         * modules/rename (Makefile.am): Likewise.
19304         * modules/rename-dest-slash (Makefile.am): Likewise.
19305         * modules/rijndael (Makefile.am): Likewise.
19306         * modules/rmdir (Makefile.am): Likewise.
19307         * modules/rpmatch (Makefile.am): Likewise.
19308         * modules/safe-read (Makefile.am): Likewise.
19309         * modules/safe-write (Makefile.am): Likewise.
19310         * modules/same (Makefile.am): Likewise.
19311         * modules/save-cwd (Makefile.am): Likewise.
19312         * modules/savedir (Makefile.am): Likewise.
19313         * modules/setenv (Makefile.am): Likewise.
19314         * modules/settime (Makefile.am): Likewise.
19315         * modules/sha1 (Makefile.am): Likewise.
19316         * modules/sig2str (Makefile.am): Likewise.
19317         * modules/snprintf (Makefile.am): Likewise.
19318         * modules/stdlib-safer (Makefile.am): Likewise.
19319         * modules/stpcpy (Makefile.am): Likewise.
19320         * modules/stpncpy (Makefile.am): Likewise.
19321         * modules/strcase (Makefile.am): Likewise.
19322         * modules/strcasestr (Makefile.am): Likewise.
19323         * modules/strchrnul (Makefile.am): Likewise.
19324         * modules/strcspn (Makefile.am): Likewise.
19325         * modules/strdup (Makefile.am): Likewise.
19326         * modules/strerror (Makefile.am): Likewise.
19327         * modules/strftime (Makefile.am): Likewise.
19328         * modules/strndup (Makefile.am): Likewise.
19329         * modules/strnlen (Makefile.am): Likewise.
19330         * modules/strpbrk (Makefile.am): Likewise.
19331         * modules/strsep (Makefile.am): Likewise.
19332         * modules/strstr (Makefile.am): Likewise.
19333         * modules/strtod (Makefile.am): Likewise.
19334         * modules/strtoimax (Makefile.am): Likewise.
19335         * modules/strtok_r (Makefile.am): Likewise.
19336         * modules/strtol (Makefile.am): Likewise.
19337         * modules/strtoll (Makefile.am): Likewise.
19338         * modules/strtoul (Makefile.am): Likewise.
19339         * modules/strtoull (Makefile.am): Likewise.
19340         * modules/strtoumax (Makefile.am): Likewise.
19341         * modules/strverscmp (Makefile.am): Likewise.
19342         * modules/time_r (Makefile.am): Likewise.
19343         * modules/timegm (Makefile.am): Likewise.
19344         * modules/tmpfile-safer (Makefile.am): Likewise.
19345         * modules/unistd-safer (Makefile.am): Likewise.
19346         * modules/unlinkdir (Makefile.am): Likewise.
19347         * modules/userspec (Makefile.am): Likewise.
19348         * modules/utime (Makefile.am): Likewise.
19349         * modules/utimecmp (Makefile.am): Likewise.
19350         * modules/utimens (Makefile.am): Likewise.
19351         * modules/vasnprintf (Makefile.am): Likewise.
19352         * modules/vasprintf (Makefile.am): Likewise.
19353         * modules/vsnprintf (Makefile.am): Likewise.
19354         * modules/xalloc (Makefile.am): Likewise.
19355         * modules/xgetcwd (Makefile.am): Likewise.
19356         * modules/xnanosleep (Makefile.am): Likewise.
19357         * modules/xreadlink (Makefile.am): Likewise.
19358         * modules/xstrtod (Makefile.am): Likewise.
19359         * modules/xstrtol (Makefile.am): Likewise.
19360         * modules/xstrtold (Makefile.am): Likewise.
19361         * modules/yesno (Makefile.am): Likewise.
19362
19363 2006-10-12  Jim Meyering  <jim@meyering.net>
19364
19365         * m4/getloadavg.m4: Revert the change below.
19366
19367         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
19368         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
19369         fail with a symlink, which is what coreutils' ./bootstrap now
19370         creates by default.
19371
19372 2006-10-12  Bruno Haible  <bruno@clisp.org>
19373
19374         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
19375         mingw.
19376         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
19377         MSVC and mingw explicitly.
19378
19379 2006-10-11  Simon Josefsson  <jas@extundo.com>
19380             Bruno Haible  <bruno@clisp.org>
19381
19382         Add support for multiple gnulib-tool invocations in the scope of a
19383         single configure.ac file.
19384         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
19385         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
19386         with the same contents as the _LIBADD variable.
19387         (func_emit_initmacro_start, func_emit_initmacro_end,
19388         func_emit_initmacro_done): New functions.
19389         (func_import, func_create_testdir): Invoke them. Allow the identifiers
19390         gl_LIBOBJS and gl_LTLIBOBJS.
19391
19392 2006-10-11  Bruno Haible  <bruno@clisp.org>
19393
19394         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
19395         (func_create_testdir): Don't create po/Makefile.am, don't invoke
19396         autoreconf. Instead, invoke autopoint explicitly but move back the
19397         *.m4 files from gnulib.
19398
19399 2006-10-11  Bruno Haible  <bruno@clisp.org>
19400
19401         * gnulib-tool (func_usage): Make module names after --create-testdir
19402         optional.
19403         (func_create_testdir): If no module was specified, use nearly all
19404         modules.
19405
19406 2006-10-12  Jim Meyering  <jim@meyering.net>
19407
19408         Big performance improvement for fts-based tools that use FTS_NOSTAT.
19409         Avoid spurious inode-mismatch problems on non-POSIX file systems.
19410         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
19411         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
19412         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
19413         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
19414         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
19415         (fts_set_stat_required): New function.
19416         (fts_open): Defer the calls to fts_stat, if possible or requested.
19417         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
19418         into fts_stat itself.
19419         (fts_read): Perform any required (deferred) fts_stat call.
19420         (fts_build): Likewise, for the directory we're about to open and read.
19421         In the readdir loop, carefully decide whether each entry will require
19422         an eventual call to fts_stat, using dirent.d_type info if available.
19423         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
19424         a command line argument into this function.  Update all callers.
19425         Map a return value of FTS_DOT to FTS_D for a command line argument.
19426         * modules/fts (Depends-on): Add d-type.  Alphabetize.
19427         Thanks to Miklos Szeredi for his tenacity and for the initial
19428         bug report about "find" failing on a FUSE-based file system.
19429
19430         * lib/fts.c (fts_open): Use consistent indentation.
19431
19432 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
19433
19434         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
19435         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
19436         reported by Jim Meyering.  All uses of cache variables renamed
19437         to match Autoconf's.
19438         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
19439         the other one.
19440
19441         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
19442         Fix misspelling in diagnostic.
19443
19444 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
19445
19446         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
19447         defined.  Problem reported by Matthew Woehlke.
19448
19449         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
19450         Add support for Tandem NonStop R series.
19451         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
19452         Use new macro.
19453
19454         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
19455         (has_trailing_slash): Omit size arg; all callers changed.
19456         Omit 'inline', since it doesn't help performance and we'd
19457         need to configure it.
19458         Don't count //, ///, etc. as having a trailing slash.
19459         As a side effect, this removes a C99ism reported by Matthew Woehlke.
19460         (rpl_rename_dest_slash): On failure, use rename's errno rather
19461         than (in some cases) an incorrect or junk errno.
19462         Simplify code by removing need to compute length; this does
19463         cause it to make two passes instead of one over the file name,
19464         but it's worth it.
19465
19466         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
19467         change, since Autoconf's version may no longer be appropriate now
19468         that we are using CVS Autoconf's version.  Add support for Tandem.
19469
19470 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
19471             Bruno Haible  <bruno@clisp.org>
19472
19473         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
19474         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
19475         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
19476         gl_AC_TYPE_LONG_LONG.
19477
19478         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
19479         instead of HAVE_LONG_LONG.
19480         * lib/printf-args.c (printf_fetchargs): Likewise.
19481         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
19482         * lib/vasnprintf.c (VASNPRINTF): Likewise.
19483         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
19484         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
19485         gl_AC_TYPE_LONG_LONG.
19486
19487 2006-10-11  Bruno Haible  <bruno@clisp.org>
19488
19489         * m4/longlong.m4: Add comments.
19490         * m4/ulonglong.m4: Likewise.
19491
19492 2006-10-10  Bruno Haible  <bruno@clisp.org>
19493
19494         Make it possible to #define stpcpy, strdup to aliases.
19495         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
19496         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
19497
19498 2006-10-10  Bruno Haible  <bruno@clisp.org>
19499
19500         Make it possible to #define gcd to an alias.
19501         * lib/gcd.c: Include config.h.
19502
19503 2006-10-10  Bruno Haible  <bruno@clisp.org>
19504
19505         Make it possible to #define c_isascii to an alias.
19506         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
19507         defined. Undefine the macros before defining them, to avoid gcc
19508         warnings.
19509         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
19510         define NO_C_CTYPE_MACROS early.
19511
19512 2006-10-10  Bruno Haible  <bruno@clisp.org>
19513
19514         Make it possible to #define set_program_name to an alias.
19515         * lib/progname.c: Don't undefine set_program_name; instead, undefine
19516         ENABLE_RELOCATABLE early.
19517
19518 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
19519
19520         Port to Tandem NSK OSS, which has 64-bit signed int but at most
19521         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
19522         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
19523         More generally, don't assume that 64-bit signed int is available
19524         if unsigned int is, and vice versa.
19525         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
19526         unsigned symbols, not on their signed counterparts.
19527         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
19528         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
19529         (UINT64_C, UINTMAX_C):
19530         Likewise.
19531         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
19532         unsigned counterparts.
19533         (Have_long_long, Unsigned): New macros.
19534         (Int): Renamed from INT.
19535         (strtoimax): Use the new macros.
19536         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
19537         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
19538         * modules/inttypes (inttypes.h): Substitute
19539         HAVE_UNSIGNED_LONG_LONG_INT.
19540         * modules/stdint (stdint.h): Likewise.
19541         (Files): Add m4/ulonglong.m4.
19542
19543 2006-10-10  Bruno Haible  <bruno@clisp.org>
19544
19545         Fix a gcc -Wshadow warning.
19546         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
19547         to 'bucket'.
19548         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
19549         gl_linked_indexof_from_to): Likewise.
19550         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
19551         Likewise.
19552         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
19553         Likewise.
19554         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
19555         Reported by Eric Blake.
19556
19557 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
19558
19559         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
19560         for NetBSD.  Problem reported by Bruno Haible.
19561
19562 2006-10-09  Jim Meyering  <jim@meyering.net>
19563
19564         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
19565         Patch from Bruno Haible.
19566
19567 2006-10-09  Jim Meyering  <jim@meyering.net>
19568
19569         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
19570         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
19571         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
19572
19573 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
19574
19575         Don't include <config.h> twice; this doesn't work in some cases,
19576         e.g., when config.h has "#define intmax_t long long int" and
19577         we include <config.h>, <inttypes.h>, <config.h> in that order.
19578         Problem reported by Matthew Woehlke in:
19579         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
19580         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
19581         * lib/fts-cycle.c: Don't include config.h.
19582         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
19583         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
19584         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
19585         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
19586         inttypes.h.
19587         * lib/xstrtoumax.c: Likewise.
19588         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
19589         __strtol and the like, so that this module is more like its siblings.
19590         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
19591         Remove; no longer needed now that we assume gnulib inttypes.h.
19592
19593 2006-10-08  Bruno Haible  <bruno@clisp.org>
19594
19595         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
19596         option.
19597
19598 2006-10-07  Jim Meyering  <jim@meyering.net>
19599
19600         * modules/inttypes (inttypes.h): Revert what seems to have been
19601         an inadvertent part of today's change: use "|", not "/" in the
19602         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
19603
19604 2006-10-07  Bruno Haible  <bruno@clisp.org>
19605
19606         * modules/sublist: New file.
19607
19608 2006-10-07  Bruno Haible  <bruno@clisp.org>
19609
19610         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
19611         * modules/argz (argz.h): Likewise.
19612         * modules/arpa_inet (arpa/inet.h): Likewise.
19613         * modules/byteswap (byteswap.h): Likewise.
19614         * modules/configmake (configmake.h): Likewise.
19615         * modules/fcntl (fcntl.h): Likewise.
19616         * modules/fnmatch (fnmatch.h): Likewise.
19617         * modules/getopt (getopt.h): Likewise.
19618         * modules/glob (glob.h): Likewise.
19619         * modules/inttypes (inttypes.h): Likewise.
19620         * modules/netinet_in (netinet/in.h): Likewise.
19621         * modules/poll (poll.h): Likewise.
19622         * modules/stdbool (stdbool.h): Likewise.
19623         * modules/stdint (stdint.h): Likewise.
19624         * modules/sys_select (sys/select.h): Likewise.
19625         * modules/sys_socket (sys/socket.h): Likewise.
19626         * modules/sys_stat (sys/stat.h): Likewise.
19627         * modules/sysexits (sysexits.h): Likewise.
19628         * modules/unistd (unistd.h): Likewise.
19629         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
19630         Add a "DO NOT EDIT" comment to the generated file.
19631         (func_import): Likewise for gnulib-comp.m4.
19632
19633 2006-10-07  Bruno Haible  <bruno@clisp.org>
19634
19635         * lib/gl_sublist.h: New file.
19636         * lib/gl_sublist.c: New file.
19637
19638 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
19639
19640         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
19641         name (relative to the original working directory) and the file
19642         name component (relative to the temporary working directory).  All
19643         callers changed.
19644         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
19645         * lib/mkdir-p.c (make_dir_parents): Likewise.
19646         * lib/mkdir-p.h (make_dir_parents): Likewise.
19647
19648 2006-10-06  Eric Blake  <ebb9@byu.net>
19649
19650         Define several macros for use by the clean-temp module.
19651         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
19652         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
19653         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
19654
19655         * lib/clean-temp.h (close_stream_temp): New declaration.
19656         * lib/clean-temp.c (includes): Pull in headers according to what
19657         other modules are in use.
19658         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
19659
19660 2006-10-06  Bruno Haible  <bruno@clisp.org>
19661
19662         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
19663         instead of fopen, fwriteerror.
19664
19665 2006-10-06  Bruno Haible  <bruno@clisp.org>
19666
19667         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
19668         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
19669         int.
19670         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
19671         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
19672         Return an error indicator.
19673         Suggested by Eric Blake.
19674
19675 2006-10-06  Bruno Haible  <bruno@clisp.org>
19676
19677         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
19678         Reported by Eric Blake.
19679
19680 2006-10-06  Bruno Haible  <bruno@clisp.org>
19681
19682         * modules/closeout (Description): Mention stderr too.
19683
19684 2006-10-06  Bruno Haible  <bruno@clisp.org>
19685         and Paul Eggert  <eggert@cs.ucla.edu>
19686
19687         * lib/closeout.c (close_stdout): Also close stderr.
19688         * lib/closeout.h: Update comment.
19689
19690 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
19691
19692         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
19693         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
19694         * lib/dirchownmod.c: Include lchown.h.
19695         * lib/lchown.c: Don't include files that lchown.h now includes.
19696         Don't declare chown, since lchown.h now does that.
19697         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
19698         (lchown): Define to rpl_chown if lchown is declared but
19699         does not exist.  Declare using a prototype if lchown is not
19700         declared.  Add a copyright notice.
19701         * lib/mkstemp.h: Include <unistd.h>.
19702         * lib/openat.c: Include lchown.h.
19703
19704         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
19705         we now test for that separately.
19706         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
19707         rather than O_NOFOLLOW, when testing whether it's possible to
19708         avoid a race condition reliably.
19709         * lib/savewd.c (savewd_chdir): Likewise.
19710
19711         Remove macros that are no longer needed now that stdint.h is
19712         reliable.
19713         * lib/fsusage.c (UINTMAX_MAX): Remove.
19714         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
19715         * lib/utimecmp.c (SIZE_MAX): Remove.
19716
19717         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
19718
19719         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
19720         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
19721         O_NOATIME works.
19722
19723 2006-10-05  Bruno Haible  <bruno@clisp.org>
19724
19725         * lib/gl_list.h (gl_sortedlist_search_from_to,
19726         gl_sortedlist_indexof_from_to): New declarations.
19727         (gl_list_implementation): New fields sortedlist_search_from_to,
19728         sortedlist_indexof_from_to.
19729         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
19730         inline functions.
19731         * lib/gl_list.c (gl_sortedlist_search_from_to,
19732         gl_sortedlist_indexof_from_to): New functions.
19733         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
19734         function.
19735         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
19736         (gl_array_sortedlist_search_from_to): New function.
19737         (gl_array_list_implementation): Update.
19738         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
19739         function.
19740         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
19741         (gl_carray_sortedlist_search_from_to): New function.
19742         (gl_carray_list_implementation): Update.
19743         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
19744         gl_linked_sortedlist_indexof_from_to): New functions.
19745         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
19746         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
19747         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
19748         gl_tree_sortedlist_indexof_from_to): New functions.
19749         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
19750         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
19751         Update.
19752         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
19753         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
19754         Update.
19755
19756 2006-10-05  Bruno Haible  <bruno@clisp.org>
19757
19758         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
19759         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
19760         (struct gl_list_implementation): Add fields search_from_to,
19761         indexof_from_to. Remove fields search, indexof.
19762         (gl_list_search): Use the search_from_to method.
19763         (gl_list_search_from, gl_list_search_from_to): New functions.
19764         (gl_list_indexof): Use the indexof_from_to method.
19765         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
19766         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
19767         (gl_list_search_from, gl_list_search_from_to): New functions.
19768         (gl_list_indexof): Use the indexof_from_to method.
19769         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
19770         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
19771         gl_array_indexof. Add start_index, end_index arguments.
19772         (gl_array_search_from_to): Renamed from gl_array_search. Add
19773         start_index, end_index arguments.
19774         (gl_array_remove, gl_array_list_implementation): Update.
19775         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
19776         gl_carray_indexof. Add start_index, end_index arguments.
19777         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
19778         start_index, end_index arguments.
19779         (gl_carray_remove, gl_carray_list_implementation): Update.
19780         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
19781         gl_linked_search. Add start_index, end_index arguments.
19782         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
19783         start_index, end_index arguments.
19784         (gl_linked_remove): Update.
19785         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
19786         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
19787         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
19788         field to 'size_t'.
19789         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
19790         gl_tree_search. Add start_index, end_index arguments.
19791         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
19792         start_index, end_index arguments.
19793         (gl_tree_remove): Update.
19794         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
19795         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
19796         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
19797         function.
19798         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
19799         gl_tree_search. Add start_index, end_index arguments.
19800         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
19801         start_index, end_index arguments.
19802         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
19803         Update.
19804         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
19805
19806 2006-10-05  Bruno Haible  <bruno@clisp.org>
19807
19808         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
19809
19810         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
19811         fwriteerror_temp): New declarations.
19812         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
19813         (descriptors): New variable.
19814         (cleanup): First, close the descriptors.
19815         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
19816         fclose_temp, fwriteerror_temp): New functions.
19817
19818 2006-10-04  Jim Meyering  <jim@meyering.net>
19819
19820         * lib/fts.c (fts_open): Tiny comment change.
19821
19822 2006-10-04  Bruno Haible  <bruno@clisp.org>
19823
19824         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
19825         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
19826         gl_LOCK_BODY.
19827         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
19828         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
19829         gl_LOCK_EARLY_BODY.
19830         (gl_LOCK): Require gl_LOCK_BODY.
19831
19832 2006-10-04  Bruno Haible  <bruno@clisp.org>
19833
19834         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
19835         (gl_oset_search_atleast): New declaration.
19836         (struct gl_oset_implementation): Add field 'search_atleast'.
19837         (gl_oset_search_atleast): New inline function.
19838         * lib/gl_oset.c (gl_oset_search_atleast): New function.
19839         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
19840         (gl_array_oset_implementation): Update.
19841         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
19842         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
19843         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
19844
19845 2006-10-04  Bruno Haible  <bruno@clisp.org>
19846
19847         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
19848
19849 2006-10-03  Bruno Haible  <bruno@clisp.org>
19850
19851         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
19852         from gl_avltreehash_list_implementation.
19853
19854 2006-10-03  Bruno Haible  <bruno@clisp.org>
19855
19856         * lib/gl_oset.c (gl_oset_add): Fix return type.
19857
19858 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
19859
19860         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
19861
19862 2006-10-02  Eric Blake  <ebb9@byu.net>
19863
19864         * modules/strnlen (Depends-on): Add extensions.
19865
19866 2006-10-02  Eric Blake  <ebb9@byu.net>
19867
19868         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
19869         definition in 2.60+.
19870
19871 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
19872
19873         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
19874         checks.
19875
19876 2006-10-02  Bruno Haible  <bruno@clisp.org>
19877
19878         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
19879         to the AUTOMAKE_OPTIONS.
19880         Reported by Jim Meyering.
19881
19882 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
19883
19884         Work around bug in Solaris 10 /proc file system:
19885         /proc/self/fd/NNN/.. isn't the parent directory of
19886         the directory whose file descriptor is NNN.  This needs to
19887         be worked around at run time, not compile time, since a
19888         program might be built on Solaris 8, where things work, and
19889         run on Solaris 10.
19890         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
19891         to use the following interface instead:
19892         (OPENAT_BUFFER_SIZE): New macro.
19893         (openat_proc_name): New function.
19894         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
19895         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
19896         Likewise.
19897         * lib/openat-proc.c: New file.
19898         * modules/openat (Files): Add lib/openat-proc.c.
19899         (Depends-on): Add same-inode, stdbool.
19900         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
19901
19902 2006-09-29  Bruno Haible  <bruno@clisp.org>
19903
19904         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
19905         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
19906         argument. Set stdout_closed before testing for ferror, not after.
19907         (fwriteerror, fwriteerror_no_ebadf): New functions.
19908
19909 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19910
19911         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
19912
19913 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
19914
19915         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
19916         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
19917
19918 2006-09-28  Jim Meyering  <jim@meyering.net>
19919
19920         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
19921         Include <unistd.h>.
19922
19923 2006-09-28  Bruno Haible  <bruno@clisp.org>
19924
19925         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
19926         * modules/linkedhash-list (Depends-on): Likewise.
19927         * modules/rbtreehash-list (Depends-on): Likewise.
19928
19929 2006-09-28  Bruno Haible  <bruno@clisp.org>
19930
19931         * lib/strndup.h: Simplify the redefinition of strndup.
19932         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
19933         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
19934
19935 2006-09-28  Bruno Haible  <bruno@clisp.org>
19936
19937         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
19938         * lib/gl_linkedhash_list.c: Likewise.
19939         * lib/gl_rbtreehash_list.c: Likewise.
19940
19941 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
19942
19943         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
19944         getaddrinfo.
19945
19946         * lib/__fpending.h: Don't include <stdio_ext.h> unless
19947         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
19948         it causes <stdio_ext.h> to cause a compile-time error.
19949         Problem reported by Nelson H. F. Beebe.
19950         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
19951         of HAVE_DECL___PENDING.
19952
19953         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
19954         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
19955         declaration.
19956
19957 2006-09-27  Jim Meyering  <jim@meyering.net>
19958
19959         This file could end up with a definition for a function
19960         named __strndup, rather than rpl_strndup on a system with
19961         incomplete weak_alias support.
19962         * lib/strndup.c (strndup): Rename from __strndup.
19963         Remove #defines that used to map __strndup to strndup.
19964         Don't use K&R prototypes.
19965         Remove LIBC-related code, since this file is not sync'd with glibc.
19966         * lib/strndup.h: Revamp, accordingly.
19967         * m4/strndup.m4: Modernize.
19968
19969 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
19970
19971         * modules/savewd (Depends-on): Add 'raise'.
19972         * lib/savewd.c: Include <signal.h>, for 'raise'.
19973
19974 2006-09-26  Jim Meyering  <jim@meyering.net>
19975
19976         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
19977         when we detect Darwin 8.7.0's acl_get_file bug.
19978         Rearrange to perform the new (below) run-test while $LIBS
19979         contains any acl-related library.  Set USE_ACL at the end.
19980         (gl_ACL_GET_FILE): New function.
19981
19982 2006-09-26  Eric Blake  <ebb9@byu.net>
19983
19984         * lib/verror.c: Include <config.h> unconditionally.
19985
19986 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
19987
19988         * modules/clock-time (Maintainer): Add self.
19989         * modules/getlogin_r (Depends-on): Add extensions.
19990
19991 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19992
19993         * modules/clock-time: New module.
19994         * modules/nanosleep (Depends-on): Add clock-time.
19995         * modules/gethrxtime (Depends-on): Likewise.
19996         * modules/gettime (Depends-on): Likewise.
19997         * modules/settime (Depends-on): Likewise.
19998
19999         * modules/fts-lgpl: Depend on openat.
20000         * modules/mkancesdirs: Depend on savewd.
20001         * modules/mkdir-p: Likewise.
20002
20003 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20004
20005         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
20006
20007         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
20008         `gl_have_arbitrary_file_name_length_limit' to
20009         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
20010         actually works between configure runs.
20011
20012 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20013             Bruno Haible  <bruno@clisp.org>
20014
20015         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
20016
20017 2006-09-25  Jim Meyering  <jim@meyering.net>
20018
20019         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
20020         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
20021
20022 2006-09-25  Eric Blake  <ebb9@byu.net>
20023
20024         * gnulib-tool (func_import, func_create_testdir): Fix typos in
20025         exec's in 2006-09-18 patch when shuffling fds.
20026
20027 2006-09-25  Bruno Haible  <bruno@clisp.org>
20028
20029         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
20030         Reported by Jim Meyering.
20031
20032 2006-09-24  Jim Meyering  <jim@meyering.net>
20033
20034         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
20035         compare a pointer against a literal "0".  That caused failures with
20036         at least HP-UX's hpcc.
20037
20038 2006-09-22  Simon Josefsson  <jas@extundo.com>
20039
20040         * modules/gc-sha1:
20041         * modules/gc-md4:
20042         * modules/gc-hmac-sha1:
20043         * modules/gc-hmac-md5:
20044         * modules/gc-des:
20045         * modules/gc-arcfour: Distribute more files.
20046
20047 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20048
20049         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
20050         (gl_linked_iterator_from_to): Initialize struct completely.
20051         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
20052         (gl_tree_iterator_from_to): Likewise
20053         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
20054         * lib/gl_array_list.c [lint] (gl_array_iterator)
20055         (gl_array_iterator_from_to): Likewise.
20056         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
20057         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
20058         (gl_carray_iterator_from_to): Likewise.
20059
20060         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
20061         * lib/md4.c (md4_process_block): Remove unused variable.
20062         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
20063         parentheses for clarity.
20064
20065 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20066
20067         * modules/bison-i18n (Depends-on): Add gettext.
20068
20069 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20070
20071         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
20072         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
20073         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
20074         also add missing comma that caused broken test.
20075         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
20076         stdlib.h, for `abort'.
20077         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
20078         variables.
20079         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
20080         include unistd.h if present, for `rmdir'.
20081         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
20082         variables.
20083         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
20084         in the process include standard headers for prototypes.
20085         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
20086         gets declared on GNU/Linux.
20087         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
20088         unistd.h, for `rmdir'.
20089         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
20090
20091         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
20092         always true.
20093         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
20094
20095         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
20096
20097 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20098
20099         * gnulib-tool (func_version): Create output all at once.  This
20100         may help avoid triggering unnecessary SIGPIPEs, and at any
20101         rate it doesn't hurt.
20102
20103 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20104             Bruno Haible  <bruno@clisp.org>
20105
20106         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
20107         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
20108         * m4/signed.m4 (bh_C_SIGNED): Likewise.
20109
20110         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
20111         (gl_FUNC_VASPRINTF): Invoke it.
20112
20113 2006-09-22  Bruno Haible  <bruno@clisp.org>
20114
20115         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
20116         getloadavg.c as first argument.
20117
20118 2006-09-22  Bruno Haible  <bruno@clisp.org>
20119
20120         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
20121         at the beginning of the gl_INIT macro.
20122         * modules/getloadavg (configure.ac): Pass $gl_source_base to
20123         gl_GETLOADAVG.
20124
20125 2006-09-22  Bruno Haible  <bruno@clisp.org>
20126
20127         * gnulib-tool (func_create_megatestdir): Don't include the config-h
20128         module.
20129         Suggested by Ralf Wildenhues.
20130
20131 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
20132
20133         Import this patch from libc:
20134
20135         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
20136
20137         * lib/regex_internal.c (re_string_reconstruct): Handle
20138         offset < pstr->valid_raw_len && pstr->offsets_needed case.
20139         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
20140         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
20141         re_string_context_at.
20142
20143         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
20144         now requires it.
20145         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
20146         gl_REGEX now does it for us.
20147         (gl_REGEX): Add test taken from
20148         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
20149
20150         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
20151         Check that large offsets work.  Modernize Autoconf usages.
20152         Prefer "yes" to mean a good thing rather than a bad.
20153         Don't put "#define mkstemp" in config.h, as this might interfere
20154         with standard system headers that "#define mkstemp mkstemp64".
20155
20156         * modules/mkstemp (Depends-on): Add extensions, so that
20157         mkstemp is visible on some platforms.
20158         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
20159         (Include): Change to "mkstemp.h" from <stdlib.h>.
20160         (Files): Add mkstemp.h.
20161
20162         * lib/mkstemp.h: New file, since some standard headers
20163         #define mkstemp.
20164         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
20165         Include "mkstemp.h".
20166         Make the _LIBC code resemble glibc original more,
20167         e.g., use K&R style.
20168         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
20169         (mkstemp): Remove, since mkstemp.h does this for us.
20170         * lib/stdlib--.h: Include mkstemp.h.
20171
20172         Import this patch from libc:
20173
20174         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
20175
20176         * lib/tempname.c (__gen_tempname): Change attempts_min
20177         into a macro.  Use preprocessor to decide how to initialize
20178         attempts [Coverity CID 67].
20179
20180 2006-09-20  Bruno Haible  <bruno@clisp.org>
20181
20182         * lib/mkdtemp.c: Import from libc.
20183         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
20184                 * sysdeps/posix/tempname.c (__gen_tempname): Change
20185                 attempts_min into a macro.  Use preprocessor to decide how to
20186                 initialize attempts [Coverity CID 67].
20187         2001-11-27  Paul Eggert  <eggert@twinsun.com>
20188                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
20189                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
20190
20191 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20192
20193         * gnulib-tool (func_exit): New function, to allow to pass the
20194         exit status portably through the trap.  Use everywhere.
20195         (--help, --version): Signal a write error.
20196         (trap): catch SIGPIPE, for write errors.
20197         Exit at the end of the trap, with the correct exit status.
20198
20199 2006-09-19  Karl Berry  <karl@gnu.org>
20200
20201         * doc/gnulib.texi: note about the license texinfo files.
20202
20203 2006-09-19  Eric Blake  <ebb9@byu.net>
20204
20205         * gnulib-tool: Avoid space-tab.
20206
20207 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
20208
20209         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
20210         that prevented coreutils 6.1 from building.  Problem reported
20211         by Petter Reinholdtsen.
20212
20213 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
20214
20215         * gnulib-tool (avoidlist): Fix typo that broke options like
20216         --avoid=lock that are used by coreutils bootstrap.
20217
20218 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
20219
20220         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
20221         more systematically.
20222
20223 2006-09-18  Jim Meyering  <jim@meyering.net>
20224
20225         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
20226
20227 2006-09-18  Bruno Haible  <bruno@clisp.org>
20228
20229         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
20230
20231 2006-09-18  Bruno Haible  <bruno@clisp.org>
20232
20233         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
20234         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
20235         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
20236         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
20237         * m4/gettext.m4: Require autoconf >= 2.52.
20238         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
20239         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
20240         of gl_cv_header_inttypes_h.
20241
20242 2006-09-18  Bruno Haible  <bruno@clisp.org>
20243
20244         * lib/javaversion.c: Include configmake.h.
20245
20246 2006-09-18  Bruno Haible  <bruno@clisp.org>
20247
20248         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
20249         avoid that the while loops be executed in a subshell.
20250
20251 2006-09-18  Bruno Haible  <bruno@clisp.org>
20252
20253         * MODULES.html.sh (func_module): Break long lines.
20254         Suggested by Bruce Korb <bkorb@gnu.org>.
20255
20256 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20257
20258         Speed up by a factor of 1.12.
20259         * gnulib-tool (nl): New variable.
20260         (func_import): Rewrite include directive extraction to only read each
20261         directive once.
20262
20263 2006-09-17  Bruno Haible  <bruno@clisp.org>
20264
20265         * modules/javaversion (Makefile.am): Remove DEFS setting.
20266         (Depends-on): Add configmake, for PKGDATADIR definition.
20267
20268 2006-09-17  Bruno Haible  <bruno@clisp.org>
20269
20270         * gnulib-tool (func_create_testdir): Rewrite all files at once.
20271
20272 2006-09-17  Bruno Haible  <bruno@clisp.org>
20273
20274         * gnulib-tool (func_append): New function, stolen from libtool.m4.
20275         (func_modules_transitive_closure, func_modules_add_dummy,
20276         func_modules_to_filelist, func_import, func_create_testdir,
20277         func_create_megatestdir, ...): Use it wherever possible.
20278         Suggested by Ralf Wildenhues.
20279
20280 2006-09-16  Karl Berry  <karl@gnu.org>
20281
20282         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
20283         to avoid sectioning errors.
20284         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
20285         [ifinfo]: blank line after @center-ed titles.
20286         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
20287         Spell FSF address consistently with others.
20288         (These changes approved by rms.)
20289
20290 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20291
20292         Speed up by a factor of 1.61.
20293         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
20294         already checked module names again.
20295
20296 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20297
20298         Speed up by a factor of 1.13.
20299         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
20300         for new_files, and the input to func_add_or_update.
20301
20302 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20303
20304         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
20305         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
20306
20307 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20308
20309         * modules/mkancesdirs (Depends-on): Add fcntl.
20310         * modules/savewd: New file.
20311         * MODULES.html.sh (File system functions): Add savewd.
20312
20313         * modules/configmake (Makefile.am): Add support for the
20314         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
20315
20316 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20317
20318         * m4/savewd.m4: New file.
20319
20320 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
20321
20322         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
20323         (dirchownmod): New arg FD.  All callers changed.
20324         Use FD rather than opening the directory ourself, as opening is
20325         now the caller's responsibility.
20326         * lib/dirchownmod.h: Likewise.
20327         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
20328         hosts that require <sys/types.h> before <sys/stat.h>.  Include
20329         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
20330         (test_dir): Remove.
20331         (mkancesdirs): Return length of prefix of FILE that has already
20332         been made, or -2 if there is a child doing the work.  Redo
20333         algorithm so that it is O(N) rather than O(N**2).  Optimize away
20334         ".", and treat ".." specially since it might stray back into
20335         already-created areas.  Use a subprocess if necessary.  New arg
20336         WD; all users changed.  MAKE_DIR function should now return 1
20337         if it creates a directory that is not readable.  Return -2 if
20338         a child process is spun off.
20339         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
20340         Adjust signature to match code.
20341         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
20342         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
20343         all users changed.
20344         * lib/savewd.c, lib/savewd.h: New files.
20345
20346 2006-09-15  Jim Meyering  <jim@meyering.net>
20347
20348         * modules/rename-dest-slash: New module.
20349         * MODULES.html.sh (posix_compat): Add it here.
20350
20351         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
20352
20353 2006-09-15  Jim Meyering  <jim@meyering.net>
20354
20355         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
20356         file.
20357
20358         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
20359
20360 2006-09-15  Jim Meyering  <jim@meyering.net>
20361
20362         * lib/rename-dest-slash.c (has_trailing_slash): Use
20363         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
20364         (rpl_rename_dest_slash): Perform the cheaper trailing slash
20365         test before testing whether SRC is a directory.
20366         Suggestions from Bruno Haible.
20367
20368         Avoid a warning about an unused variable.
20369         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
20370         into the #ifdef block where it's used.
20371
20372         * lib/rename-dest-slash.c: New file.
20373
20374 2006-09-14  Bruno Haible  <bruno@clisp.org>
20375
20376         * lib/allocsa.c: Include <config.h> unconditionally.
20377         * lib/asnprintf.c: Likewise.
20378         * lib/asprintf.c: Likewise.
20379         * lib/c-strcasecmp.c: Likewise.
20380         * lib/c-strcasestr.c: Likewise.
20381         * lib/c-strncasecmp.c: Likewise.
20382         * lib/c-strstr.c: Likewise.
20383         * lib/classpath.c: Likewise.
20384         * lib/clean-temp.c: Likewise.
20385         * lib/concatpath.c: Likewise.
20386         * lib/copy-file.c: Likewise.
20387         * lib/csharpcomp.c: Likewise.
20388         * lib/csharpexec.c: Likewise.
20389         * lib/execute.c: Likewise.
20390         * lib/fatal-signal.c: Likewise.
20391         * lib/findprog.c: Likewise.
20392         * lib/fwriteerror.c: Likewise.
20393         * lib/gl_array_list.c: Likewise.
20394         * lib/gl_array_oset.c: Likewise.
20395         * lib/gl_avltree_list.c: Likewise.
20396         * lib/gl_avltree_oset.c: Likewise.
20397         * lib/gl_avltreehash_list.c: Likewise.
20398         * lib/gl_carray_list.c: Likewise.
20399         * lib/gl_linked_list.c: Likewise.
20400         * lib/gl_linkedhash_list.c: Likewise.
20401         * lib/gl_list.c: Likewise.
20402         * lib/gl_oset.c: Likewise.
20403         * lib/gl_rbtree_list.c: Likewise.
20404         * lib/gl_rbtree_oset.c: Likewise.
20405         * lib/gl_rbtreehash_list.c: Likewise.
20406         * lib/imaxabs.c: Likewise.
20407         * lib/imaxdiv.c: Likewise.
20408         * lib/javacomp.c: Likewise.
20409         * lib/javaexec.c: Likewise.
20410         * lib/javaversion.c: Likewise.
20411         * lib/linebreak.c: Likewise.
20412         * lib/localcharset.c: Likewise.
20413         * lib/lock.c: Likewise.
20414         * lib/mbchar.c: Likewise.
20415         * lib/mbswidth.c: Likewise.
20416         * lib/mkdtemp.c: Likewise.
20417         * lib/pipe.c: Likewise.
20418         * lib/printf-args.c: Likewise.
20419         * lib/printf-parse.c: Likewise.
20420         * lib/progname.c: Likewise.
20421         * lib/progreloc.c: Likewise.
20422         * lib/readlink.c: Likewise.
20423         * lib/sh-quote.c: Likewise.
20424         * lib/stpcpy.c: Likewise.
20425         * lib/stpncpy.c: Likewise.
20426         * lib/strcasecmp.c: Likewise.
20427         * lib/strcasestr.c: Likewise.
20428         * lib/strcspn.c: Likewise.
20429         * lib/striconv.c: Likewise.
20430         * lib/strncasecmp.c: Likewise.
20431         * lib/strnlen1.c: Likewise.
20432         * lib/strstr.c: Likewise.
20433         * lib/strtok_r.c: Likewise.
20434         * lib/tls.c: Likewise.
20435         * lib/tmpdir.c: Likewise.
20436         * lib/unicodeio.c: Likewise.
20437         * lib/unsetenv.c: Likewise.
20438         * lib/vasnprintf.c: Likewise.
20439         * lib/vasprintf.c: Likewise.
20440         * lib/wait-process.c: Likewise.
20441         * lib/xallocsa.c: Likewise.
20442         * lib/xsetenv.c: Likewise.
20443         * lib/xstriconv.c: Likewise.
20444
20445 2006-09-13  Simon Josefsson  <jas@extundo.com>
20446
20447         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
20448         that internally, suggested by Ralf Wildenhues
20449         <Ralf.Wildenhues@gmx.de>.
20450
20451 2006-09-13  Simon Josefsson  <jas@extundo.com>
20452
20453         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
20454         @LIBOBJS@.
20455         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20456
20457 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
20458
20459         * lib/_fpending.c: Include <config.h> unconditionally, since we no
20460         longer worry about uses that don't define HAVE_CONFIG_H.
20461         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
20462         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
20463         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
20464         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
20465         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
20466         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
20467         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
20468         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
20469         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
20470         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
20471         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
20472         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
20473         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
20474         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
20475         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
20476         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
20477         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
20478         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
20479         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
20480         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
20481         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
20482         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
20483         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
20484         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
20485         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
20486         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
20487         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
20488         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
20489         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
20490         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
20491         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
20492         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
20493         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
20494         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
20495         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
20496         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
20497         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
20498         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
20499         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
20500         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
20501         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
20502         Likewise.
20503
20504 2006-09-13  Eric Blake  <ebb9@byu.net>
20505
20506         * lib/getopt.c: Fix typo in last commit.
20507
20508 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
20509
20510         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
20511         dgettext.
20512
20513 2006-09-12  Jim Meyering  <jim@meyering.net>
20514
20515         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
20516         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
20517         Reported by Nelson H. F. Beebe.
20518
20519 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
20520
20521         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
20522         program_invocation_name and program_invocation_short_name are
20523         initialized.
20524         * lib/argp-namefrob.h: Move declarations of program_invocation_name
20525         and program_invocation_short_name to argp.h, so they are visible
20526         to user programs.
20527         * lib/argp.h: Likewise
20528
20529 2006-09-10  Bruno Haible  <bruno@clisp.org>
20530
20531         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
20532         m4/inttypes_h.m4, m4/uintmax_t.m4.
20533
20534 2006-09-10  Bruno Haible  <bruno@clisp.org>
20535
20536         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
20537         gl_AC_TYPE_UINTMAX_T.
20538
20539 2006-09-10  Bruno Haible  <bruno@clisp.org>
20540
20541         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
20542
20543 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
20544
20545         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
20546         convention.  Text proposed by Bruno Haible.
20547         (struct argp_option): Document the use of N_() wrappers.
20548
20549         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
20550         '\v', and translate the two parts separately, instead of feeding
20551         the whole string to gettext.  This allows to exclude
20552         '\v' from the strings visible to the translator by writing doc
20553         strings as N_("..") "\v" N_("..").
20554
20555 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20556
20557         * config/srclist.txt: Undo latest change; the bug was fixed.
20558
20559 2006-09-09  Bruno Haible  <bruno@clisp.org>
20560
20561         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
20562         assignments if building a library without libtool.
20563         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
20564         in func_emit_lib_Makefile_am.
20565         (func_import): When building a static library libfoo.a, arrange to
20566         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
20567         (func_create_testdir): Likewise.
20568         * modules/gc (configure.ac, Makefile.am): If building statically,
20569         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
20570         * modules/iconvme (configure.ac, Makefile.am): Likewise.
20571         * modules/striconv (configure.ac, Makefile.am): Likewise.
20572         Based on a suggestion by Ralf Wildenhues.
20573
20574 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20575
20576         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
20577         Check for unistd.h too, since Autoconf doesn't assume POSIX.
20578         Also:
20579
20580         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20581         Add year_2050_test to catch glibc bug 2821
20582         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
20583
20584         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20585         Prefer #ifdef to #if.
20586
20587         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
20588         Return from 'main' instead of calling 'exit'.
20589
20590 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20591
20592         * lib/mktime.c (guess_time_tm): Fix bug where mktime
20593         returned the maximum time_t value rather than (time_t) -1.
20594         Problem originally reported by William Bardwell
20595         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
20596
20597         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
20598         Moved to here ...
20599         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
20600         ... from here.
20601
20602 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
20603
20604         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
20605         2821 is fixed.
20606
20607 2006-09-08  Jim Meyering  <jim@meyering.net>
20608
20609         Don't make generated files read-only.  That would bother too many
20610         people.  However, do retain the ability to work when targets are
20611         read-only: remove the destination and temporary files before writing
20612         them (when generated via sed or echo), or by using the -f option for
20613         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
20614         * modules/alloca-opt, modules/argz, modules/arpa_inet:
20615         * modules/byteswap, modules/configmake, modules/fcntl:
20616         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
20617         * modules/localcharset, modules/netinet_in, modules/poll:
20618         * modules/stdbool, modules/stdint, modules/sys_select:
20619         * modules/sys_socket, modules/sys_stat, modules/sysexits:
20620
20621 2006-09-08  Jim Meyering  <jim@meyering.net>
20622
20623         Avoid new build failure on FreeBSD 6.0.
20624         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
20625         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
20626         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
20627
20628 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20629
20630         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
20631
20632 2006-09-07  Jim Meyering  <jim@meyering.net>
20633
20634         Fix global typo in last change: use chmod u-w, not chmod u-x.
20635         Spotted by Paul Eggert and Bruce Korb.
20636         * modules/alloca-opt, modules/argz, modules/arpa_inet:
20637         * modules/byteswap, modules/configmake, modules/fcntl:
20638         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
20639         * modules/localcharset, modules/netinet_in, modules/poll:
20640         * modules/stdbool, modules/stdint, modules/sys_select:
20641         * modules/sys_socket, modules/sys_stat, modules/sysexits:
20642
20643 2006-09-06  Jim Meyering  <jim@meyering.net>
20644
20645         Make generated files be read-only.
20646         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
20647         Ensure that each generated file is now read-only.
20648         * modules/argz: Likewise.
20649         * modules/arpa_inet: Likewise.
20650         * modules/byteswap: Likewise.
20651         * modules/configmake: Likewise.
20652         * modules/fcntl: Likewise.
20653         * modules/fnmatch: Likewise.
20654         * modules/getopt: Likewise.
20655         * modules/glob: Likewise.
20656         * modules/inttypes: Likewise.
20657         * modules/netinet_in: Likewise.
20658         * modules/poll: Likewise.
20659         * modules/stdbool: Likewise.
20660         * modules/stdint: Likewise.
20661         * modules/sys_select: Likewise.
20662         * modules/sys_socket: Likewise.
20663         * modules/sys_stat: Likewise.
20664         * modules/sysexits: Likewise.
20665         * modules/localcharset: Same as above, but continue using temporary
20666         file named "t-$@" (why different?) rather than the "$@-t" used
20667         everywhere else.
20668
20669         * modules/sysexits (Makefile.am): Replace literal occurrences
20670         of "sysexit.h" more readable, and more consistent, "$@".
20671
20672 2006-09-06  Bruno Haible  <bruno@clisp.org>
20673
20674         * modules/striconv: New file.
20675         * modules/xstriconv: New file.
20676         * MODULES.html.sh (Internationalization functions): Add striconv,
20677         xstriconv.
20678
20679 2006-09-06  Bruno Haible  <bruno@clisp.org>
20680
20681         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
20682         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
20683         not using libtool correctly.
20684
20685 2006-09-06  Bruno Haible  <bruno@clisp.org>
20686
20687         * lib/striconv.h: New file.
20688         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
20689         iconvstring.c.
20690         * lib/xstriconv.h: New file.
20691         * lib/xstriconv.c: New file.
20692
20693 2006-09-06  Bruno Haible  <bruno@clisp.org>
20694
20695         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
20696         lib_..._LDFLAGS.
20697
20698 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20699
20700         * lib/argz_.h: Sync from Libtool.
20701
20702         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
20703                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
20704
20705         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
20706
20707 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
20708
20709         * modules/trim: New file.
20710
20711 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
20712
20713         * lib/trim.h: New file.
20714         * lib/trim.c: New file.
20715
20716 2006-09-05  Bruno Haible  <bruno@clisp.org>
20717
20718         * MODULES.html.sh (String handling): Add trim.
20719
20720 2006-09-04  Karl Berry  <karl@gnu.org>
20721
20722         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
20723         until next release.
20724
20725 2006-09-03  Bruno Haible  <bruno@clisp.org>
20726
20727         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
20728         correctly.
20729
20730 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20731
20732         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
20733         not gl_GETLOADAVG.  Omit unneeded semicolons.
20734         Problems reported by Ralf Wildenhues in
20735         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
20736         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
20737         at the end, which is the usual gnulib style.
20738
20739         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
20740         of doing all the work ourselves.
20741         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
20742         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
20743
20744 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20745
20746         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
20747         Problem reported by Ralf Wildenhues in
20748         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
20749
20750         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
20751         HAVE_STRUCT_STATFS_F_FSTYPENAME.
20752
20753 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20754
20755         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
20756         yesterday's patch by changing test -n to test -z.
20757
20758 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20759
20760         * modules/getloadavg (Files): Add m4/getloadavg.m4.
20761         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
20762         the former is now obsolescent.
20763
20764         * modules/chdir-long (Depends-on): Add fcntl.
20765
20766 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20767
20768         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
20769         obsolescent, and programs should use gnulib instead.
20770         * m4/getloadavg.m4: New file, with contents taken from Autoconf
20771         but with prefixes changed.
20772
20773 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20774
20775         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
20776         or stdbool.h, because they might not exist while configuring.
20777
20778         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
20779         Don't include unistd.h or limits.h; not needed, since chdir-long.h
20780         does that for us.
20781         (O_DIRECTORY): Remove.
20782
20783 2006-08-31  Eric Blake  <ebb9@byu.net>
20784
20785         * gnulib-tool: Don't let emacs change spaces to TAB.
20786
20787 2006-08-31  Bruno Haible  <bruno@clisp.org>
20788
20789         * gnulib-tool: When calling func_import more than once, do it in a
20790         subshell.
20791         Reported by Eric Blake <ebb9@byu.net>.
20792
20793 2006-08-31  Bruno Haible  <bruno@clisp.org>
20794
20795         * gnulib-tool (nl): Remove variable.
20796         (sed_transform_lib_file): Use more robust test for config-h module.
20797         (func_import): Fix typo in 2006-08-25 patch.
20798
20799 2006-08-31  Bruno Haible  <bruno@clisp.org>
20800
20801         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
20802         specified, augment Makefile.am variables instead of assigning them.
20803
20804 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
20805
20806         Work around a bug in both the Linux and SunOS 64-bit kernels:
20807         nanosleep mishandles sleeps for longer than 2**31 seconds.
20808         Problem reported by Frank v Waveren in
20809         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
20810         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
20811         Check for nanosleep bug.
20812         (LIB_NANOSLEEP): Append clock_gettime library if needed.
20813
20814 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
20815
20816         Work around a bug in both the Linux and SunOS 64-bit kernels:
20817         nanosleep mishandles sleeps for longer than 2**31 seconds.
20818         Problem reported by Frank v Waveren in
20819         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
20820         * lib/nanosleep.c (BILLION): New constant.
20821         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
20822         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
20823         implementation.
20824
20825 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
20826
20827         * modules/nanosleep (Depends-on): Add gettime.
20828
20829 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
20830         and Simon Josefsson  <jas@extundo.com>
20831         and Oskar Liljeblad  <oskar@osk.mine.nu>
20832
20833         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
20834         * gnulib-tool (func_import): New license type 'unmodifiable license
20835         text'.
20836         * modules/fdl: Use it.  Longer description.
20837         * module/gpl, module/lgpl: New files.
20838
20839 2006-08-30  Jim Meyering  <jim@meyering.net>
20840
20841         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
20842         shadowing the parameter.
20843
20844 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20845
20846         Sync from Libtool:
20847
20848         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20849
20850         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
20851         sharing with gnulib.  Report by Eric Blake.
20852
20853 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
20854
20855         * modules/isapipe: New file.
20856         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
20857
20858 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
20859
20860         * modules/configmake (Makefile.am): Add a comment, and omit
20861         the CONFIGMAKE_ prefix from generated macro names.  Suggested
20862         by Bruno Haible.
20863
20864 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
20865
20866         * m4/isapipe.m4: New file.
20867
20868 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
20869
20870         * lib/isapipe.c, lib/isapipe.h: New files.
20871
20872 2006-08-29  Jim Meyering  <jim@meyering.net>
20873
20874         * modules/configmake (Makefile.am): Make configmake.h depend on
20875         Makefile.  Otherwise, a stale configmake.h could hang around.
20876
20877 2006-08-29  Eric Blake  <ebb9@byu.net>
20878
20879         * lib/error.c (error_at_line, print_errno_message): Match libc, after
20880         resolution of upstream bug 3044.
20881
20882 2006-08-29  Bruno Haible  <bruno@clisp.org>
20883
20884         * modules/localcharset (Depends-on): Add configmake.
20885         (Makefile.am): Remove setting of LIBDIR through DEFS.
20886
20887 2006-08-29  Bruno Haible  <bruno@clisp.org>
20888
20889         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
20890         defined.
20891
20892 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
20893
20894         * modules/fcntl: New file.
20895         * modules/chdir-safer (Depends-on): Add fcntl.
20896         * modules/fts: Likewise.
20897         * modules/mkdir-p: Likewise.
20898
20899         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
20900         This undoes the most recent change, since we're now addressing the
20901         problem in a different way.
20902
20903         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
20904         into output, since the output might be called Makefile.am even
20905         if $makefile_name is something different.
20906         (func_import): Use $makefile_am rather than
20907         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
20908         empty.
20909
20910         * modules/inttypes (Files): Add m4/inttypes-h.m4.
20911
20912 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
20913
20914         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
20915         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
20916         recent change to stdint.m4, since we're now addressing the problem in a
20917         different way.
20918
20919 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
20920
20921         * m4/fcntl_h.m4: New file.
20922
20923 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
20924
20925         * lib/fcntl_.h: New file.
20926         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
20927         the fcntl module.
20928         * lib/dirchownmod.c: Likewise.
20929         * lib/fts.c: Likewise.
20930
20931         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
20932         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
20933         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
20934         just before including <inttypes.h>, to avoid circular inclusion.
20935
20936 2006-08-28  Jim Meyering  <jim@meyering.net>
20937
20938         * doc/visibility.texi: Actually read and correct the grammar of the
20939         sentence affected by yesterday's change.
20940
20941 2006-08-28  Eric Blake  <ebb9@byu.net>
20942
20943         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
20944         needs wrapper.
20945
20946 2006-08-28  Eric Blake  <ebb9@byu.net>
20947
20948         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
20949
20950 2006-08-28  Eric Blake  <ebb9@byu.net>
20951
20952         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
20953
20954 2006-08-28  Bruno Haible  <bruno@clisp.org>
20955
20956         * modules/c-strstr: New file, from GNU gettext.
20957         * MODULES.html.sh (String handling): Add c-strstr.
20958
20959 2006-08-28  Bruno Haible  <bruno@clisp.org>
20960
20961         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
20962         macros.
20963         Reported by Eric Blake.
20964
20965 2006-08-28  Bruno Haible  <bruno@clisp.org>
20966
20967         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
20968         (VASNPRINTF): Return a string of length > INT_MAX without failing.
20969         * lib/vasprintf.c: Include errno.h, limits.h.
20970         (EOVERFLOW): New fallback definition.
20971         (vasprintf): Test here whether the string length is > INT_MAX.
20972         * lib/vsnprintf.c: Include errno.h, limits.h.
20973         (EOVERFLOW): New fallback definition.
20974         (vsnprintf): Fix bug when generated string was too long for the buffer.
20975         Test here whether the string length is > INT_MAX.
20976
20977 2006-08-28  Bruno Haible  <bruno@clisp.org>
20978
20979         * lib/inttypes_.h (SCNX*): Remove definitions.
20980         Reported by Eric Blake.
20981
20982 2006-08-28  Bruno Haible  <bruno@clisp.org>
20983
20984         * lib/c-strstr.h: New file, from GNU gettext.
20985         * lib/c-strstr.c: New file, from GNU gettext.
20986
20987 2006-08-28  Bruno Haible  <bruno@clisp.org>
20988
20989         * gnulib-tool: Reorder some statements.
20990
20991 2006-08-28  Bruno Haible  <bruno@clisp.org>
20992
20993         * gnulib-tool: New option --makefile-name.
20994         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
20995         $makefile_name.
20996         (func_import): Write $makefile_name to the cache file, and read it from
20997         there unless explicitly specified. Use $makefile_name as file name
20998         instead of Makefile.am. Adjust the recommendations accordingly.
20999
21000 2006-08-28  Bruno Haible  <bruno@clisp.org>
21001
21002         * gnulib-tool (func_verify_module): Check against misapplying patch.
21003
21004 2006-08-28  Bruno Haible  <bruno@clisp.org>
21005
21006         * gnulib-tool (func_relativize, func_relconcat): New functions.
21007         Give an error if --local-dir is given with --update.
21008         Remove trailing slashes from $local_gnulib_dir.
21009         (func_import): Store the relativized $local_gnulib_dir in
21010         gnulib-cache.m4, and read it from there if not specified explicitly.
21011
21012 2006-08-28  Bruno Haible  <bruno@clisp.org>
21013
21014         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
21015         is the current directory. Respect also $local_gnulib_dir.
21016
21017 2006-08-28  Bruno Haible  <bruno@clisp.org>
21018             Simon Josefsson  <jas@extundo.com>
21019
21020         BeOS portability.
21021         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
21022
21023 2006-08-27  Jim Meyering  <jim@meyering.net>
21024
21025         * doc/visibility.texi: Remove duplicate word: "pointer".
21026
21027 2006-08-26  Bruno Haible  <bruno@clisp.org>
21028
21029         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
21030         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
21031         (Makefile.am): Create inttypes.h from inttypes_.h.
21032         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
21033
21034         * modules/imaxabs: New file.
21035
21036         * modules/imaxdiv: New file.
21037
21038 2006-08-26  Bruno Haible  <bruno@clisp.org>
21039
21040         * m4/inttypes.m4: New file.
21041         * m4/_inttypes_h.m4: Remove file.
21042         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
21043         PRI_MACROS_BROKEN.
21044         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
21045
21046         * m4/imaxabs.m4: New file.
21047
21048         * m4/imaxdiv.m4: New file.
21049
21050 2006-08-26  Bruno Haible  <bruno@clisp.org>
21051
21052         * lib/inttypes_.h: New file.
21053         * lib/inttypes.h: Remove file.
21054         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
21055
21056         * lib/imaxabs.c: New file.
21057
21058         * lib/imaxdiv.c: New file.
21059
21060 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21061
21062         New config-h module, so that "make" output needn't be cluttered
21063         by -DHAVE_CONFIG_H.
21064         * MODULES.html.sh (Support for building libraries and executables):
21065         Add config-h.
21066         * modules/config-h: New file.
21067         * gnulib-tool (nl, sed_transform_lib_file): New vars.
21068         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
21069         the config-h module is used.
21070
21071         New configmake module, so that "make" output needn't be cluttered
21072         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
21073         * MODULES.html.sh (Support for building libraries and executables):
21074         Add configmake.
21075         * modules/configmake: New file.
21076
21077 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21078
21079         * m4/config-h.m4: New file.
21080
21081 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21082
21083         * config/srclist.txt: Add elisp-comp.
21084
21085 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21086
21087         * MODULES.html.sh (Support for building libraries and executables):
21088         Add elisp-comp.
21089         * build-aux/elisp-comp: New file.
21090         * modules/elisp-comp: New file.
21091
21092 2006-08-24  Bruno Haible  <bruno@clisp.org>
21093
21094         * gnulib-tool (func_create_testdir): Use non-default values of
21095         sourcebase and m4base.
21096
21097 2006-08-24  Bruno Haible  <bruno@clisp.org>
21098
21099         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
21100         HTML structure.
21101
21102 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21103
21104         * modules/openat (Depends-on): Add lchown.
21105
21106 2006-08-23  Bruno Haible  <bruno@clisp.org>
21107
21108         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
21109         of gl_LOCK_EARLY instead of gl_LOCK.
21110
21111 2006-08-23  Bruno Haible  <bruno@clisp.org>
21112
21113         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
21114         on OSF/1 to no.
21115         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
21116
21117 2006-08-23  Bruno Haible  <bruno@clisp.org>
21118
21119         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
21120         as unusable.
21121
21122         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
21123         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
21124         (gl_LOCK): New macro.
21125
21126 2006-08-22  Simon Josefsson  <jas@extundo.com>
21127
21128         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
21129         to md5 module.
21130
21131 2006-08-22  Simon Josefsson  <jas@extundo.com>
21132
21133         * MODULES.html.sh: Add "Support for maintaining and release
21134         projects".
21135
21136         * build-aux/gnupload: New file, from coreutils.
21137
21138 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
21139
21140         Avoid the need for AC_LIBSOURCES in m4 macros.
21141         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
21142         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
21143         * modules/check-version (EXTRA_DIST): Add check-version.h.
21144         * modules/crc (EXTRA_DIST): Add crc.h.
21145         * modules/des (EXTRA_DIST): Add des.h.
21146         * modules/gc (EXTRA_DIST): Add gc.h.
21147         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
21148         * modules/getline (EXTRA_DIST): Add getline.h.
21149         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
21150         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
21151         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
21152         * modules/md2 (EXTRA_DIST): Add md2.h.
21153         * modules/md4 (EXTRA_DIST): Add md4.h.
21154         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
21155         * modules/read-file (EXTRA_DIST): Add read-file.h.
21156         * modules/readline (EXTRA_DIST): Add readline.h.
21157         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
21158         rijndael-api-fst.h.
21159
21160 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
21161
21162         * m4/rijndael.m4 (gl_ARCFOUR):
21163         * m4/arctwo.m4 (gl_ARCTWO):
21164         * m4/check-version.m4 (gl_CHECK_VERSION):
21165         * m4/crc.m4 (gl_CRC):
21166         * m4/des.m4 (gl_DES):
21167         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
21168         * m4/gc.m4 (gl_GC):
21169         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
21170         * m4/getline.m4 (gl_FUNC_GETLINE):
21171         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
21172         * m4/hmac-md5.m4 (gl_HMAC_MD5):
21173         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
21174         * m4/md2.m4 (gl_MD2):
21175         * m4/md4.m4 (gl_MD4):
21176         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
21177         * m4/read-file.m4 (gl_FUNC_READ_FILE):
21178         * m4/readline.m4 (gl_FUNC_READLINE):
21179         * m4/rijndael.m4 (gl_RIJNDAEL):
21180         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
21181         to get the necessary .h files and whatnot.
21182
21183 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
21184
21185         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
21186         gnulib rather than the other way around.
21187         * config/srclistvars.sh (COREUTILS): Remove.
21188
21189 2006-08-22  Jim Meyering  <jim@meyering.net>
21190
21191         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
21192
21193         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
21194
21195 2006-08-22  Eric Blake  <ebb9@byu.net>
21196
21197         * modules/regexprops-generic: New file.
21198         * MODULES.html.sh (Support for building documentation): List it.
21199
21200 2006-08-22  Eric Blake  <ebb9@byu.net>
21201
21202         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
21203         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
21204         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
21205         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
21206
21207 2006-08-22  Bruno Haible  <bruno@clisp.org>
21208
21209         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
21210         and lib_LTLIBRARIES like the other lib_* variables.
21211
21212 2006-08-22  Bruno Haible  <bruno@clisp.org>
21213
21214         * build-aux/x-to-1.in: New file, from GNU gettext.
21215
21216 2006-08-22  Bruno Haible  <bruno@clisp.org>
21217
21218         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
21219         <utmpx.h> exists.
21220
21221 2006-08-22  Bruno Haible  <bruno@clisp.org>
21222
21223         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
21224         <utmpx.h> exists.
21225
21226 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
21227
21228         BeOS portability.
21229         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
21230         exist.
21231         Problem reported by Bruno Haible.
21232
21233 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
21234
21235         Avoid the need for AC_LIBSOURCES in m4 macros.
21236         * modules/acl (EXTRA_DIST): Add acl.h.
21237         * modules/argmatch (Files): Add m4/argmatch.m4.
21238         (configure.ac): Add gl_ARGMATCH.
21239         (EXTRA_DIST): Renamed from lib_SOURCES, for
21240         consistency with the other modules.  Remove argmatch.c.
21241         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
21242         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
21243         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
21244         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
21245         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
21246         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
21247         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
21248         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
21249         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
21250         * modules/closeout (EXTRA_DIST): Add closeout.h.
21251         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
21252         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
21253         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
21254         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
21255         dirname.h; remove basename.c and stripslash.c.
21256         * modules/exclude (EXTRA_DIST): Add exclude.h.
21257         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
21258         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
21259         * modules/file-type (EXTRA_DIST): Add file-type.h.
21260         * modules/filemode (EXTRA_DIST): Add filemode.h.
21261         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
21262         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
21263         * modules/fpending (EXTRA_DIST): Add __fpending.h.
21264         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
21265         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
21266         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
21267         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
21268         * modules/getdate (EXTRA_DIST): Add getdate.c.
21269         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
21270         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
21271         * modules/getpass (EXTRA_DIST): Add getpass.h.
21272         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
21273         * modules/group-member (EXTRA_DIST): Add group-member.h.
21274         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
21275         * modules/hash (EXTRA_DIST): Add hash.h.
21276         * modules/human (EXTRA_DIST): Add human.h.
21277         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
21278         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
21279         * modules/lchown (EXTRA_DIST): Add lchown.h.
21280         * modules/long-options (EXTRA_DIST): Add long-options.h.
21281         * modules/lstat (EXTRA_DIST): Add lstat.h.
21282         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
21283         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
21284         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
21285         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
21286         * modules/memxor (EXTRA_DIST): Add memxor.h.
21287         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
21288         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
21289         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
21290         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
21291         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
21292         * modules/physmem (EXTRA_DIST): Add physmem.h.
21293         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
21294         * modules/posixver (EXTRA_DIST): Add posixver.h.
21295         * modules/quote (EXTRA_DIST): Add quote.h.
21296         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
21297         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
21298         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
21299         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
21300         regex_internal.h regexec.c.
21301         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
21302         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
21303         * modules/same (EXTRA_DIST): Add same.h.
21304         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
21305         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
21306         * modules/savedir (EXTRA_DIST): Add savedir.h.
21307         * modules/sha1 (EXTRA_DIST): Add sha1.h.
21308         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
21309         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
21310         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
21311         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
21312         * modules/strdup (EXTRA_DIST): Add strdup.h.
21313         * modules/strftime (EXTRA_DIST): Add strftime.h.
21314         * modules/strndup (EXTRA_DIST): Add strndup.h.
21315         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
21316         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
21317         * modules/time_r (EXTRA_DIST): Add time_r.h.
21318         * modules/timespec (EXTRA_DIST): Add timespec.h.
21319         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
21320         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
21321         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
21322         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
21323         * modules/userspec (EXTRA_DIST): Add userspec.h.
21324         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
21325         * modules/utimens (EXTRA_DIST): Add utimens.h.
21326         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
21327         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
21328         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
21329         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
21330         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
21331         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
21332         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
21333         * modules/yesno (EXTRA_DIST): Add yesno.h.
21334
21335 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
21336
21337         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
21338
21339         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
21340         * m4/dev-ino.m4, same-inode.m4: Remove.
21341
21342         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
21343         * m4/acl.m4 (AC_FUNC_ACL):
21344         * m4/backupfile.m4 (gl_BACKUPFILE):
21345         * m4/c-strtod.m4 (gl_C99_STRTOLD):
21346         * m4/canon-host.m4 (gl_CANON_HOST):
21347         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
21348         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
21349         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
21350         * m4/cloexec.m4 (gl_CLOEXEC):
21351         * m4/close-stream.m4 (gl_CLOSE_STREAM):
21352         * m4/closeout.m4 (gl_CLOSEOUT):
21353         * m4/dirfd.m4 (gl_FUNC_DIRFD):
21354         * m4/dirname.m4 (gl_DIRNAME):
21355         * m4/exclude.m4 (gl_EXCLUDE):
21356         * m4/exitfail.m4 (gl_EXITFAIL):
21357         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
21358         * m4/file-type.m4 (gl_FILE_TYPE):
21359         * m4/filemode.m4 (gl_FILEMODE):
21360         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
21361         * m4/fpending.m4 (gl_FUNC_FPENDING):
21362         * m4/fprintftime.m4 (gl_FPRINTFTIME):
21363         * m4/fts.m4 (gl_FUNC_FTS):
21364         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
21365         * m4/getdate.m4 (gl_GETDATE):
21366         * m4/gethrxtime.m4 (gl_GETHRXTIME):
21367         * m4/getpagesize.m4 (gl_GETPAGESIZE):
21368         * m4/getpass.m4 (gl_FUNC_GETPASS):
21369         * m4/gettime.m4 (gl_GETTIME):
21370         * m4/getugroups.m4 (gl_GETUGROUPS):
21371         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
21372         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
21373         * m4/hard-locale.m4 (gl_HARD_LOCALE):
21374         * m4/hash.m4 (gl_HASH):
21375         * m4/idcache.m4 (gl_IDCACHE):
21376         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
21377         * m4/lchown.m4 (gl_FUNC_LCHOWN):
21378         * m4/long-options.m4 (gl_LONG_OPTIONS):
21379         * m4/lstat.m4 (gl_FUNC_LSTAT):
21380         * m4/md5.m4 (gl_MD5):
21381         * m4/memcasecmp.m4 (gl_MEMCASECMP):
21382         * m4/memcoll.m4 (gl_MEMCOLL):
21383         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
21384         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
21385         * m4/memxor.m4 (gl_MEMXOR):
21386         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
21387         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
21388         * m4/modechange.m4 (gl_MODECHANGE):
21389         * m4/mountlist.m4 (gl_MOUNTLIST):
21390         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
21391         * m4/openat.m4 (gl_FUNC_OPENAT):
21392         * m4/pathmax.m4 (gl_PATHMAX):
21393         * m4/physmem.m4 (gl_PHYSMEM):
21394         * m4/posixtm.m4 (gl_POSIXTM):
21395         * m4/posixver.m4 (gl_POSIXVER):
21396         * m4/quote.m4 (gl_QUOTE):
21397         * m4/quotearg.m4 (gl_QUOTEARG):
21398         * m4/readtokens.m4 (gl_READTOKENS):
21399         * m4/readutmp.m4 (gl_READUTMP):
21400         * m4/regex.m4 (gl_REGEX):
21401         * m4/safe-read.m4 (gl_SAFE_READ):
21402         * m4/safe-write.m4 (gl_SAFE_WRITE):
21403         * m4/same.m4 (gl_SAME):
21404         * m4/save-cwd.m4 (gl_SAVE_CWD):
21405         * m4/savedir.m4 (gl_SAVEDIR):
21406         * m4/settime.m4 (gl_SETTIME):
21407         * m4/sha1.m4 (gl_SHA1):
21408         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
21409         * m4/stat-macros.m4 (gl_STAT_MACROS):
21410         * m4/stat-time.m4 (gl_STAT_TIME):
21411         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
21412         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
21413         * m4/strdup.m4 (gl_FUNC_STRDUP):
21414         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
21415         * m4/strndup.m4 (gl_FUNC_STRNDUP):
21416         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
21417         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
21418         * m4/time_r.m4 (gl_TIME_R):
21419         * m4/timespec.m4 (gl_TIMESPEC):
21420         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
21421         * m4/unlinkdir.m4 (gl_UNLINKDIR):
21422         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
21423         * m4/userspec.m4 (gl_USERSPEC):
21424         * m4/utimecmp.m4 (gl_UTIMECMP):
21425         * m4/utimens.m4 (gl_UTIMENS):
21426         * m4/xalloc.m4 (gl_XALLOC):
21427         * m4/xgetcwd.m4 (gl_XGETCWD):
21428         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
21429         * m4/xreadlink.m4 (gl_XREADLINK):
21430         * m4/xstrtod.m4 (gl_XSTRTOD):
21431         * m4/yesno.m4 (gl_YESNO):
21432         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
21433         to get the necessary .h files and whatnot.
21434
21435 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
21436             Bruno Haible  <bruno@clisp.org>
21437
21438         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
21439         /bin/sh understanding of '!' conditional negation.
21440
21441 2006-08-21  Jim Meyering  <jim@meyering.net>
21442
21443         * modules/openat (Depends-on): Really alphabetize.
21444
21445         * modules/acl (Depends-on): Add error and quote.
21446
21447         * check-module (find_included_lib_files): Add at-func.c to the
21448         ok-to-include-more-than-once white list.
21449
21450         * modules/openat (Depends-on): Add lstat.  Alphabetize.
21451
21452 2006-08-21  Bruno Haible  <bruno@clisp.org>
21453
21454         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
21455         Emit a pkgdata_DATA variable only if some snippets add contents to it.
21456         Reported by Martin Lambers <marlam@marlam.de>.
21457
21458 2006-08-21  Bruno Haible  <bruno@clisp.org>
21459
21460         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
21461         specify an installation location, don't emit a noinst_LIBRARIES or
21462         noinst_LTLIBRARIES assignment.
21463
21464 2006-08-21  Bruno Haible  <bruno@clisp.org>
21465
21466         BeOS portability.
21467         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
21468         BeOS has mbrtowc() but no <wctype.h>.
21469
21470 2006-08-21  Bruno Haible  <bruno@clisp.org>
21471
21472         BeOS portability.
21473         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
21474         exist.
21475
21476 2006-08-21  Bruno Haible  <bruno@clisp.org>
21477
21478         BeOS portability.
21479         * lib/mbchar.h: Include <wctype.h> only if it exists.
21480
21481 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21482
21483         Remove files that are no longer needed by their respective modules.
21484         * m4/obstack.m4: Remove.
21485         * m4/strerror_r.m4: Remove.
21486         * m4/uint32_t.m4: Remove.
21487         * m4/uintptr_t.m4: Remove.
21488         * m4/ullong_max.m4: Remove.
21489         * m4/xstrtoimax.m4: Remove.
21490         * m4/xstrtoumax.m4: Remove.
21491
21492         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
21493         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
21494         dependencies now capture this.
21495
21496         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
21497         Do not use AC_LIBSOURCES, since gnulib modules now do this.
21498         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
21499         * m4/human.m4 (gl_HUMAN): Likewise.
21500         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
21501         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
21502
21503         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
21504
21505         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
21506         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
21507         stdint.
21508         * m4/human.m4 (gl_HUMAN): Likewise.
21509         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
21510         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
21511         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
21512         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
21513         * m4/xstrtol (gl_XSTRTOL): Likewise.
21514
21515         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
21516         AC_TYPE_LONG_LONG_INT.
21517         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
21518         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
21519         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
21520         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
21521
21522         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
21523         on stdbool.
21524
21525         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
21526         (gl_PREREQ_XSTRTOUL): Remove.
21527
21528         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
21529
21530         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
21531         mode.
21532
21533 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21534
21535         Add and change modules to make it easier for coreutils to use
21536         gnulib-tool.
21537         * modules/backupfile (Files): Remove m4/d-ino.m4.
21538         (Depends-on): Add d-ino.
21539         * modules/cycle-check (Depends-on): Add stdint.
21540         (lib_SOURCES): Add cycle-check.h.
21541         * modules/d-ino: New module.
21542         * modules/d-type: New module.
21543         * modules/error (Files): Remove m4/strerror_r.m4.
21544         * modules/filemode (Files): Add m4/st_dm_mode.m4.
21545         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
21546         m4/inttypes_h.m4, m4/uintmax_t.m4.
21547         (Depends-on): Add stdint.
21548         (lib_SOURCES): Add fsusage.h.
21549         * modules/getcwd (Files): Remove d-ino.m4.
21550         (Depends-on): Add d-ino.
21551         * modules/getndelim2 (Depends-on): Add stdint.
21552         * modules/glob (Files): Remove m4/d-type.m4.
21553         (Depends-on): Add d-type.
21554         * modules/host-os: New module.
21555         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
21556         m4/inttypes_h.m4, m4/uintmax_t.m4.
21557         * Depends-on: Add stdint.
21558         (lib_SOURCES): Add human.h.
21559         * modules/inttostr (Files): Remove m4/intmax_t.m4,
21560         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
21561         m4/uintmax_t.m4, m4/ulonglong.m4.
21562         (Depends-on): Add stdint.
21563         (EXTRA_DIST): Add inttostr.h.
21564         * modules/lchmod: New module.
21565         * modules/link-follow: New module.
21566         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
21567         (Depends-on): Add lchmod.
21568         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
21569         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
21570         (Depends-on): Add stdint.
21571         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
21572         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
21573         (Depends-on): Add stdint.
21574         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
21575         * modules/perl: New module.
21576         * modules/regex (Depends-on): Add stdint.
21577         * modules/rmdir-errno: New module.
21578         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
21579         m4/intmax_t.m4.
21580         (Depends-on): Add stdint.
21581         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
21582         m4/uintmax_t.m4.
21583         (Depends-on): Add stdint.
21584         * modules/unlink-busy: New module.
21585         * modules/utimecmp (Depends-on): Add stdint.
21586         * modules/uptime: New module.
21587         * modules/winsz-ioctl: New module.
21588         * modules/winsz-termios: New module.
21589         * modules/xnanosleep (Depends-on): Add nanosleep.
21590         * modules/ullong_max: Remove.
21591         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
21592         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
21593         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
21594         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
21595         (Depends-on): Add inttypes.
21596         (lib_SOURCES): Add xstrtol.h.
21597         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
21598         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
21599         * MODULES.html.sh: Move 'assert' into the assert section.
21600         Move 'dummy' into the linking section.
21601         Remove ullong_max.
21602         Add section for compatibility checks for POSIX:2001 functions,
21603         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
21604         winsz-ioctl, and winsz-termios into it.
21605         Add lchmod.
21606         Add top-level Misc section and put host-os, perl, and uptime
21607         into it.
21608
21609 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
21610
21611         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
21612         now assume the stdint module.  Do not include inttypes.h.
21613         * lib/fsusage.h: Likewise.
21614         * lib/getndelim2.c: Likewise.
21615         * lib/human.h: Likewise.
21616         * lib/inttostr.h: Likewise.
21617         * lib/obstack.c: Likewise.
21618         * lib/regex_internal.h: Likewise.
21619         * lib/tempname.c: Likewise.
21620         * lib/utimecmp.c: Likewise.
21621         * lib/xstrtol.h: Likewise.
21622
21623         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
21624
21625         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
21626         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
21627         * lib/xtime.h: Likewise.
21628
21629 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21630
21631         * modules/openat (Files): Add lib/fchmodat.c.
21632         Fixes problem reported by Jay Youngman.
21633
21634 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
21635
21636         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
21637         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
21638
21639 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
21640             Bruno Haible  <bruno@clisp.org>
21641
21642         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
21643         and is a script that invokes bison. Tighten the code. Add comments.
21644
21645 2006-08-18  Jim Meyering  <jim@meyering.net>
21646
21647         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
21648         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
21649         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
21650         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
21651
21652 2006-08-18  Bruno Haible  <bruno@clisp.org>
21653
21654         * modules/bison-i18n: New file.
21655         * MODULES.html.sh (Internationalization functions): Add it.
21656
21657 2006-08-18  Bruno Haible  <bruno@clisp.org>
21658
21659         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
21660         sys/statvfs.h. When getmntinfo was found, check its declaration and
21661         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
21662
21663 2006-08-18  Bruno Haible  <bruno@clisp.org>
21664
21665         * m4/bison-i18n.m4: New file, from bison.
21666
21667 2006-08-18  Bruno Haible  <bruno@clisp.org>
21668
21669         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
21670         (ME_DUMMY): Treat "kernfs" as a dummy.
21671         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
21672
21673 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
21674
21675         Update from coreutils.
21676
21677         2006-08-15  Jim Meyering  <jim@meyering.net>
21678
21679         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
21680
21681         2006-01-17  Jim Meyering  <jim@meyering.net>
21682
21683         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
21684
21685         2006-01-11  Jim Meyering  <jim@meyering.net>
21686
21687         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
21688         Check for the lchmod function.
21689
21690 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
21691
21692         Update from coreutils.
21693
21694         * lib/__fpending.h: Add copyright notice.
21695         * lib/fprintftime.h: Likewise.
21696         * lib/savedir.c: Use (C) in copyright notice.
21697         * lib/savedir.h: Likewise.
21698
21699         2006-08-15  Jim Meyering  <jim@meyering.net>
21700
21701         * lib/at-func.c: New file, with the logic of all emulated at-functions.
21702         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
21703         in support of the EXPECTED_ERRNO macro.
21704         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
21705         definitions.  Instead, define the appropriate symbols and include
21706         "at-func.c".
21707         * lib/mkdirat.c (mkdirat): Likewise.
21708         * lib/fchmodat.c (fchmodat): Likewise.
21709         (ENOSYS): Remove definition.
21710         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
21711         it.  Don't include "unistd--.h" -- it wasn't ever used.
21712
21713         2006-01-17  Jim Meyering  <jim@meyering.net>
21714
21715         Rewrite fts.c not to change the current working directory,
21716         by using openat, fstatat, fdopendir, etc..
21717
21718         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
21719         (HAVE_OPENAT_SUPPORT): Define.
21720         [_LIBC] (fchdir): Don't undef or define; no longer used.
21721         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
21722         Now, this `function' always succeeds, and consumes its file descriptor
21723         parameter -- so callers must not close such FDs.  Update callers.
21724         (diropen_fd, opendirat, cwd_advance_fd): New functions.
21725         (diropen): Add parameter, SP.  Adjust all callers.
21726         Implement using diropen_fd, rather than open.
21727         (fts_open): Initialize new member, fts_cwd_fd.
21728         Remove fts_rft-setting code.
21729         (fts_close): Close fts_cwd_fd, if necessary.
21730         (__opendir2): Define in terms of opendir or opendirat,
21731         depending on whether the FST_NOCHDIR flag is set.
21732         (fts_build): Since fts_safe_changedir consumes its FD, and since
21733         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
21734         and close the dup'd file descriptor upon failure.
21735         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
21736         (fts_safe_changedir): Tweak semantics to reflect that this function
21737         now calls cwd_advance_fd and hence consumes its FD argument.
21738         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
21739         [struct FTS] (fts_rft): Remove now-unused member.
21740         [struct FTS] (fts_cycle.state): Improve comment.
21741
21742         * lib/openat.c (openat_needs_fchdir): New function.
21743         * lib/openat.h (openat_needs_fchdir): Declare it.
21744
21745 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
21746
21747         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
21748         Problem and fix reported by Pádraig Brady in
21749         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
21750
21751 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21752
21753         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
21754
21755 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21756
21757         * lib/memcoll.c (memcoll): Optimize for the common case where the
21758         arguments are bytewise equal.
21759
21760 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21761
21762         * doc/regexprops-generic.texi: Add a copyright notice.
21763
21764 2006-08-15  Bruno Haible  <bruno@clisp.org>
21765
21766         * modules/tmpdir (License): Change to LGPL.
21767
21768 2006-08-15  Bruno Haible  <bruno@clisp.org>
21769
21770         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
21771         module.
21772
21773 2006-08-14  Simon Josefsson  <jas@extundo.com>
21774
21775         * config/srclist.txt: Add gnupload.
21776
21777 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
21778
21779         Change copyright notice from LGPL 2 to GPL 2, since that's the
21780         standard form used in the gnulib repository.
21781         * tests/test-lock.c: Likewise.
21782         * tests/test-stdint.c: Likewise.
21783         * tests/test-tls.c: Likewise.
21784
21785         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
21786         prelude-manager.  User shorter URLs for GNU projects, without '?'.
21787         Add copyright notice.
21788
21789         * check-module: Add copyright notice.  Output a copyright
21790         notice if "--version" is specified.
21791         * modules/COPYING: New file.
21792         * tests/test-getaddrinfo.c: Add copyright notice.
21793         * tests/test-verify.c: Likewise.
21794
21795 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
21796
21797         Change copyright notice from LGPL 2 to GPL 2, since that's the
21798         standard form used in the gnulib repository.
21799         * lib/lock.c: LGPL -> GPL.
21800         * lib/lock.h: Likewise.
21801         * lib/strnlen1.c: Likewise.
21802         * lib/strnlen1.h: Likewise.
21803         * lib/tls.c: Likewise.
21804         * lib/tls.h: Likewise.
21805         * lib/tmpdir.c: Likewise.
21806
21807         * lib/TODO: Remove; this belongs only in coreutils.
21808
21809 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
21810
21811         Add copyright notices to long-enough files that lack them, since
21812         otherwise the files aren't clearly free.  Use the same notice that
21813         getdate.texi already uses.
21814         * doc/alloca-opt.texi: Add copyright notice.
21815         * doc/alloca.texi: Likewise.
21816         * doc/ctime.texi: Likewise.
21817         * doc/functions.texi: Likewise.
21818         * doc/gcd.texi: Likewise.
21819         * doc/gnulib-tool.texi: Likewise.
21820         * doc/inet_ntoa.texi: Likewise.
21821         * doc/visibility.texi: Likewise.
21822
21823         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
21824         * doc/quote.texi: Add copyright notice.
21825
21826         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
21827         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
21828         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
21829         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
21830         is now obsolete, and give a pointer to the Sun list.
21831         Add copyright notice.
21832
21833 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
21834
21835         * config/srclistvars.sh: Add copyright notice.
21836
21837 2006-08-14  Eric Blake  <ebb9@byu.net>
21838
21839         Import the following change from libc:
21840
21841         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
21842
21843         Upstream bug 2997.
21844         * lib/misc/error.c: Add space between program name and message if file
21845         name is missing.
21846
21847 2006-08-12  Karl Berry  <karl@gnu.org>
21848
21849         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
21850         remove, these originate in gnulib now.
21851
21852 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21853
21854         * doc/Makefile (standards.info standards.html standards.dvi):
21855         Also depend on make-stds.texi.
21856
21857 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
21858
21859         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
21860         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
21861
21862         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
21863         in wchar_t.  Problem reported by Eric Blake.
21864
21865         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
21866         LEN is smaller than SIZE.  Suggested by Bruno Haible.
21867         Also, help the compiler to keep LEN in a register.
21868
21869 2006-08-11  Eric Blake  <ebb9@byu.net>
21870
21871         * users.txt: Sort.  Add tar.
21872
21873 2006-08-11  Bruno Haible  <bruno@clisp.org>
21874
21875         * users.txt: New file.
21876
21877 2006-08-11  Bruno Haible  <bruno@clisp.org>
21878
21879         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
21880         before <wchar.h>. Needed for OSF/1 and BSD/OS.
21881
21882 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
21883
21884         * modules/snprintf (Depends-on): Remove minmax.
21885         (Maintainer): Add self and Bruno.
21886
21887 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
21888
21889         * lib/.cppi-disable: Add snprintf.h, socket_.h.
21890         * lib/snprintf.c: Include <errno.h> and <limits.h>.
21891         (EOVERFLOW): Define if the system does not.
21892         Do not include "minmax.h"; it wasn't used.
21893         (snprintf): Don't assume size_t promotes to an unsigned type.
21894         Fix bug when generated string was too long for the buffer: the
21895         buffer's contents are supposed to be the initial prefix of the
21896         output.  Don't assume vasnprintf returns EOVERFLOW if the size
21897         exceeds INT_MAX; do the check ourselves.
21898
21899         Import the following changes from libc:
21900
21901         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
21902
21903         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
21904         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
21905         set wc to the byte which couldn't be converted.
21906         (re_string_reconstruct): Don't clear valid_raw_len before calling
21907         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
21908         tip_context using re_string_context_at.
21909
21910         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
21911
21912         * lib/posix/regex.h: g++ still cannot handled [restrict].
21913
21914         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
21915
21916         * lib/posix/regex.h: Remove special handling for VMS.
21917
21918 2006-08-10  Jim Meyering  <jim@meyering.net>
21919
21920         * modules/same-inode: New module.
21921         * modules/dev-ino: New module.
21922         * modules/cycle-check: Depend on these modules, rather than simply
21923         including their .h files.
21924         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
21925         required via m4/cycle-check.m4.
21926         * modules/same: Depend on new same-inode module, rather than
21927         including same-inode.h.
21928         * modules/chdir-safer: New file.
21929
21930         * modules/chown (Depends-on): Add stat-macros.
21931
21932 2006-08-10  Jim Meyering  <jim@meyering.net>
21933
21934         * m4/cycle-check.m4: New file.
21935         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
21936         * m4/dev-ino.m4, m4/same-inode.m4: New files.
21937
21938 2006-08-10  Eric Blake  <ebb9@byu.net>
21939
21940         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
21941         in from original proposal.
21942
21943 2006-08-10  Eric Blake  <ebb9@byu.net>
21944         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
21945
21946         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
21947         namespace.
21948
21949 2006-08-10  Bruno Haible  <bruno@clisp.org>
21950
21951         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
21952         as well.
21953
21954 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
21955
21956         Sync from coreutils.
21957
21958         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
21959
21960         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
21961         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
21962
21963 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
21964
21965         * modules/restrict: Remove; no longer needed now that we assume
21966         Autoconf 2.59 or later.
21967         * MODULES.html.sh: Remove 'restrict'.
21968         * modules/argp (Depends-on): Remove 'restrict'.
21969         * modules/base64 (Depends-on): Likewise.
21970         * modules/gc (Depends-on): Likewise.
21971         * modules/getaddrinfo (Depends-on): Likewise.
21972         * modules/glob (Depends-on): Likewise.
21973         * modules/inet_ntop (Depends-on): Likewise.
21974         * modules/inet_pton (Depends-on): Likewise.
21975         * modules/memxor (Depends-on): Likewise.
21976         * modules/regex (Depends-on): Likewise.
21977         * modules/strtok_r (Depends-on): Likewise.
21978         * modules/time_r (Depends-on): Likewise.
21979
21980 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
21981
21982         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
21983         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
21984         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
21985         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
21986         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
21987         * m4/memxor.m4 (gl_MEMXOR): Likewise.
21988         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
21989         gl_C_RESTRICT replaced by AC_C_RESTRICT.
21990
21991         Merge from coreutils.
21992         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
21993         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
21994         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
21995         * m4/time_r.m4 (gl_TIME_R): Likewise.
21996
21997 2006-08-09  Karl Berry  <karl@gnu.org>
21998
21999         * config/srclist.txt: no more gettext-tools, per Bruno.
22000
22001 2006-08-08  Eric Blake  <ebb9@byu.net>
22002
22003         * modules/verror: New module.
22004         * MODULES.html.sh: Document it.
22005
22006 2006-08-08  Eric Blake  <ebb9@byu.net>
22007
22008         * lib/verror.h, lib/verror.c: New files.
22009
22010 2006-08-08  Eric Blake  <ebb9@byu.net>
22011
22012         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
22013         verror_at_line output complies with GNU Coding Standards even when
22014         file is NULL.
22015
22016 2006-08-07  Bruno Haible  <bruno@clisp.org>
22017
22018         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
22019         versions of AIX.
22020         Reported by Ralf Wildenhues.
22021
22022 2006-08-07  Bruno Haible  <bruno@clisp.org>
22023
22024         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
22025         in an AC_DEFUN. Needed so that the autoconf snippets can use
22026         AC_REQUIRE.
22027
22028 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22029
22030         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
22031         Initialize pkgdata_DATA.
22032         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
22033         overriding it.
22034
22035 2006-08-06  Eric Blake  <ebb9@byu.net>
22036
22037         * lib/error.h: Fold in some upstream changes from glibc.
22038         * lib/error.c: Likewise.
22039
22040 2006-08-04  Bruno Haible  <bruno@clisp.org>
22041
22042         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
22043         Make the mostlyclean-local rule depend on mostlyclean-generic.
22044         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
22045
22046 2006-07-31  Bruno Haible  <bruno@clisp.org>
22047
22048         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
22049         <stdlib.h>, <string.h>.
22050
22051 2006-07-30  Bruno Haible  <bruno@clisp.org>
22052
22053         * modules/readlink (License): Change to LGPL.
22054
22055 2006-07-30  Bruno Haible  <bruno@clisp.org>
22056
22057         * modules/javaversion (Makefile.am): Distribute javaversion.java and
22058         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
22059         set PKGDATADIR to point to it.
22060
22061 2006-07-30  Bruno Haible  <bruno@clisp.org>
22062
22063         * modules/csharpexec (configure.ac): Comment out macro invocation.
22064         * modules/javaexec (configure.ac): Likewise.
22065         * modules/javacomp-script (configure.ac): Likewise.
22066
22067         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
22068
22069 2006-07-30  Bruno Haible  <bruno@clisp.org>
22070
22071         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
22072         linked-list.
22073
22074 2006-07-30  Bruno Haible  <bruno@clisp.org>
22075
22076         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
22077
22078 2006-07-30  Bruno Haible  <bruno@clisp.org>
22079
22080         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
22081         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
22082         get removed.
22083
22084 2006-07-29  Bruno Haible  <bruno@clisp.org>
22085
22086         Make it possible for gnulib-tool to work with locally modified or
22087         augmented gnulib repositories.
22088         * gnulib-tool (func_usage): Document --local-dir option.
22089         (local_gnulib_dir): New variable.
22090         Handle --local-dir option.
22091         (func_lookup_file): New function.
22092         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
22093         (func_get_description, func_get_filelist, func_get_description,
22094         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
22095         func_get_automake_snippet, func_get_include_directive,
22096         func_get_license, func_get_maintainer): Use func_lookup_file.
22097         (func_import, func_create_testdir): Use func_lookup_file.
22098
22099 2006-07-29  Bruno Haible  <bruno@clisp.org>
22100
22101         * modules/setenv (Depends-on): Add unistd.
22102
22103 2006-07-29  Bruno Haible  <bruno@clisp.org>
22104
22105         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
22106
22107 2006-07-29  Bruno Haible  <bruno@clisp.org>
22108
22109         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
22110
22111 2006-07-29  Bruno Haible  <bruno@clisp.org>
22112
22113         * gnulib-tool (import, update): If there is no Makefile.am, look at
22114         aclocal.m4, instead of bailing out.
22115
22116 2006-07-29  Bruno Haible  <bruno@clisp.org>
22117
22118         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
22119         Categorize the options by when they are useful.
22120
22121 2006-07-29  Bruno Haible  <bruno@clisp.org>
22122
22123         * gnulib-tool (func_usage): Document option --no-libtool.
22124         Handle option --no-libtool.
22125         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
22126         for changed semantics of $libtool variable.
22127         (func_import): Likewise. If libtool is not used, show this through
22128         an option --no-libtool.
22129         (func_create_testdir): Update.
22130
22131 2006-07-29  Bruno Haible  <bruno@clisp.org>
22132
22133         * gnulib-tool (func_import): Extend error message about missing
22134         --doc-base.
22135
22136 2006-07-29  Bruno Haible  <bruno@clisp.org>
22137
22138         * gnulib-tool (func_import): Don't create the $docbase directory if
22139         there is no file to store there.
22140
22141 2006-07-29  Bruno Haible  <bruno@clisp.org>
22142
22143         * gnulib-tool (autoconf_minversion): If a --dir option is given and
22144         relevant, look for configure.ac there, not in the current directory.
22145         Also use a simple search for AC_PREREQ, not "autoconf --trace".
22146
22147 2006-07-29  Bruno Haible  <bruno@clisp.org>
22148
22149         * gnulib-tool (SORT): New variable.
22150         (func_usage): Undocument --assume-autoconf option.
22151         Remove --assume-autoconf option handling.
22152         (autoconf_minversion): Determine from the contents of configure.ac.
22153         (func_import): Remove autoconf_minversion handling.
22154         Suggested by Eric Blake.
22155
22156 2006-07-29  Bruno Haible  <bruno@clisp.org>
22157
22158         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
22159
22160 2006-07-29  Bruno Haible  <bruno@clisp.org>
22161
22162         * config/srclist.txt (*setenv.[ch]): Remove rules.
22163
22164 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22165
22166         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
22167
22168 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22169
22170         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
22171         arpa/inet.h.
22172
22173 2006-07-28  Simon Josefsson  <jas@extundo.com>
22174
22175         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
22176         * modules/inet_pton (Depends-on): Likewise.
22177
22178 2006-07-28  Simon Josefsson  <jas@extundo.com>
22179
22180         * m4/netinet_in_h.m4: New file.
22181
22182 2006-07-28  Simon Josefsson  <jas@extundo.com>
22183
22184         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
22185         #include's.
22186
22187 2006-07-28  Simon Josefsson  <jas@extundo.com>
22188
22189         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
22190         #include's.
22191
22192 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
22193
22194         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
22195         setgid on directories only if they set these bits.
22196         * lib/modechange.h: Remove obsolete comment about masks.
22197
22198 2006-07-28  Eric Blake  <ebb9@byu.net>
22199
22200         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
22201         macro expansion.
22202
22203 2006-07-28  Bruno Haible  <bruno@clisp.org>
22204
22205         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
22206
22207 2006-07-28  Bruno Haible  <bruno@clisp.org>
22208
22209         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
22210
22211 2006-07-28  Bruno Haible  <bruno@clisp.org>
22212
22213         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
22214         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
22215         Define fallbacks.
22216         Avoids link error on FreeBSD 4.x.
22217         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
22218
22219         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
22220         encoding.
22221         * lib/mbswidth.c (iswcntrl): Likewise.
22222
22223 2006-07-27  Bruno Haible  <bruno@clisp.org>
22224
22225         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
22226         test.
22227
22228 2006-07-27  Bruno Haible  <bruno@clisp.org>
22229
22230         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
22231         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
22232         defined.
22233
22234 2006-07-26  Eric Blake  <ebb9@byu.net>
22235
22236         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
22237
22238 2006-07-26  Eric Blake  <ebb9@byu.net>
22239
22240         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
22241         like mingw that lack mkstemp.
22242         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
22243         avoid compilation warning on mingw.
22244
22245 2006-07-26  Bruno Haible  <bruno@clisp.org>
22246
22247         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
22248         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
22249         INT_FAST*_MIN, INTPTR_MIN.
22250
22251 2006-07-25  Bruno Haible  <bruno@clisp.org>
22252
22253         * modules/version-etc (Depends-on): Add stdarg.
22254
22255 2006-07-25  Bruno Haible  <bruno@clisp.org>
22256
22257         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
22258         complex commands.
22259
22260 2006-07-25  Bruno Haible  <bruno@clisp.org>
22261
22262         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
22263         defined in <stdarg.h> or config.h.
22264
22265 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
22266
22267         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
22268         (gl_STDIO_SAFER): Remove.
22269
22270 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
22271
22272         * MODULES.html.sh (File stream based Input/Output):
22273         Add fopen-safer, tmpfile-safer; remove stdio-safer.
22274         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
22275         * modules/fopen-safer, modules/tmpfile-safer: New files.
22276         * modules/stdio-safer: Remove.
22277
22278 2006-07-24  Bruno Haible  <bruno@clisp.org>
22279
22280         * modules/tmpdir: New file.
22281         * MODULES.html.sh (File system functions): Add it.
22282
22283 2006-07-24  Bruno Haible  <bruno@clisp.org>
22284
22285         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
22286         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
22287
22288 2006-07-24  Bruno Haible  <bruno@clisp.org>
22289
22290         * modules/clean-temp: New file.
22291
22292 2006-07-24  Bruno Haible  <bruno@clisp.org>
22293
22294         * m4/tmpdir.m4: New file, from GNU gettext.
22295
22296 2006-07-24  Bruno Haible  <bruno@clisp.org>
22297
22298         * lib/tmpdir.h: New file, from GNU gettext.
22299         * lib/tmpdir.c: New file, from GNU gettext.
22300
22301 2006-07-24  Bruno Haible  <bruno@clisp.org>
22302
22303         * lib/clean-temp.h: New file, from GNU gettext.
22304         * lib/clean-temp.c: New file, from GNU gettext.
22305
22306 2006-07-23  Eric Blake  <ebb9@byu.net>
22307
22308         * modules/stdio-safer (Files): Add tmpfile-safer.c.
22309         (Depends-on): Add binary-io.
22310
22311 2006-07-23  Eric Blake  <ebb9@byu.net>
22312
22313         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
22314
22315 2006-07-23  Eric Blake  <ebb9@byu.net>
22316
22317         * lib/tmpfile-safer.c: New file.
22318         * lib/stdio-safer.h (fopen_safer): Add prototype.
22319         * lib/stdio--.h (tmpfile): Make safer.
22320
22321 2006-07-23  Bruno Haible  <bruno@clisp.org>
22322
22323         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
22324         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
22325         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
22326         gl_linked_remove_at): Use it.
22327
22328 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22329         and Simon Josefsson <jas@extundo.com>
22330
22331         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
22332
22333         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
22334
22335 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
22336
22337         * modules/close-stream: New file.
22338         * modules/closeout (Description): Make it clear that it exits
22339         with a diagnostic on error.
22340         (Depends-on): Add close-stream.  Remove fpending, stdbool.
22341         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
22342
22343 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
22344
22345         * m4/close-stream.m4: New file.
22346
22347 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
22348
22349         * lib/close-stream.c, lib/close-stream.h: New files.
22350
22351 2006-07-22  Bruno Haible  <bruno@clisp.org>
22352
22353         Merge from GNU gettext 0.15.
22354
22355         2006-05-01  Bruno Haible  <bruno@clisp.org>
22356
22357                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
22358
22359         2006-07-22  Bruno Haible  <bruno@clisp.org>
22360
22361                 * modules/javaversion: New file.
22362                 * MODULES.html.sh (Java): Add javaversion.
22363
22364         2006-03-12  Bruno Haible  <bruno@clisp.org>
22365
22366                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
22367
22368         2005-12-04  Bruno Haible  <bruno@clisp.org>
22369
22370                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
22371                 (untested).
22372
22373         2006-06-21  Bruno Haible  <bruno@clisp.org>
22374
22375                 Avoid warnings from recent versions of mcs.
22376                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
22377                 -o, -L, -r any more. Use options documented since mcs-1.0
22378                 instead. Similarly for -g.
22379
22380         2005-12-04  Bruno Haible  <bruno@clisp.org>
22381
22382                 * build-aux/csharpcomp.sh.in: Suffix for resources is
22383                 .resources, not .resource.
22384
22385         2005-07-09  Bruno Haible  <bruno@clisp.org>
22386
22387                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
22388                 add a .dll suffix.
22389                 Reported by Mark Junker <mjscod@gmx.de>.
22390
22391         2006-07-22  Bruno Haible  <bruno@clisp.org>
22392
22393                 * modules/gettext: Upgrade to gettext-0.15.
22394                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
22395                 m4/visibility.m4.
22396                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
22397
22398 2006-07-22  Bruno Haible  <bruno@clisp.org>
22399
22400         Merge from GNU gettext 0.15.
22401
22402         2006-03-25  Bruno Haible  <bruno@clisp.org>
22403
22404                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
22405
22406         2006-07-21  Bruno Haible  <bruno@clisp.org>
22407
22408                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
22409                 "1.1".
22410
22411         2006-05-09  Bruno Haible  <bruno@clisp.org>
22412
22413                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
22414                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
22415                 for the conftestver execution.
22416
22417         2006-05-01  Bruno Haible  <bruno@clisp.org>
22418
22419                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
22420                 optional target-version argument. Verify that the compiler
22421                 groks source of the specified source-version, or add -source
22422                 option as necessary. Verify that the compiler produces
22423                 bytecode in the specified target-version, or add -target and
22424                 -source options as necessary. Make the result of the test
22425                 available as variable CONF_JAVAC. Also log error output in
22426                 config.log.
22427
22428         2006-03-11  Bruno Haible  <bruno@clisp.org>
22429
22430                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
22431
22432         2006-05-09  Bruno Haible  <bruno@clisp.org>
22433
22434                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
22435                 CLASSPATH_SEPARATOR to a semicolon.
22436
22437         2006-03-12  Bruno Haible  <bruno@clisp.org>
22438
22439                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
22440                 available as variable CONF_JAVA, for subsequent autoconf
22441                 tests. Also log error output in config.log.
22442
22443         2006-07-19  Bruno Haible  <bruno@clisp.org>
22444
22445                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
22446                 that getline works on glibc2 systems. Needed to avoid trouble
22447                 in relocatable.c.
22448                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
22449
22450         2005-12-04  Bruno Haible  <bruno@clisp.org>
22451
22452                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
22453                 launcher (untested).
22454
22455         2005-12-04  Bruno Haible  <bruno@clisp.org>
22456
22457                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
22458
22459         2006-07-22  Bruno Haible  <bruno@clisp.org>
22460
22461                 * gettext.m4: Update from GNU gettext-0.15.
22462                 * nls.m4: Likewise.
22463                 * po.m4: Likewise.
22464                 * inttypes-pri.m4: Likewise.
22465                 * inttypes-h.m4: Renamed from inttypes.m4.
22466                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
22467
22468 2006-07-22  Bruno Haible  <bruno@clisp.org>
22469
22470         Merge from GNU gettext 0.15.
22471
22472         2005-07-05  Bruno Haible  <bruno@clisp.org>
22473
22474                 * printf-args.c (printf_fetchargs): Work around broken
22475                 definition of wint_t on mingw.
22476
22477         2005-02-12  Bruno Haible  <bruno@clisp.org>
22478
22479                 * xallocsa.h: Add extern "C" for C++.
22480
22481         2006-05-17  Bruno Haible  <bruno@clisp.org>
22482
22483                 Cygwin portability.
22484                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
22485
22486         2006-04-30  Bruno Haible  <bruno@clisp.org>
22487
22488                 * progreloc.c: Include <mach-o/dyld.h> if available.
22489                 (find_executable): Use _NSGetExecutablePath when possible.
22490
22491         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
22492
22493                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
22494                 function.
22495
22496         2005-12-29  Bruno Haible  <bruno@clisp.org>
22497
22498                 * progreloc.c (set_program_name_and_installdir): Fix
22499                 compilation error.
22500
22501         2005-12-04  Bruno Haible  <bruno@clisp.org>
22502
22503                 Cygwin portability.
22504                 * progreloc.c: Include <windows.h> also on Cygwin.
22505                 (find_executable): Add support for Cygwin.
22506                 (set_program_name_and_installdir): Handle also platforms with
22507                 nonempty EXEEXT.
22508
22509         2006-07-11  Bruno Haible  <bruno@clisp.org>
22510
22511                 * javacomp.c: Fix a comment.
22512                 Reported by Jim Meyering.
22513
22514         2006-04-30  Bruno Haible  <bruno@clisp.org>
22515
22516                 * javacomp.h (compile_java_class): Add source_version,
22517                 target_version arguments.
22518                 * javacomp.c: Rewritten to choose only a compiler that
22519                 respects the specified source_version and target_version.
22520
22521         2006-06-27  Bruno Haible  <bruno@clisp.org>
22522
22523                 Assume correct S_ISDIR macro.
22524                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
22525
22526         2006-07-22  Bruno Haible  <bruno@clisp.org>
22527
22528                 * javaversion.h: New file, from GNU gettext.
22529                 * javaversion.c: New file, from GNU gettext.
22530                 * javaversion.java: New file, from GNU gettext.
22531                 * javaversion.class: New file, from GNU gettext.
22532
22533         2006-05-17  Bruno Haible  <bruno@clisp.org>
22534
22535                 Cygwin portability.
22536                 * javaexec.c (execute_java_class): Test for jview program
22537                 also on Cygwin.
22538
22539         2006-04-09  Bruno Haible  <bruno@clisp.org>
22540
22541                 * fatal-signal.c: Don't include string.h.
22542                 (at_fatal_signal): Use a copying loop instead of memcpy.
22543
22544         2005-12-04  Bruno Haible  <bruno@clisp.org>
22545
22546                 * csharpexec.c: Add support for 'clix' launcher (untested).
22547                 (execute_csharp_using_sscli): New function.
22548                 (execute_csharp_program): Call it.
22549
22550         2006-06-21  Bruno Haible  <bruno@clisp.org>
22551
22552                 Avoid warnings from recent versions of mcs.
22553                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
22554                 -o, -L, -r any more. Use options documented since mcs-1.0
22555                 instead. Similarly for -g.
22556
22557         2005-07-09  Bruno Haible  <bruno@clisp.org>
22558
22559                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
22560                 add a .dll suffix.
22561                 Reported by Mark Junker <mjscod@gmx.de>.
22562
22563         2006-06-17  Bruno Haible  <bruno@clisp.org>
22564
22565                 * config.charset: Update for NetBSD 3.0.
22566
22567         2006-05-17  Bruno Haible  <bruno@clisp.org>
22568
22569                 Cygwin portability.
22570                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
22571
22572         2006-05-16  Bruno Haible  <bruno@clisp.org>
22573
22574                 * localcharset.c [CYGWIN]: Include <windows.h>.
22575                 (get_charset_aliases): For Cygwin, return the same CPxxx
22576                 aliases list as under WIN32.
22577                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
22578                 the environment variables. Fall back to GetACP().
22579
22580         2006-04-05  Bruno Haible  <bruno@clisp.org>
22581
22582                 * config.charset: Update Juan Manuel Guerrero's address.
22583
22584         2005-02-12  Bruno Haible  <bruno@clisp.org>
22585
22586                 * allocsa.h: Add extern "C" for C++.
22587
22588         2005-02-10  Bruno Haible  <bruno@clisp.org>
22589
22590                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
22591                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
22592
22593         2006-07-22  Bruno Haible  <bruno@clisp.org>
22594
22595                 * gettext.h: Update to GNU gettext-0.15.
22596
22597 2006-07-22  Bruno Haible  <bruno@clisp.org>
22598
22599         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
22600         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
22601         lib-prefix.m4, longdouble.m4, ssize_t.m4.
22602
22603 2006-07-21  Eric Blake  <ebb9@byu.net>
22604
22605         * modules/stdlib-safer: New file.
22606         * MODULES.html.sh (File stream based Input/Output): Add
22607         stdlib-safer.
22608
22609 2006-07-21  Eric Blake  <ebb9@byu.net>
22610
22611         * lib/stdlib-safer.h: New file from coreutils, required by
22612         stdlib--.h.
22613
22614 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
22615
22616         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
22617
22618 2006-07-20  Bruno Haible  <bruno@clisp.org>
22619
22620         * gnulib-tool: Recognize new option --assume-autoconf.
22621         (autoconf_minversion): New variable.
22622         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
22623
22624 2006-07-20  Bruno Haible  <bruno@clisp.org>
22625
22626         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
22627
22628 2006-07-19  Derek R. Price  <derek@ximbiot.com>
22629
22630         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
22631         Reindent and repaginate.
22632
22633 2006-07-19  Derek Price  <derek@ximbiot.com>
22634
22635         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
22636         Correct grammar.
22637
22638 2006-07-17  Bruno Haible  <bruno@clisp.org>
22639
22640         * modules/list: New file.
22641         * modules/array-list: New file.
22642         * modules/carray-list, modules/carray-list-tests: New files.
22643         * modules/linked-list, modules/linked-list-tests: New files.
22644         * modules/avltree-list, modules/avltree-list-tests: New files.
22645         * modules/rbtree-list, modules/rbtree-list-tests: New files.
22646         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
22647         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
22648         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
22649         * modules/oset: New file.
22650         * modules/array-oset: New file.
22651         * modules/avltree-oset, modules/avltree-oset-tests: New files.
22652         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
22653         * tests/test-carray_list.c: New file.
22654         * tests/test-linked_list.c: New file.
22655         * tests/test-avltree_list.c: New file.
22656         * tests/test-rbtree_list.c: New file.
22657         * tests/test-linkedhash_list.c: New file.
22658         * tests/test-avltreehash_list.c: New file.
22659         * tests/test-rbtreehash_list.c: New file.
22660         * tests/test-avltree_oset.c: New file.
22661         * tests/test-rbtree_oset.c: New file.
22662         * MODULES.html.sh (Container data structures): New section.
22663
22664 2006-07-17  Bruno Haible  <bruno@clisp.org>
22665
22666         * m4/gl_list.m4: New file.
22667
22668 2006-07-17  Bruno Haible  <bruno@clisp.org>
22669
22670         * lib/gl_list.h: New file.
22671         * lib/gl_list.c: New file.
22672         * lib/gl_array_list.h: New file.
22673         * lib/gl_array_list.c: New file.
22674         * lib/gl_carray_list.h: New file.
22675         * lib/gl_carray_list.c: New file.
22676         * lib/gl_linked_list.h: New file.
22677         * lib/gl_linked_list.c: New file.
22678         * lib/gl_anylinked_list1.h: New file.
22679         * lib/gl_anylinked_list2.h: New file.
22680         * lib/gl_avltree_list.h: New file.
22681         * lib/gl_avltree_list.c: New file.
22682         * lib/gl_anyavltree_list1.h: New file.
22683         * lib/gl_anyavltree_list2.h: New file.
22684         * lib/gl_rbtree_list.h: New file.
22685         * lib/gl_rbtree_list.c: New file.
22686         * lib/gl_anyrbtree_list1.h: New file.
22687         * lib/gl_anyrbtree_list2.h: New file.
22688         * lib/gl_anytree_list1.h: New file.
22689         * lib/gl_anytree_list2.h: New file.
22690         * lib/gl_linkedhash_list.h: New file.
22691         * lib/gl_linkedhash_list.c: New file.
22692         * lib/gl_anyhash_list1.h: New file.
22693         * lib/gl_anyhash_list2.h: New file.
22694         * lib/gl_avltreehash_list.h: New file.
22695         * lib/gl_avltreehash_list.c: New file.
22696         * lib/gl_rbtreehash_list.h: New file.
22697         * lib/gl_rbtreehash_list.c: New file.
22698         * lib/gl_anytreehash_list1.h: New file.
22699         * lib/gl_anytreehash_list2.h: New file.
22700
22701         * lib/gl_oset.h: New file.
22702         * lib/gl_oset.c: New file.
22703         * lib/gl_array_oset.h: New file.
22704         * lib/gl_array_oset.c: New file.
22705         * lib/gl_avltree_oset.h: New file.
22706         * lib/gl_avltree_oset.c: New file.
22707         * lib/gl_rbtree_oset.h: New file.
22708         * lib/gl_rbtree_oset.c: New file.
22709         * lib/gl_anytree_oset.h: New file.
22710
22711 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
22712
22713         * m4/mkancesdirs.m4: New file.
22714         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
22715         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
22716         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
22717         it.
22718
22719 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
22720
22721         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
22722         * lib/mkancesdirs.h: New files.
22723         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
22724         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
22725         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
22726         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
22727         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
22728         callers changed.  Revamp internals significantly, by not
22729         attempting to create directories that are temporarily more
22730         permissive than the final results.  Do not attempt to use
22731         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
22732         This removes some race conditions, fixes some bugs, and simplifies
22733         things.  Use new dirchownmod function to do owner and mode changes.
22734         * lib/mkdir-p.h: Likewise.
22735         * lib/modechange.c (octal_to_mode): New function.
22736         (struct mode_change): New member mentioned.
22737         (make_node_op_equals): New arg mentioned.  All callers changed.
22738         (mode_compile): Keep track of which mode bits the user has explicitly
22739         mentioned.
22740         (mode_adjust): New arg DIR, so that we implement the X op correctly.
22741         New arg PMODE_BITS, to keep track of which mode bits the user
22742         mentioned; it treats S_ISUID and S_ISGID speciall.
22743         All callers changed.
22744         * lib/modechange.h: Likewise.
22745
22746 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
22747
22748         * MODULES.html.sh: Add mkancestors.
22749         * modules/mkancesdirs: New module.
22750         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
22751         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
22752         The chdir-safer and afs files are now orphans; I'll remove them
22753         unless someone speaks up.
22754         Add lib/dirchownmod.c, lib/dirchownmod.h.
22755         (Depends-on): Remove alloca, chown, save-cwd, dirname.
22756         Add lchown, mkancesdirs.
22757         (Maintainer): Add self.
22758
22759 2006-07-15  Karl Berry  <karl@gnu.org>
22760
22761         * gnulib-tool: help message wording/arrangement.
22762
22763 2006-07-14  Simon Josefsson  <jas@extundo.com>
22764
22765         * doc/gnulib.texi (Libtool and Windows): New section.
22766
22767 2006-07-12  Simon Josefsson  <jas@extundo.com>
22768
22769         * modules/gendocs (License): Fix license, approved by Karl.
22770
22771 2006-07-12  Eric Blake  <ebb9@byu.net>
22772
22773         * MODULES.html.sh: Add gendocs.
22774
22775 2006-07-11  Eric Blake  <ebb9@byu.net>
22776
22777         * modules/fdl: New module, to install doc/fdl.texi.
22778         * MODULES.html.sh: Add new section for documentation modules.
22779         * gnulib-tool: Avoid space-tab.
22780         (--doc-base): New option, to manage files from doc.
22781
22782 2006-07-11  Eric Blake  <ebb9@byu.net>
22783
22784         * m4/absolute-header.m4: Fix comments to match recent change.
22785
22786 2006-07-11  Eric Blake  <ebb9@byu.net>
22787
22788         * gnulib-tool: List --doc-base before --tests-base.
22789
22790 2006-07-11  Derek R. Price  <derek@ximbiot.com>
22791
22792         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
22793
22794 2006-07-11  Bruno Haible  <bruno@clisp.org>
22795
22796         * README: Mention where to put documentation.
22797
22798 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22799
22800         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
22801
22802 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
22803
22804         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
22805         to stdint.m4.
22806
22807 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
22808
22809         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
22810         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
22811         "no/such/file/stdint.h" when there is no such file, so that
22812         the resulting C code can be parsed by dodgy compilers.
22813         Problems reported by Bob Proulx.
22814
22815 2006-07-10  Derek R. Price  <derek@ximbiot.com>
22816
22817         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
22818         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
22819         macros into the GNU _D_EXACT_NAMLEN.
22820         * lib/savedir.c:  Likewise.
22821         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
22822
22823 2006-07-10  Derek R. Price  <derek@ximbiot.com>
22824         and Paul Eggert  <eggert@cs.ucla.edu>
22825
22826         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
22827         * m4/savedir.m4:
22828         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
22829         macros into the GNU _D_EXACT_NAMLEN.
22830
22831 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
22832
22833         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
22834         around the absolute name, to work around a problem with the HP-UX
22835         11.23 native C compiler, reported by Bob Proulx.
22836
22837 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
22838
22839         * doc/maintain.texi, make-stds.texi: Sync from
22840         <http://savannah.gnu.org/projects/gnustandards>.
22841
22842 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
22843
22844         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
22845
22846 2006-07-09  Jim Meyering  <jim@meyering.net>
22847
22848         * m4/glob.m4: Remove a doubled word in a comment.
22849
22850 2006-07-09  Jim Meyering  <jim@meyering.net>
22851
22852         * lib/argp-pv.c: Remove a doubled word in a comment.
22853         * lib/check-version.c (check_version): Likewise.
22854         * lib/javacomp.c (compile_java_class): Likewise.
22855
22856 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
22857
22858         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
22859         for the benefit of people using Autoconf 2.60.  If you want to
22860         support older Autoconf versions you can copy m4/onceonly_2_57.m4
22861         (or m4/onceonly.m4, if pre-2.57) manually.
22862
22863 2006-07-08  Jim Meyering  <jim@meyering.net>
22864
22865         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
22866         comment.
22867         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
22868         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
22869         comment.
22870
22871 2006-07-08  Jim Meyering  <jim@meyering.net>
22872
22873         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
22874
22875 2006-07-07  Simon Josefsson  <jas@extundo.com>
22876
22877         * tests/test-crc.c: Change expected crc value, the test vector
22878         were probably computed using the old broken crc.c?
22879
22880 2006-07-06  Simon Josefsson  <jas@extundo.com>
22881
22882         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
22883         now the canonical place for the M4 file).
22884
22885         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
22886         from the sys_socket dependency now.
22887
22888         * modules/inet_pton (Files): Ditto.
22889
22890         * modules/inet_ntop (Files): Ditto.
22891
22892 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
22893
22894         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
22895         not gl_PREREQ_GETUSERSHELL.
22896
22897 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22898
22899         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
22900         with only one argument, for Autoconf 2.60.
22901         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
22902         expand to nothing, so add a shell command to avoid syntax error.
22903         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
22904
22905 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22906
22907         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
22908
22909 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
22910
22911         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
22912         no longer needed.  Check for isblank decl.
22913         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
22914         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
22915         of existence.
22916
22917 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
22918
22919         * lib/getloadavg.c: Use __VMS, not VMS.
22920         * lib/getopt.c: Likewise.
22921         * lib/getpagesize.h: Likewise.
22922         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
22923         and probably does not work.
22924
22925 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
22926
22927         * lib/.cppi-disable: Add wcwidth.
22928         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
22929         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
22930         (ISGRAPH): Remove.  All uses changed to isgraph.
22931         (FOLD) [!defined _LIBC]: Remove special case.
22932         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
22933         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
22934         HAVE_ISBLANK.
22935         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
22936         case.
22937
22938 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
22939
22940         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
22941         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
22942         brackets.  Other minor changes to suppress some compiler
22943         warnings.
22944
22945 2006-07-06  Derek R. Price  <derek@ximbiot.com>
22946         and Paul Eggert  <eggert@cs.ucla.edu>
22947
22948         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
22949         of invoking obsolescent AC_HEADER_DIRENT macro.
22950         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
22951         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
22952         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
22953         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
22954         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
22955         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
22956         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
22957         * m4/readdir.m4: Remove; no longer needed.
22958
22959 2006-07-06  Derek R. Price  <derek@ximbiot.com>
22960         and Paul Eggert  <eggert@cs.ucla.edu>
22961
22962         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
22963         Don't worry about this obsolete case any more.
22964         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
22965         directories.
22966         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
22967         worry about this obsolete case any more.
22968         * lib/fts.c: Likewise.
22969         * lib/getcwd.c: Likewise.
22970         * lib/glob.h: Likewise.
22971         * lib/savedir.c: Likewise.
22972
22973 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
22974
22975         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
22976         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
22977         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
22978         needed.
22979         All uses removed.
22980         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
22981         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
22982         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
22983         needed.
22984         * m4/getdate.m4 (gl_GETDATE): Likewise.
22985         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
22986         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
22987         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
22988         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
22989         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
22990         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
22991         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
22992         needed.
22993
22994 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
22995
22996         * lib/memcasecmp.c: Include <limits.h>.
22997         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
22998         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
22999         Don't assume isdigit succeeds only on '0' through '9'.
23000
23001 2006-07-05  Eric Blake  <ebb9@byu.net>
23002
23003         * modules/getaddrinfo (Depends-on): Add snprintf.
23004
23005 2006-07-05  Eric Blake  <ebb9@byu.net>
23006
23007         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
23008         to avoid 'header present but could not be compiled' on cygwin.
23009
23010 2006-07-05  Eric Blake  <ebb9@byu.net>
23011
23012         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
23013         missing from netdb.h.
23014         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
23015
23016 2006-07-05  Derek R. Price  <derek@ximbiot.com>
23017
23018         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
23019         no longer needed.
23020         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
23021         * m4/getdate.m4 (gl_GETDATE): Likewise.
23022         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
23023         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
23024         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
23025         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
23026         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
23027
23028 2006-07-05  Derek R. Price  <derek@ximbiot.com>
23029
23030         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
23031         All uses of is_space replaced by isspace.
23032         * lib/exit.h: Don't talk about STDC_HEADERS.
23033         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
23034         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
23035         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
23036         replaced by isprint etc.
23037         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
23038         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
23039         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
23040         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
23041         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
23042         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
23043
23044 2006-07-05  Bruno Haible  <bruno@clisp.org>
23045
23046         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
23047         the function exists, before testing against AIX.
23048         Reported by Martin Lambers <marlam@marlam.de>.
23049
23050 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
23051
23052         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
23053         From Mark D. Baushke.
23054
23055 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
23056
23057         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
23058         to the absolute name, not just one, to bypass Sun C 5.8's
23059         "warning: #include of /usr/include/... may be non-portable".
23060
23061 2006-07-04  Eric Blake  <ebb9@byu.net>
23062
23063         * modules/dirname-tests: New test module.
23064         * tests/test-dirname.c: New file, replacing dirname.c
23065         TEST_DIRNAME section that was recently deleted.
23066
23067 2006-07-04  Bruno Haible  <bruno@clisp.org>
23068
23069         Assume ANSI C header files and <ctype.h> functions.
23070         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
23071         (mbsnwidth): Use isprint, iscntrl instead.
23072
23073 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
23074
23075         Merge from coreutils.
23076         * MODULES.html.sh: Add xstrtold.
23077         * modules/xstrtold: New file.
23078         * modules/cycle-check (Files): Add lib/same-inode.h.
23079         * modules/dirname (Files): Add m4/double-slash-root.m4.
23080         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
23081         * modules/mkdir-p (Files): Add lib/same-inode.h.
23082         * modules/same (Files): Add lib/same-inode.h.
23083
23084 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
23085
23086         * m4/absolute-header.m4: Renamed from full-header-path.m4.
23087         This is to keep the terminology clean; POSIX talks about
23088         "absolute pathnames", not "full pathnames", but the GNU
23089         Coding Standards say to use "path" for something else;
23090         so use "absolute" to keep both sides happy.
23091         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
23092         Set gl_absolute_header, not gl_full_header_path.
23093         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
23094         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
23095         All uses changed.
23096
23097         Merge from coreutils.
23098
23099         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
23100
23101         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
23102         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
23103         want to require the building of c-strtod.o.
23104         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
23105         needs -lm directly.
23106         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
23107
23108         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
23109
23110         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
23111         --as-needed option if available.  Problem reported by Albert Chin in
23112         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
23113         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
23114         cc merely issues a bunch of annoying warnings for --as-needed
23115         (this problem was reported by Bob Proulx).  Also, try linking with
23116         -lm to detect a bug in binutils 2.16 (this problem was reported
23117         by Ralf Wildenhues).
23118
23119         2006-06-18  Jim Meyering  <jim@meyering.net>
23120
23121         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
23122         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
23123         macro.
23124         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
23125         also check for glibc-2.4's abort-inducing bug.
23126
23127         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
23128         Low-probability clean-up should be to use rmdir to get rid of
23129         the just-created directory, not unlink.
23130
23131         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
23132         configure fail, and request a bug report to inform us about it.
23133         Add a comment that, barring reports to the contrary, in 2007 we'll
23134         assume ftruncate is universally available.
23135
23136         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
23137
23138         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
23139
23140         2006-03-12  Jim Meyering  <jim@meyering.net>
23141
23142         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
23143         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
23144         * m4/same.m4 (gl_SAME): Likewise.
23145         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
23146
23147         2006-03-11  Eric Blake  <ebb9@byu.net>
23148
23149         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
23150         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
23151         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
23152         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
23153
23154 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
23155
23156         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
23157         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
23158         reported by Mark D. Baushke, one in
23159         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
23160
23161         Merge from coreutils.
23162
23163         * lib/.cppi-disable: Add stdint_.h.
23164         * lib/.cvsignore: Add stdint.h.
23165
23166         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
23167
23168         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
23169         both double and long double versions.
23170         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
23171         * lib/xstrtold.c: New file.
23172         * lib/xstrtod.h (xstrtold): New decl.
23173
23174         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
23175
23176         * lib/filemode.c (setst): Remove.
23177         (strmode): Rewrite to avoid setst.  This makes the code shorter,
23178         (arguably) clearer, and the generated code is a bit smaller on my
23179         Debian GNU/Linux stable x86 host.
23180
23181         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
23182
23183         * lib/filemode.c: Include "filemode.h" first, to test the interface.
23184         Assume that filemode.h includes sys/types.h and sys/stat.h.
23185         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
23186         (ftypelet): Reorder to put common cases first, for efficiency.
23187         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
23188         to do 'M'.
23189         (strmode): Renamed from mode_string, and now stores 12 bytes instead
23190         of 10, for compatibility with FreeBSD.  All callers changed.
23191         (filemodestring): Now stores 12 bytes instead of 10, and sets file
23192         types that can't be deduced solely from st_mode.  First arg is now a
23193         const pointer.
23194         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
23195         (strmode): Renamed from mode_string.
23196         (filemodestring): New decl.
23197         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
23198         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
23199         needed.
23200         (S_ISPORT, S_ISWHT): New macros, if not already defined.
23201
23202         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
23203
23204         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
23205         fsusage.h now does that.  Include fsusage.h first, to test interface.
23206         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
23207         at most one method (the old code could have generated decls that
23208         didn't conform to C89, not that this was ever exercised).
23209         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
23210
23211         2006-03-19  Jim Meyering  <jim@meyering.net>
23212
23213         Work even in a chroot where d_ino values for entries in "/"
23214         don't match the stat.st_ino values for the same names.
23215         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
23216         number, iterate through all entries again, using lstat instead.
23217         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
23218         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
23219
23220         * lib/getcwd.c (__getcwd): Clarify a comment.
23221         Use memcpy in place of a call to strcpy.
23222
23223         2006-03-12  Jim Meyering  <jim@meyering.net>
23224
23225         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
23226         matches that of the current directory (which we're about to chdir ".."
23227         out of), then save the dev-ino of the parent, instead.
23228
23229         * lib/same-inode.h (SAME_INODE): New file/macro.
23230         * lib/chdir-safer.c (SAME_INODE): Remove definition.
23231         Include "same-inode.h", instead.
23232         * lib/same.c: Likewise.
23233         * lib/cycle-check.h: Include "same-inode.h".
23234         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
23235         * lib/cycle-check.c (SAME_INODE): Remove definition.
23236         * lib/root-dev-ino.h: Include "same-inode.h".
23237
23238         2006-03-11  Eric Blake  <ebb9@byu.net>
23239
23240         * lib/same.c (same_name): s/base_name/last_component/
23241         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
23242         * lib/filenamecat.c (file_name_concat): Likewise.
23243
23244         2006-03-11  Eric Blake  <ebb9@byu.net>,
23245                     Paul Eggert  <eggert@cs.ucla.edu>
23246
23247         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
23248         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
23249         drive prefix.
23250         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
23251         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
23252         (last_component): New method.
23253         * lib/dirname.c (dir_len): Determine when drive letters need a
23254         subsequent slash.  Preserve // when it is special.
23255         (dir_name): Don't append dot when drive letter is absolute.
23256         [TEST_DIRNAME]: Move into a full-blown gnulib test.
23257         * lib/basename.c (base_name): New semantics - malloc the result.
23258         Preserve // when it is special.  Preserve relative files that look
23259         like drive letters.
23260         (base_len): Preserve // when it is special.
23261         (last_component): New method, similar to old base_name semantics.
23262         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
23263         base_name.  Strip redundant slashes from ///.
23264
23265 2006-07-03  Jim Meyering  <jim@meyering.net>
23266
23267         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
23268         macro is used before the first cycle_check call.
23269
23270 2006-07-03  Eric Blake  <ebb9@byu.net>
23271
23272         * modules/dirname (Depends-on): Add xstrndup.
23273
23274 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
23275
23276         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
23277         test cases, so that config.log is a bit easier to follow.
23278
23279 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
23280
23281         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
23282         both are 64 bits, since this seems to be the tradition, and this
23283         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
23284         we ever run into a host that prefers long long to long in this
23285         case, we'll need another configure-time test.  Problem reported by
23286         Jim Meyering.
23287
23288 2006-07-02  Eric Blake  <ebb9@byu.net>
23289
23290         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
23291
23292 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
23293
23294         * modules/inttypes (Depends-on): No longer depends on stdint.
23295         * modules/stdint (Description): Say more about assumptions.
23296         Say that the fast types might differ.  Say macros are used.
23297         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
23298         (Makefile.am): Revise list of substituted symbols to match
23299         new stdint.m4.
23300         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
23301         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
23302         * tests/test-stdint.c (verify_same_types)
23303         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
23304         the code conforms to C99/C89.
23305         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
23306         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
23307
23308 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
23309
23310         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
23311         but fix a bug, by requiring at least 64 bits.
23312         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
23313         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
23314         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
23315         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
23316
23317         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
23318         changes.  Make 2.59 a prerequisite.  Check and substitute for
23319         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
23320         inttypes.h.  Do not use special include files; just use the
23321         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
23322         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
23323         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
23324         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
23325         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
23326         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
23327         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
23328         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
23329         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
23330         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
23331         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
23332         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
23333         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
23334         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
23335         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
23336         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
23337         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
23338         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
23339         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
23340         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
23341         WINT_MAX.  Check for C99 conformance more strictly, by detecting
23342         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
23343         not check for things that C99 does not require, e.g., int8_t.  If
23344         a test isn't needed unless <stdint.h> isn't working, and is
23345         unlikely to be needed for any other reason, then don't do it
23346         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
23347         size_t, since we assume C89 freestanding at least.  Do not check
23348         for sig_atomic_t, wchar_t, or wint_t, since the code now does
23349         the right thing even if the types are not defined.  Instead use:
23350         (gl_STDINT_TYPE_PROPERTIES): New macro.
23351         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
23352         testing whether <sys/types.h> clashes, as Autoconf does this for
23353         us now.  All uses removed.
23354         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
23355         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
23356         (gl_CHECK_TYPE_SAME):
23357         Remove; no longer needed.
23358         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
23359         exists, since we'll return 0 anyway in that case.
23360         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
23361
23362 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
23363
23364         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
23365         possible collision with system files.
23366         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
23367         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
23368         WCHAR_MIN and WCHAR_MAX in this case.
23369         (<stddef.h>): Do not include; no longer needed.
23370         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
23371         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
23372         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
23373         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
23374         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
23375         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
23376         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
23377         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
23378         !defined(__c99))]: Include in this case too, since it's harmless
23379         now.
23380         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
23381         dangerous to do so.
23382         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
23383         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
23384         (_STDINT_MIN, _STDINT_MAX): New macros.
23385         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
23386         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
23387         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
23388         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
23389         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
23390         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
23391         macros, not typedefs; this simplifies things quite a bit.
23392         Use long int for all types narrower than int64_t.
23393         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
23394         Define in terms of long long int or int64_t or long int,
23395         not int64_t or int32_t.  This saves some compile-time testing.
23396         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
23397         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
23398         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
23399         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
23400         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
23401         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
23402         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
23403         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
23404         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
23405         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
23406         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
23407         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
23408         undef any previous version and define our own version, for
23409         simplicity and consistency with the new macros for types.
23410         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
23411         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
23412         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
23413         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
23414         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
23415         @WINT_T_SUFFIX@ to keep things simple here.
23416         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
23417         Simplify by assuming typical 8/16/32/64 host, since we're
23418         already doing that elsewhere anyway.
23419         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
23420         and assume long long int is 64 bits if available.  This
23421         speeds up 'configure'.
23422
23423 2006-07-01  Eric Blake  <ebb9@byu.net>
23424
23425         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
23426         Reported by Andreas Buening.
23427
23428 2006-07-01  Eric Blake  <ebb9@byu.net>
23429
23430         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
23431
23432 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
23433
23434         * lib/getaddrinfo.c: fixed typo
23435
23436 2006-06-29  Jim Meyering  <jim@meyering.net>
23437
23438         * modules/strftime (Maintainer): Add my name, since with the
23439         FPRINTFTIME changes strftime.c has forked from glibc.
23440
23441 2006-06-29  Eric Blake  <ebb9@byu.net>
23442
23443         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
23444
23445 2006-06-29  Eric Blake  <ebb9@byu.net>
23446
23447         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
23448
23449 2006-06-29  Eric Blake  <ebb9@byu.net>
23450
23451         * lib/stat_.h: New file.
23452
23453 2006-06-29  Eric Blake  <ebb9@byu.net>
23454
23455         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
23456         unused static function.
23457
23458 2006-06-29  Eric Blake  <ebb9@byu.net>
23459
23460         * doc/functions.texi (Function Portability): Document missing lstat
23461         on mingw.
23462
23463 2006-06-29  Eric Blake  <ebb9@byu.net>
23464
23465         * MODULES.html.sh: Add sys_stat.
23466         * modules/sys_stat: New module.
23467         * modules/mkstemp (Depends-on): Add sys_stat.
23468
23469 2006-06-29  Derek R. Price  <derek@ximbiot.com>
23470
23471         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
23472
23473 2006-06-29  Derek R. Price  <derek@ximbiot.com>
23474
23475         * m4/c-bs-a.m4: Removed.
23476
23477 2006-06-29  Derek R. Price  <derek@ximbiot.com>
23478
23479         * lib/strftime.c: Assume strftime() exists.
23480
23481 2006-06-29  Derek Price  <derek@ximbiot.com>
23482
23483         * modules/c-bs-a: Removed - \a is C89.
23484         * MODULES.html.sh: Remove c-bs-a.
23485
23486 2006-06-29  Bruno Haible  <bruno@clisp.org>
23487
23488         * modules/wcwidth (License): Change to LGPL.
23489
23490 2006-06-28  Simon Josefsson  <jas@extundo.com>
23491
23492         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
23493         on _WIN32.
23494
23495         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
23496         getnameinfo.
23497
23498 2006-06-28  Simon Josefsson  <jas@extundo.com>
23499
23500         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
23501
23502 2006-06-28  Simon Josefsson  <jas@extundo.com>
23503
23504         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
23505         functions there.  It will succeed on Windows XP, but on Windows
23506         2000 and (presumably) earlier, it will fail, and use the internal
23507         re-implementation.
23508         (use_win32_p): New function.
23509         (getaddrinfo): Use strtoul on servname, to support numeric ports.
23510         Support AI_NUMERICSERV to disable getservbyname.
23511         (getnameinfo): New function, only supports
23512         NI_NUMERICHOST|NI_NUMERICSERV for now.
23513
23514         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
23515         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
23516         getnameinfo.
23517
23518 2006-06-28  Eric Blake  <ebb9@byu.net>
23519
23520         * modules/wcwidth: New file.
23521         * modules/mbchar (Depends-on): Add wcwidth.
23522         * modules/mbswidth (Depends-on): Add wcwidth.
23523         * MODULES.html.sh: Add wcwidth.
23524
23525 2006-06-28  Eric Blake  <ebb9@byu.net>
23526
23527         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
23528         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
23529
23530 2006-06-28  Eric Blake  <ebb9@byu.net>
23531
23532         * lib/xvasprintf.h: Fix comments.
23533
23534 2006-06-28  Eric Blake  <ebb9@byu.net>
23535
23536         * lib/mbchar.h (wcwidth): Include wcwidth.h.
23537         * lib/mbswidth.c (wcwidth): Move from here...
23538         * lib/wcwidth.h: ...to this new file.
23539
23540 2006-06-28  Derek R. Price  <derek@ximbiot.com>
23541
23542         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
23543
23544         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
23545         it's obsolete.
23546         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
23547
23548 2006-06-28  Derek R. Price  <derek@ximbiot.com>
23549
23550         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
23551         Autoconf 2.60 says this stuff was obsolete.
23552
23553 2006-06-28  Bruno Haible  <bruno@clisp.org>
23554
23555         * modules/wcwidth (Files): Add m4/wchar_t.m4.
23556
23557 2006-06-28  Bruno Haible  <bruno@clisp.org>
23558
23559         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
23560         gt_TYPE_WCHAR_T.
23561
23562 2006-06-28  Bruno Haible  <bruno@clisp.org>
23563
23564         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
23565         declaration for wcwidth.
23566         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
23567
23568 2006-06-28  Bruno Haible  <bruno@clisp.org>
23569
23570         * lib/mkdtemp.c [MINGW]: Include <io.h>.
23571         (mkdir): Define using _mkdir.
23572
23573 2006-06-28  Bruno Haible  <bruno@clisp.org>
23574
23575         * lib/getaddrinfo.h: Fix POSIX URL.
23576         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
23577         _WIN32.
23578         (use_win32_p): Make static.
23579         (getaddrinfo): Reject service name if it is empty or does not consist
23580         solely of decimal digits, or if its value is > 65535.
23581         (getnameinfo): Remove useless casts.
23582
23583 2006-06-27  Simon Josefsson  <jas@extundo.com>
23584
23585         * modules/sys_select: New file, suggested by Bruno Haible, Paul
23586         Eggert and Martin Lambers.
23587
23588 2006-06-27  Simon Josefsson  <jas@extundo.com>
23589
23590         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
23591         Eggert and Martin Lambers.
23592
23593 2006-06-27  Bruno Haible  <bruno@clisp.org>
23594
23595         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
23596         result to 0, not to empty.
23597         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
23598
23599 2006-06-27  Bruno Haible  <bruno@clisp.org>
23600
23601         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
23602
23603 2006-06-26  Simon Josefsson  <jas@extundo.com>
23604
23605         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
23606         present.
23607
23608 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
23609
23610         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
23611         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
23612         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
23613
23614 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
23615
23616         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
23617
23618 2006-06-26  Bruno Haible  <bruno@clisp.org>
23619
23620         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
23621
23622 2006-06-26  Bruno Haible  <bruno@clisp.org>
23623
23624         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
23625
23626 2006-06-26  Bruno Haible  <bruno@clisp.org>
23627
23628         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
23629         SGI C compiler in pre-C99 mode.
23630         Suggested by Mark D. Baushke and Larry Jones.
23631
23632 2006-06-26  Bruno Haible  <bruno@clisp.org>
23633
23634         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
23635         WCHAR_MAX.
23636         Reported by Mark D. Baushke and Larry Jones.
23637
23638 2006-06-26  Bruno Haible  <bruno@clisp.org>
23639
23640         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
23641         in pre-C99 mode.
23642         Suggested by Mark D. Baushke and Larry Jones.
23643
23644 2006-06-23  Simon Josefsson  <jas@extundo.com>
23645             Bruno Haible  <bruno@clisp.org>
23646
23647         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
23648         Emit mostlyclean-local rule.
23649         (func_emit_tests_Makefile_am): Likewise.
23650         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
23651
23652 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
23653
23654         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
23655
23656 2006-06-23  Bruno Haible  <bruno@clisp.org>
23657
23658         * tests/test-stdint.c: Update to match ISO C 99 Technical
23659         Corrigendum 1.
23660
23661 2006-06-23  Bruno Haible  <bruno@clisp.org>
23662
23663         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
23664
23665 2006-06-23  Bruno Haible  <bruno@clisp.org>
23666
23667         * lib/stdint_.h: Treat IRIX like OpenBSD.
23668
23669 2006-06-23  Bruno Haible  <bruno@clisp.org>
23670
23671         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
23672         ISO C 99 Technical Corrigendum 1.
23673
23674 2006-06-22  Simon Josefsson  <jas@extundo.com>
23675
23676         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
23677         MinGW.
23678
23679 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
23680
23681         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
23682         needed.  Some compiler complained about some of them.  Problem reported
23683         by Larry Jones in
23684         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
23685
23686 2006-06-21  Simon Josefsson  <jas@extundo.com>
23687
23688         * tests/test-getaddrinfo.c: New file.
23689
23690         * modules/getaddrinfo-tests: New file.
23691
23692         * MODULES.html.sh: Add inet_pton.
23693
23694         * modules/inet_pton: New file.
23695
23696 2006-06-21  Simon Josefsson  <jas@extundo.com>
23697
23698         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
23699         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
23700         of using the (limited) gnulib implementation on Windows XP.
23701
23702         * m4/inet_pton.m4: New file.
23703
23704 2006-06-21  Simon Josefsson  <jas@extundo.com>
23705
23706         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
23707         variable.
23708
23709         * lib/socket_.h: Don't define WINVER.
23710
23711         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
23712         slightly modified to work in gnulib.
23713
23714 2006-06-21  Simon Josefsson  <jas@extundo.com>
23715
23716         * doc/gnulib.texi (Windows sockets): Add.
23717
23718 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
23719
23720         * lib/read-file.c (fread_file): Start with buffer allocation of
23721         0 bytes rather than 1 byte; this simplifies the code.
23722         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
23723         code to free buffer and save/restore errno.
23724         (internal_read_file): Remove unused local.
23725
23726 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
23727
23728         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
23729         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
23730         Problem reported by Denis Excoffier in
23731         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
23732
23733 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23734
23735         * modules/sys_socket, modules/socklen: Include sys/types since
23736         FreeBSD 4.x's sys/socket.h needs it.
23737
23738 2006-06-19  Simon Josefsson  <jas@extundo.com>
23739
23740         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
23741
23742 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
23743
23744         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
23745
23746 2006-06-19  Bruno Haible  <bruno@clisp.org>
23747
23748         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
23749         and FULL_PATH_INTTYPES_H in angle brackets.
23750         Reported by Mark D. Baushke <mdb@gnu.org>.
23751
23752 2006-06-17  Eric Blake  <ebb9@byu.net>
23753
23754         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
23755         errno.
23756
23757 2006-06-17  Bruno Haible  <bruno@clisp.org>
23758
23759         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
23760         <sys/inttypes.h>.
23761
23762 2006-06-17  Bruno Haible  <bruno@clisp.org>
23763
23764         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
23765         whether errno is declared. Assume <errno.h> declares errno.
23766
23767 2006-06-17  Bruno Haible  <bruno@clisp.org>
23768
23769         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
23770
23771 2006-06-17  Bruno Haible  <bruno@clisp.org>
23772
23773         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
23774         problem on Solaris 2.5.1.
23775
23776 2006-06-16  Eric Blake  <ebb9@byu.net>
23777
23778         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
23779         * lib/unicodeio.c [!defined errno]: Likewise.
23780         * lib/strtol.c [!defined errno]: Likewise.
23781         * lib/strtod.c [!defined errno]: Likewise.
23782
23783 2006-06-15  Eric Blake  <ebb9@byu.net>
23784
23785         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
23786
23787 2006-06-15  Eric Blake  <ebb9@byu.net>
23788
23789         * config/srclist.txt (ssize_t.m4): Lose sync.
23790
23791 2006-06-15  Bruno Haible  <bruno@clisp.org>
23792
23793         * modules/stdint (Files): Include m4/full-header-path.m4,
23794         m4/size_max.m4, m4/wchar_t.m4.
23795         (Makefile.am): Many more substitutions.
23796         * modules/stdint-tests: New file.
23797         * tests/test-stdint.c: New file.
23798
23799 2006-06-15  Bruno Haible  <bruno@clisp.org>
23800
23801         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
23802         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
23803         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
23804         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
23805         gl_CHECK_TYPE_SAME): New macros.
23806
23807 2006-06-15  Bruno Haible  <bruno@clisp.org>
23808
23809         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
23810
23811 2006-06-15  Bruno Haible  <bruno@clisp.org>
23812
23813         * lib/stdint_.h: Rewritten to be fully auto-configured.
23814         Fixes bug on HP-UX/IA64.
23815
23816 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
23817
23818         * lib/getdate.y (__attribute__): Don't define if already defined.
23819         Problem reported by Larry Jones.
23820         * lib/utimens.c (__attribute__): Likewise.
23821
23822 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
23823
23824         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
23825         reported by Andreas Schwab.
23826
23827 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23828             Bruno Haible  <bruno@clisp.org>
23829
23830         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
23831         check for the declaration of strnlen and a run test that exposes the
23832         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
23833         rpl_strndup.
23834
23835 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23836             Bruno Haible  <bruno@clisp.org>
23837
23838         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
23839
23840 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23841
23842         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
23843         compile test, for Tru64 4.0D.
23844
23845 2006-05-28  Karl Berry  <karl@gnu.org>
23846
23847         * config/srclist.txt (printf-args.c): lose sync.
23848
23849 2006-05-26  Martin Lambers  <marlam@marlam.de>
23850
23851         * lib/getpass.c: Updates the test for the native W32 API, and adds
23852         missing includes, thus fixing compilation warnings.
23853
23854 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
23855
23856         * lib/exclude.c (exclude_fnmatch): New function.
23857         (excluded_file_name): Call exclude_fnmatch.
23858         * lib/exclude.h (excluded_file_name): New prototype
23859
23860 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
23861
23862         * lib/tempname.c (small_open, large_open): New macros.
23863         (__open, __open64) [!_LIBC]: Remove.
23864         (__gen_tempname): Use small_open and large_open instead of __open
23865         and __open64.  This fixes a portability bug on HP-UX 11.11i
23866         reported by Simon Wing-Tang in
23867         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
23868
23869 2006-05-24  Bruno Haible  <bruno@clisp.org>
23870
23871         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
23872         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
23873         Reported by Thorsten Maerz <torte@netztorte.de> via
23874         Aaron Stone <aaron@serendipity.cx>.
23875
23876 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
23877
23878         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
23879         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
23880         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
23881         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
23882         not really conditional on the cache.
23883         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
23884
23885 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
23886
23887         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
23888         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
23889         (my_usleep): Don't mishandle maximum value.
23890
23891 2006-05-19  Jim Meyering  <jim@meyering.net>
23892
23893         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
23894
23895 2006-05-17  Bruno Haible  <bruno@clisp.org>
23896
23897         Cygwin portability.
23898         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
23899
23900 2006-05-17  Bruno Haible  <bruno@clisp.org>
23901
23902         * lib/stdint_.h: Fix recognition of Cygwin.
23903
23904 2006-05-15  Bruno Haible  <bruno@clisp.org>
23905
23906         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
23907         on libtool patch by Ralf Wildenhues.
23908
23909 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
23910
23911         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
23912         test for C99 conformance; (bool) 0.5 is an integer constant
23913         expression, but (bool) -0.5 is not.  Problem reported by Fedor
23914         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
23915
23916 2006-05-11  Simon Josefsson  <jas@extundo.com>
23917
23918         * m4/xvasprintf.m4: Fix obvious typo.
23919
23920 2006-05-11  Jim Meyering  <jim@meyering.net>
23921
23922         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
23923         James Lemley.
23924
23925 2006-05-10  Simon Josefsson  <jas@extundo.com>
23926
23927         * lib/md4.c: Typo fix, update copyright years.
23928         (K1, K2): Don't use L because it turn computations into 64-bit on
23929         64-bit platforms.
23930
23931 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
23932
23933         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
23934         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
23935         unwanted sign propagation, e.g., on hosts with 64-bit int.
23936         There still are some problems with reeelly weird theoretical hosts
23937         (e.g., 33-bit int) but it's not worth worrying about now.
23938         * lib/sha1.c (rol): Likewise.
23939         (K1, K2, K3, K4): Remove unnecessary L suffix.
23940
23941 2006-05-10  Bruno Haible  <bruno@clisp.org>
23942
23943         * lib/des.c: Cast to avoid warnings.
23944
23945 2006-05-09  Bruno Haible  <bruno@clisp.org>
23946
23947         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
23948         (Depends-on): Depend also on xsize, stdarg.
23949         (configure.ac): Add gl_XVASPRINTF.
23950
23951 2006-05-09  Bruno Haible  <bruno@clisp.org>
23952
23953         * m4/xvasprintf.m4: New file.
23954
23955 2006-05-09  Bruno Haible  <bruno@clisp.org>
23956
23957         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
23958         (EOVERFLOW): Define fallback value.
23959         (xstrcat): New function.
23960         (xvasprintf): Recognize the special case of a string concatenation.
23961
23962 2006-05-08  Eric Blake  <ebb9@byu.net>
23963
23964         * gnulib-tool (func_version): Base copyright year on CVS date.
23965         (func_emit_copyright_notice): New function.
23966         (func_emit_lib_Makefile_am): Use it.
23967         (func_emit_tests_Makefile_am): Likewise.
23968         (func_import): Likewise.
23969
23970 2006-05-08  Bruno Haible  <bruno@clisp.org>
23971
23972         * modules/stdarg: New file.
23973         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
23974
23975 2006-05-08  Bruno Haible  <bruno@clisp.org>
23976
23977         * m4/stdarg.m4: New file, from GNU gettext.
23978
23979 2006-05-08  Bruno Haible  <bruno@clisp.org>
23980
23981         * config/srclist.txt (build-aux/config.rpath): different from latest
23982         release.
23983
23984 2006-05-08  Bruno Haible  <bruno@clisp.org>
23985
23986         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
23987
23988 2006-05-05  Jim Meyering  <jim@meyering.net>
23989
23990         * m4/warning.m4: New file, derived from bison's file by the same name.
23991
23992 2006-05-03  Bruno Haible  <bruno@clisp.org>
23993
23994         * lib/stdint_.h: Shorter URL.
23995         * lib/inttypes.h: Likewise.
23996
23997 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
23998
23999         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
24000
24001 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
24002
24003         * lib/verify.h: Document the internals better.  Most of this change
24004         was written by Bruno Haible.
24005
24006 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
24007
24008         * doc/verify.texi: New file, partly based on a proposal by
24009         Bruno Haible.
24010
24011 2006-05-02  Bruno Haible  <bruno@clisp.org>
24012
24013         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
24014         test from here...
24015         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
24016
24017 2006-04-29  Bruno Haible  <bruno@clisp.org>
24018
24019         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
24020         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
24021
24022 2006-04-29  Bruno Haible  <bruno@clisp.org>
24023
24024         * gnulib-tool: Make --update option actually work.
24025
24026 2006-04-29  Bruno Haible  <bruno@clisp.org>
24027
24028         * doc/gcd.texi: New file.
24029         * doc/gnulib.texi: Include it.
24030
24031 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
24032
24033         * lib/getdate.y (get_date): When adding relative date, start with the
24034         initial time, not with the result of the first mktime call.
24035
24036 2006-04-25  Bruno Haible  <bruno@clisp.org>
24037
24038         * gnulib-tool (func_import): Output the include directives in three
24039         blocks, sorted separately.
24040         Reported by Ben Pfaff <blp@cs.stanford.edu>.
24041
24042 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
24043
24044         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
24045         to define main with arguments, for C++.  Reported by Eric Blake.
24046         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
24047         Prefer 'int main ()' to 'int main (void)', for C++.
24048         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
24049         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
24050         for 'main', for C99 and C++.
24051
24052 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
24053
24054         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
24055         Don't assume that exit status -1 is valid.
24056         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
24057         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
24058         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
24059         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
24060         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
24061         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
24062         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
24063         functions can be used without declaring them, or that you can
24064         exit with status -1.
24065         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
24066
24067 2006-04-24  Karl Berry  <karl@gnu.org>
24068
24069         * config/srclist.txt (longdouble.m4): sync lost.
24070
24071 2006-04-24  Eric Blake  <ebb9@byu.net>
24072
24073         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
24074
24075 2006-04-24  Bruno Haible  <bruno@clisp.org>
24076
24077         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
24078         poll() implementation in AIX.
24079         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
24080
24081 2006-04-24  Bruno Haible  <bruno@clisp.org>
24082
24083         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
24084         assigned exactly once.
24085
24086 2006-04-23  Claudio Fontana  <claudio@gnu.org>
24087             Bruno Haible  <bruno@clisp.org>
24088
24089         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
24090         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
24091         for AM_CPPFLAGS.
24092
24093 2006-04-23  Bruno Haible  <bruno@clisp.org>
24094
24095         * modules/copy-file: Depend on unistd.
24096         * modules/execute: Likewise.
24097         * modules/fatal-signal: Likewise.
24098         * modules/findprog: Likewise.
24099         * modules/mkdtemp : Likewise.
24100         * modules/pipe: Likewise.
24101         * modules/wait-process: Likewise.
24102
24103 2006-04-23  Bruno Haible  <bruno@clisp.org>
24104
24105         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
24106         condition was already detected.
24107         Reported by Ben Pfaff <blp@cs.stanford.edu>.
24108
24109 2006-04-23  Bruno Haible  <bruno@clisp.org>
24110
24111         * lib/copy-file.c: Include <unistd.h> unconditionally.
24112         * lib/execute.c: Likewise.
24113         * lib/fatal-signal.c: Likewise.
24114         * lib/findprog.c: Likewise.
24115         * lib/mkdtemp.c: Likewise.
24116         * lib/pipe.h: Likewise.
24117         * lib/pipe.c: Likewise.
24118         * lib/wait-process.h: Likewise.
24119
24120 2006-04-23  Bruno Haible  <bruno@clisp.org>
24121
24122         * gnulib-tool (func_usage): Fix --import description. Document
24123         --update.
24124         (func_import): Create temporary file in a temporary directory, if
24125         --dry-run is specified. Silence errors from 'grep' when there are no
24126         m4 files in $m4dir.
24127         (func_create_testdir): Silence errors from 'grep' when there are no
24128         m4 files in $m4dir.
24129         Reported by Karl Berry <karl@freefriends.org>.
24130
24131 2006-04-20  Bruno Haible  <bruno@clisp.org>
24132
24133         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
24134         one argument, so that the code will be portable to Autoconf 2.60.
24135         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
24136         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
24137         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
24138
24139 2006-04-19  Derek Price  <derek@ximbiot.com>
24140             Eric Blake  <ebb9@byu.net>
24141
24142         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
24143         rather than "/full/path.h".  Update comment to match.  Shorten &
24144         generalize m4_translit call via AS_TR_CPP.
24145
24146 2006-04-19  Derek Price  <derek@ximbiot.com>
24147             Eric Blake  <ebb9@byu.net>
24148
24149         * lib/inttypes.h: Correct grammar in comment.
24150
24151 2006-04-18  Derek Price  <derek@ximbiot.com>
24152             Paul Eggert  <eggert@cs.ucla.edu>
24153
24154         * modules/inttypes: New file.
24155         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
24156
24157 2006-04-18  Derek Price  <derek@ximbiot.com>
24158             Paul Eggert  <eggert@cs.ucla.edu>
24159
24160         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
24161         New files.
24162
24163 2006-04-18  Derek Price  <derek@ximbiot.com>
24164             Paul Eggert  <eggert@cs.ucla.edu>
24165
24166         * lib/inttypes.h: New file.
24167         * lib/strtoimax.c: Assume <inttypes.h>.
24168
24169 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
24170
24171         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
24172         isn't mounted.  Problem reported by Kir Kolyshkin.
24173
24174 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
24175
24176         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
24177         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
24178         Derek R. Price.
24179         * lib/regex.h (RE_DUP_MAX): Update comment to match current
24180         implementation.
24181
24182 2006-04-12  Eric Blake  <ebb9@byu.net>
24183
24184         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
24185         is now done automatically by the corresponding Autoconf macro.
24186
24187 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
24188
24189         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
24190         time_r.h.
24191
24192 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
24193
24194         Merge regex changes from libc, removing some of our
24195         POSIX-conformance changes that were rejected and redoing them in a
24196         less-intrusive way.
24197
24198         * lib/regcomp.c (re_compile_internal, init_dfa):
24199         Length arg is now size_t, not Idx.  All uses changed.
24200         (peek_token): Forward decl now says internal_function.
24201         (__re_error_msgid, __re_error_msgid_idx):
24202         Now static rather than extern with attribute_hidden.
24203         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
24204         For some reason libc prefers K&R style defns for external functions.
24205         (regerror) [!defined _LIBC]: Likewise.
24206         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
24207         (seek_collating_symbol_entry, lookup_collation_sequence_value):
24208         (build_range_exp, build_collating_symbol):
24209         Use K&R-style defn.
24210         (re_compile_fastmap): Use '\0' to memset, not 0.
24211         (utf8_sb_map): Make the calculations more obvious.
24212         (init_dfa, parse_bracket_exp, build_charclass_op):
24213         Call calloc and cast result, as glibc does.
24214         (init_word_char, fetch_token, peek_token, peek_token_bracket):
24215         (build_range_exp, build_collating_symbol):
24216         Now internal functions.
24217
24218         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
24219
24220         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
24221         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
24222         Don't depend on VMS; depend on __VMS instead, for POSIX
24223         namespace cleanness.
24224         (regoff_t): Define to ssize_t, not long int.
24225
24226         Remove the REG_ macros named below.  Instead, make the old names
24227         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
24228         __USE_GNU_REGEX.
24229         (REG_BACKSLASH_ESCAPE_IN_LISTS):
24230         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
24231         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
24232         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
24233         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
24234         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
24235         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
24236         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
24237         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
24238         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
24239         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
24240         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
24241         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
24242         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
24243         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
24244         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
24245         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
24246         (REG_NREGS):
24247         Remove.  All uses replaced by the old RE_* names.
24248         (RE_BACKSLASH_ESCAPE_IN_LISTS):
24249         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
24250         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
24251         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
24252         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
24253         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
24254         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
24255         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
24256         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
24257         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
24258         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
24259         Don't bother having these macros be independent of each others'
24260         values, since they no longer exist in the POSIX name space.
24261
24262         Rename the following member names back to their old names,
24263         unless !__USE_GNU_REGEX.  All uses changed back.
24264         (buffer): Renamed from re_buffer.
24265         (allocated): Renamed from re_allocated.
24266         (used): Renamed from re_used.
24267         (syntax): Renamed from re_syntax.
24268         (fastmap): Renamed from re_fastmap.
24269         (translate): Renamed from re_translate.
24270         (can_be_null): Renamed from re_can_be_null.
24271         (regs_allocated): Renamed from re_regs_allocated.
24272         (fastmap_accurate): Renamed from re_fastmap_accurate.
24273         (no_sub): Renamed from re_no_sub.
24274         (not_bol): Renamed from re_not_bol.
24275         (not_eol): Renamed from re_not_eol.
24276         (newline_anchor): Renamed from re_newline_anchor.
24277         (num_regs): Renamed from rm_num_regs.
24278         (start): Renamed from rm_start.
24279         (end): Renamed from rm_end.
24280
24281         (free_state): Move up a bit.
24282
24283         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
24284         #define to be empty.
24285         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
24286         when that is what is intended.
24287         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
24288         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
24289         (MAX): New macro.
24290         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
24291         All uses changed back to re_malloc, etc.  It's now the caller's
24292         responsibility to check for overflow; all callers changed.
24293         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
24294         (re_x2nrealloc): Remove.
24295         (free_state): Remove decl.
24296
24297         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
24298         (re_set_registers, re_exec):
24299         Use K&R-style defn.
24300
24301         2006-01-31  Roland McGrath  <roland@redhat.com>
24302
24303         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
24304         Reported by Mike Frysinger <vapier@gentoo.org>.
24305
24306         2006-01-15  Andreas Jaeger  <aj@suse.de>
24307
24308         [BZ #1950]
24309         * lib/regex_internal.c (re_string_reconstruct): Adjust for
24310         build_wcs_upper_buffer change.
24311         (build_wcs_upper_buffer): Change return type.
24312
24313         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
24314
24315         * lib/regex_internal.h: Include <stdint.h> if available.
24316
24317         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
24318
24319         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
24320
24321         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
24322
24323         * lib/regcomp.c: Adjust for changed secondary hash function.
24324
24325         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
24326
24327         * lib/regex.h: Pretty printing.
24328         Clean up namespace a bit.
24329
24330         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
24331
24332         * lib/regexec.c (update_cur_sifted_state, check_arrival,
24333         check_arrival_add_next_nodes): Avoid using uninitialized variable.
24334
24335         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
24336                     Ulrich Drepper  <drepper@redhat.com>
24337
24338         [BZ #1302]
24339         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
24340         changed.
24341         (bitset_word_t): Renamed from bitset_word.  All uses changed.
24342
24343         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
24344
24345         [BZ #281]
24346         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
24347         * lib/regcomp.c: Remove unnecessary uses of
24348         unsigned RE_TRANSLATE_TYPE.
24349         * lib/regex_internal.h: Likewise.
24350         * lib/regex_internal.c: Likewise.
24351         * lib/regexec.c: Likewise.
24352         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
24353
24354         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
24355
24356         * lib/regexec.c (find_recover_state): Remove unnecessary
24357         initialization.
24358         (transit_state_bkref): Make DFA a const pointer.
24359         (get_subexp): Likewise.
24360         (check_arrival): Likewise.
24361         (update_cur_sifted_state): Likewise.
24362         (re_search_internal): Likewise.
24363         (prune_impossible_nodes): Likewise.
24364         (acquire_init_state_context): Likewise.
24365         (proceed_next_node): Likewise.
24366         (set_regs): Likewise.
24367         (free_fail_stack_return): Likewise.
24368         (check_arrival_expand_ecl): Mark DFA parameter as const.
24369         (check_arrival_expand_ecl_sub): Likewise.
24370         (check_subexp_limits): Likewise.
24371         (sub_epsilon_src_nodes):  Likewise.
24372         (add_epsilon_src_nodes):  Likewise.
24373         (merge_state_array): Likewise.
24374         (update_regs): Likewise.
24375         (build_trtable): Likewise.
24376         (sift_states_backward): Mark MCTX parameter as const.
24377         (build_sifted_states): Likewise.
24378         (update_cur_sifted_state): Likewise.
24379         (sift_states_mkref): Likewise.
24380         (check_arrival_expand_ecl): Mark eclosure as const.
24381         (check_dst_limits_calc_pos_1): Likewise.
24382         * lib/regex_internal.h (re_match_context_t): Make dfa a const
24383         pointer.
24384
24385         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
24386
24387         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
24388         (transit_state_sb): Likewise.
24389         (transit_state_mb): Likewise.
24390         (sift_states_iter_mb): Likewise.
24391         (check_arrival_add_next_nodes): Likewise.
24392         (check_node_accept_bytes): Change first parameter to pointer-to-const.
24393         [_LIBC] (re_search_2_stub): Use mempcpy.
24394
24395         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
24396         mbrtowc for very simple UTF-8 case.
24397
24398         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
24399         a pointer-to-const.
24400         (re_acquire_state_context): Likewise.
24401         * lib/regex_internal.h: Adjust prototypes.
24402
24403         * lib/regex.c: Prevent using C++ compilers.
24404
24405         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
24406         (re_acquire_state_context): Likewise.
24407
24408 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
24409
24410         * modules/regex (Depends-on): Add ssize_t.
24411
24412 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
24413
24414         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
24415         translation table.
24416
24417 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
24418
24419         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
24420
24421 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
24422             Bruno Haible  <bruno@clisp.org>
24423
24424         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
24425         <sys/types.h> and <inttypes.h>.
24426
24427 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24428
24429         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
24430         `__error_t_defined', so argp.h will not typedef the former.
24431
24432 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
24433
24434         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
24435         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
24436         glibc names.  Even if glibc is changed to conform to POSIX, the
24437         traditional names will be available anyway, since regex depends on
24438         the extensions module.  Also, fix a longstanding typo in the
24439         implementation of Spencer ERE test #75 from grep 2.3.  Problems
24440         reported by Emanuele Giaquinta.  Also, change sense of cached
24441         variable, so that the message makes sense.
24442
24443 2006-03-24  Simon Josefsson  <jas@extundo.com>
24444
24445         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
24446         including some doc fixes.
24447         (base64_encode_alloc): Fix +1 bug on allocation failures.
24448
24449 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24450
24451         * lib/base64.c (base64_encode): Do not read past end of array with
24452         unsanitized input on systems with CHAR_BIT > 8.
24453
24454 2006-03-24  Eric Blake  <ebb9@byu.net>
24455
24456         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
24457
24458 2006-03-22  Karl Berry  <karl@gnu.org>
24459
24460         * config/srclist.txt (*setenv.[ch]): get from coreutils.
24461         * config/srclistvars.sh (COREUTILS): new var.
24462
24463 2006-03-17  Jim Meyering  <jim@meyering.net>
24464
24465         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
24466         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
24467
24468 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
24469
24470         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
24471         no longer needs it.  Instead, check that regoff_t is as least
24472         as wide as ptrdiff_t.
24473
24474         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
24475         so that our regex.h stays compatible with the installed regex.
24476         This is helpful for installers who configure --without-included-regex.
24477         Problem reported by Emanuele Giaquinta.
24478
24479 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
24480
24481         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
24482         Typedef to long int, not to off_, as POSIX will likely change
24483         in that direction.
24484
24485 2006-03-15  Eric Blake  <ebb9@byu.net>
24486
24487         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
24488
24489 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
24490
24491         * lib/argp-help.c (validate_uparams): Fix typo
24492         * lib/argp-parse.c (argp_default_options): Consistently begin help
24493         messages with a lowercase letter.
24494
24495 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
24496
24497         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
24498         overrun buffers and shouldn't be used (much as gets shouldn't be
24499         used).
24500         * lib/time_r.c (asctime_r, ctime_r): Likewise.
24501
24502 2006-03-08  Simon Josefsson  <jas@extundo.com>
24503
24504         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
24505         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
24506
24507 2006-03-08  Simon Josefsson  <jas@extundo.com>
24508
24509         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
24510         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
24511
24512 2006-03-08  Simon Josefsson  <jas@extundo.com>
24513
24514         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
24515         signal that configure disabled the device.
24516
24517 2006-03-08  Simon Josefsson  <jas@extundo.com>
24518
24519         * build-aux/maint.mk: Fix refresh-po, to handle no translated
24520         languages.
24521
24522 2006-03-07  Simon Josefsson  <jas@extundo.com>
24523
24524         * modules/getopt (Depends-on): Add unistd.
24525
24526         * modules/unistd: New file.
24527
24528 2006-03-07  Simon Josefsson  <jas@extundo.com>
24529
24530         * modules/gc-random: New file.
24531
24532 2006-03-07  Simon Josefsson  <jas@extundo.com>
24533
24534         * m4/unistd_h.m4: New file.
24535
24536 2006-03-07  Simon Josefsson  <jas@extundo.com>
24537
24538         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
24539         test to be side-effect free by storing the result in the cache
24540         variable gl_cv_lib_readline, and moving the assignment of
24541         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
24542         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
24543
24544 2006-03-07  Simon Josefsson  <jas@extundo.com>
24545
24546         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
24547         error on missing devices (the functions will return an error).
24548
24549         * m4/gc.m4: Move random stuff to gc-random.m4
24550
24551 2006-03-07  Simon Josefsson  <jas@extundo.com>
24552
24553         * lib/unistd_.h: New file.
24554
24555 2006-03-07  Simon Josefsson  <jas@extundo.com>
24556
24557         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
24558
24559 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
24560
24561         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
24562         Problem reported by Juan Manuel Guerrero.
24563
24564 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
24565
24566         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
24567         the unistd module.
24568         * lib/getlogin_r.c: Likewise.
24569         * lib/getlogin_r.h: Likewise.
24570         * lib/glob.c: Likewise.
24571         * lib/pagealign_alloc.c: Likewise.
24572         * lib/unistd_.h: Remove; no longer needed.
24573
24574 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
24575
24576         * MODULES.html.sh (Support for systems lacking POSIX:2001):
24577         Add unistd.
24578         * modules/c-stack (Depends-on): Add unistd.
24579         * modules/getlogin_r: Likewise.
24580         * modules/glob: Likewise.
24581         * modules/pagealign_alloc: Likewise.
24582         * modules/unistd (Files): Remove lib/unistd_.h.
24583         (EXTRA_DIST): Remove.
24584         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
24585         need unistd_.h.
24586         (MOSTLYCLEANFILES): Remove unistd.h-t.
24587
24588 2006-03-03  Simon Josefsson  <jas@extundo.com>
24589
24590         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
24591
24592 2006-03-03  Simon Josefsson  <jas@extundo.com>
24593
24594         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
24595         libidn and bison.
24596
24597 2006-03-03  Simon Josefsson  <jas@extundo.com>
24598
24599         * build-aux/maint.mk: Add indent target.
24600
24601 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
24602
24603         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
24604         our replacement poll.h in any case, to avoid a differing
24605         declaration from a system header.  Seen on AIX.
24606
24607 2006-03-01  Simon Josefsson  <jas@extundo.com>
24608
24609         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
24610         <kasal@ucw.cz>.
24611
24612 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
24613
24614         * modules/gettime (Depends-on): Add extensions module.
24615         * modules/nanosleep (Depends-on): Likewise.
24616         * modules/settime (Depends-on): Likewise.
24617
24618 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
24619
24620         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
24621         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
24622         pedantically.
24623         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
24624         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
24625
24626         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
24627         not "==".  Reported by Ralf Wildenhues.
24628
24629 2006-03-01  Karl Berry  <karl@gnu.org>
24630
24631         * doc/Copyright/request-*: new files, synced from gnuorg.
24632
24633 2006-03-01  Karl Berry  <karl@gnu.org>
24634
24635         * config/srclist.txt (Copyright/*): new entries.
24636
24637 2006-02-28  Simon Josefsson  <jas@extundo.com>
24638
24639         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
24640
24641 2006-02-27  Simon Josefsson  <jas@extundo.com>
24642
24643         * lib/base64.h: Indent #define's.  From Jim Meyering
24644         <jim@meyering.net>.
24645
24646 2006-02-27  Jim Meyering  <jim@meyering.net>
24647
24648         Revert the change of 2006-02-24, so these files can continue
24649         to be sync'd from gettext.
24650         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
24651         of `config.h'.
24652
24653 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
24654
24655         * modules/intprops: New file.
24656         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
24657         Add intprops.
24658         * modules/getloadavg (Files): Remove lib/intprops.h.
24659         (Depends-on): Add intprops.
24660         * modules/human: Likewise.
24661         * modules/inttostr: Likewise.
24662         * modules/openat: Likewise.
24663         * modules/sig2str: Likewise.
24664         * modules/userspec: Likewise.
24665         * modules/utimecmp: Likewise.
24666         * modules/xnanosleep: Likewise.
24667         * modules/xstrtol: Likewise.
24668
24669 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
24670
24671         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
24672         * modules/lock-tests (TESTS): Use $(EXEEXT).
24673         * modules/tls-tests: Likewise.
24674         * modules/argp-tests: Likewise.
24675         (check_PROGRAMS): New var, replacing...
24676         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
24677
24678 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24679
24680         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
24681         `config.h'.
24682
24683 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
24684
24685         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
24686
24687 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24688
24689         Sync from coreutils.
24690         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
24691         gl_CHDIR_SAFER.
24692
24693 2006-02-22  Jim Meyering  <jim@meyering.net>
24694
24695         Sync from coreutils.
24696         * m4/chdir-safer.m4: New file.
24697
24698 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
24699
24700         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
24701         AT_FDCWD exceeds INT_MAX.
24702         * lib/openat.h (AT_FDCWD): Likewise.
24703
24704 2006-02-17  Eric Blake  <address@hidden>
24705
24706         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
24707
24708 2006-02-16  Simon Josefsson  <jas@extundo.com>
24709
24710         * modules/getaddrinfo (Depends-on): Add sys_socket.
24711
24712 2006-02-15  Simon Josefsson  <jas@extundo.com>
24713
24714         * build-aux/maint.mk: Add dsyntax-check rule.
24715
24716 2006-02-15  Eric Blake  <ebb9@byu.net>
24717
24718         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
24719         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
24720         'present but cannot compile' warnings on cygwin.
24721         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
24722         use ws2tcpip.h if sys/socket.h works.
24723         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
24724         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
24725
24726 2006-02-14  Simon Josefsson  <jas@extundo.com>
24727
24728         * modules/maintainer-makefile (Files): Rename.
24729
24730         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
24731         and (the local) Makefile.cfg to maint-cfg.mk.
24732
24733         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
24734         to the latter.
24735
24736         * modules/maintainer-makefile: New module.
24737
24738         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
24739         severaly stripped to make it possible to build it up from scratch
24740         with reliable tests.
24741
24742         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
24743         fixes to permit overriding the default actions when configure and
24744         makefile are not available.
24745
24746 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
24747
24748         Sync from coreutils.
24749         * modules/lstat (Depends-on): Don't depend on xalloc.
24750         (License): Change from GPL to LGPL, since this is now simply a
24751         replacement for a libc function.
24752
24753 2006-02-14  Jim Meyering  <jim@meyering.net>
24754
24755         Sync from coreutils.
24756
24757         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
24758         failure on deficient systems, and simplify gnulib lgpl dependencies.
24759         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
24760         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
24761
24762         * lib/xalloc-die.c: Remove unused definition of N_.
24763
24764 2006-02-14  Jim Meyering  <jim@meyering.net>
24765
24766         Sync from coreutils.
24767         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
24768         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
24769         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
24770         double-quote uses of that variable, to accommodate the rare case in
24771         which getmntent is available in none of the libraries checked.  This
24772         happens at least on FreeBSD 5.0.
24773
24774 2006-02-13  Simon Josefsson  <jas@extundo.com>
24775
24776         * gnulib-tool (Usage): Fix --import, from
24777         karl@freefriends.org (Karl Berry).
24778
24779 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
24780
24781         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
24782
24783 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
24784
24785         * lib/argp-namefrob.h: Restore changes accidentally lost during the
24786         "autoupdate" on 2005-12-12.
24787
24788 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
24789
24790         * modules/closeout (Depends-on): Remove atexit.
24791
24792 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
24793
24794         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
24795         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
24796
24797 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
24798
24799         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
24800         __EXTENSIONS__ if this causes compilation to fail.  Problem
24801         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
24802         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
24803
24804 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
24805
24806         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
24807         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
24808         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
24809         All uses changed.
24810
24811 2006-01-26  Simon Josefsson  <jas@extundo.com>
24812
24813         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
24814         prototype is visible on mingw32.
24815
24816         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
24817         for mingw32.
24818
24819         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
24820         mingw32).
24821
24822 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
24823
24824         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
24825         attempt to open for write; this always fails, at least on POSIX
24826         hosts.  This reinstates the 2006-01-09 change, which was
24827         inadvertently removed.
24828
24829 2006-01-26  Bruno Haible  <bruno@clisp.org>
24830
24831         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
24832         Reported by Paul Eggert.
24833
24834 2006-01-26  Bruno Haible  <bruno@clisp.org>
24835             Paul Eggert  <eggert@cs.ucla.edu>
24836
24837         * lib/stdbool_.h (_Bool)
24838         [(! (defined __cplusplus || defined __BEOS__)
24839           && !defined __GNUC__
24840           && !(defined __HP_cc || defined __xlc__
24841                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
24842                || defined __sgi))]:
24843         #define to signed char in these cases too; this simplifies
24844         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
24845         etc., separately) and makes it more conservative.
24846
24847 2006-01-25  Simon Josefsson  <jas@extundo.com>
24848
24849         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
24850         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
24851         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
24852
24853 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
24854
24855         * lib/argp-namefrob.h: Bugfix. Remove stray #
24856
24857 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
24858
24859         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
24860         so that we test the test.
24861         Check for yet another HP-UX cc bug involving *bool |= bool.
24862
24863 2006-01-25  Karl Berry  <karl@gnu.org>
24864
24865         * config/srclist.txt (vasnprintf.c): sync lost.
24866
24867 2006-01-25  Jim Meyering  <jim@meyering.net>
24868
24869         Sync from the stable (b5) branch of coreutils:
24870
24871         * lib/fts.c (fts_children): Don't let close() clobber errno from
24872         failed fchdir().
24873
24874         * lib/fts.c (fts_stat): When following a symlink-to-directory,
24875         don't necessarily interpret stat-fails+lstat-succeeds as indicating
24876         a dangling symlink.  That can also happen at least for ELOOP.
24877         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
24878         FYI, this bug predates the inclusion of fts.c in coreutils.
24879
24880         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
24881         in their own block, so pre-c99 compilers don't object.
24882
24883         Avoid the double-free (first in fts_read, second in fts_close) that
24884         would occur when an `active' directory is made inaccessible (e.g.,
24885         via chmod a-x) during a traversal.
24886         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
24887         before returning.  Reproduce this failure by
24888         mkdir -p a/b; cd a; chmod a-x . b
24889         Reported by Stavros Passas.
24890
24891 2006-01-25  Jim Meyering  <jim@meyering.net>
24892
24893         * lib/fileblocks.c: Remove more useless parentheses.
24894         * lib/readutmp.h: Likewise.
24895
24896 2006-01-25  Bruno Haible  <bruno@clisp.org>
24897
24898         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
24899         warnings.
24900         Reported by Paul Eggert.
24901
24902 2006-01-25  Bruno Haible  <bruno@clisp.org>
24903
24904         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
24905         rid of a trap command. For Solaris sh.
24906         Reported by Mark D. Baushke <mdb@gnu.org>.
24907
24908 2006-01-24  Simon Josefsson  <jas@extundo.com>
24909
24910         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
24911         Bruno.
24912
24913 2006-01-24  Karl Berry  <karl@gnu.org>
24914
24915         * config/srclist.txt (argp-namefrob.h): sync lost.
24916
24917 2006-01-24  Jim Meyering  <jim@meyering.net>
24918
24919         * modules/openat (Files): Add lib/intprops.h.
24920         From Mark D. Baushke.
24921
24922 2006-01-24  Jim Meyering  <jim@meyering.net>
24923
24924         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
24925         Reported by Mark D. Baushke.
24926
24927 2006-01-24  Jim Meyering  <jim@meyering.net>
24928
24929         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
24930
24931 2006-01-24  Bruno Haible  <bruno@clisp.org>
24932
24933         * modules/strnlen (Maintainer): Change from glibc to all.
24934
24935 2006-01-24  Bruno Haible  <bruno@clisp.org>
24936
24937         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
24938         Patch by Paul Eggert.
24939
24940 2006-01-24  Bruno Haible  <bruno@clisp.org>
24941
24942         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
24943         already has it.
24944         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
24945         2005-11-26.
24946
24947         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
24948         'signed char' to avoid problems with the built-in _Bool type.
24949         Reported by Paul Eggert on 2005-11-26.
24950
24951 2006-01-24  Bruno Haible  <bruno@clisp.org>
24952
24953         * gnulib-tool (func_import): Avoid constructing complicated sed
24954         expressions inside backquote.
24955         Report and solution by Mark D. Baushke <mdb@gnu.org>.
24956
24957 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
24958
24959         These changes imported from libc.
24960         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
24961         test and two separate function calls.
24962         * lib/strndup.c (__strndup): Add libc_hidden_def.
24963
24964 2006-01-23  Simon Josefsson  <jas@extundo.com>
24965
24966         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
24967         Remove the test_*_SOURCES variable: automake infers it by default.
24968         * modules/tls-tests: Likewise.
24969
24970 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
24971
24972         Work around porting bugs reported by Dieter in
24973         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
24974         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
24975         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
24976         Include "getopt.h" first, to check interface.
24977         (getenv): Declare only if defined HAVE_DECL_GETENV &&
24978         !HAVE_DECL_GETENV.
24979         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
24980         (__strndup): Revert to K&R-style function dfns, the glibc style.
24981         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
24982         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
24983         Include strnlen.h first, to get prototype properly.
24984         (strnlen): Renamed from __strnlen.
24985         Remove weak alias.
24986
24987 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
24988
24989         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
24990
24991 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
24992
24993         * config/srclist.txt: Adjust to reflect glibc reorganization.
24994         This affects only comments.
24995
24996 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
24997
24998          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
24999          Reported by Bruce Korb <bkorb@gnu.org>.
25000
25001 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
25002
25003         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
25004         to pacify gcc -Wswitch-default.
25005
25006 2006-01-22  Bruno Haible  <bruno@clisp.org>
25007
25008         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
25009         temporary buffer for sprintf, take into account the precision also
25010         for 'd', 'i', 'u', 'o', 'x', 'X'.
25011
25012 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
25013
25014         * modules/argp-tests: New module
25015         * tests/test-argp.c: New file
25016         * tests/test-argp-2.sh: New file
25017
25018 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
25019
25020         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
25021         (__argp_base_name): Removed
25022         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
25023         typo.
25024         (__argp_base_name): Provide macro definition or extern declaration
25025         depending on the configuration
25026
25027 2006-01-20  Simon Josefsson  <jas@extundo.com>
25028
25029         * modules/inet_ntop (Depends-on): Depend on sys_socket.
25030
25031 2006-01-20  Simon Josefsson  <jas@extundo.com>
25032
25033         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
25034
25035 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
25036
25037         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
25038         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
25039         Suggested by Bruno Haible.
25040
25041 2006-01-20  Karl Berry  <karl@gnu.org>
25042
25043         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
25044         until changes propagate, I guess.
25045
25046 2006-01-19  Simon Josefsson  <jas@extundo.com>
25047
25048         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
25049
25050 2006-01-19  Simon Josefsson  <jas@extundo.com>
25051
25052         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
25053
25054 2006-01-19  Simon Josefsson  <jas@extundo.com>
25055
25056         * gnulib-tool: Set check_PROGRAMS.
25057
25058         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
25059         modules/des-tests, modules/gc-arcfour-tests,
25060         modules/gc-arctwo-tests, modules/gc-des-tests,
25061         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
25062         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
25063         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
25064         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
25065         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
25066         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
25067         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
25068         test_*_SOURCES.
25069
25070 2006-01-18  Simon Josefsson  <jas@extundo.com>
25071
25072         * modules/socklen (Depends-on): Depend on sys_socket.
25073
25074 2006-01-18  Simon Josefsson  <jas@extundo.com>
25075
25076         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
25077         modules/des-tests, modules/gc-arcfour-tests,
25078         modules/gc-arctwo-tests, modules/gc-des-tests,
25079         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
25080         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
25081         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
25082         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
25083         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
25084         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
25085         $(EXEEXT) to automake TESTS variable, for mingw32.
25086
25087 2006-01-17  Simon Josefsson  <jas@extundo.com>
25088
25089         * modules/socklen (Include): Need sys/socket.h.
25090
25091 2006-01-17  Bruno Haible  <bruno@clisp.org>
25092
25093         * modules/ssize_t (Include): Add <sys/types.h>.
25094
25095 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
25096
25097         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
25098         it's not portable and it doesn't work with cross-compiles.
25099         Problem reported by Bruno Haible.  Fix missing-$ typo in
25100         'test "gl_cv_ignore_unused_libraries" ...' that prevented
25101         -zignore from being used with Sun's C compiler.
25102
25103 2006-01-12  Simon Josefsson  <jas@extundo.com>
25104
25105         * lib/base64.c: Fix warning, reported by Bruno Haible
25106         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
25107
25108 2006-01-12  Bruno Haible  <bruno@clisp.org>
25109
25110         * modules/ldd: New file.
25111         * build-aux/ldd.sh.in: New file.
25112         * MODULES.html.sh (Support for building libraries and executables): Add
25113         ldd.
25114
25115 2006-01-12  Bruno Haible  <bruno@clisp.org>
25116
25117         * m4/ldd.m4: New file.
25118
25119 2006-01-12  Bruno Haible  <bruno@clisp.org>
25120
25121         * gnulib-tool (func_import, func_create_testdir): Don't go into an
25122         endless loop while replacing $auxdir with build-aux.
25123
25124 2006-01-11  Simon Josefsson  <jas@extundo.com>
25125
25126         * lib/stdint_.h (SIZE_MAX): Add missing (.
25127
25128 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
25129
25130         Sync from coreutils.
25131         * lib/md5.c: Fix commentary typos.
25132         (alignof, UNALIGNED_P): No need for a GCC-specific version.
25133         * lib/md5.h (__attribute__): Remove; unused.
25134         * lib/sha1.c: Fix commentary to match md5 better.
25135         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
25136         so that we don't need to worry about alignment.  All uses changed.
25137         This merges the 2005-10-28 md5 change into sha1.
25138
25139 2006-01-11  Jim Meyering  <jim@meyering.net>
25140
25141         Sync from coreutils.
25142         * lib/md5.c (OP): Fix spacing.
25143
25144 2006-01-11  Bruno Haible  <bruno@clisp.org>
25145
25146         Ensure automatic ordering between gl_LOCK and gl_ARGP.
25147         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
25148         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
25149
25150 2006-01-11  Bruno Haible  <bruno@clisp.org>
25151
25152         Ensure automatic ordering between gl_LOCK and gl_ARGP.
25153         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
25154         the "early" section as well.
25155
25156 2006-01-11  Bruno Haible  <bruno@clisp.org>
25157
25158         Avoid "ar: no archive members specified" error on MacOS X.
25159         * gnulib-tool (func_modules_add_dummy): New function.
25160         (func_import, func_create_testdir): Invoke it.
25161
25162 2006-01-11  Bruno Haible  <bruno@clisp.org>
25163
25164         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
25165         with $auxdir in AC_CONFIG_FILES statements.
25166
25167 2006-01-11  Bruno Haible  <bruno@clisp.org>
25168
25169         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
25170         Initialize also noinst_HEADERS to empty.
25171
25172 2006-01-11  Bruno Haible  <bruno@clisp.org>
25173
25174         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
25175         variables.
25176         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
25177         autoreconf.
25178
25179 2006-01-11  Bruno Haible  <bruno@clisp.org>
25180
25181         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
25182         overridable by the user.
25183         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25184
25185 2006-01-10  Simon Josefsson  <jas@extundo.com>
25186
25187         * modules/sys_socket: New file.
25188
25189 2006-01-10  Simon Josefsson  <jas@extundo.com>
25190
25191         * m4/sys_socket_h.m4: New file.
25192
25193 2006-01-10  Simon Josefsson  <jas@extundo.com>
25194
25195         * lib/socket_.h: New file.
25196
25197 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
25198
25199         * modules/readutmp (Maintainer): Add myself.
25200
25201 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
25202
25203         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
25204         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
25205         People who are still concerned with buggy memcmp implementations
25206         can invoke gl_FUNC_MEMCMP themselves.
25207
25208 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
25209
25210         * lib/regex_internal.h (BITSET_WORD_BITS):
25211         Work around a bug in 64-bit PGC (before version 6.1-2), where the
25212         preprocessor mishandles large unsigned values as if they were signed.
25213         Problem reported by Claudio Fontana in
25214         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
25215
25216 2006-01-10  Jim Meyering  <jim@meyering.net>
25217
25218         Avoid the double-free (first in fts_read, second in fts_close) that
25219         would occur when an `active' directory is made inaccessible (e.g.,
25220         via chmod a-x) during a traversal.
25221         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
25222         before returning.  Reproduce this failure by
25223         mkdir -p a/b; cd a; chmod a-x . b
25224         Reported by Stavros Passas.
25225
25226         Sync from coreutils.
25227         * lib/sha1.c: Tweak grammar in a comment.
25228
25229 2006-01-10  Jim Meyering  <jim@meyering.net>
25230
25231         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
25232         Patch by Joerg Sonnenberger.
25233
25234 2006-01-10  Bruno Haible  <bruno@clisp.org>
25235
25236         * modules/readutmp: Depend on module free.
25237         * modules/strtok_r: Depend on module restrict.
25238
25239 2006-01-10  Bruno Haible  <bruno@clisp.org>
25240
25241         * modules/gettext (configure.ac): Add an invocation of
25242         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
25243
25244 2006-01-10  Bruno Haible  <bruno@clisp.org>
25245
25246         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
25247         Reported by Werner Lemberg <wl@gnu.org>.
25248
25249 2006-01-10  Bruno Haible  <bruno@clisp.org>
25250
25251         * lib/localcharset.c: Update from GNU gettext.
25252
25253 2006-01-10  Bruno Haible  <bruno@clisp.org>
25254
25255         * lib/argp.h (__const): Remove macro. Use const instead.
25256         * lib/argp-fmtstream.h (__const): Likewise.
25257         * lib/glob_.h (__const): Remove macro.
25258         * lib/glob-libc.h: Use const instead of __const.
25259
25260 2006-01-10  Bruno Haible  <bruno@clisp.org>
25261
25262         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
25263         variable.
25264         Needed to avoid an automake error regarding the 'gettext' module.
25265
25266 2006-01-09  Simon Josefsson  <jas@extundo.com>
25267
25268         * modules/inet_ntop (Depends-on): Add restrict.
25269
25270 2006-01-09  Simon Josefsson  <jas@extundo.com>
25271
25272         * modules/gc-rijndael-tests (License): Put under LGPL.
25273
25274         * modules/gc-des-tests (License): Likewise.
25275
25276         * modules/gc-arcfour-tests (License): Likewise.
25277
25278         * modules/gc-arctwo-tests (License): Likewise.
25279
25280         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
25281
25282         * modules/gc-hmac-sha1-tests (Files): Likewise.
25283
25284         * modules/gc-hmac-md5-tests (License): Likewise.
25285
25286         * modules/gc-sha1-tests (License): Likewise.
25287
25288         * modules/gc-md5-tests (License): Likewise.
25289
25290         * modules/gc-md4-tests (License): Likewise.
25291
25292         * modules/gc-md2-tests (License): Likewise.
25293
25294         * modules/gc-tests (License): Likewise.
25295
25296         * modules/des-tests (License): Likewise.
25297
25298         * modules/md4-tests (License): Likewise.
25299
25300         * modules/md2-tests (License): Likewise.
25301
25302 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
25303
25304         Sync from coreutils:
25305
25306         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
25307         * modules/lib-ignore: New file.
25308         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
25309         chdir-safer.m4, lchmod.m4.
25310         * modules/openat: Add mkdirat.c, openat-priv.h.
25311
25312 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
25313
25314         Sync from coreutils.
25315         * m4/lib-ignore.m4: New file.
25316         * m4/lchmod.m4: New file.
25317
25318 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
25319
25320         Sync from coreutils.
25321         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
25322         for write access: POSIX says that must fail.
25323         * lib/fts.c (diropen): Likewise.
25324         * lib/save-cwd.c (save_cwd): Likewise.
25325         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
25326         well, for minor improvements on hosts that lack O_DIRECTORY.
25327         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
25328         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
25329         Fall back on chown if open failed with EACCES.
25330
25331         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
25332         Report an error at compile-time if only a 1-second nominal clock
25333         resolution is found.
25334
25335         * lib/lchmod.h: New file.
25336         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
25337         (make_dir_parents): Use lchown rather than chown, and
25338         lchmod rather than chmod.
25339
25340         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
25341         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
25342         "proc" reported by n0dalus.
25343
25344         * lib/mountlist.c: Include <limits.h>.
25345         (dev_from_mount_options)
25346         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
25347         New function.  It no longer assumes "dev=" has the System V meaning
25348         on Linux (since it doesn't).  It also parses "dev=" more carefully.
25349         (read_file_system_list)
25350         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
25351         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
25352         dev= in that case.
25353
25354         * lib/posixtm.h (PDS_PRE_2000): New macro.
25355         * lib/posixtm.c (year): Arg is now syntax_bits rather than
25356         allow_century.  All usages changed.  Reject dates outside the range
25357         1969-1999 if PDS_PRE_2000 is used.
25358
25359 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
25360
25361         Sync from coreutils.
25362         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
25363         (Time of day items): Mention the possibility of leap seconds.
25364         Problem reported by Dr. David Alan Gilbert.
25365
25366 2006-01-09  Jim Meyering  <jim@meyering.net>
25367
25368         Sync from coreutils.
25369
25370         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
25371
25372         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
25373
25374         * lib/modechange.c (mode_compile): Reject an invalid mode string
25375         that starts with an octal digit.  From Andreas Gruenbacher.
25376
25377         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
25378         and dup to open_safer and dup_safer, respectively.
25379         (openat_permissive): Fix typo in comment.
25380
25381         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
25382         "gettext.h"; either no longer needed or are guaranteed by openat.h.
25383         (_): Remove; no longer needed.
25384         (openat): Renamed from rpl_openat; no need for rpl_openat
25385         since openat.h renames openat for us.
25386         Replace most of the body with a call to openat_permissive,
25387         to avoid duplicate code.
25388         Port to (probably hypothetical) environments were mode_t is
25389         wider than int.
25390         (openat_permissive): Require mode arg, so that we can check
25391         types better.  Put it just after flags.  Change cwd failure
25392         indicator from pointer-to-bool to pointer-to-errno-value.
25393         All callers changed.
25394         Invoke openat_save_fail and/or openat_restore_fail if
25395         cwd_errno is null, so that openat can call us.
25396         (openat_permissive, fdopendir, fstatat, unlinkat):
25397         Simplify errno handling to avoid some duplicate code,
25398         as it's OK to set errno on success.
25399         * lib/openat.h: Revamp code so that function macros depend on
25400         __OPENAT_PREFIX only, not also on AT_FDCWD.
25401         (openat_ro): Remove.  Caller changed to use openat_permissive.
25402         (openat_permissive): Now a macro, if not a function.
25403         (openat_restore_fail, openat_save_fail): Now always functions,
25404         since mkdirat needs them even if __OPENAT_PREFIX is defined.
25405
25406         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
25407         and openat.c.
25408         * lib/mkdirat.c: Include openat-priv.h.
25409         Remove definitions of macros defined therein.
25410         * lib/openat.c: Likewise.
25411
25412         * lib/mkdirat.c (mkdirat): New file and function.
25413         * lib/openat.h (mkdirat): Declare.
25414
25415         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
25416
25417         * lib/openat.h (openat_permissive): Declare.
25418         (openat_ro): Define.
25419
25420         * lib/openat.c (EXPECTED_ERRNO): New macro.
25421         (openat_permissive): New function -- used in remove.c rewrite.
25422         (all functions): Set errno just before returning, only if there
25423         was an actual failure.
25424         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
25425
25426         Emulate openat-family functions using Linux's procfs, if possible.
25427         Idea and some code based on Ulrich Drepper's glibc changes.
25428
25429         * lib/openat.c: (BUILD_PROC_NAME): New macro.
25430         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
25431         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
25432         before falling back on save_cwd and restore_cwd.
25433         (fdopendir, fstatat, unlinkat): Likewise.
25434
25435         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
25436         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
25437
25438         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
25439         as second argument to va_arg.  Otherwise, some versions of gcc
25440         warn that `if this code is reached, the program will abort'.
25441
25442 2006-01-09  Jim Meyering  <jim@meyering.net>
25443
25444         Sync from coreutils.
25445         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
25446         Require openat-priv.h.
25447
25448 2006-01-09  Bruno Haible  <bruno@clisp.org>
25449
25450         * modules/strnlen (Include): Use strnlen.h.
25451
25452 2006-01-09  Bruno Haible  <bruno@clisp.org>
25453
25454         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
25455
25456 2006-01-09  Bruno Haible  <bruno@clisp.org>
25457
25458         * lib/sysexit_.h (EX_OK): New macro.
25459         Suggested by Martin Lambers <marlam@marlam.de>.
25460
25461 2006-01-09  Bruno Haible  <bruno@clisp.org>
25462
25463         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
25464         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
25465
25466 2006-01-09  Bruno Haible  <bruno@clisp.org>
25467
25468         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
25469         numbers.
25470
25471 2006-01-09  Bruno Haible  <bruno@clisp.org>
25472
25473         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
25474         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
25475         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
25476         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
25477
25478 2006-01-09  Bruno Haible  <bruno@clisp.org>
25479
25480         * build-aux/javacomp.sh.in: New file, moved from lib/.
25481         * modules/javacomp-script (Files): Update.
25482         (configure.ac): Add AC_CONFIG_FILES invocation.
25483         (EXTRA_DIST): Remove variable.
25484
25485         * build-aux/javaexec.sh.in: New file, moved from lib/.
25486         * modules/javaexec (Files): Update.
25487         (configure.ac): Add AC_CONFIG_FILES invocation.
25488         (EXTRA_DIST): Remove javaexec.sh.in.
25489
25490         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
25491         * modules/csharpcomp-script (Files): Update.
25492         (configure.ac): Add AC_CONFIG_FILES invocation.
25493         (EXTRA_DIST): Remove variable.
25494
25495         * build-aux/csharpexec.sh.in: New file, moved from lib/.
25496         * modules/csharpexec (Files): Update.
25497         (configure.ac): Add AC_CONFIG_FILES invocation.
25498         (EXTRA_DIST): Remove csharpexec.sh.in.
25499
25500 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
25501
25502         Sync from coreutils.
25503
25504         Add POSIX ACL support
25505         * lib/acl.h (copy_acl, set_acl): Add declarations.
25506         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
25507         systems other than Linux.
25508         (chmod_or_fchmod): New function: use fchmod when possible,
25509         and chmod otherwise.
25510         (file_has_acl): Add a POSIX ACL implementation, with a
25511         Linux-specific subcase.
25512         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
25513         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
25514         acls are unsupported.
25515         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
25516         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
25517         are unsupported.
25518
25519 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
25520
25521         Sync from coreutils.
25522         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
25523
25524 2006-01-07  Bruno Haible  <bruno@clisp.org>
25525
25526         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
25527         gl_EARLY.
25528
25529 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
25530
25531         * lib/strftime.c (tzname): Don't declare if it is already #defined.
25532         Problem reported for Mingw by Mark Junker.
25533
25534 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
25535
25536         * README: Gnulib normally doesn't generate a tarball.
25537
25538 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
25539
25540         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
25541         long int, not int, for nanosecond counts, so that people who are
25542         used to POSIX struct timespec won't be surprised.  Reported by Jim
25543         Meyering.
25544
25545 2005-12-28  Bruno Haible  <bruno@clisp.org>
25546
25547         * build-aux/config.rpath: Update from GNU gettext.
25548
25549 2005-12-16  Jim Meyering  <jim@meyering.net>
25550
25551         * modules/fprintftime: New module.
25552         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
25553
25554 2005-12-16  Jim Meyering  <jim@meyering.net>
25555
25556         * m4/fprintftime.m4: New file.
25557
25558 2005-12-16  Jim Meyering  <jim@meyering.net>
25559
25560         * lib/fprintftime.c, lib/fprintftime.h: New files.
25561
25562 2005-12-15  Simon Josefsson  <jas@extundo.com>
25563
25564         * modules/socklen (configure.ac): Fix M4 macro name, to align with
25565         new m4/socklen.m4.
25566
25567 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
25568
25569         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
25570         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
25571
25572 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
25573
25574         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
25575         * lib/argp-help.c (fill_in_uparams): Check if the constructed
25576         struct uparams is valid. Fall back to the default values if it is
25577         not.
25578
25579 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
25580
25581         * modules/argp (Files): Add argp-pin.c
25582         (Depends-on): dirname
25583         (lib_SOURCES): Add argp-pin.c
25584
25585 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
25586
25587         * m4/argp.m4:  Check if program_invocation_name and
25588         program_invocation_short_name are declared and define appropriate
25589         macros if they are not.
25590
25591 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
25592
25593         * lib/argp-help.c (__argp_base_name): New function
25594         (__argp_short_program_name): Rewrite using __argp_base_name
25595         * lib/argp-namefrob.h: Define program_invocation_name and
25596         program_invocation_short_name if requested
25597         (__argp_base_name): Add prototype
25598         * lib/argp-parse.c (argp_def): Use gettext wrappers
25599         (argp_default_parser): Use __argp_base_name
25600         * lib/argp-pin.c: New file. Defines program_invocation_name and
25601         program_invocation_short_name on systems that lack them.
25602
25603 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
25604
25605         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
25606         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
25607         porting problem reported by Georg Schwarz in
25608         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
25609
25610 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
25611
25612         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
25613         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
25614         porting problem reported by Georg Schwarz in
25615         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
25616
25617 2005-12-05  Bruno Haible  <bruno@clisp.org>
25618
25619         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
25620         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
25621         Reported by Mark Junker <mjscod@gmx.de>.
25622
25623 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
25624
25625         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
25626         Use implementation from Albert Chin, with some
25627         comments/corrections by Stepan Kasal and myself.
25628
25629 2005-12-02  Bruno Haible  <bruno@clisp.org>
25630
25631         * gnulib-tool (func_import): Accept GPLed build tool modules when
25632         --lgpl is given.
25633         * modules/csharpcomp-script: New file.
25634         * modules/csharpcomp: Depend on it.
25635         * modules/javacomp-script: New file.
25636         * modules/javacomp: Depend on it.
25637         Suggested by Simon Josefsson.
25638
25639 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
25640
25641         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
25642         statement, to work around an HP-UX 10.20 compiler bug reported by
25643         Peter O'Gorman.
25644
25645 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
25646
25647         * modules/savedir (Depends-on): Add openat.
25648
25649 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
25650
25651         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
25652         (uintmax_t) [defined uintmax_t]: Do not declare.
25653         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
25654         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
25655         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
25656         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
25657         sake of portability to weird hosts that C allows (though we don't
25658         know of any practical examples).
25659
25660         * lib/savedir.h (fdsavedir): New decl.
25661         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
25662         contains most of the former guts of savedir.
25663         (savedir): Use savedirstream.
25664         Include "openat.h".
25665
25666 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
25667
25668         * modules/obstack (Files): Add m4/ulonglong.m4.
25669         Problem reported by Davide Angelocola.
25670
25671 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
25672
25673         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
25674         coreutils no longer futzes with rounding modes.
25675
25676 2005-11-14  Jim Meyering  <jim@meyering.net>
25677
25678         * lib/mkstemp-safer.c: Include <config.h>, required for possible
25679         replacement of mkstemp.
25680
25681 2005-11-10  Simon Josefsson  <jas@extundo.com>
25682
25683         * lib/readline.c: Remove EOL.
25684
25685 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
25686
25687         * modules/gethrxtime (Depends-on): Add gettime.
25688
25689 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
25690
25691         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
25692         or gettimeofday; no longer needed.
25693
25694 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
25695
25696         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
25697         time business.
25698         (gethrxtime) [! (HAVE_NANOUPTIME
25699         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
25700         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
25701         our own approximation.
25702
25703 2005-11-08  Eric Blake  <ebb9@byu.net>
25704
25705         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
25706
25707 2005-11-08  Eric Blake  <ebb9@byu.net>
25708
25709         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
25710
25711 2005-11-04  Bruno Haible  <bruno@clisp.org>
25712
25713         * gnulib-tool: Implement --update mode.
25714
25715 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
25716
25717         Fix porting problem reported by Theodoros V. Kalamatianos.
25718         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
25719         Don't assume that futimes failing means we must fail.
25720
25721 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
25722
25723         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
25724         variables to suggest the intended function of the PATH_MAX check.
25725
25726 2005-10-30  Kean Johnston  <jkj@sco.com>
25727
25728         Trivial changes to support SCO systems.
25729         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
25730         as PATH_MAX.
25731         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
25732         where __ptr is null when no I/O is pending.
25733
25734 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
25735
25736         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
25737         leave errno alone.  Problem reported by Dmitry V. Levin.
25738
25739 2005-10-28  Simon Josefsson  <jas@extundo.com>
25740
25741         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
25742         Test more.
25743
25744         * tests/test-gc-md2.c, tests/test-md2.c: New files.
25745
25746         * modules/md2, modules/md2-tests: New files.
25747
25748 2005-10-28  Simon Josefsson  <jas@extundo.com>
25749
25750         * m4/inet_ntop.m4: More tests.
25751
25752         * m4/gc-md2.m4, md2.m4: New file.
25753
25754 2005-10-28  Simon Josefsson  <jas@extundo.com>
25755
25756         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
25757         "restrict" keywords, as per POSIX.  Protect the function
25758         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
25759         Don't use K&R prototypes.  Check the sprintf return values.
25760         Re-define EAFNOSUPPORT if not present.  Indent.
25761
25762         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
25763         suggested by Bruno Haible <bruno@clisp.org>.
25764
25765         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
25766
25767         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
25768
25769         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
25770         libgcrypt).
25771
25772         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
25773
25774         * lib/md2.h, lib/md2.c: New files.
25775
25776 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
25777
25778         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
25779         errno alone.  Problem reported by Frederic Jolliton.
25780
25781 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
25782
25783         * modules/verify (License): Change from GPL to LGPL.  This is a
25784         tiny module and there are apparently near-equivalents that are
25785         under the BSD license.
25786
25787 2005-10-24  Simon Josefsson  <jas@extundo.com>
25788
25789         * modules/sha1: Relicense to LGPL.
25790
25791 2005-10-24  Simon Josefsson  <jas@extundo.com>
25792
25793         * lib/md4.h: Shrink buffer size, now that we changed the type.
25794
25795 2005-10-23  Simon Josefsson  <jas@extundo.com>
25796
25797         * gnulib-tool (func_import): Fix --tests-base.
25798
25799 2005-10-22  Simon Josefsson  <jas@extundo.com>
25800
25801         * modules/arcfour (Depends-on): Need stdint.
25802
25803 2005-10-22  Simon Josefsson  <jas@extundo.com>
25804
25805         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
25806         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
25807
25808 2005-10-22  Simon Josefsson  <jas@extundo.com>
25809
25810         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
25811         suggested by Bruno Haible <bruno@clisp.org>.
25812
25813 2005-10-22  Simon Josefsson  <jas@extundo.com>
25814
25815         * lib/crc.h: Include stddef.h, for size_t.
25816
25817 2005-10-22  Simon Josefsson  <jas@extundo.com>
25818
25819         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
25820         arcfour_context struct (simplify test vector testing in GNU
25821         Shishi).
25822
25823 2005-10-21  Simon Josefsson  <jas@extundo.com>
25824
25825         * modules/des, modules/des-tests: New files.
25826
25827         * modules/gc-des, modules/gc-des-tests: New files.
25828
25829         * tests/test-des.c, tests/test-gc-des.c: New file.
25830
25831 2005-10-21  Simon Josefsson  <jas@extundo.com>
25832
25833         * modules/arctwo, modules/arctwo-tests: New files.
25834
25835         * tests/test-arctwo.c: New file.
25836
25837         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
25838
25839         * tests/test-gc-arctwo.c: New file.
25840
25841 2005-10-21  Simon Josefsson  <jas@extundo.com>
25842
25843         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
25844         Bruno Haible <bruno@clisp.org>.
25845
25846         * m4/gc-des.m4: New file.
25847
25848 2005-10-21  Simon Josefsson  <jas@extundo.com>
25849
25850         * m4/arctwo.m4: New file.
25851
25852         * m4/gc-arctwo.m4: New file.
25853
25854 2005-10-21  Simon Josefsson  <jas@extundo.com>
25855
25856         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
25857         block.
25858
25859 2005-10-21  Simon Josefsson  <jas@extundo.com>
25860
25861         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
25862         <bruno@clisp.org>.
25863
25864         * lib/hmac-sha1.c (hmac_sha1): Likewise.
25865
25866         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
25867         Bruno Haible <bruno@clisp.org>.
25868
25869         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
25870         <bruno@clisp.org>.
25871
25872 2005-10-21  Simon Josefsson  <jas@extundo.com>
25873
25874         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
25875
25876 2005-10-21  Simon Josefsson  <jas@extundo.com>
25877
25878         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
25879
25880 2005-10-21  Simon Josefsson  <jas@extundo.com>
25881
25882         * lib/des.h, lib/des.c: New files.
25883
25884         * lib/gc-gnulib.c: Support DES.c
25885
25886 2005-10-21  Simon Josefsson  <jas@extundo.com>
25887
25888         * lib/arctwo.h, lib/arctwo.c: New files.
25889
25890         * lib/gc-gnulib.c: Support ARCTWO.
25891
25892 2005-10-21  Simon Josefsson  <jas@extundo.com>
25893
25894         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
25895         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25896
25897 2005-10-21  Simon Josefsson  <jas@extundo.com>
25898
25899         * gnulib-tool (func_import, func_create_testdir): Define automake
25900         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
25901         Makefile.am snippet),
25902         suggested by Bruno Haible <bruno@clisp.org>.
25903
25904         * modules/gc (Makefile.am): Use it.
25905
25906 2005-10-21  Bruno Haible  <bruno@clisp.org>
25907
25908         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
25909         patch.
25910
25911 2005-10-19  Simon Josefsson  <jas@extundo.com>
25912
25913         * tests/test-gc-rijndael.c: New file.
25914
25915         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
25916
25917 2005-10-19  Simon Josefsson  <jas@extundo.com>
25918
25919         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
25920         interface too.
25921
25922 2005-10-19  Simon Josefsson  <jas@extundo.com>
25923
25924         * tests/test-gc-arcfour.c: New file.
25925
25926         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
25927
25928 2005-10-19  Simon Josefsson  <jas@extundo.com>
25929
25930         * modules/gc-md4, modules/gc-md4-tests: New file.
25931
25932         * tests/test-gc-md4.c: New file.
25933
25934 2005-10-19  Simon Josefsson  <jas@extundo.com>
25935
25936         * m4/gc-md4.m4: New file.
25937
25938 2005-10-19  Simon Josefsson  <jas@extundo.com>
25939
25940         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
25941         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
25942         <kasal@ucw.cz>.
25943
25944 2005-10-19  Simon Josefsson  <jas@extundo.com>
25945
25946         * m4/gc-arcfour.m4: New file.
25947
25948         * m4/gc-rijndael.m4: New file.
25949
25950 2005-10-19  Simon Josefsson  <jas@extundo.com>
25951
25952         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
25953
25954 2005-10-19  Simon Josefsson  <jas@extundo.com>
25955
25956         * lib/gc-gnulib.c: Support ARCFOUR.
25957
25958 2005-10-19  Simon Josefsson  <jas@extundo.com>
25959
25960         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
25961         support.
25962
25963         * lib/gc.h: Add ECB enum type.
25964
25965         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
25966
25967 2005-10-18  Simon Josefsson  <jas@extundo.com>
25968
25969         * tests/test-md5.c: New file.
25970
25971         * modules/md5-tests: New file.
25972
25973 2005-10-18  Simon Josefsson  <jas@extundo.com>
25974
25975         * tests/test-md4.c: New file.
25976
25977         * modules/md4, modules/md4-tests: New files.
25978
25979 2005-10-18  Simon Josefsson  <jas@extundo.com>
25980
25981         * m4/md4.m4: New file.
25982
25983 2005-10-18  Simon Josefsson  <jas@extundo.com>
25984
25985         * lib/md4.h, lib/md4.c: New files, based on md5.?.
25986
25987 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
25988
25989         * gnulib-tool (func_create_testdir): Omit the second check whether
25990         BUILT_SOURCES in nonempty.
25991
25992 2005-10-17  Simon Josefsson  <jas@extundo.com>
25993
25994         * tests/test-rijndael.c: New file.
25995
25996 2005-10-17  Simon Josefsson  <jas@extundo.com>
25997
25998         * modules/sha1: Depend on stdint instead of md5.
25999
26000         * modules/md5: Depend on stdint, remove uint32_t.
26001
26002 2005-10-17  Simon Josefsson  <jas@extundo.com>
26003
26004         * modules/gc-sha1-tests: New file.
26005
26006         * tests/test-gc-sha1.c: New file.
26007
26008 2005-10-17  Simon Josefsson  <jas@extundo.com>
26009
26010         * m4/md5.m4: Remove call to uint32_t.m4.
26011
26012 2005-10-17  Simon Josefsson  <jas@extundo.com>
26013
26014         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
26015
26016         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
26017         md5.h.
26018
26019         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
26020
26021         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
26022
26023 2005-10-17  Simon Josefsson  <jas@extundo.com>
26024
26025         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
26026
26027 2005-10-17  Simon Josefsson  <jas@extundo.com>
26028
26029         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
26030
26031 2005-10-17  Simon Josefsson  <jas@extundo.com>
26032
26033         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
26034
26035         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
26036
26037 2005-10-17  Bruno Haible  <bruno@clisp.org>
26038
26039         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
26040         that it can also be used in a test.
26041
26042 2005-10-16  Bruno Haible  <bruno@clisp.org>
26043
26044         * gnulib-tool (func_emit_tests_Makefile_am): Also define
26045         TESTS_ENVIRONMENT, so that individual tests can augment it.
26046
26047         * gnulib-tool (func_create_testdir): Use an intermediate target for
26048         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
26049         macros, like $(ALLOCA_H), which cannot be passed through the command
26050         line.
26051
26052 2005-10-15  Simon Josefsson  <jas@extundo.com>
26053
26054         * modules/rijndael-tests: New file.
26055
26056         * modules/rijndael: New file.
26057
26058 2005-10-15  Simon Josefsson  <jas@extundo.com>
26059
26060         * m4/rijndael.m4: New file.
26061
26062 2005-10-15  Simon Josefsson  <jas@extundo.com>
26063
26064         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
26065
26066         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
26067
26068 2005-10-14  Simon Josefsson  <jas@extundo.com>
26069
26070         * tests/test-arcfour.c: New file.
26071
26072         * modules/arcfour, modules/arcfour-tests: New files.
26073
26074 2005-10-14  Simon Josefsson  <jas@extundo.com>
26075
26076         * m4/arcfour.m4: New file.
26077
26078 2005-10-14  Simon Josefsson  <jas@extundo.com>
26079
26080         * lib/arcfour.h, lib/arcfour.c: New files.
26081
26082 2005-10-14  Roland McGrath  <roland@redhat.com>
26083
26084         Import from libc.  [BZ #1331]
26085         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
26086         macro argument.
26087         Reported by Matej Vela <vela@debian.org>.
26088
26089 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
26090
26091         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
26092         include <wchar.h>; no longer needed.
26093
26094 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
26095
26096         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
26097
26098 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
26099         and  Ulrich Drepper  <drepper@redhat.com>
26100
26101         Import from libc.
26102         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
26103         instead of inline stream orientation test and two separate
26104         function calls.  Pay no attention to USE_IN_LIBIO.
26105
26106 2005-10-13  Simon Josefsson  <jas@extundo.com>
26107
26108         * modules/gc-hmac-md5-tests: New file.
26109
26110         * tests/test-gc-hmac-sha1.c: New file.
26111
26112         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
26113
26114         * modules/gc-hmac-md5-tests: New file.
26115
26116         * tests/test-gc-md5.c: New file.
26117
26118         * modules/gc-md5-tests: New file.
26119
26120 2005-10-13  Simon Josefsson  <jas@extundo.com>
26121
26122         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
26123         Move memory allocation outside of loop.
26124
26125 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
26126
26127         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
26128         intermediate directory is in a read-only file system.  Problem
26129         reported by Eric Blake.
26130
26131 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
26132
26133         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
26134
26135 2005-10-12  Simon Josefsson  <jas@extundo.com>
26136
26137         * tests/test-hmac-sha1.c: New file.
26138
26139         * modules/hmac-sha1-tests: New file.
26140
26141         * modules/hmac-sha1: New file.
26142
26143 2005-10-12  Simon Josefsson  <jas@extundo.com>
26144
26145         * modules/gc-sha1: New file.
26146
26147 2005-10-12  Simon Josefsson  <jas@extundo.com>
26148
26149         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
26150
26151         * tests/test-gc-pbkdf2-sha1.c: New file.
26152
26153 2005-10-12  Simon Josefsson  <jas@extundo.com>
26154
26155         * modules/gc-md5, modules/gc-hmac-md5: New files.
26156
26157         * modules/gc (Files): Remove md5, memxor and hmac files.
26158
26159 2005-10-12  Simon Josefsson  <jas@extundo.com>
26160
26161         * m4/gc-pbkdf2-sha1.m4: New file.
26162
26163         * m4/gc-hmac-sha1.m4: New file.
26164
26165         * m4/gc-sha1: New file.
26166
26167         * m4/hmac-sha1.m4: New file.
26168
26169 2005-10-12  Simon Josefsson  <jas@extundo.com>
26170
26171         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
26172
26173         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
26174
26175 2005-10-12  Simon Josefsson  <jas@extundo.com>
26176
26177         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
26178         suggested by Bruno Haible <bruno@clisp.org>.
26179
26180 2005-10-12  Simon Josefsson  <jas@extundo.com>
26181
26182         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
26183
26184 2005-10-12  Simon Josefsson  <jas@extundo.com>
26185
26186         * lib/gc-pbkdf2-sha1.c: New file.
26187
26188         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
26189
26190 2005-10-12  Simon Josefsson  <jas@extundo.com>
26191
26192         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
26193
26194         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
26195
26196 2005-10-12  Simon Josefsson  <jas@extundo.com>
26197
26198         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
26199         GC_USE_HMAC_MD5, respectively.
26200
26201         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
26202         (gc_md5): Fix typo.
26203
26204         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
26205
26206         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
26207
26208         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
26209
26210 2005-10-12  Bruno Haible  <bruno@clisp.org>
26211
26212         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
26213         Reported by Stepan Kasal <kasal@ucw.cz>.
26214
26215 2005-10-11  Simon Josefsson  <jas@extundo.com>
26216
26217         * tests/test-crc.c: New file.
26218
26219         * modules/crc, modules/crc-tests: New files.
26220
26221 2005-10-11  Simon Josefsson  <jas@extundo.com>
26222
26223         * m4/crc.m4: New file.
26224
26225 2005-10-11  Simon Josefsson  <jas@extundo.com>
26226
26227         * lib/gc.h: Add gc_hash and gc_hash_buffer.
26228
26229         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
26230
26231         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
26232
26233 2005-10-11  Simon Josefsson  <jas@extundo.com>
26234
26235         * lib/crc.h, lib/crc.c: New files.
26236
26237         * lib/gc.h (gc_hash_buffer): Add doc.
26238
26239 2005-10-11  Bruno Haible  <bruno@clisp.org>
26240
26241         * modules/c-strcasestr: New file.
26242         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
26243
26244 2005-10-11  Bruno Haible  <bruno@clisp.org>
26245
26246         * modules/c-strcase: New file.
26247         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
26248
26249 2005-10-11  Bruno Haible  <bruno@clisp.org>
26250
26251         * lib/strcasecmp.c: Include limits.h.
26252         (strcasecmp): Avoid integer overflow on exotic platforms.
26253         * lib/strncasecmp.c: Include limits.h.
26254         (strncasecmp): Avoid integer overflow on exotic platforms.
26255         Reported by Paul Eggert.
26256
26257 2005-10-11  Bruno Haible  <bruno@clisp.org>
26258
26259         * lib/c-strcasestr.h: New file, from GNU gettext.
26260         * lib/c-strcasestr.c: New file, from GNU gettext.
26261
26262 2005-10-11  Bruno Haible  <bruno@clisp.org>
26263
26264         * lib/c-strcase.h: New file, from GNU gettext.
26265         * lib/c-strcasecmp.c: New file, from GNU gettext.
26266         * lib/c-strncasecmp.c: New file, from GNU gettext.
26267
26268 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
26269
26270         * modules/mempcpy (License): GPL -> LGPL.
26271         * modules/strchrnul (License): Likewise.
26272         * modules/sysexits (License): Likewise.
26273
26274 2005-10-08  Simon Josefsson  <jas@extundo.com>
26275
26276         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
26277
26278 2005-10-07  Simon Josefsson  <jas@extundo.com>
26279
26280         * m4/memxor.m4: Remove gl_C_RESTRICT call.
26281
26282 2005-10-06  Simon Josefsson  <jas@extundo.com>
26283
26284         * tests/test-hmac-md5.c: New file.
26285
26286         * modules/hmac-md5-tests: New file.
26287
26288         * modules/hmac-md5: New file.
26289
26290 2005-10-06  Simon Josefsson  <jas@extundo.com>
26291
26292         * m4/hmac-md5.m4: New file.
26293
26294         * m4/memxor.m4: Require gl_C_RESTRICT.
26295
26296 2005-10-06  Simon Josefsson  <jas@extundo.com>
26297
26298         * lib/memxor.c (memxor): Avoid casts and warnings.
26299
26300 2005-10-06  Simon Josefsson  <jas@extundo.com>
26301
26302         * lib/hmac-md5.c: New file.
26303
26304         * lib/hmac.h: New file.
26305
26306 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
26307
26308         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
26309         promotes to int, not unsigned int, to catch the AIX 5.3
26310         compiler bug.
26311
26312 2005-10-05  Simon Josefsson  <jas@extundo.com>
26313
26314         * modules/memxor: New file.
26315
26316         * modules/iconv (Files): Move config.rpath to havelib, it is used
26317         there.
26318
26319         * modules/havelib (Files): Add config.rpath.
26320
26321 2005-10-05  Simon Josefsson  <jas@extundo.com>
26322
26323         * m4/memxor.m4: New file.
26324
26325 2005-10-05  Simon Josefsson  <jas@extundo.com>
26326
26327         * lib/memxor.c (memxor): Fix compiler error.
26328
26329         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
26330         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
26331
26332         * lib/memxor.h, lib/memxor.c: New files.
26333
26334         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
26335         we assume all systems have it, suggested by Jim Meyering
26336         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
26337         any systems lack sys/socket.h; mingw32 is known to lack it, but we
26338         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
26339         same reasons.
26340
26341 2005-10-05  Simon Josefsson  <jas@extundo.com>
26342
26343         * config/srclist.txt: Add glibc bug 1423 for md5.h.
26344
26345 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
26346
26347         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
26348         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
26349         needed, since the source code now assumes these .h files.
26350
26351 2005-10-05  Derek Price  <derek@ximbiot.com>
26352
26353         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
26354
26355 2005-10-05  Bruno Haible  <bruno@clisp.org>
26356
26357         * modules/stdint (License): Change to LGPL.
26358
26359 2005-10-04  Simon Josefsson  <jas@extundo.com>
26360
26361         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
26362         D. Baushke" <mdb@gnu.org>.
26363
26364 2005-10-04  Bruno Haible  <bruno@clisp.org>
26365
26366         * lib/verify.h (verify_true): Provide alternative definition for C++.
26367
26368 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
26369
26370         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
26371         (SSIZE_MAX): New macro, if not already defined.
26372         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
26373         than 2 GiB.
26374
26375 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
26376
26377         Sync from coreutils.
26378         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
26379         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
26380         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
26381         ULLONG_MAX doesn't work with 2.7.2.1.
26382
26383 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
26384
26385         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
26386         From Ben Pfaff.
26387
26388         * modules/exclude (Depends-on): Depend on verify.
26389         * modules/strtoimax (Depends-on): Likewise.
26390         * modules/utimecmp (Depends-on): Likewise.
26391
26392 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
26393
26394         * lib/exclude.c: Include verify.h.
26395         (verify): Remove.  All callers changed to use verify.h's version.
26396         * lib/strtoimax.c: Likewise.
26397         * lib/utimecmp.c: Likewis.e
26398
26399         Sync from coreutils.
26400         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
26401         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
26402         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
26403         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
26404         bother returning ENOSYS if settimeofday or stime fails; just let
26405         them return whatever errno they want to return.
26406         * lib/utimens.c: Include unistd.h, for dup2.
26407         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
26408         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
26409
26410 2005-10-02  Jim Meyering  <jim@meyering.net>
26411
26412         Sync from coreutils.
26413         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
26414         from glibc-2.2.5 that fails for read-only files.
26415
26416 2005-10-02  Jim Meyering  <jim@meyering.net>
26417
26418         Sync from coreutils.
26419         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
26420         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
26421         `#if HAVE_CONFIG_H'.
26422         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
26423         Remove AT_FDCWD test.
26424         Do not consume the fd unless successful.
26425         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
26426         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
26427         block, so that we don't even try to compile it if settimeofday is
26428         available.  This works around a compilation failure on OSF1 V5.1,
26429         due to stime requiring a `long int*' while tv_sec is `int'.
26430
26431 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
26432
26433         Sync from coreutils.
26434         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
26435         against `yes', rather than just testing for nonempty.
26436
26437 2005-10-01  Simon Josefsson  <jas@extundo.com>
26438
26439         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
26440         and Darwin.
26441
26442         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
26443         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
26444         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
26445         freeaddrinfo and gai_strerror are declared by the POSIX headers.
26446         Check if struct addrinfo is declared.
26447
26448 2005-10-01  Simon Josefsson  <jas@extundo.com>
26449
26450         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
26451         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
26452         AI_* and EAI_* definitions.  Protect function declarations.
26453
26454 2005-10-01  Jim Meyering  <jim@meyering.net>
26455
26456         Sync from coreutils.
26457
26458         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
26459         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
26460         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
26461         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
26462         in the inet and nsl libraries.  Required on Solaris 5.7.
26463
26464 2005-10-01  Jim Meyering  <jim@meyering.net>
26465
26466         Sync from coreutils.
26467         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
26468         in the inet and nsl libraries.  Required on Solaris 5.7.
26469
26470 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
26471
26472         * lib/getdelim.c (getdelim): Remove unused variables.
26473
26474 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
26475
26476         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
26477         so that the code works even with ancient cpp.  Portability problem
26478         with GCC 2.7.2.1 reported by Thomas M.Ott.
26479
26480 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
26481
26482         * modules/regex (Depends-on): Add strcase.
26483
26484         * modules/gethostname (Licence): Change from GPL to LGPL, since
26485         gethostname.c is a trivial implementation of a standard library
26486         function.
26487         * modules/poll (License): Change from GPL to LGPL, since it's
26488         derived from LGPL code.
26489
26490 2005-09-27  Jim Meyering  <jim@meyering.net>
26491
26492         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
26493         HAVE_CONFIG_H.
26494
26495         * lib/intprops.h (signed_type_or_expr__): Define.
26496         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
26497         for unsigned types.
26498
26499 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
26500
26501         * lib/verify.h (verify_expr): Remove, replacing with:
26502         (verify_true): New macro that returns true instead of void.
26503         (verify_type__): Remove.
26504         (verify): Use verify_true rather than verify_type__.
26505
26506 2005-09-26  Bruno Haible  <bruno@clisp.org>
26507
26508         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
26509         is necessary.
26510         (lib_SOURCES): Remove mbchar.c.
26511         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
26512         (Files): Add m4/mbrtowc.m4.
26513         * modules/mbiter: Likewise.
26514         * modules/mbuiter: Likewise.
26515
26516 2005-09-26  Bruno Haible  <bruno@clisp.org>
26517
26518         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
26519         compile mbchar.c if they are not both present.
26520         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
26521         * m4/mbiter.m4 (gl_MBITER): Likewise.
26522         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
26523         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
26524         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
26525
26526 2005-09-25  Jim Meyering  <jim@meyering.net>
26527
26528         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
26529         also uses socklen_t.
26530
26531 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
26532
26533         * lib/utimens.c (ENOSYS): Define if not already defined.
26534         (futimens): Support having a null PATH if the file descriptor
26535         is nonnegative.
26536
26537         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
26538         Remove.
26539         (__attribute): Define to empty unless GCC 3.1 or later.
26540         This works around a core dump on OpenBSD 3.4, which has GCC
26541         2.95.3, which dumps core when given __attribute__(()).  It also
26542         simplifies other tests, since we really don't want to bother with
26543         worrying about which ancient version of GCC supported what.
26544         Original problem reported by Yoann Vandoorselaere, with part of
26545         the fix suggested by Derek Price.
26546
26547 2005-09-24  Jim Meyering  <jim@meyering.net>
26548
26549         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
26550         so we can once again use a positive bitfield width of 1 -- now we
26551         don't have to explain why we were using a bitfield width of 2.
26552
26553 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
26554
26555         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
26556         and similarly for the other external symbols.  Problem reported
26557         by James Gallager.
26558
26559         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
26560         bug reported by Jim Meyering.
26561
26562         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
26563         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
26564         not needed, since socklen is a prerequisite module.
26565
26566 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
26567
26568         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
26569         Problem reported by Eric Blake.
26570         (getaddrinfo): Initialize se so that it's not garbage.
26571         Redo internal storage allocation so that it doesn't make unportable
26572         assumptions about alignment.
26573         Fix a memory leak.
26574
26575         * lib/utimens.c (futimens): Use futimesat if available.
26576         Prefer it to futimes since it doesn't have the futimes bug.
26577
26578         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
26579         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
26580         Instead, declare a function that returns a pointer to an array,
26581         and use verify_type__ to declare the size of the array.
26582         Problem and germ of a solution reported by Bruno Haible.
26583         (verify_type__): Use 2, not 1, for bitfield size, to avoid
26584         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
26585
26586 2005-09-23  Jim Meyering  <jim@meyering.net>
26587
26588         Sync from coreutils.
26589         Correct build failure (socklen_t not defined) on at least
26590         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
26591         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
26592
26593 2005-09-23  Jim Meyering  <jim@meyering.net>
26594
26595         * modules/getaddrinfo (Depends-on): Add socklen.
26596
26597 2005-09-23  Bruno Haible  <bruno@clisp.org>
26598
26599         * tests/test-verify.c: New file.
26600
26601 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
26602
26603         Sync from coreutils.
26604
26605         * modules/argmatch (Depends-on): Add verify.
26606         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
26607         unistd-safer.
26608         * modules/save-cwd (Depends-on): Likewise.
26609
26610         * modules/openat (Files): Add lib/openat-die.c.
26611         (Depends-on): Remove error, exitfail.
26612         Add dirname.
26613
26614         * modules/verify: New file.
26615         * MODULES.html.sh (Diagnostics <assert.h>): New section,
26616         with "verify" module.
26617
26618 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
26619
26620         Sync from coreutils.
26621
26622         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
26623         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
26624         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
26625         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
26626         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
26627         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
26628         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
26629         Don't bother checking for string.h, stdlib.h, unistd.h.
26630         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
26631         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
26632         module's job.
26633         * m4/jm-macros.m4 (gl_MACROS): Likewise.
26634         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
26635
26636         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
26637         (gl_GETDATE): Use it.
26638
26639         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
26640
26641 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
26642
26643         Sync from coreutils.
26644
26645         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
26646         stat-time.h.
26647         * lib/argmatch.h: Include verify.h
26648         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
26649         (ARGMATCH_ASSERT): Remove; unused.
26650         * lib/canonicalize.c: Assume STDC_HEADERS.
26651         * lib/exclude.c: Include "strcase.h".
26652         * lib/regex_internal.h [!defined _LIBC]: Likewise.
26653         * lib/getusershell.c: Include stdio--.h rather than stdio.h
26654         and stdio-safer.h.
26655         (getusershell): Call fopen, not fopen_safer.
26656         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
26657         Do not include unistd-safer.h.
26658         (save_cwd): Don't call fd_safer; no longer needed
26659         now that we include fcntl--.h.
26660
26661         * lib/getdate.y (relative_time): New type.
26662         (RELATIVE_TIME_0): New constant.
26663         (parser_control): Use relative_time instead of doing it ourselves.
26664         (%union): Add new relative_time rel member.
26665         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
26666         Now typeless.
26667         (relunit, relunit_snumber): Now of type rel.
26668         (zone, rel, relunit, get_date): Adjust to above changes.
26669
26670         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
26671         Do not include unistd-safer.h.
26672         (getloadavg): Don't call fd_safer; no longer needed
26673         now that we include fcntl--.h.
26674
26675         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
26676         (make_dir_parents): Treat ENOSYS like EEXIST.
26677
26678         Improve quality of diagnostics on restore_cwd failure.
26679         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
26680         (make_dir_parents): Last arg is now int * (for errno), not bool *.
26681         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
26682         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
26683         each time through the loop.  Do not diagnose restore_cwd failure;
26684         that is the caller's job (and perhaps the caller does not care).
26685
26686         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
26687         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
26688         If the file already exists but is not a directory, don't bother
26689         to try to make its parents.
26690         Close potential file descriptor leak if we can't chdir("/") (!).
26691         Don't always return true if chdir($PWD) fails; return true only
26692         if the requested action was done successfully (except for the
26693         chdir($PWD)).
26694         Don't log final directory unless we actually made it.
26695         Refactor to avoid duplicate code to fix up permissions.
26696         Don't attempt to fix up parent permissions if chdir($PWD) fails.
26697
26698         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
26699         to make it a bit faster and (I hope) clearer.
26700         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
26701         Fix bug in formats like %2N.
26702
26703         * lib/verify.h: New file.
26704
26705 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
26706
26707         Sync from coreutils.
26708         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
26709
26710 2005-09-22  Jim Meyering  <jim@meyering.net>
26711
26712         Sync from coreutils.
26713
26714         * m4/lstat.m4 (gl_FUNC_LSTAT):
26715         Use AC_LIBSOURCES to require lstat.c and lstat.h.
26716         Remove obsolete comment.
26717         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
26718         * m4/xstrtod.m4: Likewise.
26719
26720         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
26721
26722 2005-09-22  Jim Meyering  <jim@meyering.net>
26723
26724         Sync from coreutils.
26725
26726         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
26727
26728         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
26729         the .tm_year member, since otherwise gcc-4.0 would now warn about
26730         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
26731
26732         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
26733         order to avoid an unsuppressible warning from gcc on 64-bit systems.
26734
26735         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
26736         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
26737         when run in a time zone for which daylight savings time is in effect
26738         for the starting date.
26739
26740         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
26741         stop us from restricting permissions of just-created absolute-named
26742         directories.
26743         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
26744         to restore initial working directory.
26745         * lib/mkdir-p.c (make_dir_parents): New parameter:
26746         different_working_dir, to tell caller if/when we change the working
26747         directory and are unable to return to the initial one.
26748         * lib/mkdir-p.h (make_dir_parents): Update prototype.
26749         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
26750         `return false'.  This fixes a bug introduced on 2004-07-30.
26751
26752         * lib/openat.c (fdopendir): Be sure to close the supplied
26753         file descriptor before returning.  This makes our replacement
26754         implementation a little closer to Solaris's, where fdopendir
26755         ties the file descriptor to the returned DIR* pointer.
26756         * lib/openat.c (unlinkat): New function.
26757         * lib/openat.h (unlinkat): Add prototype.
26758         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
26759         (openat_restore_fail): Rename from openat_restore_die.
26760         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
26761
26762         Provide an alternative to exiting immediately upon save_cwd or
26763         restore_cwd failure.  Now, an application can arrange e.g.,
26764         to perform a longjump in that case.
26765         * lib/openat.c: Include dirname.h.
26766         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
26767         (rpl_openat, fdopendir, fstatat): Call openat_save_die
26768         and openat_restore_die rather than calling error directly.
26769         Don't include "error.h" or "exitfail.h"; they're no longer needed.
26770
26771         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
26772         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
26773         define.
26774
26775         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
26776         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
26777                             int utc, int nanoseconds);
26778         Background:
26779         date should not have to allocate a megabyte of virtual memory to
26780         handle a format argument like +%1048575T.  When implemented with
26781         strftime, it must allocate such a buffer, use strftime to fill it
26782         in, print it, then free it.
26783         With fprintftime, it simply prints everything and exits.
26784         With no need for memory allocation, that's one fewer way to fail.
26785         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
26786         optional field width, not before, so we accept %9:z, not %:9z.
26787         (my_strftime): Be sure to use L_('x') for literals.
26788
26789         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
26790         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
26791         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
26792         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
26793         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
26794         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
26795         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
26796         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
26797         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
26798         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
26799         * lib/xgethostname.c, lib/xreadlink.c:
26800         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
26801
26802         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
26803         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
26804         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
26805         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
26806         and don't include <sys/file.h>).
26807
26808 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
26809
26810         Sync from coreutils.
26811
26812         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
26813         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
26814         [!LDAV_DONE]: Avoid unused variable warning.
26815
26816 2005-09-21  Bruno Haible  <bruno@clisp.org>
26817
26818         * lib/unicodeio.h (unicode_to_mb): New declaration.
26819
26820 2005-09-20  Derek Price  <derek@ximbiot.com>
26821
26822         * lib/getaddrinfo.c: Don't include <netdb.h> included from
26823         getaddrinfo.h.
26824
26825 2005-09-20  Bruno Haible  <bruno@clisp.org>
26826
26827         * gnulib-tool: Remove trailing slashes from the values specified for
26828         --source-base, --m4-base, --tests-base, --aux-dir.
26829         Suggested by Simon Josefsson <jas@extundo.com>.
26830
26831 2005-09-20  Bruno Haible  <bruno@clisp.org>
26832
26833         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
26834         func_modules_to_filelist, func_import, func_create_testdir): Make all
26835         sorting results locale-independent, so that gnulib-cache.m4 doesn't
26836         change when gnulib-tool is invoked in a different locale.
26837
26838 2005-09-19  Simon Josefsson  <jas@extundo.com>
26839
26840         * m4/socklen.m4: Fix typo.
26841
26842 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26843
26844         Use a consistent style for including <config.h>.
26845         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
26846         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
26847         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
26848         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
26849         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
26850         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
26851         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
26852         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
26853         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
26854         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
26855         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
26856         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
26857         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
26858         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
26859         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
26860         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
26861         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
26862         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
26863         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
26864         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
26865         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
26866         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
26867         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
26868         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
26869         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
26870         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
26871         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
26872         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
26873         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
26874         lib/xstrtoumax.c, lib/yesno.c:
26875         Standardize inclusion of config.h.
26876         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
26877         lib/inttostr.h:  Removed inclusion of config.h from header files.
26878         * lib/inttostr.c:  Adjusted in-tree users.
26879         * lib/timespec.h: Remove superfluous warning to include config.h.
26880         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
26881         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
26882         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
26883         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
26884         config.h with HAVE_CONFIG_H.
26885
26886 2005-09-19  Jim Meyering  <jim@meyering.net>
26887
26888         * modules/pathmax (License): Change to LGPL.
26889
26890 2005-09-19  Derek Price  <derek@ximbiot.com>
26891
26892         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
26893
26894 2005-09-19  Bruno Haible  <bruno@clisp.org>
26895
26896         * gnulib-tool (import): Provide default for --tests-base.
26897
26898 2005-09-19  Bruno Haible  <bruno@clisp.org>
26899
26900         * doc/quote.texi: New file, extracted from gnulib.texi.
26901         * doc/ctime.texi: New file, extracted from gnulib.texi.
26902         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
26903         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
26904         * doc/gnulib.texi: Include them.
26905
26906 2005-09-18  Bruno Haible  <bruno@clisp.org>
26907
26908         Portability fix.
26909         * gnulib-tool (func_readlink): New function.
26910         (func_ln_if_changed): Use it.
26911
26912 2005-09-18  Bruno Haible  <bruno@clisp.org>
26913
26914         * gnulib-tool: Support --with-tests also with --import.
26915         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
26916         (func_import): Use variables $testsbase and $inctests. Emit a
26917         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
26918         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
26919         SUBDIRS += $testsdir.
26920         (func_create_testdir): Update.
26921
26922 2005-09-18  Bruno Haible  <bruno@clisp.org>
26923
26924         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
26925         instead of $dry_run.
26926         (func_cp_if_changed, func_mv_if_changed): Remove functions.
26927         (func_ln_if_changed): Don't handle dry-run here.
26928         (func_import): In dry-run mode, detect more precisely which actions
26929         would be performed, and don't use "...ing" verbs.
26930
26931 2005-09-18  Bruno Haible  <bruno@clisp.org>
26932
26933         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
26934         (func_import): Use join on two temporary files instead of three nested
26935         loops, in order to determine which files are new or old.
26936
26937 2005-09-18  Bruno Haible  <bruno@clisp.org>
26938
26939         * gnulib-tool (func_import): Comment out code that spits out the
26940         new files with --dry-run.
26941
26942 2005-09-18  Bruno Haible  <bruno@clisp.org>
26943
26944         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
26945
26946 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
26947
26948         * lib/stat-time.h: New file.
26949         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
26950         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
26951         in a different way.
26952         (timespec_cmp): New function.
26953         * lib/utimecmp.c: Include stat-time.h.
26954         (SYSCALL_RESOLUTION): Depend on whether various struct stat
26955         members exist, not on the obsolescent ST_MTIM_NSEC.
26956         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
26957
26958 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
26959
26960         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
26961
26962 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
26963
26964         * MODULES.html.sh (File system functions): Add stat-time.
26965         * modules/stat-time: New file.
26966         * modules/timespec (Files): Remove m4/st_mtim.m4; this
26967         is now done in a different way, by the stat-time module.
26968         * modules/utimecmp (Depends-on): Add stat-time.
26969
26970 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
26971
26972         * m4/st_mtim.m4: Remove.  Superseded by...
26973         * m4/stat-time.m4: New file.
26974         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
26975         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
26976
26977 2005-09-15  Derek Price  <derek@ximbiot.com>
26978
26979         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
26980
26981 2005-09-15  Derek Price  <derek@ximbiot.com>
26982
26983         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
26984         * lib/regex_internal.c: Ditto, using this...
26985         (__GNUC_PREREQ): ...new macro.
26986         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
26987         using...
26988         (__GNUC_PREREQ): ...this new macro.
26989
26990         * lib/strstr.h: Include string.h. Define strstr as a macro here.
26991
26992 2005-09-15  Derek Price  <derek@ximbiot.com>
26993             Paul Eggert  <eggert@cs.ucla.edu>
26994
26995         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
26996         changes, consolidating in...
26997         * lib/regex_internal.h: ...this file.
26998
26999 2005-09-13  Jim Meyering  <jim@meyering.net>
27000
27001         * lib/canon-host.c: Filter through gnu indent and reword comments
27002         slightly.
27003         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
27004
27005 2005-09-13  Derek Price  <derek@ximbiot.com>
27006
27007         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
27008         failure.
27009         Reported by Jim Meyering  <jim@meyering.net>.
27010
27011 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
27012
27013         * lib/base64.c: Typo.
27014         (base64_encode): Put b64str in initialized data section.
27015
27016 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
27017
27018         Merge glibc and coreutils changes into gnulib, plus a few
27019         extra fixes.
27020         * lib/md5.c: Use #error rather than a string.
27021         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
27022         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
27023         (__attribute__): Define to empty for non recent-GCC.
27024         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
27025         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
27026         Renamed from their non-__ counterparts, with new macros replacing
27027         them if not _LIBC.  Add __THROW attribute.
27028         (rol): Remove.
27029         (struct md5_ctx): Align buffer if using GCC.
27030         * lib/sha1.h (struct sha1_ctx): Likewise.
27031         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
27032         The old name was backwards.
27033         (NOTSWAP): Remove; not used.
27034         (rol): New macro, moved here from md5.h.
27035         (sha1_process_block): Remove a FIXME that doesn't make sense.
27036
27037 2005-09-12  Derek Price  <derek@ximbiot.com>
27038
27039         Return usable errors from canon-host.
27040         * lib/canon-host.h: New file.
27041         * lib/canon-host.c (canon_host): Wrap...
27042         (canon_host_r): ...this new function, which now relies exclusively on
27043         getaddrinfo.
27044         (ch_strerror): New function.
27045         (last_cherror): New global.
27046         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
27047         interface.
27048         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
27049         void *.
27050         (freeaddrinfo): Free ai->ai_canonname when set.
27051
27052 2005-09-12  Derek Price  <derek@ximbiot.com>
27053
27054         Make canon-host require getaddrinfo.
27055         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
27056         AC_LIBSOURCE canon-host.h.  Call...
27057         (gl_PREREQ_CANON_HOST): ...this new function, which requires
27058         gl_GETADDRINFO.
27059         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
27060
27061 2005-09-12  Derek Price  <derek@ximbiot.com>
27062
27063         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
27064         LGPL.
27065         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
27066
27067 2005-09-12  Derek Price  <derek@ximbiot.com>
27068
27069         * lib/gai_strerror.c: Include config.h when available.  Include
27070         getaddrinfo.h before other headers to test interface.
27071         Reported by Larry Jones <lawrence.jones@ugs.com>.
27072
27073 2005-09-12  Derek Price  <derek@ximbiot.com>
27074             Paul Eggert  <eggert@cs.ucla.edu>
27075
27076         * modules/glob (Files): Add glob-libc.h.
27077
27078 2005-09-12  Derek Price  <derek@ximbiot.com>
27079             Paul Eggert  <eggert@cs.ucla.edu>
27080
27081         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
27082         glob_.h, glob-libc.h.
27083         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
27084
27085 2005-09-12  Derek Price  <derek@ximbiot.com>
27086             Paul Eggert  <eggert@cs.ucla.edu>
27087
27088         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
27089         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
27090         protecting things that should be done only in gnulib contexts.
27091         * lib/glob_.h: New file, containing only the glob things needed for
27092         gnulib.
27093         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
27094         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
27095         (glob, globfree, glob_pattern_p): Now defined simply in terms of
27096         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
27097         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
27098         and to respect the namespace rules better.
27099
27100 2005-09-08  Simon Josefsson  <jas@extundo.com>
27101
27102         * modules/socklen: New file.
27103
27104 2005-09-08  Simon Josefsson  <jas@extundo.com>
27105
27106         * m4/socklen.m4: New file.
27107
27108 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
27109
27110         * modules/utimens (Files): Add m4/utimbuf.m4, since
27111         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
27112         Reported by Sergey Poznyakoff.
27113
27114 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
27115
27116         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
27117         definitions, since that's the preferred style in glibc.
27118         Fix a minor spacing issue, and update copyright notice to match
27119         glibc's.
27120
27121 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
27122
27123         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
27124
27125 2005-09-06  Simon Josefsson  <jas@extundo.com>
27126
27127         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
27128         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
27129
27130 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
27131
27132         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
27133         warning.
27134
27135 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
27136
27137         * config/srclist.txt: Add glibc bug 1302.
27138
27139 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
27140
27141         Change bitset word type from unsigned int to unsigned long int,
27142         as this has better performance on typical 64-bit hosts.
27143         Port bitset code to hosts with unusual word sizes.
27144         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
27145         (build_collating_symbol):
27146         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
27147         argument is a bitset.  This is merely a style issue, but it makes
27148         it clearer that an entire array is expected.
27149         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
27150         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
27151         Port to the case where bitset_word is not the same as unsigned int.
27152         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
27153         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
27154         Likewise.
27155         * lib/regexec.c (check_dst_limits_calc_pos_1,
27156         check_subexp_matching_top):
27157         (build_trtable, group_nodes_into_DFAstates):
27158         Likewise.
27159         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
27160         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
27161         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
27162         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
27163         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
27164         * lib/regcomp.c (optimize_subexps, lower_subexp):
27165         Work even if bitset_word has holes in its bitwise representation.
27166         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
27167         * lib/regexec.c (check_dst_limits_calc_pos_1,
27168         check_subexp_matching_top):
27169         Likewise.
27170         * lib/regex_internal.c (re_string_reconstruct):
27171         Don't assume UCHAR_MAX == 255.
27172         * lib/regex_internal.h (bitset_set_all): Likewise.
27173         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
27174         All uses changed.
27175         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
27176         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
27177         All uses changed.
27178         (BITSET_WORD_MAX): New macro.
27179         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
27180         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
27181         (bitset_empty, bitset_copy):
27182         Prefer sizeof (bitset) to multiplying it out ourselves.
27183         (bitset_not_merge): Remove; unused.
27184         (bitset_contain): Return bool, not unsigned int with one bit on.
27185         All callers changed.
27186         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
27187         alignment than re_node_set; do this by defining a new internal
27188         type struct dests_alloc and using it to allocate memory.
27189
27190 2005-09-05  Bruno Haible  <bruno@clisp.org>
27191
27192         * gnulib-tool (func_import): Fix comparison in handling of symbolic
27193         links.
27194
27195 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
27196
27197         * modules/size_max (Makefile.am): Add size_max.h
27198
27199 2005-09-04  Derek Price  <derek@ximbiot.com>
27200
27201         * gnulib-tool (func_import): Fix reversed $symbolic logic.
27202
27203 2005-09-03  Simon Josefsson  <jas@extundo.com>
27204
27205         * gnulib-tool: Fix typo.
27206
27207 2005-09-03  Simon Josefsson  <jas@extundo.com>
27208
27209         * config/srclist.txt: Add glibc bug 1293.
27210
27211 2005-09-03  Derek Price  <derek@ximbiot.com>
27212
27213         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
27214         From Larry Jones <lawrence.jones@ugs.com>.
27215
27216 2005-09-02  Simon Josefsson  <jas@extundo.com>
27217
27218         * modules/socklen: New file.
27219
27220 2005-09-02  Simon Josefsson  <jas@extundo.com>
27221
27222         * modules/havelib: New module.
27223
27224         * modules/gettext, modules/iconv, modules/lock, modules/readline:
27225         Use havelib.
27226
27227 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
27228
27229         Check for arithmetic overflow when calculating sizes, to prevent
27230         some buffer-overflow issues.  These patches are conservative, in the
27231         sense that when I couldn't determine whether an overflow was possible,
27232         I inserted a run-time check.
27233         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
27234         macros.
27235         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
27236         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
27237         (re_xnrealloc, re_x2nrealloc): New inline functions.
27238         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
27239         parse_bracket_exp):
27240         (build_equiv_class, build_charclass): Check for arithmetic overflow
27241         in size expression calculations.
27242         * lib/regex_internal.c (re_string_realloc_buffers):
27243         (build_wcs_upper_buffer, re_node_set_add_intersect):
27244         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
27245         (re_dfa_add_node, register_state): Likewise.
27246         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
27247         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
27248         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
27249         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
27250
27251 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
27252
27253         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
27254         m4/ulonglong.m4.  Problem reported by Martin Lambers.
27255
27256 2005-09-02  Bruno Haible  <bruno@clisp.org>
27257
27258         Support for lib vs. lib64 distinction on biarch platforms.
27259         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
27260         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
27261         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
27262
27263 2005-09-02  Bruno Haible  <bruno@clisp.org>
27264
27265         * gnulib-tool (import): In the other first-use case, provide defaults
27266         as well.
27267
27268 2005-09-02  Bruno Haible  <bruno@clisp.org>
27269
27270         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
27271         patches not yet found in the latest gettext release.
27272
27273 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
27274
27275         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
27276         to avoid a collision with bits/local_lim.h in glibc.
27277         All uses changed.  Problem reported by Dmitry V. Levin in
27278         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
27279
27280         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
27281         bugs in int versus size_t comparisons.
27282         (re_string_context_at): Fix bug where the code assumed that
27283         Idx is signed.
27284
27285         Use bool where appropriate.
27286         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
27287         All callers changed.
27288         (calc_eclosure_iter): Likewise, for ROOT arg.
27289         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
27290         (build_charclass_op): Likewise, for NON_MATCH arg.
27291         * lib/regex_internal.c (re_string_allocate, re_string_construct):
27292         (re_string_construct_common): Likewise, for ICASE arg.
27293         * lib/regexec.c (re_search_2_stub, re_search_stub):
27294         Likewise, for RET_LEN arg.
27295         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
27296         (set_regs): Likewise, for FL_BACKTRACK arg.
27297         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
27298         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
27299         (calc_eclosure_iter, parse_bracket_exp):
27300         Use bool for internal variables that are booleans.
27301         * lib/regexec.c (re_search_internal, check_matching,
27302         proceed_next_node):
27303         (set_regs, build_sifted_states, sift_states_bkref):
27304         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
27305         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
27306         (find_collation_sequence_value):
27307         Likewise.
27308         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
27309         (re_node_set_compare):
27310         Return bool, not int. All callers changed.
27311         * lib/regexec.c (check_halt_node_context, check_dst_limits):
27312         (build_trtable, check_node_accept): Likewise.
27313         * lib/regex_internal.h: Include stdbool.h.
27314
27315         Fix bugs uncovered when converting to bool.
27316         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
27317         failure instead of charging ahead blindly.
27318         * lib/regex_internal.c (register_state): Likewise.
27319         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
27320         for freeing internal storage.
27321         (group_nodes_into_DFA_states): Use unsigned int, not int, for
27322         bitset pieces used as boolean, to avoid undefined behavior
27323         on hosts that do int overflow checking.
27324
27325 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
27326
27327         * config/srclist.txt: Add glibc bugs 1285-1287.
27328
27329 2005-09-01  Jim Meyering  <jim@meyering.net>
27330
27331         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
27332         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
27333         Require gl_STAT_MACROS, too.
27334
27335 2005-09-01  Bruno Haible  <bruno@clisp.org>
27336
27337         * gnulib-tool (import): In the first-use case, provide defaults.
27338
27339 2005-09-01  Bruno Haible  <bruno@clisp.org>
27340
27341         * gnulib-tool (func_import): Remove the .tmp files.
27342
27343 2005-09-01  Bruno Haible  <bruno@clisp.org>
27344
27345         * gnulib-tool (func_import): Fix handling of symbolic links.
27346
27347 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
27348
27349         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
27350         old glibc regex code mishandles strings longer than 2**31 bytes.
27351         This patch fixes this when the regex code is used in gnulib
27352         (i.e., outside glibc).
27353
27354         This patch should not affect the use of the regex code inside
27355         glibc.  No doubt this problem also needs to be handled for glibc
27356         as well, but the result will be an incompatible change to the
27357         glibc ABI, and the old ABI will have to be supported too.  That
27358         can be the the subject for another patch.
27359
27360         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
27361         governing whether the rest of this patch is active.  By default,
27362         the macro is disabled and the patch has no effect.
27363         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
27364         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
27365         (struct re_pattern_buffer, re_search, re_search_2, re_match):
27366         (re_match_2, re_set_registers): Use the new types.
27367         * lib/regex_internal.h (Idx, re_hashval_t): New types.
27368         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
27369         New macros.
27370         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
27371         (re_string_context_at, bin_tree_t, re_dfastate_t):
27372         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
27373         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
27374         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
27375         (re_string_char_size_at, re_string_wchar_at):
27376         (re_string_elem_size_at):
27377         Use the new types and macros to port to 64-bit hosts.
27378         Use unsigned types for internal values, so that the code
27379         mostly works even for arrays larger than SSIZE_MAX.
27380         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
27381         (search_duplicated_node, calc_eclosure_iter, fetch_number):
27382         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
27383         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
27384         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
27385         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
27386         (calc_inveclosure, parse_dup_op, build_range_exp):
27387         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
27388         (fetch_number, create_token_tree, mark_opt_subexp):
27389         Likewise.
27390         * lib/regex_internal.c (re_string_construct_common,
27391         create_ci_newstate):
27392         (create_cd_newstate, re_string_allocate, re_string_construct):
27393         (re_string_realloc_buffers, build_wcs_upper_buffer):
27394         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
27395         (re_string_reconstruct, re_string_peek_byte_case):
27396         (re_string_fetch_byte_case, re_string_context_at):
27397         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
27398         (re_node_set_init_copy, re_node_set_add_intersect):
27399         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
27400         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
27401         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
27402         (re_acquire_state, re_acquire_state_context, register_state):
27403         Likewise.
27404         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
27405         search_cur_bkref_entry):
27406         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
27407         (re_search_internal, re_search_2_stub, re_search_stub)
27408         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
27409         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
27410         (update_cur_sifted_state, check_dst_limits):
27411         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
27412         (check_subexp_limits, sift_states_bkref, merge_state_array):
27413         (check_subexp_matching_top, get_subexp, get_subexp_sub):
27414         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
27415         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
27416         (expand_bkref_cache, check_node_accept_bytes):
27417         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
27418         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
27419         (acquire_init_state_context, check_halt_node_context):
27420         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
27421         (sift_states_backward, clean_state_log_if_needed):
27422         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
27423         (find_recover_state, transit_state_sb, transit_state_mb):
27424         (transit_state_bkref, build_trtable, match_ctx_clean):
27425         Likewise.
27426         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
27427         to work around an assumption that REG_MISSING is negative.
27428
27429         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
27430         (seek_collating_symbol_entry) [defined _LIBC]:
27431         (lookup_collation_sequence_value) [defined _LIBC]:
27432         (build_range_exp, build_collating_symbol) [defined _LIBC]:
27433         Use prototypes rather than old-style function definitions.
27434         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
27435         (transit_state_sb) [0]:
27436         (find_collation_sequence_value) [defined _LIBC]: Likewise.
27437
27438         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
27439         rm_eo.
27440
27441         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
27442         (optimize_subexps, lower_subexp):
27443         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
27444         since the signed shift might overflow.  Use 1u<<31 instead.
27445         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
27446         Likewise.
27447         * lib/regexec.c (check_dst_limits_calc_pos_1,
27448         check_subexp_matching_top): Likewise.
27449
27450         * lib/regcomp.c (optimize_subexps, lower_subexp):
27451         Use CHAR_BIT rather than 8, for clarity.
27452         * lib/regexec.c (check_dst_limits_calc_pos_1):
27453         (check_subexp_matching_top): Likewise.
27454         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
27455         have to worry about portability issues when shifting it left.
27456         Remove no-longer-needed test for table_size > 0.
27457         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
27458         in a word, as the resulting behavior is undefined.
27459         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
27460         in one case, a <= should have been an <, and in another case the
27461         whole test was missing.
27462         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
27463         the standard name CHAR_BIT.
27464         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
27465         this is not true on one's complement and signed-magnitude hosts.
27466
27467         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
27468         next_last_offset.
27469         (struct re_dfa_t): Remove unused member states_alloc.
27470         * lib/regcomp.c (init_dfa): Don't initialize unused members.
27471
27472 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
27473
27474         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
27475         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
27476         and large-file glibc and in 32-bit large-file Solaris.
27477
27478 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
27479
27480         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
27481         lengths fit in regoff_t; this isn't true if regoff_t is the same
27482         width as size_t.
27483         * lib/regex.c (re_search_internal): 5th arg is LAST_START
27484         (= START + RANGE) instead of RANGE.  This avoids overflow
27485         problems when regoff_t is the same width as size_t.
27486         All callers changed.
27487         (re_search_2_stub): Check for overflow when adding the
27488         sizes of the two strings.
27489         (re_search_stub): Check for overflow when adding START
27490         to RANGE; if it occurs, substitute the extreme value.
27491
27492 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
27493
27494         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
27495
27496 2005-08-31  Jim Meyering  <jim@meyering.net>
27497
27498         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
27499         a pointer-to-const.
27500         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
27501         (register_state): Likewise.
27502         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
27503         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
27504         (group_nodes_into_DFAstates): Likewise.
27505
27506 2005-08-31  Jim Meyering  <jim@meyering.net>
27507
27508         * check-module: Add a FIXME comment.
27509
27510 2005-08-31  Eric Blake  <ebb9@byu.net>
27511
27512         * modules/unistd-safer (Files): Add unistd--.h.
27513         * modules/stdio-safer (Files): Add stdio--.h.
27514
27515 2005-08-31  Derek Price  <derek@ximbiot.com>
27516
27517         * lib/getdelim.c (getdelim): Return EOF on EOF.
27518         Reported by Larry Jones <lawrence.jones@ugs.com>.
27519
27520 2005-08-31  Bruno Haible  <bruno@clisp.org>
27521
27522         Avoid unnecessary diffs in the generated lib/Makefile.am.
27523         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
27524         the generated files.
27525         (func_import): Don't set cmd.
27526
27527 2005-08-31  Bruno Haible  <bruno@clisp.org>
27528
27529         * lib/strstr.c: Include <stddef.h>, for NULL.
27530         * lib/strcasestr.c: Likewise.
27531         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
27532
27533 2005-08-31  Bruno Haible  <bruno@clisp.org>
27534
27535         * gnulib-tool: New option --macro-prefix.
27536         (func_import): Use macro_prefix.
27537         (import): Handle option --macro-prefix.
27538
27539 2005-08-31  Bruno Haible  <bruno@clisp.org>
27540
27541         * gnulib-tool (import): Rename most ac_* variables to cached_*.
27542         Also use new variables cached_lgpl, cached_libtool.
27543
27544 2005-08-31  Bruno Haible  <bruno@clisp.org>
27545
27546         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
27547         always instantiating them.
27548
27549 2005-08-31  Bruno Haible  <bruno@clisp.org>
27550
27551         * gnulib-tool (func_import): Read the previous cached settings
27552         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
27553         earlier added by gnulib but are now dropped. Warn when a gnulib file
27554         overwrites a non-gnulib file.
27555
27556 2005-08-31  Bruno Haible  <bruno@clisp.org>
27557
27558         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
27559         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
27560         projects that don't keep autogenerated files in CVS. Put into
27561         actioncmd only the specified modules, not the transitive closure.
27562
27563 2005-08-31  Bruno Haible  <bruno@clisp.org>
27564
27565         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
27566         Create directories that shall be filled.
27567         (import): Don't look for gl_* macros in configure.ac. Recurse across
27568         all directories containing a gnulib-cache.m4 files, if meaningful.
27569
27570 2005-08-31  Bruno Haible  <bruno@clisp.org>
27571
27572         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
27573         (import): Set seen_libtool when we see gl_LIBTOOL.
27574
27575 2005-08-31  Bruno Haible  <bruno@clisp.org>
27576
27577         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
27578         declaration macro definitions from generated gnulib.m4.
27579
27580 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
27581
27582         * lib/iconvme.h: Add prototype for iconv_alloc.
27583
27584 2005-08-29  Simon Josefsson  <jas@extundo.com>
27585
27586         * lib/iconvme.c: Fix errno.
27587
27588 2005-08-29  Bruno Haible  <bruno@clisp.org>
27589
27590         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
27591         that it works when the directory contains spaces.
27592
27593 2005-08-29  Bruno Haible  <bruno@clisp.org>
27594
27595         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
27596
27597 2005-08-29  Bruno Haible  <bruno@clisp.org>
27598
27599         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
27600         Emit more advice.
27601
27602 2005-08-29  Bruno Haible  <bruno@clisp.org>
27603         and Stepan Kasal  <kasal@ucw.cz>
27604
27605         * check-module: If more parameters are given, check each of them
27606         separately; add more exceptions, as noted by Jim Meyering.
27607         (check_module): New procedure.
27608         (%exempt_header): Now contains all exceptions.
27609
27610 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
27611
27612         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
27613
27614 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
27615
27616         * lib/iconvme.c: Split iconv_string into iconv_alloc.
27617
27618 2005-08-28  Bruno Haible  <bruno@clisp.org>
27619
27620         * m4/gnulib-tool.m4: New file.
27621
27622 2005-08-27  Jim Meyering  <jim@meyering.net>
27623
27624         * modules/unistd-safer (Files): Add pipe-safer.c.
27625         * modules/fcntl-safer (Files): Add creat-safer.c.
27626
27627 2005-08-27  Jim Meyering  <jim@meyering.net>
27628
27629         * m4/stdlib-safer.m4: New file.  From coreutils.
27630         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
27631         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
27632         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
27633         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
27634         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
27635
27636 2005-08-27  Jim Meyering  <jim@meyering.net>
27637
27638         * lib/fopen-safer.c: Merge minor changes from coreutils.
27639         * lib/dup-safer.c: Likewise.
27640         * lib/fd-safer.c: Likewise.
27641
27642         Merge from coreutils.
27643         * lib/stdio--.h: New file.
27644         * lib/stdlib--.h: New file.
27645         * lib/mkstemp-safer.c: New file.
27646
27647         GNU tar needs these.
27648         * lib/pipe-safer.c: New file.
27649         * lib/creat-safer.c: New file.
27650         * lib/fcntl--.h (creat): Define to creat_safer.
27651         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
27652         * lib/unistd--.h (pipe): Define to pipe_safer.
27653         * lib/unistd-safer.h: Declare pipe_safer.
27654
27655 2005-08-26  Simon Josefsson  <jas@extundo.com>
27656
27657         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
27658         Haible <bruno@clisp.org>.
27659
27660 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
27661
27662         * lib/regex_internal.h: Remove all references to
27663         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
27664         or better.
27665         (bitset_not, bitset_merge, bitset_not_merge):
27666         (bitset_mask, re_string_allocate, re_string_construct):
27667         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
27668         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
27669         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
27670         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
27671         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
27672         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
27673         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
27674         (re_acquire_state_context):
27675         Remove unnecessary forward decls.
27676         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
27677         Put __attribute at function definition,
27678         now that the function decl has been removed.
27679         * lib/regex_internal.c (re_string_peek_byte_case):
27680         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
27681         Likewise.
27682
27683 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
27684
27685         * m4/regex.m4: Add AC_PREREQ(2.50).
27686         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
27687
27688 2005-08-25  Simon Josefsson  <jas@extundo.com>
27689
27690         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
27691         __fsetlocking.
27692
27693 2005-08-25  Simon Josefsson  <jas@extundo.com>
27694
27695         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
27696         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
27697         GLIBC specific code.
27698
27699 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
27700
27701         Make regex safe for g++.  This fixes one real bug (an "err"
27702         that should have been "*err").  g++ problem reported by
27703         Sam Steingold.
27704         * lib/regex_internal.h (re_calloc): New macro, consistent with
27705         re_malloc etc.  All callers of calloc changed to use re_calloc.
27706         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
27707         not int.  All callers changed.
27708         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
27709         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
27710         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
27711         (find_recover_state): Change "err" to "*err"; this fixes what
27712         appears to be a real bug.
27713         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
27714         versus int.
27715
27716 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
27717
27718         * modules/regex (Depends-on): Add malloc, since the code
27719         assumes that !malloc(0) means failure.
27720
27721 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
27722
27723         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
27724
27725         alloca modernization/simplification for regex.
27726         * lib/regex.c: Remove portability cruft for alloca.  This no longer
27727         needs to be at the start of the file, and can be moved into
27728         regex_internal.h and simplified.
27729         * lib/regex_internal.h: Include <alloca.h>.
27730         (__libc_use_alloca) [!defined _LIBC]: New macro.
27731         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
27732         now works outside glibc.
27733
27734 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
27735
27736         * config/srclist.txt: Add glibc bugs 1241, 1245.
27737
27738 2005-08-25  Jim Meyering  <jim@meyering.net>
27739
27740         * lib/open-safer.c: Include <config.h>.
27741         Otherwise, we'd lose LARGEFILE support in any file using
27742         e.g. "fcntl--.h"
27743
27744 2005-08-25  Bruno Haible  <bruno@clisp.org>
27745
27746         * m4/minmax.m4: Require autoconf 2.52.
27747         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
27748         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
27749         alternatives of translit over the alphabet.
27750         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
27751
27752 2005-08-24  Simon Josefsson  <jas@extundo.com>
27753
27754         * tests/test-getpass.c: New file.
27755
27756 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
27757
27758         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
27759         for GNU regex features.
27760
27761 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
27762
27763         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
27764         * lib/regex.h (regerror): Likewise.
27765
27766         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
27767         requires this.  (The code never needed it.)
27768
27769         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
27770         All uses of recently-renamed identifiers changed to use the new,
27771         POSIX-compliant names.  The code will build and run just fine
27772         without these changes, but it's better to eat our own dog food
27773         and use the standard-conforming names.
27774
27775         * lib/regex.h: Fix a multitude of POSIX name space violations.
27776         These changes have an effect only for programs that define
27777         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
27778         do not change anything for programs compiled in the normal way.
27779         Also, there is no effect on the ABI.
27780
27781         (_REGEX_SOURCE): New macro.
27782         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
27783         defined and _GNU_SOURCE is not; this fixes a name space violation.
27784
27785         Rename the following macros to obey POSIX requirements.
27786         The old names are still visible as macros if _REGEX_SOURCE is defined.
27787         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
27788         RE_BACKSLASH_ESCAPE_IN_LISTS.
27789         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
27790         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
27791         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
27792         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
27793         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
27794         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
27795         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
27796         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
27797         (REG_INTERVALS): renamed from RE_INTERVALS.
27798         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
27799         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
27800         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
27801         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
27802         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
27803         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
27804         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
27805         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
27806         RE_UNMATCHED_RIGHT_PAREN_ORD.
27807         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
27808         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
27809         (REG_DEBUG): renamed from RE_DEBUG.
27810         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
27811         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
27812         unusual, since we can't clash with the POSIX REG_ICASE.
27813         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
27814         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
27815         (REG_NO_SUB): renamed from RE_NO_SUB.
27816         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
27817         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
27818         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
27819         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
27820         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
27821         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
27822         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
27823         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
27824         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
27825         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
27826         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
27827         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
27828         RE_SYNTAX_POSIX_MINIMAL_BASIC.
27829         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
27830         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
27831         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
27832         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
27833         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
27834         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
27835         (REG_FIXED): Renamed from REGS_FIXED.
27836         (REG_NREGS): Renamed from RE_NREGS.
27837
27838         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
27839         of other REG_* macros, since POSIX says the user is allowed to
27840         #undef these macros selectively.
27841
27842         (reg_errcode_t): Update comment stating what other tables need
27843         to be consistent.
27844
27845         Rename the following enum values to obey POSIX requirements.
27846         The old names are still visible as macros.
27847         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
27848         is not defined, since GNU is supposed to be a superset of POSIX as
27849         much as possible, and since we want reg_errcode_t to be a signed
27850         type for implementation consistency.
27851         (_REG_NOERROR): Renamed from REG_NOERROR.
27852         (_REG_NOMATCH): Renamed from REG_NOMATCH.
27853         (_REG_BADPAT): Renamed from REG_BADPAT.
27854         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
27855         (_REG_ECTYPE): Renamed from REG_ECTYPE.
27856         (_REG_EESCAPE): Renamed from REG_EESCAPE.
27857         (_REG_ESUBREG): Renamed from REG_ESUBREG.
27858         (_REG_EBRACK): Renamed from REG_EBRACK.
27859         (_REG_EPAREN): Renamed from REG_EPAREN.
27860         (_REG_EBRACE): Renamed from REG_EBRACE.
27861         (_REG_BADBR): Renamed from REG_BADBR.
27862         (_REG_ERANGE): Renamed from REG_ERANGE.
27863         (_REG_ESPACE): Renamed from REG_ESPACE.
27864         (_REG_BADRPT): Renamed from REG_BADRPT.
27865         (_REG_EEND): Renamed from REG_EEND.
27866         (_REG_ESIZE): Renamed from REG_ESIZE.
27867         (_REG_ERPAREN): Renamed from REG_ERPAREN.
27868         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
27869         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
27870         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
27871         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
27872
27873         (_REG_RE_NAME, _REG_RM_NAME): New macros.
27874         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
27875         changed.  But support the old name if the new one is not defined
27876         and if _REGEX_SOURCE.
27877
27878         Change the following member names in struct re_pattern_buffer.
27879         The old names are still supported if !_REGEX_SOURCE.
27880         The new names are always supported, regardless of _REGEX_SOURCE.
27881         (re_buffer): Renamed from buffer.
27882         (re_allocated): Renamed from allocated.
27883         (re_used): Renamed from used.
27884         (re_syntax): Renamed from syntax.
27885         (re_fastmap): Renamed from fastmap.
27886         (re_translate): Renamed from translate.
27887         (re_can_be_null): Renamed from can_be_null.
27888         (re_regs_allocated): Renamed from regs_allocated.
27889         (re_fastmap_accurate): Renamed from fastmap_accurate.
27890         (re_no_sub): Renamed from no_sub.
27891         (re_not_bol): Renamed from not_bol.
27892         (re_not_eol): Renamed from not_eol.
27893         (re_newline_anchor): Renamed from newline_anchor.
27894
27895         Change the following member names in struct re_registers.
27896         The old names are still supported if !_REGEX_SOURCE.
27897         The new names are always supported, regardless of _REGEX_SOURCE.
27898         (rm_num_regs): Renamed from num_regs.
27899         (rm_start): Renamed from start.
27900         (rm_end): Renamed from end.
27901
27902         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
27903         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
27904         Prepend __ to parameter names.
27905
27906         Undo yesterday's changes.
27907
27908 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
27909
27910         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
27911         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
27912         lib/regex.c.
27913
27914 2005-08-24  Jim Meyering  <jim@meyering.net>
27915
27916         Sync from coreutils.
27917         * m4/fcntl-safer.m4: New file.
27918
27919         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
27920         and object files for this module.
27921
27922 2005-08-24  Jim Meyering  <jim@meyering.net>
27923
27924         Sync from coreutils.
27925         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
27926
27927 2005-08-24  Jim Meyering  <jim@meyering.net>
27928
27929         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
27930         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
27931
27932 2005-08-24  Jim Meyering  <jim@meyering.net>
27933
27934         * modules/fcntl-safer: New module.
27935         * modules/fts (Depends-on): Add fcntl-safer.
27936         * MODULES.html.sh (File descriptor based Input/Output):
27937         Add fcntl-safer.
27938
27939 2005-08-24  Bruno Haible  <bruno@clisp.org>
27940
27941         Support for unit test modules.
27942         * modules/README: Mention tests modules.
27943         * modules/TEMPLATE-TESTS: New file.
27944         * gnulib-tool: New options --extract-tests-module, --with-tests and
27945         --tests-base (unused for the moment).
27946         (testsbase, inctests): New variables.
27947         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
27948         (func_verify_module): Exclude TEMPLATE-TESTS.
27949         (func_verify_nontests_module, func_verify_tests_module): New functions.
27950         (func_get_dependencies): Add implicit dependency for tests modules.
27951         (func_get_tests_module): New function.
27952         (func_modules_transitive_closure): When --with-tests was specified,
27953         include the unit tests as well, unless explicitly avoided.
27954         (func_emit_lib_Makefile_am): Ignore the tests modules here.
27955         (func_emit_tests_Makefile_am): New function.
27956         (func_create_testdir): When --with-tests was specified, emit a
27957         tests/ directory.
27958         * MODULES.html.sh (Future developments): Update.
27959
27960 2005-08-24  Bruno Haible  <bruno@clisp.org>
27961
27962         * modules/tls-tests: New file.
27963         * tests/test-tls.c: New file, from GNU gettext.
27964
27965 2005-08-24  Bruno Haible  <bruno@clisp.org>
27966
27967         * modules/lock-tests: New file.
27968         * tests/test-lock.c: New file, from GNU gettext.
27969
27970 2005-08-24  Bruno Haible  <bruno@clisp.org>
27971
27972         * lib/lock.h: Add multiple inclusion guard.
27973         * lib/tls.h: Add multiple inclusion guard.
27974
27975 2005-08-24  Bruno Haible  <bruno@clisp.org>
27976
27977         * gnulib-tool: Add support for the --aux-dir option to
27978         --create-testdir, --create-megatestdir, --test, --megatest.
27979         (func_create_testdir, func_create_megatestdir): Optionally emit a
27980         AC_CONFIG_AUX_DIR directive.
27981         (create-testdir, create-megatestdir, test, megatest): Provide a
27982         default value for $auxdir.
27983
27984 2005-08-24  Bruno Haible  <bruno@clisp.org>
27985
27986         * gnulib-tool (import): Use compound statement instead of subshell
27987         where possible.
27988
27989 2005-08-24  Bruno Haible  <bruno@clisp.org>
27990
27991         * gnulib-tool (import): Change --aux-dir default to "build-aux".
27992
27993 2005-08-24  Bruno Haible  <bruno@clisp.org>
27994
27995         * gnulib-tool (func_version): Update.
27996
27997 2005-08-24  Bruno Haible  <bruno@clisp.org>
27998
27999         * gnulib-tool (func_import, func_create_testdir,
28000         func_create_megatestdir): Quote all autoconf macro arguments.
28001
28002 2005-08-24  Bruno Haible  <bruno@clisp.org>
28003
28004         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
28005         option --force, because --force causes the aclocal.m4 of each
28006         subdirectory to be newer than the corresponding config.h.in.
28007
28008 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
28009
28010         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
28011         All contents moved to gl_REGEX.
28012         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
28013         assume that it does.
28014
28015 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
28016
28017         * lib/regex.h (REG_NOSYS)
28018         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
28019         Define, since POSIX requires it as of 2001.
28020         (_REG_ENOSYS)
28021         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
28022         New private symbol, used to keep the enum signed in all cases.
28023         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
28024         Youngman in
28025         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
28026
28027         * lib/regex_internal.c (re_string_skip_chars, register_state):
28028         (calc_state_hash):
28029         Remove forward decls; no longer needed now that we use prototypes.
28030         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
28031         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
28032         (clean_state_log_if_needed): Likewise.
28033
28034 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
28035
28036         * config/srclist.txt: Add glibc bugs 1231-1233.
28037
28038 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
28039
28040         Fix problems reported by Sam Steingold in
28041         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
28042         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
28043         assumed that reg_errcode_t is a signed type, which is not
28044         necessarily true if _XOPEN_SOURCE is not defined.
28045         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
28046         since some compilers warn about it otherwise.
28047
28048 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
28049
28050         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
28051         (init_word_char, create_initial_state, duplicate_node_closure):
28052         (fetch_token, peek_token_bracket, build_range_exp):
28053         (build_collating_symbol): Remove forward decls; no longer needed
28054         now that we use prototypes.
28055
28056         * lib/regcomp.c:
28057         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
28058         (re_compile_fastmap_iter, regcomp, regerror, regfree):
28059         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
28060         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
28061         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
28062         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
28063         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
28064         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
28065         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
28066         (build_range_exp, build_collating_symbol, parse_bracket_exp):
28067         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
28068         (build_charclass, build_charclass_op, fetch_number, create_tree):
28069         (create_token_tree, mark_opt_subexp, duplicate_tree):
28070         Use prototypes rather than old-style definitions.
28071
28072         * lib/regex_internal.c:
28073         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
28074         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
28075         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
28076         (re_string_reconstruct, re_string_peek_byte_case):
28077         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
28078         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
28079         (re_node_set_init_copy, re_node_set_add_intersect):
28080         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
28081         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
28082         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
28083         (re_acquire_state, re_acquire_state_context, register_state):
28084         (create_ci_newstate, create_cd_newstate, free_state):
28085         Likewise.
28086         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
28087         re_search_2):
28088         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
28089         (re_search_internal, prune_impossible_nodes):
28090         (acquire_init_state_context, check_matching, static):
28091         (check_halt_node_context, check_halt_state_context, proceed_next_node):
28092         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
28093         (update_regs, sift_states_backward, build_sifted_states):
28094         (clean_state_log_if_needed, merge_state_array):
28095         (update_cur_sifted_state, add_epsilon_src_nodes):
28096         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
28097         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
28098         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
28099         (find_recover_state, check_subexp_matching_top, transit_state_mb):
28100         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
28101         (check_arrival, check_arrival_add_next_nodes):
28102         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
28103         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
28104         (check_node_accept_bytes, check_node_accept, extend_buffers):
28105         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
28106         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
28107         (sift_ctx_init):
28108         Likewise.
28109
28110         * lib/regex_internal.h:
28111         (re_string_allocate, re_string_construct, re_string_reconstruct):
28112         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
28113         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
28114         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
28115         (re_string_context_at, re_string_peek_byte_case):
28116         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
28117         is defined, since we now use prototypes always.
28118
28119         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
28120         C89 or better.  All uses removed.
28121
28122 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
28123
28124         * config/srclist.txt: Add glibc bugs 1220-1227.
28125
28126 2005-08-20  Jim Meyering  <jim@meyering.net>
28127
28128         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
28129         of unused local, dfa.
28130
28131 2005-08-20  Bruno Haible  <bruno@clisp.org>
28132
28133         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
28134
28135 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
28136
28137         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
28138         (re_node_set_insert_last, re_dfa_add_node):
28139         Rename local variables to avoid GCC shadowing warnings.
28140
28141 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
28142
28143         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
28144         [defined lint]: Suppress bogus uninitialized-variable warnings.
28145
28146         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
28147         and let the caller return REG_ESPACE if out of space.  This
28148         removes an uninitialied-variable warning with GCC 4.0.1, and also
28149         avoids taking the address of a local variable.  All callers
28150         changed.
28151
28152 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
28153
28154         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
28155         $LIBCSRC/posix/regexec.c.
28156         Add glibc bug 1217 for regcomp.c.
28157
28158 2005-08-19  Jim Meyering  <jim@meyering.net>
28159
28160         * lib/regexec.c (proceed_next_node): Redo local variables to
28161         avoid GCC shadowing warnings.
28162
28163 2005-08-18  Bruno Haible  <bruno@clisp.org>
28164
28165         * lib/strstr.c (strstr): Fix return value in multibyte case.
28166         * lib/strcasestr.c (strcasestr): Likewise.
28167
28168 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
28169
28170         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
28171
28172 2005-08-17  Jim Meyering  <jim@meyering.net>
28173
28174         Make the %s format (seconds since the epoch) work for a negative
28175         number and when used with a zero-padded field width, e.g. %015s.
28176
28177         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
28178         label so that it precedes the code to set `digits'.  Otherwise,
28179         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
28180         print `00-22'.  Now, it prints `-0022', as it should.
28181
28182 2005-08-17  Bruno Haible  <bruno@clisp.org>
28183
28184         * modules/strstr (Files): Add m4/mbrtowc.m4.
28185         (Depends-on): Add mbuiter.
28186
28187 2005-08-17  Bruno Haible  <bruno@clisp.org>
28188
28189         * modules/strcasestr: New file.
28190         * MODULES.html.sh (String handling, based on ANSI C 89): Add
28191         strcasestr.
28192
28193 2005-08-17  Bruno Haible  <bruno@clisp.org>
28194
28195         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
28196
28197 2005-08-17  Bruno Haible  <bruno@clisp.org>
28198
28199         * modules/mbuiter: New file.
28200         * MODULES.html.sh (Extended multibyte and wide character utilities):
28201         Add mbuiter.
28202
28203 2005-08-17  Bruno Haible  <bruno@clisp.org>
28204
28205         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
28206         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
28207
28208 2005-08-17  Bruno Haible  <bruno@clisp.org>
28209
28210         * m4/strcasestr.m4: New file.
28211
28212 2005-08-17  Bruno Haible  <bruno@clisp.org>
28213
28214         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
28215         * lib/strstr.c: Completely rewritten, with multibyte locale support.
28216
28217 2005-08-17  Bruno Haible  <bruno@clisp.org>
28218
28219         * lib/strcasestr.h: New file.
28220         * lib/strcasestr.c: New file.
28221
28222 2005-08-17  Bruno Haible  <bruno@clisp.org>
28223
28224         * lib/strcasecmp.c: Use mbuiter.h.
28225
28226 2005-08-17  Bruno Haible  <bruno@clisp.org>
28227
28228         * lib/mbuiter.h: New file.
28229
28230 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
28231
28232         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
28233         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
28234         and gl_GETOPT are both invoked via different paths (as happens
28235         with GNU tar CVS because it uses both argp and getopt), the former
28236         wins.
28237
28238 2005-08-16  Bruno Haible  <bruno@clisp.org>
28239
28240         * modules/tls: New file.
28241         * MODULES.html.sh (Multithreading): Add tls.
28242
28243 2005-08-16  Bruno Haible  <bruno@clisp.org>
28244
28245         * modules/strnlen1: New file.
28246         * MODULES.html.sh (String handling): Add strnlen1.
28247
28248 2005-08-16  Bruno Haible  <bruno@clisp.org>
28249
28250         * modules/strcase (Files): Add m4/mbrtowc.m4.
28251         (Depends-on): Add strnlen1, mbchar.
28252
28253 2005-08-16  Bruno Haible  <bruno@clisp.org>
28254
28255         * modules/mbiter: New file.
28256         * MODULES.html.sh (Extended multibyte and wide character utilities):
28257         Add mbiter.
28258
28259 2005-08-16  Bruno Haible  <bruno@clisp.org>
28260
28261         * modules/mbfile: New file.
28262         * MODULES.html.sh (Extended multibyte and wide character utilities):
28263         Add mbfile.
28264
28265 2005-08-16  Bruno Haible  <bruno@clisp.org>
28266
28267         * modules/mbchar: New file.
28268         * MODULES.html.sh (Extended multibyte and wide character utilities):
28269         New section.
28270
28271 2005-08-16  Bruno Haible  <bruno@clisp.org>
28272
28273         * m4/tls.m4: New file, from GNU gettext.
28274
28275 2005-08-16  Bruno Haible  <bruno@clisp.org>
28276
28277         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
28278         always.
28279         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
28280
28281 2005-08-16  Bruno Haible  <bruno@clisp.org>
28282
28283         * m4/mbiter.m4: New file.
28284
28285 2005-08-16  Bruno Haible  <bruno@clisp.org>
28286
28287         * m4/mbfile.m4: New file.
28288
28289 2005-08-16  Bruno Haible  <bruno@clisp.org>
28290
28291         * m4/mbchar.m4: New file.
28292
28293 2005-08-16  Bruno Haible  <bruno@clisp.org>
28294
28295         * lib/tls.h: New file, from GNU gettext.
28296         * lib/tls.c: New file, from GNU gettext.
28297
28298 2005-08-16  Bruno Haible  <bruno@clisp.org>
28299
28300         * lib/strnlen1.h: New file.
28301         * lib/strnlen1.c: New file.
28302
28303 2005-08-16  Bruno Haible  <bruno@clisp.org>
28304
28305         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
28306         (mbi_init): Update.
28307         (mbi_avail, mbi_advance): Let the iteration end before the terminating
28308         NUL byte, not after it.
28309
28310 2005-08-16  Bruno Haible  <bruno@clisp.org>
28311
28312         * lib/strcase.h (strcasecmp): Add note in comments.
28313         * lib/strncasecmp.c: Use code from strcasecmp.c.
28314         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
28315         (strcasecmp): Work correctly in multibyte locales.
28316
28317 2005-08-16  Bruno Haible  <bruno@clisp.org>
28318
28319         * lib/mbiter.h: New file.
28320
28321 2005-08-16  Bruno Haible  <bruno@clisp.org>
28322
28323         * lib/mbfile.h: New file.
28324
28325 2005-08-16  Bruno Haible  <bruno@clisp.org>
28326
28327         * lib/mbchar.h: New file.
28328         * lib/mbchar.c: New file.
28329
28330 2005-08-16  Bruno Haible  <bruno@clisp.org>
28331
28332         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
28333         the valid ones. Makes the comparison operations transitive:
28334         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
28335         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
28336
28337 2005-08-15  Simon Josefsson  <jas@extundo.com>
28338
28339         * modules/ssize_t (License): Change to 'unlimited'.
28340
28341         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
28342
28343 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
28344
28345         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
28346         Add comments for each pending glibc patch.
28347
28348 2005-08-15  Bruno Haible  <bruno@clisp.org>
28349
28350         * lib/regex.h (__restrict_arr): Don't define to __restrict if
28351         __cplusplus is defined.
28352
28353 2005-08-14  Jim Meyering  <jim@meyering.net>
28354
28355         Sync from coreutils.
28356
28357         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
28358         Use the hash-table-based cycle-detection code not just when
28359         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
28360         Reported by James Youngman in
28361         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
28362         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
28363         FTS_TIGHT_CYCLE_CHECK.
28364         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
28365         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
28366         once again.
28367         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
28368         * lib/fts.c (fd_safer): Remove decl.
28369         Include fcntl--.h rather than unistd-safer.h
28370         (fts_safe_changedir): Don't call fd_safer; no longer needed
28371         now that we include fcntl--.h.
28372
28373 2005-08-12  Simon Josefsson  <jas@extundo.com>
28374
28375         * modules/getndelim2: Use ssize_t module.
28376         * modules/getnline: Likewise.
28377         * modules/safe-read: Likewise.
28378         * modules/xreadlink: Likewise.
28379
28380         * modules/ssize_t: New file.
28381
28382 2005-08-12  Simon Josefsson  <jas@extundo.com>
28383
28384         * m4/readline.m4: Look for termcap, curses or ncurses if required.
28385
28386 2005-08-12  Simon Josefsson  <jas@extundo.com>
28387
28388         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
28389         ssize_t.
28390
28391 2005-08-12  Simon Josefsson  <jas@extundo.com>
28392
28393         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
28394         readline, getdelim and check_version.
28395         (Support for systems lacking ISO C 99: Sizes of integer types):
28396         Add size_max.
28397
28398 2005-08-12  Bruno Haible  <bruno@clisp.org>
28399
28400         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
28401
28402 2005-08-11  Simon Josefsson  <jas@extundo.com>
28403
28404         * modules/readline: New file.
28405
28406         * modules/strnlen (Files): Add strnlen.h.
28407
28408 2005-08-11  Simon Josefsson  <jas@extundo.com>
28409
28410         * m4/readline.m4: New file.
28411
28412 2005-08-11  Simon Josefsson  <jas@extundo.com>
28413
28414         * lib/readline.h, readline.c: New file.
28415
28416 2005-08-11  Simon Josefsson  <jas@extundo.com>
28417
28418         * doc/gnulib.texi (Initial import, Finishing touches): Mention
28419         gl_AVOID.
28420
28421 2005-08-11  Bruno Haible  <bruno@clisp.org>
28422
28423         * lib/strnlen.h (strnlen): Change parameter name to match comment.
28424
28425 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
28426
28427         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
28428
28429 2005-08-10  Simon Josefsson  <jas@extundo.com>
28430
28431         * tests/test-iconvme.c: New file.
28432
28433 2005-08-10  Simon Josefsson  <jas@extundo.com>
28434
28435         * m4/strnlen.m4: New file.
28436
28437         * m4/strndup.m4: Don't check for strnlen declaration, done in
28438         strnlen.m4.
28439
28440 2005-08-10  Simon Josefsson  <jas@extundo.com>
28441
28442         * lib/strndup.c: Use strnlen.h.
28443
28444         * lib/strnlen.h: New file.
28445
28446 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
28447
28448         * README: Typos.
28449
28450 2005-08-02  Simon Josefsson  <jas@extundo.com>
28451
28452         * modules/readline: New file.
28453
28454 2005-08-02  Simon Josefsson  <jas@extundo.com>
28455
28456         * modules/getdelim: New file.
28457
28458         * modules/getline: Rewrite, don't use getndelim2.
28459
28460 2005-08-02  Simon Josefsson  <jas@extundo.com>
28461
28462         * m4/getline.m4: Separate out getdelim stuff into separate module.
28463
28464         * m4/getdelim.m4: New file.
28465
28466 2005-08-02  Simon Josefsson  <jas@extundo.com>
28467
28468         * lib/getline.h, getline.c: Rewrite.
28469
28470         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
28471
28472 2005-07-31  Bruno Haible  <bruno@clisp.org>
28473
28474         * lib/lock.h (gl_lock_initializer): New macro.
28475         (gl_lock_define_initialized): Use it.
28476         (gl_rwlock_initializer): New macro.
28477         (gl_rwlock_define_initialized): Use it.
28478         (gl_recursive_lock_initializer): New macro.
28479         (gl_recursive_lock_define_initialized): Use it.
28480
28481 2005-07-30  Karl Berry  <karl@gnu.org>
28482
28483         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
28484         Report from Ben Pfaff, regarding getopt.
28485
28486 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
28487
28488         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
28489         normal way.
28490         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
28491         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
28492         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
28493         (gl_GETOPT): Use the new macros.  Most of the implementation
28494         is moved to the new macros.  This is for programs like Emacs
28495         that don't want all the functionality of gl_GETOPT.
28496
28497 2005-07-26  Bruno Haible  <bruno@clisp.org>
28498
28499         * m4/lock.m4: Update from GNU gettext.
28500
28501 2005-07-26  Bruno Haible  <bruno@clisp.org>
28502
28503         * lib/lock.h: Update from GNU gettext.
28504         * lib/lock.c: Update from GNU gettext.
28505
28506 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
28507
28508         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
28509         obsolescent AC_TRY_RUN.  Include the default includes files, for
28510         'exit'.
28511
28512 2005-07-24  Bruno Haible  <bruno@clisp.org>
28513
28514         * modules/visibility: New file.
28515         * MODULES.html.sh (Misc): Add visibility.
28516
28517 2005-07-24  Bruno Haible  <bruno@clisp.org>
28518
28519         * m4/visibility.m4: New file.
28520
28521 2005-07-24  Bruno Haible  <bruno@clisp.org>
28522
28523         * doc/visibility.texi: New file.
28524
28525 2005-07-22  Bruno Haible  <bruno@clisp.org>
28526
28527         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
28528         $(ALLOCA_H), redundant through BUILT_SOURCES.
28529         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
28530         redundant through BUILT_SOURCES.
28531         * modules/byteswap (Makefile.am): Remove explicit dependency on
28532         $(BYTESWAP_H), redundant through BUILT_SOURCES.
28533         * modules/fnmatch (Makefile.am): Remove explicit dependency on
28534         $(FNMATCH_H), redundant through BUILT_SOURCES.
28535         * modules/getopt (Makefile.am): Remove explicit dependency on
28536         $(GETOPT_H), redundant through BUILT_SOURCES.
28537         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
28538         redundant through BUILT_SOURCES.
28539         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
28540         redundant through BUILT_SOURCES.
28541         * modules/stdbool (Makefile.am): Remove explicit dependency on
28542         $(STDBOOL_H), redundant through BUILT_SOURCES.
28543         * modules/stdint (Makefile.am): Remove explicit dependency on
28544         $(STDINT_H), redundant through BUILT_SOURCES.
28545         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
28546         Remove explicit dependency on $(SYSEXITS_H).
28547         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
28548
28549 2005-07-18  Simon Josefsson  <jas@extundo.com>
28550
28551         * lib/check-version.c (check_version): Accept identical versions too.
28552
28553 2005-07-18  Bruno Haible  <bruno@clisp.org>
28554
28555         * modules/lock: New file.
28556         * MODULES.html.sh (Multithreading): New section.
28557
28558 2005-07-18  Bruno Haible  <bruno@clisp.org>
28559
28560         * m4/lock.m4: New file, from GNU gettext.
28561
28562 2005-07-18  Bruno Haible  <bruno@clisp.org>
28563
28564         * lib/lock.h: New file, from GNU gettext.
28565         * lib/lock.c: New file, from GNU gettext.
28566
28567 2005-07-18  Bruno Haible  <bruno@clisp.org>
28568
28569         * lib/lock.h (gl_once_t): New type.
28570         (gl_once_define, gl_once): New macros.
28571         * lib/lock.c (fresh_once): New variable.
28572         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
28573         functions.
28574
28575 2005-07-16  Simon Josefsson  <jas@extundo.com>
28576
28577         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
28578         workaround, suggested by Bruno.
28579
28580 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
28581
28582         * modules/xalloc (Depends-on): Add xalloc-die.
28583         * modules/xvasprintf (Depends-on): Add xalloc-die.
28584
28585 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
28586
28587         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
28588         with a minor change.
28589
28590 2005-07-15  Bruno Haible  <bruno@clisp.org>
28591
28592         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
28593         When using lib/poll.c, define poll as rpl_poll.
28594
28595 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
28596
28597         * modules/argp (Depends-on): Remove unlocked-io.
28598
28599 2005-07-14  Derek Price  <derek@ximbiot.com>
28600
28601         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
28602         for glob symlink bug.
28603
28604 2005-07-14  Bruno Haible  <bruno@clisp.org>
28605
28606         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
28607         Instead, test for *_unlocked function declarations directly.
28608
28609 2005-07-11  Simon Josefsson  <jas@extundo.com>
28610
28611         * modules/size_max: New file.
28612
28613         * modules/xsize: Depend on size_max module for size_max.m4.
28614
28615 2005-07-11  Simon Josefsson  <jas@extundo.com>
28616
28617         * lib/size_max.h: New file.
28618
28619 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
28620
28621         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
28622         copyright symbol and the year.
28623         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
28624         (version_etc_va): Use parameterized copyright notice.
28625         Reword to conform to the current GNU coding standards.
28626
28627 2005-07-11  Karl Berry  <karl@gnu.org>
28628
28629         * doc/gnulib.texi (Quoting): new node.
28630         (Initial import): more info, from Patrice.
28631
28632 2005-07-11  Bruno Haible  <bruno@clisp.org>
28633
28634         * gnulib-tool (func_usage): Document option --avoid.
28635         (Command line options): Handle --avoid.
28636         (func_acceptable): New function.
28637         (func_modules_transitive_closure): Use it.
28638
28639 2005-07-11  Bruno Haible  <bruno@clisp.org>
28640
28641         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
28642         Reported by Jim Meyering.
28643
28644 2005-07-10  Bruno Haible  <bruno@clisp.org>
28645
28646         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
28647         Needed when size_t is smaller than 'unsigned int'.
28648         Reported by Paul Eggert.
28649
28650 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
28651
28652         * modules/argp (Depends-on): Add unlocked-io
28653
28654 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
28655
28656         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
28657         block of defines.
28658
28659 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
28660
28661         * config/srclist.txt: Comment out regcomp.c, since we have a porting
28662         fix now.
28663
28664 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
28665         and Paul Eggert  <eggert@cs.ucla.edu>
28666
28667         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
28668         in wint_t, not wchar_t.  Remove now-unnecessary cast.
28669
28670 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
28671
28672         * modules/regex (Files): Add lib/regex_internal.c,
28673         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
28674         (Depends-on): Add extensions.
28675         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
28676
28677 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
28678
28679         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
28680         pathconf.
28681         * m4/same.m4 (gl_SAME): Likewise.
28682         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
28683
28684         * m4/regex.m4: Adjust to new libc regex implementation.
28685         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
28686         all the .c and .h parts of (the new) regex.
28687         Quote the m4 stuff better.
28688         Check for RE_ICASE bug of old gnulib.
28689         Check for REG_STARTEND of recent libc.
28690         Rename local variables from jm_* to gl_*.
28691         Quote operand of "test -f".
28692         Say "recent enough" version of libc, not "version 2".
28693         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
28694         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
28695         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
28696         Remove check for btowc, isascii.
28697         Require AM_LANGINFO_CODESET.
28698
28699 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
28700
28701         * lib/regex.c, regex.h: Sync from libc.
28702         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
28703         * lib/regexec.c:
28704         New files, synced from libc, except that regex_internal.h
28705         currently has a small porting fix.
28706
28707 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
28708
28709         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
28710         regex_internal.c, regexec.c.
28711         Add regex_internal.h too, but as a comment, since the libc version
28712         is currently broken in gnulib mode.
28713
28714 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
28715
28716         Support programs like Emacs that use gnulib but not gettext.
28717         * MODULES.html.sh (Internationalization functions): Add gettext-h.
28718         * modules/gettext-h: New file.
28719         * modules/gettext (Files): Remove lib/gettext.h.
28720         (Depends-on): Add gettext-h.
28721         (Makefile.am): Remove lib_SOURCES.
28722         * modules/argmatch, modules/c-stack, modules/closeout:
28723         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
28724         * modules/execute, modules/file-type, modules/getaddrinfo:
28725         * modules/getopt, modules/human, modules/javacomp:
28726         * modules/javaexec, modules/mkdir-p, modules/obstack:
28727         * modules/openat, modules/pagealign_alloc, modules/pipe:
28728         * modules/quotearg, modules/regex, modules/rpmatch:
28729         * modules/unicodeio, modules/userspec, modules/version-etc:
28730         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
28731         * modules/xsetenv:
28732         Depend on gettext-h, not gettext.
28733
28734 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
28735
28736         * gnulib-tool (func_import): Add support for 'public domain' license.
28737         * modules/alloca, modules/atexit, modules/memmove:
28738         Now public domain, not GPL.
28739         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
28740         * modules/realloc, modules/strerror, modules/strtod:
28741         Now LGPL, not GPL.
28742
28743 2005-07-05  Bruno Haible  <bruno@clisp.org>
28744
28745         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
28746         autoconf CVS. Needed for mingw.
28747
28748 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
28749
28750         Remove the dependency of the strftime module on the tzset module.
28751         * modules/strftime (Depends-on): Remove dependency on tzset.
28752
28753 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
28754
28755         Remove the dependency of the strftime module on the tzset module.
28756         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
28757         gl_FUNC_TZSET_CLOBBER.
28758
28759 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
28760
28761         Remove the dependency of the strftime module on the tzset module.
28762         * lib/strftime.c (my_strftime)
28763         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
28764         Copy the input structure, to work around some of the bug with
28765         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
28766         Solaris releases, you should also use the tzset module, but we won't
28767         require it as a dependency any more since we don't want LGPLed code
28768         to depend on GPLed code.
28769
28770 2005-07-02  Jim Meyering  <jim@meyering.net>
28771
28772         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
28773         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
28774         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
28775         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
28776
28777 2005-07-02  Jim Meyering  <jim@meyering.net>
28778
28779         * lib/backupfile.c (backup_args): Change a `0' to NULL.
28780
28781 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
28782
28783         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
28784         declares only 'struct timespec;' (!).
28785
28786 2005-07-01  Jim Meyering  <jim@meyering.net>
28787
28788         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
28789         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
28790         * lib/save-cwd.c, tempname.c:
28791         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
28792         and don't include <sys/file.h>).
28793
28794 2005-06-29  Jim Meyering  <jim@meyering.net>
28795
28796         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
28797         type name.  Use the variable name instead.
28798         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
28799         Likewise.
28800
28801 2005-06-28  Simon Josefsson  <jas@extundo.com>
28802
28803         * modules/check-version (Files): Add check-version.m4.
28804
28805 2005-06-28  Simon Josefsson  <jas@extundo.com>
28806
28807         * m4/check-version.m4: New file, suggested by Jim Meyering
28808         <jim@meyering.net>.
28809
28810 2005-06-28  Simon Josefsson  <jas@extundo.com>
28811
28812         * lib/check-version.h, lib/check-version.c: New files.
28813
28814 2005-06-28  Simon Josefsson  <jas@extundo.com>
28815
28816         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
28817         collision with global variable.  Better indentation.  Don't
28818         increment buffer pointer beyond buffer end.  Based on comments
28819         from Paul Eggert <eggert@cs.ucla.edu>.
28820
28821         * lib/base64.h: Indent.
28822
28823 2005-06-28  Simon Josefsson  <jas@extundo.com>
28824
28825         * doc/gnulib.texi (Library version handling): New section.
28826
28827 2005-06-28  Jim Meyering  <jim@meyering.net>
28828
28829         * check-module (find_included_lib_files): Hard-code another
28830         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
28831         but modules/fts-lgpl (correctly) does not list those files.
28832
28833         * modules/canonicalize (Files): Add lib/pathmax.h.
28834
28835 2005-06-25  Simon Josefsson  <jas@extundo.com>
28836
28837         * modules/check-version: New file.
28838
28839 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
28840
28841         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
28842         initializer of struct addrinfo, as an indication that we don't
28843         care how many members the structure has.
28844
28845 2005-06-24  Derek Price  <derek@ximbiot.com>
28846         and Bruno Haible  <bruno@clisp.org>
28847
28848         Remove stat module & update lstat.
28849         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
28850         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
28851         * m4/stat.m4: Remove this file.
28852
28853 2005-06-24  Derek Price  <derek@ximbiot.com>
28854         and Bruno Haible  <bruno@clisp.org>
28855
28856         Remove stat module & update lstat.
28857         * lib/stat.c: Remove this file...
28858         (slash_aware_lstat): ...moving this content and its support...
28859         * lib/lstat.c (rpl_lstat): ...into here.
28860         * lib/lstat.h: New file.
28861
28862 2005-06-24  Derek Price  <derek@ximbiot.com>
28863         and Bruno Haible  <bruno@clisp.org>
28864
28865         Remove stat module & update lstat.
28866         * config/srclist.txt (libc sources): Remove stat.
28867
28868 2005-06-24  Derek Price  <derek@ximbiot.com>
28869         and Bruno Haible  <bruno@clisp.org>
28870
28871         Remove stat module & update lstat.
28872         * MODULES.html.sh (stat): Remove.
28873         * MODULES.html: Regenerated.
28874         * modules/lstat (Description): Correct function name.
28875         (Files): Add "lstat.h".
28876         (Depends-on): Remove stat, add xalloc, stat-macros.
28877         * modules/stat: Remove this file.
28878         (Include): Add "lstat.h", remove <sys/stat.h>.
28879
28880 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
28881
28882         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
28883         (ranged_convert): Don't save conversion in a temporary struct.
28884         This causes a warning with GCC 4.0.0, and anyway in the typical
28885         case it's not worth the extra 100 bytes or so of code.
28886         (ranged_convert, __mktime_internal): When calling a function via a
28887         pointer P, use P () rather than (*P) (), as we now assume C89 or
28888         better.
28889
28890 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
28891
28892         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
28893         "who -r" failed to give output.  Problem reported by Tim Waugh.
28894
28895         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
28896         (xcalloc): Use it to avoid needless tests.
28897         Problem reported by Jim Meyering.
28898
28899 2005-06-20  Derek Price  <derek@ximbiot.com>
28900
28901         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
28902         unnecessary for Autoconfs > 2.59c.
28903
28904 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
28905
28906         * lib/argp.h (__option_is_short): Check upper limit of
28907         __key. Isprint() requires its argument to have the value
28908         of an unsigned char or EOF.
28909
28910 2005-06-16  Jim Meyering  <jim@meyering.net>
28911
28912         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
28913         when either N or S is zero.
28914
28915 2005-06-16  Derek Price  <derek@ximbiot.com>
28916
28917         * m4/bison.m4: Declare YACC & YFLAGS precious.
28918
28919 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
28920
28921         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
28922         multibyte string or pattern, fall back on unibyte matching.
28923         Problem reported by James Youngman.
28924
28925 2005-06-08  Bruno Haible  <bruno@clisp.org>
28926
28927         * modules/csharpcomp: New file.
28928         * MODULES.html.sh (C#): Add csharpcomp.
28929
28930 2005-06-08  Bruno Haible  <bruno@clisp.org>
28931
28932         * m4/csharpcomp.m4: New file, from GNU gettext.
28933
28934 2005-06-08  Bruno Haible  <bruno@clisp.org>
28935
28936         * lib/csharpcomp.h: New file, from GNU gettext.
28937         * lib/csharpcomp.c: New file, from GNU gettext.
28938         * lib/csharpcomp.sh.in: New file, from GNU gettext.
28939
28940 2005-06-08  Bruno Haible  <bruno@clisp.org>
28941
28942         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
28943         warning on mingw.
28944
28945 2005-06-07  Derek Price  <derek@ximbiot.com>
28946
28947         Sync from CVS.
28948         * lib/glob_.h: Indent nested #ifdef.
28949
28950 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
28951
28952         Sync from coreutils.
28953         Use "file name" when talking about file names, instead of "filename"
28954         or "path", as per the GNU coding standards.
28955         * lib/mkdir-p.c: Renamed from makepath.c.
28956         (make_dir_parents): Renamed from make_path.  All callers changed.
28957         * lib/mkdir-p.h: Likewise.  All includers changed.
28958         * lib/filenamecat.c: Renamed from path-concat.c.
28959         (file_name_concat): Renamed from path_concat.  All callers changed.
28960         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
28961         * lib/filenamecat.h: Likewise.  All includers changed.
28962         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
28963         in comments or local variable names.
28964         * lib/basename.c: Likewise.
28965         * lib/canonicalize.c, canonicalize.h: Likewise.
28966         * lib/dirname.c, dirname.h: Likewise.
28967         * lib/euidaccess.c: Likewise.
28968         * lib/exclude.c: Likewise
28969         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
28970         * lib/fsusage.c, fsuage.h: Likewise.
28971         * lib/fts.c, fts_.h: Likewise.
28972         * lib/getcwd.c: Likewise.
28973         * lib/getloadavg.c: Likewise.
28974         * lib/mkstemp.c: Likewise.
28975         * lib/mountlist.c, mountlist.h: Likewise.
28976         * lib/openat.c, openat.h: Likewise.
28977         * lib/readlink-stub.c: Likewise.
28978         * lib/readutmp.c, readutmp.h: Likewise.
28979         * lib/rename.c: Likewise.
28980         * lib/rmdir.c: Likewise.
28981         * lib/same.c: Likewise.
28982         * lib/savedir.c: Likewise.
28983         * lib/stripslash.c: Likewise.
28984         * lib/tempname.c: Likewise.
28985         * lib/xreadlink.c: Likewise.
28986         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
28987         All uses changed.
28988         * lib/exclude.h: Likewise.
28989
28990         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
28991         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
28992         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
28993         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
28994         * lib/pathmax.h: Include <limits.h> unconditionally, since other
28995         files have been getting away with it for years (MORE/BSD 4.3
28996         is extinct now).
28997         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
28998         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
28999
29000         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
29001         Define to 256, not 255, as per modern POSIX.
29002
29003 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
29004
29005         Sync from coreutils.
29006         Use "file name" when talking about file names, instead of "filename"
29007         or "path", as per the GNU coding standards.
29008         * MODULES.html.sh: mkdir-p renamed from makepath.
29009         filenamecat renamed from path-concat.
29010         * modules/filenamecat: Renamed from modules/path-concat.
29011         (Files): filenamecat.h and filenamecat.c renamed from
29012         path-concat.h and path-concat.c.
29013         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
29014         (Include): filenamecat.h, not path-concat.h.
29015         * modules/mkdir-p: Renamed from modules/makepath.
29016         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
29017         makepath.c.
29018         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
29019         (Include): mkdir-p.h, not makepath.h.
29020
29021 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
29022
29023         Sync from coreutils.
29024         * m4/mkdir-p.m4: Renamed from makepath.m4.
29025         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
29026         Rename files from makepath.c to mkdir-p.c, and from
29027         makepath.h to mkdir-p.h.
29028         * m4/filenamecat.m4: Renamed from path-concat.m4.
29029         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
29030         Rename files from path-concat.c to filenamecat.c,
29031         and from path-concat.h to filenamecat.h.
29032         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
29033         "file name" in local variables or comments.
29034         * m4/rename.m4: Likewise.
29035
29036 2005-06-01  Bruno Haible  <bruno@clisp.org>
29037
29038         * modules/csharpexec: New file.
29039         * MODULES.html.sh (C#): New section.
29040
29041 2005-06-01  Bruno Haible  <bruno@clisp.org>
29042
29043         * m4/csharp.m4: New file, from GNU gettext.
29044         * m4/csharpexec.m4: New file, from GNU gettext.
29045
29046 2005-06-01  Bruno Haible  <bruno@clisp.org>
29047
29048         * lib/csharpexec.h: New file, from GNU gettext.
29049         * lib/csharpexec.c: New file, from GNU gettext.
29050         * lib/csharpexec.sh.in: New file, from GNU gettext.
29051
29052 2005-05-31  Derek Price  <derek@ximbiot.com>
29053             Paul Eggert  <eggert@cs.ucla.edu>
29054
29055         Sync from cvs.
29056         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
29057
29058 2005-05-31  Derek Price  <derek@ximbiot.com>
29059             Paul Eggert  <eggert@cs.ucla.edu>
29060
29061         Sync from cvs.
29062         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
29063
29064 2005-05-29  Derek Price  <derek@ximbiot.com>
29065
29066         * config/srclist.txt (glob_.h, glob.c): Add these files.
29067
29068 2005-05-29  Derek Price  <derek@ximbiot.com>
29069
29070         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
29071         * modules/glob: New file.
29072         * modules/getlogin_r: Add link to POSIX spec in description.
29073
29074 2005-05-29  Derek Price  <derek@ximbiot.com>
29075             Paul Eggert  <eggert@cs.ucla.edu>
29076
29077         * m4/glob.m4: New file.
29078
29079 2005-05-29  Derek Price  <derek@ximbiot.com>
29080             Paul Eggert  <eggert@cs.ucla.edu>
29081
29082         * lib/glob_.h, lib/glob.c: New files.
29083
29084 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
29085
29086         * modules/fts (Files): Remove m4/inttypes-pri.m4.
29087         * modules/fts-lgpl (Depends-on): Remove gettext.
29088
29089 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
29090
29091         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
29092         and don't require gt_INTTYPES_PRI.
29093
29094 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
29095
29096         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
29097
29098         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
29099         the configuration hassle isn't worth it.
29100         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
29101         (LONGEST_MODIFIER, PRIuMAX): Remove.
29102
29103 2005-05-27  Bruno Haible  <bruno@clisp.org>
29104
29105         * lib/getlogin_r.h: Remove second include of <stddef.h>.
29106
29107 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
29108
29109         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
29110         _POSIX_PTHREAD_SEMANTICS for Solaris.
29111
29112 2005-05-25  Derek Price  <derek@ximbiot.com>
29113
29114         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
29115
29116 2005-05-25  Derek Price  <derek@ximbiot.com>
29117             Paul Eggert  <eggert@cs.ucla.edu>
29118
29119         * modules/getlogin_r, m4/getlogin_r.m4: New files.
29120         * lib/getlogin_r.c, getlogin_r.h: New files.
29121
29122 2005-05-25  Bruno Haible  <bruno@clisp.org>
29123             Derek Price  <derek@ximbiot.com>
29124
29125         * lib/getlogin_r.h: Simplify API documentation.
29126
29127 2005-05-23  Derek Price  <derek@ximbiot.com>
29128
29129         * modules/minmax (Files): Add m4/minmax.m4.
29130         (configure.ac): Add gl_MINMAX.
29131
29132 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
29133
29134         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
29135         so that unistd-safer.h (GPL'ed code) need not be included.
29136
29137 2005-05-22  Bruno Haible  <bruno@clisp.org>
29138
29139         * m4/minmax.m4: New file.
29140         Based on a patch by Derek Price <derek@ximbiot.com>.
29141
29142 2005-05-22  Bruno Haible  <bruno@clisp.org>
29143
29144         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
29145         (INT64_MIN): Fix definition.
29146         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
29147
29148         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
29149         NEED_SIGNED_INT_TYPES.
29150
29151         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
29152         HAVE_SYSTEM_INTTYPES.
29153
29154 2005-05-22  Bruno Haible  <bruno@clisp.org>
29155
29156         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
29157         Also include <sys/param.h> if it defines MIN, MAX.
29158         Based on a patch by Derek Price <derek@ximbiot.com>.
29159
29160 2005-05-21  Jim Meyering  <jim@meyering.net>
29161
29162         * modules/fts (Files): Add m4/inttypes-pri.m4.
29163         (Depends-on): Add lstat and remove gettext.  Alphabetize.
29164
29165 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
29166
29167         New fts module.
29168         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
29169         (setup_dir, free_dir): New functions.
29170         (enter_dir, leave_dir): Define trivial
29171         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
29172         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
29173         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
29174         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
29175         Move to fts-cycle.c.
29176         (fts_open): Use setup_dir.
29177         (fts_close): Use free_dir.
29178         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
29179         This adds a label and some gotos, but the alternatives were messier.
29180         Check for memory allocation failure when entering a dir.
29181         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
29182         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
29183         (FTS): New member fts_cycle, that is a union that contains the
29184         old active_dir_ht and cycle_state.  All uses changed to mention
29185         fts_cycle.ht and fts_cycle.state.
29186         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
29187         fts.c, with the following changes:
29188         (setup_dir, free_dir): New functions.
29189         (enter_dir): Now returns bool.  Return true if successful, false
29190         if memory exhausted.  All callers changed.
29191         Do not bother partly cleaning up on
29192         memory allocation failure; that is free_dir's job.
29193         However, free ad if hash_insert fails, to avoid memory leak.
29194         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
29195         fts->fts_options to see which union member to use.
29196
29197 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
29198
29199         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
29200         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
29201
29202 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
29203
29204         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
29205
29206 2005-05-20  Jim Meyering  <jim@meyering.net>
29207
29208         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
29209         Now a macro, to pacify GCC.
29210
29211 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
29212
29213         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
29214         of -1.
29215
29216 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
29217
29218         * lib/chown.c (rpl_chown): Return -1 on failure.
29219
29220 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
29221
29222         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
29223         Don't check for stddef.h.
29224         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
29225         don't use its results.
29226         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
29227         since we include them unconditionally.  Don't require
29228         AM_STDBOOL_H, since stdbool is a prerequisite.
29229         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
29230         since we assume C89 or better.
29231         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
29232         as we don't use their results.
29233         Don't check for fchdir, memmove, memset, strrchr, as we use
29234         them unconditionally.
29235         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
29236         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
29237
29238 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
29239
29240         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
29241         Include <stddef.h> unconditionally, since we assume C89 now.
29242         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
29243         * lib/fts.c: Include fts_.h first, to check interface.
29244         Do not include intprops.h; no longer needed.
29245         Include cycle-check.h and hash.h, since fts_.h no longer does.
29246         Remove unnecessary casts of closedir to void.
29247         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
29248         decide whether to decrement nlinks.
29249         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
29250         (FTS): Use struct hash_table * instead of Hash_table, so that
29251         we no longer need to include hash.h here.
29252
29253 2005-05-18  Jim Meyering  <jim@meyering.net>
29254
29255         * modules/dirfd (License): Change to LGPL.  Most of the code
29256         is already in the public domain.
29257
29258 2005-05-18  Jim Meyering  <jim@meyering.net>
29259
29260         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
29261         Reported by Yoann Vandoorselaere.
29262
29263 2005-05-17  Jim Meyering  <jim@meyering.net>
29264
29265         * m4/fts.m4: New file, from coreutils.
29266
29267 2005-05-17  Jim Meyering  <jim@meyering.net>
29268
29269         * lib/fts.c, lib/fts_.h: New files, from coreutils.
29270
29271 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
29272
29273         Sync from coreutils.
29274         * m4/unlinkdir.m4: New file.
29275
29276 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
29277
29278         Sync from coreutils.
29279         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
29280         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
29281         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
29282         White space changes only.
29283         * lib/makepath.c (make_path): Port to hosts where leading "//" is
29284         special.
29285         * lib/yesno.c: Include getline.h, not ctype.h.
29286         (yesno): Don't remove leading white space; POSIX doesn't allow it.
29287         Use getline to remove arbitrary restriction on response length.
29288
29289 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
29290
29291         * config/srclist-update: Spell out "Street" in FSF postal
29292         mail address; this is the style the FSF seems to prefer.
29293
29294         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
29295         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
29296         this updates FSF postal mail address.
29297
29298         Sync from coreutils.
29299         * modules/unlinkdir: New file.
29300         * modules/yesno (Depends-on): Add getline.
29301         * MODULES.html.sh (File system functions): Add unlinkdir.
29302
29303 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
29304
29305         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
29306         lib/strsep.h:
29307         Change the initial comment to refer to GPL, not LGPL.
29308         gnulib-tool will change it to LGPL as needed.
29309
29310         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
29311         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
29312         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
29313         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
29314         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
29315         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
29316         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
29317         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
29318         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
29319         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
29320         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
29321         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
29322         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
29323         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
29324         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
29325         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
29326         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
29327         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
29328         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
29329         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
29330         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
29331         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
29332         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
29333         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
29334         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
29335         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
29336         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
29337         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
29338         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
29339         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
29340         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
29341         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
29342         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
29343         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
29344         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
29345         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
29346         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
29347         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
29348         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
29349         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
29350         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
29351         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
29352         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
29353         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
29354         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
29355         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
29356         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
29357         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
29358         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
29359         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
29360         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
29361         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
29362         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
29363         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
29364         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
29365         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
29366         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
29367         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
29368         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
29369         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
29370         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
29371         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
29372         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
29373         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
29374         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
29375         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
29376         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
29377         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
29378         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
29379         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
29380         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
29381         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
29382         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
29383         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
29384         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
29385         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
29386         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
29387         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
29388         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
29389         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
29390         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
29391         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
29392         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
29393         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
29394         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
29395         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
29396         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
29397         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
29398         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
29399         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
29400         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
29401         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
29402         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
29403         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
29404         lib/yesno.c, lib/yesno.h:
29405         Update FSF postal mail address.
29406
29407 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
29408
29409         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
29410         tests/test-memmem.c, tests/test-stpncpy.c:
29411         Update FSF postal mail address.
29412
29413 2005-05-13  Bruno Haible  <bruno@clisp.org>
29414
29415         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
29416         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
29417         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
29418         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
29419         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
29420         Add support for 64-bit integers in the MSVC compiler.
29421
29422 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
29423
29424         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
29425
29426 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
29427
29428         * gnulib-tool (func_import): Sort and uniquify recommended includes.
29429
29430 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
29431
29432         * doc/getdate.texi (General date syntax): Don't say that date
29433         date --iso-8601=ns generates acceptable dates; it doesn't yet.
29434         Problem reported by Nic Ferrier.
29435
29436 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29437
29438         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
29439         specified in ai_socktype. Fix invalid ai_protocol
29440         check. ai_protocol is usually set to 0 or depending on
29441         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
29442         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
29443         ai_socktype / ai_protocol in the returned addrinfo structure.
29444
29445 2005-05-10  Simon Josefsson  <jas@extundo.com>
29446
29447         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
29448         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
29449
29450 2005-05-10  Karl Berry  <karl@gnu.org>
29451
29452         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
29453         (from http://www.gnu.org/licenses).
29454         * doc/COPYING.LIB: also rename to COPYING.LESSER.
29455         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
29456         fdl.texi suffices.
29457
29458 2005-05-10  Karl Berry  <karl@gnu.org>
29459
29460         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
29461         (COPYING.DOC): remove.
29462
29463         * config/srclist-update: new FSF address.
29464
29465 2005-05-10  Derek Price  <derek@ximbiot.com>
29466
29467         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
29468         possible.
29469
29470 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29471             Bruno Haible  <bruno@clisp.org>
29472
29473         * modules/inet_ntop: New file.
29474         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
29475         inet_ntop.
29476
29477 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29478             Bruno Haible  <bruno@clisp.org>
29479
29480         * m4/inet_ntop.m4: New file.
29481
29482 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29483             Bruno Haible  <bruno@clisp.org>
29484
29485         * lib/inet_ntop.h: New file.
29486         * lib/inet_ntop.c: New file, from glibc with modifications.
29487
29488 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
29489
29490         * modules/time_r (License): Change to LGPL.
29491         * modules/extensions (License): Change to LGPL.  Actually,
29492         the license is more permissive than that, but currently gnulib-tool
29493         doesn't know how to handle more-permissive licenses.
29494
29495         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
29496         Problem reported by Dave Love.
29497
29498 2005-05-08  Jim Meyering  <jim@meyering.net>
29499
29500         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
29501         blank.
29502
29503 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
29504
29505         * modules/argmatch (Depends-on): Add stdbool.
29506         * modules/backupfile (Depends-on): Likewise.
29507         * modules/chdir-long (Depends-on): Likewise.
29508         * modules/closeout (Depends-on): Likewise.
29509         * modules/cycle-check (Depends-on): Likewise.
29510         * modules/dirname (Depends-on): Likewise.
29511         * modules/fnmatch (Depends-on): Likewise.
29512         * modules/fsusage (Depends-on): Likewise.
29513         * modules/fwriteerror (Depends-on): Likewise.
29514         * modules/getcwd (Depends-on): Likewise.
29515         * modules/getloadavg (Depends-on): Likewise.
29516         * modules/hard-locale (Depends-on): Likewise.
29517         * modules/makepath (Depends-on): Likewise.
29518         * modules/mountlist (Depends-on): Likewise.
29519         * modules/nanosleep (Depends-on): Likewise.
29520         * modules/posixtm (Depends-on): Likewise.
29521         * modules/quotearg (Depends-on): Likewise.
29522         * modules/readtokens (Depends-on): Likewise.
29523         * modules/readtokens0 (Depends-on): Likewise.
29524         * modules/readutmp (Depends-on): Likewise.
29525         * modules/save-cwd (Depends-on): Likewise.
29526         * modules/strftime (Depends-on): Likewise.
29527         * modules/userspec (Depends-on): Likewise.
29528         * modules/utimecmp (Depends-on): Likewise.
29529         * modules/xgetcwd (Depends-on): Likewise.
29530         * modules/xnanosleep (Depends-on): Likewise.
29531         * modules/xstrtod (Depends-on): Likewise.
29532         * modules/yesno (Depends-on): Likewise.
29533
29534 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
29535
29536         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
29537         needless checks.
29538
29539 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
29540
29541         Merge from coreutils.  Among other things,
29542         add bulletproofing for cases where stdin, stdout, or stderr are closed.
29543         * lib/fd-safer.c: New file.
29544         * lib/fcntl-safer.h, open-safer.c: Remove.
29545         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
29546         * lib/dup-safer.c: Include unistd-safer.h first.
29547         Don't include errno.h.
29548         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
29549         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
29550         * lib/file-type.c: Rely on file-type.h change.
29551         * lib/getloadavg.c: Include unistd-safer.h.
29552         (getloadavg): Use safer open.
29553         * lib/getusershell.c: Include "stdio-safer.h".
29554         (getusershell): Use safer fopen.
29555         * lib/long-options.c (long_options): Use NULL rather than 0.
29556         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
29557         'free'.
29558         * lib/modechange.c: Likewise.
29559         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
29560         (MODE_DONE): New constant.
29561         (struct mode_change): Remove 'next' member.
29562         (make_node_op_equals): New function; like the old one of the
29563         same name, except it allocates an array.
29564         (mode_compile, mode_create_from_ref): Use it.
29565         (mode_compile): Allocate result as an array, not a linked list.
29566         Parse octal string ourself, so that we catch mistakes like "+0".
29567         (mode_adjust): Arg is an array, not a linked list.
29568         * lib/modechange.c: Include stat-macros.h, xalloc.h.
29569         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
29570         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
29571         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
29572         Remove.  This is now stat-macros.h's job.
29573         (talloc): Remove.  All callers replaced by xalloc, so that
29574         our invokers don't have to worry about reporting memory failures.
29575         (make_node_op_equals): Remove.
29576         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
29577         New constants.
29578         (struct mode_change): Moved here from modechange.h.
29579         (mode_append_entry): Remove.
29580         (mode_compile): Remove MASKED_OPS arg, since it encouraged
29581         apps to have incorrect behavior.  Use simpler algorithm for head
29582         and tail.  Don't futz with umask; that's now the job of mode_adjust.
29583         Detect more invalid usages rather than having somewhat-random behavior.
29584         Don't insert an "a=" action, as that leads to incorrect behavior.
29585         (mode_compile, mode_create_from_ref): Return NULL on error instead
29586         of an enum, since now there's only one way to have an error.  All
29587         callers changed.
29588         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
29589         at the correct time.  Simplify calculation of "+u" and its ilk.
29590         Don't mishandle "+X".
29591         (mode_free): Remove "register" and localize decls.
29592         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
29593         (struct mode_change): Move to modechange.c; callers don't
29594         need to see this stuff.
29595         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
29596         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
29597         (mode_change, mode_adjust): Reflect the new signatures noted above.
29598         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
29599         that might redefine system include files.
29600         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
29601         (my_usleep): Use NULL rather than (void *) 0.
29602         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
29603         Use siginterrupt to specify that system calls should be interrupted.
29604         (rpl_nanosleep): Move initialization of suspended closer to call of
29605         my_usleep.
29606         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
29607         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
29608         (desirable_utmp_entry): New function.
29609         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
29610         using x2nrealloc, to simplify logic.
29611         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
29612         size calculation.  Do not assume utmp file is a regular file.
29613         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
29614         (READ_UTMP_CHECK_PIDS): New constant.
29615         * lib/save-cwd.c: Include unistd-safer.h.
29616         (save_cwd): Use fd_safer.
29617         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
29618         [!_LIBC] Include "stat-macros.h" instead.
29619         * lib/unistd-safer.h (fd_safer): New decl.
29620
29621 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
29622
29623         * modules/getloadavg (Depends-on): Add unistd-safer.
29624         * modules/getusershell (Depends-on): Add stdio-safer.
29625         * modules/lstat (Depends-on): Remove xalloc.
29626         * modules/mkstemp (Depends-on): Add stat-macros.
29627         * modules/modechange (Depends-on): Remove xstrtol.
29628         Add stat-macros, xalloc.
29629         * modules/save-cwd (Depends-on): Add unistd-safer.
29630         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
29631         * modules/unistd-safer (Files): Add lib/fd-safer.c
29632         (Makefile.am): Remove lib_SOURCES.
29633
29634         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
29635         Remove fcntl-safer; unistd-safer supersedes it.
29636
29637 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
29638
29639         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
29640         AC_HEADER_STAT.
29641         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
29642         (gl_PREREQ_CHOWN): Remove.
29643         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
29644         it.  Don't require AC_HEADER_STAT.
29645         (gl_PREREQ_LSTAT): Remove.
29646         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
29647         Don't require AC_HEADER_STAT.
29648         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
29649         (gl_PREREQ_RMDIR): Remove.
29650         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
29651         mention stat-macros.h or AC_HEADER_STAT, since we'll make
29652         the stat-macros module a prerequisite.
29653         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
29654         * m4/filemode.m4 (gl_FILEMODE): Likewise.
29655         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
29656         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
29657         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
29658         variable names.
29659         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
29660         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
29661         variable prefixes.
29662         * m4/fcntl-safer.m4: Remove.
29663         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
29664         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
29665         Invoke gl_PREREQ_FD_SAFER.
29666         (gl_PREREQ_FD_SAFER): New macro.
29667         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
29668         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
29669         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
29670         Remove duplicate call to AC_LIBOBJ(readutmp).
29671         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
29672
29673         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
29674         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
29675
29676 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
29677
29678         * MODULES.html.sh (Misc): Add byteswap.
29679
29680 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
29681
29682         * modules/getcwd (Depends-on): Add extensions.
29683         * modules/openat (Depends-on): Likewise.
29684
29685 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
29686
29687         * modules/byteswap: New file.
29688
29689 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
29690
29691         * m4/byteswap.m4: New file.
29692
29693 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
29694
29695         * lib/byteswap_.h: New file.
29696
29697 2005-04-25  Karl Berry  <karl@gnu.org>
29698
29699         * m4/gettext.m4: Update from GNU gettext 0.14.4.
29700
29701 2005-04-25  Albert Chin  <china@thewrittenword.com>
29702
29703         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
29704         Toolkit C bug.
29705
29706 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
29707
29708         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
29709         (func_ln_if_changed) Remove forcibly for no error message
29710         in case file does not exist.
29711
29712 2005-04-19  Simon Josefsson  <jas@extundo.com>
29713
29714         * gnulib-tool (Options): Make --symlink mean --symbolic.
29715
29716 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
29717
29718         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
29719
29720 2005-04-16  Simon Josefsson  <jas@extundo.com>
29721
29722         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
29723
29724 2005-04-15  Simon Josefsson  <jas@extundo.com>
29725
29726         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
29727
29728 2005-04-15  Simon Josefsson  <jas@extundo.com>
29729
29730         * gnulib-tool: Rename --symlink to --symbolic.
29731
29732 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
29733
29734         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
29735         symbolic links to files instead of copying/moving.  Add --aux-dir,
29736         specifying directory relative --dir where auxiliary build tools
29737         are placed.
29738
29739 2005-04-14  Bruno Haible  <bruno@clisp.org>
29740
29741         * modules/allocsa (License): Change to LGPL.
29742         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
29743
29744 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
29745
29746         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
29747         that "UTC +1 second" continues to work.  Problem reported
29748         by Dmitry V. Levin.
29749         (relunit_snumber): New rule.
29750         (relunit): Use it.
29751
29752 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
29753
29754         * lib/getdate.y (universal_time_zone_table): New constant.
29755         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
29756         universal_time_zone_table.
29757         (lookup_zone): Prefer universal_time_zone_table to
29758         local_time_zone_table, so that "GMT" time stamps are allowed in
29759         London during the summer.  Problem reported by Ian Abbott.
29760
29761 2005-04-12  Jim Meyering  <jim@meyering.net>
29762
29763         * lib/human.c (humblock): Set *options even when returning due to
29764         xstrtoumax conversion failure.  Thanks to a used-uninitialized
29765         warning from gcc-4.
29766
29767 2005-04-09  Jim Meyering  <jim@meyering.net>
29768
29769         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
29770         -Wuninitialized: initialize tm0.tm_year.
29771
29772 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
29773
29774         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
29775         count, since there's no maximum.  All uses changed.
29776         Add member dsts_seen.
29777         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
29778         not being INT_MAX.
29779         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
29780         Use pc_rels_seen to decide whther a date is absolute.
29781
29782         * lib/getdate.y (number): Don't overwrite year.
29783         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
29784         check.
29785
29786 2005-04-02  Simon Josefsson  <jas@extundo.com>
29787
29788         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
29789         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
29790
29791 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
29792
29793         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
29794         where no absolute path name can be longer than PATH_MAX.
29795
29796 2005-03-27  Jim Meyering  <jim@meyering.net>
29797
29798         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
29799
29800 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
29801
29802         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
29803         "one's complement" -> "ones' complement" in comment, as per Knuth.
29804         "value of type" -> "type or expression" in comment.
29805         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
29806
29807 2005-03-26  Jim Meyering  <jim@meyering.net>
29808
29809         Comment nits.
29810         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
29811         Correct typos: s/or/of/.
29812
29813 2005-03-26  Jim Meyering  <jim@meyering.net>
29814
29815         * modules/check-include-files: Move to ../ and rename to...
29816         * check-module: ...this.
29817
29818 2005-03-25  Jim Meyering  <jim@meyering.net>
29819
29820         * modules/xvasprintf (Files): Add xalloc.h.
29821
29822 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
29823
29824         * modules/gettext (Files): config/config.rpath ->
29825         build-aux/config.rpath
29826         * modules/iconv (Files): Likewise.
29827         Problem reported by Oskar Liljeblad.
29828
29829 2005-03-23  Jim Meyering  <jim@meyering.net>
29830
29831         * modules/check-include-files: New script to check for
29832         missing dependencies, multiple includes, etc.
29833
29834         * modules/c-strtold (Depends-on): Add xalloc.
29835         * modules/c-strtod (Depends-on): Add xalloc.
29836         * modules/hash (Depends-on): Add xalloc.
29837         (Files): Remove lib/xalloc.h.
29838
29839         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
29840         * modules/userspec (Files): Add lib/inttostr.h.
29841
29842 2005-03-23  Jim Meyering  <jim@meyering.net>
29843
29844         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
29845
29846 2005-03-22  Jim Meyering  <jim@meyering.net>
29847
29848         * modules/stat-macros: New module.
29849         * modules/canonicalize, modules/euidaccess, modules/file-type,
29850         * modules/filemode, modules/lchown, modules/makepath,
29851         * modules/rmdir, modules/stat: Depend on new stat-macros module
29852         rather than listing lib/stat-macros.h manually.
29853         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
29854
29855 2005-03-22  Jim Meyering  <jim@meyering.net>
29856
29857         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
29858
29859 2005-03-22  Bruno Haible  <bruno@clisp.org>
29860
29861         * config/srclist.txt: Replace target directory 'config' with
29862         'build-aux'.
29863         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
29864         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
29865         ../build-aux/.
29866
29867 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
29868
29869         * modules/chdir-long (Depends-on): Add mempcpy.
29870
29871         * modules/acl, modules/backupfile, modules/c-strtod,
29872         modules/c-strtold, modules/canon-host, modules/canonicalize,
29873         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
29874         modules/exclude, modules/exitfail, modules/file-type,
29875         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
29876         modules/getdate, modules/getline, modules/getpagesize,
29877         modules/getpass, modules/getugroups, modules/group-member,
29878         modules/hard-locale, modules/hash, modules/human, modules/idcache,
29879         modules/inttostr, modules/long-options, modules/makepath,
29880         modules/md5, modules/memcasecmp, modules/memcoll,
29881         modules/modechange, modules/mountlist, modules/path-concat,
29882         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
29883         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
29884         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
29885         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
29886         modules/strftime, modules/strndup, modules/strverscmp,
29887         modules/timespec, modules/unlocked-io, modules/userspec,
29888         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
29889         modules/yesno:
29890         Remove lib_SOURCES line from Makefile.am section, as this is now
29891         done automatically by the corresponding Autoconf macro.
29892
29893 2005-03-21  Jim Meyering  <jim@meyering.net>
29894
29895         Changes imported from coreutils.
29896
29897         * lib/cycle-check.c: Don't include xalloc.h.
29898
29899         * lib/path-concat.c: Don't include assert.h.
29900         (path_concat): Remove assertion that would have triggered
29901         for ABASE starting with more than one slash.
29902         Reported by Andreas Schwab.
29903
29904         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
29905         properly when ABASE is an absolute file name.
29906         Correct the description of this function.
29907         Include <assert.h>.
29908         Add an assertion and a test driver.
29909         This fixes a bug introduced on 2004-07-02.
29910         Andreas Schwab reported the resulting failure of cp --parents:
29911         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
29912
29913 2005-03-21  Jim Meyering  <jim@meyering.net>
29914
29915         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
29916         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
29917
29918 2005-03-21  Jim Meyering  <jim@meyering.net>
29919         and  Paul Eggert  <eggert@cs.ucla.edu>
29920
29921         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
29922         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
29923         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
29924         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
29925         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
29926         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
29927         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
29928         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
29929         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
29930         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
29931         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
29932         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
29933         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
29934         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
29935         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
29936         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
29937         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
29938         for these modules.
29939
29940 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
29941
29942         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
29943         (which shouldn't happen), generate nothing instead of returning 0
29944         immediately, so that nstrftime (NULL, ...) doesn't return 0.
29945
29946 2005-03-16  Bruno Haible  <bruno@clisp.org>
29947
29948         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
29949         HAVE_LONGLONG_64BIT.
29950
29951 2005-03-16  Bruno Haible  <bruno@clisp.org>
29952
29953         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
29954         HAVE_LONGLONG_64BIT.
29955
29956 2005-03-16  Bruno Haible  <bruno@clisp.org>
29957
29958         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
29959         HAVE_LONGLONG_64BIT.
29960
29961 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
29962
29963         * lib/strftime.c (my_strftime): Prepend space to format so that we can
29964         reliably distinguish strftime failure from empty output on POSIX
29965         hosts.
29966
29967 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
29968
29969         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
29970         (iconv_string): Don't guess a size-zero buffer, as that might cause
29971         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
29972         result would be 'too large', where 'too large' is (heuristically)
29973         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
29974         overflow concerns.  This will prevent some unwanted malloc failures
29975         when the inputs are very large.
29976
29977 2005-03-15  Karl Berry  <karl@gnu.org>
29978
29979         * config/srclist.txt (config.rpath): from gettext.
29980         * config/config.rpath: update.
29981
29982 2005-03-15  Bruno Haible  <bruno@clisp.org>
29983
29984         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
29985         to 'negate'.
29986
29987         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
29988         variable.
29989
29990         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
29991         results.
29992
29993 2005-03-14  Simon Josefsson  <jas@extundo.com>
29994
29995         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
29996         <fx@gnu.org>.
29997
29998 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
29999
30000         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
30001         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
30002         intprops.h.
30003         * lib/strtol.c: Likewise.
30004
30005 2005-03-14  Jim Meyering  <jim@meyering.net>
30006
30007         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
30008         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
30009         to be nonzero so that we (and caller) can detect the difference
30010         between a valid zero-length expansion and an error return, even
30011         when the underlying strftime fails before writing anything into
30012         that location.
30013
30014 2005-03-14  Bruno Haible  <bruno@clisp.org>
30015
30016         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
30017         Update from GNU gettext 0.14.3.
30018
30019 2005-03-10  Jim Meyering  <jim@meyering.net>
30020
30021         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
30022
30023 2005-03-10  Jim Meyering  <jim@meyering.net>
30024
30025         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
30026         so that this module works on systems without fchdir.
30027
30028 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
30029
30030         Factor int-properties macros into a single file, except for
30031         glibc-related files.
30032         * lib/intprops.h: New file.
30033         * lib/getloadavg.c: Include it instead of limits.h.
30034         (INT_STRLEN_BOUND): Remove.
30035         * lib/human.c: Include intprops.h.
30036         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
30037         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
30038         302/1000.
30039         * lib/inttostr.h: Include intprops.h instead of limits.h.
30040         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
30041         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
30042         for consistency with intprops.h.
30043         (time_t_is_integer, twos_complement_arithmetic): Use them.
30044         * lib/sig2str.h: Include <signal.h>, intprops.h.
30045         (INT_STRLEN_BOUND): Remove.
30046         * lib/strftime.c (TYPE_SIGNED): Remove.
30047         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
30048         * lib/strtol.c: Adjust comments to match intprops.h.
30049         * lib/userspec.c: Include intprops.h.
30050         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
30051         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
30052         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
30053         instead of rolling our own expressions.
30054         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
30055
30056         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
30057         instead of int.
30058         (my_strftime): Do not mishandle years close to INT_MAX, by doing
30059         the right thing even if adding 1900 would overflow.  Similarly
30060         for tm_mon + 1 and tm_yday + 1.
30061         Make %Y always equivalent to %C%y, and similarly for %G and %g.
30062         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
30063         (DO_SIGNED_NUMBER): New macro.
30064         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
30065
30066 2005-03-07  Bruno Haible  <bruno@clisp.org>
30067
30068         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
30069
30070 2005-03-07  Bruno Haible  <bruno@clisp.org>
30071
30072         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
30073
30074 2005-03-04  Derek R. Price  <derek@ximbiot.com>
30075
30076         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
30077         (func_import): Only replace files via --import when they have actually
30078         changed.
30079
30080 2005-03-03  Derek R. Price  <derek@ximbiot.com>
30081
30082         * m4/mmap-anon.m4: New file.
30083         * m4/pagealign_alloc.m4: New file.
30084
30085 2005-03-03  Derek R. Price  <derek@ximbiot.com>
30086             Bruno Haible  <bruno@clisp.org>
30087
30088         * modules/pagealign_alloc: New file.
30089         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
30090
30091 2005-03-03  Derek R. Price  <derek@ximbiot.com>
30092             Bruno Haible  <bruno@clisp.org>
30093
30094         * lib/pagealign_alloc.h: New file.
30095         * lib/pagealign_alloc.c: New file.
30096
30097 2005-03-03  Bruno Haible  <bruno@clisp.org>
30098
30099         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
30100         Use an all-permissive copyright notice, recommended by RMS.
30101
30102 2005-03-02  Bruno Haible  <bruno@clisp.org>
30103
30104         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
30105         of AIX, the replacement has to be done only after <string.h> is
30106         included, therefore not in config.h. stpncpy.h does the replacement,
30107         and stpncpy.c uses it.
30108
30109 2005-03-02  Bruno Haible  <bruno@clisp.org>
30110
30111         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
30112         stpncpy.c uses it.
30113
30114 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
30115
30116         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
30117         The workaround isn't strictly needed for POSIX conformance, and
30118         it's too much of a pain to configure and maintain.  We'll ask
30119         people to fix their kernels instead.
30120         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
30121         (NANOSLEEP_BUG_WORKAROUND): Remove.
30122         (xnanosleep): Remove the workaround.
30123
30124 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
30125
30126         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
30127         Reported by Derek Price.
30128         (Include): Add "timespec.h".
30129
30130         * modules/xnanosleep (Depends-on): Remove gethrxtime.
30131
30132 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
30133
30134         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
30135         to detect nanosleep bug.
30136
30137 2005-03-01  Bruno Haible  <bruno@clisp.org>
30138
30139         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
30140
30141 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
30142
30143         * modules/gethrxtime: New file.
30144         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
30145         (Depends-on): Add gethrxtime.
30146         (configure.ac): Add gl_XNANOSLEEP.
30147         (Makefile.am): Remove lib_SOURCES line.
30148
30149 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
30150
30151         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
30152         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
30153
30154 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
30155
30156         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
30157         * lib/timespec.h (gettime): Return void, since it always
30158         succeeds now.  All uses changed.
30159         * lib/gettime.c (gettime) Likewise.
30160         [HAVE_NANOTIME]: Prefer nanotime.
30161         Assume gettimeofday succeeds, as POSIX requires.
30162         Assime time () succeeds, since other code already does.
30163         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
30164         (timespec_subtract): Remove.
30165         (NANOSLEEP_BUG_WORKAROUND): New constant.
30166         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
30167         things considerably.  Use it only on GNU/Linux hosts, since the
30168         workaround shouldn't be needed elsewhere.
30169
30170 2005-02-24  Bruno Haible  <bruno@clisp.org>
30171
30172         * modules/gettext (Files): Add m4/glibc2.m4.
30173
30174 2005-02-24  Bruno Haible  <bruno@clisp.org>
30175
30176         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
30177         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
30178         * m4/progtest.m4:
30179         Update from GNU gettext 0.14.2.
30180         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
30181
30182 2005-02-24  Bruno Haible  <bruno@clisp.org>
30183
30184         * lib/localcharset.c: Update from GNU gettext 0.14.2.
30185         * lib/config.charset: Update from GNU gettext 0.14.2.
30186
30187 2005-02-24  Bruno Haible  <bruno@clisp.org>
30188
30189         * lib/gettext.h: Update from GNU gettext 0.14.2.
30190
30191 2005-02-23  Simon Josefsson  <jas@extundo.com>
30192
30193         * m4/iconvme.m4: New file.
30194
30195 2005-02-23  Jim Meyering  <jim@meyering.net>
30196
30197         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
30198         change.
30199         Thanks to Bruno Haible for catching it.
30200
30201 2005-02-22  Simon Josefsson  <jas@extundo.com>
30202
30203         * modules/iconvme: New file.
30204
30205         * MODULES.html.sh: Add iconvme.
30206
30207 2005-02-22  Simon Josefsson  <jas@extundo.com>
30208
30209         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
30210
30211 2005-02-22  Simon Josefsson  <jas@extundo.com>
30212
30213         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
30214
30215 2005-02-22  Jim Meyering  <jim@meyering.net>
30216
30217         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
30218         s/ifndef/ifdef/.
30219
30220 2005-02-20  Neil Conway  <neilc@samurai.com>
30221
30222         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
30223         returned by OSX/Darwin if the specified buffer is not large
30224         enough for the hostname.
30225
30226 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30227
30228         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
30229         pass it to _help, otherwise the latter coredumps trying to
30230         dereference state.root_argp.
30231
30232 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
30233
30234         * modules/chdir-long (Depends-on): Add memrchr.
30235         * modules/memrchr (Files): Add lib/memrchr.h.
30236         (Include): "memrchr.h".
30237
30238 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
30239
30240         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
30241
30242 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
30243
30244         * lib/memrchr.h: New file.
30245         * lib/chdir-long.c: Include it.
30246         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
30247         Don't bother including stddef.h.
30248
30249 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
30250
30251         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
30252         inclusion.
30253         Include <sys/types.h>, for dev_t.
30254         (ME_DUMMY, ME_REMOTE): Move from here....
30255         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
30256         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
30257         Dmitry V. Levin.
30258         Include mountlist.h first, to test the interface.
30259
30260 2005-01-29  Bruno Haible  <bruno@clisp.org>
30261
30262         * lib/progname.c (program_name): Initialize.
30263         Needed when linking statically on MacOS X.
30264
30265 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
30266
30267         Sync from coreutils.
30268         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
30269         (Depends-on): Add c-strtod.
30270         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
30271
30272 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
30273
30274         Sync from coreutils.
30275         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
30276
30277         Remove files that are specific to coreutils.
30278         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
30279
30280 2005-01-28  Bruno Haible  <bruno@clisp.org>
30281
30282         * modules/javacomp: New file.
30283         * MODULES.html.sh (Java): Add javacomp.
30284
30285 2005-01-28  Bruno Haible  <bruno@clisp.org>
30286
30287         * m4/javacomp.m4: New file, from GNU gettext.
30288
30289 2005-01-28  Bruno Haible  <bruno@clisp.org>
30290
30291         * lib/javacomp.sh.in: New file, from GNU gettext.
30292         * lib/javacomp.h: New file, from GNU gettext.
30293         * lib/javacomp.c: New file, from GNU gettext.
30294
30295 2005-01-26  Simon Josefsson  <jas@extundo.com>
30296
30297         * lib/gai_strerror.c: Use GPL in header.
30298
30299 2005-01-26  Bruno Haible  <bruno@clisp.org>
30300
30301         * modules/javaexec: New file.
30302         * MODULES.html.sh (Java): Add javaexec.
30303
30304 2005-01-26  Bruno Haible  <bruno@clisp.org>
30305
30306         * m4/javaexec.m4: New file, from GNU gettext.
30307
30308 2005-01-26  Bruno Haible  <bruno@clisp.org>
30309
30310         * lib/javaexec.sh.in: New file, from GNU gettext.
30311         * lib/javaexec.h: New file, from GNU gettext.
30312         * lib/javaexec.c: New file, from GNU gettext.
30313
30314 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30315
30316         * modules/lchown (Depends-on): Remove lchown.h
30317
30318 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30319
30320         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
30321         must be defined if the header file was not found, in order
30322         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
30323
30324 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30325
30326         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
30327         initializers for struct pentry_state.
30328         (__argp_error): Check return value of __asprintf
30329         (__argp_failure): Translate error message
30330
30331         * lib/argp-parse.c: Removed braces around the expansion of N_()
30332
30333 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
30334
30335         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
30336         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
30337         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
30338         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
30339         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
30340         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
30341         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
30342         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
30343         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
30344         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
30345         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
30346         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
30347         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
30348         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
30349         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
30350         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
30351         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
30352         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
30353         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
30354         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
30355         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
30356         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
30357         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
30358         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
30359         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
30360         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
30361         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
30362         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
30363         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
30364         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
30365         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
30366         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
30367         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
30368         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
30369         xstrtol.m4, xstrtoumax.m4, yesno.m4:
30370         Use an all-permissive copyright notice, recommended by RMS.
30371
30372 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
30373
30374         * modules/chdir-long (Depends-on): Remove mempcpy.
30375
30376 2005-01-21  Jim Meyering  <jim@meyering.net>
30377
30378         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
30379         same value as for Solaris 9.
30380
30381         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
30382         component length.  This included changing the parameter to be
30383         of type `char *' rather than `char const *'.
30384         * lib/chdir-long.h (chdir_long): Update prototype.
30385
30386         * lib/openat.c (fdopendir, fstatat): New functions.
30387         * lib/openat.h: Include headers required for use of DIR and struct
30388         stat.
30389         [AT_SYMLINK_NOFOLLOW]: Define.
30390         (fdopendir, fstatat): Add prototypes.
30391
30392 2005-01-21  Bruno Haible  <bruno@clisp.org>
30393
30394         * modules/classpath: New file.
30395         * MODULES.html.sh (Java): Add classpath.
30396
30397 2005-01-21  Bruno Haible  <bruno@clisp.org>
30398
30399         * lib/classpath.h: New file, from GNU gettext.
30400         * lib/classpath.c: New file, from GNU gettext.
30401
30402 2005-01-20  Simon Josefsson  <jas@extundo.com>
30403
30404         * modules/version-etc-fsf: New file.
30405
30406 2005-01-20  Simon Josefsson  <jas@extundo.com>
30407
30408         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
30409         * lib/version-etc.c: Remove version_etc_copyright.
30410         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
30411         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
30412
30413 2005-01-20  Simon Josefsson  <jas@extundo.com>
30414
30415         * lib/base64.h (isbase64): Add.
30416
30417         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
30418         using a unsigned prototype, don't inline.
30419         (base64_decode): Use it.
30420
30421 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
30422
30423         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
30424         it.
30425
30426 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
30427
30428         * lib/save-cwd.c (save_cwd): Remove code to support the case
30429         where fchdir is missing or flaky.
30430
30431 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
30432
30433         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
30434
30435 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
30436
30437         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
30438         AC_LIBSOURCES now does this.
30439         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
30440         with new ullong_max module.
30441
30442 2005-01-19  Bruno Haible  <bruno@clisp.org>
30443
30444         * modules/sh-quote: New file.
30445         * MODULES.html.sh (Executing programs): Add sh-quote.
30446
30447 2005-01-19  Bruno Haible  <bruno@clisp.org>
30448
30449         * lib/sh-quote.h: New file, from GNU gettext.
30450         * lib/sh-quote.c: New file, from GNU gettext.
30451
30452 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
30453
30454         Merge from coreutils.
30455         * m4/ullong_max.m4: New file.
30456         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
30457         (gl_MACROS): Assume localeconv exists.
30458
30459 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
30460
30461         Merge changes from coreutils, as described below in several
30462         changelogs dated today.
30463
30464         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
30465         (O_DIRECTORY): Remove; not needed here, since "." must be
30466         a directory.  All uses removed.
30467         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
30468         universal on Suns, and we also need to test for IRIX.
30469         Revamp code to use 'if' rather than '#if'.
30470         Avoid unnecessary comparison of cwd->desc to 0.
30471
30472         * lib/utimens.c (futimens): Robustify the previous patch, by checking
30473         for known valid error numbers rather than observed invalid ones.
30474
30475 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
30476
30477         * modules/ullong_max: New file.
30478
30479         * modules/chdir-long, modules/openat: New files.
30480         * modules/save-cwd (Depends-on): Depend on chdir-long.
30481         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
30482
30483 2005-01-18  Jim Meyering  <jim@meyering.net>
30484
30485         Merge from coreutils.
30486         * m4/chdir-long.m4, m4/openat.m4: New files.
30487         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
30488         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
30489         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
30490         is sane and DOES follow symlinks.  Besides, testing 20 different
30491         systems found no broken chown implementations.
30492         Prompted by a change in rsync's copy of this macro.
30493         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
30494
30495         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
30496
30497         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
30498         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
30499         NULL-means-set-to-current-time semantics.
30500         Remove temporary file immediately, rather than waiting
30501         for configure's at-exit trap code to do it.
30502
30503 2005-01-18  Jim Meyering  <jim@meyering.net>
30504
30505         * lib/version-etc.c (version_etc_copyright): Update copyright date.
30506
30507         * lib/utimens.c (futimens): Account for the fact that futimes
30508         can also fail with errno == ENOSYS or errno == ENOENT.
30509         Patch from Dmitry V. Levin.
30510
30511         Change the name of the robust chdir function from chdir to chdir_long.
30512         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
30513         (restore_cwd): Use chdir_long, not chdir.
30514         * lib/chdir-long.c: Renamed from chdir.c.
30515         * lib/chdir-long.h: Renamed from chdir.h.
30516         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
30517         Hurd.
30518
30519 2005-01-18  Bruno Haible  <bruno@clisp.org>
30520
30521         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
30522         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
30523         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
30524         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
30525         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
30526         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
30527         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
30528         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
30529         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
30530         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
30531         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
30532         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
30533         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
30534         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
30535         Use an all-permissive copyright notice, recommended by RMS.
30536
30537 2005-01-18  Bob Proulx  <bob@proulx.com>
30538
30539         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
30540         simplify offsetof() macro construct to avoid compile failure with
30541         native HP-UX 11.0 ANSI C compiler.
30542
30543 2005-01-17  Bruno Haible  <bruno@clisp.org>
30544
30545         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
30546         redundant because stpncpy.m4 takes care of it.
30547
30548 2005-01-17  Bruno Haible  <bruno@clisp.org>
30549
30550         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
30551
30552 2005-01-17  Bruno Haible  <bruno@clisp.org>
30553
30554         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
30555         used.
30556
30557 2005-01-17  Bruno Haible  <bruno@clisp.org>
30558
30559         * lib/fwriteerror.h (fwriteerror): Change specification to include
30560         fclose.
30561         * lib/fwriteerror.c: Include <stdbool.h>.
30562         (fwriteerror): At the end, close the file stream. Record whether
30563         stdout was already closed.
30564
30565 2005-01-17  Bruno Haible  <bruno@clisp.org>
30566
30567         * lib/execute.c (environ): Declare if needed.
30568         * lib/pipe.c (environ): Likewise.
30569         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
30570
30571 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30572
30573         * modules/argp: Depend on vsnprintf
30574
30575 2005-01-10  Jim Meyering  <jim@meyering.net>
30576
30577         * modules/closeout (Depends-on): Add atexit.
30578
30579 2005-01-06  Bruno Haible  <bruno@clisp.org>
30580
30581         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
30582
30583 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
30584
30585         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
30586         definitions to be after all include files, to avoid collisions.
30587         Problem reported by Bob Proulx.
30588
30589 2005-01-04  Jim Meyering  <jim@meyering.net>
30590
30591         Changes imported from coreutils.
30592         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
30593         as the mkstemp template, use a temporary directory and an
30594         8.3-friendly template to avoid trouble on systems like DJGPP.
30595         Reported by Juan M. Guerrero via Stepan Kasal.
30596         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
30597         close. Remove the temporary directory right away, rather than waiting
30598         for configure's at-exit trap code to do it.
30599         Suggestion from Stepan Kasal.
30600
30601 2005-01-01  Simon Josefsson  <jas@extundo.com>
30602
30603         * gnulib-tool: Print #include directives when --import'ing.
30604
30605 2004-12-28  Simon Josefsson  <jas@extundo.com>
30606
30607         * tests/test-base64.c: Include required header files.  Remove
30608         unused variables.
30609
30610 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
30611
30612         * modules/error (Depends-on): Remove gettext.
30613
30614 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
30615
30616         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
30617         not needed.  This removes a dependency on the gettext module.
30618         [defined _LIBC]: Do not include <libintl.h>; not needed.
30619
30620 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
30621
30622         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
30623         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
30624
30625 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
30626
30627         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
30628         HAVE_DECL_STRTOLD.
30629
30630 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
30631
30632         * modules/getdate (Depends-on): Remove alloca-opt.
30633
30634 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
30635
30636         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
30637
30638 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
30639
30640         * lib/argp-parse.c: Include <stddef.h>.
30641         (alignof, alignto): New macros.
30642         (parser_init): Don't assume that void * is aligned sufficiently
30643         for struct option.
30644
30645         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
30646         need to extend the stack.
30647         (YYINITDEPTH): New macro, so that the initial stack isn't overly
30648         large.
30649
30650 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30651
30652         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
30653
30654 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
30655
30656         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
30657         (2004-10-24) change.  Apparently this was a false alarm.
30658
30659         * modules/getdate: Depend on alloca-opt, not alloca.
30660
30661 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
30662
30663         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
30664         Remove now-obsolete comment about AIX.
30665         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
30666         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
30667         (YYMAXDEPTH): New macro.
30668
30669 2004-12-18  Simon Josefsson  <jas@extundo.com>
30670
30671         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
30672
30673 2004-12-18  Bruno Haible  <bruno@clisp.org>
30674
30675         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
30676
30677 2004-12-18  Bruno Haible  <bruno@clisp.org>
30678
30679         * lib/fatal-signal.c (fatal_signals): Make non-const.
30680         (init_fatal_signals): New function.
30681         (uninstall_handlers, install_handlers): Ignore signals that were set to
30682         SIG_IGN.
30683         (at_fatal_signal): Call init_fatal_signals.
30684         (init_fatal_signal_set): Likewise. Ignore signals that were set to
30685         SIG_IGN.
30686         Reported by Paul Eggert.
30687
30688 2004-12-18  Bruno Haible  <bruno@clisp.org>
30689
30690         * doc/alloca.texi: New file.
30691         * doc/alloca-opt.texi: New file.
30692
30693 2004-12-17  Jim Meyering  <jim@meyering.net>
30694
30695         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
30696         Otherwise, install-sh could exit with improper exit status when
30697         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
30698
30699 2004-12-16  Simon Josefsson  <jas@extundo.com>
30700
30701         * tests/test-base64.c: Add license.
30702
30703 2004-12-15  Stepan Kasal  <address@hidden>
30704
30705         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
30706
30707 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
30708
30709         * modules/getcwd (Files): Add m4/d-ino.m4.
30710         Suggested by Mark D. Baushke.
30711
30712 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
30713
30714         * lib/getdate.y (textint): New member "negative".
30715         (time_zone_hhmm): New function.
30716         Expect 14 shift-reduce conflicts, not 13.
30717         (o_colon_minutes): New rule.
30718         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
30719         (yylex): Set the "negative" member of signed numbers.
30720
30721 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
30722
30723         * doc/getdate.texi (Time of day items, Time zone items):
30724         Describe new formats +00:00, UTC+00:00.
30725
30726 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
30727
30728         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
30729         spurious "-l"s.  Problem reported by Stepan Kasal.
30730
30731 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
30732
30733         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
30734         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
30735
30736 2004-12-04  Simon Josefsson  <jas@extundo.com>
30737
30738         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
30739         Vandoorselaere <yoann@prelude-ids.org>.
30740
30741 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
30742
30743         Changes imported from coreutils.
30744         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
30745         exist.
30746         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
30747
30748 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
30749
30750         Changes imported from coreutils.
30751         * lib/hard-locale.c: Assume <locale.h> exists.
30752         Include "strdup.h".
30753         (GLIBC_VERSION): New macro.
30754         (hard_locale): Assume setlocale exists.
30755         Rewrite to avoid #ifdef.
30756         Use strdup rather than malloc + strcpy.
30757         * lib/human.c: Assume <locale.h> exists.
30758         (human_readable): Assume localeconv exists.
30759
30760 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
30761
30762         * modules/hard-locale (Depends-on): Add strdup.
30763
30764 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
30765
30766         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
30767         convert T2, not T.  (Imported from libc.)
30768
30769 2004-11-30  Simon Josefsson  <jas@extundo.com>
30770
30771         * modules/restrict (License): Change to LGPL.
30772
30773 2004-11-30  Simon Josefsson  <jas@extundo.com>
30774
30775         * m4/restrict.m4: Add copyright and copying conditions.
30776
30777 2004-11-30  Simon Josefsson  <jas@extundo.com>
30778
30779         * m4/base64.m4: New file.
30780
30781 2004-11-30  Simon Josefsson  <jas@extundo.com>
30782
30783         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
30784         base64.
30785
30786         * tests/test-base64.c: New file.
30787
30788         * modules/base64: New file.
30789
30790 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
30791
30792         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
30793         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
30794
30795         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
30796
30797 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
30798
30799         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
30800         (__getcwd.c): Don't restore errno; glibc doesn't.
30801         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
30802         first, falling back to our code only if its results look suspicious.
30803         Ensure that the resulting buffer is only as large as necessary.
30804
30805         * lib/readutmp.c: Include readutmp.h first.
30806         Include <errno.h>, since readutmp.h no longer does that.
30807         * lib/readutmp.h: Don't include <errno.h>,
30808         <sys/param.h>, <time.h>; not needed to establish interface.
30809         (errno): Remove decl.
30810         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
30811         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
30812         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
30813
30814 2004-11-28  Simon Josefsson  <jas@extundo.com>
30815
30816         * lib/base64.h, base64.c: New file.
30817
30818 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
30819
30820         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
30821
30822 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
30823
30824         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
30825         (Depends-on): Remove pathmax, same.  Add mempcpy.
30826         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
30827         (Makefile.am): Append getcwd.h to lib_SOURCES.
30828         (Include): Add getcwd.h.
30829         (Maintainer): Change from Jim Meyering to "all, glibc",
30830         since getdate now uses intended-for-glibc code.
30831         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
30832         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
30833
30834 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
30835
30836         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
30837         HP's ANSI C compiler.
30838         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
30839         Declaring int functions causes warnings on some modern systems and
30840         shouldn't be needed to compile on ancient ones.
30841         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
30842         defined.
30843
30844         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
30845         with the following changes.
30846         (__set_errno): Parenthesize properly.
30847         Include <stdbool.h>.
30848         (MIN, MAX, MATCHING_INO): New macros.
30849         (__getcwd): Define with prototype, not K&R form.
30850         Use heuristics to allocate default buffer on stack if possible.
30851         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
30852         behavior, and to avoid the PATH_MAX limit when computing
30853         ../../../../...
30854         Use MATCHING_INO to compare inode number to file.
30855         Check for arithmetic overflow in size calculations.
30856         Fix bug in reallocation of dot array that caused getcwd to fail
30857         on directories nested deeper than 75.
30858         Be more careful about saving errno on error.
30859         Do not use realloc; use only free+malloc, as this is a bit
30860         more flexible and avoids a needless copy operation.
30861         Do not inspect st_dev and st_ino for symbolic links; POSIX
30862         doesn't specify the latter.
30863         Check for closedir errors.
30864         Avoid needless casts.
30865         Use "#ifdef weak_alias" around weak_alias, to be like other
30866         glibc code.
30867         The following changes to getcwd.c have effect only when used in
30868         gnulib; they have no effect inside glibc proper.
30869         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
30870         as alloca isn't used.
30871         (alloca, __alloca): Likewise.
30872         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
30873         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
30874         unconditionally, as gnulib assumes C89 or better.
30875         Do not include <sys/param.h>.
30876         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
30877         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
30878         better.
30879         (NULL) [!defined NULL]: Remove; we assume C89 or better.
30880         Include <dirent.h> in a way that is compatible with modern Autoconf.
30881         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
30882         New macros, if not already defined.
30883         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
30884         Use "_LIBC", not "defined _LIBC", for consistency.
30885         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
30886         a mempcpy module.
30887         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
30888         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
30889         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
30890         credit only to Jim Meyering and adjust the copyright dates.
30891         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
30892         <stdlib.h>, <unistd.h>, "pathmax.h".
30893         Instead, include "xgetcwd.h" (first) and "getcwd.h".
30894         (INITIAL_BUFFER_SIZE): Remove.
30895         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
30896
30897 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
30898
30899         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
30900         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
30901         Use the _ONCE methods, for efficiency.
30902         Check for fcntl.h.  In test program, include <errno.h>
30903         and <fcntl.h> if available.  Remove old K&R cruft from
30904         test program.  Check for common errors in GNU/Linux,
30905         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
30906         don't do AC_LIBOBJ, as that's getcwd.m4's job.
30907         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
30908         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
30909         name accordingly.
30910         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
30911         accommodate new getcwd.c.
30912         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
30913         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
30914         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
30915         that's all we need now.
30916
30917 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30918
30919         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
30920         argp-parse.c depends on getopt internals, that means we should
30921         always use our getopt, to be on the safe side.
30922         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
30923         order not to spoil the result of an eventual previous invocation
30924         of gl_GETOPT_SUBSTITUTE.
30925
30926 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
30927
30928         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
30929         redefinition warnings. To avoid them, include the defines
30930         in `#if !defined __need_getopt ... #endif'. The only place
30931         where __getopt_argv_const is used is in definitions
30932         of getopt_long and getopt_long_only below, which are as well
30933         protected by `#ifndef __need_getopt'.
30934         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
30935         __need_getopt after including <stdio.h> and <unistd.h> These
30936         headers might have defined it.
30937
30938 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
30939
30940         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
30941
30942 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
30943
30944         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
30945         (futimens): New function, which uses futimes if available.
30946         (futimens, utimens): Support timespec==NULL, with same semantics
30947         as utime and utimens.
30948         * lib/utimens.h (futimens): New decl.
30949
30950 2004-11-23  Jim Meyering  <jim@meyering.net>
30951
30952         * lib/getopt_.h: Remove trailing blanks.
30953
30954 2004-11-23  Jim Meyering  <jim@meyering.net>
30955
30956         * lib/__fpending.c: Add comment.
30957
30958 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
30959
30960         * modules/canonicalize (Depends-on): Add xreadlink.
30961         Problem reported by James Youngman.
30962
30963 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
30964
30965         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
30966         New macros.
30967         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
30968         optopt): Use them instead of invoking ## directly; otherwise, the
30969         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
30970
30971 2004-11-19  Bruno Haible  <bruno@clisp.org>
30972
30973         * lib/strtok_r.c: Move comments from here...
30974         * lib/strtok_r.h: ... to here.
30975
30976 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
30977
30978         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
30979         implementations that mishandle size_t overflow.
30980
30981 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
30982
30983         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
30984         might fail.  Problem reported by Yoann Vandoorselaere.
30985         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
30986         implementations that mishandle size_t overflow.
30987
30988 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30989
30990         * modules/canon-host (Depends-on): Add strdup.
30991
30992 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30993
30994         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
30995
30996 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
30997
30998         * lib/canon-host.c: Include "strdup.h".
30999         (canon_host): Use getaddrinfo if available, so that IPv6 works.
31000         Use strdup instead of malloc/strcpy to duplicate strings.
31001
31002         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
31003         (human_space_before_unit): New constant.
31004         * lib/human.c (human_readable): Support it.
31005
31006         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
31007         (xgetcwd): Set errno correctly when failing.
31008         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
31009         the failure is actually due to a PATH_MAX problem.
31010
31011         Further getopt changes to make it more likely that glibc will
31012         buy the changes back.
31013         * lib/getopt.c (POSIXLY_CORRECT): New constant.
31014         (getopt): Use it, so to preserve glibc semantic
31015         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
31016         when compiling for libc.
31017         * lib/getopt_.h (__getopt_argv_const): Bring it back.
31018         (getopt_long, getopt_long_only): Use it.
31019
31020         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
31021         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
31022         (getopt): Argv is now char * const *, as per standard.
31023         (_getopt_internal_r, _getopt_internal): Argv is now char **,
31024         not char *__getopt_argv_const *.
31025         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
31026         _getopt_long_only_r): Likewise.
31027         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
31028         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
31029         _getopt_long_r, _getopt_long_only_r): Likewise.
31030         * lib/getopt_.h (__getopt_argv_const): Remove.
31031         (getopt): Argv is now char * const *, as per standard.
31032
31033         * lib/getdate.y (tORDINAL): New token.
31034         (day, relunit): Allow it for relative times.
31035         (relative_time_table): Use tORDINAL for ordinals.
31036
31037 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
31038
31039         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
31040         Document that "second" isn't allowed as an ordinal number.
31041
31042 2004-11-16  Jim Meyering  <jim@meyering.net>
31043
31044         * modules/closeout (Depends-on): Add fpending.
31045
31046 2004-11-15  Jim Meyering  <jim@meyering.net>
31047
31048         * lib/closeout.c: Include "__fpending.h" once again.
31049         Include <stdbool.h>.
31050         (close_stdout): Don't fail just because stdout was closed initially,
31051         since some programs don't write to stdout in the normal course of
31052         operation (other than --version and --help), and we don't want this
31053         function to make e.g. `touch file >&-' fail.
31054         But do fail if it was closed and someone has tried to write to it.
31055         E.g., `printf foo >&-' must fail.
31056
31057 2004-11-13  Jim Meyering  <jim@meyering.net>
31058
31059         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
31060
31061 2004-11-12  Simon Josefsson  <jas@extundo.com>
31062
31063         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
31064         small doc fix is still pending.
31065
31066 2004-11-11  Simon Josefsson  <jas@extundo.com>
31067
31068         * modules/strtok_r: New file.
31069
31070         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
31071         strtok_r.
31072
31073 2004-11-11  Simon Josefsson  <jas@extundo.com>
31074
31075         * m4/strtok_r.m4: New file.
31076
31077         * m4/getopt.m4: Replace opterr.
31078
31079 2004-11-11  Simon Josefsson  <jas@extundo.com>
31080
31081         * lib/strtok_r.h, strtok_r.c: New file.
31082
31083 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
31084
31085         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
31086         of replacing opterr, getopt, etc.  This should handle the
31087         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
31088
31089 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
31090
31091         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
31092         we can stop lying to compilers about the constness of argv when we
31093         are compiled outside glibc.
31094         (getopt, getopt_long, getopt_long_only): Use it.
31095         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
31096         _getopt_internal, getopt): Likewise.
31097         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
31098         _getopt_long_only_r): Likewise.
31099         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
31100         _getopt_long_r, _getopt_long_only_r): Likewise.
31101
31102         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
31103         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
31104         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
31105         the other external symbols.
31106         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
31107         declaration, since the above renaming now works around collisions.
31108
31109 2004-11-11  Jim Meyering  <jim@meyering.net>
31110
31111         * lib/linebreak.c: Remove trailing blanks.
31112         * lib/alloca_.h: Likewise.
31113         * lib/acosl.c: Likewise.
31114         * lib/euidaccess.c: Likewise.
31115         * lib/allocsa.h: Likewise.
31116
31117 2004-11-10  Simon Josefsson  <jas@extundo.com>
31118
31119         * m4/getaddrinfo.m4: New file.
31120
31121 2004-11-10  Simon Josefsson  <jas@extundo.com>
31122
31123         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
31124
31125 2004-11-10  Simon Josefsson  <jas@extundo.com>
31126
31127         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
31128         getaddrinfo.
31129
31130         * modules/getaddrinfo: New file.
31131
31132 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
31133
31134         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
31135
31136 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
31137
31138         * lib/mktime.c (SHR): New macro, which is a portable
31139         substitute for >> that should work even on Crays.
31140         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
31141         Problem reported by Mark D. Baushke in
31142         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
31143         * lib/getdate.y (SHR): Likewise.
31144         (tm_diff): Use it.
31145         * lib/strftime.c (SHR): Likewise.
31146         (tm_diff): Use it.
31147         * lib/quotearg.c (struct quoting_options): Use unsigned int for
31148         quote_these_too, so that right shifts are well defined.  All uses
31149         changed.
31150
31151 2004-11-10  Jim Meyering  <jim@meyering.net>
31152
31153         Ensure that no close failure goes unreported.
31154         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
31155         return early when it seems there's nothing to flush.
31156         Don't include __fpending.h.
31157
31158 2004-11-10  Jim Meyering  <jim@meyering.net>
31159
31160         * modules/closeout (Depends-on): Remove fpending.
31161
31162 2004-11-10  Jim Meyering  <jim@meyering.net>
31163
31164         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
31165
31166 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
31167
31168         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
31169         gl_FUNC_STRFTIME.
31170         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
31171         and AC_REQUIRE when possible, to avoid duplicate checks.
31172         Check for <wchar.h>.
31173
31174 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
31175
31176         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
31177
31178 2004-11-09  Bruno Haible  <bruno@clisp.org>
31179
31180         * m4/sockpfaf.m4: New file.
31181
31182 2004-11-05  Bruno Haible  <bruno@clisp.org>
31183
31184         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
31185         Reported by Mark D. Baushke <mdb@cvshome.org>.
31186
31187 2004-11-04  Bruno Haible  <bruno@clisp.org>
31188
31189         2004-09-11  Bruno Haible  <bruno@clisp.org>
31190                 * allocsa.valgrind: New file.
31191         2004-02-06  Bruno Haible  <bruno@clisp.org>
31192                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
31193                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
31194                 Reported by Christopher Seip <chris.seip@hp.com>.
31195
31196 2004-11-04  Bruno Haible  <bruno@clisp.org>
31197
31198         * modules/allocsa (Files): Add lib/allocsa.valgrind.
31199         (Makefile.am): Distribute it.
31200
31201 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
31202
31203         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
31204         with errno == ERANGE if the buffer is too small.
31205         Problem reported by Mark D. Baushke.
31206
31207 2004-11-03  Albert Chin  <china@thewrittenword.com>
31208             Paul Eggert  <eggert@cs.ucla.edu>
31209
31210         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
31211         equivalent, substitute $ac_type for equivalent type rather than
31212         blindly using uint32_t *always* which won't work if uint32_t is not
31213         available.  Define _UINT32_T to work around typedef of uint32_t if
31214         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
31215         2.5.1.
31216
31217 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
31218
31219         * m4/jm-macros.m4: Sync from coreutils.
31220         (gl_MACROS): Check for mbrlen, for pathchk.
31221         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
31222
31223 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
31224
31225         * lib/xreadlink.c (MAXSIZE): New macro.
31226         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
31227         size does not exceed MAXSIZE.  Avoid cast.
31228         As suggested by Mark D. Baushke in
31229         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
31230         if readlink fails with buffer size just under MAXSIZE, try again
31231         with MAXSIZE.
31232
31233 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
31234
31235         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
31236
31237 2004-11-02  Derek R. Price  <derek@ximbiot.com>
31238         and  Paul Eggert  <eggert@cs.ucla.edu>
31239
31240         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
31241         (get_date): Overparenthesize to avoid GCC warning.
31242
31243 2004-11-02  Bruno Haible  <bruno@clisp.org>
31244
31245         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
31246         returns void.
31247
31248 2004-11-02  Bruno Haible  <bruno@clisp.org>
31249
31250         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
31251         function returns void.
31252
31253 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
31254
31255         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
31256         fflush_unlocked, flockfile, funlockfile, funlockfile,
31257         fputs_unlocked, putc_unlocked.
31258
31259 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
31260
31261         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
31262         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
31263         already declared.
31264
31265 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
31266
31267         * modules/getdate (Files): Add doc/getdate.texi.
31268         (Depends-on): Add setenv, xalloc.
31269
31270 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
31271
31272         * lib/getdate.y: Add support for TZ="foo" within a date string.
31273         Fix some bugs near time_t boundaries.  Reject dates with
31274         out-of-range components, e.g., "Sept 31".
31275         Include <stdlib.h>, "setenv.h", "xalloc.h".
31276         (ISDIGIT_LOCALE): Remove; unused.
31277         Note that the TZ and time functions used here are not reentrant.
31278         (mktime_ok, get_tz): New functions.
31279         (TZBUFSIZE): New constant.
31280         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
31281         This requires that we sometimes generate our own TZ="XXX..." setting.
31282
31283 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
31284
31285         * doc/getdate.texi: New file, from coreutils with modifications for
31286         the new TZ parsing.
31287
31288 2004-10-27  Derek R. Price  <derek@ximbiot.com>
31289
31290         * lib/mktime.c (not_equal_tm): Remove redundant check.
31291
31292 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
31293
31294         * modules/regex (lib_SOURCES): Add regex.c.
31295         Reported by James Youngman in
31296         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
31297
31298 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
31299
31300         * lib/getdate.y: Use Bison 1.875 features, and some minor
31301         code cleanups.  This change does not affect semantics.
31302         Don't include <stdlib.h>; no longer needed.
31303         Don't include unlocked-io.h; only the "#if TEST" code uses
31304         stdio, and performance isn't crucial there.
31305         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
31306         Bison 1.875 features as described below.
31307         All uses of "PC." replaced by "pc->".
31308         (YYSTYPE): Add a forward declaration.
31309         (yylex, yyerror): Use full prototypes in forward decls.
31310         Use "%pure-parser" rather than obsolescent "%pure_parser".
31311         Use %parse-param and %lex-param instead of obsolescent
31312         YYPARSE_PARAM and YYLEX_PARAM.
31313         (meridian_table, month_and_day_table, time_units_table,
31314         relative_time_table, time_zone_table, military_table,
31315         lookup_zone, lookup_word, get_date):
31316         Use NULL instead of 0 where appropriate.
31317         (to_hour): Avoid abort (), to avoid a dependency on
31318         stdlib.h.
31319         (yyerror, yylex): Now accepts parser_control * arg.
31320         (main) [TEST]: Use '\0' rather than 0 for char.
31321
31322 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
31323
31324         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
31325
31326 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
31327
31328         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
31329         It's now the caller's responsibility to handle the case where
31330         !HAVE_GETPAGESIZE && !defined getpagesize.
31331
31332         * lib/mktime.c (leapyear): Arg is long int, not int.
31333
31334 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
31335
31336         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
31337
31338 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
31339
31340         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
31341         missing.  Problem reported by James Youngman.
31342
31343 2004-10-16  Simon Josefsson  <jas@extundo.com>
31344
31345         * gnulib-tool: Fix comments.  Fix parse problem.
31346         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
31347
31348 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
31349
31350         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
31351         implementation of getopt_long.  Problem reported by Alexander Taler in:
31352         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
31353
31354 2004-10-15  Bruno Haible  <bruno@clisp.org>
31355
31356         * gnulib-tool: Untabify. Initialize supplied_libname.
31357         (func_usage): More homogenous output.
31358         (func_modules_transitive_closure, func_modules_to_filelist,
31359         func_emit_lib_Makefile_am): New functions.
31360         (func_import): New function, extracted from big case statement. Use
31361         func_get_license, func_modules_transitive_closure,
31362         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
31363         opt_lgpl. Don't use test -a, as it's not portable.
31364         (func_create_testdir): Use func_modules_transitive_closure,
31365         func_modules_to_filelist, func_emit_lib_Makefile_am.
31366
31367 2004-10-15  Bruno Haible  <bruno@clisp.org>
31368
31369         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
31370
31371 2004-10-15  Bruno Haible  <bruno@clisp.org>
31372
31373         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
31374         the portions belonging to each module.
31375         Suggested by Derek Robert Price <derek@ximbiot.com>.
31376
31377 2004-10-12  Simon Josefsson  <jas@extundo.com>
31378
31379         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
31380         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
31381         to real functions.
31382
31383 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
31384
31385         * modules/vsnprintf: New file.
31386
31387 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
31388
31389         * m4/vsnprintf.m4: New file.
31390
31391 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
31392
31393         * lib/vsnprintf.h: New file.
31394         * lib/vsnprintf.c: New file.
31395
31396 2004-10-11  Bruno Haible  <bruno@clisp.org>
31397
31398         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
31399         vsnprintf.
31400
31401 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
31402
31403         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
31404
31405 2004-10-07  Bruno Haible  <bruno@clisp.org>
31406
31407         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
31408         fits into the provided buffer.
31409
31410 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
31411
31412         * lib/diacrit.c, diacrit.h: Add GPL notice.
31413
31414         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
31415         notice.
31416         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
31417         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
31418         This avoids a potential constant-folding bug.
31419
31420 2004-10-05  Bruno Haible  <bruno@clisp.org>
31421
31422         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
31423         for the declaration of strsep.
31424
31425 2004-10-05  Bruno Haible  <bruno@clisp.org>
31426
31427         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
31428
31429 2004-10-04  Simon Josefsson  <jas@extundo.com>
31430
31431         * modules/memmem: New file.
31432         * tests/test-memmem.c: New file.
31433         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
31434
31435 2004-10-04  Simon Josefsson  <jas@extundo.com>
31436
31437         * m4/memmem.m4: New file.
31438
31439 2004-10-04  Simon Josefsson  <jas@extundo.com>
31440
31441         * lib/memmem.h: New file.
31442         * lib/memmem.c: New file, taken from glibc.
31443
31444 2004-10-04  Simon Josefsson  <jas@extundo.com>
31445
31446         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
31447         '#ifdef USE_UNLOCKED_IO'.
31448
31449 2004-10-04  Simon Josefsson  <jas@extundo.com>
31450
31451         * config/srclist.txt: Add memmem from glibc.
31452
31453 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
31454
31455         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
31456
31457         * modules/argmatch, modules/argp, modules/closeout, modules/error,
31458         modules/exclude, modules/getdate, modules/getline,
31459         modules/getndelim2, modules/getpass, modules/getpass-gnu,
31460         modules/getusershell, modules/linebuffer, modules/md5,
31461         modules/mountlist, modules/posixtm, modules/readtokens,
31462         modules/readutmp, modules/regex, modules/sha1,
31463         modules/version-etc, modules/yesno:
31464         Remove dependency on unlocked-io.
31465
31466 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
31467
31468         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
31469
31470         * m4/unlocked-io.m4: Add copyright notice.
31471         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
31472
31473 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
31474
31475         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
31476         * lib/xmalloc.c (xmemdup): Likewise.
31477         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
31478         XFREE): Remove these long-obsolescent macros.
31479         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
31480         * lib/xstrdup.c: Remove.
31481
31482         * lib/regex.c (re_comp): Cast gettext return value to char *,
31483         Problem reported by Martin Neitzel via Mark D. Baushke.
31484
31485 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
31486
31487         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
31488         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
31489         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
31490         regex.c, sha1.c, version-etc.c, yesno.c:
31491         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
31492         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
31493         the includer's responsibility.
31494
31495         Sync from coreutils.
31496
31497         * lib/modechange.c (mode_compile): Don't decrement a pointer that
31498         points to the start of a string, as the C Standard says the
31499         resulting behavior is undefined.
31500
31501         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
31502         simple -> simple_backups, numbered_existing ->
31503         numbered_existing_backups, numbered -> numbered_backups
31504         to avoid shadowing problems.  All uses changed.
31505         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
31506         * lib/backupfile.c (check_extension, numbered_backup):
31507         Rename locals to avoid shadowing 'basename'.
31508         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
31509         once.
31510
31511         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
31512         * lib/.cvsignore: Add getopt.h.
31513
31514 2004-10-04  Bruno Haible  <bruno@clisp.org>
31515
31516         * modules/README: New file.
31517         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
31518         not a module.
31519
31520 2004-10-02  Jim Meyering  <jim@meyering.net>
31521
31522         * lib/dirfd.h, getpagesize.h: Add copyright notice.
31523
31524 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
31525
31526         * modules/strsep: New file.
31527
31528 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
31529
31530         * m4/strsep.m4: New file.
31531
31532 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
31533
31534         * lib/strsep.h: New file.
31535         * lib/strsep.c: New file.
31536
31537 2004-10-01  Simon Josefsson  <jas@extundo.com>
31538
31539         * lib/snprintf.c (snprintf): Handle size==0.
31540
31541 2004-10-01  Simon Josefsson  <jas@extundo.com>
31542             Bruno Haible  <bruno@clisp.org>
31543
31544         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
31545         (snprintf): Declare 'args'.
31546
31547 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
31548
31549         * lib/snprintf.c: Remove comments as to why each header is needed.
31550
31551 2004-10-01  Bruno Haible  <bruno@clisp.org>
31552
31553         * MODULES.html.sh: Add strsep.
31554
31555 2004-09-30  Simon Josefsson  <jas@extundo.com>
31556
31557         * modules/snprintf: New file.
31558
31559 2004-09-30  Simon Josefsson  <jas@extundo.com>
31560
31561         * m4/snprintf.m4: New file.
31562
31563 2004-09-30  Simon Josefsson  <jas@extundo.com>
31564
31565         * lib/snprintf.h, lib/snprintf.c: New files.
31566
31567 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
31568
31569         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
31570         (hol_entry_help): Never translate an empty string.
31571         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
31572         * lib/argp.h (OPTION_NO_TRANS): New option.
31573
31574 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
31575
31576         * modules/argp (Maintainer): Replace Simon Josefsson
31577         by Sergey Poznyakoff.
31578
31579 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
31580
31581         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
31582         changes merged back into glibc.
31583
31584 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
31585
31586         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
31587
31588 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
31589
31590         * lib/xvasprintf.c: Include xalloc.h.
31591         (xvasprintf): Use xalloc_die, not xmalloc_die.
31592
31593 2004-09-29  Bruno Haible  <bruno@clisp.org>
31594
31595         * modules/alloca-opt: New file, derived from modules/alloca.
31596         * modules/allocsa: Depend on alloca-opt instead of alloca.
31597         * modules/setenv: Likewise.
31598         * modules/vasnprintf: Likewise.
31599         * MODULES.html.sh: Add alloca-opt.
31600
31601 2004-09-28  Simon Josefsson  <jas@extundo.com>
31602
31603         * gnulib-tool: New parameter --lgpl, to asseert that modules are
31604         LGPL, and to replace license template from GPL to LGPL.
31605
31606 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
31607
31608         * modules/dummy: Change license to LGPL.
31609
31610 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
31611
31612         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
31613
31614 2004-09-24  Simon Josefsson  <jas@extundo.com>
31615
31616         * modules/minmax (License): Change from GPL to LGPL.
31617
31618 2004-09-23  Simon Josefsson  <jas@extundo.com>
31619
31620         * gnulib-tool (--import): Typo.
31621
31622 2004-09-23  Simon Josefsson  <jas@extundo.com>
31623
31624         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
31625
31626 2004-09-22  Bruno Haible  <bruno@clisp.org>
31627
31628         * modules/*: Add 'License' field.
31629         * gnulib-tool: Accept --extract-license option.
31630         (func_get_license): New function.
31631
31632 2004-09-21  Bruno Haible  <bruno@clisp.org>
31633
31634         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
31635         Reported by Simon Josefsson.
31636
31637 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
31638
31639         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
31640         gl_AC_TYPE_LONG_LONG.
31641
31642 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
31643
31644         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
31645
31646 2004-09-18  Simon Josefsson  <jas@extundo.com>
31647         and  Paul Eggert  <eggert@cs.ucla.edu>
31648
31649         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
31650         calls with autoreconf.  Define GL_LIB.
31651
31652 2004-09-14  Karl Berry  <karl@gnu.org>
31653
31654         * config/srclist.txt: unsync setenv.c, sigh.
31655
31656 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
31657
31658         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
31659         Problem reported by Bruno Haible in:
31660         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
31661
31662 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
31663
31664         * config/srclist.txt: Comment out argp-pvh.c.
31665
31666 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
31667
31668         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
31669         in case some system header has #define'd it.  Problem reported by
31670         Soeren D. Schulze in
31671         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
31672
31673 2004-09-09  Karl Berry  <karl@gnu.org>
31674
31675         * regex.[ch]: delete from the root.  These were supposed to be
31676                 synced with emacs cvs, but this has not happened for about
31677                 a year, and anyway nothing else uses emacs regex.[ch].
31678                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
31679                 lib/regex[.ch] is untouched.
31680
31681 2004-09-09  Bruno Haible  <bruno@clisp.org>
31682
31683         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
31684
31685 2004-09-09  Bruno Haible  <bruno@clisp.org>
31686
31687         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
31688         modifications.
31689         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
31690
31691 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
31692
31693         * modules/xvasprintf: New file.
31694         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
31695
31696 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
31697
31698         * lib/xvasprintf.h: New file.
31699         * lib/xvasprintf.c: New file.
31700         * lib/xasprintf.c: New file.
31701
31702 2004-09-08  Bruno Haible  <bruno@clisp.org>
31703
31704         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
31705
31706 2004-09-08  Bruno Haible  <bruno@clisp.org>
31707
31708         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
31709         length is > INT_MAX.
31710         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
31711         more.
31712
31713 2004-09-08  Bruno Haible  <bruno@clisp.org>
31714
31715         * lib/stdint_.h: New file, taken from GNU clisp.
31716
31717 2004-09-08  Bruno Haible  <bruno@clisp.org>
31718             Oskar Liljeblad  <oskar@osk.mine.nu>
31719
31720         * modules/stdint: New file.
31721         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
31722
31723 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
31724
31725         Import from coreutils.
31726         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
31727         strings on unbounded length.  alloca's performance benefits aren't
31728         that important here.
31729         (V_STRDUP): Remove.
31730         (parse_with_separator): New function, with most of the internals
31731         of the old parse_user_spec.  Allow user to omit both user and group,
31732         for compatibility with FreeBSD.
31733         Clone only the user name, not the entire spec.
31734         Do not set *uid, *gid unless entirely successful.
31735         Avoid memory leak in some failing cases.
31736         Fix regression for USER.GROUP reported by Dmitry V. Levin in
31737         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
31738         (parse_user_spec): Rewrite to use parse_with_separator.
31739
31740 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
31741
31742         * modules/userspec: Don't depend on alloca.
31743
31744 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
31745
31746         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
31747
31748 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
31749
31750         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
31751         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
31752         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
31753
31754 2004-08-16  Simon Josefsson  <jas@extundo.com>
31755
31756         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
31757         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
31758         Add --dry-run for --import.
31759         Let user provided command line parameters override configure.ac
31760         settings.
31761
31762 2004-08-12  Simon Josefsson  <jas@extundo.com>
31763
31764         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
31765         as discussed with Paul Eggert in threads rooted at
31766         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
31767         and
31768         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
31769         Before, the test was empty, and relied on ELIDE_CODE in source
31770         code.)
31771         (gl_PREREQ_GETOPT): New macro.
31772         (gl_GETOPT): Use them.
31773
31774 2004-08-12  Simon Josefsson  <jas@extundo.com>
31775
31776         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
31777         * lib/getopt_.h: Renamed from getopt.h.
31778
31779 2004-08-12  Simon Josefsson  <jas@extundo.com>
31780
31781         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
31782         Change default library name from libfoo to libgnu.
31783         Now, if you have a configure.ac that says:
31784                 gl_SOURCE_BASE(gl)
31785                 gl_M4_BASE(gl/m4)
31786                 gl_MODULES(error getopt etcetera)
31787                 gl_INIT
31788         you can import all you need by running:
31789                 ../gnulib/gnulib-tool --import
31790
31791         * modules/getopt (Files): Rename getopt.h to getopt_.h.
31792         (Makefile.am): Rewrite, use logic from argz.
31793         (Include): Use <getopt.h> instead of "getopt.h".
31794
31795 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
31796
31797         * modules/argp (Files): Add m4/unlocked-io.m4.
31798         (Depends-on): Add extensions.
31799
31800 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
31801
31802         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
31803         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
31804         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
31805         Check for program_invocation_name, program_invocation_short_name,
31806         flockfile, funlockfile, features.h, _getopt_long_only_r.
31807
31808 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
31809
31810         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
31811         its complicated substitute.
31812         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
31813         and program_invocation_name.
31814         (__argp_basename) [!_LIBC]: Remove; the only use was
31815         replaced by its body.
31816         (__argp_short_program_name): Change condition from
31817         !defined __argp_short_program_name to
31818         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
31819         to match argp-namefrob.h.
31820         (__argp_failure): Don't assume strerror_r returns char *.
31821         * lib/argp-parse.c (N_): Define unconditionally.
31822         (argp_default_options): Fill out initializers with 0 to avoid
31823         gcc warnings.
31824
31825 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
31826
31827         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
31828         getopt1.c.
31829
31830 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
31831
31832         Merge from coreutils.
31833
31834         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
31835
31836         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
31837         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
31838
31839 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
31840
31841         Merge from coreutils.
31842
31843         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
31844         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
31845         for Reliant Unix 5.43.
31846
31847         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
31848         (union fooround): Use uintmax_t, not long int.
31849         The rest is a merge from libc:
31850         [defined _LIBC]: Include <shlib-compat.h>.
31851         (_obstack) [defined _LIBC]: Remove after 2.3.4.
31852
31853         * lib/settime.c (settime): Recode to avoid warning with
31854         Sun Forte C 6U2.
31855
31856         * lib/strverscmp.c: Convert to UTF-8.
31857
31858 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
31859
31860         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
31861         m4/uintmax_t.m4.
31862
31863 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
31864
31865         * modules/xalloc-die: New file.
31866         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
31867
31868         * modules/md5 (Files): Add m4/uint32_t.m4.
31869         * modules/sha1: Renamed from modules/sha.
31870         (Files):
31871         Rename lib/sha.h to lib/sha1.h.
31872         Rename lib/sha.c to lib/sha1.c.
31873         Rename m4/sha.m4 to m4/sha1.m4.
31874         (lib_SOURCES): Likewise.
31875         (configure.ac): Rename gl_SHA to gl_SHA1.
31876         (Include): sha.h -> sha1.h.
31877
31878 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
31879
31880         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
31881         * m4/sha1.m4: Renamed from sha.m4.
31882         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
31883
31884 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
31885
31886         * lib/obstack.h (obstack_empty_p):
31887         Don't assume that chunk->contents is suitably aligned.
31888         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
31889         Likewise. Problem reported by Benno in
31890         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
31891
31892         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
31893         readable.  This could be improved further but it'd take some work.
31894
31895 2004-08-08  Simon Josefsson  <jas@extundo.com>
31896
31897         * modules/xgethostname (Depends-on): Remove exit and error (not
31898         used).
31899
31900         * modules/getpass-gnu: Add getpass.h.
31901         (Depends-on): Add stdbool.
31902         * modules/getpass: Add getpass.h.
31903
31904 2004-08-08  Simon Josefsson  <jas@extundo.com>
31905
31906         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
31907         Check getpass declaration.
31908
31909 2004-08-08  Simon Josefsson  <jas@extundo.com>
31910
31911         * lib/xgethostname.c: Don't include error.h (not used).
31912
31913         * lib/getpass.h: Add.
31914         * lib/getpass.c: Include getpass.h first.
31915
31916 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
31917
31918         * lib/xalloc-die.c: New file.
31919         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
31920         All uses removed.
31921         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
31922         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
31923         xalloc-die.c.
31924         (_, N_, xalloc_die): Move to xalloc-die.c.
31925         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
31926         so that we needn't mess with xalloc_msg_memory_exhausted.
31927
31928         * lib/sha1.h: Renamed from sha.h.
31929         (SHA1_H): Renamed from _SHA_H.
31930         (sha1_ctx): Renamed from sha_ctx.
31931         (sha1_init_ctx): Renamed from sha_init_ctx.
31932         (sha1_process_block): Renamed from sha_process_block.
31933         (sha1_process_bytes): Renamed from sha_process_bytes.
31934         (sha1_finish_ctx): Renamed from sha_finish_ctx.
31935         (sha1_read_ctx): Renamed from sha_read_ctx.
31936         (sha1_stream): Renamed from sha_stream.
31937         (sha1_buffer): Renamed from sha_buffer.
31938         * lib/sha1.c: Likewise; renamed from sha.c.
31939         Do not include <sys/types.h>.
31940         Include <stddef.h> rather than <stdlib.h>.
31941
31942 2004-08-08  Bruno Haible  <bruno@clisp.org>
31943
31944         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
31945         FILESYSTEM_PREFIX_LEN.
31946         * lib/progreloc.c: Likewise.
31947         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
31948
31949 2004-08-06  Simon Josefsson  <jas@extundo.com>
31950
31951         * modules/progname (Depends-on): Don't depend on stdbool.
31952
31953 2004-08-06  Simon Josefsson  <jas@extundo.com>
31954
31955         * modules/getsubopt: New file.
31956         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
31957         getsubopt.
31958
31959 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
31960
31961         More merge from coreutils.
31962
31963         * m4/utimens.m4, m4/utimecmp.m4: New files.
31964         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
31965         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
31966         prereq.m4, sha.m4: Import changes from coreutils.
31967
31968 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
31969
31970         More merge from coreutils.
31971         * modules/raise, modules/readtokens0, modules/utimens:
31972         * modules/utimecmp, module/xnanosleep: New files.
31973         * modules/strftime: Add lib/strftime.h.
31974         Change include from <time.h> to "strftime.h".
31975         * modules/yesno: Add lib/yesno.h.
31976         * modules/backupfile: Remove lib/addext.c.
31977         * modules/euidaccess: Add stat-macros.h.
31978         * modules/canonicalize, modules/euidaccess,
31979         modules/filemode, modules/lchown, modules/makepath,
31980         modules/rmdir, modules/stat: Likewise.
31981
31982 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
31983
31984         Merge from tar.
31985         * lib/argp-help.c (make_hol, hol_append): Don't assume that
31986         SIZE_MAX is a valid preprocessor constant.
31987         (__argp_basename): Change from "#ifndef _LIBC"
31988         to "#ifndef __argp_short_program_name", so that
31989         we don't compile these functions for tar.
31990
31991         More merges from coreutils.
31992         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
31993         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
31994         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
31995         * lib/addext.c: Remove; no longer needed.
31996         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
31997         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
31998         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
31999         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
32000         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
32001         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
32002         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
32003         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
32004         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
32005         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
32006         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
32007         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
32008         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
32009         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
32010         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
32011         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
32012         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
32013         Import changes from coreutils.
32014
32015 2004-08-05  Simon Josefsson  <jas@extundo.com>
32016
32017         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
32018
32019 2004-08-05  Simon Josefsson  <jas@extundo.com>
32020
32021         * m4/getsubopt.m4: New file.
32022
32023 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
32024
32025         Merge from coreutils.
32026
32027         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
32028         * m4/getcwd-path-max.m4: New files.
32029
32030         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
32031         FILESYSTEM_PREFIX_LEN ->
32032         FILE_SYSTEM_PREFIX_LEN.
32033         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
32034         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
32035         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
32036         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
32037
32038         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
32039         prerequisite modules now handle the DOS stuff.
32040         Don't check for unistd.h.
32041
32042 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
32043
32044         Merge from coreutils.
32045
32046         * lib/.gdb-history: Remove; this doesn't belong here.
32047
32048         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
32049         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
32050         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
32051         * lib/getcwd.c: New files.
32052
32053         * lib/dirname.h: Include <stdbool.h>.
32054         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
32055         for consistency with POSIX terminology.  All uses changed.
32056         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
32057         (strip_trailing_slashes): Use bool for booleans.
32058         * lib/stripslash.c (strip_trailing_slashes): Likewise.
32059
32060         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
32061         sometimes returns a positive errno value even when it succeeds.
32062         (print_errno_message) [!LIBC]: Fall back on strerror if
32063         __strerror_r fails.
32064
32065         * lib/path-concat.c (mempcpy): Don't define if a system header defines
32066         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
32067         (longest_relative_suffix): New function.
32068         (path_concat): Use it.  Assume first argument is not NULL.
32069         Port to DOS.  Omit redundant separators.
32070         Report an error instead of returning NULL.
32071         Use mempcpy instead of memcpy.
32072         (xpath_concat): Remove: not declared or used.
32073
32074         * lib/same.h: Include <stdbool.h>
32075         (same_name): Return bool, not int.
32076         * lib/same.c (same_name): Likewise.
32077         (errno): Don't declare; we assume C89 or better now.
32078
32079         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
32080         if not already defined.
32081
32082         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
32083         * lib/dup-safer.c (errno): Likewise.
32084
32085 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
32086
32087         Merge from coreutils.
32088         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
32089         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
32090         * modules/path-concat: Don't depend on strdup.
32091
32092 2004-08-03  Simon Josefsson  <jas@extundo.com>
32093
32094         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
32095         * lib/progname.h: Don't include stdbool.h.
32096
32097 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
32098
32099         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
32100         * MODULES.html.sh (func_all_modules): Remove fatal.
32101
32102 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
32103
32104         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
32105
32106 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
32107
32108         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
32109         working.
32110
32111 2004-08-02  Simon Josefsson  <jas@extundo.com>
32112
32113         * lib/getsubopt.h: New file, with comments from Bruno Haible.
32114         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
32115         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
32116
32117 2004-08-01  Simon Josefsson  <jas@extundo.com>
32118
32119         * lib/xgetdomainname.c: Include stdlib.h, for free().
32120
32121 2004-07-19  Bruno Haible  <bruno@clisp.org>
32122
32123         * MODULES.html.sh (func_all_modules): Add dummy.
32124
32125 2004-07-16  Simon Josefsson  <jas@extundo.com>
32126
32127         * modules/dummy: New file.
32128
32129 2004-07-16  Simon Josefsson  <jas@extundo.com>
32130
32131         * lib/dummy.c: New file.
32132
32133 2004-07-16  Bruno Haible  <bruno@clisp.org>
32134
32135         * lib/backupfile.h: Add extern "C" for C++.
32136         * lib/closeout.h: Likewise.
32137         * lib/copy-file.h: Likewise.
32138         * lib/findprog.h: Likewise.
32139         * lib/full-write.h: Likewise.
32140         * lib/pathname.h: Likewise.
32141         * lib/progname.h: Likewise.
32142         * lib/stpcpy.h: Likewise.
32143         * lib/stpncpy.h: Likewise.
32144         * lib/strcase.h: Likewise.
32145         * lib/strstr.h: Likewise.
32146         * lib/xalloc.h: Likewise.
32147
32148         * lib/mbswidth.h: Add extern "C" for C++.
32149         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
32150
32151 2004-07-13  Robert Millan  <robertmh@gnu.org>
32152
32153         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
32154
32155 2004-07-09  Simon Josefsson  <jas@extundo.com>
32156
32157         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
32158         failed without this.)
32159
32160 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
32161
32162         * modules/chown (Files): Add lib/fchown-stub.c, since
32163         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
32164
32165 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
32166
32167         * lib/fchown-stub.c: New file.
32168
32169 2004-06-24  Jim Meyering  <jim@meyering.net>
32170
32171         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
32172
32173 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
32174
32175         * modules/argz: Omit "#include".
32176
32177         * MODULES.html.sh (func_all_modules): Add calloc, to match
32178         2004-06-01 addition of calloc module.
32179
32180 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
32181
32182         * m4/argz.m4: New file, which is autoupdated from libtool.
32183
32184 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
32185
32186         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
32187         libtool.
32188
32189 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
32190
32191         * config/srclist-update: Don't insist on "USA." before the
32192         close-comment, as libtool omits the period and puts the */ on a
32193         separate line.
32194         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
32195         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
32196
32197 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
32198
32199         * modules/argz: New file.
32200         * MODULES.html.sh (func_all_modules): Add argz.
32201
32202 2004-06-12  Jim Meyering  <jim@meyering.net>
32203         and  Paul Eggert  <eggert@cs.ucla.edu>
32204
32205         * modules/hash (Files): Add lib/xalloc.h.
32206         * modules/pipe (Depends-on): Add wait-process.
32207         * modules/stat (Depends-on): Add xalloc.
32208         * modules/userspec (Files): Add lib/userspec.h.
32209         * modules/xstrto
32210
32211         Upgrade from gettext-0.13.
32212         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
32213         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
32214         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
32215
32216 2004-06-10  Jim Meyering  <jim@meyering.net>
32217
32218         * lib/calloc.c: New file.
32219
32220 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
32221
32222         * lib/getdate.y (yylex): Allow space between sign and number.
32223         Problem reported by Dan Jacobson.
32224
32225 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
32226
32227         Merge from coreutils CVS.
32228
32229         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
32230         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
32231         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
32232         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
32233         xstrtol.m4: Fix copyright date and/or serial number.
32234
32235         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
32236         See if we need an fchown replacement.
32237         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
32238         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
32239         and use the replacement function if we detect either defect.
32240
32241         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
32242         gl_UTIMECMP.
32243
32244 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
32245         and  Jim Meyering  <jim@meyering.net>
32246
32247         Merge from coreutils CVS.
32248
32249         * lib/stat-macros.h: New file, with contents from file-type.h
32250         and coreutils' system.h.
32251         * lib/file-type.c: Include "stat-macros.h".
32252         * lib/file-type.h (file_type): Move all macro definitions to new file,
32253         stat-macros.h.
32254
32255         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
32256         Wrap old code with this conditional.
32257         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
32258         function that does not dereference symlinks.
32259         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
32260
32261         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
32262         dependency problems.
32263         (xreadlink): Accept new arg SIZE, for efficiency.
32264         All decls and uses changed.
32265         * lib/xreadlink.h: Include <stddef.h>, for size_t.
32266
32267         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
32268         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
32269
32270         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
32271         sysexits.h.
32272
32273 2004-06-01  Jim Meyering  <jim@meyering.net>
32274
32275         * m4/calloc.m4: New file.
32276
32277 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
32278
32279         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
32280         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
32281         Also, fix a typo in a diagnostic.
32282
32283 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
32284
32285         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
32286         or AC_FUNC_REALLOC.
32287
32288 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
32289
32290         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
32291         macros to be defined.
32292         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
32293         the allocator returns NULL because the requested size is zero.
32294
32295 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
32296
32297         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
32298         var.  Add comment explaining why libc still defines it.  This
32299         merges the following patch from glibc:
32300         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
32301
32302 2004-05-20  Andreas Schwab  <schwab@suse.de>
32303
32304         * m4/free.m4: Replace free if it not known to work, not the other
32305         way round.
32306
32307 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
32308
32309         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
32310         present in glibc since revision 1.1 of this file.
32311         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
32312         obstack_alignment_mask, obstack_alloc, obstack_base,
32313         obstack_blank, obstack_blank_fast, obstack_chunk_size,
32314         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
32315         obstack_grow0, obstack_init, obstack_int_grow,
32316         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
32317         obstack_next_free, obstack_object_size, obstack_ptr_grow,
32318         obstack_ptr_grow_fast, obstack_room): Remove declarations of
32319         nonexistent functions.
32320
32321 2004-05-18  Karl Berry  <karl@gnu.org>
32322
32323         * config/srclist.txt: break link for vasnprintf.c.
32324
32325 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
32326
32327         Port obstack to the AS/400, where pointers are 16 bytes wide and
32328         you cannot cast an integer to a valid pointer.  This patch is
32329         currently waiting to be integrated into glibc; see
32330         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
32331
32332         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
32333         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
32334         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
32335         (struct obstack): temp member is now a union of a pointer and
32336         an integer, instead of an integer.  All integer uses changed.
32337         This does not affect the physical layout of struct obstack,
32338         except on hosts (like the AS/400) where the size or alignment of
32339         void * is greater than that of ptrdiff_t.
32340         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
32341         __STDC__)]: Store temporary in pointer member of union, not
32342         integer member.
32343         * lib/obstack.c: Include <stddef.h>, for offsetof.
32344         (struct fooalign): Remove; it doesn't need a name.
32345         (union fooround): Change double to long double, and add void *.
32346         (DEFAULT_ALIGNMENT): Use offsetof to compute.
32347         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
32348         not a macro.  Hence the values are always int; so remove all
32349         casts-to-int in uses.
32350
32351 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
32352
32353         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
32354         we can get this patch merged into glibc.
32355
32356 2004-05-17  Derek R. Price  <derek@ximbiot.com>
32357             Paul Eggert  <eggert@cs.ucla.edu>
32358
32359         * m4/argp: Depend on alloca.
32360
32361 2004-05-17  Derek R. Price  <derek@ximbiot.com>
32362             Paul Eggert  <eggert@cs.ucla.edu>
32363
32364         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
32365         freecoding.
32366
32367 2004-05-17  Bruno Haible  <bruno@clisp.org>
32368
32369         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
32370         precision that consists of a '.' followed by an empty digit string.
32371         Patch by Tor Lillqvist <tml@iki.fi>.
32372
32373 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
32374
32375         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
32376         for backward compatibility with older code.  We need our own
32377         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
32378         it under some other name, and our alloca.h will define it.
32379
32380 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
32381             Derek Price  <derek@ximbiot.com>
32382
32383         * lib/alloca.c: Include <alloca.h>, to get our interface.
32384         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
32385         include <alloca.h> first.  Use C89 prototype for alloca; this
32386         requires including <stddef.h> for size_t.  Use extern "C" if C++.
32387         Use #elif for simplicity, since we can assume C89 now.
32388         Don't try to source the system alloca.h since it will not be found
32389         and to prevent recursively including its replacement.
32390         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
32391         * lib/regex.c: Likewise.
32392
32393 2004-05-16  Derek Price  <derek@ximbiot.com>
32394             Paul Eggert  <eggert@cs.ucla.edu>
32395
32396         getline cleanup.  This changes the getndelim2 API: both order of
32397         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
32398         no delimiter).
32399
32400         * lib/getline.c: Don't include stddef.h or stdio.h, since our
32401         interface does that.
32402         (getline): Always use getdelim, so that we don't have two
32403         copies of this code.
32404         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
32405         if available.
32406         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
32407         (GETNDELIM2_MAXIMUM): New macro.
32408         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
32409         instead of the old practice of delim2==0.  All callers changed.
32410         Return -1 on overflow, instead of returning junk.
32411         Do not set *linesize unless allocation succeeds.
32412         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
32413         that we include sys/types.h.
32414         * lib/getnline.h: Likewise.
32415         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
32416         (getndelim2): Reorder arguments.
32417         * lib/getnline.c (getnline, getndelim):
32418         Don't discard the NMAX argument.
32419         (getnline): Invoke getndelim, to avoid code duplication.
32420         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
32421         of (size_t) -1 by callers of the getnline family.
32422
32423 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
32424
32425         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
32426         Check for gettimeofday.
32427         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
32428         Check for settimeofday, stime.
32429
32430 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
32431
32432         * lib/nanosleep.c (suspended): Change its type from int to
32433         sig_atomic_t volatile.
32434         (first_call): Make it private to rpl_nanosleep, and have it
32435         be zero initially as that's a bit faster.
32436         (my_usleep): Round up fractional times instead of truncating them,
32437         as this is the usual meaning for 'sleep'.
32438
32439         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
32440         doesn't work.
32441         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
32442         (ENOSYS): Define if not defined.
32443         (settime): Fall back on stime if it exists and settimeofday fails.
32444         But don't bother with fallbacks if a method fails with errno == EPERM.
32445
32446 2004-05-11  Jim Meyering  <jim@meyering.net>
32447
32448         Prior to this change, the save_cwd caller required read access to the
32449         current directory on most systems (ones with the fchdir function).
32450
32451         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
32452         fails, try write-only, and finally, resort to using xgetcwd.
32453
32454 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
32455
32456         * lib/obstack.c, obstack.h: Import changes from libc.
32457
32458 2004-04-28  Bruno Haible  <bruno@clisp.org>
32459
32460         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
32461         also implicitly appends .exe to executables.
32462         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
32463         accepts Windows pathnames.
32464         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
32465         Treat Cygwin like Windows, since it now accepts Windows pathnames.
32466         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
32467         Treat Cygwin like Windows, since it now accepts Windows pathnames.
32468         Reported by Derek Robert Price <derek@ximbiot.com>.
32469
32470 2004-04-21  Karl Berry  <karl@gnu.org>
32471
32472         * config/srclist.txt (localcharset.c): break sync.
32473
32474 2004-04-20  Paul Eggert  <eggert@twinsun.com>
32475
32476         * m4/host-os.m4: Add a copyright notice.
32477
32478 2004-04-20  Jim Meyering  <jim@meyering.net>
32479
32480         Change UTILS_ to gl_ in AC_DEFINE'd names.
32481         Change utils_- and jm_-prefixed variables, too.
32482         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
32483         UTILS_FUNC_MKDIR_TRAILING_SLASH.
32484         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
32485
32486         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
32487         Don't emit trailing blanks.
32488         Also rename jm_-prefixed variables to have gl_ prefix.
32489
32490         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
32491         Also rename jm_-prefixed variables to have gl_ prefix.
32492
32493         * m4/jm-macros.m4: Reflect the renamings.
32494         * m4/prereq.m4: Likewise.
32495
32496 2004-04-20  Jim Meyering  <jim@meyering.net>
32497
32498         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
32499         memory.
32500
32501 2004-04-20  Jim Meyering  <jim@meyering.net>
32502             Bruno Haible  <bruno@clisp.org>
32503
32504         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
32505         memory when realloc fails.
32506
32507 2004-04-19  Jim Meyering  <jim@meyering.net>
32508
32509         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
32510         now that readutmp.c may call `free (0)'.
32511
32512 2004-04-19  Bruno Haible  <bruno@clisp.org>
32513
32514         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
32515         * m4/inttypes_h.m4: Likewise.
32516         * m4/stdint_h.m4: Likewise.
32517         * m4/intmax_t.m4: Likewise.
32518         * m4/uintmax_t.m4: Likewise.
32519
32520 2004-04-18  Jim Meyering  <jim@meyering.net>
32521
32522         * m4/prereq.m4: Don't forbid jm_ prefix.
32523
32524         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
32525         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
32526         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
32527         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
32528         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
32529         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
32530         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
32531         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
32532         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
32533         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
32534         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
32535         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
32536         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
32537         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
32538         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
32539         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
32540         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
32541         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
32542         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
32543
32544 2004-04-18  Jim Meyering  <jim@meyering.net>
32545
32546         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
32547         failure, don't leak memory and do call END_UTMP_ENT.
32548
32549 2004-04-16  Jim Meyering  <jim@meyering.net>
32550
32551         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
32552         coreutils' stat program.
32553         (gl_PREREQ): Don't require jm_PREREQ_STAT.
32554
32555 2004-04-11  Paul Eggert  <eggert@twinsun.com>
32556
32557         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
32558         C89.
32559         (CHAR_BIT): Remove, since we assume C89.
32560         Include <stdint.h> if available, as per current Autoconf CVS advice.
32561
32562 2004-03-31  Jim Meyering  <jim@meyering.net>
32563
32564         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
32565         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
32566         * m4/xalloc.m4: Likewise.
32567
32568 2004-03-30  Paul Eggert  <eggert@twinsun.com>
32569
32570         Merge from coreutils.
32571
32572         * m4/inttostr.m4: New file.
32573         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
32574         Require AM_STDBOOL_H and gl_TIMESPEC instead.
32575         Require gl_CLOCK_TIME.
32576         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
32577
32578 2004-03-30  Paul Eggert  <eggert@twinsun.com>
32579
32580         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
32581         not bool, to be more consistent with Unix conventions.
32582         Suggested by Bruno Haible.
32583
32584         Merge from coreutils.
32585
32586         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
32587         * lib/umaxtostr.c: New files.
32588
32589         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
32590         the usual <time.h> dance.
32591         (get_date): Change signature to support fractional time stamps.
32592         All callers changed.
32593         * lib/getdate.y: Include "getdate.h" first, as we can now
32594         assume C89 and don't need to worry about 'const'.
32595         Similarly, include "unlocked-io.h" near start, not in middle.
32596         Include <limits.h>.
32597         (textint.value): Use long int rather than int.
32598         (textint.digits): Use size_t rather than int.
32599         (BILLION, LOG10_BILLION): New constants.
32600         (parser_control): New member rel_ns.  Members day_ordinal,
32601         time_zone, month, day, hour, minutes, rel_year, rel_month,
32602         rel_day, rel_hour, rel_minutes, rel_seconds
32603         are now long int, not int.  Member seconds is now struct timespec,
32604         not int.  New member timespec_seen.  Members dates_seen, days_seen,
32605         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
32606         not int.
32607         (%union.intval): Now long int, not int.
32608         New member timespec.
32609         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
32610         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
32611         (spec): Now is a timespec or an item list.
32612         (timespec, items): New nonterminals.
32613         (time, rel, relunit, number, get_date):
32614         Add support for fractional seconds.
32615         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
32616         (gmtime, localtime, mktime): Remove decls; not needed with C89.
32617         (to_hour): First arg is now long int, not int.
32618         (to_year): Returns long int, not int.
32619         Don't treat year -70 like 70.
32620         (tm_diff): Returns long int, not int.
32621         (lookup_word): Use bool instead of int when appropriate.
32622         (yylex): Use size_t for count, not int.
32623         Detect overflow when parsing large integer constants.
32624         Add support for fractions.
32625         (get_date): Make pointers 'const' if possible.
32626         Use more-portable code to detect integer overflow.
32627         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
32628         Don't use ctime; it's not reliable if the year has >4 digits.
32629
32630         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
32631         This is for compatibility with BSD.
32632
32633         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
32634         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
32635         From coreutils' system.h.
32636
32637         * lib/userspec.c: Don't include "posixver.h".
32638         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
32639         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
32640         compatible extension.  Simplify code by removing a boolean int
32641         that was always nonzero if a string was nonnull.
32642
32643 2004-03-30  Jim Meyering  <jim@meyering.net>
32644
32645         Merge from coreutils.
32646
32647         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
32648         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
32649         on some systems one must include <grp.h> before it.
32650         Reported by Christian Krackowizer.
32651
32652 2004-03-30  Jim Meyering  <jim@meyering.net>
32653
32654         Merge from coreutils.
32655
32656         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
32657
32658         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
32659         an empty input stream.
32660
32661         * lib/readtokens.c: Include <stdbool.h>.
32662         (readtoken): Use `size_t' rather than int/long.
32663         All callers adjusted.
32664         Use `bool' rather than `int' where appropriate.
32665         Use memset rather than an explicit loop.
32666         Use x2nrealloc rather than xrealloc.
32667         Allow the use of `\0' as a delimiter.
32668         (readtokens): Likewise.
32669         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
32670
32671 2004-03-30  Jim Meyering  <jim@meyering.net>
32672
32673         * m4/realloc.m4: Remove file, since now it does no more than
32674         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
32675         the `configure.ac' section of module/realloc.
32676         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
32677
32678 2004-03-30  Bruno Haible  <bruno@clisp.org>
32679
32680         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
32681         nonnull.
32682
32683 2004-03-29  Paul Eggert  <eggert@twinsun.com>
32684
32685         Merge changes to getloadavg.c from coreutils and Emacs.
32686
32687         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
32688         Define to an expression, not to the empty string.
32689         Include cloexec.h and xalloc.h.
32690         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
32691         Use set_cloexec_flag rather than rolling our own.
32692         * lib/cloexec.c, lib/cloexec.h: New files.
32693
32694 2004-03-29  Paul Eggert  <eggert@twinsun.com>
32695
32696         * m4/cloexec.m4: New file.
32697
32698 2004-03-18  Paul Eggert  <eggert@twinsun.com>
32699
32700         * lib/getopt.h: Sync with libc CVS.
32701
32702 2004-03-18  Paul Eggert  <eggert@twinsun.com>
32703             Bruno Haible  <bruno@clisp.org>
32704
32705         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
32706         mbswidth.
32707
32708 2004-03-18  Paul Eggert  <eggert@twinsun.com>
32709             Bruno Haible  <bruno@clisp.org>
32710
32711         * lib/mbswidth.h: Include <wchar.h> only if
32712         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
32713         <wchar.h>.
32714         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
32715
32716 2004-03-09  Paul Eggert  <eggert@twinsun.com>
32717
32718         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
32719         Sync with libc CVS.
32720         * lib/getopt_int.h: New file, also synced from libc.
32721
32722 2004-03-09  Paul Eggert  <eggert@twinsun.com>
32723
32724         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
32725         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
32726         Bring back getopt.c, getopt.h, getopt1.c.
32727
32728 2004-03-07  Paul Eggert  <eggert@twinsun.com>
32729
32730         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
32731         All uses changed.  Check for sa_sigaction member; this fixes
32732         a bug first reported by Jason Andrade in
32733         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
32734
32735 2004-03-07  Paul Eggert  <eggert@twinsun.com>
32736
32737         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
32738         '#if' expressions.  Unlike the code it replaces, it does not
32739         depend on (defined _SC_PAGESIZE).  However, it does depend on
32740         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
32741         first reported by Jason Andrade in
32742         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
32743
32744 2004-02-25  Simon Josefsson  <jas@extundo.com>
32745
32746         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
32747
32748 2004-02-25  Simon Josefsson  <jas@extundo.com>
32749
32750         * lib/strdup.h: New file.
32751         * lib/strdup.c: Include it.
32752         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
32753         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
32754
32755 2004-02-23  Karl Berry  <karl@gnu.org>
32756
32757         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
32758         (from fencepost.gnu.org:/gd/gnuorg).
32759
32760 2004-02-23  Karl Berry  <karl@gnu.org>
32761
32762         * config/srclistvars.sh (GNUORG) [karl]: redefine.
32763         * config/srclist.txt: add maintain/standards documents.
32764
32765 2004-02-18  Bruno Haible  <bruno@clisp.org>
32766
32767         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
32768         Reported by Derek Robert Price <derek@ximbiot.com>.
32769
32770 2004-02-16  Karl Berry  <karl@gnu.org>
32771
32772         * config/mkinstalldirs, install-sh: update from automake.
32773
32774 2004-02-06  Karl Berry  <karl@gnu.org>
32775
32776         * m4/po.m4: update from gettext 0.14.1.
32777
32778 2004-02-06  Karl Berry  <karl@gnu.org>
32779
32780         * lib/config.charset: update from gettext 0.14.1.
32781
32782 2004-02-05  Paul Eggert  <eggert@twinsun.com>
32783
32784         Add comments and code, prompted by suggestions from Bruno Haible
32785         for sh-quote.
32786         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
32787         describing the enum quoting_style values.
32788         * lib/quotearg.c (quotearg_alloc): New function.
32789         (quotearg_buffer_restyled): Treat lone { and } as special.
32790         Treat = as special.  Work around bug with older shells
32791         that "see" a '\' that is really the 2nd byte of a multibyte char.
32792         Quote empty string with shell_quoting_style.
32793
32794 2004-02-03  Bruno Haible  <bruno@clisp.org>
32795
32796         * m4/pipe.m4: New file, from GNU gettext.
32797
32798 2004-02-03  Bruno Haible  <bruno@clisp.org>
32799
32800         * lib/pipe.h: New file, from GNU gettext.
32801         * lib/pipe.c: New file, from GNU gettext.
32802
32803 2004-01-27  Bruno Haible  <bruno@clisp.org>
32804
32805         * m4/execute.m4: New file, from GNU gettext.
32806
32807 2004-01-27  Bruno Haible  <bruno@clisp.org>
32808
32809         * lib/execute.h: New file, from GNU gettext.
32810         * lib/execute.c: New file, from GNU gettext.
32811         * lib/w32spawn.h: New file, from GNU gettext.
32812
32813 2004-01-24  Paul Eggert  <eggert@twinsun.com>
32814
32815         Merge from diffutils.
32816
32817         * lib/file-type.c (file_type): Add typed memory objects.
32818         * lib/file-type.h (S_TYPEISTMO): New macro.
32819
32820         * lib/c-stack.h (c_stack_action): Remove argv argument.
32821         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
32822         (die): Don't calculate message unless segv_action returns.
32823         (get_stack_location, min_address_from_argv, max_address_from_argv,
32824         volatile stack_base, volatile_stack_size): Remove.
32825         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
32826         that every segmentation violation is a stack overflow.  (Ouch!)
32827         See Debian bug 136249 (still outstanding) for more info about why
32828         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
32829
32830 2004-01-24  Paul Eggert  <eggert@twinsun.com>
32831
32832         Exit-status fix from coreutils.
32833
32834         Use exit_failure consistently in place of EXIT_FAILURE,
32835         so that program exit statuses are consistent on failure.
32836
32837         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
32838         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
32839         * lib/argmatch.h: Comment fix to match the above.
32840         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
32841         Now a macro referring to exit_failure, instead of a separate
32842         variable.  Include "exitfail.h" to get it.
32843         * lib/xstrtol.h: Include "exitfail.h".
32844         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
32845
32846         * lib/long-options.c (parse_long_options): Use prototype
32847         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
32848         for clarity.
32849
32850 2004-01-21  Jim Meyering  <jim@meyering.net>
32851
32852         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
32853         so as not to conflict with a different-sized __mktime_internal
32854         function in GNU libc.
32855         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
32856         Problem building statically-linked `ls' reported by Michael Brunnbauer.
32857
32858 2004-01-20  Karl Berry  <karl@gnu.org>
32859
32860         * config/config.guess: update from config.
32861
32862         * config/srclistvars.sh: GNUWWWLICENSES for karl.
32863
32864 2004-01-20  Bruno Haible  <bruno@clisp.org>
32865
32866         Safer stack allocation.
32867         * lib/setenv.c: Include allocsa.h.
32868         (alloca): Remove fallback definition.
32869         (freea): Remove macro.
32870         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
32871         instead of freea.
32872
32873 2004-01-20  Bruno Haible  <bruno@clisp.org>
32874
32875         * m4/eealloc.m4: New file, from GNU gettext.
32876
32877 2004-01-20  Bruno Haible  <bruno@clisp.org>
32878
32879         * m4/allocsa.m4: New file, from GNU gettext.
32880
32881 2004-01-20  Bruno Haible  <bruno@clisp.org>
32882
32883         * lib/xallocsa.h: New file, from GNU gettext.
32884         * lib/xallocsa.c: New file, from GNU gettext.
32885
32886 2004-01-20  Bruno Haible  <bruno@clisp.org>
32887
32888         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
32889
32890 2004-01-20  Bruno Haible  <bruno@clisp.org>
32891
32892         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
32893         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
32894         specially.
32895
32896 2004-01-20  Bruno Haible  <bruno@clisp.org>
32897
32898         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
32899         patch.
32900
32901 2004-01-20  Bruno Haible  <bruno@clisp.org>
32902
32903         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
32904
32905 2004-01-20  Bruno Haible  <bruno@clisp.org>
32906
32907         * lib/eealloc.h: New file.
32908
32909 2004-01-20  Bruno Haible  <bruno@clisp.org>
32910
32911         * lib/binary-io.h: Avoid warnings on Cygwin.
32912
32913 2004-01-20  Bruno Haible  <bruno@clisp.org>
32914
32915         * lib/allocsa.h: New file, from GNU gettext.
32916         * lib/allocsa.c: New file, from GNU gettext.
32917
32918 2004-01-18  Karl Berry  <karl@gnu.org>
32919
32920         * doc/gpl.texi, doc/lgpl.texi: new files.
32921
32922 2004-01-18  Karl Berry  <karl@gnu.org>
32923
32924         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
32925         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
32926
32927 2004-01-15  Paul Eggert  <eggert@twinsun.com>
32928
32929         Merge from coreutils.
32930
32931         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
32932         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
32933         (gl_DEFAULT_POSIX2_VERSION): Move
32934         the documentation from 'configure' into 'config.hin',
32935         so that 'configure --help' isn't burdened by it and
32936         we don't have to worry about its formatting there.
32937         Reword the documentation so that it's more succinct
32938         and can be run together into a single paragraph.
32939         * m4/same.m4 (gl_SAME): Check for pathconf.
32940
32941 2004-01-15  Paul Eggert  <eggert@twinsun.com>
32942
32943         Merge from coreutils.
32944
32945         * lib/posixver.c: Include posixver.h.
32946
32947         * lib/same.c: Include <stdbool.h>, <limits.h>.
32948         (_POSIX_NAME_MAX): Define if not defined.
32949         (MIN): New macro.
32950         (same_name): If file names are silently truncated, report
32951         that the file names are the same if they are the same after
32952         the silent truncation.
32953
32954         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
32955         conversion function.
32956         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
32957         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
32958         longer needed.
32959
32960 2004-01-15  Jim Meyering  <jim@meyering.net>
32961
32962         Merge from coreutils.
32963
32964         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
32965         if no library is required.
32966         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
32967         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
32968         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
32969         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
32970         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
32971         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
32972         value, $ac_cv_search_crypt, if it's "none required".
32973         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
32974         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
32975         not gl_FUNC_GETLOADAVG.
32976         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
32977         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
32978
32979 2004-01-15  Jim Meyering  <jim@meyering.net>
32980
32981         Merge from coreutils.
32982
32983         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
32984         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
32985         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
32986
32987         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
32988         optional configure-time default.
32989
32990         * lib/version-etc.c (version_etc_copyright): Update copyright date.
32991
32992         * lib/xreadlink.c (xreadlink): Correct outdated comment.
32993
32994 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
32995
32996         Merge from coreutils.
32997
32998         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
32999         value, $ac_cv_search_nanosleep, if it's "none required".
33000
33001 2004-01-14  Paul Eggert  <eggert@twinsun.com>
33002
33003         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
33004         with like-named macro in fnmatch.c.
33005         (EXT): Use an internal constant instead.
33006
33007         Merge fnmatch patches from glibc.
33008         * lib/fnmatch.c (mbsinit): Remove define.
33009         Add libc_hidden_ver (__fnmatch, fnmatch).
33010         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
33011         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
33012
33013 2004-01-14  Karl Berry  <karl@gnu.org>
33014
33015         * config/install-sh: update from automake.
33016
33017 2004-01-13  Karl Berry  <karl@gnu.org>
33018
33019         * config/install-sh: update from automake.
33020
33021 2004-01-09  Karl Berry  <karl@gnu.org>
33022
33023         * config/install-sh: update from automake.
33024
33025 2004-01-05  Karl Berry  <karl@gnu.org>
33026
33027         * config/config.{sub,guess}: update from config.
33028
33029 2003-12-31  Karl Berry  <karl@gnu.org>
33030
33031         * config/depcomp: update from automake.
33032
33033 2003-12-14  Karl Berry  <karl@gnu.org>
33034
33035         * lib/config.charset: update from gettext-runtime.
33036
33037 2003-12-03  Paul Eggert  <eggert@twinsun.com>
33038
33039         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
33040         Bug reported by Alfred M. Szmidt.
33041
33042 2003-12-03  Bruno Haible  <bruno@clisp.org>
33043
33044         * m4/gettext.m4: Upgrade from gettext-0.13.
33045         * m4/po.m4: Upgrade from gettext-0.13.
33046         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
33047         * m4/intmax.m4: New file, from gettext-0.13.
33048         * m4/printf-posix.m4: New file, from gettext-0.13.
33049
33050 2003-11-29  Karl Berry  <karl@gnu.org>
33051
33052         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
33053
33054 2003-11-25  Paul Eggert  <eggert@twinsun.com>
33055             Bruno Haible  <bruno@clisp.org>
33056
33057         * lib/printf-parse.h: Don't include sys/types.h.
33058         (ARG_NONE): New macro.
33059         (char_directive): Change type of *arg_index fields to size_t.
33060         * lib/printf-parse.c: Don't include sys/types.h.
33061         (SSIZE_MAX): Remove macro.
33062         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
33063         Remove unnecessary overflow check.
33064         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
33065         fields.
33066
33067 2003-11-25  Bruno Haible  <bruno@clisp.org>
33068
33069         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
33070
33071 2003-11-25  Bruno Haible  <bruno@clisp.org>
33072
33073         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
33074         gt_TYPE_SSIZE_T.
33075
33076 2003-11-24  Paul Eggert  <eggert@twinsun.com>
33077
33078         * modules/alloca: Remove dependency on xalloc.
33079
33080 2003-11-24  Paul Eggert  <eggert@twinsun.com>
33081
33082         * lib/alloca.c: Remove dependency on xalloc module.
33083         (xalloc_die): Remove.
33084         (memory_full) [!defined emacs]: New macro.
33085         [!defined emacs]: Don't include xalloc.h.
33086         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
33087         address arithmetic overflows.  Change datatypes a bit to avoid
33088         unnecessary casts.
33089
33090 2003-11-22  Jim Meyering  <jim@meyering.net>
33091
33092         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
33093         s/size/size_t/.
33094
33095 2003-11-21  Karl Berry  <karl@gnu.org>
33096
33097         * config/config.{sub,guess}: update from config.
33098
33099 2003-11-18  Karl Berry  <karl@gnu.org>
33100
33101         * config/config.{sub,guess}: update from config.
33102
33103         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
33104
33105 2003-11-17  Paul Eggert  <eggert@twinsun.com>
33106
33107         * README: Mention that S+T cannot overflow if S is the size of
33108         an existing object and T is sufficiently small.
33109
33110 2003-11-17  Jim Meyering  <jim@meyering.net>
33111
33112         On systems without utime and without a utimes function capable of
33113         dealing with a NULL struct utimbuf* argument, this utime replacement
33114         could -- in unusual circumstances -- leak a file descriptor.
33115         * lib/utime.c: Include <unistd.h> and <errno.h>.
33116         (utime_null): Be sure to close `fd' and to preserve errno.
33117         Reported by Geoff Collyer via Arnold Robbins.
33118
33119 2003-11-17  Bruno Haible  <bruno@clisp.org>
33120
33121         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
33122         (Depends-on): Add xsize.
33123
33124 2003-11-17  Bruno Haible  <bruno@clisp.org>
33125
33126         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
33127
33128 2003-11-17  Bruno Haible  <bruno@clisp.org>
33129
33130         * lib/vasnprintf.c (alloca): Remove fallback definition.
33131         (freea): Remove definition.
33132         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
33133         Reported by Paul Eggert.
33134
33135 2003-11-16  Paul Eggert  <eggert@twinsun.com>
33136             Bruno Haible  <bruno@clisp.org>
33137
33138         Protect against address arithmetic overflow.
33139         * lib/printf-args.h: Include stddef.h.
33140         (arguments): Change type of field 'count' to size_t.
33141         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
33142         'unsigned int' where appropriate.
33143         * lib/printf-parse.h: Include sys/types.h.
33144         (char_directive): Change type of *arg_index fields to ssize_t.
33145         (char_directives): Change type of fields 'count', max_*_length to
33146         size_t.
33147         * lib/printf-parse.c: Include sys/types.h and xsize.h.
33148         (SSIZE_MAX): Define fallback value.
33149         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
33150         instead of 'int' where appropriate. Check a_allocated, d_allocated
33151         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
33152         * lib/vasnprintf.c: Include xsize.h.
33153         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
33154         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
33155         overflow. Avoid wraparound when converting a width or precision from
33156         decimal to binary.
33157
33158 2003-11-16  Bruno Haible  <bruno@clisp.org>
33159
33160         Update from GNU gettext.
33161         * lib/printf-parse.c: Generalize to it can be compiled for wide
33162         strings.
33163         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
33164         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
33165         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
33166         SNPRINTF): New macros.
33167         Don't include <alloca.h> if the file is used inside libintl.
33168         (local_wcslen): New function, for Solaris 2.5.1.
33169         (VASNPRINTF): Use it instead of wcslen.
33170
33171 2003-11-16  Bruno Haible  <bruno@clisp.org>
33172
33173         * lib/xsize.h (xmax): New function.
33174         (xsum, xsum3, xsum4): Declare as "pure" functions.
33175
33176 2003-11-12  Paul Eggert  <eggert@twinsun.com>
33177
33178         * modules/xalloc (Files): Undo latest change, since xalloc.h
33179         no longer needs SIZE_MAX or PTRDIFF_MAX.
33180
33181 2003-11-12  Paul Eggert  <eggert@twinsun.com>
33182
33183         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
33184         gl_PTRDIFF_MAX.
33185
33186 2003-11-12  Paul Eggert  <eggert@twinsun.com>
33187
33188         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
33189         "return", to pacify some unknown compiler.  Problem reported
33190         by Joerg Schilling.
33191
33192 2003-11-12  Paul Eggert  <eggert@twinsun.com>
33193
33194         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
33195         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
33196         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
33197         heuristic is just as accurate as far as we know, and it removes a
33198         dependency on size_max.m4 and ptrdiff_max.m4.
33199
33200 2003-11-11  Bruno Haible  <bruno@clisp.org>
33201
33202         * modules/xsize (Files): Add m4/size_max.m4.
33203         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
33204
33205 2003-11-11  Bruno Haible  <bruno@clisp.org>
33206
33207         * m4/size_max.m4: New file.
33208         * m4/ptrdiff_max.m4: New file.
33209         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
33210         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
33211         (gl_XALLOC): Invoke it.
33212
33213 2003-11-11  Bruno Haible  <bruno@clisp.org>
33214
33215         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
33216         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
33217         defined.
33218
33219 2003-11-10  Paul Eggert  <eggert@twinsun.com>
33220
33221         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
33222         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
33223         rejected some allocations of exactly SIZE_MAX - 2 bytes.
33224         From Bruno Haible.
33225         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
33226         not (size_t) -1, since it's defined here.
33227
33228 2003-11-09  Karl Berry  <karl@gnu.org>
33229
33230         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
33231
33232 2003-11-06  Paul Eggert  <eggert@twinsun.com>
33233
33234         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
33235         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
33236         Reject sizes of exactly SIZE_MAX bytes.
33237         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
33238         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
33239
33240 2003-11-05  Bruno Haible  <bruno@clisp.org>
33241
33242         * lib/xsize.h: Include limits.h, to avoid a possible collision with
33243         SIZE_MAX defined in <limits.h> on Solaris.
33244
33245 2003-11-04  Jim Meyering  <jim@meyering.net>
33246
33247         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
33248         variable names, rather than @VAR@.
33249         * modules/poll: Likewise.
33250
33251 2003-11-04  Bruno Haible  <bruno@clisp.org>
33252
33253         * modules/xsize: New file.
33254         * modules/linebreak: Depend on xsize.
33255         * MODULES.html.sh (func_all_modules): Add xsize.
33256
33257 2003-11-04  Bruno Haible  <bruno@clisp.org>
33258
33259         * m4/xsize.m4: New file.
33260
33261 2003-11-04  Bruno Haible  <bruno@clisp.org>
33262
33263         * lib/xsize.h: New file.
33264         * lib/linebreak.c: Include xsize.h.
33265         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
33266         argument for overflow.
33267         Suggested by Paul Eggert.
33268
33269 2003-11-03  Karl Berry  <karl@gnu.org>
33270
33271         * config/config.{guess,sub}: update from config.
33272
33273 2003-11-03  Jim Meyering  <jim@meyering.net>
33274
33275         * modules/userspec (lib_SOURCES): Add userspec.h.
33276         (Include): Add "userspec.h".
33277         Improve description.
33278
33279 2003-11-03  Jim Meyering  <jim@meyering.net>
33280
33281         * lib/userspec.c: Include "userspec.h".
33282         * lib/userspec.h: New file.
33283
33284 2003-11-03  Bruno Haible  <bruno@clisp.org>
33285
33286         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
33287
33288 2003-11-03  Bruno Haible  <bruno@clisp.org>
33289
33290         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
33291         available, to avoid (extremely rare) race condition.
33292         Suggested by Paul Eggert.
33293
33294 2003-11-02  Karl Berry  <karl@gnu.org>
33295
33296         * config/srclist.txt (vasprintf.c): sync broken, sigh.
33297
33298 2003-10-31  Paul Eggert  <eggert@twinsun.com>
33299
33300         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
33301         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
33302         (read_filesystem_list): Set and use me_type_malloced.
33303         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
33304         whatever the type happens to be), for brevity and consistency.
33305         Check for size calculation overflow on Alphas running OSF/1.
33306
33307 2003-10-31  Jim Meyering  <jim@meyering.net>
33308
33309         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
33310
33311         * lib/linebuffer.c: Include <string.h> for declaration of memset.
33312
33313 2003-10-30  Paul Eggert  <eggert@twinsun.com>
33314             Bruno Haible  <bruno@clisp.org>
33315
33316         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
33317         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
33318
33319 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
33320
33321         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
33322         netbsd*-gnu*.  Suggested by Robert Millan.
33323
33324 2003-10-29  Paul Eggert  <eggert@twinsun.com>
33325
33326         * modules/group-member: Depend on stdbool.
33327
33328 2003-10-29  Paul Eggert  <eggert@twinsun.com>
33329
33330         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
33331
33332 2003-10-29  Paul Eggert  <eggert@twinsun.com>
33333
33334         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
33335         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
33336         after the 'gnu' in these cases.  This fixes some bugs in the
33337         previous change, and is based on suggestions by Robert Millan.
33338
33339 2003-10-29  Paul Eggert  <eggert@twinsun.com>
33340
33341         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
33342         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
33343         no longer needed.
33344         * lib/quotearg.c (quotearg_n_options): Use it.
33345         * lib/group-member.c: Include <stdbool.h>.
33346         (free_group_info): Arg is now const *; don't free arg.
33347         (get_group_info): Now returns bool and accepts struct group_info *,
33348         rather than returning a malloc'ed struct group_info *.
33349         All uses changed.  Check for overflow in internal size calculation.
33350
33351         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
33352         rather than xmalloc/xrealloc.
33353         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
33354         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
33355         conformance bug: the old code used a pointer after freeing the
33356         storage that it addressed.
33357         * lib/hash.c (hash_initialize): Simplify the code by using
33358         xalloc_oversized rather than doing it by hand.
33359         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
33360         the buffer preserved.  Use free and xmalloc instead.
33361         * lib/quotearg.c (quotearg_n_options): Likewise.
33362         Use a simpler test for size overflow.  Don't use xalloc_oversized
33363         because unsigned int might be wider than size_t (!); this suggests
33364         that we should switch from unsigned int to size_t for slot numbers.
33365
33366 2003-10-28  Paul Eggert  <eggert@twinsun.com>
33367
33368         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
33369         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
33370         NetBSD kernels.  Requested by Richard Stallman.
33371
33372 2003-10-27  Paul Eggert  <eggert@twinsun.com>
33373
33374         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
33375         to allocate the returned structure.  Do not allocate a subarray,
33376         as x2nrealloc will do that.
33377         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
33378         instead of xnrealloc.
33379         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
33380
33381 2003-10-27  Bruno Haible  <bruno@clisp.org>
33382
33383         * lib/stdbool_.h: Better support for BeOS.
33384
33385 2003-10-26  Paul Eggert  <eggert@twinsun.com>
33386
33387         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
33388         now uses inline.
33389
33390 2003-10-26  Paul Eggert  <eggert@twinsun.com>
33391
33392         * lib/xalloc.h (xalloc_oversized): New static inline function, for
33393         callers that want to do their own size-overflow checking.  Include
33394         <stdbool.h>, since xalloc_oversized returns bool.
33395         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
33396         to use xalloc_oversized.
33397
33398         Add two functions x2realloc, x2nrealloc, for programs that grow
33399         arrays dynamically by doubling their sizes.
33400         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
33401         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
33402         New functions.
33403
33404         Port to C99 semantics for 'inline' of external functions.
33405         Bug reported by Bruno Haible.
33406         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
33407         with the old contents of xnmalloc.
33408         (xnmalloc, xmalloc): Use it.
33409         (xnrealloc_inline): New static inline function,
33410         with the old contents of xnrealloc.
33411         (xnrealloc, xrealloc): Use it.
33412
33413         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
33414         that.
33415
33416 2003-10-26  Karl Berry  <karl@gnu.org>
33417
33418         * config/srclist.txt (COPYING.DOC): no longer available from
33419         /gd/gnuorg; don't know where the ultimate source is.
33420
33421 2003-10-25  Paul Eggert  <eggert@twinsun.com>
33422
33423         Fix several address-calculation bugs in the hash modules,
33424         plus some minor code cleanup.
33425
33426         * lib/hash.h: Include <stdbool.h>, for bool.
33427         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
33428         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
33429         hash_get_n_entries, hash_get_max_bucket_length,
33430         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
33431         hash_rehash): Use size_t rather than unsigned.
33432         * lib/hash.c (struct hash_table, hash_get_n_buckets,
33433         hash_get_n_buckets_used, hash_get_n_entries,
33434         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
33435         hash_get_entries, hash_do_for_each, hash_string, is_prime,
33436         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
33437         Likewise.
33438         (SIZE_MAX): Define if not defined.
33439         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
33440         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
33441         hash_print):
33442         Use const * when possible.
33443         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
33444         (check_tuning): Fix bug: if tuning parameters were very close to
33445         0 or 1, rounding errors could have caused subscript violations.
33446         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
33447         (hash_initialize): Add 'fail:' label
33448         to free table and return NULL, and use it to simplify code.
33449         Use calloc rather than clearing the storage ourself.
33450         (hash_initialize, hash_rehash): Check for arithmetic overflow in
33451         buffer size calculations.
33452         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
33453         Include <stddef.h>, for size_t.
33454         * lib/hash-pjw.c (hash_pjw): Likewise.
33455         Switch to method described by Bruno Haible.
33456         Include <limits.h>, for CHAR_BIT.
33457         (SIZE_BITS): New macro.
33458
33459 2003-10-23  Paul Eggert  <eggert@twinsun.com>
33460
33461         * m4/getline.m4 (AM_FUNC_GETLINE):
33462         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
33463         hosts.  Problem reported by Derek Robert Price in
33464         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
33465         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
33466         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
33467
33468 2003-10-21  Paul Eggert  <eggert@twinsun.com>
33469
33470         * lib/getndelim2.c (getndelim2): When size calculation overflows,
33471         ceiling the allocation at NMAX bytes rather than silently
33472         discarding input bytes before NMAX is reached.  This makes
33473         a difference only if NMAX exceeds SIZE_MAX / 2.
33474
33475         * lib/obstack.c: Merge from glibc.
33476         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
33477         Add libc_hidden_def (_obstack_newchunk).
33478         (_obstack_free) [! defined _LIBC]: Remove.
33479         [defined _LIBC]: Make a strong alias from obstack_free, rather than
33480         a clone of the function body.
33481         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
33482         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
33483
33484         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
33485         glibc.
33486         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
33487         arg to memcpy.
33488
33489         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
33490         (obstack_ptr_grow_fast, obstack_int_grow_fast):
33491         Don't use lvalue casts, as GCC plans to remove support for them
33492         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
33493         was also present in the non-GCC version, indicating that this
33494         code had always been buggy and had never been widely used.
33495         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
33496         Use the fast variant of each macro, rather than copying the
33497         definiens of the fast variant; that way, we'll be more likely to
33498         catch future bugs in the fast variants.
33499
33500 2003-10-20  Bruno Haible  <bruno@clisp.org>
33501
33502         * modules/wait-process: New file.
33503         * MODULES.html.sh (func_all_modules): Add wait-process.
33504
33505 2003-10-20  Bruno Haible  <bruno@clisp.org>
33506
33507         * m4/wait-process.m4: New file.
33508
33509 2003-10-20  Bruno Haible  <bruno@clisp.org>
33510
33511         * lib/wait-process.h: New file, from GNU gettext.
33512         * lib/wait-process.c: New file, from GNU gettext.
33513
33514 2003-10-19  Jim Meyering  <jim@meyering.net>
33515
33516         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
33517         HPUX 10.20.
33518
33519 2003-10-18  Karl Berry  <karl@gnu.org>
33520
33521         * config/config.guess: update from config.
33522
33523 2003-10-16  Paul Eggert  <eggert@twinsun.com>
33524
33525         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
33526         (getgroups): First arg is int, not size_t.
33527         Don't let 'free' mangle errno.
33528
33529 2003-10-16  Paul Eggert  <eggert@twinsun.com>
33530
33531         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
33532
33533 2003-10-16  Karl Berry  <karl@gnu.org>
33534
33535         * config/config.{guess,sub}: update from config.
33536
33537 2003-10-16  Jim Meyering  <jim@meyering.net>
33538
33539         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
33540         memcpy.
33541
33542 2003-10-15  Paul Eggert  <eggert@twinsun.com>
33543
33544         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
33545         (SIZE_MAX): Remove.
33546         (new_exclude, add_exclude_file): Initial size no longer needs to
33547         be a power of 2.
33548         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
33549         our own address arithmetic overflow checking.
33550
33551         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
33552         (fnmatch): Do not alloca more than 2000 wide characters;
33553         instead, use malloc for large buffers.
33554         Check for address arithmetic overflow, and return -1
33555         with errno set to ENOMEM in that case.
33556         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
33557         (NEW_PATTERN): Do not alloca more than 8000 bytes;
33558         instead, return -1.  Check for address arithmetic overflow.
33559
33560 2003-10-14  Paul Eggert  <eggert@twinsun.com>
33561
33562         Handle invalid suffixes and overflow independently, so that
33563         callers can treat them independently as needed.  Fix some bugs in
33564         suffix handling, e.g., "100k@" was not diagnosed as an invalid
33565         suffix for a human-readable blocksize.  The major caller-visible
33566         change is the addition of a new
33567         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
33568         that both overflow and suffix chars were found.
33569
33570         * lib/human.c (humblock): Don't check separately for invalid suffix
33571         char; that is xstrtoumax's job (now that its bug is fixed).
33572         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
33573         INTMAX_MAX]: New macros.
33574         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
33575         TYPE_MAXIMUM): New macros.
33576         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
33577         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
33578         if overflow occurs, as it's what __strtol does and it's more useful
33579         in practice.
33580         (__xstrtol): If __strtol reports some error other than ERANGE,
33581         reflect it to the caller as LONGINT_INVALID.  If it reports
33582         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
33583         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
33584         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
33585         value.
33586         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
33587         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
33588         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
33589         [defined UINTMAX_MAX]: New macros.
33590
33591 2003-10-14  Bruno Haible  <bruno@clisp.org>
33592
33593         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
33594
33595 2003-10-14  Bruno Haible  <bruno@clisp.org>
33596
33597         * m4/sig_atomic_t: New file, from GNU gettext.
33598         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
33599
33600 2003-10-14  Bruno Haible  <bruno@clisp.org>
33601
33602         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
33603         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
33604         Also use volatile where needed.
33605
33606 2003-10-12  Paul Eggert  <eggert@twinsun.com>
33607
33608         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
33609         Change maintainer from Bruno Haible to 'all'.
33610
33611 2003-10-12  Paul Eggert  <eggert@twinsun.com>
33612
33613         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
33614
33615 2003-10-12  Paul Eggert  <eggert@twinsun.com>
33616
33617         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
33618         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
33619         and define in terms of the other primitives.
33620         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
33621         (SIZE_MAX): Define if not already defined.
33622         (array_size_overflow): New function.
33623         (xalloc_die): Abort instead of exiting if 'error' returns.
33624         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
33625         (xmalloc, xrealloc): Use them.
33626         (xcalloc): Check for address arithmetic overflow.
33627         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
33628         a bit faster than strcpy.
33629
33630 2003-10-10  Simon Josefsson  <jas@extundo.com>
33631
33632         * modules/argp (Depends-on): Add restrict and strcase.
33633
33634 2003-10-10  Simon Josefsson  <jas@extundo.com>
33635
33636         * m4/argp.m4: Add AC_C_INLINE.
33637
33638 2003-10-08  Paul Eggert  <eggert@twinsun.com>
33639
33640         Merge getpass from libc, plus a few fixes.
33641
33642         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
33643         Include <stdbool.h>.
33644         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
33645         __fsetlocking to empty.
33646         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
33647         do include <bits/libc-lock.h>.
33648         Do not include <fcntl.h>; not needed.
33649         [_LIBC]: Include <wchar.h>.
33650         (NOTCANCEL_MODE): New macro.
33651         (flockfile, funlockfile) [_LIBC]: New macros.
33652         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
33653         [!_LIBC]: New macros.
33654         (call_fclose): New function.
33655         (getpass): Use it.  Save tty stream separately; this simplifies the
33656         code and makes it more reliable if stdin happens to equal stdout.
33657         Invoke __fsetlocking on tty.
33658         Handle thread cancellation if needed.
33659         Namespace cleanup (use __tcgetattr, __getline).
33660         Use bool for Booleans.
33661         [USE_IN_LIBIO]: Handle wide streams.
33662         [!_LIBC]: Unconditionally do the fseek, since we don't know what
33663         stream might go where.
33664
33665         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
33666         doesn't have to include <stdio.h> before us.
33667         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
33668         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
33669         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
33670         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
33671         if not declared, so that we can use getpass.c code from libc without
33672         rewriting it.
33673         (flockfile, ftrylockfile, funlockfile): New macros.
33674
33675 2003-10-08  Paul Eggert  <eggert@twinsun.com>
33676
33677         * modules/getpass: Depend on stdbool.
33678
33679 2003-10-08  Paul Eggert  <eggert@twinsun.com>
33680
33681         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
33682
33683 2003-10-07  Karl Berry  <karl@gnu.org>
33684
33685         * config/config.{guess,sub}: update from config.
33686
33687 2003-10-06  Jim Meyering  <jim@meyering.net>
33688             Bruno Haible  <bruno@clisp.org>
33689
33690         This lets translators provide better translations for the
33691         "Written by ..." part of --version output.
33692         * lib/version-etc.h: Include stdarg.h.
33693         (version_etc_copyright): Declare as readonly.
33694         (version_etc): Make this function variadic with a NULL-terminated list
33695         of author name strings.
33696         (version_etc_va): New declaration.
33697         * lib/version-etc.c: Include stdarg.h, stdlib.h.
33698         (version_etc_copyright): Declare as readonly.
33699         (version_etc_va): New function. Provide a different translatable string
33700         for each possible number of authors < 10. Abbreviate when there are 10
33701         authors or more.
33702         (version_etc): Make this function variadic. Call version_etc_va.
33703         Suggestion from Gary V. Vaughan.
33704
33705         * lib/long-options.h (parse_long_options): Change prototype: the
33706         authors string is moved to the end and becomes variadic.
33707         * lib/long-options.c: Include stdarg.h.
33708         (parse_long_options): Make this function variadic, too.
33709         Call version_etc_va, not version_etc.
33710
33711 2003-10-06  Bruno Haible  <bruno@clisp.org>
33712
33713         * modules/version-etc-2: Remove file.
33714         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
33715
33716 2003-10-06  Bruno Haible  <bruno@clisp.org>
33717
33718         * modules/fatal-signal: New file.
33719         * MODULES.html.sh (func_all_modules): Add fatal-signal.
33720
33721 2003-10-06  Bruno Haible  <bruno@clisp.org>
33722
33723         * m4/fatal-signal.m4: New file.
33724         * m4/signalblocking.m4: New file, from GNU gettext.
33725
33726 2003-10-06  Bruno Haible  <bruno@clisp.org>
33727
33728         * lib/version-etc-2.h: Remove file.
33729         * lib/version-etc-2.c: Remove file.
33730
33731 2003-10-06  Bruno Haible  <bruno@clisp.org>
33732
33733         * lib/fatal-signal.h: New file, from GNU gettext.
33734         * lib/fatal-signal.c: New file, from GNU gettext.
33735
33736 2003-10-05  Paul Eggert  <eggert@twinsun.com>
33737
33738         * README: Rework advice for preventing empty .o files.
33739         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
33740         not <sys/types.h>.
33741
33742 2003-10-04  Karl Berry  <karl@gnu.org>
33743
33744         * lib/argp*: update from libc.
33745
33746 2003-10-04  Karl Berry  <karl@gnu.org>
33747
33748         * config/config.{guess,sub}: update from config.
33749
33750 2003-10-02  Bruno Haible  <bruno@clisp.org>
33751
33752         * modules/lchown (Include): Add lchown.h.
33753         * modules/time_r (Include): Use "..." syntax.
33754         * modules/xgetdomainname (Include): Add xgetdomainname.h.
33755
33756 2003-10-01  Simon Josefsson  <jas@extundo.com>
33757
33758         * MODULES.html.sh (func_all_modules): Move gethostname from section
33759         'based on' to section 'lacking' POSIX:2001.
33760
33761 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
33762
33763         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
33764         to output mode on the same stream.
33765
33766 2003-09-29  Paul Eggert  <eggert@twinsun.com>
33767
33768         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
33769         Fix arg typo in previous patch.
33770
33771 2003-09-28  Jim Meyering  <jim@meyering.net>
33772
33773         * lib/error.c: Correct cpp indentation.
33774
33775 2003-09-27  Paul Eggert  <eggert@twinsun.com>
33776
33777         * modules/free: New file.
33778
33779 2003-09-27  Paul Eggert  <eggert@twinsun.com>
33780
33781         * m4/free.m4: New file.
33782
33783 2003-09-27  Paul Eggert  <eggert@twinsun.com>
33784
33785         * lib/minmax.h (MIN, MAX)
33786         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
33787         Omit the special code that used __typeof__, since we worry that
33788         it could be more trouble than it's worth.  See:
33789         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
33790         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
33791
33792         * lib/free.c: New file.
33793
33794 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
33795
33796         Trivial fixes to Makefile.am parts of module listings.
33797         * modules/strstr: Append strstr.h to lib_SOURCES.
33798         * modules/strcase: Likewise, for strcase.h.
33799
33800 2003-09-27  Karl Berry  <karl@gnu.org>
33801
33802         * config/mkinstalldirs: update from automake.
33803
33804 2003-09-26  Paul Eggert  <eggert@twinsun.com>
33805
33806         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
33807         (error_tail): Do not loop, reallocating temporary buffer, since
33808         the output cannot contain more wide characters than the input
33809         contains bytes, the size must be big enough already.  This avoids
33810         one potential size overflow calculation.  Check for size overflow
33811         when calculating temporary buffer size.  Free temporary buffer
33812         when done, if it was allocated with malloc; this plugs a memory
33813         leak.  Remove casts from void * to pointers, that are no longer
33814         needed now that we're assuming C89 or better.
33815
33816         Merge error changes from glibc.
33817
33818         * lib/error.c, error.h: Update copyright notice header to match glibc.
33819         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
33820         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
33821         Disable cancellation while printing error.
33822         * lib/error.h: Prepend __ to parameter names.
33823
33824 2003-09-26  Jim Meyering  <jim@meyering.net>
33825
33826         * lib/error.c (error_tail): Move some declarations
33827         into inner scope where the local variables are used.
33828
33829 2003-09-26  Bruno Haible  <bruno@clisp.org>
33830
33831         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
33832         stpncpy().
33833         Don't define stpncpy through config.h; it's now done through stpncpy.h.
33834
33835 2003-09-26  Bruno Haible  <bruno@clisp.org>
33836
33837         * lib/stpncpy.h (gnu_stpncpy): New declaration.
33838         (stpncpy): Define as alias for gnu_stpncpy.
33839         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
33840
33841 2003-09-25  Simon Josefsson  <jas@extundo.com>
33842
33843         * lib/xgetdomainname.h: New file.
33844         * lib/xgetdomainname.c: New file.
33845
33846 2003-09-25  Simon Josefsson  <jas@extundo.com>
33847             Bruno Haible  <bruno@clisp.org>
33848
33849         * modules/getdomainname: New file.
33850         * modules/xgetdomainname: New file.
33851         * MODULES.html.sh (func_all_modules): Add getdomainname,
33852         xgetdomainname.
33853
33854 2003-09-25  Simon Josefsson  <jas@extundo.com>
33855             Bruno Haible  <bruno@clisp.org>
33856
33857         * m4/getdomainname.m4: New file.
33858
33859 2003-09-25  Simon Josefsson  <jas@extundo.com>
33860             Bruno Haible  <bruno@clisp.org>
33861
33862         * lib/getdomainname.h: New file.
33863         * lib/getdomainname.c: New file.
33864
33865 2003-09-25  Karl Berry  <karl@gnu.org>
33866
33867         * lib/argp-fmtstream.c, argp-help.c: update from libc.
33868
33869 2003-09-25  Karl Berry  <karl@gnu.org>
33870
33871         * config/install-sh: update from automake.
33872
33873 2003-09-25  Bruno Haible  <bruno@clisp.org>
33874
33875         * modules/version-etc-2: New file, from modules/version-etc with
33876         modifications.
33877         * MODULES.html.sh (func_all_modules): Add version-etc-2.
33878
33879 2003-09-25  Bruno Haible  <bruno@clisp.org>
33880
33881         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
33882         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
33883
33884 2003-09-24  Simon Josefsson  <jas@extundo.com>
33885
33886         * modules/xgethostname: Add xgethostname.h.
33887
33888 2003-09-24  Paul Eggert  <eggert@twinsun.com>
33889
33890         * lib/linebuffer.c (freebuffer): Don't free the argument, just
33891         the buffer associated with the argument.  Bug reported by
33892         Simon Josefsson.
33893
33894 2003-09-24  Paul Eggert  <eggert@twinsun.com>
33895
33896         * README: Document assumptions that 'int' is at least 32 bits
33897         wide, that integer arithmetic is 2's complement without overflow,
33898         that there are no holes in integer values, that adding sizes of
33899         two nonoverlapping objects can't overflow, and that all-bits-zero
33900         yields scalar zero.  Fix spelling and capitalization typos.
33901
33902 2003-09-19  Karl Berry  <karl@gnu.org>
33903
33904         * lib/argp.h: update from libc.
33905
33906 2003-09-17  Paul Eggert  <eggert@twinsun.com>
33907
33908         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
33909         to avoid spurious warnings like "AC_RUN_IFELSE was called before
33910         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
33911
33912 2003-09-17  Paul Eggert  <eggert@twinsun.com>
33913
33914         * gnulib-tool: Use "test -h", not "test -L", for portability
33915         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
33916         (tags_regexp): Remove, since \| doesn't conform to POSIX.
33917         (sed_extract_prog): Issue s commands one-by-one, rather than
33918         using \| in one s command.
33919
33920 2003-09-16  Paul Eggert  <eggert@twinsun.com>
33921
33922         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
33923         input error, instead of returning NULL the next time we are called
33924         (and therefore losing track of errno).
33925
33926 2003-09-16  Bruno Haible  <bruno@clisp.org>
33927
33928         * gnulib-tool (func_create_testdir): Warn about duplicated
33929         dependencies.
33930
33931 2003-09-15  Paul Eggert  <eggert@twinsun.com>
33932
33933         * modules/argmatch, modules/fatal, modules/obstack,
33934         modules/xalloc, modules/xgethostname: Sort dependencies by
33935         importance, not alphabetically.
33936
33937 2003-09-15  Paul Eggert  <eggert@twinsun.com>
33938
33939         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
33940         fails, so that the caller gets the proper errno.
33941
33942         * lib/readutmp.c (read_utmp): Likewise.
33943         Check for fstat error.  Close stream and free storage
33944         when failing.
33945
33946 2003-09-14  Karl Berry  <karl@gnu.org>
33947
33948         * config/srclist.txt (strdup.c): disable for c89 changes.
33949
33950 2003-09-14  Jim Meyering  <jim@meyering.net>
33951
33952         * lib/getloadavg.c: Correct cpp indentation.
33953         * lib/strdup.c: Likewise.
33954         * lib/vasnprintf.c: Likewise.
33955
33956 2003-09-14  Bruno Haible  <bruno@clisp.org>
33957
33958         * modules/fwriteerror: New file.
33959         * MODULES.html.sh (func_all_modules): Add fwriteerror.
33960
33961 2003-09-14  Bruno Haible  <bruno@clisp.org>
33962
33963         * lib/fwriteerror.h: New file.
33964         * lib/fwriteerror.c: New file.
33965
33966 2003-09-12  Paul Eggert  <eggert@twinsun.com>
33967
33968         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
33969         modules/xgethostname, modules/xalloc: Depend on exit.
33970
33971 2003-09-12  Paul Eggert  <eggert@twinsun.com>
33972
33973         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
33974
33975         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
33976         and AC_MINIX, too, so that their extensions are available.
33977
33978         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
33979         This macro has been superseded by gl_BACKUPFILE.
33980
33981         More patches to assume C89 or better.
33982
33983         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
33984
33985         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
33986         unconditionally.
33987         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
33988         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
33989         Include <string.h>, <stdlib.h> unconditionally.
33990         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
33991         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
33992         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
33993         headers or for string.h.
33994         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
33995         or strtoul.
33996
33997         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
33998         headers.
33999         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
34000         * m4/userspec.m4 (gl_USERSPEC): Likewise.
34001         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
34002         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
34003         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
34004         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
34005         memcpy, memset.
34006         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
34007         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
34008         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
34009         strtol.
34010         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
34011         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
34012         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
34013         strtoul.
34014
34015 2003-09-12  Paul Eggert  <eggert@twinsun.com>
34016
34017         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
34018         * lib/obstack.c [!defined _LIBC]: Likewise.
34019         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
34020         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
34021         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
34022
34023         More changes to assume C89 or better.
34024
34025         * lib/error.c (error_tail): Assume vprintf.
34026
34027         * lib/argmatch.c (getenv): Remove decl.
34028         * lib/progreloc.c (get_full_program_name): Define via prototype.
34029         * lib/setenv.c (clearenv): Likewise.
34030         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
34031         needed.
34032         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
34033         (malloc, memcpy): Remove decls.
34034         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
34035         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
34036         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
34037         (memcpy): Remove macro.
34038         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
34039         (__P): Remove.  All uses removed.
34040         (PTR): Remove.  All uses changed to void *.
34041         (CHAR_BIT, NULL): Remove.
34042         (spaces, zeros, memset_space, memset_zero)
34043         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
34044         Remove.
34045         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
34046         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
34047         Define with prototype.
34048         Remove now-unnecessary prototype decl.
34049         (extra_args_spec): Assume ANSI C.  All uses changed.
34050         (extra_args_spec_iso): Remove.
34051         (my_strftime, emacs_strftimeu): Define via prototype.
34052         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
34053         unconditionally.
34054         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
34055         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
34056         (strtoul, strtol): Remove decls.
34057         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
34058         LONG_MAX): Remove.
34059         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
34060         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
34061         (LOCALE_PARAM_PROTO): New macro.
34062         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
34063         (INTERNAL (strtol), strtol): Define with a prototype.
34064         (PARAMS): Remove.  All uses removed.
34065         * lib/tempname.c: Include <string.h> unconditionally.
34066         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
34067         * lib/xgethostname.c (main): Define with a prototype.
34068         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
34069         Include <stdlib.h> unconditionally.
34070         (calloc, malloc, realloc, free): Remove decls.
34071         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
34072         Include <stdlib.h> unconditionally.  Sort include file names.
34073         (strtod): Remove.
34074         (xstrtod): Define with a prototype.
34075         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
34076         (strtol, strtoul): Remove decls.
34077
34078 2003-09-11  Paul Eggert  <eggert@twinsun.com>
34079
34080         More patches to assume C89 or better.
34081         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
34082         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
34083         string.h, memchr, STDC_HEADERS.
34084
34085 2003-09-11  Paul Eggert  <eggert@twinsun.com>
34086
34087         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
34088         Include <stdlib.h>, <string.h> unconditionally.
34089         Remove now-unnecessary cast to char *.
34090         * lib/strnlen.c: Include <string.h> unconditionally.
34091         * lib/yesno.c (yesno): Define with a prototype.
34092
34093 2003-09-11  Bruno Haible  <bruno@clisp.org>
34094
34095         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
34096
34097 2003-09-10  Jim Meyering  <jim@meyering.net>
34098
34099         * lib/error.c: Correct indentation of cpp directives.
34100
34101 2003-09-10  Bruno Haible  <bruno@clisp.org>
34102
34103         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
34104         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
34105         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
34106         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
34107         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
34108         <stdlib.h> and <string.h> checks.
34109         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
34110         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
34111
34112 2003-09-10  Bruno Haible  <bruno@clisp.org>
34113
34114         * lib/strcspn.c: Include <string.h> unconditionally.
34115         * lib/strpbrk.c: Include <string.h> unconditionally.
34116         * lib/strstr.c: Include <string.h> unconditionally.
34117         * lib/unicodeio.c: Include <string.h> unconditionally.
34118         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
34119         * lib/unsetenv.c: Likewise.
34120         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
34121         * lib/yesno.c: Include <stdlib.h> unconditionally.
34122         (rpmatch): Add prototype.
34123
34124 2003-09-09  Paul Eggert  <eggert@twinsun.com>
34125
34126         More patches to assume C89 or better.
34127         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
34128         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
34129         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
34130         or for string.h.
34131         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
34132         stdlib.h.
34133         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
34134         C headers.
34135         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
34136         string.h.
34137         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
34138         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
34139         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
34140         or for string.h.
34141         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
34142         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
34143         C headers.
34144         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
34145         memcpy.
34146         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
34147         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
34148         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
34149         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
34150         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
34151         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
34152         string.h, free.
34153         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
34154         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
34155         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
34156         C headers, or for string.h.
34157         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
34158         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
34159         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
34160         headers, memory.h, stdlib.h, string.h, strings.h.
34161         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
34162         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
34163         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
34164         strchr.
34165         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
34166         headers, memory.h, string.h.
34167         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
34168         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
34169         free.
34170         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
34171         headers.
34172         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
34173         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
34174         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
34175         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
34176         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
34177
34178 2003-09-09  Paul Eggert  <eggert@twinsun.com>
34179
34180         More K&R removal.
34181
34182         * lib/acosl.c (main): Use a prototype.
34183         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
34184         tanl.c: Likewise.
34185
34186         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
34187
34188         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
34189         (getopt, etopt_long, getopt_long_only, _getopt_internal)
34190         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
34191         with a prototype.
34192         * lib/getopt.c (const): Remove macro.
34193         Include <string.h> unconditionally.
34194         (my_index): Remove; all uses changed to strchr.
34195         (strlen): Remove decl.
34196         (exchange): Remove forward decl; no longer needed.
34197         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
34198         Define with prototype.
34199         * lib/getopt1.c (const): Remove macro.
34200         (getopt_long, getopt_long_only, main): Define with prototype.
34201
34202         * lib/getugroups.c: Include <string.h> unconditionally.
34203
34204         * lib/getusershell.c: Include <stdlib.h> unconditionally.
34205         (getusershell, setusershell, endusershell, readname, main):
34206         Define with prototypes.
34207
34208         * lib/group-member.c: Include group-member.h first.
34209         Include <stdlib.h> unconditionally.
34210
34211         * lib/hard-locale.c: Include hard-locale.h first.
34212         Include <stdlib.h>, <string.h> unconditionally.
34213
34214         * lib/hash.c (free, malloc): Remove decls.
34215         Include <stdlib.h> unconditionally.
34216
34217         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
34218         (getenv): Do not declare.
34219
34220         * lib/idcache.c: Include <string.h> unconditionally.
34221
34222         * lib/long-options.c: Include long-options.h first, to test interface.
34223         Include <stdlib.h> unconditionally.
34224
34225         * lib/makepath.c: Include makepath.h first, to test interface.
34226         Include <stdlib.h> and <string.h> unconditionally.
34227
34228         * lib/linebuffer.c: Include <stdlib.h>.
34229         (free): Remove decl.
34230
34231         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
34232         stddef.h. rpl_malloc returns void *, not char *.
34233         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
34234         prototype.
34235
34236         * lib/md5.h: Include <limits.h> unconditionally.
34237         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
34238         (__P): Remove; all uses removed.
34239         * lib/md5.c: Include "md5.h" first.
34240         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
34241         md5_buffer, md5_process_bytes, md5_process_block):
34242         Define with prototypes.
34243         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
34244         * lib/sha.c: Include "sha.h" first.
34245         Include <stdlib.h>, <string.h> unconditionally.
34246
34247         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
34248         * lib/memcmp.c (__ptr_t): Likewise.
34249         * lib/memrchr.c (__ptr_t): Likewise.
34250         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
34251         Include <string.h> unconditionally.
34252         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
34253         * lib/memchr.c: Include <stdlib.h> unconditionally.
34254         * lib/memchr.c (LONG_MAX): Remove.
34255         * lib/memrchr.c (LONG_MAX): Likewise.
34256         * lib/memchr.c (__memchr): Define via a prototype.
34257         * lib/memrchr.c (__memrchr): Likewise.
34258         * lib/memcmp.c (__P): Remove, and remove all uses.
34259         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
34260         Remove forward decls; no longer needed.
34261         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
34262         Use types required by C89 in prototype.
34263
34264         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
34265         * lib/savedir.c: Likewise.
34266         * lib/mkdir.c (free): Remove decl.
34267         * lib/rmdir.c (rmdir): Define with a prototype.
34268         * lib/savedir.c: Include savedir.h first, to test interface.
34269
34270         * lib/mktime.c (STDC_HEADERS): Remove.
34271         Include <stdlib.h>, <string.h> unconditionally.
34272
34273         * lib/modechange.c: Include <stdlib.h> unconditionally.
34274         (malloc): Remove decl.
34275
34276         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
34277         (free): Remove decl.
34278
34279         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
34280         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
34281         (This type really should be intptr_t, but that's a C99ism.)
34282         (_obstack_memcpy): Remove: all uses changed to memcpy.
34283         Include <string.h> unconditionally.
34284         (struct obstack): Assume __STDC__ for types of members
34285         chunkfun, freefun, extra_arg.
34286         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
34287         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
34288         obstack_begin, obstack_specify_allocation,
34289         obstack_specify_allocation_with_arg, obstack_chunkfun,
34290         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
34291         Remove unprototyped decls and the macros that use them.
34292         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
34293         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
34294         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
34295         (defined __STDC__ && __STDC__)]:
34296         Remove nonprototyped code.
34297         Include <stdlib.h> unconditionally.
34298         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
34299         _obstack_allocated_p, _obstack_free, obstack_free,
34300         _obstack_memory_used, print_and_abort):
34301         Define using prototypes.
34302         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
34303         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
34304         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
34305         obstack_next_free, obstack_object_size, obstack_room) [0]:
34306         Remove unused, unprototyped code.
34307
34308         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
34309
34310         * lib/physmem.c (physmem_total, physmem_available, main): Define
34311         with prototypes.
34312
34313         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
34314         (main): Define with a prototype.
34315
34316         * lib/posixver.c (getenv): Remove decl.
34317
34318         * lib/putenv.c (malloc): Returns void *, not char *.
34319         Include <string.h> unconditionally.
34320         (strchr, memcpy, NULL): Do not define.
34321
34322         * lib/readtokens.c: Include readtokens.h first, to test interface.
34323         Include <stdlib.h>, <string.h> unconditionally.
34324         (init_tokenbuffer): Define with a prototype.
34325
34326         * lib/regex.c (PARAMS): Remove.  All uses removed.
34327         All uses of _RE_ARGS removed, too.
34328         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
34329         unconditionally.
34330         (bzero): Assume memset exists.
34331         (memcmp, memcpy, NULL): Remove.
34332         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
34333         char, or assignments to local vars of type signed char.
34334         (init_syntax_once, PREFIX(extract_number_and_incr),
34335         PREFIX(print_partial_compiled_pattern),
34336         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
34337         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
34338         PREFIX(regex_grow_registers), PREFIX(regex_compile),
34339         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
34340         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
34341         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
34342         wcs_compile_range, byte_compile_range, truncate_wchar,
34343         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
34344         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
34345         count_mbs_length, wcs_re_match_2_internal,
34346         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
34347         PREFIX(alt_match_null_string_p),
34348         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
34349         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
34350         regfree, PREFIX(extract_number)): Define with prototype.  Remove
34351         now-unnecessary declaration, if any.
34352         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
34353         regcomp, regexec):
34354         Remove now-unnecessary casts among pointer types.
34355         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
34356
34357         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
34358         (free): Remove decl.
34359
34360         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
34361
34362         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
34363         (free): Remove decl.
34364
34365         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
34366         * lib/xgetcwd.c: Likewise.
34367
34368         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
34369         (free): Remove decl.
34370
34371         * lib/strchrnul.c (strchrnul): Define with a prototype.
34372         Fix bug: c_in was not converted to char before searching.
34373
34374         The following changes are not K&R related:
34375
34376         * lib/group-member.h: Include <sys/types.h>, so that this file is
34377         self-contained.
34378         * lib/makepath.h: Likewise.
34379
34380         * lib/getusershell.c (readname, default_index, line_size, readname):
34381         Use size_t, not int, for sizes.
34382         (readname): If the size overflows, report an error instead of
34383         looping forever.
34384
34385 2003-09-09  Paul Eggert  <eggert@twinsun.com>
34386
34387         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
34388         libc.
34389
34390 2003-09-09  Paul Eggert  <eggert@twinsun.com>
34391
34392         * README: New section: portability guidelines.
34393
34394 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
34395
34396         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
34397         C89 spec.
34398
34399 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
34400
34401         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
34402
34403 2003-09-08  Paul Eggert  <eggert@twinsun.com>
34404
34405         Assume C89 or better; remove K&R cruft.
34406         A few of these changes were first proposed by Derek Robert Price
34407         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
34408
34409         * lib/addext.c: Include <string.h> unconditionally.
34410         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
34411         Don't declare getenv or malloc.
34412
34413         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
34414         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
34415         (NULL): Remove.
34416         (find_stack_direction, alloca): Use prototypes.
34417
34418         * lib/atexit.c (atexit): Define using a prototype.
34419
34420         * lib/basename.c, dirname.c, stripslash.c:
34421         Include <string.h> unconditionally.
34422
34423         * lib/bcopy.c: Include <stddef.h>.
34424         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
34425
34426         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
34427
34428         * lib/error.h (error, error_at_line, error_print_progname)
34429         [! (defined (__STDC__) && __STDC__)]: Remove decls.
34430         * lib/error.c: Include error.h first, to check interface.
34431         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
34432         (VA_START): Remove; all uses changeed to va_start.
34433         (exit, strerror): Remove decls.
34434         (error_print_progname): Prototype uncondionally.
34435         Don't include <errno.h>; no longer needed.
34436         (private_strerror): Remove.
34437         (error_tail): Always define.
34438         (error, error_at_line): Assume C89 or better; always use prototypes.
34439         * lib/fatal.c: Include "fatal.h" first, to test interface.
34440         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
34441         (VA_START): Remove; all uses changed to va_start.
34442         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
34443         this case.
34444         (exit): Remove decl.
34445         (fatal): Prototype unconditionally.  Assume va_start works.
34446         Abort at end, to pacify gcc.
34447
34448         * lib/euidaccess.c (main): Define with a prototype.
34449
34450         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
34451
34452         * lib/exitfail.c: Include <stdlib.h> unconditionally.
34453
34454         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
34455         prototypes.
34456         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
34457         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
34458         (getenv): Remove decl.
34459         (fnmatch): Define using a prototype.
34460         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
34461         (FCT): Define using a prototype.
34462
34463         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
34464
34465         * lib/gethostname.c: Include <stddef.h>.
34466         (gethostname): Define with prototype.  Length is size_t, not int.
34467
34468 2003-09-08  Paul Eggert  <eggert@twinsun.com>
34469
34470         Assume C89 or better; remove K&R cruft.
34471         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
34472         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
34473         string.h, getenv, malloc.
34474         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
34475         headers.
34476         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
34477         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
34478         do not check for strerror.
34479         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
34480         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
34481         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
34482         do not check for doprnt or vprintf.
34483         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
34484         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
34485
34486 2003-09-08  Paul Eggert  <eggert@twinsun.com>
34487
34488         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
34489         getversion.c should have been removed then, but was accidentally
34490         preserved.
34491
34492         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
34493         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
34494
34495 2003-09-08  Karl Berry  <karl@gnu.org>
34496
34497         * config/config.sub, config.guess, srclistvars.sh: update from savannah
34498                 config, forget about prep.
34499
34500         * config/depcomp, missing: update from automake.
34501
34502 2003-09-07  Paul Eggert  <eggert@twinsun.com>
34503
34504         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
34505         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
34506
34507 2003-09-07  Paul Eggert  <eggert@twinsun.com>
34508
34509         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
34510         copy_tm_result.  Bug reported by Simon Josefsson in
34511         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
34512
34513 2003-09-06  Paul Eggert  <eggert@twinsun.com>
34514
34515         * m4/time_r.m4: New file.
34516         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
34517         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
34518         is. Check for timegm declaration.
34519         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
34520         Do not check for gmtime_r.
34521         Replace mktime if __mktime_internal does not exist and if mktime
34522         hasn't been replaced already.
34523
34524 2003-09-06  Paul Eggert  <eggert@twinsun.com>
34525
34526         * lib/time_r.c, lib/time_r.h: New files.
34527
34528         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
34529         __localtime_r.
34530         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
34531         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
34532
34533         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
34534         __gmtime_r.
34535         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
34536         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
34537         Include <time_r.h>.
34538
34539         * lib/timegm.c: Switch to glibc implementation, with the following
34540         changes:
34541         [defined HAVE_CONFIG_H]: Include <config.h>.
34542         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
34543         (__mktime_internal) [!defined _LIBC]: New decl.
34544         (__gmtime_r) [!defined _LIBC]: New macro and function.
34545         (timegm): Use a prototype, since gnulib assumes C89.
34546         Do not bother declaring tmp to be const, as it's not really usefu.
34547         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
34548         (timegm): Declare only if HAVE_DECL_TIMEGM.
34549
34550 2003-09-06  Paul Eggert  <eggert@twinsun.com>
34551
34552         * MODULES.html.sh (func_all_modules): Add time_r.
34553         * modules/time_r: New file.
34554         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
34555         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
34556
34557 2003-09-03  Paul Eggert  <eggert@twinsun.com>
34558
34559         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
34560         Bug reported by Lute Kamstra in
34561         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
34562
34563         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
34564         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
34565         course with correspondingly smaller numbers for tomorrow and
34566         yesterday.  From Tadayoshi Funaba.  Originally installed into
34567         sh-utils on 1999-08-07, but the patch got lost (I guess during the
34568         coreutils merge?).
34569
34570 2003-08-31  Simon Josefsson  <jas@extundo.com>
34571
34572         * modules/timegm: New file.
34573         * MODULES.html.sh (func_all_modules): Add timegm.
34574
34575 2003-08-31  Simon Josefsson  <jas@extundo.com>
34576
34577         * m4/timegm.m4: New file.
34578
34579 2003-08-31  Simon Josefsson  <jas@extundo.com>
34580
34581         * lib/timegm.h: New file.
34582         * lib/timegm.c: New file.  Based on
34583         wget-1.8.2/src/http.c:mktime_from_utc.
34584
34585 2003-08-31  Karl Berry  <karl@gnu.org>
34586
34587         * lib/argp.h: update from libc.
34588
34589 2003-08-28  Bruno Haible  <bruno@clisp.org>
34590
34591         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
34592         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
34593         followed by '#define fnmatch fnmatch_posix' gives an error.
34594
34595 2003-08-28  Bruno Haible  <bruno@clisp.org>
34596
34597         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
34598         warning on QNX, which defines O_BINARY to 000000.
34599
34600 2003-08-27  Jim Meyering  <jim@meyering.net>
34601
34602         * m4/mkstemp.m4: Require that the system mkstemp be able to create
34603         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
34604         would fail after 32.  Reported by Danny Levinson.  Details here:
34605         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
34606
34607 2003-08-24  Bruno Haible  <bruno@clisp.org>
34608
34609         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
34610         MSVC7 <stdio.h> is included later.
34611
34612 2003-08-22  Simon Josefsson  <jas@extundo.com>
34613
34614         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
34615
34616 2003-08-20  Karl Berry  <karl@gnu.org>
34617
34618         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
34619
34620 2003-08-20  Bruno Haible  <bruno@clisp.org>
34621
34622         * modules/progname: New file.
34623         * MODULES.html.sh (func_all_modules): Add progname.
34624
34625 2003-08-20  Bruno Haible  <bruno@clisp.org>
34626
34627         * lib/progname.h: New file, from GNU gettext.
34628         * lib/progname.c: New file, from GNU gettext.
34629         * lib/progreloc.c: New file, from GNU gettext.
34630
34631 2003-08-19  Jim Meyering  <jim@meyering.net>
34632
34633         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
34634         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
34635
34636 2003-08-19  Bruno Haible  <bruno@clisp.org>
34637
34638         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
34639         more.
34640
34641 2003-08-19  Bruno Haible  <bruno@clisp.org>
34642
34643         * lib/xstrdup.c: Assume <string.h> exists.
34644
34645 2003-08-18  Paul Eggert  <eggert@twinsun.com>
34646
34647         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
34648         in makefile rules.
34649
34650 2003-08-18  Jim Meyering  <jim@meyering.net>
34651
34652         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
34653         * m4/lib-ld.m4: Likewise.
34654
34655 2003-08-18  Jim Meyering  <jim@meyering.net>
34656
34657         * lib/setenv.h: Indent nested cpp directive.
34658         * lib/vasnprintf.c: Remove trailing blanks.
34659
34660 2003-08-17  Simon Josefsson  <jas@extundo.com>
34661
34662         * modules/xstrndup: New file.
34663         * MODULES.html.sh (func_all_modules): Add xstrndup.
34664
34665 2003-08-17  Simon Josefsson  <jas@extundo.com>
34666
34667         * modules/argp: Fix autoconf macro name. Add more dependencies.
34668
34669 2003-08-17  Simon Josefsson  <jas@extundo.com>
34670
34671         * m4/xstrndup.m4: New file.
34672
34673 2003-08-17  Simon Josefsson  <jas@extundo.com>
34674
34675         * m4/argp.m4: New file.
34676
34677 2003-08-17  Simon Josefsson  <jas@extundo.com>
34678             Bruno Haible  <bruno@clisp.org>
34679
34680         * lib/xstrndup.h: New file.
34681         * lib/xstrndup.c: New file.
34682
34683 2003-08-17  Bruno Haible  <bruno@clisp.org>
34684
34685         * modules/strndup (Files, Include): Add lib/strndup.h.
34686
34687 2003-08-17  Bruno Haible  <bruno@clisp.org>
34688
34689         * modules/euidaccess (Files): Add lib/euidaccess.h.
34690
34691 2003-08-17  Bruno Haible  <bruno@clisp.org>
34692
34693         * lib/strndup.h: New file.
34694
34695 2003-08-17  Bruno Haible  <bruno@clisp.org>
34696
34697         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
34698         like AC_GNU_SOURCE.
34699         * modules/extensions (configure.ac): Comment out the invocation of
34700         gl_USE_SYSTEM_EXTENSIONS.
34701
34702 2003-08-16  Paul Eggert  <eggert@twinsun.com>
34703
34704         Merges from coreutils, etc.
34705         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
34706         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
34707         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
34708         fixing a typo.
34709         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
34710         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
34711
34712 2003-08-16  Paul Eggert  <eggert@twinsun.com>
34713
34714         Document merge from coreutils.
34715         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
34716         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
34717         * modules/utime: Add m4/utimes-null.m4.
34718
34719 2003-08-16  Paul Eggert  <eggert@twinsun.com>
34720
34721         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
34722         space, undoing this 2003-08-12 change:
34723         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
34724
34725 2003-08-16  Paul Eggert  <eggert@twinsun.com>
34726
34727         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
34728         strtoul.c from libc, undoing this 2003-08-12 change:
34729         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
34730
34731 2003-08-16  Jim Meyering  <jim@meyering.net>
34732
34733         Merges from coreutils.
34734         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
34735         prefix.  Adjust cache variables similarly.  Create 500 rather than
34736         just 300 files, to exercise bug on Darwin6.5, too.
34737         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
34738         $missing_dir.
34739         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
34740         AM_SYS_POSIX_TERMIOS.
34741         Reported by mkc@mathdogs.com.
34742         Also change use of $am_cv_sys_posix_termios
34743         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
34744         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
34745         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
34746         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
34747         in /proc/mounts until it finds one with matching device number.  This
34748         is unnecessary when the FILE argument *is* a mount point.  No stat call
34749         is necessary in that case.  So, disable the statvfs-testing code on
34750         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
34751         as RedHat bug# 84846.
34752         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
34753         to 1MB, so as not to render systems with no stack size limit (e.g.,
34754         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
34755         Include <unistd.h>.  On some systems,
34756         it is required for the definition of _SC_PAGESIZE.
34757
34758 2003-08-16  Jim Meyering  <jim@meyering.net>
34759
34760         Merge from coreutils.
34761         * lib/xstrtoimax.c: #else #if -> #elif.
34762         * lib/xstrtoumax.c: Likewise.
34763
34764 2003-08-16  Jim Meyering  <jim@meyering.net>
34765
34766         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
34767         * m4/utimes.m4: Removed.
34768         * m4/utimes-null.m4: Renamed from utimes.m4.
34769
34770         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
34771         to 1MB, so as not to render systems with no stack size limit (e.g.,
34772         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
34773         Include <unistd.h>.  On some systems,
34774         it is required for the definition of _SC_PAGESIZE.
34775
34776 2003-08-16  Jim Meyering  <jim@meyering.net>
34777         and Paul Eggert  <eggert@cs.ucla.edu>
34778
34779         Merges from coreutils, etc.
34780
34781         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
34782         using the latest version from cvs.  This avoids problems with #line
34783         directives using a vendor (Sun) compiler.
34784         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
34785         Don't set GETGROUPS_LIB here; now it's
34786         done via getgroups.m4's wrapper function.
34787         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
34788         rather than just in sh-util/configure.in, so that the
34789         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
34790         same.
34791         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
34792         AC_FUNC_GETLOADAVG where to find getloadavg.c.
34793         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
34794         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
34795         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
34796         Remove code that is now done by the newly-required macros.
34797         Append $(EXEEXT) to DF_PROG.
34798         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
34799         Do not invoke or require the following here,
34800         since prereq.m4 or some gnulib .m4 now does this for us:
34801         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
34802         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
34803         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
34804         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
34805         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
34806         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
34807         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
34808         AC_FUNC_OBSTACK.
34809         Do not replace the following functions, as this is now the job
34810         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
34811         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
34812         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
34813         atexit getpass, strdup, getpagesize.
34814         Replace 'raise'.
34815         Do not check for the following functions, as this is now the job
34816         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
34817         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
34818         setregid.
34819         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
34820         Check for sys/sysctl.h.
34821         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
34822         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
34823         of checking for ssize_t ourselves.
34824
34825         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
34826         Require every macro that gnulib/modules/* suggests for us.
34827         (jm_PREREQ_ADDEXT): New macro.
34828         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
34829         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
34830
34831         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
34832         (gl_PHYSMEM): Use it.
34833         Also check for `table' function.
34834         Check for new headers and functions.
34835         Add check for sys/sysmp.h.
34836         With suggestions from Kaveh Ghazi.
34837         Ignore headers that are present but cannot be compiled.  This
34838         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
34839         C 5.4.
34840
34841 2003-08-15  Paul Eggert  <eggert@twinsun.com>
34842
34843         Document merge from coreutils.
34844         * modules/userspec: Depend on posixver.
34845         * modules/strftime: Depend on tzset.
34846
34847 2003-08-15  Paul Eggert  <eggert@twinsun.com>
34848
34849         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
34850         rather than tab, after '#' in shell-script copyright notices.
34851         Suggested by Bruno Haible.
34852
34853 2003-08-15  Paul Eggert  <eggert@twinsun.com>
34854
34855         * config/srclist-update: Use three spaces, rather than tab, after '#'
34856         in shell-script copyright notices.  Suggested by Bruno Haible.
34857         Remove unnecessary parenthesization in regular expression.
34858
34859 2003-08-15  Jim Meyering  <jim@meyering.net>
34860
34861         Merge from coreutils.
34862         * lib/xgethostname.c: Include <stdlib.h>.
34863         (xghostname): Don't exit for anything other than memory-related
34864         failure; just return NULL.
34865         * lib/userspec.c: Include "posixver.h".
34866         (parse_user_spec): Accept `.' as a separator only
34867         in pre-POSIX-200112 mode.
34868         * lib/strtoimax.c: Use #elif rather than #else #if.
34869         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
34870         Remove function, now that we can rely on a working tzset function.
34871         [!_LIBC]: Ensure that the required autoconf test has been run.
34872         [!defined _NL_CURRENT && HAVE_STRFTIME]:
34873         Use underlying_strftime for %r.
34874         * lib/sha.c: Merge in some clean-up and optimization changes from
34875         glibc.
34876         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
34877         Ensure that it is a multiple of 64.
34878         Rearrange loop exit tests so as to avoid performing an
34879         additional fread after encountering an error or EOF.
34880         * lib/realloc.c: Update copyright date.
34881
34882 2003-08-15  Jim Meyering  <jim@meyering.net>
34883         and Paul Eggert  <eggert@twinsun.com>
34884
34885         Merge from coreutils.
34886         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
34887         member but strut utmpx does not.  Needed for AIX 4.3.3.
34888         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
34889
34890 2003-08-15  Jim Meyering  <jim@meyering.net>
34891         and Paul Eggert  <eggert@cs.ucla.edu>
34892
34893         Merges from coreutils, etc.
34894         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
34895         Require gl_FUNC_TZSET_CLOBBER.
34896         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
34897         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
34898         members.
34899
34900 2003-08-14  Paul Eggert  <eggert@twinsun.com>
34901
34902         Help the merge from coreutils.
34903         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
34904         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
34905         * m4/tzset.m4: Use it too.
34906
34907 2003-08-14  Paul Eggert  <eggert@twinsun.com>
34908
34909         * modules/tzset: New file.
34910
34911 2003-08-14  Jim Meyering  <jim@meyering.net>
34912
34913         Merges from coreutils.
34914         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
34915         variable names, rather than @FNMATCH_H@.
34916         * modules/alloca: Likewise for $(ALLOCA_H).
34917
34918         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
34919         the three copies of the literal target, `fnmatch.h'.
34920         * modules/alloca (alloca.h): Likewise.
34921
34922 2003-08-14  Jim Meyering  <jim@meyering.net>
34923
34924         Merge from coreutils.
34925         * m4/tzset.m4: New file.
34926         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
34927         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
34928         otherwise, AIX 5.1 systems would end up using the latter.
34929         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
34930         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
34931         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
34932         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
34933
34934 2003-08-14  Jim Meyering  <jim@meyering.net>
34935
34936         Merge from coreutils.
34937         * lib/obstack.h: Whitespace changes.
34938         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
34939         and xcalloc return values.
34940         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
34941         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
34942         hang on OSF/1 5.1 for DIR on both local and remote file systems.
34943         Reported by (and fix confirmed by) Nelson H. F. Beebe.
34944         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
34945         error from mntctl.
34946         Use mntctl's return value to drive the entry-processing loop, since
34947         we can't rely on the value of the vmt_length member in the last
34948         entry.  On some systems doing so could result in exhausting
34949         virtual memory.  Based in part on a patch from Mike Jetzer.
34950
34951 2003-08-14  Jim Meyering  <jim@meyering.net>
34952         and Paul Eggert  <eggert@twinsun.com>
34953
34954         Merges from coreutils, plus other fixes.
34955         * lib/physmem.c: Merge in portability changes from gcc/libiberty
34956         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
34957         for credits and details.  Thanks to Kaveh Ghazi for helping
34958         to keep these files in sync.
34959         (ARRAY_SIZE): Define it.
34960         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
34961         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
34962         (memcasecmp): Don't assume size_t fits in unsigned int.
34963         Remove casts and duplicate code.
34964         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
34965         (memcpy): Remove definition.
34966         Merge in some clean-up and optimization changes from glibc.
34967         [BLOCKSIZE]: Move definition to top of file.
34968         Ensure that it is a multiple of 64.
34969         Rearrange loop exit tests so as to avoid performing an
34970         additional fread after encountering an error or EOF.
34971         * lib/md5.h (md5_uintptr): Define.
34972         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
34973         return to the initial working directory.  Preserve errno
34974         for caller.
34975         * lib/idcache.c: Include "xalloc.h".
34976         (xmalloc, xrealloc): Remove decls.
34977         (getuser): Remove casts no longer required in C89.
34978         * lib/human.c: Include stdio.h, for sprintf.
34979         * lib/group-member.c: Include "xalloc.h".
34980         (xmalloc, xrealloc): Remove decls.
34981         (get_group_info): Remove casts no longer required in C89.
34982         * lib/getusershell.c (readname): Remove casts no longer required in
34983         C89.
34984         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
34985         * lib/getline.c: Whitespace fix, from coreutils.
34986
34987 2003-08-13  Paul Eggert  <eggert@twinsun.com>
34988
34989         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
34990         Check for isascii.
34991
34992         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
34993         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
34994         Undo previous (whitespace-only) change.
34995
34996 2003-08-13  Paul Eggert  <eggert@twinsun.com>
34997
34998         * lib/exclude.c: Include <ctype.h>
34999         (IN_CTYPE_DOMAIN): New macro.
35000         (is_space): New fn.
35001         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
35002         and empty lines.
35003
35004         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
35005         Undo previous (whitespace-only) change.
35006
35007 2003-08-13  Paul Eggert  <eggert@twinsun.com>
35008
35009         * config/srclist-update: Change update back to the old behavior,
35010         leaving whitespace alone.  Use one 'sed' command rather than a
35011         pipeline.
35012         (fixlicense): Now a variable, not a function.
35013         (remove_trailing_blanks): Remove.
35014         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
35015         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
35016         Undo previous (whitespace-only) change.
35017
35018 2003-08-12  Paul Eggert  <eggert@twinsun.com>
35019
35020         Merge from coreutils.
35021         * modules/euidaccess: Add lib_SOURCES, include for new
35022         file euidaccess.h
35023
35024 2003-08-12  Paul Eggert  <eggert@twinsun.com>
35025
35026         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
35027         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
35028         Normalize leading white space and remove trailing white space.
35029
35030         Merge from coreutils
35031         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
35032
35033         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
35034         0.12.1.  These files are now being upgraded automatically by
35035         ../config/srclist-update.
35036
35037 2003-08-12  Paul Eggert  <eggert@twinsun.com>
35038
35039         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
35040         Normalize leading white space and remove trailing white space.
35041         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
35042         notice, as per ../config/srclist-update.
35043
35044         Merge from coreutils.
35045         * lib/euidaccess.h: New file.
35046         * lib/euidaccess.c: Include it.
35047         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
35048         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
35049         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
35050
35051 2003-08-12  Paul Eggert  <eggert@twinsun.com>
35052
35053         * config/srclist-update: Add copyright notice.
35054         (remove_id_lines, remove_trailing_blanks): New constants.
35055         (fixfile): Use them to normalize spacing a bit in copied files.
35056         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
35057         Normalize leading white space and remove trailing white space.
35058
35059         * config/texinfo.tex: Sync with texinfo.
35060
35061         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
35062         strtoul.c from libc, to merge coreutils whitespace changes.
35063
35064         * config/srclist.txt: Get the following m4 files from gettext:
35065         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
35066         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
35067         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
35068         wint_t.m4.
35069
35070 2003-08-12  Karl Berry  <karl@gnu.org>
35071
35072         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
35073         been made.
35074
35075 2003-08-11  Paul Eggert  <eggert@twinsun.com>
35076
35077         * modules/gnu-source, m4/gnu-source.m4:
35078         Remove; we're assuming Autoconf 2.54 or later now.
35079         Suggested by Bruno Haible.
35080         * MODULES.html.sh (func_all_modules): Remove gnu-source.
35081
35082 2003-08-11  Bruno Haible  <bruno@clisp.org>
35083
35084         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
35085
35086 2003-08-11  Bruno Haible  <bruno@clisp.org>
35087
35088         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
35089         (vasnprintf): Use it instead of wcslen.
35090
35091 2003-08-11  Bruno Haible  <bruno@clisp.org>
35092
35093         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
35094         value to ensure that _Bool promotes to int. Use #define for _Bool when
35095         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
35096
35097 2003-08-10  Karl Berry  <karl@gnu.org>
35098
35099         * lib/regex.h: update from libc (whitespace fix).
35100
35101 2003-08-09  Paul Eggert  <eggert@twinsun.com>
35102
35103         Merge some files from coreutils.  These changes were
35104         originally made by Jim Meyering.
35105         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
35106         many older Unixes require this.
35107         * lib/alloca.c (alloca): Remove cast to argument of free;
35108         no longer needed in C89.
35109         * lib/alloca_.h, regex.h: Fix white space to match
35110         what GNU indent does.
35111
35112 2003-08-09  Paul Eggert  <eggert@twinsun.com>
35113
35114         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
35115         apparently Emacs's Unicode mode got confused before my 2003-08-05
35116         checkin.
35117
35118 2003-08-08  Paul Eggert  <eggert@twinsun.com>
35119
35120         * m4/extensions.m4: New file.
35121         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
35122         Require gl_USE_SYSTEM_EXTENSIONS.
35123         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
35124         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
35125
35126 2003-08-08  Paul Eggert  <eggert@twinsun.com>
35127
35128         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
35129         * modules/extensions, modules/gnu-source: New files.
35130         * modules/timespec, modules/unlocked-io: Depend on extensions.
35131
35132 2003-08-07  Paul Eggert  <eggert@twinsun.com>
35133
35134         * modules/restrict: New file.
35135         * MODULES.html.sh (func_all_modules): Add restrict.
35136         * modules/regex: Depend on restrict.
35137
35138 2003-08-07  Paul Eggert  <eggert@twinsun.com>
35139
35140         * m4/restrict.m4: New file.
35141         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
35142
35143 2003-08-07  Bruno Haible  <bruno@clisp.org>
35144
35145         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
35146         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
35147
35148 2003-08-07  Bruno Haible  <bruno@clisp.org>
35149
35150         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
35151         makes the module 'getndelim2' compatible with the module 'getline'.
35152
35153 2003-08-05  Paul Eggert  <eggert@twinsun.com>
35154
35155         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
35156         byte with "\201" to avoid glitches when editing that source file
35157         with multi-gnome-terminal.
35158
35159 2003-08-05  Paul Eggert  <eggert@twinsun.com>
35160
35161         * lib/bumpalloc.h: Remove.
35162
35163 2003-08-05  Paul Eggert  <eggert@twinsun.com>
35164
35165         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
35166         * modules/bumpalloc: Remove.
35167
35168 2003-08-04  Paul Eggert  <eggert@twinsun.com>
35169
35170         * lib/getloadavg.c: Change copyright notice and spacing to conform to
35171         GNU coding style.
35172
35173         Merge from coreutils.
35174         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
35175         1. From glibc.
35176         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
35177         from Karl Berry, implemented by Jim Meyering.
35178         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
35179         from Dmitry V. Levin.
35180         Remove anachronistic cast of xrealloc.
35181         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
35182         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
35183         type. Otherwise, it wouldn't compile with at least /bin/cc on
35184         ymp-cray-unicos9.0.2.X.
35185         Combine two mostly-identical uses of alloca into one.
35186         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
35187
35188 2003-08-04  Dave Love  <d.love@dl.ac.uk>
35189
35190         [From Emacs.]
35191
35192         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
35193         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
35194         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
35195         obsolete NLIST_NAME_UNION.
35196         [__GNU__]: Undef BSD and FSCALE.
35197         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
35198
35199 2003-08-03  Paul Eggert  <eggert@twinsun.com>
35200
35201         * lib/stdbool_.h (_Bool): Make it signed char, instead of
35202         an enum type, so that it's guaranteed to promote to int.  See:
35203         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
35204
35205 2003-08-03  Karl Berry  <karl@gnu.org>
35206
35207         * config/depcomp: update from automake.
35208
35209 2003-07-31  Paul Eggert  <eggert@twinsun.com>
35210
35211         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
35212         (strerror): Don't assume that a printable int fits in 14 bytes.
35213
35214 2003-07-31  Bruno Haible  <bruno@clisp.org>
35215
35216         * modules/getpass-gnu: New file.
35217         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
35218
35219 2003-07-31  Bruno Haible  <bruno@clisp.org>
35220
35221         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
35222
35223 2003-07-24  Karl Berry  <karl@gnu.org>
35224
35225         * config/missing: update from automake.
35226
35227 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
35228             Bruno Haible  <bruno@clisp.org>
35229
35230         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
35231         * lib/getline.c (getline, getdelim): Likewise.
35232         Remove _GNU_SOURCE define; now it's defined in config.h through
35233         m4/getline.m4.
35234
35235 2003-07-23  Karl Berry  <karl@gnu.org>
35236
35237         * config/config.sub: update from prep.
35238
35239 2003-07-22  Paul Eggert  <eggert@twinsun.com>
35240
35241         * modules/xalloc (Depends-on): Add exitfail.
35242         * modules/xmemcoll: Likewise.
35243
35244 2003-07-22  Paul Eggert  <eggert@twinsun.com>
35245
35246         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
35247         over-parenthesization in macros.
35248
35249         Sync with coreutils.
35250
35251         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
35252         required by C99.
35253
35254         Use `exit_failure' for xalloc and xmemcoll instead of their own
35255         private exit-failure variables.
35256         * lib/xalloc.h (xalloc_exit_failure): Remove.
35257         * lib/xmalloc.c: Likewise.  Include exitfail.h.
35258         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
35259         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
35260         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
35261         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
35262
35263 2003-07-20  Jim Meyering  <jim@meyering.net>
35264
35265         * modules/closeout (Depends-on): Add exitfail.
35266         Suggestion from Bruno Haible.
35267
35268 2003-07-19  Karl Berry  <karl@gnu.org>
35269
35270         * config/config.sub: update from prep.
35271
35272 2003-07-18  Paul Eggert  <eggert@twinsun.com>
35273
35274         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
35275         Remove.
35276         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
35277         to test that it can stand by itself.  Include "exitfail.h".
35278         Clients should set exit_failure instead.
35279         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
35280
35281 2003-07-18  Bruno Haible  <bruno@clisp.org>
35282
35283         * modules/getndelim2: New file.
35284         * modules/getline: Share files with module getndelim2.
35285         * modules/getnline: Depend on getndelim2 instead of sharing files with
35286         it. Add getnline.c to lib_SOURCES.
35287         * MODULES.html.sh (func_all_modules): Add getndelim2.
35288
35289 2003-07-18  Bruno Haible  <bruno@clisp.org>
35290
35291         * m4/getndelim2.m4: New file.
35292         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
35293         invoke gl_PREREQ_GETNDELIM2.
35294         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
35295         gl_PREREQ_GETNDELIM2.
35296         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
35297         gl_GETNDELIM2.
35298
35299 2003-07-18  Bruno Haible  <bruno@clisp.org>
35300
35301         * lib/getndelim2.h: New file.
35302         * lib/getndelim2.c: Make into a module of its own. Include config.h,
35303         getndelim2.h.
35304         (getndelim2): Make non-static. Change return type to ssize_t.
35305         * lib/getline.h: Change argument names.
35306         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
35307         * lib/getnline.c: Include getndelim2.h.
35308
35309 2003-07-18  Andreas Schwab  <schwab@suse.de>
35310
35311         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
35312
35313 2003-07-17  Karl Berry  <karl@gnu.org>
35314
35315         * config/config.sub: update from prep.
35316
35317 2003-07-17  Bruno Haible  <bruno@clisp.org>
35318
35319         * modules/getnline: New file.
35320         * modules/getline: Add lib/getndelim2.c to source file list.
35321         * MODULES.html.sh (func_all_modules): Add getnline.
35322
35323 2003-07-17  Bruno Haible  <bruno@clisp.org>
35324
35325         * m4/getnline.m4: New file.
35326
35327 2003-07-17  Bruno Haible  <bruno@clisp.org>
35328
35329         * m4/Makefile.am.in: Remove file.
35330         * m4/Makefile.am: Remove file.
35331         * m4/Makefile.in: Remove file.
35332
35333 2003-07-17  Bruno Haible  <bruno@clisp.org>
35334
35335         * lib/getnline.h: New file.
35336         * lib/getnline.c: New file.
35337         * lib/getndelim2.c: New file, extracted from getline.c.
35338         (getndelim2): Renamed from getdelim2, with added nmax argument.
35339         * lib/getline.c: Include getndelim2.c.
35340         (getdelim2): Moved out to getndelim2.c.
35341         (getline, getdelim): Update.
35342
35343 2003-07-17  Bruno Haible  <bruno@clisp.org>
35344
35345         * lib/Makefile.am: Remove file.
35346         * lib/Makefile.in: Remove file.
35347
35348 2003-07-17  Bruno Haible  <bruno@clisp.org>
35349
35350         * configure.in: Remove file.
35351         * Makefile.in: Remove file.
35352
35353 2003-07-17  Bruno Haible  <bruno@clisp.org>
35354
35355         * MODULES.html.sh: Put the </BODY> right before </HTML>.
35356
35357 2003-07-16  Karl Berry  <karl@gnu.org>
35358
35359         * config/srclist-update: was running fixlicense twice, which caused
35360                 texinfo.tex to be nullified for some reason.  Simplify,
35361                 $gplsrc is no longer needed as far as I can see?
35362
35363 2003-07-16  Jim Meyering  <jim@meyering.net>
35364
35365         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
35366
35367 2003-07-15  Paul Eggert  <eggert@twinsun.com>
35368
35369         * config/srclist.txt: Get the following files from gettext-runtime/intl
35370         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
35371         ref-del.sin.  From Bruno Haible.
35372         * config/srclist-update (fixfile): Change grep pattern again, since the
35373         previous fix didn't work (there was another trailing $).  Use
35374         '[$]' to escape the $s.
35375
35376 2003-07-15  Karl Berry  <karl@gnu.org>
35377
35378         * lib/vasnprintf.c: update from gettext.
35379
35380 2003-07-15  Karl Berry  <karl@gnu.org>
35381
35382         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
35383         gets expanded when surrounded by '$'.
35384
35385 2003-07-15  Jim Meyering  <jim@meyering.net>
35386
35387         * modules/save-cwd: Don't depend on error.  From Derek Price.
35388
35389 2003-07-15  Jim Meyering  <jim@meyering.net>
35390
35391         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
35392
35393 2003-07-14  Simon Josefsson  <jas@extundo.com>
35394
35395         * modules/mempcpy: New file.
35396         * MODULES.html.sh (func_all_modules): Add mempcpy.
35397
35398 2003-07-14  Simon Josefsson  <jas@extundo.com>
35399
35400         * m4/mempcpy.m4: New file.
35401
35402 2003-07-14  Simon Josefsson  <jas@extundo.com>
35403
35404         * lib/mempcpy.h: New file.
35405         * lib/mempcpy.c: New file.
35406
35407 2003-07-14  Paul Eggert  <eggert@twinsun.com>
35408
35409         * modules/getdate, modules/posixtm: Depend on mktime.
35410
35411 2003-07-14  Paul Eggert  <eggert@twinsun.com>
35412
35413         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
35414         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
35415         unicodeio.c, unicodeio.h, unlocked-io.h:
35416         Switch from LGPL to GPL.
35417
35418 2003-07-14  Paul Eggert  <eggert@twinsun.com>
35419
35420         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
35421         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
35422         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
35423         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
35424         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
35425         updated automatically by ../config/srclist-update.  This changes
35426         their license from LPGL to GPL.
35427
35428 2003-07-14  Paul Eggert  <eggert@twinsun.com>
35429
35430         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
35431         assumed to refer to the root of the most recent stable gettext version.
35432         * config/srclistvars.sh: Add defaults for eggert.
35433         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
35434         Match "This program" as well as "The program".  This is needed
35435         for gettext.
35436
35437 2003-07-14  Jim Meyering  <jim@meyering.net>
35438
35439         Don't emit diagnostics.  Let callers do that.
35440         * lib/save-cwd.c: Don't include "error.h".
35441         (save_cwd): Don't call error.  Ensure that errno is valid
35442         when returning nonzero.
35443
35444         * lib/save-cwd.h (restore_cwd): Update prototype.
35445         * lib/save-cwd.c (restore_cwd): Remove two parameters.
35446         Simplify.  Don't call error upon failure.  Let callers do that.
35447         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
35448         when auditing is enabled.  But don't bother updating the #if.
35449
35450 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
35451
35452         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
35453         it breaks C++ compilation.
35454         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
35455
35456 2003-07-10  Simon Josefsson  <jas@extundo.com>
35457
35458         * modules/strchrnul (Makefile.am): Add strchrnul.h.
35459
35460 2003-07-10  Jim Meyering  <jim@meyering.net>
35461
35462         * m4/clock_time.m4: Remove trailing blank.
35463         * m4/intmax_t.m4: Likewise.
35464
35465 2003-07-10  Jim Meyering  <jim@meyering.net>
35466
35467         * lib/vasnprintf.c: Remove trailing blanks.
35468         Make cpp indentation consistent.
35469
35470 2003-07-09  Paul Eggert  <eggert@twinsun.com>
35471
35472         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
35473         posixver.c, strftime.c, strnlen.c, strverscmp.c:
35474         Switch from LGPL to GPL.
35475
35476 2003-07-09  Paul Eggert  <eggert@twinsun.com>
35477
35478         * config/srclist.txt: Sort sublists.  Add
35479         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
35480         that differ from gnulib for one reason or another; we'd like this list
35481         to be smaller but for now let's document what we have.
35482
35483 2003-07-08  Paul Eggert  <eggert@twinsun.com>
35484
35485         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
35486         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
35487         and sweeter "eval x=$x".
35488         * config/srclist.txt: Get lib/argp* from glibc.
35489
35490 2003-07-07  Paul Eggert  <eggert@twinsun.com>
35491
35492         * lib/mktime.c: Fix some boundary cases and remove need for floating
35493         point.
35494
35495         Issue a compile-time diagnostic if time_t is floating point, or if
35496         two's complement arithmetic is not in effect, or if arithmetic
35497         right shift does not propagate the sign.  These assumptions were
35498         all in the original code but they weren't checked.
35499
35500         (TIME_T_MIDPOINT, verify): New macros.
35501         (__isleap): Remove; it has integer overflow problems.
35502         (leapyear): New function, without those problems.
35503         (ydhms_tm_diff): Remove; splitting into two parts.
35504         (ydhms_diff): New function, containing the arithmetic part of
35505         the old ydhms_tm_diff function.  Issue a compile-time
35506         diagnostic if we are not using C99 integer division.
35507         Avoid casts when possible.
35508         (guess_time_tm): New function, containing the checking part of
35509         the old ydhms_tm_diff function.  Return the new value, rather than
35510         the difference between it and the old.  Accept a new argument T
35511         so that *T specifies the old value.  Check for overflow in the result.
35512
35513         (__mktime_internal): Use a time_t offset, not a long int offset.
35514         This undoes the 2003-06-04 change, which is no longer needed now
35515         that we have better overflow checking.
35516         (localtime_offset): Likewise.
35517
35518         (__mktime_internal): Avoid harmful overflow on hosts where time_t
35519         and long are 64-bit but int is only 32-bit.
35520         (ydhms_diff): Use long int to store year1 and yday1.
35521         Issue a compile-time diagnostic if long int is not wide enough.
35522
35523         (__mktime_internal): Use long int to store adjusted year and yday.
35524         Use plain C rather than preprocessor commands, if that doesn't
35525         affect efficiency.
35526         Check for overflow (and try to repair) after each probe
35527         rather than checking only at the very end.  This avoids some bugs
35528         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
35529         does not equal GMT offset at maximum time).
35530         Use integer to check for overflow rather than floating point; this
35531         is more portable to non-IEEE hosts, and is a tad faster.
35532         When we detect that we are oscillating between two values,
35533         don't check whether tm_isdst has the requested value, since
35534         we already know the answer.  When tm_isdst has the wrong value,
35535         use a different heuristic to find the right one, based on the
35536         extreme values actually observed in practice in tz2003a,
35537         rather than the (overly optimistic) "previous 3 calendar quarters".
35538
35539         (not_equal_tm, print_tm, check_result): Use "const T" rather than
35540         "T const" to accommodate glibc style.
35541         (check_result): Use less-confusing report format.  "long" -> "long int.
35542         (main): Likewise.
35543         Don't loop if the iteration overflows time_t.
35544         Allow a negative step in the iteration.
35545
35546 2003-07-06  Karl Berry  <karl@gnu.org>
35547
35548         * config/depcomp: update from automake.
35549         * config/config.sub: update from prep.
35550
35551 2003-07-03  Karl Berry  <karl@gnu.org>
35552
35553         * config/config.guess: update from prep.
35554
35555 2003-07-01  Paul Eggert  <eggert@twinsun.com>
35556
35557         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
35558         xreadlink.c now includes it unconditionally.
35559
35560 2003-07-01  Paul Eggert  <eggert@twinsun.com>
35561
35562         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
35563         having it depend on HAVE_SYS_TYPES_H.
35564
35565 2003-07-01  Bruno Haible  <bruno@clisp.org>
35566
35567         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
35568         <sys/types.h> should be sufficient.
35569         Reported by Paul Eggert.
35570
35571 2003-06-26  Karl Berry  <karl@gnu.org>
35572
35573         * config/depcomp: update from automake.
35574
35575 2003-06-26  Bruno Haible  <bruno@clisp.org>
35576
35577         * modules/human: Depend on module stdbool.
35578
35579 2003-06-25  Bruno Haible  <bruno@clisp.org>
35580
35581         * modules/readlink: New file.
35582         * modules/xreadlink: Depend on it.
35583         * MODULES.html.sh (func_all_modules): Add readlink.
35584
35585 2003-06-25  Bruno Haible  <bruno@clisp.org>
35586
35587         * m4/readlink.m4: New file.
35588
35589 2003-06-25  Bruno Haible  <bruno@clisp.org>
35590
35591         * lib/readlink.c: New file.
35592
35593 2003-06-22  Karl Berry  <karl@gnu.org>
35594
35595         * config/srclist.txt: update mkinstalldirs from automake.
35596         * config/mkinstalldirs: update.
35597
35598 2003-06-22  Bruno Haible  <bruno@clisp.org>
35599
35600         Portability to mingw32.
35601         * m4/ssize_t.m4: New file, from GNU gettext.
35602         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
35603         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
35604
35605 2003-06-22  Bruno Haible  <bruno@clisp.org>
35606
35607         * modules/safe-read: Add m4/ssize_t.m4.
35608         * modules/xreadlink: Add m4/ssize_t.m4.
35609
35610 2003-06-20  Bruno Haible  <bruno@clisp.org>
35611
35612         Assume C89, so PARAMS isn't needed.
35613         * lib/unicodeio.h (PARAMS): Remove.
35614         * lib/unicodeio.c: Don't use PARAMS.
35615
35616 2003-06-18  Karl Berry  <karl@gnu.org>
35617
35618         * config/config.{guess,sub}: update from prep.
35619
35620 2003-06-18  Jim Meyering  <jim@meyering.net>
35621
35622         Merge changes from coreutils.
35623         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
35624         Remove explicit declarations of xmalloc and realloc.
35625         Include xalloc.h.
35626         (read_utmp): Remove anachronistic cast of xmalloc.
35627
35628 2003-06-17  Paul Eggert  <eggert@twinsun.com>
35629
35630         Assume C89, so PARAMS isn't needed.
35631         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
35632         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
35633         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
35634         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
35635         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
35636         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
35637         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
35638         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
35639         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
35640         lib/xstrtod.h, lib/xstrtol.h: Likewise.
35641         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
35642         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
35643         no longer needed. Anyway, config.h should always be included before any
35644         other file.
35645
35646 2003-06-11  Simon Josefsson  <jas@extundo.com>
35647
35648         * modules/sysexits: New file.
35649         * MODULES.html.sh (func_all_modules): Add sysexits.
35650
35651 2003-06-11  Simon Josefsson  <jas@extundo.com>
35652
35653         * lib/sysexit_.h: New file.
35654
35655 2003-06-11  Derek Price  <derek@ximbiot.com>
35656
35657         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
35658         necessary.
35659
35660 2003-06-11  Bruno Haible  <bruno@clisp.org>
35661
35662         * m4/sysexits.m4: New file.
35663
35664 2003-06-10  Simon Josefsson  <jas@extundo.com>
35665
35666         * lib/argp.h: New file, from glibc.
35667         * lib/argp-ba.c: New file, from glibc.
35668         * lib/argp-eexst.c: New file, from glibc.
35669         * lib/argp-fmtstream.c: New file, from glibc.
35670         * lib/argp-fmtstream.h: New file, from glibc.
35671         * lib/argp-fs-xinl.c: New file, from glibc.
35672         * lib/argp-help.c: New file, from glibc.
35673         * lib/argp-namefrob.h: New file, from glibc.
35674         * lib/argp-parse.c: New file, from glibc.
35675         * lib/argp-pv.c: New file, from glibc.
35676         * lib/argp-pvh.c: New file, from glibc.
35677         * lib/argp-xinl.c: New file, from glibc.
35678
35679 2003-06-10  Simon Josefsson  <jas@extundo.com>
35680
35681         * modules/strchrnul: New file.
35682
35683 2003-06-10  Simon Josefsson  <jas@extundo.com>
35684
35685         * modules/argp: New file.
35686
35687 2003-06-10  Simon Josefsson  <jas@extundo.com>
35688
35689         * m4/strchrnul.m4: New file.
35690
35691 2003-06-10  Simon Josefsson  <jas@extundo.com>
35692
35693         * lib/strchrnul.h: New file.
35694         * lib/strchrnul.c: New file.
35695
35696 2003-06-10  Bruno Haible  <bruno@clisp.org>
35697
35698         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
35699
35700 2003-06-07  Karl Berry  <karl@gnu.org>
35701
35702         * config/config.{guess,sub}: update from prep.
35703
35704 2003-06-07  Jim Meyering  <jim@meyering.net>
35705
35706         * modules/strtod: Use $(...) notation, not @...@ for
35707         AC_REPLACE'd variables.
35708         * modules/localcharset: Likewise.
35709
35710 2003-06-07  Jim Meyering  <jim@meyering.net>
35711
35712         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
35713         in place of my name in the copyright comment.
35714         Remove definition and uses of __P.
35715
35716         From coreutils.
35717         * lib/stat.c: Don't declare xmalloc explicitly.
35718         Instead, include "xalloc.h".
35719         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
35720         xrealloc, and xcalloc return values.
35721         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
35722         Improve comment.
35723         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
35724
35725 2003-06-07  Bruno Haible  <bruno@clisp.org>
35726
35727         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
35728         avoid AC_CONFIG_LINKS.
35729         * modules/fnmatch (Makefile.am): Use explicit creation rule for
35730         fnmatch.h, to avoid AC_CONFIG_LINKS.
35731         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
35732
35733 2003-06-07  Bruno Haible  <bruno@clisp.org>
35734
35735         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
35736         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
35737         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
35738         directory.
35739         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
35740         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
35741         directory.
35742
35743 2003-06-06  Jim Meyering  <jim@meyering.net>
35744
35745         Merge from coreutils.
35746         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
35747         Consolidate declarations and initializations of *_base* locals.
35748
35749         Merge from coreutils.
35750         This avoids a core dump on systems without GNU putenv,
35751         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
35752         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
35753         (unsetenv): New static function, from GNU libc.
35754         (rpl_putenv): Use it.
35755
35756         * lib/modechange.c: Remove trailing blanks.
35757
35758         Merge from coreutils.
35759         * lib/fsusage.c: Remove declaration of statfs.
35760         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
35761
35762         * lib/posixtm.c: Include <stdbool.h> unconditionally.
35763
35764 2003-06-06  Jim Meyering  <jim@meyering.net>
35765
35766         * lib/stdbool_.h: Renamed from stdbool.h.in.
35767
35768 2003-06-06  Jim Meyering  <jim@meyering.net>
35769             Bruno Haible  <bruno@clisp.org>
35770
35771         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
35772         Adjust Makefile.am snippet not to redirect directly to target.
35773         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
35774
35775 2003-06-05  Paul Eggert  <eggert@twinsun.com>
35776
35777         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
35778         mismatch, look in future quarters as well as past.  This fixes a
35779         bug when processing fall-backwards gaps immediately after a long
35780         period of daylight-saving time.
35781
35782         * lib/mktime.c: Assume freestanding C89 or better.
35783         (HAVE_LIMITS_H): Remove.  Assume it's 1.
35784         (__P): Remove; not used.
35785         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
35786         (mktime, not_equal_tm, print_tm, check_result,
35787         main): Use prototypes.  Use const * where appropriate.
35788         (main): Fix typo in testing code that uncovered by above changes.
35789         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
35790
35791 2003-06-04  Paul Eggert  <eggert@twinsun.com>
35792
35793         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
35794         locale.h, localeconv.  This merges changes from coreutils.
35795
35796         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
35797         It can be removed after the next Autoconf is released.
35798         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
35799         needed.
35800
35801 2003-06-04  Paul Eggert  <eggert@twinsun.com>
35802
35803         * lib/mktime.c: Fix Debian bug 177940
35804         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
35805         (localtime_offset): Now long int, not time_t, because we want it
35806         to be guaranteed to be signed.  All uses changed.
35807         (__mktime_internal): If overflow would occur when adding offset,
35808         don't add it.
35809
35810         Merge 'human' changes from coreutils.  Rewrite to support
35811         locale-specific notations like thousands separators.
35812         * lib/human.c: Simplify authorship notice.
35813         Include human.h immediately after config.h.
35814         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
35815         <limits.h>: Do not include, since human.h does.
35816         (SIZE_MAX, UINTMAX_MAX): New macros.
35817         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
35818         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
35819         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
35820         (power_letter): Renamed from suffixes.
35821         (generate_suffix_backwards): Remove.
35822         (adjust_value): Now takes int style (because of human.h changes)
35823         and long double value (for greater precision on some platforms).
35824         (group_number): New function.
35825         (human_readable): Use it.  Use integer options, not enum.
35826         Put the options before the sizes in the arg list.
35827         Support all the new options.
35828         The old human_readable function has been removed;
35829         use inttostr.h instead.
35830         (human_readable, default_block_size, humblock):
35831         Use uintmax_t, not int, for block sizes.
35832         (human_readable_inexact, block_size_types): Remove.
35833         (block_size_opts): New constant.
35834         (human_options): Renamed from human_block_size, with new signature
35835         that allows block sizes up to UINTMAX_MAX.  All callers changed.
35836         * lib/human.h: Add copyright and authorship notice.
35837         Include <limits.h> and <stdbool.h> unconditionally.
35838         (PARAMS): Remove.  All uses removed.
35839         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
35840         (enum human_inexact_style): Remove tag; now a nameless enum.
35841         (human_floor, human_ceiling, human_round_to_even): Now have
35842         values 2, 0, 1 rather than -1, 1, 0.
35843         (human_group_digits, human_suppress_point_zero, human_autoscale,
35844         human_base_1024, human_SI, human_B): New constants.
35845         (human_readable_inexact, human_block_size): Remove.
35846         (human_readable): Size args are now uintmax_t, not int.
35847         (human_options): New decl.
35848
35849         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
35850         unnecessary now that we assume C89 or better.  This change
35851         imported from coreutils.
35852
35853         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
35854         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
35855         in the 2003-05-30 sync from glibc.
35856
35857         .h files should stand alone, but we shouldn't include <sys/types.h>
35858         if we can get away with just <stddef.h>.
35859
35860         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
35861         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
35862         rather than <sys/types.h>, as we merely need size_t.
35863         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
35864         to get size_t.
35865         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
35866         Include <stdio.h>, to get FILE.
35867         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
35868         memcasecmp.h has included <stddef.h> and all we need is size_t.
35869         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
35870         our interface, instead of including <sys/types.h>
35871
35872 2003-06-04  Paul Eggert  <eggert@twinsun.com>
35873
35874         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
35875         now, as glibc mktime is buggy on non-glibc systems.
35876
35877 2003-06-03  Karl Berry  <karl@gnu.org>
35878
35879         * config/config.sub: update from prep.
35880
35881 2003-06-02  Paul Eggert  <eggert@twinsun.com>
35882
35883         [from coreutils]
35884         Fix some minor time-related bugs with POSIX time arguments.
35885         Some valid time stamps were being rejected (notably -1, and
35886         time stamps before 1900 on 64-bit hosts).  And some invalid
35887         time stamps were being accepted, e.g. September 31.
35888
35889         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
35890         that we can return (time_t) -1 successfully.
35891         * lib/posixtm.c: Likewise.
35892         [HAVE_STDBOOL_H]: Include <stdbool.h>.
35893         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
35894         (t): Remove static var.
35895         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
35896         of static var.  All uses changed.
35897         (year): Do not reject years before 1900; they can occur with
35898         64-bit time_t.
35899         (posix_time_parse): Do not check for out-of-range components;
35900         that is now the caller's responsibility, since our checks were
35901         only approximations.
35902         (posixtime): Use mktime to check for out-of-range components,
35903         since it knows them exactly.
35904         If mktime returns (time_t) -1, check whether an error actually occurred
35905         by invoking localtime on -1.
35906         (main) [TEST_POSIXTIME]: Check for input data errors, and report
35907         posixtime failures better.
35908         Improve the test data (in comments only).
35909
35910 2003-06-02  Karl Berry  <karl@gnu.org>
35911
35912         * config/mkinstalldirs (version): new variable.
35913         (--version): new option.
35914         (usage): improve message.
35915
35916 2003-05-30  Karl Berry  <karl@gnu.org>
35917
35918         * lib/mktime.c: update from libc.
35919
35920 2003-05-30  Bruno Haible  <bruno@clisp.org>
35921
35922         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
35923         * config/config.rpath: Upgrade to gettext-0.12.1.
35924
35925 2003-05-30  Bruno Haible  <bruno@clisp.org>
35926
35927         * m4/gettext.m4: Upgrade to gettext-0.12.1.
35928         * m4/nls.m4: New file, from gettext-0.12.1.
35929         * m4/po.m4: New file, from gettext-0.12.1.
35930         * m4/progtest.m4: Upgrade to gettext-0.12.1.
35931
35932 2003-05-30  Bruno Haible  <bruno@clisp.org>
35933
35934         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
35935         * lib/localcharset.h: Likewise.
35936         * lib/localcharset.c: Likewise.
35937
35938 2003-05-29  Karl Berry  <karl@gnu.org>
35939
35940         * config/config.rpath: update from gettext.
35941
35942 2003-05-28  Paul Eggert  <eggert@twinsun.com>
35943
35944         Assume the headers required for C89 freestanding compilers.
35945         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
35946         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
35947         * m4/human.m4 (gl_HUMAN): Likewise.
35948         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
35949         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
35950         * m4/userspec.m4 (gl_USERSPEC): Likewise.
35951         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
35952         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
35953         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
35954
35955 2003-05-28  Paul Eggert  <eggert@twinsun.com>
35956
35957         Assume the headers required for C89 freestanding compilers.
35958         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
35959         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
35960         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
35961         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
35962         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
35963         define, since <limits.h> is guaranteed to do that.
35964         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
35965         * lib/exclude.c: Include <stdbool.h> unconditionally.
35966         * lib/tempname.c: Include <stddef.h> unconditionally.
35967         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
35968         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
35969         <stddef.h> does that.
35970         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
35971         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
35972         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
35973         needed.
35974         * lib/xstrtol.c: Likewise.
35975         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
35976         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
35977
35978         * lib/addext.c (addext): Use assignment rather than cast, to avoid
35979         warnings on some platforms.
35980
35981         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
35982         arbitrarily.
35983
35984 2003-05-26  Jim Meyering  <jim@meyering.net>
35985
35986         Merge in a change from coreutils:
35987         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
35988         that is guaranteed to be `no'.  Use `no_such_member' to indicate
35989         that condition, rather than `-1' which is slightly misleading.
35990         Change the name of the cache variable to have the gl_ prefix.
35991         Prompted by a patch from Richard Dawe for DJGPP.
35992
35993 2003-05-24  Karl Berry  <karl@gnu.org>
35994
35995         * config/config.guess: update from prep.
35996
35997 2003-05-22  Karl Berry  <karl@gnu.org>
35998
35999         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
36000
36001 2003-05-20  Karl Berry  <karl@gnu.org>
36002
36003         * config/config.guess: update from prep.
36004
36005 2003-05-18  Karl Berry  <karl@gnu.org>
36006
36007         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
36008         might actually be set by the user.
36009
36010         * config/depcomp, install-sh, mdate-sh: update from automake.
36011
36012 2003-05-17  Bruno Haible  <bruno@clisp.org>
36013
36014         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
36015         invalid expansion for AC_EGREP_CPP.
36016         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
36017         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
36018         Suggested by Akim Demaille <akim@epita.fr> in
36019         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
36020
36021 2003-05-12  Jim Meyering  <jim@meyering.net>
36022
36023         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
36024         the space-padded-by-default conversion specifiers, %e, %k, %l.
36025
36026 2003-05-12  Bruno Haible  <bruno@clisp.org>
36027
36028         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
36029         the string is longer than 4 KB.
36030
36031 2003-05-11  Karl Berry  <karl@gnu.org>
36032
36033         * config/config.{guess,sub}: update from prep.
36034
36035 2003-05-09  Bruno Haible  <bruno@clisp.org>
36036
36037         * modules/error: Add m4/strerror_r.m4 to file list.
36038
36039 2003-05-03  Bruno Haible  <bruno@clisp.org>
36040
36041         Upgrade to Unicode-4.0.
36042         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
36043         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
36044         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
36045         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
36046         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
36047         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
36048         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
36049         Change width of U+E0100..U+E01EF from 1 to 0.
36050
36051 2003-04-25  Jim Meyering  <jim@meyering.net>
36052
36053         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
36054         of type size_t, not int.
36055
36056 2003-04-25  Bruno Haible  <bruno@clisp.org>
36057
36058         * lib/copy-file.c: Include <stddef.h>, for size_t.
36059
36060 2003-04-21  Paul Eggert  <eggert@twinsun.com>
36061
36062         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
36063         code which expansion is under static control.  Patch imported from
36064         Akim Demaille's patch to Bison; see
36065         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
36066
36067 2003-04-14  Bruno Haible  <bruno@clisp.org>
36068
36069         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
36070
36071 2003-04-11  Jim Meyering  <jim@meyering.net>
36072
36073         Merge changes from Coreutils.
36074
36075         2003-03-22  Jim Meyering  <jim@meyering.net>
36076
36077         * lib/strftime.c (widen): Cast alloca return value to proper type.
36078
36079         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
36080
36081         From GNU libc.
36082         * lib/strftime.c (my_strftime): Handle very large width
36083         specifications for numeric values correctly.  Improve checks for
36084         overflow.
36085
36086         2003-01-19  Jim Meyering  <jim@meyering.net>
36087
36088         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
36089         definitions.
36090         (nl_get_alt_digit) [! defined my_strftime]: Define.
36091         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
36092         _nl_get_alt_digit and _nl_get_walt_digit.
36093
36094         * lib/strftime.c (my_strftime): Merge in locale-related changes from
36095         libc. These changes have no effect outside of _LIBC.
36096
36097 2003-04-10  Bruno Haible  <bruno@clisp.org>
36098
36099         * modules/findprog: New file.
36100         * MODULES.html.sh (func_all_modules): Add it.
36101
36102 2003-04-10  Bruno Haible  <bruno@clisp.org>
36103
36104         * m4/findprog.m4: New file.
36105         * m4/eaccess.m4: New file.
36106
36107 2003-04-10  Bruno Haible  <bruno@clisp.org>
36108
36109         * lib/findprog.h: New file, from GNU gettext.
36110         * lib/findprog.c: New file, from GNU gettext.
36111
36112 2003-04-05  Jim Meyering  <jim@meyering.net>
36113
36114         Merge changes from Coreutils.
36115
36116         * lib/exclude.h (PARAMS): Remove definition and uses.
36117         * lib/exclude.c: Remove uses of `PARAMS'.
36118
36119         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
36120         Add test-cases for DOS filenames. Declare program_name.
36121         (main): Set up program_name.  Patch by Rich Dawe.
36122
36123         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
36124         error from mntctl.
36125         Use mntctl's return value to drive the entry-processing loop, since
36126         we can't rely on the value of the vmt_length member in the last
36127         entry.  On some systems doing so could result in exhausting
36128         virtual memory.  Based in part on a patch from Mike Jetzer.
36129
36130 2003-04-04  Bruno Haible  <bruno@clisp.org>
36131
36132         * modules/linebreak: New file.
36133         * MODULES.html.sh (func_all_modules): Add it.
36134
36135 2003-04-04  Bruno Haible  <bruno@clisp.org>
36136
36137         * m4/linebreak.m4: New file.
36138
36139 2003-04-04  Bruno Haible  <bruno@clisp.org>
36140
36141         * lib/linebreak.h: New file, from GNU gettext.
36142         * lib/linebreak.c: New file, from GNU gettext with slight
36143         modifications.
36144         * lib/lbrkprop.h: New file, from GNU gettext.
36145
36146 2003-04-03  Bruno Haible  <bruno@clisp.org>
36147
36148         * modules/utf8-ucs4: New file.
36149         * modules/utf16-ucs4: New file.
36150         * modules/ucs4-utf8: New file.
36151         * modules/ucs4-utf16: New file.
36152         * MODULES.html.sh (func_all_modules): Add them.
36153
36154 2003-04-03  Bruno Haible  <bruno@clisp.org>
36155
36156         * m4/utf-ucs4.m4: New file.
36157         * m4/ucs4-utf.m4: New file.
36158
36159 2003-04-03  Bruno Haible  <bruno@clisp.org>
36160
36161         * lib/utf8-ucs4.h: New file, from GNU gettext.
36162         * lib/utf16-ucs4.h: New file, from GNU gettext.
36163         * lib/ucs4-utf8.h: New file, from GNU gettext.
36164         * lib/ucs4-utf16.h: New file, from GNU gettext.
36165
36166 2003-04-02  Bruno Haible  <bruno@clisp.org>
36167
36168         * modules/binary-io: New file.
36169         * MODULES.html.sh (func_all_modules): Add it.
36170
36171 2003-04-02  Bruno Haible  <bruno@clisp.org>
36172
36173         * lib/binary-io.h: New file, from GNU gettext.
36174
36175 2003-04-01  Bruno Haible  <bruno@clisp.org>
36176
36177         * modules/pathname: New file.
36178         * MODULES.html.sh (func_all_modules): Add it.
36179
36180 2003-04-01  Bruno Haible  <bruno@clisp.org>
36181
36182         * lib/pathname.h: New file, from GNU gettext.
36183         * lib/concatpath.c: New file, from GNU gettext.
36184
36185 2003-03-30  Bruno Haible  <bruno@clisp.org>
36186
36187         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
36188
36189 2003-03-30  Bruno Haible  <bruno@clisp.org>
36190
36191         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
36192         function chown() doesn't exist.
36193
36194 2003-03-28  Bruno Haible  <bruno@clisp.org>
36195
36196         * modules/copy-file: New file.
36197         * MODULES.html.sh (func_all_modules): Add it.
36198
36199 2003-03-28  Bruno Haible  <bruno@clisp.org>
36200
36201         * m4/copy-file.m4: New file.
36202
36203 2003-03-28  Bruno Haible  <bruno@clisp.org>
36204
36205         * lib/copy-file.h: New file, from GNU gettext.
36206         * lib/copy-file.c: New file, from GNU gettext.
36207
36208 2003-03-18  Jim Meyering  <jim@meyering.net>
36209
36210         * lib/quote.c (quote_n): Fix typo in comment.
36211
36212 2003-03-18  Bruno Haible  <bruno@clisp.org>
36213
36214         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
36215         checking.
36216         * m4/onceonly_2_57.m4: Likewise.
36217
36218 2003-03-17  Bruno Haible  <bruno@clisp.org>
36219
36220         * m4/onceonly.m4: Require autoconf 2.54 or newer.
36221         (m4_quote): Remove macro.
36222         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
36223
36224 2003-03-14  Jim Meyering  <jim@meyering.net>
36225
36226         Merge changes from Coreutils.
36227         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
36228         to be const, in order to avoid warnings.
36229         (obstack_room): Likewise.
36230         (obstack_empty_p): Likewise.
36231
36232 2003-03-14  Bruno Haible  <bruno@clisp.org>
36233
36234         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
36235         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
36236
36237 2003-03-13  Paul Eggert  <eggert@twinsun.com>
36238
36239         Merge changes from Bison.
36240         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
36241         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
36242         when compiling Bison 1.875's `bitset bset = obstack_alloc
36243         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
36244         * lib/hash.c: Include <stdbool.h> unconditionally.
36245
36246 2003-03-13  Paul Eggert  <eggert@twinsun.com>
36247
36248         * m4/onceonly.m4 (m4_quote): New macro.
36249         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
36250         Quote AC_FOREACH variable-expansions properly.
36251
36252 2003-03-13  Paul Eggert  <eggert@twinsun.com>
36253
36254         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
36255
36256 2003-03-09  Paul Eggert  <eggert@twinsun.com>
36257
36258         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
36259         Reported by Bruce Becker; see:
36260         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
36261
36262 2003-03-03  Paul Eggert  <eggert@twinsun.com>
36263             Bruno Haible  <bruno@clisp.org>
36264
36265         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
36266         Reported by John Hughes, see
36267         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
36268
36269 2003-02-20  Bruno Haible  <bruno@clisp.org>
36270
36271         * MODULES.html.sh (func_all_modules): Add poll.
36272
36273 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
36274
36275         * modules/poll: New file.
36276
36277 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
36278
36279         * lib/poll_.h: New file.
36280         * lib/poll.c: New file.
36281
36282 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
36283
36284         * m4/poll.m4: New file.
36285
36286 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
36287
36288         * modules/mathl: New file.
36289
36290 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
36291
36292         * lib/mathl.h: New file.
36293         * lib/acosl.c: New file.
36294         * lib/asinl.c: New file.
36295         * lib/atanl.c: New file.
36296         * lib/ceill.c: New file.
36297         * lib/cosl.c: New file.
36298         * lib/expl.c: New file.
36299         * lib/floorl.c: New file.
36300         * lib/frexpl.c: New file.
36301         * lib/ldexpl.c: New file.
36302         * lib/logl.c: New file.
36303         * lib/sincosl.c: New file.
36304         * lib/sinl.c: New file.
36305         * lib/sqrtl.c: New file.
36306         * lib/tanl.c: New file.
36307         * lib/trigl.c: New file.
36308         * lib/trigl.h: New file.
36309
36310 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
36311
36312         * m4/mathl.m4: New file.
36313
36314 2003-02-18  Bruno Haible  <bruno@clisp.org>
36315
36316         * MODULES.html.sh (func_all_modules): Add mathl.
36317
36318 2003-02-17  Bruno Haible  <bruno@clisp.org>
36319
36320         * modules/mkdtemp: New module.
36321         * MODULES.html.sh (func_all_modules): Add it.
36322
36323 2003-02-17  Bruno Haible  <bruno@clisp.org>
36324
36325         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
36326
36327 2003-02-17  Bruno Haible  <bruno@clisp.org>
36328
36329         * lib/mkdtemp.h: New file, from GNU gettext.
36330         * lib/mkdtemp.c: New file, from GNU gettext.
36331
36332 2003-02-02  Jim Meyering  <jim@meyering.net>
36333
36334         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
36335         e.g. glibc-2.2.93.
36336
36337 2003-01-31  Bruno Haible  <bruno@clisp.org>
36338
36339         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
36340         'rpl_rename'.
36341         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
36342         'rpl_strnlen'.
36343         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
36344         'rpl_strtod'.
36345         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
36346         'rpl_utime'.
36347
36348 2003-01-31  Bruno Haible  <bruno@clisp.org>
36349
36350         * lib/rename.c: #undef rename before defining rpl_rename.
36351         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
36352
36353 2003-01-30  Bruno Haible  <bruno@clisp.org>
36354
36355         * modules/vasnprintf, modules/vasprintf: New modules.
36356         * MODULES.html.sh (func_all_modules): Add them.
36357
36358 2003-01-30  Bruno Haible  <bruno@clisp.org>
36359
36360         * m4/signed.m4: New file, from GNU gettext.
36361         * m4/longdouble.m4: New file, from GNU gettext.
36362         * m4/wchar_t.m4: New file, from GNU gettext.
36363         * m4/wint_t.m4: New file, from GNU gettext.
36364         * m4/vasnprintf.m4: New file.
36365         * m4/vasprintf.m4: New file.
36366
36367 2003-01-30  Bruno Haible  <bruno@clisp.org>
36368
36369         * lib/printf-args.h: New file, from GNU gettext.
36370         * lib/printf-args.c: New file, from GNU gettext.
36371         * lib/printf-parse.h: New file, from GNU gettext.
36372         * lib/printf-parse.c: New file, from GNU gettext.
36373         * lib/vasnprintf.h: New file, from GNU gettext.
36374         * lib/vasnprintf.c: New file, from GNU gettext.
36375         * lib/asnprintf.c: New file, from GNU gettext.
36376         * lib/vasprintf.h: New file, from GNU gettext with modifications.
36377         * lib/vasprintf.c: New file, from GNU gettext.
36378         * lib/asprintf.c: New file, from GNU gettext.
36379
36380 2003-01-29  Bruno Haible  <bruno@clisp.org>
36381
36382         * modules/stpncpy: New module.
36383         * MODULES.html.sh (func_all_modules): Add it.
36384
36385 2003-01-29  Bruno Haible  <bruno@clisp.org>
36386
36387         * m4/stpncpy.m4: New file.
36388
36389 2003-01-29  Bruno Haible  <bruno@clisp.org>
36390
36391         * lib/stpncpy.h: New file, from GNU gettext with modifications.
36392         * lib/stpncpy.c: New file, from GNU gettext with modifications.
36393
36394 2003-01-28  Bruno Haible  <bruno@clisp.org>
36395
36396         * modules/c-ctype: New module.
36397         * MODULES.html.sh (func_all_modules): Add it.
36398
36399 2003-01-28  Bruno Haible  <bruno@clisp.org>
36400
36401         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
36402         Paul Eggert.
36403         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
36404         Paul Eggert.
36405
36406 2003-01-27  Bruno Haible  <bruno@clisp.org>
36407
36408         * modules/xsetenv: New module.
36409         * MODULES.html.sh (func_all_modules): Add it.
36410
36411 2003-01-27  Bruno Haible  <bruno@clisp.org>
36412
36413         * lib/xsetenv.h: New file, from GNU gettext.
36414         * lib/xsetenv.c: New file, from GNU gettext.
36415
36416 2003-01-23  Jim Meyering  <jim@meyering.net>
36417
36418         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
36419         from working on systems without dirfd (at least Irix and OSF1/Tru64).
36420
36421 2003-01-23  Bruno Haible  <bruno@clisp.org>
36422
36423         * modules/minmax: New module.
36424         * MODULES.html.sh (func_all_modules): Add it.
36425
36426 2003-01-23  Bruno Haible  <bruno@clisp.org>
36427
36428         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
36429         Eggert.
36430
36431 2003-01-22  Bruno Haible  <bruno@clisp.org>
36432
36433         * modules/exit: New module.
36434         * MODULES.html.sh (func_all_modules): Add it.
36435
36436 2003-01-22  Bruno Haible  <bruno@clisp.org>
36437
36438         * lib/exit.h: New file, from GNU gettext.
36439
36440 2003-01-19  Bruno Haible  <bruno@clisp.org>
36441
36442         * gnulib-tool: Recognize option --extract-maintainer.
36443         (func_get_maintainer): New function.
36444         * modules/*: Add Maintainer entry.
36445
36446 2003-01-16  Jim Meyering  <jim@meyering.net>
36447
36448         * m4/regex.m4: The `regex' struct is both input and output.
36449         Initialize it before each use.  Patch by Tim Waugh.
36450
36451 2003-01-16  Bruno Haible  <bruno@clisp.org>
36452
36453         * MODULES.html.sh: Add a table of contents. Add the module name as
36454         leftmost column. Add hyperlinks.
36455
36456 2003-01-15  Bruno Haible  <bruno@clisp.org>
36457
36458         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
36459
36460 2003-01-15  Bruno Haible  <bruno@clisp.org>
36461
36462         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
36463         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
36464         suffix.
36465
36466 2003-01-15  Bruno Haible  <bruno@clisp.org>
36467
36468         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
36469
36470 2003-01-15  Bruno Haible  <bruno@clisp.org>
36471
36472         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
36473         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
36474
36475 2003-01-14  Jim Meyering  <jim@meyering.net>
36476
36477         * lib/same.c (same_name): Tweak a comment.
36478
36479 2003-01-14  Bruno Haible  <bruno@clisp.org>
36480
36481         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
36482         when a string comparison is sufficient.
36483
36484 2003-01-14  Bruno Haible  <bruno@clisp.org>
36485
36486         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
36487         'unsigned int'.
36488
36489 2003-01-14  Bruno Haible  <bruno@clisp.org>
36490
36491         * lib/hash-pjw.c: Add comment about low quality of this function.
36492
36493 2003-01-13  Bruno Haible  <bruno@clisp.org>
36494
36495         * modules/stpcpy: Distribute lib/stpcpy.h.
36496         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
36497
36498 2003-01-13  Bruno Haible  <bruno@clisp.org>
36499
36500         * modules/*: Add a description.
36501         * modules/strpbrk: Fix Makefile.am snippet.
36502         * modules/strtoimax: Fix dependencies.
36503         * modules/strtoumax: Likewise.
36504
36505 2003-01-13  Bruno Haible  <bruno@clisp.org>
36506
36507         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
36508         * modules/alloca (Makefile.am): All object files depend on alloca.h.
36509         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
36510
36511 2003-01-13  Bruno Haible  <bruno@clisp.org>
36512
36513         * gnulib-tool (func_create_testdir): Store config/* files in the main
36514         directory.
36515         * config.rpath: Move to ...
36516         * config/config.rpath: ... here.
36517         * modules/gettext: Contains config/config.rpath, not config.rpath.
36518         * modules/iconv: Likewise.
36519
36520 2003-01-12  Paul Eggert  <eggert@twinsun.com>
36521
36522         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
36523         to avoid collisions with libcurses and libreadline.
36524
36525         * m4/getstr.m4: Remove.
36526         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
36527
36528 2003-01-12  Paul Eggert  <eggert@twinsun.com>
36529
36530         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
36531         to avoid collisions with libcurses and libreadline.
36532
36533         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
36534         * lib/getstr.h, getstr.c: Remove.
36535         * lib/getline.c: Include "getline.h", to check interface.
36536         Move body of old getstr.c here: this defines MIN_CHUNK and
36537         declares getdelim2, which is renamed from getstr.
36538         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
36539
36540         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
36541         All uses changed.
36542         * lib/linebuffer.h: Likewise.
36543         (readline): Remove backward-compatibility macro.
36544
36545 2003-01-12  Paul Eggert  <eggert@twinsun.com>
36546
36547         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
36548         to avoid collisions with libcurses and libreadline.
36549         * getstr: Remove.
36550         * MODULES.html.sh: Remove getstr.
36551         * modules/getline: Depend on unlocked-io, not getstr.
36552
36553 2003-01-12  Jim Meyering  <jim@meyering.net>
36554
36555         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
36556
36557 2003-01-10  Bruno Haible  <bruno@clisp.org>
36558
36559         * modules/alloca: Change Makefile.am requirements. Simplify Include
36560         requirements. Add lib/alloca_.h to file list.
36561
36562 2003-01-10  Bruno Haible  <bruno@clisp.org>
36563
36564         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
36565
36566 2003-01-10  Bruno Haible  <bruno@clisp.org>
36567
36568         * lib/alloca_.h: New file.
36569         * lib/getdate.y: Unconditionally include alloca.h.
36570         * lib/makepath.c: Likewise.
36571         * lib/setenv.c: Likewise.
36572         * lib/userspec.c: Likewise.
36573
36574 2003-01-09  Karl Berry  <karl@gnu.org>
36575
36576         * MODULES.html.sh: include `dirname $0` in PATH, to find
36577         gnulib-tool.
36578
36579 2003-01-09  Bruno Haible  <bruno@clisp.org>
36580
36581         * modules/stdbool: Change configure.ac, Makefile.am requirements.
36582         Simplify Include requirements. Add lib/stdbool.h.in to file list.
36583
36584 2003-01-09  Bruno Haible  <bruno@clisp.org>
36585
36586         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
36587
36588 2003-01-09  Bruno Haible  <bruno@clisp.org>
36589
36590         * lib/stdbool.h.in: New file.
36591
36592 2003-01-09  Bruno Haible  <bruno@clisp.org>
36593
36594         * gnulib-tool (func_all_modules): Ignore files ending in ~.
36595         * MODULES.html.sh: Likewise.
36596
36597 2003-01-08  Jim Meyering  <jim@meyering.net>
36598
36599         * lib/full-write.c: Undefine and define-away `const' after inclusion
36600         of errno.h, not before.  Suggestion from Bruno Haible.
36601
36602 2003-01-08  Bruno Haible  <bruno@clisp.org>
36603
36604         * modules/full-read: Depend on full-write.
36605
36606 2003-01-08  Bruno Haible  <bruno@clisp.org>
36607
36608         * lib/safe-read.c: Include specification header first, to ensure its
36609         selfcontainedness.
36610         * lib/full-write.c: Likewise.
36611
36612 2003-01-07  Jim Meyering  <jim@meyering.net>
36613
36614         * lib/full-write.c: Rework so that it may serve to define full_read,
36615         too.
36616         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
36617
36618 2003-01-07  Bruno Haible  <bruno@clisp.org>
36619
36620         * lib/strtoimax.c: Include <stdint.h> as an alternative to
36621         <inttypes.h>.
36622         * lib/xstrtol.h: Likewise.
36623         * lib/xstrtoimax.c: Likewise.
36624         * lib/xstrtoumax.c: Likewise.
36625         * lib/human.h: Likewise.
36626
36627         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
36628         on systems that have <inttypes.h> but not <stdint.h>.
36629
36630 2003-01-07  Bruno Haible  <bruno@clisp.org>
36631
36632         * MODULES.html.sh: Add copyright notice.
36633         (missed_files): Omit CVS directory entries.
36634         (func_module): Make it work with sed-3.02.
36635         * MODULES.txt: Remove file.
36636
36637 2003-01-06  Jim Meyering  <jim@meyering.net>
36638
36639         * lib/version-etc.c: Update year in translatable copyright string.
36640
36641 2003-01-03  Karl Berry  <karl@gnu.org>
36642
36643         * config/config.{guess,sub}: update from prep.
36644
36645 2003-01-02  Karl Berry  <karl@gnu.org>
36646
36647         * doc/COPYING.DOC: belatedly updated to 1.2.
36648
36649 2003-01-01  Karl Berry  <karl@gnu.org>
36650
36651         * gnulib-tool (func_verify_module): report module name $module in
36652         error message, not $1.
36653         * gnulib-tool (create-testdir): don't complain if destdir couldn't
36654         be created, only if it doesn't exist.
36655         * gnulib-tool (last_checkin_date): don't expand the $Date here.
36656
36657 2002-12-31  Paul Eggert  <eggert@twinsun.com>
36658
36659         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
36660
36661 2002-12-31  Paul Eggert  <eggert@twinsun.com>
36662
36663         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
36664         memcmp if strcoll doesn't work.
36665
36666 2002-12-31  Bruno Haible  <bruno@clisp.org>
36667
36668         * lib/utime.c (utime_null): No need to call ftruncate if the file was
36669         nonempty.
36670
36671 2002-12-31  Bruno Haible  <bruno@clisp.org>
36672
36673         * lib/memcoll.c (STRCOLL): New macro.
36674         (memcoll): Use it.
36675
36676 2002-12-31  Bruno Haible  <bruno@clisp.org>
36677
36678         * lib/localcharset.h: New file.
36679         * lib/localcharset.c: Include it.
36680         * lib/unicodeio.c: Likewise.
36681
36682 2002-12-31  Bruno Haible  <bruno@clisp.org>
36683
36684         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
36685         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
36686
36687 2002-12-31  Bruno Haible  <bruno@clisp.org>
36688
36689         * lib/getline.h: Include <stddef.h>, for size_t.
36690
36691         * lib/unicodeio.h: Include <stddef.h>, for size_t.
36692         * lib/unicodeio.c: Don't include <stddef.h>.
36693
36694 2002-12-31  Bruno Haible  <bruno@clisp.org>
36695
36696         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
36697         HAVE_TM_ZONE.
36698
36699 2002-12-24  Karl Berry  <karl@gnu.org>
36700
36701         * config/config.guess: update from prep.
36702
36703 2002-12-24  Bruno Haible  <bruno@clisp.org>
36704
36705         General infrasructure.
36706         * m4/README: Rewritten.
36707         * m4/onceonly.m4: New file.
36708         * m4/onceonly_2_57.m4: New file.
36709
36710         Module atexit.
36711         * m4/atexit.m4: New file.
36712
36713         Module strtod.
36714         * m4/strtod.m4: New file.
36715
36716         Module strtol.
36717         * m4/strtol.m4: New file.
36718
36719         Module strtoul.
36720         * m4/strtoul.m4: New file.
36721
36722         Module memchr.
36723         * m4/memchr.m4: New file.
36724
36725         Module memcmp.
36726         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
36727         (jm_FUNC_MEMCMP): Invoke it.
36728
36729         Module memcpy.
36730         * m4/memcpy.m4: New file.
36731
36732         Module memmove.
36733         * m4/memmove.m4: New file.
36734
36735         Module memset.
36736         * m4/memset.m4: New file.
36737
36738         Module strcspn.
36739         * m4/strcspn.m4: New file.
36740
36741         Module strpbrk.
36742         * m4/strpbrk.m4: New file.
36743
36744         Module strstr.
36745         * m4/strstr.m4: New file.
36746
36747         Module strerror.
36748         * m4/strerror.m4: New file.
36749
36750         Module mktime.
36751         * m4/mktime.m4: Renamed from jm-mktime.m4.
36752         (gl_PREREQ_MKTIME): New macro.
36753         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
36754
36755         Module malloc.
36756         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
36757         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
36758         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
36759
36760         Module realloc.
36761         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
36762         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
36763         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
36764
36765         Module strftime.
36766         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
36767         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
36768         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
36769         gl_TM_GMTOFF.
36770         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
36771
36772         Module xalloc.
36773         * m4/xalloc.m4: New file.
36774
36775         Module alloca.
36776         * m4/alloca.m4: New file.
36777
36778         Module putenv.
36779         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
36780         (jm_FUNC_PUTENV): Invoke it.
36781
36782         Module setenv.
36783         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
36784         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
36785         when invoked twice.
36786         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
36787         gt_FUNC_SETENV.
36788
36789         Module memrchr.
36790         * m4/memrchr.m4: New file.
36791
36792         Module stpcpy.
36793         * m4/stpcpy.m4: New file.
36794
36795         Module strcase.
36796         * m4/strcase.m4: New file.
36797
36798         Module strdup.
36799         * m4/strdup.m4: New file.
36800
36801         Module strnlen.
36802         * m4/strnlen.m4: New file.
36803
36804         Module strndup.
36805         * m4/strndup.m4: New file.
36806
36807         Module xstrtod.
36808         * m4/xstrtod.m4: New file.
36809
36810         Module xstrtol.
36811         * m4/xstrtol.m4: New file.
36812
36813         Module getdate.
36814         * m4/getdate.m4: New file.
36815
36816         Module unlocked-io.
36817         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
36818         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
36819         * m4/jm-glibc-io.m4n: Remove file.
36820
36821         Module long-options.
36822         * m4/long-options.m4: New file.
36823
36824         Module md5.
36825         * m4/md5.m4: New file.
36826
36827         Module sha.
36828         * m4/sha.m4: New file.
36829
36830         Module getstr.
36831         * m4/getstr.m4: New file.
36832
36833         Module getline.
36834         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
36835         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
36836         <sys/types.h>, for size_t. Use the function name gnu_getline, not
36837         simply getline. Infoke gl_PREREQ_GETLINE.
36838
36839         Module obstack.
36840         * m4/obstack.m4: New file.
36841
36842         Module hash.
36843         * m4/hash.m4: New file.
36844
36845         Module readtokens.
36846         * m4/readtokens.m4: New file.
36847
36848         Module strverscmp.
36849         * m4/strverscmp.m4: New file.
36850
36851         Module stdbool.
36852         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
36853         OSF/1.
36854
36855         Module strtoll.
36856         * m4/strtoll.m4: New file.
36857
36858         Module strtoull.
36859         * m4/strtoull.m4: New file.
36860
36861         Module strtoimax.
36862         * m4/strtoimax.m4: New file.
36863
36864         Module strtoumax.
36865         * m4/strtoumax.m4: New file.
36866
36867         Module xstrtoimax.
36868         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
36869         jm_AC_PREREQ_XSTRTOIMAX.
36870         Moved the strtol prerequisites to strtol.m4.
36871         Moved the strtoll prerequisites to strtoll.m4.
36872         Moved the strtoimax prerequisites to strtoimax.m4.
36873
36874         Module xstrtoumax.
36875         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
36876         jm_AC_PREREQ_XSTRTOUMAX.
36877         Moved the strtoul prerequisites to strtoul.m4.
36878         Moved the strtoull prerequisites to strtoull.m4.
36879         Moved the strtoumax prerequisites to strtoumax.m4.
36880
36881         Module chown.
36882         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
36883         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
36884
36885         Module dup2.
36886         * m4/dup2.m4: New file.
36887
36888         Module ftruncate.
36889         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
36890         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
36891
36892         Module getgroups.
36893         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
36894         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
36895
36896         Module gettimeofday.
36897         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
36898         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
36899         gl_PREREQ_GETTIMEOFDAY.
36900
36901         Module mkdir.
36902         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
36903         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
36904
36905         Module mkstemp.
36906         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
36907         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
36908         jm_AC_TYPE_UINTMAX_T.
36909         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
36910
36911         Module stat.
36912         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
36913         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
36914
36915         Module lstat.
36916         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
36917         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
36918
36919         Module timespec.
36920         * m4/timespec.m4 (gl_TIMESPEC): New macro.
36921         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
36922         * m4/st_mtim.m4: Indentation.
36923
36924         Module nanosleep.
36925         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
36926         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
36927         gl_PREREQ_NANOSLEEP.
36928
36929         Module regex.
36930         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
36931         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
36932         (gl_REGEX): New macro.
36933
36934         Module rename.
36935         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
36936         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
36937
36938         Module rmdir.
36939         * m4/rmdir.m4: New file.
36940
36941         Module utime.
36942         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
36943         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
36944         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
36945
36946         Module dirname.
36947         * m4/dirname.m4: New file.
36948
36949         Module getopt.
36950         * m4/getopt.m4: New file.
36951
36952         Module unistd-safer.
36953         * m4/unistd-safer.m4: New file.
36954
36955         Module fnmatch.
36956         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
36957         declaration.
36958         (gl_PREREQ_FNMATCH_EXTRA): New macro.
36959         (gl_FUNC_FNMATCH_POSIX): New macro.
36960         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
36961         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
36962         simply fnmatch.
36963
36964         Module exclude.
36965         * m4/exclude.m4: New file.
36966
36967         Module human.
36968         * m4/human.m4: New file.
36969
36970         Module acl.
36971         * m4/acl.m4: Nop.
36972
36973         Module backupfile.
36974         * m4/backupfile.m4: New file.
36975         * m4/d-ino.m4: Indentation.
36976
36977         Module fsusage.
36978         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
36979         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
36980         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
36981
36982         Module dirfd.
36983         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
36984         requirements.
36985
36986         Module euidaccess.
36987         * m4/euidaccess.m4: New file.
36988
36989         Module file-type.
36990         * m4/file-type.m4: New file.
36991
36992         Module fileblocks.
36993         * m4/fileblocks.m4: New file.
36994
36995         Module filemode.
36996         * m4/filemode.m4: New file.
36997
36998         Module isdir.
36999         * m4/isdir.m4: New file.
37000
37001         Module lchown.
37002         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
37003         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
37004
37005         Module makepath.
37006         * m4/makepath.m4: New file.
37007
37008         Module modechange.
37009         * m4/modechange.m4: New file.
37010
37011         Module mountlist.
37012         * m4/mountlist.m4: New file.
37013         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
37014         Indentation.
37015
37016         Module path-concat.
37017         * m4/path-concat.m4: New file.
37018
37019         Module pathmax.
37020         * m4/pathmax.m4: New file.
37021
37022         Module same.
37023         * m4/same.m4: New file.
37024
37025         Module save-cwd.
37026         * m4/save-cwd.m4: New file.
37027
37028         Module savedir.
37029         * m4/savedir.m4: New file.
37030
37031         Module xgetcwd.
37032         * m4/xgetcwd.m4: New file.
37033         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
37034
37035         Module xreadlink.
37036         * m4/xreadlink.m4: New file.
37037
37038         Module safe-read.
37039         * m4/safe-read.m4: New file.
37040
37041         Module safe-write.
37042         * m4/safe-write.m4: New file.
37043
37044         Module closeout.
37045         * m4/closeout.m4: New file.
37046
37047         Module stdio-safer.
37048         * m4/stdio-safer.m4: New file.
37049
37050         Module getpass.
37051         * m4/getpass.m4: New file.
37052
37053         Module getugroups.
37054         * m4/getugroups.m4: New file.
37055
37056         Module group-member.
37057         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
37058         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
37059
37060         Module idcache.
37061         * m4/idcache.m4: New file.
37062
37063         Module userspec.
37064         * m4/userspec.m4: New file.
37065
37066         Module gettime.
37067         * m4/clock_time.m4: New file.
37068         * m4/gettime.m4: New file.
37069
37070         Module settime.
37071         * m4/settime.m4: New file.
37072
37073         Module posixtm.
37074         * m4/posixtm.m4: New file.
37075
37076         Module gethostname.
37077         * m4/gethostname.m4: New file.
37078
37079         Module canon-host.
37080         * m4/canon-host.m4: New file.
37081
37082         Module gettext.
37083         * m4/codeset.m4: New file, from gettext-0.11.5.
37084         * m4/gettext.m4: New file, from gettext-0.11.5.
37085         * m4/glibc21.m4: New file, from gettext-0.11.5.
37086         * m4/iconv.m4: New file, from gettext-0.11.5.
37087         * m4/intdiv0.m4: New file, from gettext-0.11.5.
37088         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
37089         * m4/inttypes.m4: New file, from gettext-0.11.5.
37090         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
37091         * m4/isc-posix.m4: New file, from gettext-0.11.5.
37092         * m4/lcmessage.m4: New file, from gettext-0.11.5.
37093         * m4/lib-ld.m4: New file, from gettext-0.11.5.
37094         * m4/lib-link.m4: New file, from gettext-0.11.5.
37095         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
37096         * m4/progtest.m4: New file, from gettext-0.11.5.
37097         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
37098         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
37099         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
37100
37101         Module localcharset.
37102         * m4/localcharset.m4: New file.
37103
37104         Module hard-locale.
37105         * m4/hard-locale.m4: New file.
37106
37107         Module mbswidth.
37108         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
37109         onceonly macros.
37110         * m4/mbrtowc.m4: Add comment.
37111
37112         Module memcasecmp.
37113         * m4/memcasecmp.m4: New file.
37114
37115         Module memcoll.
37116         * m4/memcoll.m4: New file.
37117
37118         Module unicodeio.
37119         * m4/unicodeio.m4: New file.
37120
37121         Module rpmatch.
37122         * m4/rpmatch.m4: New file.
37123
37124         Module yesno.
37125         * m4/yesno.m4: New file.
37126
37127         Module exitfail.
37128         * m4/exitfail.m4: New file.
37129
37130         Module c-stack.
37131         * m4/c-stack.m4 (gl_C_STACK): New macro.
37132         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
37133
37134         Module error.
37135         * m4/error.m4 (gl_ERROR): New macro.
37136         (jm_PREREQ_ERROR): Use onceonly macros.
37137
37138         Module fatal.
37139         * m4/fatal.m4: New file.
37140
37141         Module getloadavg.
37142         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
37143         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
37144
37145         Module getpagesize.
37146         * m4/getpagesize.m4: New file.
37147
37148         Module getusershell.
37149         * m4/getusershell.m4: New file.
37150
37151         Module physmem.
37152         * m4/physmem.m4: New file.
37153
37154         Module posixver.
37155         * m4/posixver.m4: New file.
37156
37157         Module quotearg.
37158         * m4/quotearg.m4: New file.
37159
37160         Module quote.
37161         * m4/quote.m4: New file.
37162
37163         Module readutmp.
37164         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
37165
37166         Module sig2str.
37167         * m4/sig2str.m4: New file.
37168
37169         Other.
37170         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
37171         ulonglong.m4.
37172         * m4/intmax_t.m4: New file.
37173         * m4/d-type.m4: Indentation.
37174         * m4/jm-macros.m4: Update.
37175         * m4/prereq.m4 (jm_PREREQ): Update.
37176         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
37177         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
37178         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
37179         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
37180         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
37181         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
37182         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
37183         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
37184         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
37185         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
37186         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
37187         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
37188         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
37189         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
37190         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
37191         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
37192         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
37193         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
37194         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
37195
37196 2002-12-24  Bruno Haible  <bruno@clisp.org>
37197
37198         * MODULES.txt: Update according to m4/ changes.
37199
37200         Module gettext.
37201         * config.rpath: New file, from gettext-0.11.5.
37202
37203         * modules/*: New module descriptions.
37204         * gnulib-tool: New file.
37205         * MODULES.html.sh: New file.
37206
37207 2002-12-21  Karl Berry  <karl@gnu.org>
37208
37209         * doc/fdl.texi: update to version 1.2.
37210
37211 2002-12-19  Karl Berry  <karl@gnu.org>
37212
37213         * config/config.guess: update from prep.
37214
37215 2002-12-18  Bruno Haible  <bruno@clisp.org>
37216
37217         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
37218         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
37219
37220 2002-12-17  Bruno Haible  <bruno@clisp.org>
37221
37222         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
37223         stdlib.h, string.h.
37224
37225 2002-12-17  Bruno Haible  <bruno@clisp.org>
37226
37227         * lib/canon-host.c (strdup): Remove unused declaration.
37228
37229         * lib/fsusage.c: Include full_read.h.
37230         (get_fs_usage): Use full_read instead of safe_read.
37231
37232         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
37233
37234 2002-12-12  Karl Berry  <karl@gnu.org>
37235
37236         * config/config.guess: update from prep.
37237
37238 2002-12-11  Bruno Haible  <bruno@clisp.org>
37239
37240         * m4/setenv.m4: New file, from gettext-0.11.5.
37241
37242 2002-12-11  Bruno Haible  <bruno@clisp.org>
37243
37244         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
37245         not unsetenv().
37246         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
37247         modifications:
37248
37249         2002-12-11  Bruno Haible  <bruno@clisp.org>
37250
37251                 * setenv.c (alloca): Fall back to malloc.
37252                 (freea): New macro.
37253                 (setenv): Use freea() to free memory allocated with alloca().
37254
37255         2002-11-13  Bruno Haible  <bruno@clisp.org>
37256
37257                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
37258                 function declarations.
37259                 * unsetenv.c (unsetenv): Likewise.
37260
37261         2002-03-04  Bruno Haible  <bruno@clisp.org>
37262
37263                 Portability to AIX 4.3.3.
37264                 * unsetenv.c: New file, extracted from setenv.c.
37265                 * setenv.c: Move the unsetenv() function to unsetenv.c.
37266
37267         2001-12-20  Bruno Haible  <bruno@clisp.org>
37268
37269                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
37270                 use malloc instead. For SunOS 4.
37271
37272         2001-12-11  Bruno Haible  <bruno@clisp.org>
37273
37274                 * setenv.c: Declare alloca.
37275                 (compar_fn_t): New typedef.
37276                 (KNOWN_VALUE, STORE_VALUE): Use it.
37277
37278         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
37279         setenv.h.
37280
37281 2002-12-10  Paul Eggert  <eggert@twinsun.com>
37282
37283         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
37284         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
37285         Choose values that are less likely to collide with system fnmatch
37286         options.
37287         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
37288         defined (e.g., a pure POSIX system).
37289         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
37290         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
37291
37292 2002-12-06  Paul Eggert  <eggert@twinsun.com>
37293
37294         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
37295         a pain in practice to deal with generated m4 files.  This change
37296         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
37297
37298         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
37299         and jm-glibc-io.m4, as they are no longer a special case.
37300         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
37301         kludge and the auto-generation stuff.  Check only whether the
37302         functions are declared, not whether they exist, since older hosts
37303         that don't declare the functions can't use the optimization anyway.
37304
37305 2002-12-06  Jim Meyering  <jim@meyering.net>
37306
37307         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
37308
37309         Merge in changes from libc's misc/error.c, in preparation
37310         for the merge of gnulib's changes back into libc.
37311
37312         * lib/error.c (_): Define only if not already defined.
37313         Move definition to follow all #include directives.
37314         Include unlocked-io.h only if !_LIBC.
37315         [_LIBC]: Include <libio/libioP.h>.
37316         [USE_IN_LIBIO]: Include <libio/iolibio.h>
37317         (fflush): Tweak definition to use INTUSE.
37318         (putc): Define.
37319
37320 2002-12-05  Paul Eggert  <eggert@twinsun.com>
37321
37322         * lib/alloca.c [defined emacs]: Include "lisp.h".
37323         (xalloc_die) [defined emacs]: New macro.
37324         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
37325         [! defined emacs]: Include <xalloc.h>.
37326         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
37327         (pointer): Typedef to POINTER_TYPE *.
37328         (malloc): Remove decl; we now always use xmalloc.
37329         (alloca): Use old-style definition, since Emacs needs this.
37330         Check for arithmetic overflow when computing combined size.
37331
37332 2002-12-04  Paul Eggert  <eggert@twinsun.com>
37333
37334         Do not generate unlocked-io.h automatically, since it's easier to
37335         maintain it by hand.
37336
37337         * lib/unlocked-io.h: New file, from GNU diffutils,
37338         but with proper copyright notice and attribution.
37339         * lib/gen-uio: Remove.
37340         * lib/Makefile.am: Add copyright notice.
37341         (libfetish_a_SOURCES): Add unlocked-io.h.
37342         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
37343         (DISTCLEANFILES, io_functions): Remove macros.
37344         (EXTRA_DIST): Remove gen_uio.
37345         (unlocked-io.h): Remove rule.
37346
37347 2002-12-04  Jim Meyering  <jim@meyering.net>
37348
37349         Reflect the fact that stat.c and lstat.c are no longer generated.
37350         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
37351         (DISTCLEANFILES): Likewise.
37352         (EXTRA_DIST): Likewise.
37353         (all_local): Don't depend on stat.c or lstat.c.
37354         (stat.c, lstat.c): Remove rules.
37355         (EXTRA_DIST): Remove xstat.in.
37356
37357         * lib/xstat.in: Remove file.  Contents moved into stat.c.
37358         * lib/stat.c: New file.  Contents mostly from xstat.in.
37359         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
37360         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
37361
37362         * lib/safe-read.c: Rework so that it may serve to define safe_write,
37363         too.
37364         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
37365
37366 2002-12-03  Jim Meyering  <jim@meyering.net>
37367
37368         * lib/safe-read.c, safe-write.c: Change variable names and comments,
37369         but not semantics, to minimize the differences between these two files.
37370         (safe_read): Change comment to mention SAFE_READ_ERROR.
37371
37372         * lib/safe-read.c (IS_EINTR): Define.
37373         (safe_read): Use IS_EINTR in place of in-function cpp directives.
37374
37375 2002-12-02  Jim Meyering  <jim@meyering.net>
37376
37377         * lib/safe-read.c (EINTR): Define.
37378         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
37379         (INT_MAX): Provide fallback.
37380         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
37381
37382         * lib/safe-read.h (SAFE_READ_ERROR): Define.
37383
37384 2002-12-02  Bruno Haible  <bruno@clisp.org>
37385
37386         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
37387         Define, taken from safe-read.c.
37388         (INT_MAX): Provide fallback.
37389         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
37390         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
37391
37392         * lib/safe-read.c (EINTR): Remove definition.
37393         (safe_read): Don't use EINTR if it is absent.
37394
37395 2002-12-01  Jim Meyering  <jim@meyering.net>
37396
37397         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
37398         zero.
37399         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
37400
37401 2002-11-27  Paul Eggert  <eggert@twinsun.com>
37402
37403         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
37404         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
37405         with `if (! (value < limit)) abort ();', for readability.
37406
37407 2002-11-26  Karl Berry  <karl@gnu.org>
37408
37409         * lib/strdup.c: copy from libc again, with jim's ok.
37410         * lib/.cppi-disable: re-add strdup.c
37411
37412 2002-11-25  Karl Berry  <karl@gnu.org>
37413
37414         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
37415         instead of "strtol.c".
37416
37417 2002-11-25  Karl Berry  <karl@gnu.org>
37418
37419         * config/install-sh: update from automake for variable quoting, $0 in
37420         error msgs, etc.
37421
37422         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
37423         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
37424         entry.
37425
37426 2002-11-25  Jim Meyering  <jim@meyering.net>
37427
37428         * lib/mktime.c: Sync from libc, now that it has the latest fix.
37429
37430 2002-11-24  Karl Berry  <karl@gnu.org>
37431
37432         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
37433         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
37434
37435 2002-11-24  Jim Meyering  <jim@meyering.net>
37436
37437         Update from coreutils:
37438
37439         * lib/mktime.c: Merge in changes from libc.
37440
37441         Avoid a link-time failure on some Linux systems.
37442         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
37443         (otherwise).
37444         (__mon_yday): Declare with the STATIC attribute.
37445         (__mktime_internal): Likewise.
37446         Based on a report from Greg Schafer.
37447
37448 2002-11-23  Jim Meyering  <jim@meyering.net>
37449
37450         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
37451         Use `unsigned', not `int', as type of index.
37452
37453         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
37454
37455         * lib/fsusage.c: Remove unneeded parentheses around operands of
37456         `defined'.
37457
37458 2002-11-22  Paul Eggert  <eggert@twinsun.com>
37459
37460         * lib/quotearg.h: Allow multiple inclusion by surrounding with
37461         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
37462         so that we can be included first.
37463         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
37464         * lib/quotearg.c: Include quotearg.h immediately after config.h.
37465         No need to include stddef.h or sys/types.h any more.
37466         Surround local include files with "", not "<>".
37467         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
37468         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
37469         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
37470         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
37471         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
37472         (ISPRINT): Remove; no longer needed now that we assume C89.
37473
37474         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
37475         Preserve errno.
37476
37477         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
37478         quotearg_char): Use SIZE_MAX rather than
37479         (size_t) -1 when we are talking about "infinity".
37480
37481         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
37482
37483 2002-11-22  Paul Eggert  <eggert@twinsun.com>
37484
37485         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
37486         hint that one should use `if (! x) abort ();' rather than `assert
37487         (x);', and anyway it's one less thing to worry about configuring.
37488         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
37489         hash_rehash, hash_insert): Use abort rather than assert.
37490
37491 2002-11-22  Bruno Haible  <bruno@clisp.org>
37492
37493         * lib/safe-read.h: Assume C89. Add comments.
37494         (safe_read): Change return type to size_t.
37495         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
37496         byte counts > SSIZE_MAX correctly.
37497         * lib/safe-write.h: New file.
37498         * lib/safe-write.c: New file.
37499         * lib/full-read.h: New file.
37500         * lib/full-read.c: New file.
37501         * lib/full-write.h: Assume C89. Add comments.
37502         * lib/full-write.c: Include safe-write.h.
37503         (full_write): Rewritten to use safe_write.
37504         Suggested by Jim Meyering and Paul Eggert.
37505
37506 2002-11-21  Jim Meyering  <jim@meyering.net>
37507
37508         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
37509
37510         Merge in changes from the coreutils.
37511
37512         2002-09-25  Paul Eggert  <eggert@twinsun.com>
37513         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
37514         <stdint.h>.
37515         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
37516         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
37517         int.  Work more efficiently if X is the same width as uintmax_t.
37518         Do not compare X to -1, to avoid bogus compiler warning.
37519         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
37520         Don't assume that f_frsize and f_bsize are the same type.
37521
37522         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
37523         warning on FreeBSD.
37524
37525         * lib/makepath.c (make_path): Restore umask *before* creating the final
37526         component.
37527         (make_path): Minor reformatting.
37528
37529         * lib/xmalloc.c: Adjust to work with new autoconf macros,
37530         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
37531         HAVE_MALLOC/HAVE_REALLOC.
37532
37533         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
37534         dummy ones.  At least on GNU/Linux systems, `auto' means something
37535         else.
37536         From Michael Stone.
37537
37538 2002-11-21  Bruno Haible  <bruno@clisp.org>
37539
37540         Remove case insensitive option matching.
37541         * lib/argmatch.h (argcasematch): Remove declaration.
37542         (ARGCASEMATCH): Remove macro.
37543         (__xargmatch_internal): Remove case_sensitive argument.
37544         (XARGMATCH): Update.
37545         (XARGCASEMATCH): Remove macro.
37546         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
37547         case_sensitive argument.
37548         (argcasematch): Remove function.
37549         (__xargmatch_internal): Remove case_sensitive argument.
37550         (main): Use XARGMATCH instead of XARGCASEMATCH.
37551
37552         * lib/xmalloc.c: Change compile-time error message. Add comment about
37553         required autoconf version.
37554
37555 2002-11-20  Paul Eggert  <eggert@twinsun.com>
37556
37557         Merge argmatch cleanups from Bison.  Assume C89.
37558
37559         * lib/argmatch.c: Include config.h here, not in argmatch.h.
37560         Include stdlib.h, for EXIT_FAILURE.
37561         Always include <string.h>, since we assume C89.
37562         (EXIT_FAILURE): Remove pre-C89 bug workaround.
37563         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
37564         Include <stddef.h> instead, since it's all we need for size_t.
37565         (PARAMS): Remove.  All uses removed.
37566         (ARRAY_CARDINALITY): Do not bother to #undef.
37567         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
37568         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
37569         Remove unnecessary parentheses.
37570         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
37571         Insert necessary parentheses.
37572         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
37573         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
37574
37575 2002-11-19  Bruno Haible  <bruno@clisp.org>
37576
37577         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
37578         * lib/mbswidth.h: Include <stddef.h>, for size_t.
37579
37580         * lib/mbswidth.h (PARAMS): Remove macro.
37581         (mbswidth, mbsnwidth): Use ANSI C function declarations.
37582         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
37583
37584         * lib/gcd.h (PARAMS): Remove macro.
37585         (gcd): Use ANSI C function declarations.
37586         * lib/gcd.c (gcd): Likewise.
37587
37588 2002-11-15  Bruno Haible  <bruno@clisp.org>
37589
37590         * lib/strcspn.c: Include <stddef.h>.
37591         (strcspn): Use ANSI C function declaration. Change return type to
37592         size_t. Use NULL.
37593         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
37594         (strpbrk): Use NULL.
37595         * lib/strpbrk.h (PARAMS): Remove macro.
37596         (strpbrk): Use ANSI C function declaration.
37597         * lib/strstr.c: Don't include <sys/types.h>.
37598         * lib/strstr.h (PARAMS): Remove macro.
37599         (strstr): Use ANSI C function declarations.
37600
37601 2002-11-14  Karl Berry  <karl@gnu.org>
37602
37603         * config/mkinstalldirs: `do' on separate line, instead of
37604         `for var; do'.
37605
37606 2002-11-06  Bruno Haible  <bruno@clisp.org>
37607
37608         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
37609         * lib/gcd.c (gcd): Likewise.
37610
37611 2002-11-05  Bruno Haible  <bruno@clisp.org>
37612
37613         * lib/gcd.h: New file, from gettext-0.11.5.
37614         * lib/gcd.c: New file, from gettext-0.11.5.
37615
37616 2002-11-05  Bruno Haible  <bruno@clisp.org>
37617
37618         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
37619         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
37620         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
37621         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
37622
37623         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
37624         <libintl.h>.
37625         * lib/makepath.c: Include gettext.h instead of <locale.h> and
37626         <libintl.h>.
37627
37628         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
37629         * lib/human.c: Include gettext.h instead of <libintl.h>.
37630         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
37631         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
37632         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
37633         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
37634         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
37635         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
37636         (textdomain): Remove definition.
37637         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
37638
37639         * lib/long-options.c: Remove include of <libintl.h> and definition of
37640         _.
37641         * lib/same.c: Remove include of <libintl.h> and definition of _.
37642
37643 2002-11-04  Owen Taylor  <otaylor@redhat.com>
37644
37645         * lib/config.charset: A few additions for Solaris.
37646
37647 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
37648
37649         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
37650         * lib/localcharset.c (locale_charset): Declare as extern "C".
37651
37652 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
37653
37654         * lib/config.charset: msdos in uk_UA uses CP1125.
37655
37656 2002-11-04  Bruno Haible  <bruno@clisp.org>
37657
37658         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
37659         * lib/strcase.h: New file, from GNU gettext-0.11.5.
37660         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
37661         * lib/strstr.h: New file, from GNU gettext-0.11.5.
37662         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
37663
37664 2002-11-04  Bruno Haible  <bruno@clisp.org>
37665
37666         * lib/localcharset.c (locale_charset): Don't return an empty string.
37667
37668 2002-11-04  Bruno Haible  <bruno@clisp.org>
37669
37670         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
37671         aliases.
37672
37673 2002-11-04  Bruno Haible  <bruno@clisp.org>
37674
37675         * lib/config.charset: Update for newest glibc. Add canonical names
37676         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
37677
37678 2002-11-04  Bruno Haible  <bruno@clisp.org>
37679
37680         * lib/config.charset: Add support for NetBSD.
37681
37682 2002-11-04  Bruno Haible  <bruno@clisp.org>
37683
37684         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
37685
37686 2002-11-01  Bruno Haible  <bruno@clisp.org>
37687
37688         * configure.in: Add AC_CONFIG_AUX_DIR call.
37689         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
37690         test/Makefile.
37691         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
37692
37693 2002-09-28  Karl Berry  <karl@gnu.org>
37694
37695         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
37696         installed automake until the next release, since changes have been
37697         made.
37698
37699 2002-09-25  Karl Berry  <karl@gnu.org>
37700
37701         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
37702         * lib/getopt*: copy from libc/posix.
37703         * lib/gettext.h: copy from gettext.
37704         * lib/.cppi-disable: add strdup.c, gettext.h.
37705
37706 2002-09-25  Karl Berry  <karl@gnu.org>
37707
37708         * config/srclist.txt: enable gettext.h check.
37709         * config/config.{guess,sub}: update from prep.
37710         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
37711                 from automake 1.6.3.
37712         See srclist*.
37713
37714 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
37715
37716         * regex.c (PATFETCH): Remove the translating fetch.
37717         (PATFETCH_RAW): Rename to PATFETCH.
37718         (set_image_of_range): New fun.
37719         (SET_RANGE_TABLE_WORK_AREA): Use it.
37720         (regex_compile): Don't translate the pattern chars so eagerly.
37721         Only do it when inserting an `exactn' bytecode or when handling
37722         a char-range.
37723         (mutually_exclusive_p): Avoid empty statement.
37724
37725 2002-07-06  Jim Meyering  <meyering@lucent.com>
37726
37727         * m4/README: Don't mention Makefile.am.in.
37728         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
37729
37730 2002-07-01  Jim Meyering  <meyering@lucent.com>
37731
37732         * lib/c-stack.c: Include sys/time.h.
37733         From Volker Borchert.
37734
37735 2002-06-26  Paul Eggert  <eggert@twinsun.com>
37736
37737         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
37738
37739 2002-06-26  Paul Eggert  <eggert@twinsun.com>
37740
37741         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
37742         New macro.  Use it uniformly instead of
37743         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
37744         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
37745         reported by Vin Shelton.
37746
37747 2002-06-22  Paul Eggert  <eggert@twinsun.com>
37748
37749         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
37750         Do not assume SA_SIGINFO behavior.
37751         Bug reported by Jim Meyering on NetBSD 1.5.2.
37752
37753 2002-06-22  Jim Meyering  <meyering@lucent.com>
37754
37755         * m4/c-stack.m4: New file, from diffutils-2.8.2.
37756         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
37757
37758         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
37759         now that configure.ac uses AC_GNU_SOURCE.
37760         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
37761         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
37762
37763         Update to latest tools.  Suggestions from Paul Eggert.
37764         * m4/stdbool.m4: New file, from diffutils-2.8.2.
37765         * m4/gnu-source.m4: Update from diffutils-2.8.2.
37766         * m4/fnmatch.m4: Likewise.
37767         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
37768         to AC_HEADER_STDBOOL
37769
37770 2002-06-22  Jim Meyering  <meyering@lucent.com>
37771
37772         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
37773         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
37774
37775 2002-06-22  Jim Meyering  <meyering@lucent.com>
37776
37777         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
37778
37779         * lib/exitfail.c, exitfail.h: Likewise.
37780         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
37781
37782         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
37783         of fnmatch.h.
37784         (EXTRA_DIST): Add fnmatch_loop.c.
37785         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
37786
37787         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
37788         * lib/fnmatch.c: Update from diffutils-2.8.2.
37789         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
37790         * lib/fnmatch.h: Remove file.
37791
37792 2002-06-21  Jim Meyering  <meyering@lucent.com>
37793
37794         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
37795         * m4/mbrtowc.m4: Likewise.
37796
37797         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
37798         * m4/mbswidth.m4: Reflect name change:
37799         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
37800         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
37801
37802         * m4/lib-link.m4: Update from gettext-0.11.2.
37803         * m4/gettext.m4: Likewise.
37804
37805         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
37806         From Alfred M. Szmidt.
37807
37808 2002-06-18  Paul Eggert  <eggert@twinsun.com>
37809
37810         * lib/file-type.h: Report an error if neither S_ISREG nor
37811         S_IFREG is defined, instead of using a test specific to glibc
37812         2.2.  This should be safe, since POSIX requires S_ISREG and
37813         Unix Version 7 had S_IFREG.  We don't need to check for
37814         <sys/types.h> since we don't use any symbols that it defines.
37815
37816 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
37817
37818         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
37819         $@-t, so that each temporary file name is unique and valid in the first
37820         8 characters, for operation under DOS.
37821
37822 2002-06-15  Paul Eggert  <eggert@twinsun.com>
37823
37824         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
37825
37826 2002-06-15  Jim Meyering  <meyering@lucent.com>
37827
37828         Work even with DJGPP 2.03, which lacks support for symlinks.
37829         From Richard Dawe.
37830         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
37831         is defined.
37832         * lib/lchown.c (S_ISLNK): Likewise.
37833
37834 2002-06-15  Jim Meyering  <meyering@lucent.com>
37835
37836         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
37837         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
37838         have been included before this file.
37839
37840 2002-06-14  Jim Meyering  <meyering@lucent.com>
37841
37842         * lib/file-type.h: Use the version from diffutils-2.8.2.
37843         * lib/file-type.c: Likewise.
37844
37845 2002-06-07  Jim Meyering  <meyering@lucent.com>
37846
37847         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
37848         They're needed at least for NetBSD 1.5.2.
37849         ($statxfs_includes): Include those same headers.
37850         ($statxfs_includes): Include sys/vfs.h if available.
37851         ($statxfs_includes): Likewise for sys/statvfs.h.
37852         Check for the following members in both structs statfs and statvfs:
37853         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
37854
37855 2002-06-01  Jim Meyering  <meyering@lucent.com>
37856
37857         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
37858         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
37859
37860 2002-05-28  Jim Meyering  <meyering@lucent.com>
37861
37862         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
37863         Reported by Volker Borchert.
37864
37865 2002-05-27  Jim Meyering  <meyering@lucent.com>
37866
37867         Fix a problem seen only on nonconforming systems whereby ls.c's
37868         use of localtime, and then of gettimeofday would cause trouble:
37869         the localtime call used to initialize rpl_gettimeofday's save
37870         mechanism would clobber ls's current local time information so
37871         that in any long listing the first file would always be listed
37872         with date 1970-01-01.  Analysis by Volker Borchert.
37873
37874         * lib/gettimeofday.c (localtime): Undefine.
37875         (rpl_localtime): New function.
37876
37877 2002-05-27  Jim Meyering  <meyering@lucent.com>
37878
37879         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
37880         localtime.
37881
37882         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
37883         use the replacement function; it wouldn't resolve at link time.
37884         Reported by Volker Borchert.
37885
37886 2002-05-22  Jim Meyering  <meyering@lucent.com>
37887
37888         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
37889         file-type.h.
37890         * lib/file-type.h: New file.
37891         * lib/file-type.c (file_type): New file/function.  Extracted from
37892         diffutils.
37893
37894 2002-04-30  Jim Meyering  <meyering@lucent.com>
37895
37896         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
37897
37898 2002-04-29  Paul Eggert  <eggert@twinsun.com>
37899
37900         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
37901
37902 2002-04-29  Paul Eggert  <eggert@twinsun.com>
37903
37904         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
37905         Do not check for alloca.h (no longer used) or stdbool.h (was never
37906         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
37907
37908 2002-04-29  Paul Eggert  <eggert@twinsun.com>
37909
37910         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
37911
37912 2002-04-29  Jim Meyering  <meyering@lucent.com>
37913
37914         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
37915         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
37916         Use AC_FUNC_STRNLEN here instead.
37917
37918         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
37919         With autoconf-2.53a, it's part of AC_PROG_CC.
37920
37921 2002-04-28  Paul Eggert  <eggert@twinsun.com>
37922
37923         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
37924         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
37925
37926 2002-04-28  Paul Eggert  <eggert@twinsun.com>
37927
37928         * lib/sig2str.h, lib/sig2str.c: New files.
37929         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
37930
37931 2002-04-28  Paul Eggert  <eggert@twinsun.com>
37932
37933         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
37934         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
37935         of 127, since 64 is the largest conceivable number for ancient
37936         nonstandard hosts.
37937         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
37938
37939 2002-04-28  Jim Meyering  <meyering@lucent.com>
37940
37941         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
37942
37943 2002-04-24  Jim Meyering  <meyering@lucent.com>
37944
37945         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
37946         (jm_PREREQ): Use it.
37947
37948         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
37949         mach/mach.h fcntl.h.
37950         Check for this function: setlocale.
37951
37952 2002-04-24  Jim Meyering  <meyering@lucent.com>
37953
37954         * lib/gettext.h: New file, from Gettext.
37955         * lib/Makefile.am (INCLUDES): Remove -I../intl.
37956         (libfetish_a_SOURCES): Add gettext.h.
37957
37958 2002-04-16  Jim Meyering  <meyering@lucent.com>
37959
37960         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
37961         ut_pid, ut_id, ut_exit.
37962
37963 2002-04-16  Jim Meyering  <meyering@lucent.com>
37964
37965         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
37966         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
37967         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
37968
37969 2002-04-12  Jim Meyering  <meyering@lucent.com>
37970
37971         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
37972         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
37973         existence of the getmntinfo function.  Needed for Darwin 5.3.
37974
37975         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
37976         This is necessary at least on Darwin 5.3.
37977
37978         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
37979         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
37980         strnlen.o in the library, and that makes some versions of ranlib
37981         object.
37982
37983 2002-04-12  Jim Meyering  <meyering@lucent.com>
37984
37985         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
37986
37987 2002-04-09  Jim Meyering  <meyering@lucent.com>
37988
37989         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
37990         to be more precise.  Rather than saying we're checking whether the
37991         function `works', say what we're testing.
37992         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
37993         Reported by Bruno Haible.
37994
37995 2002-03-10  Jim Meyering  <meyering@lucent.com>
37996
37997         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
37998         Suggestion from Santiago Vila.
37999
38000 2002-03-08  Jim Meyering  <meyering@lucent.com>
38001
38002         * lib/rename.c: Mention that this wrapper is needed also on
38003         mips-dec-ultrix4.4 systems.
38004
38005 2002-03-02  Jim Meyering  <meyering@lucent.com>
38006
38007         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
38008         not HAVE_CLOCK_SETTIME.
38009
38010 2002-02-27  Paul Eggert  <eggert@twinsun.com>
38011
38012         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
38013         Check for clock_settime.
38014
38015 2002-02-27  Paul Eggert  <eggert@twinsun.com>
38016
38017         * lib/nanosleep.h: Rename to....
38018         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
38019
38020         * lib/gettime.c: New file.
38021         * lib/settime.c: New file.
38022         * lib/stime.c: Remove.
38023
38024         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
38025         timespec.h.  Remove nanosleep.h.
38026
38027 2002-02-25  Paul Eggert  <eggert@twinsun.com>
38028
38029         * m4/acl.m4: New file.
38030         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
38031         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
38032
38033 2002-02-25  Paul Eggert  <eggert@twinsun.com>
38034
38035         * lib/acl.c, lib/acl.h: New files.
38036         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
38037
38038 2002-02-24  Jim Meyering  <meyering@lucent.com>
38039
38040         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
38041         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
38042         cause trouble.  Reported by Nelson Beebe.
38043
38044 2002-02-23  Paul Eggert  <eggert@twinsun.com>
38045
38046         * lib/path-concat.c (xpath_concat): Reorder code to pacify
38047         compilers that don't know that xalloc_die never returns.
38048
38049 2002-02-20  Jim Meyering  <meyering@lucent.com>
38050
38051         * lib/getdate.c: Regenerate using bison-1.33.
38052
38053 2002-02-17  Jim Meyering  <meyering@lucent.com>
38054
38055         * config/config.guess (main): Don't use `head -1'; it's no longer
38056         portable. Use `sed 1q' instead.
38057
38058 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
38059
38060         * m4/codeset.m4: Upgrade to gettext-0.11.
38061         * m4/gettext.m4: Upgrade to gettext-0.11.
38062         * m4/glibc21.m4: Upgrade to gettext-0.11.
38063         * m4/iconv.m4: Upgrade to gettext-0.11.
38064         * m4/isc-posix.m4: Upgrade to gettext-0.11.
38065         * m4/lcmessage.m4: Upgrade to gettext-0.11.
38066         * m4/lib-ld.m4: New file, from gettext-0.11.
38067         * m4/lib-link.m4: New file, from gettext-0.11.
38068         * m4/lib-prefix.m4: New file, from gettext-0.11.
38069         * m4/progtest.m4: Upgrade to gettext-0.11.
38070
38071 2002-02-15  Paul Eggert  <eggert@twinsun.com>
38072
38073         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
38074         (jm_PREREQ): Use it.
38075
38076 2002-02-15  Paul Eggert  <eggert@twinsun.com>
38077
38078         * lib/posixver.c, lib/posixver.h: New files.
38079         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
38080
38081 2002-02-02  Paul Eggert  <eggert@twinsun.com>
38082             Bruno Haible  <bruno@clisp.org>
38083
38084         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
38085         (fwrite_success_callback): New declaration.
38086         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
38087         print_unicode_char. Call failure callback instead of error.
38088         (fwrite_success_callback): New function.
38089         (exit_failure_callback): New function.
38090         (fallback_failure_callback): New function.
38091         (print_unicode_char): Call unicode_to_mb.
38092
38093 2002-01-26  Jim Meyering  <meyering@lucent.com>
38094
38095         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
38096         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
38097
38098 2002-01-26  Jim Meyering  <meyering@lucent.com>
38099
38100         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
38101
38102 2002-01-22  Paul Eggert  <eggert@twinsun.com>
38103
38104         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
38105
38106 2002-01-22  Jim Meyering  <meyering@lucent.com>
38107
38108         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
38109         Otherwise, some versions of automake would omit the rule that makes
38110         Makefile from Makefile.in.
38111
38112 2002-01-21  Paul Eggert  <eggert@twinsun.com>
38113
38114         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
38115         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
38116         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
38117         (memcoll): Set errno to zero if there is no error.
38118
38119         * lib/quotearg.c (quotearg_buffer_restyled):
38120         Fix bug with quoting buffers containing NUL when backslashing escapes.
38121         This bug was exposed by the other changes in this patch.
38122         (quotearg_n_options): New arg ARGSIZE.
38123         All callers changed.
38124         (quoting_options_from_style): New function.
38125         (quotearg_n_style): Use it.
38126         (quotearg_n_style_mem): New function.
38127
38128         * lib/quotearg.h (quotearg_n_style_mem): New function.
38129
38130 2002-01-19  Jim Meyering  <meyering@lucent.com>
38131
38132         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
38133         Remove useless quotes: DF_PROG="df".
38134         * m4/strnlen.m4: New file.
38135
38136 2002-01-16  Paul Eggert  <eggert@twinsun.com>
38137
38138         * lib/backupfile.c (ISDIGIT): Comment fix.
38139         * lib/getdate.y (ISDIGIT): Likewise.
38140         * lib/posixtm.c (ISDIGIT, year): Likewise.
38141         * lib/strverscmp.c (ISDIGIT): Likewise.
38142         * lib/userspec.c (ISDIGIT): Likewise.
38143
38144 2002-01-16  Jim Meyering  <meyering@lucent.com>
38145
38146         * lib/getdate.y: Add three semicolons, each just before a closing
38147         brace. Bison (as of version 1.31) no longer papers over that mistake.
38148
38149 2002-01-05  Jim Meyering  <meyering@lucent.com>
38150
38151         * lib/version-etc.c (version_etc_copyright): Update copyright year.
38152
38153 2001-12-19  Paul Eggert  <eggert@twinsun.com>
38154
38155         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
38156         not silently exit merely because the output buffer happens to
38157         have nothing pending.
38158
38159 2001-12-18  Paul Eggert  <eggert@twinsun.com>
38160
38161         See the big note in ../ChangeLog.
38162         * lib/human.c (suffixes): Prefer K to k for 1024.
38163         (generate_suffix_backwards): New function.
38164         (human_readable_inexact): Use it.
38165         * lib/xstrtol.c (__xstrtol): If there is no number but there
38166         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
38167         Accept 'K' as well as 'k'.
38168
38169 2001-12-15  Jim Meyering  <meyering@lucent.com>
38170
38171         * lib/regex.h (__restrict_arr): Update from libc.
38172
38173         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
38174         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
38175         (STREQ): Define.
38176
38177 2001-12-14  Jim Meyering  <meyering@lucent.com>
38178
38179         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
38180         Suggestion from Bruno Haible.
38181
38182 2001-12-10  Jim Meyering  <meyering@lucent.com>
38183
38184         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
38185         xrealloc, Instead, include "xalloc.h".
38186         (initbuffer): Don't cast xmalloc return value to char*.
38187         (readline): Reword comment.
38188         Don't cast xrealloc return value to char*
38189         Return NULL, not 0.
38190
38191 2001-12-09  Jim Meyering  <meyering@lucent.com>
38192
38193         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
38194         about `signed and unsigned type in conditional expression'.
38195         * lib/posixtm.c (posix_time_parse): Likewise.
38196
38197         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
38198
38199         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
38200         to avoid a pedantic warning.
38201
38202         * lib/getstr.c: Don't include assert.h.
38203         (getstr): Remove warning-evoking assertions.
38204         Return -1 if offset parameter is out of bounds.
38205         Change the type of a local from int to size_t.
38206
38207         * lib/strftime.c (my_strftime_localtime_r): Include this function
38208         definition in the `#if ! HAVE_TM_GMTOFF' block.
38209
38210         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
38211         Include xalloc.h instead.
38212
38213 2001-12-02  Jim Meyering  <meyering@lucent.com>
38214
38215         * lib/tempname.c: Don't declare getenv, thus reverting the change of
38216         2001-11-18.  It's no longer necessary, now that stdlib.h is always
38217         included.
38218
38219         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
38220         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
38221
38222 2001-11-30  Akim Demaille  <akim@epita.fr>
38223
38224         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
38225         before being defined.
38226
38227 2001-11-27  Paul Eggert  <eggert@twinsun.com>
38228
38229         * lib/quotearg.h (quotearg_n, quotearg_n_style):
38230         First arg is int, not unsigned.
38231         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
38232         (SIZE_MAX, UINT_MAX): New macros.
38233         (quotearg_n_options): Abort if N is negative.
38234         Avoid overflow check on hosts where size_t is 64 bits and int
38235         is 32 bits, as overflow is impossible there.
38236         Fix off-by-one typo that caused unnecessary reallocation.
38237
38238 2001-11-27  Jim Meyering  <meyering@lucent.com>
38239
38240         * lib/tempname.c: Merge with version from libc.
38241         * lib/regex.c: Likewise.
38242
38243         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
38244         systems for which STDC_HEADERS is 0, it was not included, resulting in
38245         a warning about an integer-to-pointer conversion problem with getenv.
38246         Reported by Volker Borchert.
38247
38248 2001-11-26  Jim Meyering  <meyering@lucent.com>
38249
38250         * lib/gtod.h: Remove file.
38251         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
38252         * lib/gettimeofday.c: Don't include gtod.h.
38253         (GTOD_init): Remove function.
38254         (rpl_gettimeofday): Do its job here instead, rather than aborting.
38255         Suggestion from Volker Borchert.
38256
38257 2001-11-23  Jim Meyering  <meyering@lucent.com>
38258
38259         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
38260         it.
38261         * lib/hash.c (struct hash_table): Define it here instead.
38262
38263 2001-11-22  Jim Meyering  <meyering@lucent.com>
38264
38265         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
38266
38267 2001-11-20  Jim Meyering  <meyering@lucent.com>
38268
38269         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
38270         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
38271
38272 2001-11-19  Jim Meyering  <meyering@lucent.com>
38273
38274         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
38275         directory.  Use "conftestXXXXXX" as the template.
38276         Suggestion from Paul Eggert.
38277
38278         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
38279         immediately, so the test doesn't mistakenly hit the max-open-files
38280         limit.
38281
38282 2001-11-18  Paul Eggert  <eggert@twinsun.com>
38283
38284         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
38285         (TEMPORARIES): New macro.
38286         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
38287         removes an artificial limitation (e.g. HP-UX 10.20, where
38288         TMP_MAX is 17576).
38289
38290 2001-11-18  Jim Meyering  <meyering@lucent.com>
38291
38292         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
38293
38294 2001-11-18  Jim Meyering  <meyering@lucent.com>
38295
38296         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
38297         on SunOS 4.
38298
38299         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
38300         files will be created before anything else.
38301
38302 2001-11-17  Paul Eggert  <eggert@twinsun.com>
38303
38304         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
38305         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
38306
38307 2001-11-17  Jim Meyering  <meyering@lucent.com>
38308
38309         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
38310         Prompted by a report from Bob Proulx.
38311
38312         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
38313         Instead, require UTILS_FUNC_MKSTEMP.
38314
38315 2001-11-17  Jim Meyering  <meyering@lucent.com>
38316
38317         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
38318         Now, that's done as part of AC_FUNC_STRTOD.
38319
38320 2001-11-17  Jim Meyering  <meyering@lucent.com>
38321
38322         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
38323         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
38324         rather than group writable.  Patch by Juan F. Codagnone.
38325
38326         * lib/readtokens.c: Remove explicit declarations of xmalloc and
38327         xrealloc, Instead, include "xalloc.h".
38328
38329         * lib/mountlist.c: Include unlocked-io.h after all system headers.
38330         Remove explicit declarations of xmalloc, xrealloc,
38331         and xstrdup.  Instead, include "xalloc.h".
38332
38333         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
38334         unlocked-io.h.
38335         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
38336         Likewise.
38337         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
38338
38339         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
38340         Reported by Padraig Brady.
38341
38342         * lib/mkstemp.c: #undef mkstemp.
38343         Include config.h.
38344         (rpl_mkstemp): Rename from mkstemp.
38345         Protoize.
38346
38347 2001-11-16  Jim Meyering  <meyering@lucent.com>
38348
38349         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
38350         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
38351         determine the amount of total physical memory, use pstat_getstatic.
38352         HPUX-11 doesn't define _SC_PHYS_PAGES.
38353         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
38354         If sysconf couldn't be used to determine the amount of available
38355         physical memory, use both pstat_getstatic and pstat_getdynamic.
38356         Based on a patch from Bob Proulx.
38357
38358 2001-11-10  Jim Meyering  <meyering@lucent.com>
38359
38360         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
38361         (jm_PREREQ): Use it.
38362
38363 2001-11-09  Jim Meyering  <meyering@lucent.com>
38364
38365         * m4/jm-macros.m4: Require autoconf-2.52f.
38366         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
38367         Use these AC_-prefixed names, not the AM_-prefixed ones.
38368
38369         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
38370
38371 2001-11-05  Jim Meyering  <meyering@lucent.com>
38372
38373         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
38374
38375 2001-11-04  Jim Meyering  <meyering@lucent.com>
38376
38377         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
38378         $DEFS.
38379
38380 2001-11-03  Jim Meyering  <meyering@lucent.com>
38381
38382         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
38383         of AC_DEFUN.
38384
38385         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
38386         know the name of the variable in the macro definition.
38387
38388 2001-11-03  Jim Meyering  <meyering@lucent.com>
38389
38390         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
38391         in argmatch_to_argument call.
38392
38393         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
38394         argument.
38395
38396         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
38397         e.g., a fault due to an attempt to free a NULL pointer.
38398
38399 2001-11-01  Jim Meyering  <meyering@lucent.com>
38400
38401         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
38402         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
38403
38404 2001-11-01  Jim Meyering  <meyering@lucent.com>
38405
38406         * lib/dirfd.c, lib/dirfd.h: New files.
38407         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
38408
38409         * lib/hash.c (hash_print) [TESTING]: Clean up.
38410
38411 2001-10-22  Paul Eggert  <eggert@twinsun.com>
38412
38413         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
38414         to avoid a warning if -Wall.
38415
38416 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
38417
38418         * README: New file
38419         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
38420         (per RMS's instructions, this is now the canonical source)
38421         * lgpl/, gpl/: New directories.
38422
38423 2001-10-21  Paul Eggert  <eggert@twinsun.com>
38424
38425         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
38426
38427 2001-10-21  Jim Meyering  <meyering@lucent.com>
38428
38429         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
38430         this code would end up calling gettext even in packages built
38431         with --disable-nls.
38432         * lib/getopt.c (_): Likewise.
38433         * lib/regex.c (_): Likewise.
38434
38435 2001-10-20  Paul Eggert  <eggert@twinsun.com>
38436
38437         * m4/error.m4 (jm_PREREQ_ERROR):
38438         Do not invoke AC_CHECK_FUNCS with strerror_r, as
38439         AC_FUNC_STRERROR_R does that.
38440         Check for strerror declaration.
38441
38442         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
38443         are supposed to have them these days.
38444         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
38445         Merge changes from latest Autoconf CVS.
38446         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
38447         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
38448         POSIX decided to standardize on the int flavor of strerror_r.
38449
38450 2001-10-20  Paul Eggert  <eggert@twinsun.com>
38451
38452         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
38453         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
38454         Use strerror_r that is only a macro, even if it is not a function.
38455         (strerror): Check for HAVE_DECL_STRERROR before declaring.
38456         (private_strerror): Use prototypes, not old-style function definition.
38457         (print_errno_message): New function.
38458         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
38459         char*-flavored one.
38460         (error_tail, error, error_at_line): Use it.
38461
38462 2001-10-11  Jim Meyering  <meyering@lucent.com>
38463
38464         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
38465         and quote_n (1, ... to avoid clobbering a buffer.
38466
38467 2001-10-05  Jim Meyering  <meyering@lucent.com>
38468
38469         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
38470         hash-pjw.h.
38471         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
38472         * lib/hash-pjw.h: New file.
38473
38474 2001-09-30  Jim Meyering  <meyering@lucent.com>
38475
38476         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
38477         `struct fsstat' has the `f_fstypename' member.
38478         Use that to define FS_TYPE, which is now used to make
38479         the getfsstat link test tighter.
38480
38481 2001-09-30  Jim Meyering  <meyering@lucent.com>
38482
38483         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
38484         Include <sys/ucred.h>, for Apple Darwin.
38485         Include sys/mount.h and sys/fs_types.h only if available.
38486         (FS_TYPE): Define.
38487         (read_filesystem_list): Use FS_TYPE.
38488
38489 2001-09-29  Paul Eggert  <eggert@twinsun.com>
38490
38491         * lib/exclude.c (excluded_filename): 0 -> false, since it's
38492         a boolean context.
38493
38494 2001-09-29  Jim Meyering  <meyering@lucent.com>
38495
38496         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
38497         [one-argument getmntent function]): Include stdio.h before mntent.h.
38498         SunOS 4.1.x needs it for the declaration of `FILE'.
38499         Patch by Volker Borchert.
38500
38501         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
38502         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
38503         sys/fs_types.h, and make the link-test for getfsstat guard #include
38504         directives with appropriate #if HAVE_*_H tests so that we can
38505         detect getfsstat on Apple Darwin1.3.7 systems.
38506         Reported by Nelson Beebe.
38507         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
38508
38509 2001-09-28  Paul Eggert  <eggert@twinsun.com>
38510
38511         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
38512         #defines strtoimax.  Also treat the other strto* functions
38513         like strtoimax.
38514
38515         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
38516         Check for strtoul and strtoumax,
38517         as those declarations are made even in the signed case.
38518         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
38519         Likewise, for strtol and strtoimax.
38520
38521 2001-09-28  Paul Eggert  <eggert@twinsun.com>
38522
38523         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
38524         #defines strtoimax.  Also treat the other strto* functions
38525         like strtoimax.
38526
38527         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
38528         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
38529         (strtoimax, strtoumax): Do not declare if already defined as a macro.
38530
38531 2001-09-26  Jim Meyering  <meyering@lucent.com>
38532
38533         Most macros in unlocked-io.h had the wrong number of arguments.
38534         * lib/gen-uio: New script.
38535         (USE_UNLOCKED_IO): Define to 1 if not already defined.
38536         * lib/unlocked-io.hin: Remove file.
38537         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
38538         rather than trying to embed it here.
38539         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
38540         Reported by Padraig Brady.
38541
38542 2001-09-25  Volker Borchert  <bt@teknon.de>
38543
38544         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
38545         `result'.
38546
38547 2001-09-24  Jim Meyering  <meyering@lucent.com>
38548
38549         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
38550
38551 2001-09-23  Jim Meyering  <meyering@lucent.com>
38552
38553         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
38554         instead of the mere test for existence of mntent.h.  The latter
38555         would get a false-positive on AIX 3.4 systems.
38556         In the outer getmntent if-block, don't die if neither of the getmntent
38557         tests succeeds.  Instead, just fall through and continue with the
38558         remaining tests.
38559
38560 2001-09-23  Jim Meyering  <meyering@lucent.com>
38561
38562         * lib/mountlist.c: Remove useless parentheses in #if directives.
38563         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
38564         the deprecated MOUNTED symbol is no longer defined in mntent.h.
38565
38566 2001-09-22  Jim Meyering  <meyering@lucent.com>
38567
38568         * m4/gettext.m4: New file.  From gettext.
38569         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
38570         * m4/progtest.m4: Likewise
38571         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
38572         * m4/glibc21.m4: Likewise.
38573
38574         * m4/libintl.m4: Remove.  No longer used.
38575
38576 2001-09-22  Jim Meyering  <meyering@lucent.com>
38577
38578         * lib/localcharset.c: Update from latest gettext.
38579         * lib/config.charset: Likewise.
38580
38581 2001-09-20  Jim Meyering  <meyering@lucent.com>
38582
38583         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
38584         strtoimax.
38585         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
38586         strtoumax.
38587
38588 2001-09-20  Jim Meyering  <meyering@lucent.com>
38589
38590         * lib/xstrtol.c (strtoimax): Guard declaration with
38591         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
38592         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
38593         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
38594         (strtoumax): Likewise, for completeness (it wasn't necessary).
38595
38596 2001-09-17  Paul Eggert  <eggert@twinsun.com>
38597
38598         * lib/strtoimax.c (HAVE_LONG_LONG):
38599         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
38600         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
38601         to work around bug in IBM C compiler.
38602
38603 2001-09-17  Jim Meyering  <meyering@lucent.com>
38604
38605         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
38606         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
38607         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
38608         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
38609         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
38610         whenever the right hand side need not be expanded by the shell.
38611
38612 2001-09-16  Paul Eggert  <eggert@twinsun.com>
38613
38614         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
38615         library.  It's not correct, as some older glibcs are buggy.
38616         fnmatch wasn't fixed until glibc 2.2.
38617
38618         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
38619         special shell magic here.
38620
38621 2001-09-16  Jim Meyering  <meyering@lucent.com>
38622
38623         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
38624         * m4/jm-macros.m4: Require it.
38625
38626 2001-09-16  Jim Meyering  <meyering@lucent.com>
38627
38628         * lib/mkdir.c: New file.
38629
38630 2001-09-15  Jim Meyering  <meyering@lucent.com>
38631
38632         * m4/jm-macros.m4: Check for help2man.
38633
38634 2001-09-11  Jim Meyering  <meyering@lucent.com>
38635
38636         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
38637         The body, by Paul Eggert, was moved here from configure.in.
38638         * m4/jm-macros.m4: Require UTILS_HOST_OS.
38639
38640 2001-09-04  Paul Eggert  <eggert@twinsun.com>
38641
38642         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
38643         (jm_PREREQ): Use it.
38644
38645 2001-09-04  Paul Eggert  <eggert@twinsun.com>
38646
38647         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
38648         Use ssize_t, not int, to store result of readlink.
38649         Check for ssize_t overflow as well as size_t overflow,
38650         as POSIX says the result of readlink is implementation-defined
38651         when ssize_t overflows.
38652         Remove unnecessary cast to char*.
38653         Use free+malloc instead of realloc, as the storage doesn't need
38654         to be preserved and it's clearer and can be more efficient that way.
38655         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
38656         * lib/xreadlink.h (xreadlink): Update prototype.
38657
38658 2001-09-04  Paul Eggert  <eggert@twinsun.com>
38659
38660         * lib/xgetcwd.c: Revert some of the previous change; intead,
38661         fix the HAVE_GETCWD_NULL code to behave more like the
38662         !HAVE_GETCWD_NULL code used to.
38663
38664         Include "xalloc.h".
38665         (xgetcwd): Do not return NULL when memory is exhausted; instead,
38666         invoke xalloc_die.
38667
38668 2001-09-03  Paul Eggert  <eggert@twinsun.com>
38669
38670         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
38671         sys/param.h, as pathmax.h includes them.
38672
38673 2001-09-03  Paul Eggert  <eggert@twinsun.com>
38674
38675         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
38676         (jm_PREREQ_XGETCWD): New macro.
38677
38678         * m4/getcwd.m4: New file.
38679
38680 2001-09-03  Paul Eggert  <eggert@twinsun.com>
38681
38682         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
38683         like the HAVE_GETCWD_NULL code.
38684         Include pathmax.h if not HAVE_GETCWD.
38685         Do not include xalloc.h.
38686         (INITIAL_BUFFER_SIZE): New symbol.
38687         Do not use xmalloc / xrealloc, since the caller is responsible for
38688         handling errors.  Preserve errno around `free' during failure.
38689         Do not overrun buffer when using getwd.
38690
38691 2001-09-03  Paul Eggert  <eggert@twinsun.com>
38692
38693         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
38694         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
38695         getcwd (NULL, 0).
38696
38697 2001-09-03  Paul Eggert  <eggert@twinsun.com>
38698
38699         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
38700         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
38701         spotted by Jim Meyering.
38702
38703 2001-09-03  Jim Meyering  <meyering@lucent.com>
38704
38705         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
38706         failure.
38707
38708 2001-09-02  Jim Meyering  <meyering@lucent.com>
38709
38710         * lib/error.c: Update from GNU libc.
38711
38712 2001-09-01  Jim Meyering  <meyering@lucent.com>
38713
38714         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
38715         Used by df.
38716
38717 2001-09-01  Jim Meyering  <meyering@lucent.com>
38718
38719         * lib/xreadlink.c: New file.
38720         * lib/xreadlink.h: New file.
38721         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
38722         xreadlink.h.
38723
38724         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
38725         doesn't conflict with sparc Solaris 7's definition in
38726         /usr/include/sys/int_types.h.
38727
38728         * lib/exclude.c: Use `""', not `<>' to #include non-system header
38729         files.
38730         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
38731         and strncasecmp as r-values.  Unixware didn't have declarations.
38732
38733 2001-08-31  Paul Eggert  <eggert@twinsun.com>
38734
38735         * lib/xstrtol.h: Add copyright notice.
38736         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
38737         LONGINT_INVALID_SUFFIX_CHAR.
38738
38739 2001-08-31  Paul Eggert  <eggert@twinsun.com>
38740
38741         * lib/xstrtol.c (strtoimax): New decl.
38742
38743 2001-08-31  Paul Eggert  <eggert@twinsun.com>
38744
38745         * lib/xgetcwd.c: Don't include pathmax.h.
38746         Include stdlib.h and unistd.h if available.
38747         Include xalloc.h.
38748         (xmalloc, xstrdup, free): Remove decls.
38749         (xgetcwd): Don't assume sizes fit in unsigned.
38750         Check for overflow when computing sizes.
38751         Simplify reallocation code.
38752
38753 2001-08-31  Paul Eggert  <eggert@twinsun.com>
38754
38755         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
38756         a directory's st_size can have an arbitrary value, so the old
38757         usage could waste an arbitrary amount of memory.  All uses
38758         changed.
38759         * lib/savedir.h: Update prototype.
38760
38761 2001-08-31  Paul Eggert  <eggert@twinsun.com>
38762
38763         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
38764
38765         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
38766         old strtoimax.c.
38767
38768         Also, make the following further changes to make this file's
38769         configuration more similar to that of strtol.c:
38770         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
38771         (strtoumax, uintmax_t, strtoull, strtol): Remove.
38772         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
38773         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
38774         changed to signed values.
38775
38776         And make the following changes as well:
38777         Fix copyright notice, as 1999 was missing.
38778         (verify): New macro.
38779         (strtoimax): Check sizes at compile-time, not run-time.
38780         Prefer strtol to strtoll if both work.
38781         (main): Remove; it was not that useful and was a pain to maintain.
38782
38783         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
38784
38785 2001-08-31  Jim Meyering  <meyering@lucent.com>
38786
38787         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
38788         Use an initial, malloc'd, buffer of length 128 rather than
38789         a statically allocated one of length 1024.
38790
38791 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38792
38793         Simplify code, partly by assuming autoconf 2.52 semantics.
38794
38795         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
38796
38797         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
38798         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
38799         All uses removed.
38800         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
38801         Move AC_REQUIRE to next-to-top level, to avoid confusion.
38802         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
38803         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
38804         jm_AC_HEADER_INTTYPES_H.
38805         * m4/jm-macros.m4 (jm_MACROS): Likewise.
38806
38807         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
38808
38809         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
38810         Quote first arg of AC_DEFUN.
38811         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
38812         since they are needed to parse the include file even if we need
38813         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
38814         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
38815         but with opposite signedness.
38816
38817 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38818
38819         Merge 'exclude' changes from tar 1.13.22.
38820         This fixes one or two unlikely storage allocation overflow bugs,
38821         but doesn't change user-visible behavior otherwise.
38822
38823 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38824
38825         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
38826         (jm_PREREQ_EXCLUDE): New macro.
38827
38828 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38829
38830         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
38831         tm to be declared.
38832
38833 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38834
38835         * lib/hash.c: Remove '2001' from copyright notice.
38836
38837 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38838
38839         * lib/full-write.h: New file.
38840         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
38841         * lib/full-write.c: Correct credits, as cccp.c no longer
38842         exists and anyway it was so heavily changed from the old cccp
38843         code as to be unrecognizable.  Include full-write.h.
38844         (full_write) Return size_t, with short writes meaning failure.
38845         All callers changed.  This fixes a bug with large buffers
38846         on 64-bit hosts.
38847         * lib/utime.c: Include full-write.h.
38848
38849 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38850
38851         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
38852         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
38853         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
38854         Include if available.
38855         (<xalloc.h>): Include
38856         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
38857         (verify): New macro.  Use it to verify that EXCLUDE macros do not
38858         collide with FNM macros.
38859         (struct patopts): New struct.
38860         (struct exclude): Use it, as exclude patterns now come with options.
38861         (new_exclude): Support above changes.
38862         (new_exclude, add_exclude_file):
38863         Initial size must now be a power of two to simplify overflow checking.
38864         (free_exclude, fnmatch_no_wildcards): New function.
38865         (excluded_filename): No longer requires options arg, as the options
38866         are determined by add_exclude.  Now returns bool, not int.
38867         (excluded_filename, add_exclude):
38868         Add support for the fancy new exclusion options.
38869         (add_exclude, add_exclude_file): Now takes int options arg.
38870         Check for arithmetic overflow when computing sizes.
38871         (add_exclude_file): xrealloc might modify errno, so don't
38872         realloc until after errno might be used.
38873
38874         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
38875         New macros.
38876         (free_exclude): New decl.
38877         (add_exclude, add_exclude_file): Now takes int options arg.
38878         (excluded_filename): No longer requires options arg, as the options
38879         are determined by add_exclude.  Now returns bool, not int.
38880
38881 2001-08-30  Paul Eggert  <eggert@twinsun.com>
38882
38883         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
38884
38885 2001-08-27  Jim Meyering  <meyering@lucent.com>
38886
38887         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
38888
38889         * lib/version-etc.c (N_): Remove definition.
38890         Revert most of last change.
38891         Instead, simply don't mark the `Copyright...' string for translation.
38892         Based on advice from Paul Eggert.
38893
38894         * lib/strtoxmax.c: Tweak comment.
38895
38896 2001-08-26  Jim Meyering  <meyering@lucent.com>
38897
38898         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
38899
38900         * m4/xstrtoimax.m4: New file.
38901         * m4/xstrtoumax.m4: Add comments explaining why we
38902         AC_REPLACE_FUNCS(strtol).
38903
38904 2001-08-26  Jim Meyering  <meyering@lucent.com>
38905
38906         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
38907         of copyright with `%s' so translators don't get an untranslated
38908         message in 2002.
38909         (COPYRIGHT_YEAR): Define.
38910         (version_etc): Use fprintf rather than fputs.
38911         Suggestion from Ulrich Drepper.
38912
38913         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
38914
38915         * lib/strtoll.c: New file, from GNU libc.
38916         * lib/xstrtoimax.c: New file.
38917
38918         * lib/xstrtol.h: Add xstrtoimax.
38919         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
38920         * lib/strtoimax.c: New file.  Likewise, but first define
38921         STRTOUXMAX_SIGNED.
38922
38923         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
38924         ...
38925         * lib/strtoxmax.c: ... then renamed to this.
38926
38927 2001-08-18  Paul Eggert  <eggert@twinsun.com>
38928
38929         * m4/inttypes.m4: Add AC_PREREQ(2.13).
38930         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
38931         (jm_AC_TYPE_INTMAX_T): New macro.
38932         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
38933
38934         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
38935
38936         * m4/longlong.m4: Renamed from ulonglong.m4.
38937         * m4/inttypes.m4: Renamed from inttypes_h.m4.
38938         * m4/uintmax_t.m4: Removed.
38939
38940 2001-08-13  Paul Eggert  <eggert@twinsun.com>
38941
38942         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
38943         Port to Solaris 8, where 'sed' requires a space after the 'r'
38944         command, and where sh dislikes "$/".  Clean up the spacing a bit.
38945         Redirect output to $tmp just once.
38946
38947 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
38948
38949         * lib/addext.c (<errno.h>): Include.
38950         (errno): Declare if not defined.
38951         (addext): Work correctly when pathconf returns -1 and leaves
38952         errno alone because there is no limit.  Also, work even if
38953         pathconf returns a value greater than SIZE_MAX.
38954
38955 2001-08-12  Jim Meyering  <meyering@lucent.com>
38956
38957         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
38958         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
38959         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
38960         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
38961         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
38962         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
38963         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
38964         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
38965         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
38966         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
38967         utime.m4, utimes.m4, xstrtoumax.m4:
38968         Quote the first argument in each use of AC_DEFUN.
38969
38970 2001-08-12  Jim Meyering  <meyering@lucent.com>
38971
38972         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
38973         Simply `return getcwd (NULL, 0);'.
38974         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
38975         Use 1300 as initial value for length, not PATH_MAX.
38976
38977         * lib/pathmax.h: Clean up cpp syntax.
38978
38979 2001-08-12  Jim Meyering  <meyering@lucent.com>
38980
38981         * lib/gettimeofday.c: New file.
38982         * lib/gtod.h: New file.
38983         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
38984
38985 2001-08-05  Jim Meyering  <meyering@lucent.com>
38986
38987         * m4/jm-macros.m4: Require autoconf-2.52.
38988
38989 2001-08-04  Jim Meyering  <meyering@lucent.com>
38990
38991         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
38992         stmt, to get in sync with glibc.
38993
38994 2001-08-03  Paul Eggert  <eggert@twinsun.com>
38995
38996         The following changes are from gettext 0.10.39 as maintained by
38997         Bruno Haible.
38998
38999         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
39000         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
39001         with inverted sense.  All uses changed.
39002
39003         * lib/mbswidth.c: Don't include <limits.h>.
39004         Include <stdlib.h> and <string.h> unconditionally.
39005         (iswcntrl, mbsinit, ISCNTRL): New macros.
39006         (mbsnwidth): Use K&R style function declarations.
39007         Don't bother checking for MB_LEN_MAX == 1, since the compiler
39008         can optimize it when MB_CUR_MAX == 1.
39009         The width of control characters is zero, not 1.
39010
39011 2001-08-03  Paul Eggert  <eggert@twinsun.com>
39012
39013         The following changes are from gettext 0.10.39 as maintained by
39014         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
39015
39016         * m4/codeset.m4: Upgrade to serial AM1.
39017         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
39018         all uses changed.  Quote first arg of AC_DEFUN.
39019         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
39020
39021         * m4/iconv.m4: Upgrade to serial AM2.
39022         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
39023         Add --with-libconv-prefix.
39024         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
39025         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
39026         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
39027         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
39028         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
39029
39030         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
39031         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
39032         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
39033         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
39034         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
39035         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
39036         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
39037         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
39038         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
39039
39040         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
39041         string.h any more.
39042
39043         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
39044         not the default value.
39045
39046         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
39047         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
39048         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
39049         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
39050         Also check for iswcntrl, used for wcwidth fallback.
39051         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
39052         to Autoconf 2.13.
39053
39054 2001-08-03  Jim Meyering  <meyering@lucent.com>
39055
39056         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
39057         as it was in the original.  Reported by Paul Eggert.
39058
39059 2001-07-16  Jim Meyering  <meyering@lucent.com>
39060
39061         * m4/gettimeofday.m4: New file.
39062         Prompted by a report from Bernhard Baehr.
39063
39064 2001-07-15  Jim Meyering  <meyering@lucent.com>
39065
39066         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
39067         stuff. Now it's in ../Makefile.cfg.
39068
39069 2001-07-15  Jim Meyering  <meyering@lucent.com>
39070
39071         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
39072         (BUILT_SOURCES): Add unlocked-io.h.
39073         (io_functions): Define.
39074         (unlocked-io.h): New rule.
39075         (DISTCLEANFILES): Add unlocked-io.h.
39076         (all-local): Depend on unlocked-io.h, to ensure it is created.
39077
39078         * lib/unlocked-io.hin: New file
39079
39080         * lib/regex.c: Update from glibc.
39081
39082 2001-07-05  Jim Meyering  <meyering@lucent.com>
39083
39084         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
39085         recommendation.
39086         (libfetish_a_SOURCES): Put all .h files here instead.
39087         Remove a thus-exposed (better checks in automake) duplicate and
39088         two unnecessary .h files.
39089
39090 2001-07-04  Jim Meyering  <meyering@lucent.com>
39091
39092         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
39093         that generates jm-glibc-io.m4 so that it doesn't trigger any make
39094         distcheck failure.
39095
39096 2001-07-02  Jim Meyering  <meyering@lucent.com>
39097
39098         The following changes were prompted by suggestions from Bruno Haible.
39099
39100         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
39101         is now generated.
39102         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
39103         definition of EXTRA_DIST.
39104         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
39105         ensure that the generated file is created/updated whenever the list
39106         of $(unlocked_functions) is changed.
39107         (jm-glibc-io.m4): New rule.
39108         (unlocked-io.h): New rule -- currently unused.
39109
39110 2001-06-24  Jim Meyering  <meyering@lucent.com>
39111
39112         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
39113         unmatched right bracket, rather than kludging it with an extra,
39114         falsely-matching quote in a comment.  Patch by Akim Demaille.
39115
39116 2001-06-11  Jim Meyering  <meyering@lucent.com>
39117
39118         * lib/regex.c: Update from GNU libc.
39119
39120 2001-05-27  Jim Meyering  <meyering@lucent.com>
39121
39122         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
39123         Check for ut_type in struct utmp.
39124
39125 2001-05-27  Jim Meyering  <meyering@lucent.com>
39126
39127         * lib/readutmp.h (UT_TYPE): Define.
39128
39129 2001-05-24  Jim Meyering  <meyering@lucent.com>
39130
39131         * lib/argmatch.c: Include "quote.h".
39132         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
39133         quote function.  Reported by Göran Uddeborg.
39134
39135 2001-05-22  Jim Meyering  <meyering@lucent.com>
39136
39137         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
39138         now that we use the package-supplied version unconditionally.
39139         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
39140
39141 2001-05-21  Jim Meyering  <meyering@lucent.com>
39142
39143         * m4/regex.m4: Change a couple backticks to single quotes to avoid
39144         shell syntax errors.
39145
39146 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
39147
39148         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
39149
39150 2001-05-20  Paul Eggert  <eggert@twinsun.com>
39151
39152         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
39153         Don't bother to check library strftime, since
39154         we'll be using our own my_strftime function anyway.
39155         Define my_strftime instead of strftime.
39156
39157 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
39158
39159         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
39160         which is not yet declared.
39161
39162 2001-05-15  Jim Meyering  <meyering@lucent.com>
39163
39164         * m4/regex.m4: Use proper quoting so brackets appear in the test
39165         program.
39166         Reported by, and with help from, Bruno Haible.
39167
39168 2001-05-13  Jim Meyering  <meyering@lucent.com>
39169
39170         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
39171         undefined.
39172
39173 2001-05-11  Paul Eggert  <eggert@twinsun.com>
39174
39175         dirname code cleanup.  base_name now behaves more compatibly
39176         with POSIX basename when given file names that have trailing
39177         slashes, and similarly for dir_name.  Add new primitives
39178         base_len and dir_len.  Put the directory-name-related decls
39179         into dirname.h.
39180
39181         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
39182         * lib/backupfile.c (base_name): Likewise.
39183         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
39184         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
39185         * lib/makepath.c (strip_trailing_slashes): Likewise.
39186         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
39187         ISSLASH): Likewise.
39188         * lib/rename.c (strip_trailing_slashes): Likewise.
39189         * lib/same.c (base_name): Likewise.
39190         * lib/stripslash.c (ISSLASH): Likewise.
39191
39192         * lib/addext.c: Include <dirname.h> after size_t is defined.
39193         * lib/backupfile.c: Likewise.
39194
39195         * lib/addext.c (addext): Use base_len to trim redundant
39196         trailing slashes instead of doing it ourselves.
39197         But do not trim the last slash if it is not redundant.
39198
39199         * lib/backupfile.c (find_backup_file_name,
39200         max_backup_version): Use base_len instead of rolling it ourselves.
39201         Handle the case of "" and (on DOS) "C:" correctly.
39202
39203         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
39204         needed. Include <string.h>, <dirname.h>.
39205         (base_name): Allow file names ending in slashes, other than names
39206         that are all slashes.  In this case, return the basename followed
39207         by the slashes.  This is more general, and can be used in places
39208         where the original base_name purposely had an assertion failure.
39209         (base_len): New function.
39210
39211         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
39212         Do not include <assert.h>; no longer needed.
39213         Include xalloc.h.
39214         (memrchr): Remove decl.
39215         (dir_name_r): Remove.
39216         (dir_len): Renamed from dirlen.  All callers changed.
39217         Rewrite in terms of base_name, for simplicity and consistency.
39218         (dir_name): Never return NULL.  All callers changed.
39219         Do not include <stdlib.h> in test program; no longer needed.
39220         return 0; is fine for test program.
39221
39222         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
39223         New macros.
39224         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
39225
39226         * lib/path-concat.c (path_concat): Use base_len to compute
39227         base length, not strlen; this means we cannot rely on memcpy
39228         to null-terminate.
39229
39230         * lib/same.c (STREQ): Remove.
39231         (same_name): Handle the case where the basename ends in trailing '/'.
39232
39233         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
39234         a slash was stripped.  Do not strip the last slash after a
39235         file system prefix.
39236
39237 2001-05-11  Paul Eggert  <eggert@twinsun.com>
39238
39239         * lib/Makefile.am (libfetish_a_SOURCES):
39240         Add strftime.c, since we now compile it on all hosts.
39241
39242         * lib/strftime.c (my_strftime):
39243         Define to nstrftime if emacs, but only if my_strftime is not defined.
39244         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
39245         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
39246         Add one more extra argument: a nanoseconds value.
39247         All uses changed.
39248         (ns): New macro.
39249         (my_strftime function): Add %N format.
39250         (emacs_strftimeu): Renamed from emacs_strftime,
39251         with extra ut argument.
39252
39253 2001-05-09  Paul Eggert  <eggert@twinsun.com>
39254
39255         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
39256
39257 2001-04-21  Jim Meyering  <meyering@lucent.com>
39258
39259         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
39260         doesn't interfere.
39261
39262 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
39263
39264         * m4/ftruncate.m4: Check for chsize.
39265         Link with ftruncate.o unconditionally if ftruncate is missing.
39266         This was required when cross-compiling to i586-mingw32msvc.
39267
39268 2001-04-08  Jim Meyering  <meyering@lucent.com>
39269
39270         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
39271         recomputed; that's necessary when the offset spans a DST transition.
39272         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
39273
39274 2001-04-02  Jim Meyering  <meyering@lucent.com>
39275
39276         * lib/regex.h, regex.c: Update from GNU libc.
39277
39278 2001-03-24  Jim Meyering  <meyering@lucent.com>
39279
39280         * m4/jm-macros.m4: Require autoconf-2.49d.
39281
39282 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
39283
39284         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
39285
39286 2001-03-19  Paul Eggert  <eggert@twinsun.com>
39287
39288         * lib/version-etc.c (version_etc_copyright): Update to 2001.
39289
39290 2001-03-17  Jim Meyering  <meyering@lucent.com>
39291
39292         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
39293         now that the version in autoconf is equivalent.
39294         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
39295
39296         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
39297         Suggestion from Akim Demaille.
39298
39299         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
39300         (jm_PREREQ_TEMPNAME): New function.
39301
39302 2001-03-16  Paul Eggert  <eggert@twinsun.com>
39303
39304         * lib/tempname.c (uint64_t): Define to uintmax_t if
39305         not defined, and if UINT64_MAX is not defined.
39306         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
39307         Reported by John David Anglin.
39308
39309 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
39310
39311         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
39312         resolve alias if codeset is empty.
39313         * lib/config.charset (BeOS): Use wildcard syntax.
39314
39315 2001-03-13  Jim Meyering  <meyering@lucent.com>
39316
39317         * lib/path-concat.c (path_concat)
39318         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
39319         concatenating e.g., `C:' and `foo'.
39320         From Bruno Haible.
39321
39322 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
39323
39324         * lib/localcharset.c (locale_charset): Don't use
39325         setlocale(LC_CTYPE,NULL). Don't return NULL.
39326         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
39327
39328 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
39329
39330         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
39331         support for DOS/DJGPP.
39332
39333 2001-03-01  Paul Eggert  <eggert@twinsun.com>
39334
39335         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
39336         lacks mkstemp.  Compile our own tempname.c if we compile our own
39337         mkstemp.c, as mkstemp relies on tempname.
39338
39339 2001-03-01  Jim Meyering  <meyering@lucent.com>
39340
39341         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
39342         AH_VERBATIM really does output its argument verbatim.
39343
39344 2001-02-28  Paul Eggert  <eggert@twinsun.com>
39345
39346         * lib/Makefile.am (libfetish_a_SOURCES):
39347         Add dup-safer.c, fopen-safer.c.
39348         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
39349
39350         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
39351         * lib/unistd-safer.h: New files.
39352
39353 2001-02-25  Paul Eggert  <eggert@twinsun.com>
39354
39355         The mkstemp replacement is taken from glibc 2.2.2, with some
39356         portability fixes for use outside glibc, as follows:
39357
39358         * lib/tempname.c (struct_stat64): New macro.
39359         (direxists, __gen_tempname): Use it.
39360         This avoids a portability problem with Solaris 8.
39361
39362         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
39363         (<stddef.h>, <stdint.h>, <string.h>):
39364         Include only if STDC_HEADERS || _LIBC.
39365         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
39366         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
39367         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
39368         (__set_errno): Define this macro if <errno.h> doesn't.
39369         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
39370         Define these macros if <stdio.h> doesn't.
39371         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
39372         Define these macros if <sys/stat.h>
39373         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
39374         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
39375         __xstat64): Define if not _LIBC.
39376         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
39377         (__gen_tempname): Invoke gettimeofday only if
39378         HAVE_GETTIMEOFDAY || _LIBC;
39379         otherwise, fall back on plain "time".
39380         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
39381
39382         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
39383
39384         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
39385
39386 2001-02-18  Paul Eggert  <eggert@twinsun.com>
39387
39388         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
39389
39390 2001-02-17  Paul Eggert  <eggert@twinsun.com>
39391
39392         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
39393         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
39394         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
39395         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
39396
39397 2001-02-17  Paul Eggert  <eggert@twinsun.com>
39398
39399         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
39400         Remove workaround macros for hosts that have mbrtowc but not
39401         mbstate_t, as we now insist on proper declarations for both
39402         before using mbrtowc.
39403
39404 2001-02-17  Jim Meyering  <meyering@lucent.com>
39405
39406         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
39407         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
39408         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
39409         UnixWare 7.1.1.
39410
39411         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
39412         rather than AC_CACHE_VAL.
39413
39414 2001-02-17  Jim Meyering  <meyering@lucent.com>
39415
39416         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
39417         around included file name.
39418
39419         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
39420
39421         * lib/strftime.c: Update from GNU libc (the only changes were to
39422         comments).
39423
39424 2001-02-17  Jim Meyering  <meyering@lucent.com>
39425
39426         * lib/regex.c: Update from libc.
39427
39428 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
39429
39430         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
39431         clash.
39432
39433 2001-02-16  Paul Eggert  <eggert@twinsun.com>
39434
39435         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
39436         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
39437         Reported by Mark Hounschell via Paul Eggert.
39438
39439 2001-02-07  Jim Meyering  <meyering@lucent.com>
39440
39441         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
39442
39443 2001-02-05  Jim Meyering  <meyering@lucent.com>
39444
39445         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
39446         it includes the patch required for `large file' support with at least
39447         HP-UX's 10.20 /bin/cc.
39448
39449 2001-02-03  Jim Meyering  <meyering@lucent.com>
39450
39451         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
39452         AS_IF, now that it works once again (mysteriously).
39453         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
39454
39455 2001-01-30  Jim Meyering  <meyering@lucent.com>
39456
39457         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
39458         * m4/chown.m4: Rename conftestchown to conftest.chown.
39459         * m4/rename.m4: s/conftestdir/conftest.d1/ and
39460         s/conftestdir2/conftest.d2/.
39461         * m4/utimes.m4: s/conftestdata/conftest.data/
39462         Inspired by Pavel Roskin's change in autoconf.
39463
39464 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
39465
39466         * lib/config.charset: Update for FreeBSD 4.2.
39467
39468 2001-01-27  Jim Meyering  <meyering@lucent.com>
39469
39470         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
39471         a use of AS_IF.
39472         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
39473
39474 2001-01-26  Jim Meyering  <meyering@lucent.com>
39475
39476         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
39477         quotearg.c includes it.
39478
39479 2001-01-26  Jim Meyering  <meyering@lucent.com>
39480
39481         * lib/quotearg.c: Include stddef.h.
39482         * lib/quote.c: Include stddef.h.
39483         Reported by Axel Kittenberger.
39484
39485         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
39486         line in double quotes so that it evokes a better diagnostic.
39487         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
39488         Reported by Axel Kittenberger.
39489
39490 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
39491
39492         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
39493         as if it was a `charset'.
39494
39495 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
39496
39497         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
39498         has const.
39499
39500 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
39501
39502         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
39503         to avoid a warning.  Add back 'const' to inptr.
39504
39505 2001-01-20  Jim Meyering  <meyering@lucent.com>
39506
39507         Be sure that headers are checked before used in code compiled
39508         for the type checks.
39509         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
39510         In place of that, invoke jm_CHECK_ALL_TYPES.
39511         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
39512         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
39513         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
39514         The check for ssize_t was mistakenly run before the test for unistd.h.
39515
39516         The configure-time check for stdbool.h was missing.
39517         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
39518         (jm_PREREQ_HASH): New function.
39519
39520 2001-01-17  Jim Meyering  <meyering@lucent.com>
39521
39522         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
39523         for autoconf-2.49c.
39524         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
39525
39526 2001-01-16  Jim Meyering  <meyering@lucent.com>
39527
39528         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
39529         From Bruno Haible.
39530
39531 2001-01-14  Jim Meyering  <meyering@lucent.com>
39532
39533         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
39534         foo and bar.  Create conftestdir/ in the script, not in the C code.
39535         Remove directories in the script, not in the C code.
39536         Remove conftestdir{,2} before trying to create the directory.
39537         Make the entire configure script fail if the mkdir fails.
39538
39539 2001-01-14  Jim Meyering  <meyering@lucent.com>
39540
39541         * lib/rename.c: New file.  From Volker Borchert.
39542         Include stdlib.h, string.h or strings.h, and xalloc.h.
39543         Use strip_trailing_slashes rather than open-coding it.
39544
39545 2001-01-03  Paul Eggert  <eggert@twinsun.com>
39546
39547         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
39548
39549 2001-01-03  Jim Meyering  <meyering@lucent.com>
39550
39551         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
39552         of local `inptr' to avoid warning with some system declarations of
39553         iconv.
39554
39555 2001-01-02  Volker Borchert  <bt@teknon.de>
39556
39557         * m4/rename.m4: New file.
39558         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
39559
39560 2001-01-01  Jim Meyering  <meyering@lucent.com>
39561
39562         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
39563         even on systems with utmpx.h.  It's necessary for the declaration of
39564         utmp's ut_user member.  Reported by Andreas Jaeger.
39565
39566         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
39567         available. They are required for the declarations of getgrgid and
39568         getpwuid resp.
39569         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
39570         Reported by Andreas Jaeger.
39571
39572 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
39573
39574         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
39575         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
39576         so `make install' also works in VPATH builds.
39577
39578 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
39579
39580         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
39581         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
39582         can be used in subdirectories.
39583
39584 2000-12-29  Paul Eggert  <eggert@twinsun.com>
39585
39586         * lib/modechange.c: Do not assume that mode_t uses the
39587         traditional octal encoding.  E.g. "chmod 1 FOO" should set
39588         the other-execute bit of FOO even if S_IXOTH != 1.
39589
39590         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
39591         WOTH, XOTH, ALLM): New macros.
39592         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
39593          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
39594         Use them.
39595         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
39596         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
39597         (mode_compile):
39598         No need to use uintmax_t; unsigned long is long enough.
39599         Don't bother to get suffix since we don't use it.
39600
39601 2000-12-26  Jim Meyering  <meyering@lucent.com>
39602
39603         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
39604         better with autoheader.
39605
39606 2000-12-24  Jim Meyering  <meyering@lucent.com>
39607
39608         * lib/hash.c (is_prime): Return explicit boolean values.
39609         (hash_get_first): Return NULL to appease Irix5.6's 89.
39610         Reported by Nelson Beebe.
39611
39612 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
39613
39614         * lib/localcharset.c (locale_charset): Add support for Win32.
39615
39616 2000-12-18  Paul Eggert  <eggert@twinsun.com>
39617
39618         * lib/physmem.h, lib/physmem.c: New files.
39619
39620         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
39621         (noinst_HEADERS): Add physmem.h.
39622
39623         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
39624         't' for compatibility with Solaris 8 sort.
39625
39626 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
39627
39628         * lib/config.charset: Add support for BeOS.
39629
39630 2000-12-17  Jim Meyering  <meyering@lucent.com>
39631
39632         * m4/dos.m4 (jm_AC_DOS): New file and macro.
39633         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
39634
39635 2000-12-16  Jim Meyering  <meyering@lucent.com>
39636
39637         This bug had a serious impact on chown: `chown N:M FILE' (for integer
39638         N and M) would have treated it like `chown N:N FILE'.
39639
39640         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
39641
39642 2000-12-16  Jim Meyering  <meyering@lucent.com>
39643
39644         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
39645         SHELLS_FILE to a file name that's useful on djgpp systems.
39646         Include stdlib.h.
39647         (ADDITIONAL_DEFAULT_SHELLS): Define.
39648         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
39649         Based mostly on a patch from Prashant TR.
39650
39651 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
39652
39653         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
39654         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
39655         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
39656
39657 2000-12-08  Andreas Schwab  <schwab@suse.de>
39658
39659         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
39660         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
39661
39662 2000-12-07  Jim Meyering  <meyering@lucent.com>
39663
39664         * lib/stripslash.c (ISSLASH): Define.
39665         (strip_trailing_slashes): Use ISSLASH rather than comparing against
39666         `/'.
39667         From Prashant TR.
39668
39669         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
39670         (dir_name_r): Declare this function as static.
39671         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
39672         manifest itself on a name containing a mix of slashes and
39673         backslashes.
39674         Make this function work with names starting with a DOS-style
39675         drive letter and colon prefix.
39676         (dir_name): Append `.' if necessary.
39677         Based mostly on patches from Prashant TR and Eli Zaretskii.
39678
39679         * lib/dirname.h (dir_name_r): Remove prototype.
39680
39681 2000-12-06  Paul Eggert  <eggert@twinsun.com>
39682
39683         * m4/off_t-format.m4: Remove this file.
39684         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
39685
39686 2000-12-06  Jim Meyering  <meyering@lucent.com>
39687
39688         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
39689         replacement strtoull, we may well need the replacement strtoul, too.
39690         Check for declarations of strtoul and strtoull.
39691         Check for strtol.  Mainly as a cue to cause automake to include
39692         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
39693         Check for limits.h -- strtol.c needs it.
39694
39695 2000-12-05  Jim Meyering  <meyering@lucent.com>
39696
39697         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
39698
39699 2000-12-04  Jim Meyering  <meyering@lucent.com>
39700
39701         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
39702         Also include memory.h, stdlib.h, unistd.h if appropriate.
39703         Reported by Andreas Jaeger (conflicting declaration of malloc).
39704
39705 2000-12-02  Jim Meyering  <meyering@lucent.com>
39706
39707         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
39708         * m4/jm-macros.m4 (jm_MACROS): require it.
39709
39710 2000-12-02  Jim Meyering  <meyering@lucent.com>
39711
39712         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
39713
39714 2000-12-01  Paul Eggert  <eggert@twinsun.com>
39715
39716         * lib/memrchr.c: Include <config.h> before any system include file.
39717
39718 2000-11-30  Jim Meyering  <meyering@lucent.com>
39719
39720         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
39721
39722 2000-11-30  Jim Meyering  <meyering@lucent.com>
39723
39724         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
39725
39726 2000-11-29  Paul Eggert  <eggert@twinsun.com>
39727
39728         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
39729
39730 2000-11-26  Jim Meyering  <meyering@lucent.com>
39731
39732         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
39733
39734 2000-11-22  Paul Eggert  <eggert@twinsun.com>
39735
39736         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
39737         size of (size_t) -1; it's not portable.
39738
39739 2000-11-17  Jim Meyering  <meyering@lucent.com>
39740
39741         * lib/strstr.c: Update from GNU libc.
39742
39743 2000-11-17  Akim Demaille  <akim@epita.fr>
39744
39745         * lib/obstack.h: Formatting changes.
39746         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
39747         prevent type checking.
39748         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
39749         cast the value to (void *): assigning a `foo *' to a `void *'
39750         variable is valid.
39751         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
39752
39753 2000-11-16  Jim Meyering  <meyering@lucent.com>
39754
39755         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
39756
39757 2000-11-11  Jim Meyering  <meyering@lucent.com>
39758
39759         * lib/error.c: Add a couple #includes, merging from GNU libc version.
39760
39761 2000-11-10  Jim Meyering  <meyering@lucent.com>
39762
39763         * lib/obstack.h: Update from GNU libc.
39764         * lib/obstack.c: Likewise.
39765
39766 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
39767
39768         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
39769
39770 2000-11-06  Paul Eggert  <eggert@twinsun.com>
39771
39772         * lib/getusershell.c (setusershell): Use rewind rather than
39773         fseek/fseeko, to avoid configuration hassles with fseeko.
39774         Don't bother opening SHELLS_FILE if shellstream is NULL;
39775         it's not necessary.
39776
39777 2000-11-05  Jim Meyering  <meyering@lucent.com>
39778
39779         * lib/makepath.h (make_dir): Declare.
39780         * lib/makepath.c (make_dir): Remove `static' attribute.
39781         Tweak a comment.
39782
39783 2000-11-04  Jim Meyering  <meyering@lucent.com>
39784
39785         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
39786
39787 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
39788
39789         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
39790         last one in a bucket, advance to the next bucket.
39791
39792 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
39793
39794         * lib/fnmatch.c: Do not comment out all the code if we are using
39795         the GNU C library, because in some cases we are replacing buggy
39796         code in the GNU C library itself.
39797
39798 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
39799
39800         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
39801         (regex_compile): Catch bogus \(\1\).
39802
39803 2000-10-30  Paul Eggert  <eggert@twinsun.com>
39804
39805         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
39806         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
39807         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
39808
39809 2000-10-30  Paul Eggert  <eggert@twinsun.com>
39810
39811         * lib/error.h, getline.h, modechange.h:
39812         Remove "2000" from Copyright line, as the file hasn't been
39813         changed this year other than in the copyright notice.
39814
39815         * lib/xalloc.h: Add "2000" to Copyright line, as this file
39816         was changed this year.
39817
39818 2000-10-29  Jim Meyering  <meyering@lucent.com>
39819
39820         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
39821         renaming.
39822         * m4/ls-mntd-fs.m4: Likewise
39823
39824 2000-10-29  Jim Meyering  <meyering@lucent.com>
39825
39826         * lib/xstat.in: Fix grammar in comment.
39827
39828 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
39829
39830         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
39831         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
39832         doesn't define __restrict_arr.
39833
39834 2000-10-28  Jim Meyering  <meyering@lucent.com>
39835
39836         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
39837         (jm_PREREQ_MEMCHR): New function.
39838
39839 2000-10-28  Jim Meyering  <meyering@lucent.com>
39840
39841         * lib/memchr.c: Update from libc.
39842         Adjust for portability:
39843         [HAVE_STDLIB_H]: Include stdlib.h.
39844         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
39845         Undef __memchr, too.
39846         [!weak_alias]: Define __memchr to memchr.
39847
39848         * lib/regex.c: Update from libc.
39849         * lib/regex.h: Likewise.
39850         * lib/getopt1.c: Likewise.
39851         * lib/memcmp.c: Likewise.
39852
39853         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
39854         Avoid using fseek, when possible -- it's broken by design.
39855         Patch by Ulrich Drepper.
39856
39857 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
39858
39859         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
39860         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
39861         Giving in to popular pressure to shut up the compiler with casts.
39862
39863 2000-10-26  Jim Meyering  <meyering@lucent.com>
39864
39865         * lib/strftime.c: Update from libc.
39866
39867 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
39868
39869         * regex.c: More `unsigned char' -> `re_char' changes.
39870         Also change several `int' into `re_wchar_t'.
39871         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
39872         (PUSH_FAILURE_POINTER): Don't cast any more.
39873         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
39874         We want GCC to complain, since this piece of code makes
39875         re_match non-reentrant, which *should* be fixed.
39876         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
39877         (EXTEND_BUFFER): Use RETALLOC.
39878         (SET_LIST_BIT): Don't cast.
39879         (re_wchar_t): New type.
39880         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
39881         that those two functions will always properly return.
39882         (IMMEDIATE_QUIT_CHECK): Cast to void.
39883         (analyse_first): Use recursion rather than an explicit stack.
39884         (re_compile_fastmap): Can't fail anymore.
39885         (re_search_2): Don't check re_compile_fastmap for failure.
39886         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
39887         Now also sets the new value (passed in a new argument).
39888         (re_match_2_internal): Use it.
39889         Also, use a new var `reg' of type size_t when looping through regs
39890         rather than reuse the inappropriate `mcnt'.
39891
39892 2000-10-25  Jim Meyering  <meyering@lucent.com>
39893
39894         * lib/obstack.c: Update from libc.
39895
39896 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
39897
39898         * regex.c (regex_compile): Change the way of handling a range from
39899         a char less than 256 to a char not less than 256.
39900
39901 2000-10-24  Andrew Innes  <andrewi@gnu.org>
39902
39903         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
39904         NT-Emacs only.
39905         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
39906         so that re_search functions only quit when callers expect them to.
39907
39908 2000-10-23  Jim Meyering  <meyering@lucent.com>
39909
39910         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
39911         wrong.  That set_locale call must not have any side effects.
39912         From Paul Eggert.
39913
39914 2000-10-22  Jim Meyering  <meyering@lucent.com>
39915
39916         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
39917         [CYCLIC]: Remove now-unused definition.
39918
39919         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
39920         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
39921         Suggestion from Ulrich Drepper.
39922
39923 2000-10-21  Jim Meyering  <meyering@lucent.com>
39924
39925         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
39926         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
39927         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
39928
39929 2000-10-21  Jim Meyering  <meyering@lucent.com>
39930
39931         * lib/dirname.c (memrchr): Declare if necessary.
39932         (dir_name): Remove the restriction that there be no
39933         trailing slashes.  Now, this code skips past them, effectively
39934         ignoring them.
39935         [TEST_DIRNAME] (main): New unit tests.
39936
39937         * lib/memrchr.c: New file from GNU libc.
39938         Undef __memrchr, too.
39939         [!weak_alias]: Define __memrchr to memrchr.
39940         Guard weak_alias use with `#ifdef weak_alias'.
39941
39942 2000-10-21  Jim Meyering  <meyering@lucent.com>
39943
39944         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
39945         (dir_name): Use dir_name_r.
39946         * lib/dirname.h (dir_name_r): Declare it.
39947
39948 2000-10-17  Jim Meyering  <meyering@lucent.com>
39949
39950         * lib/quote.h (PARAMS): Define and use.
39951         Reported by Akim Demaille.
39952
39953         * lib/getopt.c: Update from libc.
39954
39955 2000-10-16  Jim Meyering  <meyering@lucent.com>
39956
39957         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
39958         setlocale.
39959         From Jan Fedak.
39960
39961 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
39962
39963         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
39964
39965 2000-09-25  Jim Meyering  <meyering@lucent.com>
39966
39967         * lib/md5.h (rol): Define (from GnuPG).
39968
39969         * lib/sha.c: Give credit (GnuPG) where due.
39970         (M): Use rol rather than open-coding it.
39971         Add a FIXME comment.
39972
39973 2000-09-21  Jim Meyering  <meyering@lucent.com>
39974
39975         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
39976         Reported by Michael Stone.
39977
39978 2000-09-20  Jim Meyering  <meyering@lucent.com>
39979
39980         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
39981         (noinst_HEADERS): Add sha.h.
39982         Based on code from Scott G. Miller and from GnuPG.
39983
39984 2000-09-18  Jim Meyering  <meyering@lucent.com>
39985
39986         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
39987         LIBS. Otherwise, everyone ends up linking with -lelf for some
39988         configurations.
39989         Reported by Mike Stone.
39990
39991 2000-09-15  Jim Meyering  <meyering@lucent.com>
39992
39993         * lib/regex.c: Update from libc.
39994
39995 2000-09-10  Jim Meyering  <meyering@lucent.com>
39996
39997         * lib/getopt.c (_getopt_internal): Update from glibc.
39998
39999 2000-09-09  Jim Meyering  <meyering@lucent.com>
40000
40001         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
40002         think it should be used as a general replacement for isascii.
40003         * lib/fnmatch.c: Likewise.
40004         * lib/mbswidth.c: Likewise
40005         * lib/regex.c: Likewise.
40006
40007         Don't use atoi.
40008         * lib/userspec.c: Include sys/param.h and limits.h.
40009         Include xstrtol.h.
40010         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
40011         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
40012         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
40013         UID, GID.  Check range.
40014
40015 2000-09-06  Jim Meyering  <meyering@lucent.com>
40016
40017         * lib/getopt.c (_getopt_internal): Update from glibc.
40018
40019 2000-08-30  Jim Meyering  <meyering@lucent.com>
40020
40021         * lib/strftime.c: Merge in changes from GNU libc.
40022
40023 2000-08-26  Jim Meyering  <meyering@lucent.com>
40024
40025         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
40026         * m4/fpending.m4: New file.
40027
40028 2000-08-26  Jim Meyering  <meyering@lucent.com>
40029
40030         * lib/closeout.c: Include "__fpending.h".
40031         (close_stdout_status): Return right away if there's nothing to flush.
40032
40033         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
40034         * lib/__fpending.c: New file.
40035         * lib/__fpending.h: New file.
40036
40037 2000-08-20  Jim Meyering  <meyering@lucent.com>
40038
40039         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
40040         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
40041         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
40042
40043 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
40044
40045         Improve fileutils installation on systems where running
40046         programs (like install) can't be unlinked.
40047         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
40048         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
40049
40050 2000-08-07  Paul Eggert  <eggert@twinsun.com>
40051
40052         Standardize on "memory exhausted" instead of "Memory exhausted"
40053         or "virtual memory exhausted".
40054         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
40055         "virtual memory exhausted".
40056         * lib/same.c (same_name): Invoke xalloc_die instead of printing
40057         our own message.
40058         * lib/userspec.c (parse_user_spec): Likewise.
40059         * lib/bumpalloc.h: comment fix
40060         * lib/same.c, userspec.c: Include xalloc.h.
40061
40062         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
40063         not char *const and pointing to a constant array.
40064         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
40065         (xrealloc): Comment fix.
40066
40067         * lib/userspec.c (parse_user_spec):
40068         Don't translate a message until just before returning,
40069         to avoid unnecessary translation.
40070
40071 2000-08-07  Jim Meyering  <meyering@lucent.com>
40072
40073         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
40074         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
40075         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
40076         getgroups.c, gethostname.c, getopt.h, group-member.c,
40077         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
40078         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
40079         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
40080         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
40081         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
40082         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
40083         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
40084         yesno.c: Back out Copyright date changes for each file with no change
40085         this year.  This eases coordination with other programs using the same
40086         source code modules.  From Paul Eggert.
40087
40088 2000-08-06  Paul Eggert  <eggert@twinsun.com>
40089
40090         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
40091         not char, for compatibility with glibc 2.1.3 strftime.c.
40092
40093 2000-08-03  Greg McGary  <greg@mcgary.org>
40094
40095         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
40096         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
40097         (EXTEND_BUFFER): Use them.
40098
40099 2000-08-01  Jim Meyering  <meyering@lucent.com>
40100
40101         * lib/dirname.c (ISSLASH): Define.
40102         (BACKSLASH_IS_PATH_SEPARATOR): Define.
40103         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
40104         both `\' and `/' may be use as path separators.
40105         Based on a patch from Prashant TR.
40106
40107 2000-07-31  Paul Eggert  <eggert@twinsun.com>
40108
40109         * lib/quotearg.c (quotearg_n_options): Don't make the initial
40110         slot vector a constant, since it might get modified.
40111
40112 2000-07-31  Jim Meyering  <meyering@lucent.com>
40113
40114         * lib/xmalloc.c: Use `virtual memory exhausted', not
40115         `Memory exhausted'.
40116         * lib/obstack.c (print_and_abort): Likewise.
40117
40118 2000-07-30  Paul Eggert  <eggert@twinsun.com>
40119
40120         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
40121         buffer, so that the caller can always quote one small
40122         component of a "memory exhausted" message in slot 0.
40123         From a suggestion by Jim Meyering.
40124
40125 2000-07-30  Jim Meyering  <meyering@lucent.com>
40126
40127         * lib/makepath.c (make_path): Quote the other instance, too.
40128
40129         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
40130         (STATIC_BUF_SIZE): Define.
40131         (quotearg_n_options): Use only statically allocated storage when
40132         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
40133         than STATIC_BUF_SIZE.
40134
40135 2000-07-29  Jim Meyering  <meyering@lucent.com>
40136
40137         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
40138         * lib/dirname.c (dir_name): Likewise.
40139
40140         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
40141         `/'.
40142
40143         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
40144         (dir_name): Assert that there are no trailing slashes.
40145
40146 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
40147
40148         * lib/mbswidth.h (mbswidth): Add a flags argument.
40149         (mbswidth): New declaration.
40150         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
40151         * lib/mbswidth.c (mbswidth): Add a flags argument.
40152         (mbsnwidth): New function.
40153
40154 2000-07-24  Jim Meyering  <meyering@lucent.com>
40155
40156         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
40157
40158 2000-07-23  Paul Eggert  <eggert@twinsun.com>
40159
40160         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
40161
40162 2000-07-23  Paul Eggert  <eggert@twinsun.com>
40163
40164         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
40165         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
40166         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
40167         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
40168         invoke multibyte primitives.
40169
40170 2000-07-23  Paul Eggert  <eggert@twinsun.com>
40171
40172         * lib/quotearg.c:
40173         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
40174         so that mbstate_t is always defined.
40175
40176         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
40177         be 1 in at least one GCC installation, and this configuration
40178         error is likely to be common.  Ignoring MB_LEN_MAX hurts
40179         performance on hosts that have mbrtowc but have only unibyte
40180         locales, but I assume these hosts are rare.
40181
40182 2000-07-23  Paul Eggert  <eggert@twinsun.com>
40183
40184         * lib/mbswidth.c (_XOPEN_SOURCE):
40185         Don't define; this causes problems on Solaris 7.
40186         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
40187
40188 2000-07-23  Jim Meyering  <meyering@lucent.com>
40189
40190         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
40191         too: getgrgid, getpwuid, getuid.
40192
40193 2000-07-23  Jim Meyering  <meyering@lucent.com>
40194
40195         * lib/basename.c (base_name): Add an assertion.
40196
40197 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
40198
40199         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
40200         shadow its mbsinit function.
40201
40202 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
40203
40204         * lib/mbswidth.h: New file.
40205         * lib/mbswidth.c: New file.
40206         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
40207         (noinst_HEADERS): Add mbswidth.h.
40208
40209 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
40210
40211         * lib/config.charset: Add support for FreeBSD. Improve support for
40212         HP-UX and IRIX 6.
40213
40214 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
40215
40216         * m4/mbswidth.m4: New file.
40217         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
40218
40219 2000-07-15  Jim Meyering  <meyering@lucent.com>
40220
40221         * lib/makepath.c: Include quote.h.
40222         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
40223         corresponding argument in a `quote (...)' call.
40224         Give better diagnostics.
40225
40226         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
40227         (noinst_HEADERS): Add quote.h.
40228
40229         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
40230         from tar's src/misc.c.
40231         * lib/quote.h: New file.  Prototypes for same.
40232
40233 2000-07-14  Paul Eggert  <eggert@twinsun.com>
40234
40235         From a suggestion by Bruno Haible.
40236         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
40237         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
40238         to decide whether to define the BeOS workaround macro;
40239         this adjusts to the change to AC_MBSTATE_T.
40240
40241 2000-07-14  Jim Meyering  <meyering@lucent.com>
40242
40243         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
40244         jm_AC_TYPE_UINTMAX_T.
40245
40246 2000-07-13  Paul Eggert  <eggert@twinsun.com>
40247
40248         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
40249
40250         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
40251         quotearg_buffer_restyled): Add support for
40252         clocale_quoting_style.  Undo previous change to
40253         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
40254         and "{RIGHT QUOTATION MARK}" msgids.
40255
40256 2000-07-10  Paul Eggert  <eggert@twinsun.com>
40257
40258         From a suggestion by Bruno Haible.
40259         * m4/mbstate_t.m4 (AC_MBSTATE_T):
40260         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
40261         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
40262         and mbstate_t, to a single-part test that simply defines mbstate_t.
40263         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
40264         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
40265
40266 2000-07-10  Jim Meyering  <meyering@lucent.com>
40267
40268         * m4/strerror_r.m4: Mirror the correction made in autoconf.
40269
40270         * m4/gnu-source.m4: Output to confdefs.h directly.
40271         Suggestion from Akim Demaille.
40272
40273 2000-07-09  Paul Eggert  <eggert@twinsun.com>
40274
40275         The old behavior of quoting `like this' doesn't look good with
40276         newer, ISO-style fonts.  See:
40277         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
40278
40279         Instead, quote "like this" by default.  Let the translator
40280         tailor the locale-specific quoting behavior by providing
40281         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
40282
40283         * lib/quotearg.c (N_): New macro.
40284         (gettext_default): New function.
40285         (quotearg_buffer_restyled): Use
40286         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
40287         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
40288
40289 2000-07-09  Jim Meyering  <meyering@lucent.com>
40290
40291         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
40292         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
40293
40294         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
40295         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
40296
40297 2000-07-09  Jim Meyering  <meyering@lucent.com>
40298
40299         * lib/Most files: Update copyright dates to include 2000.
40300
40301 2000-07-08  Jim Meyering  <meyering@lucent.com>
40302
40303         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
40304         if not defined.
40305         (xgethostname): Remove now-unnecessary #ifdef.
40306         Move declaration of `err' into loop where it's used.
40307
40308 2000-07-05  Paul Eggert  <eggert@twinsun.com>
40309         and Bruno Haible  <haible@clisp.cons.org>
40310
40311         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
40312         only if the test for an object-type mbstate_t fails.  This
40313         prevents us from mistakenly reporting that mbstate_t is a
40314         system object type after we "#define mbstate_t int" to work
40315         around its lack.
40316
40317 2000-07-05  Paul Eggert  <eggert@twinsun.com>
40318         and Bruno Haible  <haible@clisp.cons.org>
40319
40320         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
40321
40322 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
40323
40324         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
40325         to strerror_r.
40326         Include <ctype.h> for use of isalpha.
40327
40328 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
40329
40330         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
40331         by allocating a larger buffer. Test the gethostname return value for
40332         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
40333         returns an error and ENAMETOOLONG isn't defined.
40334
40335 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
40336
40337         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
40338         dimension.
40339
40340 2000-07-04  Jim Meyering  <meyering@lucent.com>
40341
40342         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
40343         of the deprecated AC_CHECKING.
40344
40345 2000-07-04  Jim Meyering  <meyering@lucent.com>
40346
40347         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
40348         Reported by Bruno Haible.
40349
40350 2000-07-04  Jim Meyering  <meyering@lucent.com>
40351
40352         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
40353         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
40354         lacks mbrtowc.
40355
40356 2000-07-03  Paul Eggert  <eggert@twinsun.com>
40357
40358         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
40359         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
40360
40361 2000-07-03  Paul Eggert  <eggert@twinsun.com>
40362         and Bruno Haible  <haible@clisp.cons.org>
40363
40364         * lib/quotearg.c (mbrtowc):
40365         Assign to *pwc, and return 1 only if result is nonzero.
40366         (iswprint): Use ISPRINT when substituting our own mbrtowc.
40367
40368 2000-07-03  Jim Meyering  <meyering@lucent.com>
40369
40370         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
40371
40372 2000-07-03  Jim Meyering  <meyering@lucent.com>
40373
40374         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
40375         This is necessary to get a definition of e.g., UTMP_FILE on
40376         HP-UX 10.20.
40377         From Bob Proulx.
40378
40379 2000-07-02  Jim Meyering  <meyering@lucent.com>
40380
40381         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
40382
40383         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
40384         AC_LIBOBJ(function_name).
40385         * m4/chown.m4: Likewise.
40386         * m4/fnmatch.m4: Likewise.
40387         * m4/ftruncate.m4: Likewise.
40388         * m4/getgroups.m4: Likewise.
40389         * m4/getline.m4: Likewise.
40390         * m4/group-member.m4: Likewise.
40391         * m4/jm-macros.m4: Likewise.
40392         * m4/lstat.m4: Likewise.
40393         * m4/malloc.m4: Likewise.
40394         * m4/memcmp.m4: Likewise.
40395         * m4/nanosleep.m4: Likewise.
40396         * m4/putenv.m4: Likewise.
40397         * m4/realloc.m4: Likewise.
40398         * m4/regex.m4: Likewise.
40399         * m4/stat.m4: Likewise.
40400         * m4/strftime.m4: Likewise.
40401
40402 2000-07-02  Jim Meyering  <meyering@lucent.com>
40403
40404         * lib/quotearg.c (mbstate_t): Don't define here.
40405
40406 2000-07-02  Jim Meyering  <meyering@lucent.com>
40407
40408         * lib/nanosleep.c (SIGCONT): Define if not already defined.
40409
40410 2000-07-01  Jim Meyering  <meyering@lucent.com>
40411
40412         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
40413
40414 2000-07-01  Jim Meyering  <meyering@lucent.com>
40415
40416         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
40417         problem.
40418
40419 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
40420
40421         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
40422         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
40423
40424 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
40425
40426         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
40427         per change in ../m4/ls-mntd-fs.m4.
40428         (read_filesystem_list): Ignore symbolic links.
40429
40430 2000-06-29  Jim Meyering  <meyering@lucent.com>
40431
40432         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
40433         for declaration of strcmp.
40434
40435         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
40436
40437         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
40438         Avoid warning by casting result to `char *' to remove `const'.
40439
40440 2000-06-28  Jim Meyering  <meyering@lucent.com>
40441
40442         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
40443         included by quotearg.c, for which we perform this test.  From
40444         Bruno Haible.
40445
40446 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
40447
40448         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
40449         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
40450         <utmpx.h> exists, put readutmp.o into LIBOBJS.
40451
40452 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
40453
40454         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
40455
40456 2000-06-26  Paul Eggert  <eggert@twinsun.com>
40457
40458         savedir now sets errno on failure and invokes xmalloc to get memory.
40459         Fix a couple of other minor bugs while we're at it.
40460
40461         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
40462         (NAMLEN): Remove macro.
40463         (malloc, realloc): Remove decls.
40464         (stpcpy): Likewise.
40465         ("xalloc.h"): Include.
40466         (NAME_SIZE_DEFAULT): New macro.
40467         (savedir): Use xmalloc / xrealloc to allocate memory.
40468         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
40469         Skip "" directory entries.
40470         Use strlen to calculate directory entry length, since the old method
40471         is rarely used these days and isn't worth supporting.
40472         Don't use a pointer after freeing it.
40473         Check for integer overflow when calculating allocation size.
40474         Use memcpy to copy entries, instead of stpcpy.
40475         Set errno properly when returning NULL.
40476         Check for readdir error.
40477
40478 2000-06-26  Jim Meyering  <meyering@lucent.com>
40479
40480         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
40481
40482 2000-06-25  Jim Meyering  <meyering@lucent.com>
40483
40484         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
40485         Linux header bug when _XOPEN_SOURCE is defined to 500.
40486
40487 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
40488
40489         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
40490         deficiency.
40491
40492 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
40493
40494         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
40495         Include xalloc.h.
40496         Don't include <stdlib.h>.  Don't declare malloc, realloc.
40497
40498 2000-06-24  Jim Meyering  <meyering@lucent.com>
40499
40500         * m4/strerror_r.m4: Revive this file -- to try out an experimental
40501         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
40502         for which strerror does return char*, but which lacks a conveniently
40503         accessible declaration of the function.  If the compile-test says
40504         strerror_r doesn't work, then resort to a `run'-test that works on
40505         BeOS and segfaults on DEC Unix.
40506
40507 2000-06-24  Jim Meyering  <meyering@lucent.com>
40508
40509         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
40510
40511 2000-06-23  Paul Eggert  <eggert@twinsun.com>
40512
40513         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
40514         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
40515
40516 2000-06-23  Paul Eggert  <eggert@twinsun.com>
40517
40518         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
40519         (mbrtowc, mbstate_t): Define substitutes if
40520         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
40521         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
40522         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
40523
40524 2000-06-23  Jim Meyering  <meyering@lucent.com>
40525
40526         * m4/afs.m4: Add missing AC_MSG_RESULT.
40527         Reported by Bruno Haible.
40528
40529         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
40530         Suggestion from Bruno Haible.
40531
40532 2000-06-23  Jim Meyering  <meyering@lucent.com>
40533
40534         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
40535
40536 2000-06-21  Jim Meyering  <meyering@lucent.com>
40537
40538         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
40539
40540 2000-06-21  Jim Meyering  <meyering@lucent.com>
40541
40542         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
40543         (noinst_HEADERS): Add getstr.h.
40544
40545         * lib/getline.c (getstr): Move into a separate file.
40546         * lib/getstr.c (getstr): New file, extracted from getline.c, with
40547         the following changes: new parameter, delim2; both delim[12]
40548         parameters have type `int', not `char'.  The latter would lose
40549         with 8-bit delimiters.
40550         * lib/getstr.h: New file.
40551
40552 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
40553
40554         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
40555         than 1024, return a memory chunk of least possible size, instead
40556         of size PATH_MAX + 2. In the loop, increment the size proportionally.
40557         Use free/xmalloc instead of xrealloc to avoid copying for very long
40558         paths.
40559
40560 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
40561
40562         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
40563         the empty string.
40564
40565 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
40566
40567         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
40568         address, not strdup.  Include <stdlib.h> and don't declare free().
40569
40570 2000-06-19  Jim Meyering  <meyering@lucent.com>
40571
40572         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
40573
40574 2000-06-18  Jim Meyering  <meyering@lucent.com>
40575
40576         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
40577
40578         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
40579         `checking whether...' message to be consistent with that of the
40580         lstat test.
40581
40582 2000-06-18  Jim Meyering  <meyering@lucent.com>
40583
40584         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
40585         Besides, these days every porting target provides a mkdir function.
40586
40587         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
40588         needed. (this snippet comes from src/system.h).
40589
40590 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
40591
40592         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
40593
40594 2000-06-15  Paul Eggert  <eggert@twinsun.com>
40595
40596         * lib/human.c (adjust_value): New function.
40597         (human_readable_inexact): Apply rounding style even when
40598         printing approximate values.
40599
40600 2000-06-14  Paul Eggert  <eggert@twinsun.com>
40601
40602         * lib/human.c (human_readable_inexact): Allow an input block
40603         size that is not a multiple of the output block size, and vice versa.
40604         Reported by Piergiorgio Sartor.
40605
40606 2000-06-14  Paul Eggert  <eggert@twinsun.com>
40607
40608         * lib/getdate.y (get_date): Apply relative times after time
40609         zone indicator, not before.  Reported by Todd A. Jacobs.
40610
40611 2000-06-13  Jim Meyering  <meyering@lucent.com>
40612
40613         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
40614
40615         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
40616
40617 2000-06-12  Paul Eggert  <eggert@twinsun.com>
40618
40619         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
40620
40621 2000-06-12  Jim Meyering  <meyering@lucent.com>
40622
40623         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
40624         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
40625         optional argument.
40626         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
40627         the optional argument, `lib'.
40628
40629 2000-06-08  Jim Meyering  <meyering@lucent.com>
40630
40631         * m4/largefile.m4: Remove file (now that it's part of autoconf).
40632
40633 2000-06-04  Paul Eggert  <eggert@twinsun.com>
40634
40635         Rewrite largefile configuration so that we don't need to run
40636         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
40637         AC_CANONICAL_HOST in configure.in -- jmm]
40638
40639         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
40640         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
40641         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
40642         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
40643         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
40644         All uses changed.
40645         Instead of inspecting the output of getconf, try to compile the
40646         test program without and with the macro definition.
40647         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
40648         for getconf.  Instead, check for the needed flags by compiling
40649         test programs.
40650
40651 2000-06-04  Paul Eggert  <eggert@twinsun.com>
40652
40653         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
40654
40655 2000-06-04  Jim Meyering  <meyering@lucent.com>
40656
40657         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
40658         SunOS 4.1.4 for which gid_t is an unsigned type.
40659
40660 2000-06-03  Jim Meyering  <meyering@lucent.com>
40661
40662         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
40663         now that autoconf requires that.
40664
40665         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
40666         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
40667         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
40668
40669 2000-06-03  Jim Meyering  <meyering@lucent.com>
40670
40671         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
40672
40673 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
40674
40675         * m4/glibc21.m4: New file.
40676         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
40677
40678 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
40679
40680         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
40681         newer, don't install charset.alias.
40682         * lib/config.charset: Change the Linux/glibc rules so they become empty
40683         on glibc-2.1 or newer.
40684
40685 2000-06-02  Jim Meyering  <meyering@lucent.com>
40686
40687         * lib/mountlist.c: Back out last change.  Instead, do this...
40688         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
40689         me_dummy member using the same `ignore'-testing code.
40690         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
40691         fs_type strings.
40692         From Mark D. Roth.
40693
40694 2000-05-29  Jim Meyering  <meyering@lucent.com>
40695
40696         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
40697         mounts with the `ignore' attribute.  Based on a patch from
40698         Mark D. Roth.
40699
40700 2000-05-28  Jim Meyering  <meyering@lucent.com>
40701
40702         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
40703         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
40704         * m4/stat.m4: Likewise.
40705         * m4/lstat.m4: Likewise.
40706         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
40707
40708         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
40709         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
40710
40711 2000-05-26  Jim Meyering  <meyering@lucent.com>
40712
40713         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
40714
40715 2000-05-24  Jim Meyering  <meyering@lucent.com>
40716
40717         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
40718         autoconf requires that.
40719         * m4/lib-check.m4: Likewise.
40720         * m4/jm-macros.m4: Likewise.
40721         * m4/strftime.m4: Likewise.
40722
40723         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
40724         AC_CHECK_DECLS, now that autoconf requires that.
40725
40726 2000-05-22  Jim Meyering  <meyering@lucent.com>
40727
40728         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
40729         * m4/lstat.m4: Likewise.
40730
40731 2000-05-22  Jim Meyering  <meyering@lucent.com>
40732
40733         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
40734
40735 2000-05-20  Jim Meyering  <meyering@lucent.com>
40736
40737         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
40738         (jm_PREREQ): Use it.
40739
40740 2000-05-18  Jim Meyering  <meyering@lucent.com>
40741
40742         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
40743         back, too, since it may have been modified by allocate_entry.
40744         (hash_delete): Rewrite to use neither the assignment operator
40745         nor the comma operator in an if-expression.
40746
40747 2000-05-15  Paul Eggert  <eggert@twinsun.com>
40748
40749         * lib/closeout.c:
40750         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
40751         Remove; no longer needed.
40752         "quotearg.h": Add include.
40753         (file_name): Do not bother to explicitly initialize to NULL; it's less
40754         efficient on some hosts.
40755         (close_stdout_status): Remove test as to whether stdout was already
40756         closed; it breaks for the case "echo x | sort >&-".
40757         Quote file name colons.
40758         Do not assume that _("write error") lacks format strings.
40759
40760 2000-05-15  Jim Meyering  <meyering@lucent.com>
40761
40762         * lib/version-etc.c (version_etc_copyright): Update the copyright
40763         string used in all --version output.
40764
40765 2000-05-14  Jim Meyering  <meyering@lucent.com>
40766
40767         * lib/closeout.c (close_stdout_set_file_name): New function.
40768         (close_stdout_status): Use new file-scoped global.
40769         Return right away if fstat says the stdout file descriptor is invalid.
40770         * lib/closeout.h (close_stdout_set_file_name): Declare.
40771
40772 2000-05-10  Jim Meyering  <meyering@lucent.com>
40773
40774         * lib/closeout.c [default_exit_status]: New file-scoped variable.
40775         (close_stdout_set_status): New function.
40776         * lib/closeout.h (close_stdout_set_status): Declare.
40777
40778 2000-05-09  Jim Meyering  <meyering@lucent.com>
40779
40780         * m4/gettext.m4: Rename this...
40781         * m4/libintl.m4: ...to this.
40782
40783 2000-05-08  Jim Meyering  <meyering@lucent.com>
40784
40785         * lib/long-options.c: Don't include closeout.h.
40786         (parse_long_options): Don't call close_stdout for --version.
40787
40788 2000-05-06  Paul Eggert  <eggert@twinsun.com>
40789
40790         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
40791         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
40792         2.1.3 bug.  This avoids a clash when files like regex.c define
40793         _GNU_SOURCE.
40794
40795 2000-05-06  Jim Meyering  <meyering@lucent.com>
40796
40797         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
40798         (AC_REPLACE_FUNCS): Add strnlen.
40799
40800         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
40801         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
40802
40803         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
40804         AC_SEARCH_LIBS call for nanosleep.
40805         (LIB_NANOSLEEP): Set and AC_SUBST.
40806
40807 2000-05-06  Jim Meyering  <meyering@lucent.com>
40808
40809         * lib/strnlen.c: Undefine __strnlen and strnlen.
40810         [!weak_alias]: Define __strnlen to strnlen.
40811
40812         * lib/atexit.c: New file, from libiberty.
40813
40814 2000-05-06  Jim Meyering  <meyering@lucent.com>
40815
40816         * lib/closeout.c (close_stdout_status): Also check for errors on the
40817         stderr stream.
40818
40819 2000-05-05  Jim Meyering  <meyering@lucent.com>
40820
40821         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
40822         AC_SEARCH_LIBS call for clock_gettime.
40823         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
40824
40825         * m4/search-libs.m4: Update from autoconf.
40826
40827         su doesn't work on Solaris 2.6.
40828         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
40829         <shadow.h>.  Reported by Dragos Harabor.
40830
40831 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
40832
40833         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
40834         memcpy instead of xmalloc, xrealloc, path_concat.
40835         (locale_charset): Treat empty environment variables as absent.
40836         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
40837
40838 2000-05-04  Jim Meyering  <meyering@lucent.com>
40839
40840         * lib/getopt.c: Update from glibc.
40841         * lib/obstack.c: Likewise.
40842         * lib/obstack.h: Likewise.
40843         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
40844         file
40845
40846         * lib/regex.h: Likewise.
40847         * lib/strndup.c: Likewise.
40848         * lib/strnlen.c: New file, from glibc.
40849
40850 2000-05-03  Jim Meyering  <meyering@lucent.com>
40851
40852         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
40853
40854 2000-05-02  Paul Eggert  <eggert@twinsun.com>
40855
40856         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
40857         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
40858         compile-time test, rather than inspecting host and OS, to
40859         decide whether to define _LARGEFILE_SOURCE.
40860
40861 2000-05-01  Jim Meyering  <meyering@lucent.com>
40862
40863         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
40864
40865         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
40866         Based on a patch from Bruno Haible.
40867
40868 2000-05-01  Jim Meyering  <meyering@lucent.com>
40869
40870         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
40871
40872 2000-04-29  Jim Meyering  <meyering@lucent.com>
40873
40874         * lib/path-concat.c: Declare strdup only if it's not defined.
40875         * lib/canon-host.c: Likewise.
40876
40877 2000-04-28  Jim Meyering  <meyering@lucent.com>
40878
40879         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
40880         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
40881         is included first, then limits.h is included by locale.h by libintl.h.
40882         From John David Anglin.
40883
40884 2000-04-25  Jim Meyering  <meyering@lucent.com>
40885
40886         * lib/makepath.c (S_IRWXUGO): Define.
40887         (make_path): Always perform explicit chmod if MODE specifies any
40888         of the `special' permission bits.  Prompted by a bug report against
40889         install from Mate Wierdl and Joost van Baal.
40890
40891 2000-04-18  Jim Meyering  <meyering@lucent.com>
40892
40893         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
40894         (jm_PREREQ): Use it.
40895
40896 2000-04-18  Jim Meyering  <meyering@lucent.com>
40897
40898         * lib/README: New file.
40899
40900         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
40901         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
40902
40903 2000-04-17  Jim Meyering  <meyering@lucent.com>
40904
40905         Get it right :-)
40906         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
40907         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
40908         Suggestion from Akim Demaille.
40909
40910 2000-04-17  Jim Meyering  <meyering@lucent.com>
40911
40912         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
40913         the definition of it to rpl_strftime also defined-away the system's
40914         declaration.
40915
40916 2000-04-15  Jim Meyering  <meyering@lucent.com>
40917
40918         Use `C' to denote so-called `contiguous' files, the same way
40919         that tar does.
40920         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
40921         (ftypelet): Use S_ISCTG.
40922         From Michael Deutschmann.
40923
40924 2000-04-14  Jim Meyering  <meyering@lucent.com>
40925
40926         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
40927         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
40928         clobbered.
40929
40930 2000-04-14  Jim Meyering  <meyering@lucent.com>
40931
40932         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
40933
40934 2000-04-13  Jim Meyering  <meyering@lucent.com>
40935
40936         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
40937         AH_VERBATIM to insert required #ifndef into config.h.in.
40938         Suggestion from Akim Demaille.
40939
40940 2000-04-12  Jim Meyering  <meyering@lucent.com>
40941
40942         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
40943         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
40944         Christian Krackowizer.
40945
40946         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
40947         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
40948         (AC_SYS_LARGEFILE): Require.
40949         (AM_C_PROTOTYPES): Require.
40950
40951 2000-04-08  Jim Meyering  <meyering@lucent.com>
40952
40953         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
40954         names don't conflict.  Reported by Eli Zaretskii.
40955
40956 2000-04-07  Jim Meyering  <meyering@lucent.com>
40957
40958         * lib/putenv.c: Move inclusion of errno.h so it follows that of
40959         sys/types.h, to work around system header problems on AIX 3.2.5.
40960         From Bruno Haible.
40961
40962 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
40963
40964         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
40965         bug.  Deal with the different error behavior of Irix iconv.
40966
40967 2000-04-05  Paul Eggert  <eggert@twinsun.com>
40968
40969         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
40970         IRIX if the installer said otherwise.
40971
40972 2000-04-05  Jim Meyering  <meyering@lucent.com>
40973
40974         Portability tweaks required for ultrix4.3.
40975         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
40976         (jm_CHECK_DECLS): Add getutent to the list of functions.
40977         (_jm_DECL_HEADERS): Add utmpx.h.
40978         From John David Anglin.
40979
40980         * m4/strftime.m4: Back out the 2000-04-02 change.
40981         Instead of that change, simply undefine putenv in the test program.
40982
40983 2000-04-05  Jim Meyering  <meyering@lucent.com>
40984
40985         Portability tweaks required for ultrix4.3.
40986         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
40987         getutent.
40988         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
40989         * lib/canon-host.c: Declare strdup.
40990         * lib/path-concat.c: Likewise.
40991         From John David Anglin.
40992
40993 2000-04-04  Jim Meyering  <meyering@lucent.com>
40994
40995         Be more DOS 8.3-friendly.
40996         * lib/ref-add.sin: Renamed from ref-add.sed.in.
40997         * lib/ref-del.sin: Renamed from ref-del.sed.in.
40998         * lib/Makefile.am: Reflect renaming.
40999         Reported by Eli Zaretskii.
41000
41001         Use a temporary file name that won't clash with `charset.alias'
41002         in the DOS 8.3 name space.
41003         * lib/Makefile.am (charset_tmp): Define.
41004         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
41005         (uninstall-local): Likewise.
41006         Reported by Eli Zaretskii.
41007
41008 2000-04-03  Jim Meyering  <meyering@lucent.com>
41009
41010         * m4/gettext.m4: Fix typo in comment.
41011
41012         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
41013         textutils/configure.in).  Suggestion from Paul Eggert.
41014         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
41015
41016 2000-04-02  Paul Eggert  <eggert@twinsun.com>
41017
41018         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
41019         variable in the shell rather than using putenv, which isn't
41020         portable.  This avoids the configure-time inter-test dependency
41021         on the potentially-renamed putenv function.
41022
41023 2000-03-30  Paul Eggert  <eggert@twinsun.com>
41024
41025         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
41026         before checking struct stat.st_blksize, so that
41027         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
41028
41029 2000-03-29  Paul Eggert  <eggert@twinsun.com>
41030
41031         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
41032         since strftime.c uses HAVE_STRFTIME to decide whether to use
41033         the underlying strftime.
41034
41035 2000-03-29  Paul Eggert  <eggert@twinsun.com>
41036
41037         * lib/time/strftime.c (my_strftime): Make sure we call the system
41038         strftime, not ourselves, when invoking the underlying strftime.
41039
41040 2000-03-24  Jim Meyering  <meyering@lucent.com>
41041
41042         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
41043         (charset_alias): Define.
41044         (install-exec-local): Factor out common code.
41045         (uninstall-local): Split lines longer than 80.
41046         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
41047         (SUFFIXES): Define.
41048         (.sed.in.sed): New rule.  Don't redirect directly to $@.
41049         (CLEANFILES): Add ref-add.sed and ref-del.sed.
41050
41051 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
41052
41053         * lib/config.charset: Output a line containing "Packages using this
41054         file".
41055         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
41056         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
41057         ref-del.sed): New rules.
41058
41059 2000-03-17  Jim Meyering  <meyering@lucent.com>
41060
41061         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
41062         Otherwise, include <strings.h>
41063
41064 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
41065
41066         * lib/unicodeio.c (utf8_wctomb): New function.
41067         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
41068         format instead of in UCS-4 with platform dependent endianness.
41069
41070 2000-03-10  Jim Meyering  <meyering@lucent.com>
41071
41072         * m4/lib-check.m4: Look for getspnam in -lgen, too.
41073         From Marco Franzen.
41074
41075 2000-03-07  Paul Eggert  <eggert@twinsun.com>
41076
41077         * lib/savedir.c (savedir): Work even if directory size is
41078         negative; this can happen with some screwy NFS configurations.
41079
41080 2000-03-06  Jim Meyering  <meyering@lucent.com>
41081
41082         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
41083         if it's NULL (because we ran out of memory).  From Bruno Haible.
41084
41085 2000-03-05  Jim Meyering  <meyering@lucent.com>
41086
41087         * lib/localcharset.c ("path-concat.h"): Include.
41088         (get_charset_aliases): Use path_concat instead of ANSI string
41089         concatenation.
41090
41091         * lib/unicodeio.h (PARAMS): Define.
41092         Use it to guard prototype.
41093
41094 2000-03-04  Jim Meyering  <meyering@lucent.com>
41095
41096         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
41097         for lib/localcharset.c.
41098
41099 2000-03-04  Jim Meyering  <meyering@lucent.com>
41100
41101         * lib/Makefile.am (install-exec-local): Create $(libdir) before
41102         installing into it.
41103         (uninstall-local): Uncomment this rule so `make distcheck' works
41104         once again.
41105
41106         * lib/unicodeio.c (<errno.h>): Include it.
41107         (errno): Declare if not defined.
41108
41109         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
41110
41111         * lib/config.charset: New version, incorporating remarks from a linux
41112         i18n mailing list.  From Bruno Haible.
41113
41114 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
41115
41116         * m4/codeset.m4: New file.
41117         * m4/iconv.m4: New file.
41118         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
41119
41120 2000-03-03  Jim Meyering  <meyering@lucent.com>
41121
41122         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
41123
41124 2000-03-02  Jim Meyering  <meyering@lucent.com>
41125
41126         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
41127         the messages come out on separate lines.
41128
41129         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
41130         rather than jm_CHECK_DECLARATIONS.
41131         * m4/decl.m4: Remove now-unused file.
41132
41133         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
41134         geteuid.
41135
41136 2000-03-02  Jim Meyering  <meyering@lucent.com>
41137
41138         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
41139
41140 2000-03-01  Jim Meyering  <meyering@lucent.com>
41141
41142         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
41143         * lib/unicodeio.c: Likewise.
41144
41145 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
41146
41147         * lib/config.charset: New file.
41148         * lib/localcharset.c: New file.
41149         * lib/unicodeio.h, lib/unicodeio.c: New files.
41150         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
41151         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
41152         (noinst_HEADERS): Add unicodeio.h.
41153         (all-local, install-exec-local, charset.alias): New targets.
41154
41155 2000-02-28  Paul Eggert  <eggert@twinsun.com>
41156
41157         * lib/quotearg.c (ALERT_CHAR): New macro.
41158         (quotearg_buffer_restyled): Use it.
41159
41160 2000-02-27  Jim Meyering  <meyering@lucent.com>
41161
41162         * m4/check-decl.m4: Add getenv to the list.
41163
41164 2000-02-27  Jim Meyering  <meyering@lucent.com>
41165
41166         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
41167         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
41168
41169         * lib/backupfile.c: Guard inclusion of stdlib.h with
41170         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
41171         Declare malloc if needed.
41172
41173         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
41174         `#ifndef HAVE_DECL..'
41175         now that autoconf always defines the HAVE_DECL_ symbols.
41176         * lib/human.c: Likewise.
41177         * lib/same.c: Likewise.
41178         * lib/strtoumax.c: Likewise.
41179
41180         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
41181         declaration check was not run.
41182         * lib/hash.c: Likewise.
41183         * lib/human.c: Likewise.
41184         * lib/same.c: Likewise.
41185         * lib/strtoumax.c: Likewise.
41186
41187         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
41188         `.', then first look up the entire `.'-containing string as a login
41189         name.
41190
41191 2000-02-23  Jim Meyering  <meyering@lucent.com>
41192
41193         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
41194         in place of my hack.
41195
41196 2000-02-18  Paul Eggert  <eggert@twinsun.com>
41197
41198         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
41199         (textint): New typedef.
41200         (parser_control): Member year changed from int to textint.
41201         All uses changed.
41202         (YYSTYPE): Removed; replaced by %union with int and textint members.
41203         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
41204         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
41205         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
41206         (tSNUMBER, tUNUMBER): Now of type <textintval>.
41207         (date, number, to_year): Use width of number in digits, not its value,
41208         to determine whether it's a 2-digit year, or a 2-digit time.
41209         (yylex): Store number of digits of numeric tokens.
41210         Reported by John Kendall.
41211
41212         (parser_control): Changed from struct parser_control to typedef (for
41213         consistency).  All uses changed.
41214
41215         (tID): Removed; not used.
41216         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
41217
41218 2000-02-14  Paul Eggert  <eggert@twinsun.com>
41219
41220         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
41221         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
41222
41223 2000-02-12  Jim Meyering  <meyering@lucent.com>
41224
41225         * lib/userspec.c (ISDIGIT): Define it.
41226         (isdigit): Remove definition.
41227         (is_number): Use ISDIGIT, not isdigit.
41228         <libintl.h>: Include.
41229         (_ and N_): Define.
41230         (parse_user_spec): Mark translatable strings.
41231
41232 2000-02-10  Jim Meyering  <meyering@lucent.com>
41233
41234         With these changes, nanosleep.[ch] are finally enough like the other
41235         lib/* replacement files to compile on a few more losing systems.
41236
41237         * lib/nanosleep.h: Don't include config.h.
41238         Remove prototype from declaration of nanosleep.
41239         (PARAMS): Remove now-unneeded definition.
41240         * lib/nanosleep.c: #undef nanosleep.
41241         (rpl_nanosleep): Rename from nanosleep.
41242
41243 2000-02-10  Jim Meyering  <meyering@lucent.com>
41244
41245         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
41246         gnu_nanosleep to rpl_nanosleep.
41247
41248 2000-02-09  Jim Meyering  <meyering@lucent.com>
41249
41250         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
41251         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
41252
41253 2000-02-08  Akim Demaille  <akim@epita.fr>
41254
41255         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
41256         `[' and `]' and remove uses of `changequote'.
41257         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
41258         (AC_SYS_LARGEFILE): Likewise.
41259         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
41260         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
41261         of changequote.
41262         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
41263         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
41264         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
41265         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
41266
41267 2000-02-05  Jim Meyering  <meyering@lucent.com>
41268
41269         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
41270         Remove explicit use of AC_HEADER_TIME.  It is required by
41271         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
41272         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
41273         in autoconf whereby the expansion of the latter ended up preceding
41274         the expansion of its prerequisite, AC_HEADER_TIME.
41275         Reported by Volker Borchert.
41276
41277 2000-02-03  Jim Meyering  <meyering@lucent.com>
41278
41279         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
41280
41281 2000-02-03  Jim Meyering  <meyering@lucent.com>
41282
41283         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
41284         rather than with `#if HAVE_UTMPNAME'.
41285
41286 2000-02-02  Jim Meyering  <meyering@lucent.com>
41287
41288         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
41289         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
41290         Reported by Eli Zaretskii.
41291
41292 2000-02-01  Jim Meyering  <meyering@lucent.com>
41293
41294         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
41295
41296 2000-01-31  Jim Meyering  <meyering@lucent.com>
41297
41298         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
41299         functions.  Add the time.h and sys/time.h headers along with the
41300         AC_REQUIRE'ment of AC_HEADER_TIME.
41301
41302 2000-01-31  Jim Meyering  <meyering@lucent.com>
41303
41304         * lib/nanosleep.h (nanosleep): Guard declaration with
41305         `#if ! HAVE_DECL_NANOSLEEP'.
41306         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
41307         the declaration in that vendor's sys/timers.h.
41308         Reported by Christian Krackowizer.
41309
41310         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
41311         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
41312         (ISPRINT): Likewise.
41313         Reported by Tom Tromey.
41314
41315 2000-01-30  Jim Meyering  <meyering@lucent.com>
41316
41317         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
41318
41319         * m4/prereq.m4 (utmp_includes): Define.
41320         Check for ut_user and ut_name members in both struct utmpx
41321         and struct utmp.
41322
41323 2000-01-30  Jim Meyering  <meyering@lucent.com>
41324
41325         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
41326         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
41327         header files where only utmpx.ut_user is declared.
41328
41329         * lib/readutmp.h (UT_USER): Define.
41330
41331 2000-01-29  Jim Meyering  <meyering@lucent.com>
41332
41333         * m4/lib-check.m4: New file containing library-related checks from
41334         fileutils and sh-utils (textutils had none).
41335
41336 2000-01-28  Jim Meyering  <meyering@lucent.com>
41337
41338         * m4/perl.m4: Change format of warning message to look more like that
41339         from the missing script.  Suggestion from François Pinard.
41340
41341 2000-01-25  Jim Meyering  <meyering@lucent.com>
41342
41343         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
41344         well as time.h in the compile check.
41345         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
41346         Fix typo in cross-compiling case: s/yes/no/.
41347
41348 2000-01-23  Jim Meyering  <meyering@lucent.com>
41349
41350         * m4/jm-macros.m4: Move df-related tests here from
41351         fileutils/configure.in
41352
41353         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
41354         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
41355
41356         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
41357         s/space/ac_fsusage_space/.
41358         (jm_FILE_SYSTEM_USAGE): Take two parameters.
41359
41360         * m4/ftruncate.m4: New file (derived from part of
41361         fileutils/configure.in).
41362         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
41363         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
41364
41365         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
41366         AC_SUBST these here, rather than just in sh-util/configure.in, so
41367         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
41368         all the same.
41369         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
41370         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
41371         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
41372         (AC_SUBST(POW_LIBM)): Likewise.
41373         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
41374
41375 2000-01-23  Jim Meyering  <meyering@lucent.com>
41376
41377         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
41378         obstack.c.
41379
41380 2000-01-22  Jim Meyering  <meyering@lucent.com>
41381
41382         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
41383
41384         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
41385
41386         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
41387         configure.in
41388         (AC_CHECK_HEADERS): Likewise for sh-utils.
41389         (AC_CHECK_HEADERS): Likewise for textutils.
41390         Merge the three lists of headers.
41391
41392         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
41393         from fileutils' configure.in.
41394
41395         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
41396         code. Moved tests into their own function (_jm_DECL_HEADERS) in
41397         check-decl.m4.
41398
41399         * m4/check-decl.m4: Use #if rather than #ifdef.
41400         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
41401         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
41402         (_jm_DECL_HEADERS): Define new function.
41403         (jm_CHECK_DECLARATIONS): Require it.
41404
41405 2000-01-22  Jim Meyering  <meyering@lucent.com>
41406
41407         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
41408         [! HAVE_DECL_STRTOULL]: Declare strtoull.
41409         Required for some AIX systems.  Reported by Christian Krackowizer.
41410         [TESTING] (main): New function.
41411
41412         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
41413         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
41414         letters.
41415
41416         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
41417         iswprint.
41418
41419         * lib/strverscmp.c (ISDIGIT): Define.
41420         (strverscmp): Use ISDIGIT, not isdigit.
41421
41422 2000-01-19  Jim Meyering  <meyering@lucent.com>
41423
41424         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
41425         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
41426         defines `struct timespec' in <sys/time.h>
41427
41428         * m4/c-bs-a.m4: Remove uses of changequote altogether.
41429         Thanks to Akim for explaining.
41430
41431 2000-01-17  Paul Eggert  <eggert@twinsun.com>
41432
41433         * lib/nanosleep.c (nanosleep):
41434         Don't use SA_INTERRUPT to decide whether to call sigaction, as
41435         POSIX.1 doesn't require SA_INTERRUPT and some systems
41436         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
41437         it's been part of POSIX.1 since day 1 (in 1988).
41438
41439 2000-01-17  Jim Meyering  <meyering@lucent.com>
41440
41441         * lib/interlock: Remove unused file.  Reported by François Pinard.
41442
41443 2000-01-16  Paul Eggert  <eggert@twinsun.com>
41444
41445         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
41446         alert, backslash, formfeed, and vertical tab unnecessarily in
41447         shell quoting style.
41448
41449 2000-01-16  Jim Meyering  <meyering@lucent.com>
41450
41451         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
41452         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
41453         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
41454         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
41455
41456 2000-01-16  Jim Meyering  <meyering@lucent.com>
41457
41458         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
41459         because the latter didn't work.
41460
41461 2000-01-15  Jim Meyering  <meyering@lucent.com>
41462
41463         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
41464         (AC_REPLACE_FUNCS): Add memcpy and memset.
41465         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
41466         Add strpbrk.
41467         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
41468
41469 2000-01-12  Jim Meyering  <meyering@lucent.com>
41470
41471         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
41472         (jm_PREREQ): Use it.
41473         (jm_PREREQ_READUTMP): New macro.
41474         (jm_PREREQ): Use it.
41475
41476 2000-01-11  Paul Eggert  <eggert@twinsun.com>
41477
41478         Quote multibyte characters correctly.
41479         * m4/c-bs-a.m4: New file.
41480         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
41481         (jm_PREREQ): Use it.
41482
41483 2000-01-11  Paul Eggert  <eggert@twinsun.com>
41484
41485         * m4/uintmax_t.m4: Port to autoconf 2.13.
41486
41487 2000-01-08  Jim Meyering  <meyering@ascend.com>
41488
41489         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
41490         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
41491
41492 2000-01-04  Jim Meyering  <meyering@ascend.com>
41493
41494         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
41495         jm_STRUCT_DIRENT_D_TYPE.
41496         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
41497         jm_STRUCT_DIRENT_D_INO.
41498         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
41499         jm_STRUCT_UTIMBUF.
41500         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
41501         renamings.
41502         * m4/utime.m4: Likewise.
41503
41504         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
41505         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
41506
41507 2000-01-03  Paul Eggert  <eggert@twinsun.com>
41508
41509         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
41510         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
41511
41512 2000-01-02  Jim Meyering  <meyering@ascend.com>
41513
41514         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
41515         remember if this is necessary.
41516
41517 1999-12-26  Jim Meyering  <meyering@ascend.com>
41518
41519         * m4/jm-macros.m4: Use it here.
41520         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
41521
41522 1999-12-23  Jim Meyering  <meyering@ascend.com>
41523
41524         * m4/jm-macros.m4: Check for clock_gettime (moved from
41525         fileutils/configure.in)
41526         Check for gettimeofday.
41527
41528 1999-12-20  Jim Meyering  <meyering@ascend.com>
41529
41530         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
41531         autoconf-2.14a-1999-12-20.
41532
41533 1999-12-19  Jim Meyering  <meyering@ascend.com>
41534
41535         * m4/lstat-slash.m4: New file.
41536         * m4/jm-macros.m4: Use the new macro:
41537         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
41538
41539 1999-12-07  Jim Meyering  <meyering@ascend.com>
41540
41541         * m4/perl.m4: Require that File::Compare be available, too.
41542         Too many systems seem to lack it.
41543
41544         * m4/strftime.m4: Add checks for most of the cpp macros tested in
41545         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
41546
41547 1999-11-18  Paul Eggert  <eggert@twinsun.com>
41548
41549         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
41550         problem with the QNX 4.25 shell, which doesn't propagate exit
41551         status of failed commands inside shell assignments.
41552
41553 1999-11-17  Jim Meyering  <meyering@ascend.com>
41554
41555         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
41556
41557 1999-11-07  Jim Meyering  <meyering@ascend.com>
41558
41559         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
41560
41561 1999-11-06  Jim Meyering  <meyering@ascend.com>
41562
41563         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
41564         * m4/jm-macros.m4 (jm_MACROS): Use it here.
41565
41566 1999-11-05  Jim Meyering  <meyering@ascend.com>
41567
41568         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
41569         configure.in of textutils, fileutils, and sh-utils into this one
41570         (shared between those packages) file.
41571         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
41572         AC_STRUCT_ST_BLKSIZE.
41573
41574 1999-11-03  Jim Meyering  <meyering@ascend.com>
41575
41576         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
41577         of AC_CHECK_TYPE checks includes unistd.h.
41578         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
41579         Suggestion from Akim Demaille.
41580
41581 1999-10-30  Jim Meyering  <meyering@ascend.com>
41582
41583         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
41584         m4-quoted string.
41585         * m4/ls-mntd-fs.m4: Likewise.
41586         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
41587         * m4/jm-winsz1.m4: Likewise.
41588
41589         * m4/const.m4: Remove file, since the fix made it into the experimental
41590         version of autoconf.
41591         * m4/mktime.m4: Likewise.
41592
41593         * m4/check-type.m4: Remove file, now that the latest version of
41594         AC_CHECK_TYPE takes a third arg to specify additional #includes.
41595
41596         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
41597         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
41598         AC_CHECK_TYPE.
41599
41600 1999-10-04  Jim Meyering  <meyering@ascend.com>
41601
41602         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
41603
41604 1999-09-22  Paul Eggert  <eggert@twinsun.com>
41605
41606         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
41607         2.95.1 bug with HP-UX 10.20.
41608
41609 1999-09-17  Jim Meyering  <meyering@ascend.com>
41610
41611         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
41612         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
41613         due to missing strdup (against sh-utils-2.0).
41614
41615 1999-08-29  Jim Meyering  <meyering@ascend.com>
41616
41617         * m4/jm-macros.m4: Require jm_BISON.
41618         * m4/bison.m4: New file.
41619
41620 1999-08-17  Paul Eggert  <eggert@twinsun.com>
41621
41622         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
41623         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
41624
41625 1999-08-05  Jim Meyering  <meyering@ascend.com>
41626
41627         * m4/getline.m4: Rename test file from conftestdata to conftest.data
41628         to avoid conflicts with `conftest' on 8+3 filesystems.
41629         Suggestion from Eli Zaretskii.
41630
41631 1999-08-04  Jim Meyering  <meyering@ascend.com>
41632
41633         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
41634         fileutils and sh-utils (textutils's getline test was inadequate).
41635         (AM_FUNC_GETLINE): Run this test.
41636         (AC_CHECK_FUNCS): Check for getdelim.
41637         Reported by Bob Proulx.
41638
41639 1999-08-02  Jim Meyering  <meyering@ascend.com>
41640
41641         * m4/jm-macros.m4: Add a comment.
41642
41643 1999-08-01  Paul Eggert  <eggert@twinsun.com>
41644
41645         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
41646         <inttypes.h> defines strtoumax as a macro (and not as a
41647         function).
41648
41649 1999-08-01  Paul Eggert  <eggert@twinsun.com>
41650
41651         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
41652         that we can shift, multiply and divide unsigned long long
41653         values; Ultrix cc can't do it.
41654
41655 1999-08-01  Paul Eggert  <eggert@twinsun.com>
41656
41657         * m4/mktime.m4: New file, which is a preview of what should appear
41658         in the next public autoconf release.
41659
41660 1999-08-01  Paul Eggert  <eggert@twinsun.com>
41661
41662         * m4/lfs.m4: Remove this file.
41663         * m4/largefile.m4: New file.  It contains the old contents of
41664         lfs.m4, except that all names with prefix AC_LFS have been
41665         changed to use the prefix AC_SYS_LARGEFILE instead, to be
41666         compatible with future autoconf versions.  Also, some minor m4
41667         quoting problems have been fixed.
41668
41669 1999-08-01  Paul Eggert  <eggert@twinsun.com>
41670
41671         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
41672         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
41673         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
41674         and simplify the shell code.
41675
41676 1999-08-01  Jim Meyering  <meyering@ascend.com>
41677
41678         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
41679         m4.
41680
41681 1999-07-20  Jim Meyering  <meyering@ascend.com>
41682
41683         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
41684
41685 1999-07-15  Jim Meyering  <meyering@ascend.com>
41686
41687         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
41688
41689 1999-05-22  Jim Meyering  <meyering@ascend.com>
41690
41691         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
41692
41693 1999-05-20  Jim Meyering  <meyering@ascend.com>
41694
41695         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
41696         Add a colon after each `then' in case $4 is empty.
41697
41698 1999-05-16  Jim Meyering  <meyering@ascend.com>
41699
41700         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
41701
41702 1999-05-10  Jim Meyering  <meyering@ascend.com>
41703
41704         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
41705
41706         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
41707         AC_FUNC_MKTIME.
41708
41709 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
41710
41711         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
41712
41713 1999-05-04  Paul Eggert  <eggert@twinsun.com>
41714
41715         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
41716         not CPPFLAGS, so that linking works correctly in IRIX.
41717
41718 1999-04-30  Paul Eggert  <eggert@twinsun.com>
41719
41720         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
41721
41722 1999-04-20  Paul Eggert  <eggert@twinsun.com>
41723
41724         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
41725         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
41726         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
41727         jm_AC_TYPE_UNSIGNED_LONG_LONG.
41728         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
41729
41730         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
41731
41732 1999-04-20  Jim Meyering  <meyering@ascend.com>
41733
41734         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
41735         AC_REPLACE xstroull if necessary.  From Paul Eggert.
41736         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
41737
41738 1999-04-18  Jim Meyering  <meyering@ascend.com>
41739
41740         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
41741         * m4/jm-macros.m4: Use it.
41742
41743 1999-04-06  Jim Meyering  <meyering@ascend.com>
41744
41745         * m4/strftime.m4: Remove test for %f.
41746
41747 1999-03-29  Jim Meyering  <meyering@ascend.com>
41748
41749         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
41750         superset of the AC_TYPE_* checks in the textutils, fileutils,
41751         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
41752         AC_TYPE_PID_T.
41753
41754 1999-03-28  Jim Meyering  <meyering@ascend.com>
41755
41756         * m4/jm-macros.m4: Define GNU_PACKAGE here.
41757         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
41758         replaced e.g., in the *.sh files of the sh-utils.
41759
41760 1999-03-20  Jim Meyering  <meyering@ascend.com>
41761
41762         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
41763         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
41764         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
41765
41766 1999-03-19  Jim Meyering  <meyering@ascend.com>
41767
41768         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
41769
41770 1999-03-12  Jim Meyering  <meyering@ascend.com>
41771
41772         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
41773
41774 1999-03-07  Jim Meyering  <meyering@ascend.com>
41775
41776         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
41777         declared.
41778
41779 1999-02-17  Jim Meyering  <meyering@ascend.com>
41780
41781         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
41782         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
41783
41784 1999-02-07  Jim Meyering  <meyering@ascend.com>
41785
41786         * m4/group-member.m4: New file -- extracted from sh-utils'
41787         configure.in.
41788
41789         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
41790         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
41791
41792 1999-02-06  Jim Meyering  <meyering@ascend.com>
41793
41794         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
41795         * m4/fnmatch.m4: Likewise.
41796         * m4/getgroups.m4: Likewise.
41797         * m4/lstat.m4: Likewise.
41798         * m4/malloc.m4: Likewise.
41799         * m4/putenv.m4: Likewise.
41800         * m4/realloc.m4: Likewise.
41801         * m4/regex.m4: Likewise.
41802         * m4/stat.m4: Likewise.
41803         * m4/strftime.m4: Likewise.
41804         Suggestion from Alain Magloire.
41805
41806         * m4/chown.m4: Use `.$ac_objext', not `.o'.
41807         * m4/fnmatch.m4: Likewise.
41808         * m4/getgroups.m4: Likewise.
41809         * m4/getline.m4: Likewise.
41810         * m4/lstat.m4: Likewise.
41811         * m4/malloc.m4: Likewise.
41812         * m4/memcmp.m4: Likewise.
41813         * m4/putenv.m4: Likewise.
41814         * m4/realloc.m4: Likewise.
41815         * m4/regex.m4: Likewise.
41816         * m4/stat.m4: Likewise.
41817         * m4/strftime.m4: Likewise.
41818         Suggestion from Alain Magloire.
41819
41820         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
41821         an argument.
41822
41823         * m4/regex.m4: Add a run-time Test for proper operation of
41824         re_compile_pattern.
41825
41826 1999-01-31  Jim Meyering  <meyering@ascend.com>
41827
41828         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
41829
41830 1999-01-30  Jim Meyering  <meyering@ascend.com>
41831
41832         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
41833
41834         * m4/jm-mktime.m4: Make this a wrapper around the official
41835         AM_FUNC_MKTIME rather than my private copy, now that the official one
41836         is up to date.
41837         * m4/mktime.m4: Remove file.
41838
41839         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
41840         * m4/uptime.m4: Likewise.
41841         * m4/uintmax_t.m4: Likewise.
41842
41843 1999-01-28  Jim Meyering  <meyering@ascend.com>
41844
41845         * m4/jm-macros.m4: Use jm_AFS.
41846         * m4/afs.m4: New file (from fileutils' configure.in).
41847
41848         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
41849         * m4/chown.m4: Likewise.
41850         * m4/d-ino.m4: Likewise.
41851         * m4/d-type.m4: Likewise.
41852         * m4/fnmatch.m4: Likewise.
41853         * m4/getgroups.m4: Likewise.
41854         * m4/gettext.m4: Likewise.
41855         * m4/jm-mktime.m4: Likewise.
41856         * m4/jm-winsz2.m4: Likewise.
41857         * m4/lcmessage.m4: Likewise.
41858         * m4/ls-mntd-fs.m4: Likewise.
41859         * m4/malloc.m4: Likewise.
41860         * m4/memcmp.m4: Likewise.
41861         * m4/putenv.m4: Likewise.
41862         * m4/realloc.m4: Likewise.
41863         * m4/st_mtim.m4: Likewise.
41864         * m4/strftime.m4: Likewise.
41865
41866 1999-01-16  Jim Meyering  <meyering@ascend.com>
41867
41868         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
41869         (ARGMATCH_DIE_DECL): Define.
41870
41871 1999-01-12  Jim Meyering  <meyering@ascend.com>
41872
41873         * m4/Makefile.am.in: Rewrite to avoid using fmt.
41874         Reported by Lars Hecking.
41875
41876 1999-01-10  Jim Meyering  <meyering@ascend.com>
41877
41878         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
41879         gross kludge.
41880         * m4/inttypes_h.m4: Likewise.
41881         * m4/lstat.m4: Likewise.
41882         * m4/malloc.m4: Likewise.
41883         * m4/readdir.m4: Likewise.
41884         * m4/realloc.m4: Likewise.
41885         * m4/st_dm_mode.m4: Likewise.
41886         * m4/stat.m4: Likewise.
41887         * m4/utimbuf.m4: Likewise.
41888         * m4/utimes.m4: Likewise.
41889
41890         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
41891         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
41892         comments in config.h.in are meaningful.
41893
41894         * m4/jm-macros.m4: Require autoconf-2.13 here.
41895
41896         * m4/regex.m4: By default, don't use the included regex.c on systems
41897         with glibc 2.  Suggestion from Uli Drepper.
41898
41899 1999-01-02  Jim Meyering  <meyering@ascend.com>
41900
41901         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
41902
41903 1998-12-18  Jim Meyering  <meyering@ascend.com>
41904
41905         * m4/Makefile.am.in (Makefile.am): Simplify rule.
41906         Based on a suggestion from Lars Hecking.
41907
41908 1998-11-16  Paul Eggert  <eggert@twinsun.com>
41909
41910         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
41911
41912 1998-11-16  Jim Meyering  <meyering@ascend.com>
41913
41914         * m4/lfs.m4: Double-quote the `uname...` expression.
41915
41916 1998-11-14  Jim Meyering  <meyering@ascend.com>
41917
41918         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
41919         * m4/stat.m4: Likewise.
41920
41921 1998-11-03  Jim Meyering  <meyering@ascend.com>
41922
41923         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
41924         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
41925
41926 1998-10-18  Jim Meyering  <meyering@ascend.com>
41927
41928         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
41929
41930 1998-10-17  Jim Meyering  <meyering@ascend.com>
41931
41932         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
41933         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
41934         calls for those previously hard-coded headers.  Instead, take a new
41935         parameter.
41936         (jm_CHECK_DECLARATIONS): Reflect interface change.
41937         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
41938         (jm_CHECK_DECL_LOCALTIME_R): New macro.
41939
41940         * m4/mktime.m4: Test for spring-forward gap before long-running test.
41941
41942 1998-10-14  Jim Meyering  <meyering@ascend.com>
41943
41944         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
41945         instead of "TZ=America/Vancouver".  From Paul Eggert.
41946
41947 1998-10-11  Jim Meyering  <meyering@ascend.com>
41948
41949         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
41950         This adds a test for a recently added compatibility fix for mktime.c.
41951         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
41952
41953 1998-09-27  Jim Meyering  <meyering@ascend.com>
41954
41955         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
41956
41957         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
41958         ../configure.in, including a change from Gordon Matzigkeit to allow
41959         cross-compiling for the Hurd.
41960
41961         * m4/glibc.m4: New file/macro to test for the GNU C Library
41962         versions 1 and 2.  From Gordon Matzigkeit.
41963         Indent.
41964
41965 1998-09-21  Jim Meyering  <meyering@ascend.com>
41966
41967         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
41968
41969 1998-08-18  Paul Eggert  <eggert@twinsun.com>
41970
41971         Port nanosecond-resolution times to UnixWare 2.1.2 and
41972         pedantic Solaris 2.6.
41973
41974         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
41975         AC_STRUCT_ST_MTIM.
41976         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
41977         Generate name of ns member, instead of just 1 or undef.
41978         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
41979
41980 1998-08-15  Jim Meyering  <meyering@ascend.com>
41981
41982         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
41983         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
41984         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
41985         instead of jm_TYPE_SSIZE_T.
41986
41987 1998-08-12  Jim Meyering  <meyering@ascend.com>
41988
41989         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
41990
41991 1998-08-02  Jim Meyering  <meyering@ascend.com>
41992
41993         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
41994         in acconfig.h manually.
41995
41996 1998-07-31  Paul Eggert  <eggert@twinsun.com>
41997
41998         * m4/st_mtim.m4: New file.
41999
42000 1998-07-28  Jim Meyering  <meyering@ascend.com>
42001
42002         * m4/utimes.m4: Undef stat.
42003
42004 1998-07-25  Jim Meyering  <meyering@ascend.com>
42005
42006         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
42007         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
42008
42009 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
42010
42011         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
42012         uid and gid actually remain unchanged.
42013
42014 1998-07-07  Jim Meyering  <meyering@ascend.com>
42015
42016         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
42017
42018 1998-07-04  Jim Meyering  <meyering@ascend.com>
42019
42020         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
42021         to prove that this macro can be used in packages without regex.c.
42022
42023 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
42024
42025         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
42026         is to be used.
42027
42028 1998-07-03  Jim Meyering  <meyering@ascend.com>
42029
42030         * m4/gettext.m4: Add -lintl if it's found to be necessary.
42031
42032         * m4/gettext.m4: New file -- from gettext-0.10.35.
42033         * m4/lcmessage.m4: Likewise.
42034         * m4/progtest.m4: Likewise.
42035
42036         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
42037         * m4/jm-macros.m4: Require the new macro.
42038
42039 1998-06-29  Jim Meyering  <meyering@ascend.com>
42040
42041         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
42042         for the definition of NGROUPS (used in a system header included
42043         by sys/mount.h).
42044
42045 1998-06-28  Jim Meyering  <meyering@ascend.com>
42046
42047         * m4/ls-mntd-fs.m4: New file.
42048         * m4/fstypename.m4: New file.
42049
42050         * m4/jm-macros.m4: Require the new macro.
42051         * m4/jm-glibc-io.m4: New file.
42052
42053 1998-05-19  Jim Meyering  <meyering@ascend.com>
42054
42055         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
42056         * m4/lchown.m4: New file.
42057
42058         * m4/Makefile.am.in: New file.
42059         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
42060
42061 1998-05-14  Jim Meyering  <meyering@ascend.com>
42062
42063         * m4/Makefile.am (EXTRA_DIST): Add them.
42064         * m4/jm-macros.m4: New file.
42065         * m4/utimbuf.m4: New file.
42066
42067 1998-05-12  Jim Meyering  <meyering@ascend.com>
42068
42069         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
42070
42071 1998-05-11  Jim Meyering  <meyering@ascend.com>
42072
42073         * m4/isc-posix.m4: New file.
42074
42075 1998-05-10  Jim Meyering  <meyering@ascend.com>
42076
42077         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
42078
42079 1998-05-09  Jim Meyering  <meyering@ascend.com>
42080
42081         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
42082         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
42083         with automake.
42084
42085         * m4/ssize_t.m4: New file.
42086         * m4/mktime.m4: Remove file -- the new automake has this now.
42087
42088 1998-04-26  Jim Meyering  <meyering@ascend.com>
42089
42090         * m4/assert.m4: New file.
42091         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
42092
42093 1998-04-05  Jim Meyering  <meyering@ascend.com>
42094
42095         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
42096         (jm_PREREQ): Use it here.
42097
42098 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
42099
42100         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
42101         in acconfig.h.
42102
42103 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
42104
42105         * m4/prereq.m4: New file.
42106         * m4/error.m4: New file.
42107         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
42108
42109 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
42110
42111         * m4/getline.m4: Don't set am_cv_func_working_getline before the
42112         cache-check for the same variable -- that defeated the purpose of
42113         the test; the test program was never run.  This was a problem only
42114         on systems with losing getline functions -- HP-UX 10.20 is one.
42115         Reported by Bjorn Helgaas.
42116
42117 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
42118
42119         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
42120
42121 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
42122
42123         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
42124
42125         * m4/const.m4: New file.  Use an initializer in this declaration
42126         typedef int charset[2]; const charset x;
42127         Reported by Bob Glickstein.
42128
42129 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
42130
42131         * m4/chown.m4: Fix reversed types on -1 args to chown.
42132         From Kaveh Ghazi.
42133
42134 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
42135
42136         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
42137         Add lseek and memchr.
42138
42139         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
42140         T.E.Dickey <dickey@clark.net> said that some older preprocessors
42141         have a 20-character limit on names.
42142
42143 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
42144
42145         * m4/inttypes_h.m4: New file.
42146         * m4/uintmax_t.m4: New file.
42147         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
42148
42149
42150         -----
42151
42152         Local Variables:
42153         coding: utf-8
42154         End:
42155
42156         Copyright (C) 1997-2008 Free Software Foundation, Inc.
42157
42158         Copying and distribution of this file, with or without
42159         modification, are permitted provided the copyright notice
42160         and this notice are preserved.