maint.mk: sort the list of syntax-check rules
[gnulib.git] / ChangeLog
1 2009-09-01  Daniel P. Berrange  <berrange@redhat.com>
2
3         maint.mk: sort the list of syntax-check rules
4         * top/maint.mk (syntax-check-rules): Sort syntax-check rules, so it's
5         easier to get a sense of progress when the rules are run sequentially
6         and take a long time.
7
8 2009-09-01  Simon Josefsson  <simon@josefsson.org>
9
10         * modules/arpa_inet: Use $(MKDIR_P) instead of @MKDIR_P@.
11         * modules/netinet_in: Likewise.
12         * modules/sys_file: Likewise.
13         * modules/sys_ioctl: Likewise.
14         * modules/sys_select: Likewise.
15         * modules/sys_socket: Likewise.
16         * modules/sys_stat: Likewise.
17         * modules/sys_time: Likewise.
18         * modules/sys_times: Likewise.
19         * modules/sys_utsname: Likewise.
20         * modules/sys_wait: Likewise.
21
22 2009-09-01  Jim Meyering  <meyering@redhat.com>
23
24         fts: help ensure that return values are not ignored
25         * lib/fts_.h (__GNUC_PREREQ): Define.
26         (__attribute_warn_unused_result__): Define.
27         (fts_children, fts_close, fts_open, fts_read): Declare with
28         __attribute_warn_unused_result__.
29
30         fts: fts_close now fails also when closing a dir file descriptor fails
31         * lib/fts.c (fts_close): Detect close failure, not just fchdir failure,
32         and propagate to caller, along with errno.
33
34         announce-gen: correct formatting in --help output
35         * build-aux/announce-gen (usage): Move the one-line description in
36         --help output "up", to where it belongs, just after Usage:.
37
38 2009-08-31  Eric Blake  <ebb9@byu.net>
39
40         fchdir: port to mingw
41         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Check for mingw bug.
42         * lib/open.c (open) [FCHDIR_REPLACEMENT]: If directories can't be
43         opened, then use a substitute.
44         * lib/sys_stat.in.h (fstat) [REPLACE_OPEN_DIRECTORY]: Declare
45         replacement.
46         * lib/fchdir.c (fstat) [REPLACE_OPEN_DIRECTORY]: Implement it.
47         (_gl_register_fd): No need to check stat if open already filters
48         all directories.
49         (fchdir): Fix error condition to match POSIX.
50         * modules/fchdir (Depends-on): Add sys_stat.
51         * doc/posix-functions/open.texi (open): Document the limitation.
52         * modules/fchdir-tests: New file.
53         * tests/test-fchdir.c: Likewise.
54
55         canonicalize: allow cross-testing from cygwin to mingw
56         * modules/canonicalize-tests (configure.ac): Define HAVE_SYMLINK.
57         (Makefile.am): Pass it through TESTS_ENVIRONMENT.
58         * modules/canonicalize-lgpl-tests (configure.ac, Makefile.am):
59         Likewise.
60         * tests/test-canonicalize.sh: Also skip test if 'ln -s' works, but
61         target does not support symlinks.
62         * tests/test-canonicalize-lgpl.sh: Likewise.
63
64         chown: avoid compilation warning on mingw
65         * m4/chown.m4 (gl_FUNC_CHOWN): Recognize missing chown.
66         * lib/chown.c (rpl_chown) [!HAVE_CHOWN]: Always return failure on
67         mingw.
68         * lib/lchown.c (lchown) [!HAVE_CHOWN]: Likewise.
69         * modules/chown (Depends-on): Add errno.
70
71 2009-08-31  Stefano Lattarini  <stefano.lattarini@gmail.com>  (tiny change)
72
73         * gnulib-tool: Fix test whether $CONFIG_SHELL has a working 'echo'
74         command.
75
76 2009-08-31  Jim Meyering  <meyering@redhat.com>
77
78         canonicalize: remove useless initialization
79         * lib/canonicalize.c (canonicalize_filename_mode): Remove useless
80         initialization of local, "end".
81
82 2009-08-30  Bruno Haible  <bruno@clisp.org>
83
84         Fix an unnecessary error on Solaris 10 on NFSv3 file systems.
85         * lib/set-mode-acl.c (qset_acl) [Solaris 10 new]: Treat EOPNOTSUPP like
86         ENOSYS.
87
88 2009-08-30  Bruno Haible  <bruno@clisp.org>
89
90         * tests/test-pipe-filter-ii1.sh: Prefer /usr/xpg6/bin/tr over
91         /usr/xpg4/bin/tr when it exists.
92         * tests/test-pipe-filter-gi1.sh: Likewise.
93
94 2009-08-30  Bruno Haible  <bruno@clisp.org>
95
96         Work around deficient /usr/bin/id program on Solaris.
97         * tests/test-file-has-acl.sh (ID): New variable.
98         * tests/test-set-mode-acl.sh (ID): Likewise.
99         * tests/test-copy-acl.sh (ID): Likewise.
100         * tests/test-copy-file.sh (ID): Likewise.
101
102 2009-08-30  Bruno Haible  <bruno@clisp.org>
103
104         New module 'xstriconveh'.
105         * lib/xstriconveh.h: New file.
106         * lib/xstriconveh.c: New file.
107         * modules/xstriconveh: New file.
108
109 2009-08-30  Bruno Haible  <bruno@clisp.org>
110
111         Make it easier to use mem_cd_iconveh.
112         * lib/striconveh.h (iconveh_t): New type.
113         (iconveh_open, iconveh_close): New declarations.
114         (mem_cd_iconveh, str_cd_iconveh): Replace the three iconv_t arguments
115         with a single 'const iconveh_t *' argument.
116         * lib/striconveh.c (iconveh_open, iconveh_close): New functions.
117         (mem_cd_iconveh, str_cd_iconveh): Replace the three iconv_t arguments
118         with a single 'const iconveh_t *' argument.
119         (mem_iconveh, str_iconveh): Use iconveh_open, iconveh_close.
120         * tests/test-striconveh.c (main): Update.
121         * NEWS: Mention the change.
122
123 2009-08-30  Bruno Haible  <bruno@clisp.org>
124
125         * doc/posix-functions/iconv_open.texi: Mention indirect conversion
126         problem.
127
128 2009-08-30  Bruno Haible  <bruno@clisp.org>
129
130         Work around iconv_open problem on Solaris.
131         * lib/iconv_open-solaris.gperf: New file.
132         * lib/iconv_open.c (ICONV_FLAVOR_SOLARIS): New macro.
133         * m4/iconv_open.m4 (gl_FUNC_ICONV_OPEN): Also handle Solaris.
134         * modules/iconv_open (Files): Add lib/iconv_open-solaris.gperf.
135         (Makefile.am): Add rule for iconv_open-solaris.h. Augment
136         BUILT_SOURCES, MOSTLYCLEANFILES, MAINTAINERCLEANFILES, EXTRA_DIST.
137         * doc/posix-functions/iconv_open.texi: Mention the Solaris problem.
138
139 2009-08-29  Jim Meyering  <meyering@redhat.com>
140
141         maint.mk: remove more coreutils-specific targets; XZ_OPT=-9ev
142         * top/maint.mk (cvs-check): Remove target; it was just an alias
143         to the better-named vc-diff-check.
144         (maintainer-distcheck): Remove rule.  It was used only from
145         the (alpha/beta/major) target, and all of its commands but one
146         were coreutils-specific.
147         (vc-dist): Remove rule.
148         (alpha beta major): Run "$(MAKE) distcheck" explicitly.
149         Run vc-diff-check, not vc-dist.
150         Run $(MAKE) dist with XZ_OPT=-9ev.  Note spelling, with "-".
151
152 2009-08-27  Bruno Haible  <bruno@clisp.org>
153
154         * tests/test-bitrotate.c (main): Remove test that uses a shift count
155         of 0.
156
157 2009-08-27  Bruno Haible  <bruno@clisp.org>
158
159         * tests/test-func.c (main): Don't verify sizeof __func__ on SunPRO C
160         compilers.
161         * doc/func.texi: Document the SunPRO C bug.
162
163 2009-08-27  Bruno Haible  <bruno@clisp.org>
164
165         Fix link error on Solaris.
166         * tests/test-parse-duration.c (xstrdup): Remove function.
167
168 2009-08-26  Pádraig Brady  <P@draigbrady.com>
169
170         ignore-value: handle pointer types, too
171         * lib/ignore-value.h (__attribute__): Remove definition.
172         (ignore_value): Remove use of "__attribute__ ((unused))" in favor
173         of a more concise and more-often effective "(void) i" statement.
174         (ignore_ptr): New function to suppress warnings from functions that
175         return pointers, and to make it explicit that one function doesn't
176         handle all cases.
177
178 2009-08-25  Bruno Haible  <bruno@clisp.org>
179
180         dup2: work around a Linux bug.
181         * m4/dup2.m4 (gl_FUNC_DUP2): Test for the Linux bug.
182         * lib/dup2.c (rpl_dup2): Correct the return value if it is -EBADF.
183         * doc/posix-functions/dup2.texi: Mention the Linux bug.
184         Reported by Simon Josefsson.
185
186 2009-08-25  Jim Meyering  <meyering@redhat.com>
187
188         libguestfs uses gnulib
189         * users.txt: Add libguestfs.
190
191 2009-08-24  Eric Blake  <ebb9@byu.net>
192
193         dup2, pipe2: fix some recent test failures on cygwin 1.5.x
194         * lib/pipe2.c (includes): Add binary-io.h.
195         * lib/dup2.c (rpl_dup2): Correct buggy errno value.
196
197 2009-08-24  Bruno Haible  <bruno@clisp.org>
198
199         Tolerate declared but missing accept4 syscall.
200         * lib/accept4.c (accept4): Invoke original accept4 function first, if
201         available.
202         * lib/sys_socket.in.h (accept4): If the function is already present,
203         override it.
204         * m4/accept4.m4 (gl_FUNC_ACCEPT4): Remove AC_LIBOBJ invocation.
205         * modules/accept4 (Makefile.am): Compile accept4.c always.
206         Reported by Paolo Bonzini and Eric Blake.
207
208 2009-08-23  Bruno Haible  <bruno@clisp.org>
209
210         New module 'accept4'.
211         * lib/sys_socket.in.h (accept4): New declaration.
212         * lib/accept4.c: New file.
213         * m4/accept4.m4: New file.
214         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
215         GNULIB_ACCEPT4, HAVE_ACCEPT4.
216         * modules/sys_socket (Makefile.am): Substitute GNULIB_ACCEPT4,
217         HAVE_ACCEPT4.
218         * modules/accept4: New file.
219         * doc/glibc-functions/accept4.texi: Mention the new module.
220
221 2009-08-24  Jim Meyering  <meyering@redhat.com>
222
223         progname: also set global program_invocation_name, when possible
224         Before this change, a libtool-enabled program that calls glibc's
225         error function would report the program name as
226         "/abs/dir/.libs/lt-program_name" rather than the desired program_name.
227         * modules/progname (configure.ac): Check for a declaration of
228         program_invocation_name.
229         * lib/progname.c:  Include <errno.h>.
230         (set_program_name) [HAVE_DECL_PROGRAM_INVOCATION_NAME]:
231         Set program_invocation_name.
232
233 2009-08-23  Bruno Haible  <bruno@clisp.org>
234
235         * lib/dup3.c: Include <string.h>.
236
237 2009-08-23  Bruno Haible  <bruno@clisp.org>
238
239         * lib/dup3.c (dup3): Test only once whether the system actually exists.
240         * lib/pipe2.c (pipe2): Likewise.
241         Suggested by Eric Blake.
242
243 2009-08-23  Bruno Haible  <bruno@clisp.org>
244
245         Tolerate declared but missing dup3 syscall.
246         * lib/dup3.c (dup3): Invoke original dup3 function first, if available.
247         * lib/unistd.in.h (dup3): If the function is already present,
248         override it.
249         * m4/dup3.m4 (gl_FUNC_DUP3): Remove AC_LIBOBJ invocation.
250         * modules/dup3 (Makefile.am): Compile dup3.c always.
251         Reported by Paolo Bonzini.
252
253 2009-08-23  Bruno Haible  <bruno@clisp.org>
254
255         Tolerate declared but missing pipe2 syscall.
256         * lib/pipe2.c (pipe2): Invoke original pipe2 function first, if
257         available.
258         * lib/unistd.in.h (pipe2): If the function is already present,
259         override it.
260         * m4/pipe2.m4 (gl_FUNC_PIPE2): Remove AC_LIBOBJ invocation.
261         * modules/pipe2 (Makefile.am): Compile pipe2.c always.
262         Reported by Paolo Bonzini.
263
264 2009-08-23  Bruno Haible  <bruno@clisp.org>
265
266         * lib/pipe2.c (pipe2): Move #ifs inside function.
267
268 2009-08-22  Joel E. Denny  <jdenny@clemson.edu>
269
270         quotearg: document limitations of quote_these_too
271         * lib/quotearg.c (quotearg_buffer_restyled): Add comments where
272         those limitations are created.
273         * lib/quotearg.h (set_char_quoting): Document that digits and
274         letters that are special after backslash are not permitted.
275         (quotearg_char): Cross-reference set_char_quoting documentation.
276
277 2009-08-23  Joel E. Denny  <jdenny@clemson.edu>
278
279         quotearg: implement custom_quoting_style
280         * lib/quotearg.c: (struct quoting_options): Add left_quote and
281         right_quote fields.
282         (set_custom_quoting): New public function.
283         (quotearg_buffer_restyled): Add left_quote and right_quote
284         arguments, handle them very much like locale quoting, and update
285         all uses.
286         (quotearg_n_custom): New public function.
287         (quotearg_n_custom_mem): New public function.
288         (quotearg_custom): New public function.
289         (quotearg_custom_mem): New public function.
290         * lib/quotearg.h: Prototype and document new public functions.
291         (enum quoting_style): For escape_quoting_style and
292         clocale_quoting_style, comment that QA_SPLIT_TRIGRAPHS is
293         ignored even though they're otherwise like c_quoting_style.
294         Add custom_quoting_style member and document with comparison to
295         clocale_quoting_style.
296         * tests/test-quotearg.c (custom_quotes): New array.
297         (custom_results): New array.
298         (main): Extend to test custom quoting.
299
300 2009-08-22  Joel E. Denny  <jdenny@clemson.edu>
301
302         quotearg: fix right quote escaping when it's in quote_these_too
303         * lib/quotearg.c (quotearg_buffer_restyled): Upon seeing a right
304         quote, be sure to prepend only one backslash.
305         * tests/test-quotearg.c (use_quote_double_quotes): New function.
306         (main): Test it.
307
308 2009-08-22  Joel E. Denny  <jdenny@clemson.edu>
309
310         quotearg-tests: test escaping of embedded locale quotes
311         * tests/test-quotearg.c (struct result_strings): Add member for
312         new input.
313         (LQ_ENC, RQ_ENC, RQ_ESC): New macros.
314         (inputs): Add new input.
315         (results_g): Add expected results.
316         (flag_results): Likewise.
317         (locale_results): Likewise.
318         (compare_strings): Check those.
319
320 2009-08-23  Bruno Haible  <bruno@clisp.org>
321
322         Tests for module 'dup3'.
323         * modules/dup3-tests: New file.
324         * tests/test-dup3.c: New file.
325
326         New module 'dup3'.
327         * lib/unistd.in.h (dup3): New declaration.
328         * lib/dup3.c: New file.
329         * m4/dup3.m4: New file.
330         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_DUP3 and
331         HAVE_DUP3.
332         * modules/unistd (Makefile.am): Substitute GNULIB_DUP3 and HAVE_DUP3.
333         * modules/dup3: New file.
334         * doc/glibc-functions/dup3.texi: Mention the new module.
335
336 2009-08-23  Bruno Haible  <bruno@clisp.org>
337
338         Tweak the dup2 test.
339         * tests/test-dup2.c (main): Create the test file empty. Verify that an
340         out-of-range fd yields EBADF. Verify that after writing to /dev/null,
341         the test file is still empty. Fix argument order of lseek.
342
343 2009-08-23  Bruno Haible  <bruno@clisp.org>
344
345         Avoid test link errors when the modules getopt-gnu, gettext are used.
346         * modules/getopt-posix-tests (Makefile.am): Define test_getopt_LDADD.
347         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
348
349 2009-08-23  Bruno Haible  <bruno@clisp.org>
350
351         Fix getdtablesize() on mingw.
352         * lib/getdtablesize.c (getdtablesize): Implement differently.
353         * lib/unistd.in.h (getdtablesize): Improve comment.
354
355 2009-08-23  Bruno Haible  <bruno@clisp.org>
356
357         New module 'mkostemp'.
358         Based on Ulrich Drepper's 2007-08-10 change in glibc.
359         * lib/stdlib.in.h (mksotemp): New declaration.
360         * lib/mkostemp.c: New file, from glibc with modifications.
361         * lib/tempname.h (GT_FILE): Remove outdated comment.
362         (gen_tempname): Add flags argument.
363         * lib/tempname.c (__GT_BIGFILE): Remove macro.
364         (__GT_FILE): Map to 1.
365         (small_open, large_open): Remove macros.
366         (__gen_tempname): Add flags argument. Remove code for __GT_BIGFILE.
367         * lib/mkstemp.c (mkstemp): Update.
368         * lib/mkdtemp.c (mkdtemp): Likewise.
369         * m4/mkostemp.m4: New file.
370         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_MKOSTEMP,
371         HAVE_MKOSTEMP.
372         * modules/stdlib (Makefile.am): Substitute GNULIB_MKOSTEMP,
373         HAVE_MKOSTEMP.
374         * modules/mkostemp: New file, based on modules/mkstemp.
375         * doc/glibc-functions/mkostemp.texi: Mention the new module.
376         * NEWS: Mention the change.
377
378 2009-08-23  Bruno Haible  <bruno@clisp.org>
379
380         * lib/pipe2.c (pipe2): Support O_TEXT, O_BINARY on all platforms.
381         Reported by Eric Blake.
382
383 2009-08-23  Bruno Haible  <bruno@clisp.org>
384
385         * lib/pipe2.c (pipe2): Fix test of fcntl's return value.
386         Reported by Eric Blake.
387
388 2009-08-23  Bruno Haible  <bruno@clisp.org>
389
390         * modules/fchdir (Depends-on): Use fcntl-h instead of fcntl.
391         * modules/pipe2 (Depends-on): Likewise.
392
393 2009-08-23  Eric Blake  <ebb9@byu.net>
394
395         fcntl-h: add O_TTY_INIT support
396         * lib/fcntl.in.h (O_TTY_INIT): Support another POSIX macro.
397         * tests/test-fcntl-h.c (o): Test it.
398         * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.
399
400         fcntl-h: rename from fcntl, in preparation for fcntl(2)
401         * modules/fcntl: Move <fcntl.h> header replacement...
402         * modules/fcntl-h: ...to new name, so as not to collide with
403         like-named function.
404         * tests/test-fcntl.c: Rename...
405         * tests/test-fcntl-h.c: ...to this.  Test FD_CLOEXEC.
406         * modules/fcntl-tests: Rename...
407         * modules/fcntl-h-tests: ...to this.  Update test file name.
408         * modules/chdir-long (Depends-on): Update clients.
409         * modules/chdir-safer (Depends-on): Likewise.
410         * modules/fcntl-safer (Depends-on): Likewise.
411         * modules/fts (Depends-on): Likewise.
412         * modules/mkancesdirs (Depends-on): Likewise.
413         * modules/mkdir-p (Depends-on): Likewise.
414         * modules/open (Depends-on): Likewise.
415         * modules/savewd (Depends-on): Likewise.
416         * MODULES.html.sh (systems lacking POSIX:2008): Update name.
417         * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.
418
419 2009-08-22  Bruno Haible  <bruno@clisp.org>
420
421         * modules/binary-io (License): Relicense under LGPL.
422         * modules/pipe2 (License): Likewise.
423
424 2009-08-22  Bruno Haible  <bruno@clisp.org>
425
426         * lib/pipe-filter-ii.c (pipe_filter_ii_execute): Fix test of fcntl's
427         return value.
428         * lib/pipe-filter-gi.c (filter_init): Likewise.
429         Reported by Eric Blake.
430
431 2009-08-22  Bruno Haible  <bruno@clisp.org>
432
433         * lib/pipe.c (create_pipe): Use pipe2 instead of _pipe.
434         * modules/pipe (Depends-on): Add pipe2.
435
436 2009-08-22  Bruno Haible  <bruno@clisp.org>
437
438         Tests for module 'pipe2'.
439         * modules/pipe2-tests: New file.
440         * tests/test-pipe2.c: New file.
441
442         New module 'pipe2'.
443         * lib/unistd.in.h (pipe2): New declaration.
444         * lib/pipe2.c: New file.
445         * m4/pipe2.m4: New file.
446         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_PIPE2 and
447         HAVE_PIPE2.
448         * modules/unistd (Makefile.am): Substitute GNULIB_PIPE2 and HAVE_PIPE2.
449         * modules/pipe2: New file.
450         * doc/glibc-functions/pipe2.texi: Mention the new module.
451
452 2009-08-22  Bruno Haible  <bruno@clisp.org>
453
454         Reference some new glibc functions.
455         * doc/glibc-functions/accept4.texi: New file.
456         * doc/glibc-functions/dup3.texi: New file.
457         * doc/glibc-functions/mkostemp.texi: New file.
458         * doc/glibc-functions/pipe2.texi: New file.
459         * doc/gnulib.texi (Glibc stdlib.h): Refer to mkostemp.
460         (Glibc sys/socket.h): Refer to accept4.
461         (Glibc unistd.h): Refer to dup3, pipe2.
462         Reported by Eric Blake.
463
464 2009-08-22  Jim Meyering  <meyering@redhat.com>
465             Bruno Haible  <bruno@clisp.org>
466
467         annotate automake snippets with $(AM_V_GEN) and $(AM_V_at)
468         This makes it so packages using automake-1.11's silent-rules option
469         can print e.g., a single "GEN    configmake.h" line, rather than
470         the 30+ statements that perform the job.  If you want to see the
471         actual commands, you can still run "make V=1".
472         * modules/alloca-opt: Add $(AM_V_GEN) and $(AM_V_at) prefixes
473         so that make output is abbreviated when those variables are defined
474         appropriately.
475         * modules/argz: Likewise.
476         * modules/arpa_inet: Likewise.
477         * modules/byteswap: Likewise.
478         * modules/configmake: Likewise.
479         * modules/dirent: Likewise.
480         * modules/errno: Likewise.
481         * modules/fcntl: Likewise.
482         * modules/float: Likewise.
483         * modules/fnmatch: Likewise.
484         * modules/getopt-posix: Likewise.
485         * modules/glob: Likewise.
486         * modules/iconv_open: Likewise.
487         * modules/inttypes: Likewise.
488         * modules/localcharset: Likewise.
489         * modules/locale: Likewise.
490         * modules/math: Likewise.
491         * modules/netdb: Likewise.
492         * modules/netinet_in: Likewise.
493         * modules/poll: Likewise.
494         * modules/posix_spawnp-tests: Likewise.
495         * modules/sched: Likewise.
496         * modules/search: Likewise.
497         * modules/selinux-h: Likewise.
498         * modules/signal: Likewise.
499         * modules/spawn: Likewise.
500         * modules/stdarg: Likewise.
501         * modules/stdbool: Likewise.
502         * modules/stddef: Likewise.
503         * modules/stdint: Likewise.
504         * modules/stdio: Likewise.
505         * modules/stdlib: Likewise.
506         * modules/string: Likewise.
507         * modules/strings: Likewise.
508         * modules/sys_file: Likewise.
509         * modules/sys_ioctl: Likewise.
510         * modules/sys_select: Likewise.
511         * modules/sys_socket: Likewise.
512         * modules/sys_stat: Likewise.
513         * modules/sys_time: Likewise.
514         * modules/sys_times: Likewise.
515         * modules/sys_utsname: Likewise.
516         * modules/sys_wait: Likewise.
517         * modules/sysexits: Likewise.
518         * modules/time: Likewise.
519         * modules/unistd: Likewise.
520         * modules/wchar: Likewise.
521         * modules/wctype: Likewise.
522
523 2009-08-22  Jim Meyering  <meyering@redhat.com>
524
525         announce-gen: detect write failure
526         * build-aux/announce-gen: Add Coda at end.
527         Remove equivalent-but-more-verbose block at top.
528
529 2009-08-19  Akim Demaille  <demaille@gostai.com>
530
531         bootstrap: --help to stdout.
532         * bootstrap (usage): Don't send --help to stderr.
533         Use a here doc instead of a long string.
534
535 2009-08-21  Eric Blake  <ebb9@byu.net>
536
537         test-popen-safer: split from test-popen
538         * tests/test-popen.c (main): Move...
539         * tests/test-popen.h: ...into new file.
540         * tests/test-popen-safer2.c: New file.
541         * modules/popen-tests (Files): Add test-popen.h.
542         * modules/popen-safer-tests (Files): Add test-popen-safer2.c.
543         Suggested by Bruno Haible.
544
545         test-fcntl-safer: split from test-open
546         * tests/test-open.c (main): Move...
547         * tests/test-open.h: ...into new file.
548         * tests/test-fcntl-safer.c: New file.
549         * modules/open-tests (Files): Add test-open.h.
550         * modules/fcntl-safer-tests: New file.
551         Suggested by Bruno Haible.
552
553         test-fopen-safer: split from test-fopen
554         * tests/test-fopen.c (main): Move...
555         * tests/test-fopen.h: ...into new file.
556         * tests/test-fopen-safer.c: New file.
557         * modules/fopen-tests (Files): Add test-fopen.h.
558         * modules/fopen-safer-tests: New file.
559         Suggested by Bruno Haible.
560
561 2009-08-21  Paolo Bonzini  <bonzini@gnu.org>
562
563         popen-safer: test O_CLOEXEC at run-time.
564         * lib/popen-safer.c: Test O_CLOEXEC at run-time.
565
566 2009-08-21  Paolo Bonzini  <bonzini@gnu.org>
567
568         fcntl: move more flags to the header
569         * lib/cloexec.c: Do not define FD_CLOEXEC here.
570         * lib/popen-safer.c: Do not alias O_NOINHERIT to O_CLOEXEC here.
571         * lib/fcntl.in.h: Do both things here.
572
573 2009-08-21  Jim Meyering  <meyering@redhat.com>
574
575         consistently remove $@-t before redirecting to it
576         * modules/argz: Remove $@-t and $@ before redirecting to the former.
577         * modules/alloca-opt: Likewise.
578         * modules/byteswap: Likewise.
579         * modules/fnmatch: Likewise.
580         * modules/getopt-posix: Likewise.
581         * modules/glob: Likewise.
582         * modules/poll: Likewise.
583         * modules/posix_spawnp-tests: Likewise.
584         * modules/sys_socket: Likewise.
585         * modules/sysexits: Likewise.
586
587 2009-08-21  Eric Blake  <ebb9@byu.net>
588
589         popen: simplify access to original popen
590         * lib/popen.c (rpl_popen): No need to worry about popen being a
591         macro.
592         Reported by Bruno Haible.
593
594 2009-08-20  Eric Blake  <ebb9@byu.net>
595
596         build: avoid some compiler warnings
597         * lib/selinux-at.h: Use dir_fd, not dirfd, to avoid shadowing.
598         * lib/exclude.c (fnmatch_pattern_has_wildcards): Use correct
599         type.
600         (new_exclude_segment, excluded_file_pattern_p)
601         (excluded_file_name_p): Reduce scope.
602         * lib/vasnprintf.c (decimal_point_char): Avoid warning on
603         old-style declaration.
604
605 2009-08-20  Simon Josefsson  <simon@josefsson.org>
606
607         * tests/test-exclude1.sh: Handle Windows EOL.
608         * tests/test-exclude2.sh: Likewise.
609         * tests/test-exclude3.sh: Likewise.
610         * tests/test-exclude4.sh: Likewise.
611         * tests/test-exclude5.sh: Likewise.
612         * tests/test-exclude6.sh: Likewise.
613         * tests/test-exclude7.sh: Likewise.
614
615 2009-08-19  Akim Demaille  <demaille@gostai.com>
616
617         bootstrap: find sha1sum when named gsha1sum.
618         * bootstrap (find_tool): New.
619         ($SHA1SUM): New.
620         Use it.
621
622 2009-08-20  Jim Meyering  <meyering@redhat.com>
623
624         maint.mk: _header_without_use: fix a quoting bug and remove a bash'ism
625         * top/maint.mk (_header_without_use): Use "\\\\", not "\\" in the sed
626         expression that converts "." in a file name to "\." in the resulting
627         regexp.  Start with a dummy statement, so that prior shell variable
628         definitions are expanded portably.  Reported by Simon Josefsson.
629
630 2009-08-20  Paolo Bonzini  <bonzini@gnu.org>
631
632         Fix polling for writeability of a screen buffer.
633         * lib/poll.c: Distinguish input and screen buffers for the
634         Win32 implementation.
635         * lib/select.c: Likewise.
636
637 2009-08-19  Eric Blake  <ebb9@byu.net>
638
639         popen-safer: prevent popen from clobbering std descriptors
640         * modules/popen-safer: New file.
641         * lib/popen-safer.c: Likewise.
642         * m4/stdio-safer.m4 (gl_POPEN_SAFER): New macro.
643         * lib/stdio--.h (popen): Provide override.
644         * lib/stdio-safer.h (popen_safer): Provide declaration.
645         * tests/test-popen.c (includes): Partially test this.
646         * modules/popen-safer-tests: New file, for more tests.
647         * tests/test-popen-safer.c: Likewise.
648         * MODULES.html.sh (file stream based Input/Output): Mention it.
649
650         tests: test some of the *-safer modules
651         * modules/fopen-safer (Depends-on): Add fopen.
652         * modules/fcntl-safer (Depends-on): Add fcntl.
653         * modules/stdlib-safer (Depends-on): Add stdlib.
654         (configure.ac): Set indicator.
655         * modules/unistd-safer (configure.ac): Likewise.
656         * modules/tmpfile-safer (configure.ac): Likewise.
657         (Depends-on): Add tmpfile.
658         * lib/stdio--.h (fopen, tmpfile): Don't override unless module is
659         active.
660         * tests/test-fopen.c (includes): Test safer versions when they are
661         in use.
662         * tests/test-open.c (includes): Likewise.
663
664         popen: fix cygwin 1.5 bug when stdin closed
665         * doc/posix-functions/popen.texi (popen): Document cygwin bugs.
666         * modules/popen: New file.
667         * modules/popen-tests: Likewise.
668         * tests/test-popen.c: Likewise.
669         * m4/popen.m4: Likewise.
670         * lib/popen.c: Likewise.
671         * lib/stdio.in.h (popen): New declaration.
672         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add popen.
673         * modules/stdio (Makefile.am): Likewise.
674         * MODULES.html.sh (systems lacking POSIX:2008): Mention it.
675
676 2009-08-17  Joel E. Denny  <jdenny@clemson.edu>
677
678         maint.mk: give full control over update-copyright exclusions
679         * top/maint.mk (VC_LIST_EXCEPT): Instead of ChangeLog, use
680         ${VC_LIST_EXCEPT_DEFAULT-ChangeLog} as the default exclusion.
681         (update-copyright): Don't force inclusion of top-level
682         ChangeLog.  Don't force exclusion of all COPYING files, but make
683         them the default exclusion instead.
684
685 2009-08-16  Bruno Haible  <bruno@clisp.org>
686
687         Fix test failures on Solaris 10.
688         * tests/uniconv/test-u8-conv-from-enc.c (main): Disable autodetect_jp
689         tests when Solaris iconv() is used.
690         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
691         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
692         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
693         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
694         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
695
696 2009-08-16  Bruno Haible  <bruno@clisp.org>
697
698         Fix test failures on Solaris 10.
699         * tests/test-pipe-filter-ii1.sh: Determine the filename of a working
700         'tr' program and pass it as first argument.
701         * tests/test-pipe-filter-gi1.sh: Likewise.
702         * tests/test-pipe-filter-ii1.c (main): Except the filename of a 'tr'
703         program as first argument.
704         * tests/test-pipe-filter-gi1.c (main): Likewise.
705
706 2009-08-16  Eric Blake  <ebb9@byu.net>
707
708         fpurge: fix previous commits
709         * modules/fpurge (Makefile.am): Make replacement conditional,
710         partially reverting 2007-04-29 change; missed in previous
711         attempt.
712         * m4/fpurge.m4 (gl_FUNC_FPURGE): Also compile fpurge.c when fpurge
713         is missing.
714
715 2009-08-16  Bruno Haible  <bruno@clisp.org>
716
717         Clarify fpurge's effect on the file position.
718         * lib/stdio.in.h (fpurge): Specify the file position after fpurge.
719         * tests/test-fpurge.c (main): Make a second pass for checking the file
720         position.
721
722 2009-08-16  Bruno Haible  <bruno@clisp.org>
723
724         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't compile fpurge.c if only the
725         declaration of fpurge is missing.
726         * tests/test-fpurge.c (main): Check that the file has not more contents
727         than expected. Close the file before removing it.
728
729 2009-08-15  Eric Blake  <ebb9@byu.net>
730
731         fpurge: don't wrap working cygwin implementation
732         * lib/fpurge.c (fpurge): Fix comment typo.
733         * m4/fpurge.m4 (gl_FUNC_FPURGE): Detect BSD bug, allowing cygwin
734         1.7 to avoid replacement.
735         * tests/test-fpurge.c (main): Enhance test.
736
737 2009-08-15  Eric Blake  <ebb9@byu.net>
738         and Jim Meyering  <meyering@redhat.com>
739
740         test-update-copyright: skip if perl is insufficient
741         * tests/test-update-copyright.sh: Failure to run maintainer tool
742         should not cause testsuite failure on cygwin 1.5.
743
744 2009-08-14  Eric Blake  <ebb9@byu.net>
745
746         doc: mention more functions added in cygwin 1.7.0
747         * doc/posix-headers/limits.texi (limits.h): Update for recent
748         cygwin additions.
749         * doc/posix-headers/wordexp.texi (wordexp.h): Likewise.
750         * doc/posix-functions/wordexp.texi (wordexp): Likewise.
751         * doc/posix-functions/wordfree.texi (wordfree): Likewise.
752         * doc/posix-functions/setlocale.texi (setlocale): Likewise.
753         * doc/posix-functions/nl_langinfo.texi (nl_langinfo): Likewise.
754
755 2009-08-14  Eric Blake  <ebb9@byu.net>
756
757         maint.mk: simplify update-copyright rule
758         * top/maint.mk (update-copyright-local): Delete, and document how
759         to do it in cfg.mk instead.
760         (update-copyright-exclude-regexp): Delete, and document how to do
761         it in .x-update-copyright instead.
762         (update-copyright): Simplify, thanks to VC_LIST_EXCEPT.  Don't
763         exclude ChangeLog.
764
765 2009-08-14  Bruno Haible  <bruno@clisp.org>
766
767         * m4/wchar.m4 (gl_WCHAR_H): Undo invalid optimization in last commit.
768
769 2009-08-14  Joel E. Denny  <jdenny@clemson.edu>
770
771         maint.mk: support update-copyright-env
772         * top/maint.mk (update-copyright-env): Define place-holder.
773         (update-copyright): Expand $(update-copyright-env) before
774         invoking update-copyright.
775
776 2009-08-14  Joel E. Denny  <jdenny@clemson.edu>
777
778         update-copyright: implement forced reformatting
779         * build-aux/update-copyright: Implement and document
780         UPDATE_COPYRIGHT_FORCE.
781         * tests/test-update-copyright.sh: Test it.
782
783 2009-08-14  Eric Blake  <ebb9@byu.net>
784         and Bruno Haible  <bruno@clisp.org>
785
786         stddef: fix NetBSD 5.0 NULL bug, rather than working around it
787         * tests/test-locale.c: Revert previous patch related to NULL.
788         * tests/test-stdio.c: Likewise.
789         * tests/test-stdlib.c: Likewise.
790         * tests/test-string.c: Likewise.
791         * tests/test-unistd.c: Likewise.
792         * modules/time-tests (Depends-on): Add verify.
793         * modules/wchar-tests (Depends-on): Likewise.
794         * tests/test-time.c: Test for NULL compliance.
795         * tests/test-wchar.c: Likewise.
796         * modules/locale (Depends-on): Add stddef.
797         * modules/stdio (Depends-on): Likewise.
798         * modules/stdlib (Depends-on): Likewise.
799         * modules/string (Depends-on): Likewise.
800         * modules/time (Depends-on): Likewise.
801         * modules/unistd (Depends-on): Likewise.
802         * modules/wchar (Depends-on): Likewise.
803         * lib/locale.in.h (includes): Use <stddef.h> to fix NULL.
804         * lib/stdlib.in.h (includes): Likewise.
805         * lib/string.in.h (includes): Likewise.
806         * lib/time.in.h (includes): Likewise.
807         * lib/unistd.in.h (includes): Likewise.
808         * m4/locale_h.m4 (gl_LOCALE_H): Replace locale.h if stddef.h was
809         replaced.
810         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
811         * m4/stddef_h.m4: New file.
812         * modules/stddef: Likewise.
813         * lib/stddef.in.h: Likewise.
814         * modules/stddef-tests: Likewise.
815         * tests/test-stddef.c: Likewise.
816         * MODULES.html.sh (Basic types <stddef.h>): Mention new module.
817         * doc/posix-headers/stddef.texi (stddef.h): Document the bug.
818         * doc/posix-headers/locale.texi (locale.h): Likewise.
819         * doc/posix-headers/stdio.texi (stdio.h): Likewise.
820         * doc/posix-headers/stdlib.texi (stdlib.h): Likewise.
821         * doc/posix-headers/string.texi (string.h): Likewise.
822         * doc/posix-headers/time.texi (time.h): Likewise.
823         * doc/posix-headers/unistd.texi (unistd.h): Likewise.
824         * doc/posix-headers/wchar.texi (wchar.h): Likewise.
825
826 2009-08-14  Eric Blake  <ebb9@byu.net>
827
828         doc: improve git diff of texinfo files
829         * .gitattributes: Add rule for *.texi files, with hint on how to
830         use it.
831         Copied from m4, and based on a report by Bruno Haible.
832
833 2009-08-14  Bruno Haible  <bruno@clisp.org>
834
835         Disable multithread support by default on Cygwin 1.5.x for real.
836         * m4/threadlib.m4 (gl_THREADLIB_EARLY_BODY): Fix last commit.
837
838 2009-08-14  Joel E. Denny  <jdenny@clemson.edu>
839
840         update-copyright: much ado about intervals
841         * build-aux/update-copyright: Implement and document
842         UPDATE_COPYRIGHT_USE_INTERVALS to control expansion and collapse
843         of copyright year intervals.
844         Also, document UPDATE_COPYRIGHT_YEAR.
845         * tests/test-update-copyright.sh: Test it.
846
847         update-copyright: convert 2-digit to 4-digit years
848         * build-aux/update-copyright: Implement and document.
849         * tests/test-update-copyright.sh: Update.
850
851 2009-08-14  Jim Meyering  <meyering@redhat.com>
852
853         test-exclude: avoid coreutils "make check" failure
854         * tests/test-exclude.c (ARGMATCH_DIE_DECL) [ARGMATCH_DIE_DECL]: Define,
855         just as in test-argmatch.c.
856
857 2009-08-13  Eric Blake  <ebb9@byu.net>
858
859         test-dup2: fix bad assumption
860         * tests/test-dup2.c (main): Tolerate leaked fds from environment.
861         Reported by Peter Breitenlohner <peb@mppmu.mpg.de>.
862
863         test-version-etc: fix CRLF portability issue
864         * tests/test-version-etc.sh: Use tr, not sed, as not all sed
865         recognize \r.
866         * tests/test-argp-version-etc-1.sh: Likewise.
867
868         getopt: update client modules
869         * modules/argp (Depends-on): Use getopt-gnu.
870         * modules/git-merge-changelog (Depends-on): Likewise.
871         * modules/long-options (Depends-on): Likewise.
872         * modules/xstrtol (Depends-on): Likewise.
873
874 2009-08-13  Simon Josefsson  <simon@josefsson.org>
875
876         * tests/test-version-etc.sh: Don't fail on different
877         project/version.  Don't fail on CRLF differences.  Rewrite to use
878         multiple -e instead of multiple sed forks, suggested by Eric Blake
879         <ebb9@byu.net>.
880         * tests/test-argp-version-etc-1.sh: Likewise.
881
882 2009-08-13  Simon Josefsson  <simon@josefsson.org>
883
884         * tests/test-version-etc.sh: Don't fail on different
885         project/version.
886
887 2009-08-12  Bruno Haible  <bruno@clisp.org>
888
889         Tests for modules 'getopt-posix', 'getopt-gnu'.
890         * modules/getopt-posix-tests: New file.
891         * tests/test-getopt.c: New file.
892         * tests/test-getopt.h: New file.
893         * tests/test-getopt_long.h: New file.
894
895         New modules 'getopt-posix', 'getopt-gnu'.
896         * modules/getopt-gnu: New file, renamed from modules/getopt.
897         * modules/getopt-posix: New file.
898         * modules/getopt: Turn into an obsolete alias for getopt-gnu.
899         * m4/getopt.m4 (gl_FUNC_GETOPT_POSIX, gl_FUNC_GETOPT_GNU): New macros.
900         (gl_GETOPT): Remove macro.
901         (gl_GETOPT_CHECK_HEADERS): Do some checks only for gl_FUNC_GETOPT_GNU.
902         Disable the test against BSD systems that declare optreset. Test
903         against mingw bug. Test against lack of support of optional arguments
904         on many platforms.
905         * doc/glibc-headers/getopt.texi: Update module name and list of
906         relevant platforms.
907         * doc/posix-functions/getopt.texi: Mention modules 'getopt-posix' and
908         'getopt-gnu' and more portability problems.
909         * NEWS: Mention the changes.
910
911 2009-08-12  Bruno Haible  <bruno@clisp.org>
912
913         Ensure that optarg etc. get declared by <unistd.h>.
914         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Require
915         AC_USE_SYSTEM_EXTENSIONS.
916         * modules/getopt (Depends-on): Add 'extensions'.
917
918 2009-08-12  Bruno Haible  <bruno@clisp.org>
919
920         Avoid test link errors.
921         * modules/pipe-filter-ii-tests (Makefile.am): Define
922         test_pipe_filter_ii1_LDADD and test_pipe_filter_ii2_main_LDADD.
923         * modules/pipe-filter-gi-tests (Makefile.am): Define
924         test_pipe_filter_gi1_LDADD and test_pipe_filter_gi2_main_LDADD.
925         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
926
927 2009-08-12  Bruno Haible  <bruno@clisp.org>
928
929         * m4/getopt.m4 (gl_REPLACE_GETOPT): New macro, was called
930         gl_GETOPT_SUBSTITUTE before.
931         (gl_GETOPT): Use it.
932         * m4/argp.m4 (gl_ARGP): Update.
933         Reported by Sergey Poznyakoff.
934
935         * m4/getopt.m4: Reorder macros.
936         (gl_GETOPT): Inline gl_GETOPT_SUBSTITUTE.
937         (gl_GETOPT_SUBSTITUTE): Remove macro.
938
939 2009-08-12  Sergey Poznyakoff  <gray@gnu.org.ua>
940
941         Minor improvement in gitlog-to-changelog
942
943         * build-aux/gitlog-to-changelog: New option `--format' makes
944         output format string configurable.
945
946 2009-08-12  Sergey Poznyakoff  <gray@gnu.org.ua>
947
948         Optimize exclude: use hash tables for non-wildcard patterns.
949
950         * lib/exclude.c: Include hash.h and mbuiter.h
951         (struct exclude_pattern, exclude_segment): New data types.
952         (struct exclude): Rewrite.
953         (fnmatch_pattern_has_wildcards): New function.
954         (new_exclude_segment, free_exclude_segment): New functions.
955         (excluded_file_pattern_p, excluded_file_name_p): New functions.
956         (excluded_file_name, add_exclude): Rewrite using new struct exclude.
957         * lib/exclude.h (is_fnmatch_pattern): New prototype.
958         * modules/exclude: Depend on hash and mbuiter.
959
960         * modules/exclude-tests: New file.
961         * tests/test-exclude.c: New file.
962         * tests/test-exclude1.sh: New file.
963         * tests/test-exclude2.sh: New file.
964         * tests/test-exclude3.sh: New file.
965         * tests/test-exclude4.sh: New file.
966         * tests/test-exclude5.sh: New file.
967         * tests/test-exclude6.sh: New file.
968         * tests/test-exclude7.sh: New file.
969
970 2009-08-12  Bruno Haible  <bruno@clisp.org>
971
972         Ensure that getopt() gets declared by <unistd.h>.
973         * lib/unistd.in.h: Conditionally include getopt.h.
974         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Require gl_UNISTD_H_DEFAULTS.
975         Set GNULIB_UNISTD_H_GETOPT.
976         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
977         GNULIB_UNISTD_H_GETOPT.
978         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_GETOPT.
979
980 2009-08-12  Bruno Haible  <bruno@clisp.org>
981
982         Clarify logic.
983         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS, gl_GETOPT_IFELSE): Use
984         gl_replace_getopt instead of GETOPT_H.
985
986 2009-08-12  Bruno Haible  <bruno@clisp.org>
987
988         * m4/getopt.m4: Add comments.
989
990 2009-08-12  Bruno Haible  <bruno@clisp.org>
991
992         Disable multithread support by default on Cygwin 1.5.x.
993         * m4/threadlib.m4 (gl_THREADLIB_EARLY_BODY): On Cygwin 1.5.x and older,
994         set gl_use_threads=no if not specified otherwise.
995
996 2009-08-11  Bruno Haible  <bruno@clisp.org>
997
998         Avoid compilation error on NetBSD 5.0.
999         * tests/test-locale.c: Write sizeof (NULL) instead of sizeof NULL.
1000         * tests/test-stdio.c: Likewise.
1001         * tests/test-stdlib.c: Likewise.
1002         * tests/test-string.c: Likewise.
1003         * tests/test-unistd.c: Likewise.
1004         Reported by Greg Troxel <gdt@ir.bbn.com>
1005         at <https://savannah.gnu.org/support/?106973>.
1006
1007 2009-08-11  Bruno Haible  <bruno@clisp.org>
1008
1009         * modules/dup2-tests (Depends-on): Remove close.
1010
1011         Undo 2009-07-19 commit.
1012         * modules/acl-tests (Depends-on): Remove close.
1013         * modules/binary-io-tests (Depends-on): Likewise.
1014         * modules/closein-tests (Depends-on): Likewise.
1015         * modules/flock-tests (Depends-on): Likewise.
1016         * modules/fsync-tests (Depends-on): Likewise.
1017         * modules/lseek-tests (Depends-on): Likewise.
1018         * modules/pipe-tests (Depends-on): Likewise.
1019         * modules/posix_spawn-tests (Depends-on): Likewise.
1020         * modules/posix_spawnp-tests (Depends-on): Likewise.
1021         * modules/stat-time-tests (Depends-on): Likewise.
1022         * modules/yesno-tests (Depends-on): Likewise.
1023
1024 2009-08-10  Bruno Haible  <bruno@clisp.org>
1025
1026         * lib/vasnprintf.c (DCHAR_SET): Undefine at the end.
1027
1028 2009-08-10  Bruno Haible  <bruno@clisp.org>
1029
1030         Fix a gcc warning.
1031         * lib/write.c (rpl_write): Cast result of _get_osfhandle.
1032
1033 2009-08-10  Bruno Haible  <bruno@clisp.org>
1034
1035         Don't optimize AC_LIBOBJs, as they may appear in different contexts.
1036         * m4/close.m4 (gl_REPLACE_CLOSE): Execute AC_LIBOBJ unconditionally,
1037         not only the first time.
1038         * m4/fclose.m4 (gl_REPLACE_FCLOSE): Likewise.
1039         * m4/open.m4 (gl_REPLACE_OPEN): Likewise.
1040         * m4/strstr.m4 (gl_FUNC_STRSTR): Execute AC_LIBOBJ when REPLACE_STRSTR
1041         is 1, not only the the first time.
1042
1043 2009-08-10  Bruno Haible  <bruno@clisp.org>
1044
1045         Make it possible to use module 'gethostname' without module 'close'.
1046         * lib/unistd.in.h (close): Evoke a link error only if
1047         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS is set.
1048         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
1049         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1050         * modules/unistd (Makefile.am): Substitute
1051         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1052         * lib/sys_ioctl.in.h (ioctl): Evoke a link error only if
1053         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS is set.
1054         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H_DEFAULTS): Initialize
1055         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1056         * modules/sys_ioctl (Makefile.am): Substitute
1057         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1058         * modules/socket (configure.ac): On native Windows, set
1059         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS and
1060         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
1061         Reported by Sam Steingold <sds@gnu.org>.
1062
1063 2009-08-10  Bruno Haible  <bruno@clisp.org>
1064
1065         * m4/close.m4 (gl_FUNC_CLOSE): Add comment.
1066         * modules/ioctl (configure.ac): Likewise.
1067
1068 2009-08-10  Bruno Haible  <bruno@clisp.org>
1069
1070         Avoid collision between gnulib wrapper and libintl wrapper.
1071         * lib/stdio-write.c (printf): Don't define if a printf wrapper is
1072         already defined in intl/printf.c.
1073         (vprintf): Test REPLACE_VPRINTF_POSIX, not REPLACE_VFPRINTF_POSIX.
1074         (vfprintf): Test REPLACE_VFPRINTF_POSIX, not REPLACE_VPRINTF_POSIX.
1075
1076 2009-08-09  Bruno Haible  <bruno@clisp.org>
1077
1078         Make <sys/select.h> really self-contained, also on Solaris 10.
1079         * lib/sys_select.in.h: Include <string.h>.
1080         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Test also against
1081         Solaris 10 problem.
1082         * tests/test-sys_select.c (main): Add check that FD_ZERO can be used.
1083         * doc/posix-headers/sys_select.texi: Mention the Solaris 10 problem.
1084         Reported by Jim Meyering.
1085
1086 2009-08-09  Bruno Haible  <bruno@clisp.org>
1087
1088         Avoid warnings from 'aclocal' that are due to a use of macro name
1089         AM_XGETTEXT_OPTION that is not defined in automake.
1090         * modules/argp (configure.ac): Hide use of AM_XGETTEXT_OPTION from
1091         automake.
1092         * modules/error (configure.ac): Likewise.
1093         * modules/propername (configure.ac): Likewise.
1094         * modules/vasprintf (configure.ac): Likewise.
1095         * modules/verror (configure.ac): Likewise.
1096         * modules/xprintf (configure.ac): Likewise.
1097         * modules/xvasprintf (configure.ac): Likewise.
1098
1099 2009-08-08  Bruno Haible  <bruno@clisp.org>
1100
1101         Avoid compilation error in C++ mode.
1102         * lib/gettimeofday.c (rpl_gettimeofday): Cast timezone argument.
1103         Reported by Sam Steingold <sds@gnu.org>.
1104
1105 2009-08-08  Bruno Haible  <bruno@clisp.org>
1106
1107         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Define HOST_NAME_MAX also
1108         for the various Unix platforms.
1109         * doc/posix-headers/limits.texi: Update platforms list regarding
1110         HOST_NAME_MAX.
1111         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
1112
1113 2009-08-07  Jim Meyering  <meyering@redhat.com>
1114
1115         selinux-at: fix typo in a comment
1116         * lib/selinux-at.h: s/getfileconat/getfilecon/ in a comment.
1117         Spotted by Paolo Bonzini.
1118
1119         selinux-at: remove redundant m4 code, add documentation
1120         * modules/selinux-at (configure.ac): Remove redundant code.
1121         LIB_SELINUX is already set via the dependent module, selinux-h.
1122         (Include): Add quotes around selinux-at.h.
1123         * lib/selinux-at.h: Add documentation.
1124         Reported by Bruno Haible in
1125         http://marc.info/?l=gnulib-bug&m=124958988300749
1126
1127 2009-08-07  Bruno Haible  <bruno@clisp.org>
1128
1129         Avoid link error on MacOS X 10.3 and 10.4.
1130         * lib/argp-ba.c (argp_program_bug_address): Explicitly zero-initialize
1131         on non-ELF systems.
1132         * lib/argp-pv.c (argp_program_version): Likewise.
1133         Reported by Simon Josefsson.
1134
1135 2009-08-07  Simon Josefsson  <simon@josefsson.org>
1136
1137         * tests/test-version-etc.sh: Use $EXEEXT.
1138
1139 2009-08-06  Joel E. Denny  <jdenny@clemson.edu>
1140
1141         update-copyright: update documentation to point to maint.mk
1142         * build-aux/update-copyright: Here.
1143
1144 2009-08-06  Jim Meyering  <meyering@redhat.com>
1145
1146         maint.mk: support update-copyright-local
1147         * top/maint.mk (update-copyright-local): Define place-holder.
1148         (update-copyright): Depend on $(update-copyright-local).
1149
1150 2009-08-06  Jim Meyering  <meyering@redhat.com>
1151
1152         selinux-at: new module
1153         Initially written for coreutils, this module will soon be
1154         used by findutils, too.
1155         * MODULES.html.sh [Misc]: Add selinux-at.
1156         * lib/selinux-at.h: New file, from coreutils.
1157         * lib/selinux-at.c: Likewise.
1158         * modules/selinux-at: Likewise.
1159         (License): Change from LGPL to GPL, since it depends
1160         on the GPL'd openat module.
1161
1162         doc: update README
1163         * README: Remove references to cogito.
1164         Remove cvs-repo-updating instructions from 2007.
1165         Don't imply that CVS is better if you have limited disk space.
1166
1167 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1168
1169         update-copyright: support C-style comments
1170         * build-aux/update-copyright: Implement and document.
1171         * tests/test-update-copyright.sh: Test.
1172
1173 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1174
1175         update-copyright: support omitted "(C)"
1176         * build-aux/update-copyright: Implement and document.  Also,
1177         allow variable whitespace before "(C)".
1178         * tests/test-update-copyright.sh: Test.
1179
1180 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1181
1182         update-copyright: don't trip on non-FSF copyright statements
1183         * build-aux/update-copyright: Fix so that the first correctly
1184         formatted FSF copyright statement is recognized no matter what
1185         appears before it.  Update documentation.
1186         * tests/test-update-copyright.sh: Test that.
1187
1188 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1189
1190         update-copyright: clean up code a little
1191         * build-aux/update-copyright: Append "_re" to the name of any
1192         variable holding a regular expression.
1193         Replace "old" and "new" with "stmt" in variable names.
1194         Do not accept 2-digit UPDATE_COPYRIGHT_YEAR, which was not
1195         handled correctly.
1196         Format code more consistently.
1197
1198 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
1199
1200         update-copyright-tests: improve portability
1201         * tests/test-update-copyright.sh: Use cmp if diff cannot handle
1202         -u or /dev/null.  Suggested by Jim Meyering and Eric Blake.
1203
1204 2009-08-03  Joel E. Denny  <jdenny@clemson.edu>
1205
1206         update-copyright: support @copyright{} and &copy;
1207         * build-aux/update-copyright: Implement and document.
1208         * tests/test-update-copyright.sh: Test.
1209
1210 2009-08-04  Jim Meyering  <meyering@redhat.com>
1211
1212         update-copyright-tests: correctly test EOL=\r\n handling
1213         * tests/test-update-copyright.sh: Put \r at the end of some lines
1214         for the dos-eol tests.  Based on a patch by Joel E. Denny.
1215
1216         maint.mk: make update-copyright exclusion list more configurable
1217         * top/maint.mk (update-copyright): Default to excluding COPYING,
1218         but allow an override, in case someone does want to update that file.
1219
1220         maint.mk: don't update copyright date in COPYING
1221         * top/maint.mk (update-copyright): Exclude COPYING.
1222
1223         maint.mk: add a copyright-updating rule
1224         * top/maint.mk (update-copyright): New rule.
1225         Derived from coreutils/Makefile.am.
1226
1227         update-copyright: rename some variables
1228         * build-aux/update-copyright: Rename a few variables for clarity.
1229         Tweak syntax.  List Joel E. Denny as coauthor.
1230
1231 2009-08-03  Joel E. Denny  <jdenny@clemson.edu>
1232
1233         update-copyright: fix bug for 2-digit last year and add tests
1234         * build-aux/update-copyright: Fix bug.
1235         Use UPDATE_COPYRIGHT_YEAR from environment as current year if
1236         specified.
1237         * modules/update-copyright-tests: New
1238         * tests/test-update-copyright.sh: New.
1239
1240 2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
1241
1242         update-copyright: handle leading tabs in line prefix
1243         * build-aux/update-copyright: Count leading tabs as 8 spaces
1244         when computing margin.  This helps with the formatting of
1245         ChangeLogs, for example.
1246         Fix documentation a little.
1247
1248 2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
1249
1250         update-copyright: support EOL=\r\n
1251         * build-aux/update-copyright: Implement that.
1252
1253 2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
1254
1255         update-copyright: automatically format copyright statements
1256         * build-aux/update-copyright: Implement that.
1257         Also, be a little more predictable and safer by always failing
1258         when the full copyright format is not perfectly recognized as an
1259         unbroken whole.  Discussed at
1260         <http://lists.gnu.org/archive/html/bug-gnulib/2009-07/msg00131.html>.
1261         Rewrite documentation.
1262
1263 2009-08-03  Bruno Haible  <bruno@clisp.org>
1264
1265         * m4/iconv.m4 (AM_ICONV): Fix displayed message with autoconf-2.64.
1266
1267 2009-08-02  Bruno Haible  <bruno@clisp.org>
1268
1269         Tests for module 'uname'.
1270         * modules/uname-tests: New file.
1271         * tests/test-uname.c: New file.
1272
1273         New module 'uname'.
1274         * lib/uname.c: New file.
1275         * m4/uname.m4: New file.
1276         * modules/uname: New file.
1277         * doc/posix-functions/uname.texi: Mention the new module.
1278
1279 2009-08-02  Bruno Haible  <bruno@clisp.org>
1280
1281         Tests for module 'sys_utsname'.
1282         * modules/sys_utsname-tests: New file.
1283         * tests/test-sys_utsname.c: New file.
1284
1285         New module 'sys_utsname'.
1286         * lib/sys_utsname.in.h: New file, based on glibc's <sys/utsname.h>.
1287         * m4/sys_utsname_h.m4: New file.
1288         * modules/sys_utsname: New file.
1289         * doc/posix-headers/sys_utsname.texi: Mention the new module.
1290
1291 2009-08-02  Bruno Haible  <bruno@clisp.org>
1292
1293         Implicitly initialize the sockets library.
1294         * lib/gethostname.c: Include sockets.h.
1295         (rpl_gethostname): Invoke gl_sockets_startup.
1296         * lib/socket.c: Include sockets.h.
1297         (rpl_socket): Invoke gl_sockets_startup.
1298         * modules/gethostname (Depends-on): Add sockets.
1299         * modules/socket (Depends-on): Likewise.
1300         * tests/test-poll.c: Don't include sockets.h.
1301         (main): Don't invoke gl_sockets_startup.
1302         * tests/test-select.c: Don't include sockets.h.
1303         (main): Don't invoke gl_sockets_startup.
1304
1305 2009-08-02  Bruno Haible  <bruno@clisp.org>
1306
1307         Allow multiple calls to gl_sockets_startup.
1308         * lib/sockets.c (initialized_sockets_version): New variable.
1309         (gl_sockets_startup): Do nothing if already called for this or a higher
1310         version.
1311         (gl_sockets_cleanup): Reset initialized_sockets_version.
1312
1313 2009-08-03  Simon Josefsson  <simon@josefsson.org>
1314
1315         * tests/test-argp-version-etc-1.sh: Use EXEEXT.  Don't fail on
1316         different project/version.
1317
1318 2009-08-02  Paolo Bonzini  <bonzini@gnu.org>
1319             Bruno Haible  <bruno@clisp.org>
1320
1321         Tests for module 'pipe-filter-gi'.
1322         * modules/pipe-filter-gi-tests: New file.
1323         * tests/test-pipe-filter-gi1.sh: New file.
1324         * tests/test-pipe-filter-gi1.c: New file.
1325         * tests/test-pipe-filter-gi2.sh: New file.
1326         * tests/test-pipe-filter-gi2-main.c: New file.
1327         * tests/test-pipe-filter-gi2-child.c: New file.
1328
1329         New module 'pipe-filter-gi'.
1330         * lib/pipe-filter-gi.c: New file.
1331         * modules/pipe-filter-gi: New file.
1332
1333 2009-08-02  Bruno Haible  <bruno@clisp.org>
1334             Paolo Bonzini  <bonzini@gnu.org>
1335
1336         Tests for module 'pipe-filter-ii'.
1337         * modules/pipe-filter-ii-tests: New file.
1338         * tests/test-pipe-filter-ii1.sh: New file.
1339         * tests/test-pipe-filter-ii1.c: New file.
1340         * tests/test-pipe-filter-ii2.sh: New file.
1341         * tests/test-pipe-filter-ii2-main.c: New file.
1342         * tests/test-pipe-filter-ii2-child.c: New file.
1343
1344         New module 'pipe-filter-ii'.
1345         * lib/pipe-filter.h: New file.
1346         * lib/pipe-filter-ii.c: New file.
1347         * lib/pipe-filter-aux.h: New file.
1348         * modules/pipe-filter-ii: New file.
1349
1350 2009-08-02  Simon Josefsson  <simon@josefsson.org>
1351
1352         * lib/gc-libgcrypt.c: Change copyright to FSF.
1353         * lib/gc-gnulib.c: Likewise.
1354
1355 2009-08-02  Martin Lambers  <marlam@marlam.de>  (tiny change)
1356
1357         * lib/gethostname.c: Include limits.h.
1358
1359 2009-08-02  Simon Josefsson  <simon@josefsson.org>
1360             Bruno Haible  <bruno@clisp.org>
1361
1362         Ensure HOST_NAME_MAX as part of the gethostname module.
1363         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): On native Windows platforms,
1364         define also HOST_NAME_MAX.
1365         * tests/test-gethostname.c: Include <limits.h>.
1366         (main): Check also HOST_NAME_MAX.
1367         * doc/posix-headers/limits.texi: Document the mingw problem.
1368
1369 2009-08-02  Bruno Haible  <bruno@clisp.org>
1370
1371         * lib/gethostname.c (gethostname): Fix handling of large len argument.
1372         Add comments.
1373
1374 2009-03-31  Simon Josefsson  <simon@josefsson.org>
1375
1376         * lib/gethostname.c: Add Windows wrapper.
1377         * m4/gethostname.m4: Look for gethostname in -lws2_32.
1378         * modules/gethostname: Depend on sys_socket & errno, for also
1379         added lib/w32sock.h.  Add GETHOSTNAME_LIB link directive.
1380         * modules/gethostname-tests: Link to @GETHOSTNAME_LIB@.
1381
1382 2009-07-31  Jim Meyering  <meyering@redhat.com>
1383
1384         getloadavg: fix symbol name in comment
1385         * lib/getloadavg.c: Correct a typo I introduced when adding
1386         comments to Matt's change: s/NLIST_POINTER/N_NAME_POINTER/.
1387         Matt Kraai spotted the problem.
1388
1389 2009-07-29  Matt Kraai  <mkraai@beckman.com>
1390
1391         getloadavg: check whether n_name is a pointer, for QNX 6.4.1
1392         * lib/getloadavg.c (getloadavg): Use the strcpy-into-nlist.n_name
1393         code also if ! defined N_NAME_POINTER.
1394         * m4/getloadavg.m4 (gl_GETLOADAVG): Add a link-test for N_NAME_POINTER.
1395         This is required on QNX 6.4.1, where /usr/include/nlist.h exists,
1396         but the n_name member is a 12-byte array.
1397
1398 2009-07-29  Joel E. Denny  <jdenny@clemson.edu>
1399
1400         update-copyright: generalize comment handling
1401         * build-aux/update-copyright: Handle copyright statements
1402         within more comment styles.
1403         Document usage.
1404         Report any file with an external copyright holder or parse failure.
1405
1406 2009-07-29  Jim Meyering  <meyering@redhat.com>
1407
1408         mktime: correct setting of REPLACE_MKTIME
1409         * m4/mktime.m4 (gl_FUNC_MKTIME): Set REPLACE_MKTIME=0, when required.
1410
1411         update-copyright: new module
1412         * modules/update-copyright: New file.
1413         * build-aux/update-copyright: New file.
1414         * MODULES.html.sh (maint+release support): Add update-copyright.
1415
1416 2009-07-27  Bruno Haible  <bruno@clisp.org>
1417
1418         Fix compilation error when <ctime> is used and mktime is replaced.
1419         * lib/time.in.h (mktime): New declaration.
1420         * m4/mktime.m4 (gl_FUNC_MKTIME): Require gl_HEADER_TIME_H_DEFAULTS. Set
1421         REPLACE_MKTIME instead of defining mktime in config.h.
1422         * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize REPLACE_MKTIME.
1423         * modules/time (Makefile.am): Substitute REPLACE_MKTIME.
1424         Reported by Ross McFarland <rwmcfa1@neces.com>.
1425
1426 2009-07-27  Bruno Haible  <bruno@clisp.org>
1427
1428         * lib/math.in.h (cosl, logl, sinl): Undefine before declaring it.
1429         Reported by Matt Kraai <mkraai@beckman.com>.
1430
1431 2009-07-25  Jim Meyering  <meyering@redhat.com>
1432
1433         maint.mk: avoid warnings about missing files
1434         * top/maint.mk (PREV_VERSION): Suppress stderr, to hide a
1435         diagnostic when .prev-version does not exist.
1436         (_cfg_mk): Define, so it can be empty when cfg.mk does not exist.
1437         (syntax-check-rules): Use $(_cfg_mk) to avoid a diagnostic about
1438         nonexistent cfg.mk.
1439         Suggestions from Simon Josefsson.
1440
1441 2009-07-25  Bruno Haible  <bruno@clisp.org>
1442
1443         * lib/math.in.h (cosl, logl, sinl): Don't declare if they are already
1444         defined as macros. Needed on QNX 6.4.1.
1445         Reported by Matt Kraai <mkraai@beckman.com>.
1446
1447 2009-07-23  Jim Meyering  <meyering@redhat.com>
1448
1449         maint.mk: invoke "make dist" with a working value of XZ_OPT
1450         * top/maint.mk (vc-dist): Use no "-" in the value of XZ_OPT.
1451
1452 2009-07-22  Matt Kraai  <mkraai@beckman.com>  (tiny change)
1453
1454         Make fseeko.c compile on QNX.
1455         * lib/fseeko.c (rpl_fseeko): Use the numerical value of _MWRITE.
1456
1457 2009-07-22  Peter Simons  <simons@cryp.to>
1458
1459         C++: wrap md2,md5,sha1,etc. function declarations in extern "C" scope
1460         * lib/md2.h [__cplusplus]: Wrap declarations in extern "C" scope.
1461         * lib/md4.h: Likewise.
1462         * lib/md5.h: Likewise.
1463         * lib/sha1.h: Likewise.
1464         * lib/sha256.h: Likewise.
1465         * lib/sha512.h: Likewise.
1466
1467         tests-sha1: don't assign literal string to 'char *' variable
1468         * tests/test-sha1.c (main): Declare locals with "const" to match
1469         attributes of the right hand side.
1470
1471 2009-07-21  Eric Blake  <ebb9@byu.net>
1472
1473         dup2: fix more mingw problems
1474         * lib/dup2.c (rpl_dup2) [_WIN32]: Avoid hanging when duplicating
1475         fd to itself.
1476         * doc/posix-functions/dup2.texi (dup2): Document the bug.
1477         * lib/unistd.in.h (dup2) [REPLACE_FCHDIR]: Avoid name collision.
1478         * lib/fchdir.c (dup2): Manage preprocessor macros correctly.
1479         (rpl_dup2_fchdir): Rename from rpl_dup2, and let dup2 module take
1480         care of mingw bugs.
1481
1482 2009-07-21  Jim Meyering  <meyering@redhat.com>
1483
1484         vc-list-files: avoid failure when /bin/sh is dash
1485         * build-aux/vc-list-files: Avoid a shell portability problem with dash.
1486         On some Debian based systems, /bin/sh is a symlink to dash, and running
1487         this command would omit the "/" following each 'tests' prefix:
1488           dash -x build-aux/vc-list-files -C . tests
1489         That is because bash and dash work differently:
1490           $ for i in bash dash; do $i -c 'a=odd; a=ok b=$a; echo '$i' $b'; done
1491           bash ok
1492           dash odd
1493
1494 2009-07-21  Eric Blake  <ebb9@byu.net>
1495
1496         dup2-tests: test previous patch
1497         * modules/dup2-tests: New file.
1498         * tests/test-dup2.c: Likewise.
1499         * tests/test-open.c (main): Avoid unspecified behavior.
1500         * tests/test-pipe.c (child_main): Use dup2 semantics to simplify
1501         test.
1502
1503         dup2: work around mingw and cygwin 1.5 bug
1504         * m4/dup2.m4 (gl_FUNC_DUP2): Detect mingw bug.
1505         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
1506         * modules/unistd (Makefile.am): Substitute it.
1507         * lib/unistd.in.h (dup2): Declare the replacement.
1508         * lib/dup2.c (dup2) [REPLACE_DUP2]: Implement it.
1509         * doc/posix-functions/dup2.texi (dup2): Document the bugs.
1510         * lib/fchdir.c (rpl_dup2): Don't collide with mingw replacement.
1511         * modules/execute (Depends-on): Add dup2.
1512         * modules/fseterr (Depends-on): Likewise.
1513         * modules/pipe (Depends-on): Likewise.
1514         * modules/posix_spawn-internal (Depends-on): Likewise.
1515
1516 2009-07-21  Bruno Haible  <bruno@clisp.org>
1517
1518         * modules/.gitattributes: New file.
1519
1520 2009-07-20  Bruno Haible  <bruno@clisp.org>
1521
1522         * tests/test-pipe.c (BACKUP_STDERR_FILENO): New macro.
1523         (main): Use it.
1524
1525 2009-07-20  Eric Blake  <ebb9@byu.net>
1526
1527         test-pipe: make a bit more robust.
1528         * tests/test-pipe.c (myerr): Allow error messages regardless of
1529         what we do to stderr.
1530         (test_pipe): Rearrange to avoid deadlock.
1531         (child_main): Try a larger read, to ensure we avoided deadlock.
1532         * lib/pipe.c (create_pipe) [_WIN32]: Fix comment.
1533         * lib/pipe.h (create_pipe_bidi): Document potential for deadlock
1534         if misused.
1535
1536 2009-07-19  Jim Meyering  <meyering@redhat.com>
1537
1538         fts: avoid false-positive cycle-detection
1539         * lib/fts.c (fts_read): Reinitialize cycle-detection data structures
1540         for each new command line argument.
1541
1542 2009-07-19  Bruno Haible  <bruno@clisp.org>
1543
1544         Fix build error on mingw with the modules sys_select and unistd.
1545         * modules/acl-tests (Depends-on): Add close.
1546         * modules/binary-io-tests (Depends-on): Likewise.
1547         * modules/closein-tests (Depends-on): Likewise.
1548         * modules/flock-tests (Depends-on): Likewise.
1549         * modules/fsync-tests (Depends-on): Likewise.
1550         * modules/lseek-tests (Depends-on): Likewise.
1551         * modules/pipe-tests (Depends-on): Likewise.
1552         * modules/posix_spawn-tests (Depends-on): Likewise.
1553         * modules/posix_spawnp-tests (Depends-on): Likewise.
1554         * modules/stat-time-tests (Depends-on): Likewise.
1555         * modules/yesno-tests (Depends-on): Likewise.
1556
1557 2009-07-19  Bruno Haible  <bruno@clisp.org>
1558
1559         Unify conditionals.
1560         * lib/pipe.h: Detect native Win32 by looking at _WIN32 and __WIN32__
1561         macros, not at the compiler macros.
1562         * lib/pipe.c: Likewise.
1563         * lib/execute.c: Likewise.
1564         * lib/spawni.c: Likewise.
1565
1566 2009-07-19  Bruno Haible  <bruno@clisp.org>
1567
1568         Fix handling of closed stdin/stdout/stderr on mingw.
1569         * lib/w32spawn.h: Include unistd.h.
1570         (dup_noinherit): Return -1 if the old handle is invalid. Allocate new
1571         file descriptor with O_NOINHERIT flag.
1572         (fd_safer_noinherit): New function, based on fd-safer.c.
1573         (dup_safer_noinherit): New function, based on dup-safer.c.
1574         (undup_safer_noinherit): New function.
1575         * lib/execute.c (execute) [WIN32]: Use dup_safer_noinherit instead of
1576         dup_noinherit. Use undup_safer_noinherit instead of dup2 and close.
1577         * lib/pipe.c (create_pipe) [WIN32]: Likewise. Use fd_safer_noinherit
1578         instead of fd_safer.
1579         * tests/test-pipe.c: Include <windows.h>.
1580         (child_main) [WIN32]: Test the handle of STDERR_FILENO, not its close() result.
1581
1582         * tests/test-pipe.c (child_main, parent_main): New functions, extracted
1583         from main.
1584         (test_pipe): Pass an extra argument for disambiguation.
1585         (main): Invoke parent_main or child_main.
1586
1587         * tests/test-pipe.c (test_pipe): Pass slave_process = true argument
1588         consistently.
1589
1590 2009-07-18  Eric Blake  <ebb9@byu.net>
1591
1592         test-pipe: fix mingw build
1593         * tests/test-pipe.c (main): Avoid fcntl on mingw.
1594
1595 2009-07-18  Bruno Haible  <bruno@clisp.org>
1596
1597         * modules/pipe-tests (Makefile.am): Fix typo.
1598
1599 2009-07-18  Eric Blake  <ebb9@byu.net>
1600
1601         error: fix mingw build
1602         * lib/error.c (error, error_at_line): Avoid fcntl on mingw.
1603         Reported by Bruno Haible.
1604
1605         error: avoid undefined use of stdout
1606         * lib/error.c (error, error_at_line): Check that fd 1 is open
1607         before flushing stdout.  Avoids a crash on cygwin when libsigsegv
1608         is handling faults and the close_stdout module wants to report the
1609         detection of closed stdout as an error.
1610
1611 2009-07-17  Eric Blake  <ebb9@byu.net>
1612
1613         pipe: be robust in face of closed fds
1614         * lib/pipe.c (create_pipe): Closed standard descriptors in parent
1615         should cause child to misbehave.
1616         * modules/pipe-tests: New module.
1617         * tests/test-pipe.c: New file.
1618         * tests/test-pipe.sh: New file.
1619         Reported by Akim Demaille.
1620
1621 2009-07-14  Bruno Haible  <bruno@clisp.org>
1622
1623         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Guess it works on glibc systems.
1624         Reported by anonymous kc.
1625
1626 2009-07-07  Jim Meyering  <meyering@redhat.com>
1627
1628         maint.mk: don't look for translatable strings in *.m4 or *.mk
1629         * top/maint.mk (sc_po_check): Skip *.m4 and *.mk files,
1630         when searching for translatable strings.
1631
1632 2009-07-05  Jim Meyering  <meyering@redhat.com>
1633
1634         remove superfluous parentheses in STREQ definition
1635         * tests/test-argv-iter.c (STREQ): Remove redundant parentheses.
1636         * lib/getugroups.c (STREQ): Likewise.
1637         * lib/fnmatch.c (STREQ): Likewise.
1638         Spotted by Bruno Haible.
1639
1640 2009-07-04  Jim Meyering  <meyering@redhat.com>
1641
1642         argv-iter: new module
1643         * MODULES.html.sh: Add argv-iter.
1644         * lib/argv-iter.c, lib/argv-iter.h: New files.
1645         * modules/argv-iter: New file.
1646         * modules/argv-iter-tests: New file.
1647         * tests/test-argv-iter.c: Test it.
1648
1649 2009-07-04  Bruno Haible  <bruno@clisp.org>
1650
1651         Fix assertion.
1652         * lib/git-merge-changelog.c (compute_mapping): In the case where file1
1653         contains more exact copies of a given entry than file2, leave the extra
1654         copies unpaired rather than aborting.
1655         Reported by Eric Blake.
1656
1657 2009-07-02  Bruno Haible  <bruno@clisp.org>
1658
1659         Speedup git-merge-changelog for git cherry-pick.
1660         * lib/git-merge-changelog.c (struct entries_mapping): New type.
1661         (entries_mapping_get): New function, extracted from compute_mapping.
1662         (entries_mapping_reverse_get): New function.
1663         (compute_mapping): Add a 'full' argument. Return the result in a
1664         'struct entries_mapping'.
1665         (main): Update. Access the mappings through entries_mapping_get.
1666         Reported by Eric Blake.
1667
1668 2009-07-02  Bruno Haible  <bruno@clisp.org>
1669
1670         * lib/git-merge-changelog.c (compute_mapping): Fix determination of
1671         best_i.
1672
1673 2009-07-02  Bruno Haible  <bruno@clisp.org>
1674
1675         Speed up approximate search for matching ChangeLog entries.
1676         * lib/git-merge-changelog.c (entry_fstrcmp): Add a lower_bound
1677         argument. Call fstrcmp_bounded instead of fstrcmp.
1678         (compute_mapping, try_split_merged_entry, main): Update callers.
1679
1680 2009-07-02  Bruno Haible  <bruno@clisp.org>
1681
1682         * lib/git-merge-changelog.c (main): Add comment about git cherry-pick.
1683
1684 2009-06-30  Bruno Haible  <bruno@clisp.org>
1685
1686         Reduce the number of uc_is_cased calls.
1687         * lib/unicase.h (casing_suffix_context_t): Add
1688         'first_char_except_ignorable' field.
1689         * lib/unicase/context.h (SCC_FINAL_SIGMA_MASK): Remove macro.
1690         (SCC_MORE_ABOVE_MASK, SCC_BEFORE_DOT_MASK): Update.
1691         * lib/unicase/empty-suffix-context.c (unicase_empty_suffix_context):
1692         Update initializer.
1693         * lib/unicase/u-casemap.h (FUNC): Don't invoke uc_is_cased on
1694         case-ignorable characters.
1695         * lib/unicase/u-ct-totitle.h (FUNC): Likewise.
1696         * lib/unicase/u-suffix-context.h (FUNC2): Don't call uc_is_cased here.
1697         * modules/unicase/u8-suffix-context (Depends-on): Remove unicase/cased.
1698         * modules/unicase/u16-suffix-context (Depends-on): Likewise.
1699         * modules/unicase/u32-suffix-context (Depends-on): Likewise.
1700
1701 2009-06-30  Bruno Haible  <bruno@clisp.org>
1702
1703         Tests for module 'unicase/ignorable'.
1704         * modules/unicase/ignorable-tests: New file.
1705         * tests/unicase/test-ignorable.c: New file, generated by
1706         gen-uni-tables.
1707
1708         Tests for module 'unicase/cased'.
1709         * modules/unicase/cased-tests: New file.
1710         * tests/unicase/test-cased.c: New file, generated by gen-uni-tables.
1711         * tests/unicase/test-predicate-part1.h: New file, derived from
1712         tests/unictype/test-predicate-part1.h.
1713         * tests/unicase/test-predicate-part2.h: New file, same as
1714         tests/unictype/test-predicate-part2.h.
1715
1716         Fix evaluation of "Before C" condition of FINAL_SIGMA.
1717         * lib/gen-uni-tables.c (is_cased, is_case_ignorable): New functions.
1718         (output_casing_properties): New function.
1719         (main): Call it.
1720         * lib/unicase/cased.h: New file, generated by gen-uni-tables.
1721         * lib/unicase/cased.c: Include unictype/bitmap.h.
1722         (uc_is_cased): Define through a bitmap lookup.
1723         * lib/unicase/ignorable.h: New file, generated by gen-uni-tables.
1724         * lib/unicase/ignorable.c: Include unictype/bitmap.h.
1725         (uc_is_case_ignorable): Define through a bitmap lookup.
1726         * modules/unicase/cased (Files): Add lib/unicase/cased.h,
1727         lib/unictype/bitmap.h.
1728         (Depends-on): Add inline. Clean up.
1729         * modules/unicase/ignorable (Files): Add lib/unicase/ignorable.h,
1730         lib/unictype/bitmap.h.
1731         (Depends-on): Add inline. Clean up.
1732         * tests/unicase/test-u8-tolower.c (main): Add more tests of FINAL_SIGMA
1733         recognition.
1734         * tests/unicase/test-u16-tolower.c (main): Likewise.
1735         * tests/unicase/test-u32-tolower.c (main): Likewise.
1736
1737 2009-06-30  Bruno Haible  <bruno@clisp.org>
1738
1739         * lib/unicase/u8-casemap.c: Don't include uniwbrk.h.
1740         * lib/unicase/u16-casemap.c: Likewise.
1741         * lib/unicase/u32-casemap.c: Likewise.
1742
1743 2009-06-29  Bruno Haible  <bruno@clisp.org>
1744
1745         Define u32_casefold as a wrapper around u32_ct_casefold.
1746         * lib/unicase/u32-casefold.c: Update.
1747         * modules/unicase/u32-casefold (Depends-on): Add
1748         unicase/u32-ct-casefold, unicase/empty-prefix-context,
1749         unicase/empty-suffix-context. Clean up.
1750
1751         Define u16_casefold as a wrapper around u16_ct_casefold.
1752         * lib/unicase/u16-casefold.c: Update.
1753         * modules/unicase/u16-casefold (Depends-on): Add
1754         unicase/u16-ct-casefold, unicase/empty-prefix-context,
1755         unicase/empty-suffix-context. Clean up.
1756
1757         Define u8_casefold as a wrapper around u8_ct_casefold.
1758         * lib/unicase/u-casefold.h (FUNC): Delegate to U_CT_CASEFOLD.
1759         * lib/unicase/u8-casefold.c: Update.
1760         * modules/unicase/u8-casefold (Depends-on): Add unicase/u8-ct-casefold,
1761         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
1762
1763         Define u32_totitle as a wrapper around u32_ct_totitle.
1764         * lib/unicase/u32-totitle.c: Update.
1765         * modules/unicase/u32-totitle (Depends-on): Add unicase/u32-ct-totitle,
1766         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
1767
1768         Define u16_totitle as a wrapper around u16_ct_totitle.
1769         * lib/unicase/u16-totitle.c: Update.
1770         * modules/unicase/u16-totitle (Depends-on): Add unicase/u16-ct-totitle,
1771         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
1772
1773         Define u8_totitle as a wrapper around u8_ct_totitle.
1774         * lib/unicase/u-totitle.h (is_cased, is_case_ignorable): Remove
1775         functions.
1776         (FUNC): Delegate to U_CT_TOTITLE.
1777         * lib/unicase/u8-totitle.c: Update.
1778         * modules/unicase/u8-totitle (Depends-on): Add unicase/u8-ct-totitle,
1779         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
1780
1781         * lib/unicase/u32-tolower.c (u32_tolower): Update u32_casemap
1782         invocation.
1783         * modules/unicase/u32-tolower (Depends-on): Add
1784         unicase/empty-prefix-context, unicase/empty-suffix-context.
1785
1786         * lib/unicase/u16-tolower.c (u16_tolower): Update u16_casemap
1787         invocation.
1788         * modules/unicase/u16-tolower (Depends-on): Add
1789         unicase/empty-prefix-context, unicase/empty-suffix-context.
1790
1791         * lib/unicase/u8-tolower.c (u8_tolower): Update u8_casemap invocation.
1792         * modules/unicase/u8-tolower (Depends-on): Add
1793         unicase/empty-prefix-context, unicase/empty-suffix-context.
1794
1795         * lib/unicase/u32-toupper.c (u32_toupper): Update u32_casemap
1796         invocation.
1797         * modules/unicase/u32-toupper (Depends-on): Add
1798         unicase/empty-prefix-context, unicase/empty-suffix-context.
1799
1800         * lib/unicase/u16-toupper.c (u16_toupper): Update u16_casemap
1801         invocation.
1802         * modules/unicase/u16-toupper (Depends-on): Add
1803         unicase/empty-prefix-context, unicase/empty-suffix-context.
1804
1805         * lib/unicase/u8-toupper.c (u8_toupper): Update u8_casemap invocation.
1806         * modules/unicase/u8-toupper (Depends-on): Add
1807         unicase/empty-prefix-context, unicase/empty-suffix-context.
1808
1809         New module 'unicase/u32-ct-casefold'.
1810         * lib/unicase/u32-ct-casefold.c: New file.
1811         * modules/unicase/u32-ct-casefold: New file.
1812
1813         New module 'unicase/u16-ct-casefold'.
1814         * lib/unicase/u16-ct-casefold.c: New file.
1815         * modules/unicase/u16-ct-casefold: New file.
1816
1817         New module 'unicase/u8-ct-casefold'.
1818         * lib/unicase/u8-ct-casefold.c: New file.
1819         * lib/unicase/u-ct-casefold.h: New file, derived from
1820         lib/unicase/u-casefold.h.
1821         * modules/unicase/u8-ct-casefold: New file.
1822
1823         New module 'unicase/u32-ct-totitle'.
1824         * lib/unicase/u32-ct-totitle.c: New file.
1825         * modules/unicase/u32-ct-totitle: New file.
1826
1827         New module 'unicase/u16-ct-totitle'.
1828         * lib/unicase/u16-ct-totitle.c: New file.
1829         * modules/unicase/u16-ct-totitle: New file.
1830
1831         New module 'unicase/u8-ct-totitle'.
1832         * lib/unicase/u8-ct-totitle.c: New file.
1833         * lib/unicase/u-ct-totitle.h: New file, derived from
1834         lib/unicase/u-totitle.h.
1835         * modules/unicase/u8-ct-totitle: New file.
1836
1837         New module 'unicase/u32-ct-tolower'.
1838         * lib/unicase/u32-ct-tolower.c: New file.
1839         * modules/unicase/u32-ct-tolower: New file.
1840
1841         New module 'unicase/u16-ct-tolower'.
1842         * lib/unicase/u16-ct-tolower.c: New file.
1843         * modules/unicase/u16-ct-tolower: New file.
1844
1845         New module 'unicase/u8-ct-tolower'.
1846         * lib/unicase/u8-ct-tolower.c: New file.
1847         * modules/unicase/u8-ct-tolower: New file.
1848
1849         New module 'unicase/u32-ct-toupper'.
1850         * lib/unicase/u32-ct-toupper.c: New file.
1851         * modules/unicase/u32-ct-toupper: New file.
1852
1853         New module 'unicase/u16-ct-toupper'.
1854         * lib/unicase/u16-ct-toupper.c: New file.
1855         * modules/unicase/u16-ct-toupper: New file.
1856
1857         New module 'unicase/u8-ct-toupper'.
1858         * lib/unicase/u8-ct-toupper.c: New file.
1859         * modules/unicase/u8-ct-toupper: New file.
1860
1861         Add context arguments to u*_casemap functions.
1862         * lib/unicase/unicasemap.h: Include unicase.h.
1863         (u8_casemap, u16_casemap, u32_casemap): Add prefix_context and
1864         suffix_context arguments.
1865         * lib/unicase/u-casemap.h (is_cased, is_case_ignorable): Remove
1866         functions.
1867         (FUNC): Add prefix_context and suffix_context arguments. Use
1868         uc_is_cased and uc_is_case_ignorable.
1869         * lib/unicase/u8-casemap.c: Include caseprop.h and context.h.
1870         * lib/unicase/u16-casemap.c: Likewise.
1871         * lib/unicase/u32-casemap.c: Likewise.
1872         * modules/unicase/u8-casemap (Files): Add lib/unicase/context.h.
1873         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
1874         * modules/unicase/u16-casemap (Files): Add lib/unicase/context.h.
1875         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
1876         * modules/unicase/u32-casemap (Files): Add lib/unicase/context.h.
1877         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
1878
1879         New module 'unicase/u32-suffix-context'.
1880         * lib/unicase/u32-suffix-context.c: New file.
1881         * modules/unicase/u32-suffix-context: New file.
1882
1883         New module 'unicase/u16-suffix-context'.
1884         * lib/unicase/u16-suffix-context.c: New file.
1885         * modules/unicase/u16-suffix-context: New file.
1886
1887         New module 'unicase/u8-suffix-context'.
1888         * lib/unicase/u8-suffix-context.c: New file.
1889         * lib/unicase/u-suffix-context.h: New file.
1890         * modules/unicase/u8-suffix-context: New file.
1891
1892         New module 'unicase/empty-suffix-context'.
1893         * lib/unicase/empty-suffix-context.c: New file.
1894         * modules/unicase/empty-suffix-context: New file.
1895
1896         New module 'unicase/u32-prefix-context'.
1897         * lib/unicase/u32-prefix-context.c: New file.
1898         * modules/unicase/u32-prefix-context: New file.
1899
1900         New module 'unicase/u16-prefix-context'.
1901         * lib/unicase/u16-prefix-context.c: New file.
1902         * modules/unicase/u16-prefix-context: New file.
1903
1904         New module 'unicase/u8-prefix-context'.
1905         * lib/unicase/u8-prefix-context.c: New file.
1906         * lib/unicase/u-prefix-context.h: New file.
1907         * lib/unicase/context.h: New file.
1908         * modules/unicase/u8-prefix-context: New file.
1909
1910         New module 'unicase/empty-prefix-context'.
1911         * lib/unicase/empty-prefix-context.c: New file.
1912         * modules/unicase/empty-prefix-context: New file.
1913
1914         New module 'unicase/ignorable'.
1915         * lib/unicase/ignorable.c: New file.
1916         * modules/unicase/ignorable: New file.
1917
1918         New module 'unicase/cased'.
1919         * lib/unicase/caseprop.h: New file.
1920         * lib/unicase/cased.c: New file.
1921         * modules/unicase/cased: New file.
1922
1923         New functions for case mapping of substrings.
1924         * lib/unicase.h (casing_prefix_context_t): New type.
1925         (unicase_empty_prefix_context): New variable.
1926         (u8_casing_prefix_context, u16_casing_prefix_context,
1927         u32_casing_prefix_context, u8_casing_prefixes_context,
1928         u16_casing_prefixes_context, u32_casing_prefixes_context): New
1929         declarations.
1930         (casing_suffix_context_t): New type.
1931         (unicase_empty_suffix_context): New variable.
1932         (u8_casing_suffix_context, u16_casing_suffix_context,
1933         u32_casing_suffix_context, u8_casing_suffixes_context,
1934         u16_casing_suffixes_context, u32_casing_suffixes_context,
1935         u8_ct_toupper, u16_ct_toupper, u32_ct_toupper, u8_ct_tolower,
1936         u16_ct_tolower, u32_ct_tolower, u8_ct_totitle, u16_ct_totitle,
1937         u32_ct_totitle, u8_ct_casefold, u16_ct_casefold, u32_ct_casefold): New
1938         declarations.
1939
1940 2009-06-28  Jim Meyering  <meyering@redhat.com>
1941
1942         boostrap: indent only with spaces
1943         * build-aux/bootstrap: Indent only with spaces, never TABs.
1944
1945         bootstrap: split long lines
1946         * build-aux/bootstrap: Keep line length < 80.
1947
1948         bootstrap: sync from coreutils
1949         * build-aux/bootstrap: Honor variables like $ACLOCAL, etc.,
1950         just as autoreconf does.  Verify a list of prerequisite
1951         package-name,version-number pairs if defined in bootstrap.conf.
1952         Refer to README-prereq, if prerequisites are not satisfied.
1953
1954 2009-06-27  Eric Blake  <ebb9@byu.net>
1955
1956         tests: add test for bogus NULL definition
1957         * tests/test-stdio.c: Ensure POSIX 2008 requirement on NULL.
1958         * tests/test-stdlib.c: Likewise.
1959         * tests/test-string.c: Likewise.
1960         * tests/test-locale.c: Likewise.
1961         * tests/test-unistd.c: Likewise.
1962         * modules/stdio-tests (Depends-on): Add verify.
1963         * modules/stdlib-tests (Depends-on): Likewise.
1964         * modules/string-tests (Depends-on): Likewise.
1965         * modules/locale-tests (Depends-on): Likewise.
1966         * modules/unistd-tests (Depends-on): Likewise.
1967
1968 2009-06-27  Paolo Bonzini  <bonzini@gnu.org>
1969
1970         * m4/selinux-context-h (gl_HEADERS_SELINUX_CONTEXT_H): Remove
1971         self-explaining comment.
1972         * m4/selinux-selinux-h: Update serial.
1973         (gl_LIBSELINUX): New macro, adding a warning for missing development
1974         packages to code extracted from...
1975         (gl_HEADERS_SELINUX_SELINUX_H): ... this one.  Require gl_LIBSELINUX.
1976         Add warning for missing development packages here, too.
1977
1978 2009-06-26  Paolo Bonzini  <bonzini@gnu.org>
1979
1980         * build-aux/bootstrap: Do not use GIT_CONFIG_LOCAL.
1981
1982 2009-06-25  Eric Blake  <ebb9@byu.net>
1983
1984         version-etc: fix regression
1985         * lib/version-etc.h (ATTRIBUTE_SENTINEL): Define for new enough
1986         gcc.
1987         (version_etc): Use it, to catch bugs with trailing NULL.
1988         * lib/version-etc.c (version_etc_arn): Delete unused argument.
1989         (version_etc_va): Fix logic bug.
1990         * modules/version-etc-tests: Add test.
1991         * tests/test-version-etc.c: New file.
1992         * tests/test-version-etc.sh: Likewise.
1993
1994 2009-06-25  Sam Steingold  <sds@gnu.org>
1995
1996         * mbrtowc.m4 (gl_MBRTOWC_SANITYCHECK): Include <stdlib.h>, for the
1997         mbtowc declaration.
1998
1999 2009-06-25  Eric Blake  <ebb9@byu.net>
2000
2001         fpurge: migrate into <stdio.h>
2002         * lib/fpurge.h: Delete...
2003         * lib/stdio.in.h (fpurge): ...and declare here, instead.
2004         * lib/fpurge.c (fpurge): Change declaring header.
2005         * modules/fpurge (Files): Drop deleted file.
2006         (Depends-on): Add stdio.
2007         (configure.ac): Set witness.
2008         * modules/stdio (Makefile.am): Support fpurge macros.
2009         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
2010         * m4/fpurge.m4 (gl_FUNC_FPURGE): Set appropriate variables.
2011         * lib/fflush.c: Update client.
2012         * tests/test-fpurge.c: Likewise.
2013         * NEWS: Mention the change.
2014
2015 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
2016
2017        * lib/argp-version-etc.c (program_authors): Add const
2018        qualifier.
2019        * lib/version-etc.c: Fix typos in the comments.
2020        * modules/argp-version-etc: Depends on version-etc.
2021
2022 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
2023
2024         argp-version-etc: new module.
2025
2026         * lib/argp-version-etc.c: New file.
2027         * lib/argp-version-etc.h: New file.
2028         * modules/argp-version-etc: New file.
2029         * modules/argp-version-etc-tests: New file.
2030         * tests/test-argp-version-etc.c: New test.
2031         * tests/test-argp-version-etc-1.sh: New test.
2032
2033 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
2034
2035         Provide additional interfaces and documentation for version-etc
2036         module.
2037
2038         * lib/version-etc.c (version_etc_arn, version_etc_ar): New
2039         interfaces.
2040         * lib/version-etc.h (version_etc_arn, version_etc_ar): New
2041         prototypes.
2042
2043 2009-06-24  Bruno Haible  <bruno@clisp.org>
2044
2045         * m4/lib-link.m4 (AC_LIB_HAVE_LINKFLAGS): Fix description of
2046         HAVE_LIB${NAME} macro.
2047         Reported by Sam Steingold <sds@gnu.org>.
2048
2049 2009-06-23  Simon Josefsson  <simon@josefsson.org>
2050
2051         * modules/hash-tests (test_hash_LDADD): Link to libintl when
2052         needed.
2053
2054 2009-06-21  Bruno Haible  <bruno@clisp.org>
2055
2056         Make two consecutive identical invocations of AC_LIB_HAVE_LINKFLAGS
2057         work.
2058         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Reset HAVE_LIB${NAME}
2059         together with LIB${NAME}, LTLIB${NAME}.
2060         Reported by Sam Steingold <sds@gnu.org>.
2061
2062 2009-06-20  Jim Meyering  <meyering@redhat.com>
2063
2064         tests: make sc_require_test_exit_idiom more generic
2065         * top/maint.mk (Exit_witness_file): New overridable variable.
2066         (sc_require_test_exit_idiom): Don't hard-code tests/test-lib.sh.
2067         Relax test for /^Exit \$fail$$/ to just /^Exit ./.
2068
2069 2009-06-19  Jim Meyering  <meyering@redhat.com>
2070
2071         hash: reverse order of src/dst parameters in an internal interface
2072         * lib/hash.c (transfer_entries): Reverse order of parameters to
2073         put DST before SRC.  Adjust callers.
2074
2075         tests: test-hash: avoid wholesale duplication
2076         * tests/test-hash.c (main): Don't copy/paste a 60-line loop.
2077         Instead, use a loop and add a single conditional.
2078
2079         tests: test-hash: allow seed selection via a command line argument
2080         * tests/test-hash.c (get_seed): New function.
2081         (main): Use it.
2082
2083 2009-06-19  Eric Blake  <ebb9@byu.net>
2084
2085         hash: avoid memory leak on allocation failure
2086         * lib/hash.c: (hash_rehash): Avoid memory leak on allocation
2087         failure.  Factor repeated algorithm...
2088         (transfer_entries): ...into new helper routine.
2089         (hash_delete): React to hash_rehash return value.
2090
2091         hash: reduce memory pressure in hash_rehash no-op case
2092         * lib/hash.c (next_prime): Avoid overflow.
2093         (hash_initialize): Factor bucket size computation...
2094         (compute_bucket_size): ...into new helper function.
2095         (hash_rehash): Use new function and open coding to reduce memory
2096         pressure, and avoid a memory leak in USE_OBSTACK code.
2097         Reported by Jim Meyering.
2098
2099 2009-06-18  Eric Blake  <ebb9@byu.net>
2100
2101         hash: make rotation more obvious
2102         * modules/hash (Depends-on): Add bitrotate and stdint.
2103         * lib/bitrotate.h (rotl_sz, rotr_sz): New functions.
2104         * lib/hash.c (headers): Drop limits.h.  Add stdint.h.
2105         (SIZE_MAX): Rely on headers for definition.
2106         (hash_string) [USE_DIFF_HASH]: Use rotl_sz.
2107         (raw_hasher): Use rotr_sz.
2108         Suggested by Jim Meyering.
2109
2110         hash: fix memory leak in last patch
2111         * lib/hash.c (hash_rehash): Avoid memory leak.
2112
2113         hash: avoid no-op rehashing
2114         * lib/hash.c (hash_rehash): Recognize useless rehash attempts.
2115
2116         hash: provide default callback functions
2117         * lib/hash.c (raw_hasher, raw_comparator): New functions.
2118         (hash_initialize): Use them as defaults.
2119         * tests/test-hash.c (main): Test this.
2120
2121         hash: minor optimization
2122         * lib/hash.c (hash_lookup, hash_find_entry): Avoid function call
2123         when possible.
2124         (hash_initialize): Document this promise.
2125         (hash_do_for_each, hash_clear, hash_free): Use C89 syntax.
2126         * tests/test-hash.c (hash_compare_strings): Test this.
2127
2128 2009-06-18  Bruno Haible  <bruno@clisp.org>
2129
2130         * m4/strstr.m4 (gl_FUNC_STRSTR): Skip linear time test if strstr is
2131         going to be replaced anyway.
2132
2133 2009-06-18  Bruno Haible  <bruno@clisp.org>
2134
2135         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Invoke AC_LIBOBJ only
2136         in one place.
2137         (gl_FUNC_STRCASESTR): Skip linear time test if strcasestr is going to
2138         be replaced anyway.
2139
2140 2009-06-18  Eric Blake  <ebb9@byu.net>
2141
2142         hash: check for resize before insertion
2143         * lib/hash.c (hash_insert): Check whether bucket usage exceeds
2144         threshold before insertion, so that a pathological hash_rehash
2145         that fills every bucket can still trigger another rehash.
2146
2147 2009-06-18  Jim Meyering  <meyering@redhat.com>
2148
2149         hash-tests: add a loop around the small tests
2150         * tests/test-hash.c (main): Repeat small tests with selected
2151         small initial table sizes.
2152
2153 2009-06-17  Eric Blake  <ebb9@byu.net>
2154
2155         hash: minor cleanups
2156         * lib/hash.h (hash_entry): Make opaque, by moving...
2157         * lib/hash.c (hash_entry): ...here.
2158         (hash_insert): Clarify restrictions on what can be inserted.
2159         (hash_get_next): Clarify when it is safe to remove an element
2160         during traversal.
2161         (check_tuning): Skip verification when tuning is known safe.
2162         (hash_initialize): Clarify restrictions on tuning.
2163
2164 2009-06-17  Jim Meyering  <jim@meyering.net>
2165         and Eric Blake  <ebb9@byu.net>
2166
2167         hash-tests: new module
2168         * modules/hash-tests: New file.
2169         * tests/test-hash.c: New file.
2170
2171 2009-06-17  Eric Blake  <ebb9@byu.net>
2172
2173         strstr-simple: document new module
2174         * MODULES.html.sh: Document new module.
2175
2176         strstr, strcasestr: replace on platforms with broken memchr
2177         * modules/strstr: Split into...
2178         * modules/strstr-simple: ...new module that does not care about
2179         performance, but does care about glibc bug.
2180         * m4/strstr.m4 (gl_FUNC_STRSTR): Split...
2181         (gl_FUNC_STRSTR_SIMPLE): ...into new macro, which replaces strstr
2182         if platform memchr is broken, per Debian bug 521737.
2183         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): React to broken
2184         memchr.
2185         * m4/memchr.m4 (gl_FUNC_MEMCHR): Only expand once.
2186         * doc/posix-functions/strstr.texi (strstr): Document the fix.
2187         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
2188         * modules/mountlist (Depends-on): Add strstr-simple.
2189         * modules/gen-uni-tables (Depends-on): Likewise.
2190         * modules/argz (Depends-on): Add strstr.
2191
2192 2009-06-17  Bruno Haible  <bruno@clisp.org>
2193
2194         * modules/posix_spawn-internal (Depends-on): Add errno.
2195
2196 2009-06-17  Bruno Haible  <bruno@clisp.org>
2197
2198         Define missing ESTALE on Interix 3.5.
2199         * lib/errno.in.h (ESTALE): Assign a value if missing.
2200         * lib/strerror.c (rpl_strerror): Handle missing ESTALE and ECANCELED.
2201         * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Also test whether ESTALE is
2202         missing.
2203         * doc/posix-headers/errno.texi: Mention the Interix bug.
2204         Reported by Jay Krell <jay.krell@cornell.edu> via Eric Blake.
2205
2206 2009-06-15  Eric Blake  <ebb9@byu.net>
2207
2208         memchr, memchr2: add valgrind exception
2209         * lib/memchr.valgrind: New file.
2210         * lib/memchr2.valgrind: New file.
2211         * modules/memchr (Files): Distribute valgrind file.
2212         * modules/memchr2 (Files): Likewise.
2213
2214         docs: memchr is no longer obsolete
2215         * MODULES.html.sh: Move memchr from obsolete to string.h section.
2216         * lib/string.in.h (memchr): Simplify logic.
2217
2218 2009-06-14  Jim Meyering  <meyering@redhat.com>
2219
2220         link-follow: fix the "checking..." message to not mention trailing slash
2221         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): This test has
2222         never considered trailing slashes.
2223
2224 2009-06-14  Bruno Haible  <bruno@clisp.org>
2225
2226         * m4/memchr.m4: Mention also the bug on IA-64.
2227         * doc/posix-functions/memchr.texi: Likewise.
2228
2229 2009-06-12  Eric Blake  <ebb9@byu.net>
2230
2231         memchr: detect broken x86_64 and alpha implementations
2232         * modules/memchr-tests (Depends-on): Move mmap detection...
2233         * modules/memchr (Depends-on): ...here.
2234         (configure.ac): Set indicator.
2235         * lib/string.in.h (memchr): Declare replacement.
2236         * modules/string (Makefile.am): Trigger replacement.
2237         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
2238         * m4/memchr.m4 (gl_FUNC_MEMCHR): Use mmap to detect platform
2239         bugs.
2240         * doc/posix-functions/memchr.texi (memchr): Document the bug.
2241         * modules/getpagesize (License): Relax license.
2242
2243 2009-06-11  Bruno Haible  <bruno@clisp.org>
2244
2245         * lib/idpriv.h: Add more references.
2246
2247 2009-06-08  Bruno Haible  <bruno@clisp.org>
2248
2249         Tests for module 'idpriv-droptemp'.
2250         * modules/idpriv-droptemp-tests: New file.
2251         * tests/test-idpriv-droptemp.sh: New file.
2252         * tests/test-idpriv-droptemp.su.sh: New file.
2253         * tests/test-idpriv-droptemp.c: New file.
2254
2255         New module 'idpriv-droptemp'.
2256         * lib/idpriv-droptemp.c: New file.
2257         * modules/idpriv-droptemp: New file.
2258
2259 2009-06-08  Bruno Haible  <bruno@clisp.org>
2260
2261         Tests for module 'idpriv-drop'.
2262         * modules/idpriv-drop-tests: New file.
2263         * tests/test-idpriv-drop.sh: New file.
2264         * tests/test-idpriv-drop.su.sh: New file.
2265         * tests/test-idpriv-drop.c: New file.
2266
2267         New module 'idpriv-drop'.
2268         * lib/idpriv.h: New file.
2269         * lib-idpriv-drop.c: New file.
2270         * m4/idpriv.m4: New file.
2271         * modules/idpriv-drop: New file.
2272
2273 2009-06-08  Bruno Haible  <bruno@clisp.org>
2274
2275         * modules/unistdio/u8-vasnprintf (Depends-on): Add memchr.
2276         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
2277         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
2278         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
2279         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
2280         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
2281         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
2282
2283 2009-06-08  Eric Blake  <ebb9@byu.net>
2284
2285         test-strstr: use memory fence, when possible
2286         * tests/test-strstr.c (main): Use memory fence, in order to be
2287         more likely to trigger Debian bug 521737.
2288         * modules/strstr-tests (Files): Pull in additional files.
2289
2290         memchr: no longer obsolete, for wider field testing
2291         * modules/memchr (Status, Notice): Delete, this module is no
2292         longer obsolete.
2293         * modules/vasnprintf (Depends-on): Add memchr.
2294
2295 2009-06-07  Jim Meyering  <meyering@redhat.com>
2296
2297         hash: declare some functions with the warn_unused_result attribute
2298         * lib/hash.h (__attribute__, ATTRIBUTE_WUR): Define.
2299
2300 2009-06-07  Bruno Haible  <bruno@clisp.org>
2301
2302         * tests/test-alignof.c: Don't test int64_t if it does not exist.
2303         Reported by Eric Blake.
2304
2305 2009-06-06  Eric Blake  <ebb9@byu.net>
2306
2307         test-alignof: fix typo with long double
2308         * tests/test-alignof.c (CHECK): Use longdouble typedef to avoid
2309         compiler error.
2310
2311 2009-06-06  Neil Jerram  <neil@ossau.uklinux.net>  (tiny change)
2312
2313         Escape non-texinfo { and }s.
2314         * doc/ld-output-def.texi (Visual Studio Compatibility): Fix
2315         markup error.
2316
2317 2009-06-04  Jim Meyering  <meyering@redhat.com>
2318
2319         gitlog-to-changelog: don't infloop on an empty commit log
2320         * build-aux/gitlog-to-changelog: Warn about an empty log message.
2321         Reported by Boris Petersen <transacid@centerim.org>.
2322
2323 2009-06-03  Mike Frysinger  <vapier@gentoo.org>
2324
2325         version-etc: extend for packagers
2326         Add three new configure options, intended for packagers:
2327           --with-packager="packager name"
2328           --with-packager-version="packager-specific version"
2329           --with-packager-bug-reports="packager bug reporting"
2330         An example with coreutils:
2331           $ ./configure \
2332             --with-packager=Gentoo \
2333             --with-packager-bug-report=http://bugs.gentoo.org/ \
2334             --with-packager-version="patchset 1.6"
2335           $ ./src/ls --version | head -n3
2336           ls (GNU coreutils) 7.1-dirty
2337           Packaged by Gentoo (patchset 1.6)
2338           Copyright (C) 2009 Free Software Foundation, Inc.
2339         Note that the bug reporting info via --help doesn't show up because
2340         coreutils uses its own custom emit_bug_reporting_address() implementation
2341         in src/system.h.  If it didn't, it'd look like:
2342           $ ./src/ls --help | tail -n4
2343           Report bugs to <bug-coreutils@gnu.org>.
2344           Report Gentoo bugs to <http://bugs.gentoo.org/>.
2345           GNU coreutils home page: <http://www.gnu.org/software/coreutils/>.
2346           General help using GNU software: <http://www.gnu.org/gethelp/>.
2347         * lib/version-etc.c: Print new information, if provided.
2348         * m4/version-etc.m4: New file.
2349         * modules/version-etc (Files): Add m4/version-etc.m4.
2350         (configure.ac): Add gl_VERSION_ETC.
2351
2352 2009-05-31  Bruno Haible  <bruno@clisp.org>
2353
2354         * tests/test-alignof.c: Include <stdint.h>. Check also 'long double'
2355         and 'int64_t'.
2356         * modules/alignof-tests (Dependencies): Add stdint.
2357         Reported by Eric Blake.
2358
2359 2009-05-31  Bruno Haible  <bruno@clisp.org>
2360
2361         * lib/alignof.h (alignof_slot, alignof_type, alignof): Document
2362         restriction due to compiler bugs.
2363         Reported by Eric Blake.
2364
2365 2009-05-31  Simon Josefsson  <simon@josefsson.org>
2366             Bruno Haible  <bruno@clisp.org>
2367
2368         Fix test-alignof failure.
2369         * lib/alignof.h (alignof_slot): New macro.
2370         (alignof_type): New macro, with the same semantics as the previous
2371         'alignof'.
2372         (alignof): Alias to alignof_slot.
2373         * tests/test-alignof.c (CHECK): Check alignof_slot, not alignof. Also
2374         check that the results are usable as constant expressions.
2375
2376 2009-05-31  Bruno Haible  <bruno@clisp.org>
2377
2378         * tests/zerosize-ptr.h (zerosize_ptr): Specify more details.
2379         * tests/test-memchr.c (main): Check that memchr does not read past the
2380         first occurrence of the byte.
2381         * tests/test-strstr.c (main): Update comment.
2382         Suggested by Eric Blake.
2383
2384 2009-05-30  Bruno Haible  <bruno@clisp.org>
2385
2386         * doc/ld-output-def.texi (Visual Studio Compatibility): Explain in more
2387         detail how to use dumpbin.
2388         Reported by David Byron <dbyron@dbyron.com>.
2389
2390 2009-06-02  Simon Josefsson  <simon@josefsson.org>
2391
2392         * tests/test-parse-duration.sh: Don't use non-portable 'read -u3'.
2393
2394 2009-06-02  Simon Josefsson  <simon@josefsson.org>
2395
2396         * m4/manywarnings.m4: Add GCC 4.4 warnings.
2397
2398 2009-05-28  Bruno Haible  <bruno@clisp.org>
2399
2400         * gnulib-tool (func_import): Don't do HAVE_CONFIG_H replacements on
2401         build-aux/ files.
2402
2403 2009-05-28  Simon Josefsson  <simon@josefsson.org>
2404
2405         * gnulib-tool (func_import): Transform license on build-aux/ files too.
2406
2407 2009-05-27  Simon Josefsson  <simon@josefsson.org>
2408
2409         * gnulib-tool (sed_transform_main_lib_file)
2410         (sed_transform_testsrelated_lib_file): : Don't use non-POSIX
2411         regexps.
2412
2413 2009-05-26  Simon Josefsson  <simon@josefsson.org>
2414
2415         * tests/test-strstr.c: Add another self-test.
2416         * tests/test-strstr.c: Rewrite to use malloc/strcpy instead of
2417         strdup.  Suggested by Eric Blake  <ebb9@byu.net>.
2418
2419 2009-05-23  Bruno Haible  <bruno@clisp.org>
2420
2421         * doc/havelib.texi (AC_LIB_HAVE_LINKFLAGS): Update for 2009-04-26
2422         change.
2423
2424 2009-05-21  Bruno Haible  <bruno@clisp.org>
2425
2426         Simplify use of mode_t varargs.
2427         * lib/open.c (open): Use PROMOTED_MODE_T instead of a conditional that
2428         uses 'mode_t' or 'int'.
2429         * lib/openat.c (openat): Likewise.
2430         * lib/open-safer.c (open_safer): Likewise.
2431         * m4/mode_t.m4: New file.
2432         * m4/open.m4 (gl_PREREQ_OPEN): Require gl_PROMOTED_TYPE_MODE_T.
2433         * m4/openat.m4 (gl_PREREQ_OPENAT): Likewise.
2434         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Likewise.
2435         * modules/open (Files): Add m4/mode_t.m4.
2436         * modules/openat (Files): Likewise.
2437         * modules/fcntl-safer (Files): Likewise.
2438         Suggested by Eric Blake.
2439
2440 2009-05-21  Pádraig Brady  <P@draigbrady.com>
2441
2442         * doc/glibc-functions/fallocate.texi: New file.
2443         * doc/gnulib.texi: Include it.
2444
2445 2009-05-21  Eric Blake  <ebb9@byu.net>
2446             Bruno Haible  <bruno@clisp.org>
2447
2448         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Remove redundant m4_quote
2449         invocations.
2450         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
2451
2452 2009-05-21  Eric Blake  <ebb9@byu.net>
2453             Bruno Haible  <bruno@clisp.org>
2454
2455         Second attempt to work around an AIX 5.3, 6.1 compiler bug with
2456         include_next. Fix of 2008-11-20 commit.
2457         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Also set
2458         NEXT_AS_FIRST_DIRECTIVE_FOO_H.
2459         * lib/math.in.h: Use NEXT_AS_FIRST_DIRECTIVE_MATH_H instead of
2460         NEXT_MATH_H.
2461         * modules/math (Makefile.am): Substitute NEXT_AS_FIRST_DIRECTIVE_MATH_H
2462         instead of NEXT_MATH_H.
2463
2464 2009-05-21  Bruno Haible  <bruno@clisp.org>
2465
2466         Avoid redefinition warnings for SIZE_MAX.
2467         * m4/size_max.m4 (gl_SIZE_MAX): Avoid redefining SIZE_MAX in config.h.
2468         Reported by Simon Josefsson.
2469
2470 2009-05-21  Bruno Haible  <bruno@clisp.org>
2471
2472         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_CACHE_CHECK instead of
2473         AC_CACHE_VAL.
2474
2475 2009-05-20  Bruno Haible  <bruno@clisp.org>
2476
2477         Make zeroptr.h work on mingw.
2478         * tests/zerosize-ptr.h: Test for the presence of <sys/mman.h> and
2479         mprotect.
2480         * modules/memchr-tests (configure.ac): Also test for sys/mman.h.
2481         * modules/memchr2-tests (configure.ac): Likewise.
2482         * modules/memcmp-tests (configure.ac): Likewise.
2483         * modules/memmem-tests (configure.ac): Likewise.
2484         * modules/memrchr-tests (configure.ac): Likewise.
2485         Reported by Simon Josefsson.
2486
2487 2009-05-20  Simon Josefsson  <simon@josefsson.org>
2488
2489         * tests/test-glob.c: Include string.h for strcmp prototype.
2490
2491 2009-05-20  Simon Josefsson  <simon@josefsson.org>
2492
2493         * modules/getdelim (Depends-on): Add explicit stdint, although it
2494         was implicitly already pulled in via realloc-posix.
2495         * lib/getdelim.c: Get SIZE_MAX from stdint.h.
2496
2497 2009-05-20  Simon Josefsson  <simon@josefsson.org>
2498
2499         MinGW and IRIX does not have sa_family_t type.  Reported by "Tom
2500         G. Christensen" <tgc@jupiterrise.com>.
2501         * m4/sys_socket_h.m4: Check for sa_family_t.
2502         * lib/sys_socket.in.h: Typedef sa_family_t when needed.
2503         * modules/sys_socket: Substitute HAVE_SA_FAMILY_T.
2504         * tests/test-sys_socket.c: Check that sa_family_t works.
2505
2506 2009-05-18  Eric Blake  <ebb9@byu.net>
2507
2508         maint.mk: allow gnulib_dir in VPATH build
2509         * top/maint.mk (gnulib_dir): Make relative to $(srcdir).
2510
2511 2009-05-15  Jim Meyering  <meyering@redhat.com>
2512
2513         maint.mk: Give gnulib_dir a default definition.
2514         * top/maint.mk (gnulib_dir): Define to 'gnulib', by default.
2515         Thus, most packages no longer need to specify this variable in cfg.mk
2516
2517 2009-05-14  Tom Prince  <tom.prince@ualberta.net>  (tiny change)
2518
2519         rename.m4: fix typos that would make non-mingw cross-configure fail
2520         * m4/rename.m4 (gl_FUNC_RENAME): Fix typos.
2521
2522 2009-05-13  Eric Blake  <ebb9@byu.net>
2523
2524         mmap-anon: avoid out-of-order autoconf expansion
2525         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Use correct
2526         SYSTEM_EXTENSIONS macro to silence warnings from autoconf 2.63b.
2527         * modules/memchr-tests (Depends-on): Add extensions.
2528         * modules/memchr2-tests (Depends-on): Add extensions.
2529         * modules/memcmp-tests (Depends-on): Add extensions.
2530         * modules/memmem-tests (Depends-on): Add extensions.
2531         * modules/memrchr-tests (Depends-on): Add extensions.
2532
2533 2009-05-13  Bruno Haible  <bruno@clisp.org>
2534
2535         Make some tests ISO C 99 compliant.
2536         * tests/zerosize-ptr.h: New file.
2537         * tests/test-memchr.c: Include zerosize-ptr.h.
2538         (main): Use a zero-size object pointer instead of NULL.
2539         * tests/test-memchr2.c: Include zerosize-ptr.h.
2540         (main): Use a zero-size object pointer instead of NULL.
2541         * tests/test-memcmp.c: Include zerosize-ptr.h.
2542         (main): Use a zero-size object pointer instead of NULL.
2543         * tests/test-memmem.c: Include zerosize-ptr.h.
2544         (main): Use a zero-size object pointer instead of NULL.
2545         * tests/test-memrchr.c: Include zerosize-ptr.h.
2546         (main): Use a zero-size object pointer instead of NULL.
2547         * modules/memchr-tests (Files): Add tests/zerosize-ptr.h,
2548         m4/mmap-anon.m4.
2549         (Depends-on): Add getpagesize.
2550         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
2551         * modules/memchr2-tests (Files): Add tests/zerosize-ptr.h,
2552         m4/mmap-anon.m4.
2553         (Depends-on): Add getpagesize.
2554         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
2555         * modules/memcmp-tests (Files): Add tests/zerosize-ptr.h,
2556         m4/mmap-anon.m4.
2557         (Depends-on): Add getpagesize.
2558         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
2559         * modules/memmem-tests (Files): Add tests/zerosize-ptr.h,
2560         m4/mmap-anon.m4.
2561         (Depends-on): Add getpagesize.
2562         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
2563         * modules/memrchr-tests (Files): Add tests/zerosize-ptr.h,
2564         m4/mmap-anon.m4.
2565         (Depends-on): Add getpagesize.
2566         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
2567
2568 2009-05-12  Bruno Haible  <bruno@clisp.org>
2569
2570         Tests for module 'alignof'.
2571         * modules/alignof-tests: New file.
2572         * tests/test-alignof.c: New file.
2573
2574 2009-05-12  Bruno Haible  <bruno@clisp.org>
2575
2576         Fix alignof macro.
2577         * lib/alignof.h (alignof): Remove special cases for AIX and HP-UX
2578         vendor compilers that are always correct.
2579
2580 2009-05-12  Bruno Haible  <bruno@clisp.org>
2581
2582         Make the MAP_ANONYMOUS detection work on HP-UX 11.
2583         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check whether mmap exists, but
2584         not whether its fully works.
2585
2586 2009-05-12  Bruno Haible  <bruno@clisp.org>
2587
2588         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Add comments.
2589
2590 2009-05-12  Jim Meyering  <meyering@redhat.com>
2591
2592         * top/maint.mk: Adjust backslash alignment.
2593
2594 2009-05-11  Simon Josefsson  <simon@josefsson.org>
2595
2596         * top/maint.mk: Make $(srcdir)/build-aux configurable.
2597
2598 2009-05-11  Eric Blake  <ebb9@byu.net>
2599
2600         argp: avoid undefined behavior
2601         * lib/argp-fmtstream.c (weak_alias): Pass correct types to ctype
2602         macros.
2603
2604 2009-05-08  Simon Josefsson  <simon@josefsson.org>
2605
2606         * tests/test-vc-list-files-git.sh: Do git config of user.email and
2607         user.name to prevent git commit from complaining.
2608
2609 2009-05-10  Bruno Haible  <bruno@clisp.org>
2610
2611         * gnulib-tool (func_import, func_create_testdir, copy-file): Change
2612         sed_rewrite_old_files, sed_rewrite_new_files, sed_rewrite_files so that
2613         it rewrites every file name only once.
2614         Reported by Simon Josefsson. Helped by Ralf Wildenhues.
2615
2616 2009-05-08  Bruno Haible  <bruno@clisp.org>
2617
2618         * lib/sys_socket.in.h (_SS_PADSIZE): Use a conditional expression
2619         instead of 'max'.
2620
2621 2009-05-08  Simon Josefsson  <simon@josefsson.org>
2622
2623         * m4/sys_socket_h.m4: Test for ws2tcpip.h earlier, needed for
2624         sockaddr_storage test.
2625
2626 2009-05-07  Simon Josefsson  <simon@josefsson.org>
2627
2628         * modules/sys_socket (Makefile.am): Substitute
2629         HAVE_STRUCT_SOCKADDR_STORAGE.  Depend on alignof.
2630         * m4/sys_socket_h.m4: Check for sockaddr_storage.
2631         * lib/sys_socket.in.h (sockaddr_storage): Define when needed.
2632         * tests/test-sys_socket.c: Check sockaddr_storage.
2633
2634 2009-05-08  Bruno Haible  <bruno@clisp.org>
2635
2636         New module 'alignof'.
2637         * lib/alignof.h: New file.
2638         * modules/alignof: New file.
2639
2640 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
2641             Bruno Haible  <bruno@clisp.org>
2642
2643         Fix test-file-has-acl on FreeBSD.
2644         * tests/test-file-has-acl.sh: Also test a directory. On FreeBSD, the
2645         mask is implicitly added.
2646         * tests/test-file-has-acl.c: Include <signal.h>.
2647         (main): Terminate the test after 5 seconds.
2648         * modules/acl-tests (configure.ac): Check for alarm function.
2649
2650 2009-05-04  Bruno Haible  <bruno@clisp.org>
2651
2652         Exploit new semantics of AC_DEFUN_ONCE available since 2009-01-26.
2653         * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Remove outdated comment.
2654         * modules/errno (configure.ac): Drop AC_REQUIRE.
2655         * m4/multiarch.m4 (gl_MULTIARCH): Remove outdated comment.
2656         * modules/multiarch (configure.ac): Drop AC_REQUIRE.
2657
2658 2009-05-04  Simon Josefsson  <simon@josefsson.org>
2659
2660         * modules/glob-tests: New module.
2661         * tests/test-glob.c: Add.
2662
2663 2009-05-04  Simon Josefsson  <simon@josefsson.org>
2664
2665         * modules/fnmatch-tests: New module.
2666         * tests/test-fnmatch.c: Add.
2667
2668 2009-05-04  Eric Blake  <ebb9@byu.net>
2669
2670         maint: make the new no-submodule-changes rule VPATH-safe
2671         * top/maint.mk (no-submodule-changes): Don't assume a srcdir build.
2672
2673 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
2674             Bruno Haible  <bruno@clisp.org>
2675
2676         acl: Fix infinite loop on FreeBSD.
2677         * lib/acl_entries.c (acl_entries) [Linux, FreeBSD]: Fix interpretation
2678         of return value from acl_get_entry.
2679         * lib/file-has-acl.c (acl_access_nontrivial) [Linux, FreeBSD]:
2680         Likewise.
2681
2682 2009-05-03  Bruno Haible  <bruno@clisp.org>
2683
2684         * lib/acl-internal.h (acl_entries): Clarify return value.
2685         * lib/acl_entries.c (acl_entries): Likewise.
2686
2687 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
2688
2689         Bug fix in acl module.
2690         * lib/set-mode-acl.c: Use correct struct with ACL_SETACL.
2691
2692 2009-05-03  Bruno Haible  <bruno@clisp.org>
2693
2694         Create gperf-generated file in the source dir, not in the build dir.
2695         * modules/iconv_open (iconv_open-aix.h, iconv_open-hpux.h,
2696         iconv_open-irix.h, iconv_open-osf.h): Create file in the source tree.
2697         * modules/unicase/locale-language (unicase/locale-languages.h):
2698         Likewise.
2699         * modules/unicase/special-casing (unicase/special-casing-table.h):
2700         Likewise.
2701         * modules/unictype/property-byname (unictype/pr_byname.h): Likewise.
2702         * modules/unictype/scripts (unictype/scripts_byname.h): Likewise.
2703         * modules/uninorm/composition (uninorm/composition-table.h): Likewise.
2704         Reported by Ralf Wildenhues.
2705
2706 2009-05-03  Bruno Haible  <bruno@clisp.org>
2707
2708         * modules/fnmatch (Description, configure.ac): Taken from
2709         fnmatch-posix.
2710         * modules/fnmatch-posix: Turn into a symbolic reference to the
2711         'fnmatch' module, and deprecate.
2712         * doc/posix-functions/fnmatch.texi: Mention the fnmatch module.
2713
2714 2009-05-03  Bruno Haible  <bruno@clisp.org>
2715
2716         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF,
2717         gl_PREREQ_VASNPRINTF_LONG_DOUBLE): Define through AC_DEFUN_ONCE.
2718         Reported by Ralf Wildenhues.
2719
2720 2009-05-04  Simon Josefsson  <simon@josefsson.org>
2721
2722         * m4/fnmatch.m4: Fix fnmatch re-define.
2723
2724 2009-04-27  David Bartley  <dtbartle@csclub.uwaterloo.ca>
2725
2726         priv-set: new module and tests; adapt write-any-file
2727         * lib/priv-set.c: New file.
2728         * lib/priv-set.h: New file.
2729         * lib/unlinkdir.c: Make cannot_unlink_dir thread-safe.
2730         * lib/write-any-file.c: Simplify by using priv-set module.
2731         * m4/priv-set.m4: New file.
2732         * modules/priv-set: New file.
2733         * modules/unlinkdir: Add dependency on priv-set module.
2734         * modules/write-any-file: Likewise.
2735
2736         Tests for module 'priv-set'.
2737         * modules/priv-set-tests: New file.
2738         * tests/test-priv-set.c: New file.
2739
2740 2009-05-03  Jim Meyering  <meyering@redhat.com>
2741             Bruno Haible  <bruno@clisp.org>
2742
2743         * lib/propername.c (proper_name_utf8): Ignore no-op translations;
2744         use the converted UTF-8 variant of the name instead.
2745
2746 2009-05-03  Jim Meyering  <meyering@redhat.com>
2747
2748         tests: tighten some getdate tests
2749         * tests/test-getdate.c (main): Tighten tests: require equality,
2750         not just greater than.  Set TZ envvar to UTC0.
2751
2752 2009-05-03  Giuseppe Scrivano  <gscrivano@gnu.org>
2753
2754         getdate: correctly interpret "next monday" when run on a Monday
2755         * lib/getdate.y (get_date): Correct the calculation of tm_mday so
2756         that e.g., "next tues" (when run on a tuesday) results in a date
2757         that is one week in the future, and not today's date.
2758         I.e., add a week when the wday is the same as the current one.
2759         Reported by Tom Broadhurst in http://savannah.gnu.org/bugs/?25406,
2760         and earlier by Martin Bernreuther and Jan Minář.
2761         * tests/test-getdate.c (main): Check that "next DAY" is always in
2762         the future and that "last DAY" is always in the past.
2763
2764 2009-05-02  Jim Meyering  <meyering@redhat.com>
2765
2766         build: ensure that a release build fails when a submodule is unclean
2767         * top/maint.mk (no-submodule-changes): New rule.
2768         (alpha beta major): Depend on it.
2769
2770 2009-05-02  Bruno Haible  <bruno@clisp.org>
2771
2772         Remove incompatibility between modules fnmatch-posix and fnmatch-gnu.
2773         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX, gl_FUNC_FNMATCH_GNU): Use a
2774         shell variable gl_fnmatch_required to detect which variant is
2775         requested.
2776         (_AC_FUNC_FNMATCH_IF, _AC_LIBOBJ_FNMATCH): Remove macros. Inlined into
2777         gl_FUNC_FNMATCH_POSIX.
2778         * gnulib-tool (func_create_testdir, func_create_megatestdir): Don't
2779         exclude fnmatch-posix.
2780
2781 2009-05-02  Bruno Haible  <bruno@clisp.org>
2782
2783         Relicense mbsrtowcs and strnlen1 under LGPLv2+.
2784         * modules/mbsrtowcs (License): Change to LGPLv2+.
2785         * modules/strnlen1 (License): Likewise.
2786         Reported by Simon Josefsson.
2787
2788 2009-05-02  Bruno Haible  <bruno@clisp.org>
2789
2790         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Say "guessing no" instead of
2791         "cross".
2792         (gl_FUNC_FNMATCH_POSIX, gl_FUNC_FNMATCH_GNU): Update. Don't assume that
2793         gnulib-tool was called with option --source-base=lib.
2794
2795 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2796
2797         Use automake *-local hooks without commands, for extensibility.
2798         * modules/localcharset (Makefile.am): Rename install-exec-local
2799         rule to install-exec-localcharset, and make it a prerequisite of
2800         install-exec-local.  Likewise, rename the uninstall-local rule to
2801         uninstall-localcharset, and make it a prerequisite of the former.
2802
2803 2009-05-01  Bruno Haible  <bruno@clisp.org>
2804
2805         * lib/wchar.in.h (wcsnrtombs): Define if REPLACE_WCSNRTOMBS is 1.
2806         * m4/wcsnrtombs.m4 (gl_FUNC_WCSRTOMBS): Invoke gl_MBSTATE_T_BROKEN, and
2807         set REPLACE_WCSNRTOMBS if mbstate_t must be replaced.
2808         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCSNRTOMBS.
2809         * modules/wchar (Makefile.am): Substitute REPLACE_WCSNRTOMBS.
2810         * modules/wcsnrtombs (Files): Add m4/mbrtowc.m4, m4/locale-ja.m4,
2811         m4/locale-zh.m4, m4/codeset.m4.
2812
2813         * m4/wcsrtombs.m4 (gl_FUNC_WCSNRTOMBS): Invoke gl_MBSTATE_T_BROKEN, and
2814         set REPLACE_WCSRTOMBS if mbstate_t must be replaced.
2815         * modules/wcsrtombs (Files): Add m4/mbrtowc.m4, m4/locale-ja.m4,
2816         m4/locale-zh.m4.
2817
2818         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Invoke gl_MBSTATE_T_BROKEN, and set
2819         REPLACE_WCRTOMB if mbstate_t must be replaced.
2820         * modules/wcrtomb (Files): Add m4/mbrtowc.m4.
2821         Reported by Jens Rehsack <rehsack@googlemail.com> via Eric Blake.
2822
2823 2009-05-01  Bruno Haible  <bruno@clisp.org>
2824
2825         Avoid compiler warnings when redefining macros defined by <libintl.h>.
2826         * lib/gettext.h [!ENABLE_NLS] (gettext, dgettext, dcgettext, ngettext,
2827         dngettext, dcngettext, textdomain, bindtextdomain,
2828         bind_textdomain_codeset): Undefine before redefining.
2829
2830 2009-04-30  Bruno Haible  <bruno@clisp.org>
2831
2832         Fix bug introduced on 2009-04-25.
2833         * lib/math.in.h (gl_signbitf_OPTIMIZED_MACRO,
2834         gl_signbitd_OPTIMIZED_MACRO, gl_signbitl_OPTIMIZED_MACRO): New macros.
2835         * lib/signbitf.c (gl_signbitd): Undefine if gl_signbitf_OPTIMIZED_MACRO
2836         is defined.
2837         * lib/signbitd.c (gl_signbitd): Undefine if gl_signbitd_OPTIMIZED_MACRO
2838         is defined.
2839         * lib/signbitl.c (gl_signbitd): Undefine if gl_signbitl_OPTIMIZED_MACRO
2840         is defined.
2841         Reported by Elbert_Pol <elbert.pol@gmail.com>.
2842
2843 2009-04-28  Bruno Haible  <bruno@clisp.org>
2844
2845         Comment tweaks.
2846         * lib/unistr.h (u*_cmp2): Clarify what memcmp2 is.
2847         * lib/uninorm.h (u*_normxfrm): Fix description of return value.
2848         * lib/unicase.h (u*_casexfrm): Likewise.
2849         Reported by Paolo Bonzini.
2850
2851 2009-04-28  Bruno Haible  <bruno@clisp.org>
2852
2853         Fix a compilation error.
2854         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Fix initializer.
2855         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
2856         Reported by Jim Meyering.
2857
2858 2009-04-27  Bruno Haible  <bruno@clisp.org>
2859
2860         New module 'libunistring'.
2861         * modules/libunistring: New file.
2862         * m4/libunistring.m4: New file.
2863         * MODULES.html.sh (Unicode string functions): Add it.
2864
2865 2009-04-27  Eric Blake  <ebb9@byu.net>
2866
2867         maint.mk: allow package-specific header to provide <config.h>
2868         * top/maint.mk (sc_require_config_h): New variable.
2869         (sc_require_config_h, sc_require_config_h_first): Use it.
2870
2871 2009-04-27  Simon Josefsson  <simon@josefsson.org>
2872
2873         * top/maint.mk (sc_avoid_if_before_free): Except
2874         useless-if-before-free script.
2875
2876 2009-04-27  Eric Blake  <ebb9@byu.net>
2877
2878         maintainer-makefile: depend on all required helper scripts
2879         * modules/maintainer-makefile (Depends-on): Add vc-list-files and
2880         useless-if-before-free.
2881         * top/maint.mk (VC_LIST, sc_avoid_if_before_free): Use local
2882         version, rather than assuming gnulib checkout is available.
2883         Reported by Simen Josefsson.
2884
2885 2009-04-26  Bruno Haible  <bruno@clisp.org>
2886
2887         Make the lib vs. lib64 recognition work on openSUSE 11 with "gcc -m32".
2888         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): Ignore paths that end in
2889         "../" or "..".
2890
2891 2009-04-26  Bruno Haible  <bruno@clisp.org>
2892
2893         * m4/lib-link.m4 (AC_LIB_HAVE_LINKFLAGS): Accept a fifth argument.
2894         * m4/libsigsegv.m4 (gl_LIBSIGSEGV): Simplify by using
2895         AC_LIB_HAVE_LINKFLAGS.
2896
2897 2009-04-26  Bruno Haible  <bruno@clisp.org>
2898
2899         Simplify calling convention of u*_conv_from_encoding.
2900         * lib/uniconv.h (u8_conv_from_encoding, u16_conv_from_encoding,
2901         u32_conv_from_encoding): Expect a resultbuf argument and return the
2902         result directly as a pointer.
2903         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Likewise.
2904         * lib/uniconv/u-conv-from-enc.h (FUNC): Likewise.
2905         * lib/uniconv/u-strconv-from-enc.h (FUNC): Update.
2906         * lib/unicase/ulc-casecmp.c (ulc_u8_casefold): Update.
2907         * lib/unicase/ulc-casexfrm.c (ulc_casexfrm): Update.
2908         * lib/unilbrk/ulc-possible-linebreaks.c (ulc_possible_linebreaks):
2909         Update.
2910         * lib/unilbrk/ulc-width-linebreaks.c (ulc_width_linebreaks): Update.
2911         * lib/uniwbrk/ulc-wordbreaks.c (ulc_wordbreaks): Update.
2912         * lib/vasnprintf.c (VASNPRINTF): Update.
2913         * tests/uniconv/test-u8-conv-from-enc.c (main): Update.
2914         * tests/uniconv/test-u16-conv-from-enc.c (main): Update.
2915         * tests/uniconv/test-u32-conv-from-enc.c (main): Update.
2916         * NEWS: Mention the change.
2917
2918 2009-04-26  Bruno Haible  <bruno@clisp.org>
2919
2920         Simplify calling convention of u*_conv_to_encoding.
2921         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
2922         u32_conv_to_encoding): Expect a resultbuf argument and return the
2923         result directly as a pointer.
2924         * lib/uniconv/u8-conv-to-enc.c (u8_conv_to_encoding): Likewise.
2925         * lib/uniconv/u-conv-to-enc.h (FUNC): Likewise. Preserve errno while
2926         freeing scaled_offsets if mem_iconveha failed.
2927         * lib/unicase/u-casexfrm.h (FUNC): Update.
2928         * lib/uninorm/u-normxfrm.h (FUNC): Update.
2929         * lib/vasnprintf.c (VASNPRINTF): Update.
2930         * tests/uniconv/test-u8-conv-to-enc.c (main): Update.
2931         * tests/uniconv/test-u16-conv-to-enc.c (main): Update.
2932         * tests/uniconv/test-u32-conv-to-enc.c (main): Update.
2933         * NEWS: Mention the change.
2934
2935 2009-04-26  Bruno Haible  <bruno@clisp.org>
2936
2937         Avoid test failures on AIX and OSF/1.
2938         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Avoid calling
2939         malloc(0).
2940         * lib/uniconv/u8-conv-to-enc.c (u8_conv_to_encoding): Likewise.
2941         * lib/unilbrk/ulc-possible-linebreaks.c (ulc_possible_linebreaks):
2942         Likewise.
2943         * lib/unilbrk/ulc-width-linebreaks.c (ulc_width_linebreaks): Likewise.
2944         * lib/uniwbrk/ulc-wordbreaks.c (ulc_wordbreaks): Likewise.
2945         * lib/uniconv/u-conv-to-enc.h (FUNC): Likewise. Fix memory leak.
2946         * lib/unistr/u-cpy-alloc.h (FUNC): Call malloc(1) instead of malloc(0).
2947         * doc/posix-functions/malloc.texi: Document the portability problem
2948         related to malloc(0).
2949
2950 2009-04-26  Bruno Haible  <bruno@clisp.org>
2951
2952         * modules/unistr/u8-cpy-alloc (Depends-on): Add malloc-posix.
2953         * modules/unistr/u16-cpy-alloc (Depends-on): Likewise.
2954         * modules/unistr/u32-cpy-alloc (Depends-on): Likewise.
2955
2956 2009-04-25  Bruno Haible  <bruno@clisp.org>
2957
2958         Avoid link error when creating a namespace clean library.
2959         * lib/math.in.h (gl_signbitf, gl_signbitd, gl_signbitl): Don't define
2960         as macro with arguments if already defined as an alias.
2961         * lib/signbitf.c (gl_signbitf): Don't undefine.
2962         * lib/signbitd.c (gl_signbitd): Don't undefine.
2963         * lib/signbitl.c (gl_signbitl): Don't undefine.
2964
2965 2009-04-25  Jim Meyering  <meyering@redhat.com>
2966
2967         vc-list-files: fix another quoting bug
2968         * build-aux/vc-list-files: Avoid sed backslash expansion
2969         of pathological directory names.
2970
2971 2009-04-25  Eric Blake  <ebb9@byu.net>
2972
2973         vc-list-files: fix shell quoting error
2974         * build-aux/vc-list-files: Protect against $ in $dir.  Normalize
2975         timestamp.
2976
2977 2009-04-25  Jim Meyering  <meyering@redhat.com>
2978
2979         vc-list-files: restore lost functionality with subdir argument
2980         * build-aux/vc-list-files: When given a non-"." sub-directory
2981         argument, substitute the $dir/ prefix back onto each resulting name.
2982         Otherwise, coreutils' root_tests check would fail.
2983
2984 2009-04-24  Eric Blake  <ebb9@byu.net>
2985
2986         vc-list-files: ignore git symlinks
2987         * build-aux/vc-list-files (.git): Use ls-tree and a filter, rather
2988         than ls-files, to ignore git symlinks.
2989
2990         maint.mk: import improvements from m4
2991         * top/maint.mk (VC-tag): Use signing key from cfg.mk.
2992         (move_if_change): Delete unused macro.
2993         (news-date-check, vc-diff-check): Support VPATH builds.
2994         (announcement): Likewise.  Split --bootstrap-tools list...
2995         (boostrap-tools): ...into separate list, which can be overridden
2996         in cfg.mk.
2997         (sc_avoid_if_before_free): Point to $(gnulib_dir), rather than
2998         requiring dependency on useless-if-before-free module.
2999         (VC_LIST, VC_LIST_EXCEPT): Likewise for vc-list-files module.
3000         Support VPATH builds.
3001
3002 2009-04-24  Jim Meyering  <meyering@redhat.com>
3003
3004         maint.mk: remove coreutils-specific rules and variables
3005         * top/maint.mk (bin, taint-distcheck, coreutils-path-check, t): Remove.
3006         (fake_home, install-transform-check, my-instcheck, pfx, TMPDIR): Remove.
3007         (t_prefix, t_taint, tp, warn_cflags, write_loser, my-distcheck): Remove.
3008
3009         maint.mk: remove obsolete rule
3010         * top/maint.mk (rel-check): Remove rule.
3011         (WGET, WGETFLAGS): Remove now-unused variables.
3012
3013 2009-04-24  Simon Josefsson  <simon@josefsson.org>
3014
3015         * top/maint.mk (makefile-check): Renamed to sc_makefile_check for
3016         consistency.
3017
3018         * modules/vc-list-files-tests (TESTS_ENVIRONMENT): Use
3019         '$(PATH_SEPARATOR)' instead of ':'.
3020
3021 2009-04-24  Simon Josefsson  <simon@josefsson.org>
3022
3023         * lib/getopt1.c (main): Use 'const' for static array.
3024
3025 2009-04-24  Simon Josefsson  <simon@josefsson.org>
3026
3027         * top/maint.mk: Sync with coreutils.
3028         * NEWS: Explain incompatibilities.
3029
3030 2009-04-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
3031             Bruno Haible  <bruno@clisp.org>
3032
3033         Fix cross-compilation results.
3034         * m4/btowc.m4 (gl_FUNC_BTOWC): Use no-op statement, rather than empty
3035         statement, as third argument of AC_TRY_RUN.
3036         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE, gl_MBRTOWC_SANITYCHECK,
3037         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL):
3038         Likewise.
3039         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): Likewise.
3040         * m4/wcsrtombs.m4 (gl_WCSRTOMBS_TERMINATION, gl_WCSRTOMBS_NULL):
3041         Likewise.
3042         * m4/wctob.m4 (gl_FUNC_WCTOB): Likewise.
3043         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Likewise. Update for AIX 4.3.
3044         * doc/posix-functions/wcrtomb.texi: Mention the bug on AIX 4.3.
3045
3046 2009-04-20  Bruno Haible  <bruno@clisp.org>
3047
3048         Avoid test failure on mingw.
3049         * tests/uniwidth/test-uc_width2.sh: Convert newlines in output.
3050
3051 2009-04-20  Bruno Haible  <bruno@clisp.org>
3052
3053         Avoid compilation error on mingw.
3054         * modules/localename-tests (Depends-on): Add locale.
3055
3056 2009-04-19  Bruno Haible  <bruno@clisp.org>
3057
3058         Support for building a shared library on Windows platforms.
3059         * tests/uninorm/test-nfc.c (n): Don't define if WOE32DLL.
3060         (main): Test the presence of UNINORM_NFC here.
3061         * tests/uninorm/test-nfd.c (n): Don't define if WOE32DLL.
3062         (main): Test the presence of UNINORM_NFD here.
3063         * tests/uninorm/test-nfkc.c (n): Don't define if WOE32DLL.
3064         (main): Test the presence of UNINORM_NFKC here.
3065         * tests/uninorm/test-nfkd.c (n): Don't define if WOE32DLL.
3066         (main): Test the presence of UNINORM_NFKD here.
3067
3068 2009-04-19  Bruno Haible  <bruno@clisp.org>
3069
3070         Avoid a compiler warning.
3071         * tests/uninorm/test-u32-normalize-big.c (read_normalization_test_file):
3072         Change type of variable 'sequence'.
3073
3074 2009-04-19  Bruno Haible  <bruno@clisp.org>
3075
3076         * modules/configmake (Makefile.am): When the contents of configmake.h
3077         does not change, arrange to preserve its modification time.
3078
3079 2009-04-17  Simon Josefsson  <simon@josefsson.org>
3080
3081         * top/maint.mk (PO_DOMAIN): New variable, allows overriding of
3082         gettext domain.
3083
3084 2009-04-16  Jim Meyering  <meyering@redhat.com>
3085
3086         useless-if-before-free: improve conversion code
3087         * build-aux/useless-if-before-free: Adjust code-in-comment to match
3088         "...!= 0" as well as "...!= NULL".  emacs has one of the former.
3089
3090 2009-04-14  Bruno Haible  <bruno@clisp.org>
3091
3092         * modules/fcntl (Depends-on): Add extensions.
3093         * m4/fcntl_h.m4 (gl_FCNTL_H): Add a comment.
3094
3095 2009-04-12  Ben Pfaff  <blp@gnu.org>
3096
3097         Make fcntl module detect O_NOATIME, O_NOFOLLOW on GNU/Linux.
3098         * m4/fcntl_h.m4 (gl_FCNTL_H): Require AC_USE_SYSTEM_EXTENSIONS.
3099
3100 2009-03-20  Ben Pfaff  <blp@gnu.org>
3101
3102         Make rename replace existing destinations on Windows.
3103         * m4/rename.m4: Add test for Mingw.
3104         * lib/rename.c: Add rename replacement that uses MoveFileEx with
3105         MOVEFILE_REPLACE_EXISTING to replace existing destination files.
3106         * doc/posix-functions/rename.texi: Document.
3107
3108 2009-04-10  Bruno Haible  <bruno@clisp.org>
3109
3110         New include file "iconveh.h".
3111         * lib/iconveh.h: New file, extracted from lib/striconveh.h.
3112         * lib/striconveh.h: Include it.
3113         (enum iconv_ilseq_handler): Remove definition.
3114         * lib/striconveha.h: Include <stddef.h> and iconveh.h instead of
3115         striconveh.h.
3116         * lib/striconveha.c: Include striconveh.h.
3117         * lib/uniconv.h: Include iconveh.h instead of striconveh.h.
3118         * modules/striconveh (Files): Add lib/iconveh.h.
3119         * modules/uniconv/base (Files): Add lib/iconveh.h. Remove
3120         lib/striconveh.h.
3121
3122 2009-04-10  Bruno Haible  <bruno@clisp.org>
3123
3124         * lib/uniconv.h: Update comment.
3125
3126 2009-04-10  Bruno Haible  <bruno@clisp.org>
3127
3128         * lib/unistr/u8-mbtouc-aux.c: Inside libunistring, define the function
3129         always.
3130         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
3131         * lib/unistr/u16-mbtouc-aux.c: Likewise.
3132         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
3133         * lib/unistr/u8-mbtouc.c: Inside libunistring, include
3134         "unistring-notinline.h", so that the function gets defined always.
3135         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
3136         * lib/unistr/u8-uctomb.c: Likewise.
3137         * lib/unistr/u16-mbtouc.c: Likewise.
3138         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
3139         * lib/unistr/u16-uctomb.c: Likewise.
3140         * lib/unistr/u32-mbtouc.c: Likewise.
3141         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
3142         * lib/unistr/u32-uctomb.c: Likewise.
3143
3144 2009-04-10  Bruno Haible  <bruno@clisp.org>
3145
3146         Mark 'utime' obsolete.
3147         * modules/utime (Status, Notice): New sections.
3148         Suggested by Jim Meyering.
3149
3150         Fix cross-compile guess for utime test.
3151         * m4/utime.m4 (AC_FUNC_UTIME_NULL): Add definition from newest unstable
3152         autoconf.
3153         * doc/posix-functions/utime.texi: Give more precisions.
3154         Reported by Jan <ipif@ymail.com>.
3155
3156 2009-04-09  Kamil Dudka  <kdudka@redhat.com>
3157
3158         filevercmp: correct today's change
3159         * lib/filevercmp.c: Also handle coreutils' test inputs.
3160         * tests/test-filevercmp.c: Add inputs from one of coreutils' test scripts.
3161
3162         Fix regression in 'filevercmp' module. Thanks Sven Joachim
3163         for reporting it.
3164         * lib/filevercmp.c: Special handle for "", "." and "..".
3165         * tests/test-filevercmp.c: Enlarge the set suite.
3166
3167 2009-04-07  Jim Meyering  <meyering@redhat.com>
3168
3169         useless-if-before-free: show how to remove braced useless free, too
3170         * build-aux/useless-if-before-free: still only in a comment, though.
3171
3172 2009-04-07  Reuben Thomas  <rrt@sc3d.org>
3173
3174         maint.mk: import changes to syntax-check macros from coreutils
3175         * top/maint.mk (_prohibit_regexp, _header_without_use): Define.
3176         Use them in the relevant macros.
3177
3178 2009-04-06  Bruno Haible  <bruno@clisp.org>
3179
3180         Fix unportable use of bit-fields.
3181         * lib/unicase/special-casing.h (struct special_casing_rule): Change the
3182         bit-field type from 'int' to 'signed int'. Otherwise Solaris cc,
3183         AIX xlc, and OSF/1 cc interpret it as 'unsigned int'.
3184
3185 2009-04-06  Bruno Haible  <bruno@clisp.org>
3186
3187         Avoid test failures on AIX and OSF/1.
3188         * tests/unicase/test-u8-casefold.c (check): Account for the possibility
3189         that malloc(0) = NULL.
3190         * tests/unicase/test-u8-tolower.c (check): Likewise.
3191         * tests/unicase/test-u8-totitle.c (check): Likewise.
3192         * tests/unicase/test-u8-toupper.c (check): Likewise.
3193         * tests/unicase/test-u16-casefold.c (check): Likewise.
3194         * tests/unicase/test-u16-tolower.c (check): Likewise.
3195         * tests/unicase/test-u16-totitle.c (check): Likewise.
3196         * tests/unicase/test-u16-toupper.c (check): Likewise.
3197         * tests/unicase/test-u32-casefold.c (check): Likewise.
3198         * tests/unicase/test-u32-tolower.c (check): Likewise.
3199         * tests/unicase/test-u32-totitle.c (check): Likewise.
3200         * tests/unicase/test-u32-toupper.c (check): Likewise.
3201         * tests/uninorm/test-u8-nfc.c (check): Likewise.
3202         * tests/uninorm/test-u8-nfd.c (check): Likewise.
3203         * tests/uninorm/test-u8-nfkc.c (check): Likewise.
3204         * tests/uninorm/test-u8-nfkd.c (check): Likewise.
3205         * tests/uninorm/test-u16-nfc.c (check): Likewise.
3206         * tests/uninorm/test-u16-nfd.c (check): Likewise.
3207         * tests/uninorm/test-u16-nfkc.c (check): Likewise.
3208         * tests/uninorm/test-u16-nfkd.c (check): Likewise.
3209         * tests/uninorm/test-u32-nfc.c (check): Likewise.
3210         * tests/uninorm/test-u32-nfd.c (check): Likewise.
3211         * tests/uninorm/test-u32-nfkc.c (check): Likewise.
3212         * tests/uninorm/test-u32-nfkd.c (check): Likewise.
3213
3214 2009-04-05  Bruno Haible  <bruno@clisp.org>
3215
3216         Work around an autoconf limitation.
3217         * gnulib-tool (func_emit_lib_Makefile_am): Omit the "Reproduce by"
3218         comment line if it would be longer than 3 KB.
3219
3220 2009-04-05  Bruno Haible  <bruno@clisp.org>
3221
3222         Avoid test failure with libiconv-1.13.
3223         * tests/test-striconveh.c (main): Allow result of libiconv 1.13 as one
3224         of the expected test results.
3225
3226 2009-04-05  Bruno Haible  <bruno@clisp.org>
3227
3228         * gnulib-tool (func_emit_lib_Makefile_am): Don't add the library to
3229         noinst_LTLIBRARIES if the Makefile.am in the same directory specifies
3230         that it should be installed.
3231
3232 2009-04-05  Bruno Haible  <bruno@clisp.org>
3233
3234         * gnulib-tool: New option --copy-file.
3235         (func_usage): Document it.
3236         (func_dest_tmpfilename): Moved out of func_import.
3237         (func_add_file, func_update_file): New functions, extracted from
3238         func_import.
3239         (func_import): Update.
3240
3241 2009-04-05  Karl Berry  <karl@gnu.org>
3242
3243         * README: prominently mention gnulib-tool.
3244         Rearrange sections so getting the code is near the top.
3245
3246 2009-04-05  Bruno Haible  <bruno@clisp.org>
3247
3248         * lib/unicase.h: Mention u*_cmp2.
3249         * lib/unicase/u-casecmp.h (FUNC): Invoke U_CMP2 instead of U_CMP.
3250         * lib/unicase/u8-casecmp.c: Use u8_cmp2 instead of u8_cmp.
3251         * lib/unicase/ulc-casecmp.c: Likewise.
3252         * lib/unicase/u16-casecmp.c: Use u16_cmp2 instead of u16_cmp.
3253         * lib/unicase/u32-casecmp.c: Use u32_cmp2 instead of u32_cmp.
3254         * modules/unicase/u8-casecmp (Depends-on): Add unistr/u8-cmp2, remove
3255         unistr/u8-cmp.
3256         * modules/unicase/ulc-casecmp (Depends-on): Likewise.
3257         * modules/unicase/u16-casecmp (Depends-on): Add unistr/u16-cmp2, remove
3258         unistr/u16-cmp.
3259         * modules/unicase/u32-casecmp (Depends-on): Add unistr/u32-cmp2, remove
3260         unistr/u32-cmp.
3261
3262         * lib/uninorm.h: Mention u*_cmp2.
3263         * lib/uninorm/u-normcmp.h (FUNC): Invoke U_CMP2 instead of U_CMP.
3264         * lib/uninorm/u8-normcmp.c: Use u8_cmp2 instead of u8_cmp.
3265         * lib/uninorm/u16-normcmp.c: Use u16_cmp2 instead of u16_cmp.
3266         * lib/uninorm/u32-normcmp.c: Use u32_cmp2 instead of u32_cmp.
3267         * modules/uninorm/u8-normcmp (Depends-on): Add unistr/u8-cmp2, remove
3268         unistr/u8-cmp.
3269         * modules/uninorm/u16-normcmp (Depends-on): Add unistr/u16-cmp2, remove
3270         unistr/u16-cmp.
3271         * modules/uninorm/u32-normcmp (Depends-on): Add unistr/u32-cmp2, remove
3272         unistr/u32-cmp.
3273
3274         New module 'unistr/u32-cmp2'.
3275         * lib/unistr/u32-cmp2.c: New file.
3276         * modules/unistr/u32-cmp2: New file.
3277
3278         New module 'unistr/u16-cmp2'.
3279         * lib/unistr/u16-cmp2.c: New file.
3280         * modules/unistr/u16-cmp2: New file.
3281
3282         New module 'unistr/u8-cmp2'.
3283         * lib/unistr.h (u8_cmp2, u16_cmp2, u32_cmp2): New declarations.
3284         * lib/unistr/u8-cmp2.c: New file.
3285         * lib/unistr/u-cmp2.h: New file.
3286         * modules/unistr/u8-cmp2: New file.
3287
3288 2009-04-05  Bruno Haible  <bruno@clisp.org>
3289
3290         * lib/unictype.h (uc_property_is_valid): New macro.
3291         * tests/unictype/test-pr_byname.c (main): Use it.
3292
3293         * lib/unistr.h: Doc fixes.
3294         * lib/uniconv.h: Doc fixes.
3295         * lib/unictype.h: Doc fixes.
3296
3297 2009-04-03  Paul Eggert  <eggert@cs.ucla.edu>
3298
3299         Port coreutils 7.2 to Solaris 8.
3300
3301         * modules/arpa_inet (arpa/inet.h): Depend on arpa_inet.in.h.
3302         * m4/inet_ntop.m4 (gl_INET_NTOP): Search for inet_ntop in -lnsl,
3303         for Solaris 8.  This is a bit of a hack, as it means it's the
3304         caller's responsibility to add -lnsl if needed, but most likely it
3305         won't be needed since only getaddrinfo uses this and getaddrinfo
3306         isn't needed on Solaris 8.
3307
3308         * modules/fnmatch (Depends-on): Add mbsrtowcs, to fix a porting
3309         problem to Solaris 8 encountered with coreutils 7.2, which
3310         resulted in a message "fnmatch.c:292: warning: passing argument 4
3311         of 'mbsrtowcs' from incompatible pointer type".  Also, add mbsinit
3312         at the suggestion of Bruno Haible, since fnmatch uses mbsinit.
3313
3314 2009-04-03  Simon Josefsson  <simon@josefsson.org>
3315
3316         * m4/ld-version-script.m4: Add FIXME comment.
3317
3318 2009-04-02  Simon Josefsson  <simon@josefsson.org>
3319
3320         * doc/ld-output-def.texi: Use DLL_VERSION instead of confusing
3321         SOVERSION variable.
3322
3323 2009-04-02  Bruno Haible  <bruno@clisp.org>
3324
3325         * Makefile (info, html, dvi, pdf): Combine the rules.
3326         Suggested by Jim Meyering.
3327
3328 2009-04-01  Bruno Haible  <bruno@clisp.org>
3329
3330         * Makefile (info, html, dvi, pdf): New targets.
3331         Reported by Reuben Thomas <rrt@sc3d.org>.
3332
3333 2009-04-01  Bruno Haible  <bruno@clisp.org>
3334
3335         * doc/gnulib-tool.texi (Invoking gnulib-tool): Document how gnulib-tool
3336         can be put into PATH.
3337         Reported by Reuben Thomas <rrt@sc3d.org>. Suggested by Karl Berry.
3338
3339 2009-04-01  Bruno Haible  <bruno@clisp.org>
3340
3341         * doc/lib-symbol-visibility.texi: Follow texinfo style conventions.
3342
3343 2009-04-01  Bruno Haible  <bruno@clisp.org>
3344
3345         Rename module 'visibility'.
3346         * modules/lib-symbol-visibility: Renamed from modules/visibility.
3347         * doc/lib-symbol-visibility.texi: Renamed from visibility.texi.
3348         * doc/gnulib.texi: Update.
3349         * MODULES.html.sh (Misc): Update.
3350         * NEWS: Mention the change.
3351
3352 2009-04-01  Simon Josefsson  <simon@josefsson.org>
3353
3354         * modules/lib-msvc-compat: New module.  Thanks to Bruno Haible
3355         <bruno@clisp.org>, Ralf Wildenhues <Ralf.Wildenhues@gmx.de>, and
3356         Eric Blake <ebb9@byu.net> for review.
3357         * MODULES.html.sh: Add lib-msvc-compat.
3358         * doc/gnulib.texi: Link to new section.
3359         * m4/ld-output-def.m4: New file.
3360         * doc/ld-output-def.texi: New file.
3361
3362 2009-04-01  Simon Josefsson  <simon@josefsson.org>
3363
3364         Rename ld-version-script to lib-symbol-versions.  Suggested by
3365         Bruno Haible <bruno@clisp.org>.
3366         * modules/ld-version-script: Renamed to lib-symbol-versions.
3367         * doc/ld-version-script.texi: Fix module name.
3368         * MODULES.html.sh: Add lib-symbol-versions.
3369
3370 2009-03-31  Simon Josefsson  <simon@josefsson.org>
3371
3372         * modules/u64-tests: New file.
3373         * tests/test-u64.c: New file.
3374
3375 2009-03-04  Simon Josefsson  <simon@josefsson.org>
3376
3377         * MODULES.html.sh: Mention u64.
3378         * modules/u64: New module.
3379         * modules/crypto/sha512: Depend on u64 module instead of providing
3380         u64.h.
3381
3382 2009-03-27  Eric Blake  <ebb9@byu.net>
3383
3384         test-strerror: make debugging EAI_SYSTEM easier
3385         * modules/getaddrinfo-tests (Depends-on): Add strerror.
3386         * test-getaddrinfo.c (simple) [ENABLE_DEBUGGING]: Report errno if
3387         failure was EAI_SYSTEM.
3388
3389 2009-03-25  Bruno Haible  <bruno@clisp.org>
3390
3391         Fix a problem with --enable-relocatable on Solaris 7.
3392         * modules/relocatable-prog-wrapper (Depends-on): Add environ. Needed
3393         since 2008-02-24.
3394
3395 2009-03-25  Eric Blake  <ebb9@byu.net>
3396
3397         test-sockets: avoid gcc warning
3398         * tests/test-sockets.c (main): Silence compiler warning.
3399
3400 2009-03-25  Paul Eggert  <eggert@cs.ucla.edu>
3401
3402         New modules nproc, pthread, contributed by Glen Lenker.
3403
3404         * MODULES.html.sh: Add pthread, nproc.
3405         * lib/nproc.c: New file.
3406         * lib/nproc.h: New file.
3407         * lib/pthread.in.h: New file.
3408         * m4/pthread.m4: New file.
3409         * modules/nproc: New file.
3410         * modules/pthread: New file.
3411
3412 2009-03-24  Simon Josefsson  <simon@josefsson.org>
3413
3414         * modules/unicase/locale-language-tests (test_locale_language_LDADD):
3415         New variable.
3416
3417 2009-03-24  Kamil Dudka  <kdudka@redhat.com>
3418
3419         filevercmp: handle simple~ and numbered.~3~ backup suffixes
3420         * lib/filevercmp.c: Handle simple~ and numbered.~3~ backup suffixes.
3421         * tests/test-filevercmp.c: Add tests for backup suffixes.
3422
3423 2009-03-24  Simon Josefsson  <simon@josefsson.org>
3424
3425         * modules/stdlib (Depends-on): Add stdint, needed when defining
3426         struct random_data on, for example, HP-UX 10.20.  Reported by
3427         Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
3428
3429 2009-03-24  Simon Josefsson  <simon@josefsson.org>
3430
3431         * lib/readline.c (readline): Call fflush on stdout after printing
3432         prompt.
3433
3434 2009-03-20  Bruno Haible  <bruno@clisp.org>
3435
3436         Remove dependency from 'close' module to -lws2_32 on native Windows.
3437         * lib/close-hook.h: New file.
3438         * lib/close-hook.c: New file.
3439         * lib/close.c: Include close-hook.h. Don't include <sys/socket.h>,
3440         w32sock.h.
3441         (_gl_close_fd_maybe_socket): Remove function.
3442         (rpl_close): Invoke execute_all_close_hooks instead of
3443         _gl_close_fd_maybe_socket.
3444         * lib/sockets.c: Include close-hook.h, w32sock.h.
3445         (close_fd_maybe_socket): New function, essentially from lib/close.c.
3446         (close_sockets_hook): New variable.
3447         (gl_sockets_startup): Register close_fd_maybe_socket as a hook.
3448         (gl_sockets_cleanup): Unregister it.
3449         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): Remove macro.
3450         * m4/close.m4 (gl_REPLACE_CLOSE): Undo 2009-02-05 change.
3451         * modules/close-hook: New file.
3452         * modules/close (Files): Remove lib/w32sock.h.
3453         (Depends-on): Add close-hook.
3454         (Link): Remove section.
3455         * modules/sockets (Files): Add lib/w32sock.h.
3456         (Depends-on): Add close-hook.
3457         * modules/sys_socket (configure.ac): Remove gl_MODULE_INDICATOR
3458         invocation.
3459         * NEWS: Mention that LIB_CLOSE is gone.
3460
3461 2009-03-23  Eric Blake  <ebb9@byu.net>
3462
3463         signal-tests: test previous patch
3464         * tests/test-signal.c: New file.
3465         * modules/signal-tests: Likewise.
3466
3467         signal.h: always support 'volatile sig_atomic_t'
3468         * m4/signal_h.m4 (gl_SIGNAL_H): Check for AIX limitation.
3469         (gl_SIGNAL_H_DEFAULTS): Add a default.
3470         * modules/signal (Makefile.am): Substitute if needed.
3471         * lib/signal.in.h (sig_atomic_t): Redefine if needed, so that
3472         users can blindly add volatile.
3473         * doc/posix-headers/signal.texi (signal.h): Document it.
3474         Reported by Matthew Woehlke.
3475
3476 2009-03-23  Jim Meyering  <meyering@redhat.com>
3477
3478         pathmax: PATH_MAX: use pathconf only when available
3479         * lib/pathmax.h (PATH_MAX): Select the pathconf-using definition
3480         only if HAVE_PATHCONF is defined.  Patch by Sylvain Beucler.
3481         * m4/pathmax.m4 (gl_PATHMAX): Check for pathconf.
3482         This avoids a link failure in a PSP cross-compilation environment
3483         described in http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/17048
3484
3485         * lib/vasnprintf.c (divide): Fix typo in comment.
3486
3487 2009-03-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3488
3489         * gnulib-tool (func_filter_filelist): Fix comment.
3490
3491 2009-03-20  Bruno Haible  <bruno@clisp.org>
3492
3493         Make sockets.h self-contained.
3494         * lib/sockets.c: Include sockets.h first.
3495         * lib/sockets.h: Include <sys/socket.h> before using the SOCKET type.
3496
3497 2009-03-19  Eric Blake  <ebb9@byu.net>
3498
3499         doc: mention more functions added in cygwin 1.7.0
3500         * doc/posix-functions/log2.texi: Mention recent cygwin 1.7.0
3501         addition.
3502         * doc/posix-functions/log2f.texi: Likewise.
3503
3504 2009-03-19  Jim Meyering  <meyering@redhat.com>
3505
3506         fsusage: avoid syntax error due to statement-before-declaration
3507         * lib/fsusage.c (get_fs_usage): Put warning-avoidance statement
3508         after all declarations.  Reported by Matthew Woehlke in
3509         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/16231
3510
3511 2009-03-18  Eric Blake  <ebb9@byu.net>
3512
3513         build-aux/compile: sync from automake
3514         * build-aux/compile: New file, from automake.
3515         * config/srclist.txt: Mention build-aux/compile.
3516
3517 2009-03-17  Bruno Haible  <bruno@clisp.org>
3518
3519         * lib/git-merge-changelog.c: Fix typo in comment.
3520         Reported by Reuben Thomas <rrt@sc3d.org>.
3521
3522 2009-03-17  Reuben Thomas  <rrt@sc3d.org>
3523
3524         * m4/regex.m4: update and improve help for
3525         --without-included-regex.
3526
3527 2009-03-17  Simon Josefsson  <simon@josefsson.org>
3528
3529         * modules/isnanl-nolibm-tests (Files): Add tests/nan.h to avoid
3530         failure on missing include files.
3531
3532 2009-03-17  Eric Blake  <ebb9@byu.net>
3533
3534         doc: mention more functions added in cygwin 1.7.0
3535         * doc/posix-functions/fwprintf.texi: Mention recent cygwin 1.7.0
3536         addition.
3537         * doc/posix-functions/fwscanf.texi: Likewise.
3538         * doc/posix-functions/swprintf.texi: Likewise.
3539         * doc/posix-functions/swscanf.texi: Likewise.
3540         * doc/posix-functions/vfwprintf.texi: Likewise.
3541         * doc/posix-functions/vfwscanf.texi: Likewise.
3542         * doc/posix-functions/vswprintf.texi: Likewise.
3543         * doc/posix-functions/vswscanf.texi: Likewise.
3544         * doc/posix-functions/vwprintf.texi: Likewise.
3545         * doc/posix-functions/vwscanf.texi: Likewise.
3546         * doc/posix-functions/wcscasecmp.texi: Likewise.
3547         * doc/posix-functions/wcsdup.texi: Likewise.
3548         * doc/posix-functions/wcsftime.texi: Likewise.
3549         * doc/posix-functions/wcsncasecmp.texi: Likewise.
3550         * doc/posix-functions/wprintf.texi: Likewise.
3551         * doc/posix-functions/wscanf.texi: Likewise.
3552         * doc/glibc-functions/gethostbyname2.texi: Likewise.
3553
3554 2009-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3555
3556         maint.mk: really add $(AM_MAKEFLAGS)
3557         * top/maint.mk (init-coverage, build-coverage): `$(AM_MAKEFLAGS)'
3558         was inadvertently omitted in the last commit.
3559         Spotted by Bruno Haible.
3560
3561         maint.mk: use $(MAKE) $(AM_MAKEFLAGS) not make
3562         * top/maint.mk (init-coverage, build-coverage): Use `$(MAKE)
3563         $(AM_MAKEFLAGS)' rather than plain `make'.
3564
3565         gnulib-tool: execute $MAKE not make
3566         * gnulib-tool: Default $MAKE to 'make'.
3567         (func_create_testdir, func_create_megatestdir): Use $MAKE rather
3568         than make.  Initialize $MAKE in the do-autobuild script.
3569
3570         gnulib-tool: use $MAKE not make in generated files
3571         * gnulib-tool (func_create_megatestdir): Use $MAKE rather than
3572         make, in generated files.  Initialize $MAKE in the do-autobuild
3573         script.
3574
3575         * top/GNUmakefile (_have-git-version-gen): Fix typo.
3576
3577         GNUmakefile: disable parallelism only for multiple, recursive targets
3578         * top/GNUmakefile (ALL_RECURSIVE_TARGETS): New macro; allow user
3579         additions in the Makefile.
3580         (AM_RECURSIVE_TARGETS): New macro, override only if not provided
3581         by Automake.
3582         (.NOTPARALLEL): Only disable parallel builds if multiple targets
3583         are listed on the command line and at least one of them is
3584         listed in $(ALL_RECURSIVE_TARGETS).
3585
3586 2009-03-14  Bruno Haible  <bruno@clisp.org>
3587
3588         * modules/unilbrk/u8-possible-linebreaks (Depends-on): Replace
3589         utf8-ucs4-unsafe with unistr/u8-mbtouc-unsafe.
3590         * modules/unilbrk/u8-width-linebreaks (Depends-on): Likewise.
3591         * modules/unilbrk/u16-possible-linebreaks (Depends-on): Replace
3592         utf16-ucs4-unsafe with unistr/u16-mbtouc-unsafe.
3593         * modules/unilbrk/u16-width-linebreaks (Depends-on): Likewise.
3594         * modules/unistr/u8-chr (Depends-on): Replace ucs4-utf8 with
3595         unistr/u8-uctomb.
3596         * modules/unistr/u8-strchr (Depends-on): Likewise.
3597         * modules/unistr/u8-strrchr (Depends-on): Likewise.
3598         * modules/unistr/u16-chr (Depends-on): Replace ucs4-utf16 with
3599         unistr/u16-uctomb.
3600         * modules/unistr/u16-strchr (Depends-on): Likewise.
3601         * modules/unistr/u16-strrchr (Depends-on): Likewise.
3602
3603 2009-03-12  Bruno Haible  <bruno@clisp.org>
3604
3605         Work around select() bug on Interix 3.5.
3606         * lib/sys_select.in.h (select): Also replace if REPLACE_SELECT is 1.
3607         * lib/select.c (rpl_select): Add an implementation for Unix platforms.
3608         * m4/select.m4: New file.
3609         * m4/sys_select_h.m4 (gl_SYS_SELECT_H_DEFAULTS): Initialize REPLACE_SELECT.
3610         * modules/sys_select (Makefile.am): Substitute REPLACE_SELECT.
3611         * modules/select (Files): Add m4/select.m4.
3612         (configure.ac): Move conditional to m4/select.m4. Invoke gl_FUNC_SELECT.
3613         * modules/nanosleep (Depends-on): Add select.
3614         * modules/poll (Depends-on): Likewise.
3615         * doc/posix-functions/select.texi: Mention the Interix bug.
3616         Reported by Markus Duft <mduft@gentoo.org>.
3617
3618         * lib/select.c: Renamed from lib/winsock-select.c.
3619         * modules/select (Files): Add lib/select.c, remove
3620         lib/winsock-select.c.
3621         (configure.ac): Update.
3622
3623 2009-03-12  Jim Meyering  <meyering@redhat.com>
3624
3625         avoid gcc warnings about unused macro definitions
3626         * lib/readtokens.c (STREQ): Remove unused definition.
3627         * lib/xmalloc.c (SIZE_MAX): Likewise.
3628         * lib/openat-die.c (N_): Likewise.
3629         * lib/mountlist.c (SIZE_MAX): Remove definition.
3630         Instead, include <stdint.h>.
3631         * lib/readutmp.c: Likewise.
3632         * modules/readutmp (Depends-on): Add stdint.
3633         * modules/mountlist (Depends-on): Add stdint.
3634         * lib/userspec.c (ISDIGIT): Move definition into #if block where used.
3635
3636 2009-03-10  Bruno Haible  <bruno@clisp.org>
3637
3638         Tests for module 'mbmemcasecoll'.
3639         * modules/mbmemcasecoll-tests: New file.
3640         * tests/test-mbmemcasecoll1.sh: New file.
3641         * tests/test-mbmemcasecoll2.sh: New file.
3642         * tests/test-mbmemcasecoll3.sh: New file.
3643         * tests/test-mbmemcasecoll.c: New file.
3644
3645         New module 'mbmemcasecoll'.
3646         * lib/mbmemcasecoll.h: New file.
3647         * lib/mbmemcasecoll.c: New file.
3648         * modules/mbmemcasecoll: New file.
3649
3650         * tests/test-mbmemcasecmp.h: New file, extracted from
3651         tests/test-mbmemcasecmp.c.
3652         * tests/test-mbmemcasecmp.c: Include test-mbmemcasecmp.h.
3653         (test_ascii, test_iso_8859_1, test_utf_8): Remove functions.
3654         (main): Update.
3655         * modules/mbmemcasecmp-tests (Files): Add tests/test-mbmemcasecmp.h.
3656
3657 2009-03-09  Bruno Haible  <bruno@clisp.org>
3658
3659         Tests for module 'mbmemcasecmp'.
3660         * modules/mbmemcasecmp-tests: New file.
3661         * tests/test-mbmemcasecmp1.sh: New file.
3662         * tests/test-mbmemcasecmp2.sh: New file.
3663         * tests/test-mbmemcasecmp3.sh: New file.
3664         * tests/test-mbmemcasecmp.c: New file.
3665
3666         New module 'mbmemcasecmp'.
3667         * lib/mbmemcasecmp.h: New file.
3668         * lib/mbmemcasecmp.c: New file.
3669         * modules/mbmemcasecmp: New file.
3670
3671 2009-03-09  Bruno Haible  <bruno@clisp.org>
3672
3673         Tests for module 'unicase/ulc-casecoll'.
3674         * modules/unicase/ulc-casecoll-tests: New file.
3675         * tests/unicase/test-ulc-casecoll1.sh: New file.
3676         * tests/unicase/test-ulc-casecoll2.sh: New file.
3677         * tests/unicase/test-ulc-casecoll.c: New file.
3678
3679         New module 'unicase/ulc-casecoll'.
3680         * lib/unicase.h (ulc_casecoll): New declaration.
3681         * lib/unicase/ulc-casecoll.c: New file.
3682         * modules/unicase/ulc-casecoll: New file.
3683
3684         New module 'unicase/ulc-casexfrm'.
3685         * lib/unicase.h (ulc_casexfrm): New declaration.
3686         * lib/unicase/ulc-casexfrm.c: New file.
3687         * modules/unicase/ulc-casexfrm: New file.
3688
3689 2009-03-09  Bruno Haible  <bruno@clisp.org>
3690
3691         Followup to 2008-12-22 commit: Remove unnecessary AC_FUNC_MBRTOWC
3692         invocations.
3693
3694         * m4/mbscasecmp.m4: Remove file.
3695         * modules/mbscasecmp (Files): Remove it and m4/mbrtowc.m4
3696         (configure.ac): Remove gl_FUNC_MBSCASECMP invocation.
3697
3698         * m4/mbscasestr.m4: Remove file.
3699         * modules/mbscasestr (Files): Remove it and m4/mbrtowc.m4
3700         (configure.ac): Remove gl_FUNC_MBSCASESTR invocation.
3701
3702         * m4/mbschr.m4: Remove file.
3703         * modules/mbschr (Files): Remove it and m4/mbrtowc.m4
3704         (configure.ac): Remove gl_FUNC_MBSCHR invocation.
3705
3706         * m4/mbscspn.m4: Remove file.
3707         * modules/mbscspn (Files): Remove it and m4/mbrtowc.m4
3708         (configure.ac): Remove gl_FUNC_MBSCSPN invocation.
3709
3710         * m4/mbslen.m4: Remove file.
3711         * modules/mbslen (Files): Remove it and m4/mbrtowc.m4
3712         (configure.ac): Remove gl_FUNC_MBSLEN invocation.
3713
3714         * m4/mbsncasecmp.m4: Remove file.
3715         * modules/mbsncasecmp (Files): Remove it and m4/mbrtowc.m4
3716         (configure.ac): Remove gl_FUNC_MBSNCASECMP invocation.
3717
3718         * m4/mbsnlen.m4: Remove file.
3719         * modules/mbsnlen (Files): Remove it and m4/mbrtowc.m4
3720         (configure.ac): Remove gl_FUNC_MBSNLEN invocation.
3721
3722         * m4/mbspbrk.m4: Remove file.
3723         * modules/mbspbrk (Files): Remove it and m4/mbrtowc.m4
3724         (configure.ac): Remove gl_FUNC_MBSPBRK invocation.
3725
3726         * m4/mbspcasecmp.m4: Remove file.
3727         * modules/mbspcasecmp (Files): Remove it and m4/mbrtowc.m4
3728         (configure.ac): Remove gl_FUNC_MBSPCASECMP invocation.
3729
3730         * m4/mbsrchr.m4: Remove file.
3731         * modules/mbsrchr (Files): Remove it and m4/mbrtowc.m4
3732         (configure.ac): Remove gl_FUNC_MBSRCHR invocation.
3733
3734         * m4/mbssep.m4: Remove file.
3735         * modules/mbssep (Files): Remove it and m4/mbrtowc.m4
3736         (configure.ac): Remove gl_FUNC_MBSSEP invocation.
3737
3738         * m4/mbsspn.m4: Remove file.
3739         * modules/mbsspn (Files): Remove it and m4/mbrtowc.m4
3740         (configure.ac): Remove gl_FUNC_MBSSPN invocation.
3741
3742         * m4/mbsstr.m4: Remove file.
3743         * modules/mbsstr (Files): Remove it and m4/mbrtowc.m4
3744         (configure.ac): Remove gl_FUNC_MBSSTR invocation.
3745
3746         * m4/mbstok_r.m4: Remove file.
3747         * modules/mbstok_r (Files): Remove it and m4/mbrtowc.m4
3748         (configure.ac): Remove gl_FUNC_MBSTOK_R invocation.
3749
3750         * m4/mbswidth.m4 (gl_MBSWIDTH): Remove AC_FUNC_MBRTOWC invocation.
3751
3752         * m4/quotearg.m4 (gl_QUOTEARG): Remove mbsinit test and
3753         AC_TYPE_MBSTATE_T, AC_FUNC_MBRTOWC invocations.
3754
3755         * modules/trim (configure.ac): Remove AC_FUNC_MBRTOWC invocation.
3756
3757 2009-03-08  Bruno Haible  <bruno@clisp.org>
3758
3759         Tests for module 'unicase/ulc-casecmp'.
3760         * modules/unicase/ulc-casecmp-tests: New file.
3761         * tests/unicase/test-ulc-casecmp1.sh: New file.
3762         * tests/unicase/test-ulc-casecmp2.sh: New file.
3763         * tests/unicase/test-ulc-casecmp.c: New file.
3764
3765         New module 'unicase/ulc-casecmp'.
3766         * lib/unicase.h (ulc_casecmp): New declaration.
3767         * lib/unicase/ulc-casecmp.c: New file.
3768         * lib/unicase/u-casecmp.h (FUNC): Change argument types to
3769         'const SRC_UNIT *'.
3770         * lib/unicase/u8-casecmp.c (SRC_UNIT): Define like UNIT.
3771         * lib/unicase/u16-casecmp.c (SRC_UNIT): Likewise.
3772         * lib/unicase/u32-casecmp.c (SRC_UNIT): Likewise.
3773         * modules/unicase/ulc-casecmp: New file.
3774
3775         Tests for module 'unicase/u32-is-cased'.
3776         * modules/unicase/u32-is-cased-tests: New file.
3777         * tests/unicase/test-u32-is-cased.c: New file.
3778
3779         Tests for module 'unicase/u16-is-cased'.
3780         * modules/unicase/u16-is-cased-tests: New file.
3781         * tests/unicase/test-u16-is-cased.c: New file.
3782
3783         Tests for module 'unicase/u8-is-cased'.
3784         * modules/unicase/u8-is-cased-tests: New file.
3785         * tests/unicase/test-u8-is-cased.c: New file.
3786         * tests/unicase/test-is-cased.h: New file.
3787
3788         New module 'unicase/u32-is-cased'.
3789         * lib/unicase/u32-is-cased.c: New file.
3790         * modules/unicase/u32-is-cased: New file.
3791
3792         New module 'unicase/u16-is-cased'.
3793         * lib/unicase/u16-is-cased.c: New file.
3794         * modules/unicase/u16-is-cased: New file.
3795
3796         New module 'unicase/u8-is-cased'.
3797         * lib/unicase/u8-is-cased.c: New file.
3798         * lib/unicase/u-is-cased.h: New file.
3799         * modules/unicase/u8-is-cased: New file.
3800
3801         Tests for module 'unicase/u32-is-casefolded'.
3802         * modules/unicase/u32-is-casefolded-tests: New file.
3803         * tests/unicase/test-u32-is-casefolded.c: New file.
3804
3805         Tests for module 'unicase/u16-is-casefolded'.
3806         * modules/unicase/u16-is-casefolded-tests: New file.
3807         * tests/unicase/test-u16-is-casefolded.c: New file.
3808
3809         Tests for module 'unicase/u8-is-casefolded'.
3810         * modules/unicase/u8-is-casefolded-tests: New file.
3811         * tests/unicase/test-u8-is-casefolded.c: New file.
3812         * tests/unicase/test-is-casefolded.h: New file.
3813
3814         New module 'unicase/u32-is-casefolded'.
3815         * lib/unicase/u32-is-casefolded.c: New file.
3816         * modules/unicase/u32-is-casefolded: New file.
3817
3818         New module 'unicase/u16-is-casefolded'.
3819         * lib/unicase/u16-is-casefolded.c: New file.
3820         * modules/unicase/u16-is-casefolded: New file.
3821
3822         New module 'unicase/u8-is-casefolded'.
3823         * lib/unicase/u8-is-casefolded.c: New file.
3824         * modules/unicase/u8-is-casefolded: New file.
3825
3826         Tests for module 'unicase/u32-is-titlecase'.
3827         * modules/unicase/u32-is-titlecase-tests: New file.
3828         * tests/unicase/test-u32-is-titlecase.c: New file.
3829
3830         Tests for module 'unicase/u16-is-titlecase'.
3831         * modules/unicase/u16-is-titlecase-tests: New file.
3832         * tests/unicase/test-u16-is-titlecase.c: New file.
3833
3834         Tests for module 'unicase/u8-is-titlecase'.
3835         * modules/unicase/u8-is-titlecase-tests: New file.
3836         * tests/unicase/test-u8-is-titlecase.c: New file.
3837         * tests/unicase/test-is-titlecase.h: New file.
3838
3839         New module 'unicase/u32-is-titlecase'.
3840         * lib/unicase/u32-is-titlecase.c: New file.
3841         * modules/unicase/u32-is-titlecase: New file.
3842
3843         New module 'unicase/u16-is-titlecase'.
3844         * lib/unicase/u16-is-titlecase.c: New file.
3845         * modules/unicase/u16-is-titlecase: New file.
3846
3847         New module 'unicase/u8-is-titlecase'.
3848         * lib/unicase/u8-is-titlecase.c: New file.
3849         * modules/unicase/u8-is-titlecase: New file.
3850
3851         Tests for module 'unicase/u32-is-lowercase'.
3852         * modules/unicase/u32-is-lowercase-tests: New file.
3853         * tests/unicase/test-u32-is-lowercase.c: New file.
3854
3855         Tests for module 'unicase/u16-is-lowercase'.
3856         * modules/unicase/u16-is-lowercase-tests: New file.
3857         * tests/unicase/test-u16-is-lowercase.c: New file.
3858
3859         Tests for module 'unicase/u8-is-lowercase'.
3860         * modules/unicase/u8-is-lowercase-tests: New file.
3861         * tests/unicase/test-u8-is-lowercase.c: New file.
3862         * tests/unicase/test-is-lowercase.h: New file.
3863
3864         New module 'unicase/u32-is-lowercase'.
3865         * lib/unicase/u32-is-lowercase.c: New file.
3866         * modules/unicase/u32-is-lowercase: New file.
3867
3868         New module 'unicase/u16-is-lowercase'.
3869         * lib/unicase/u16-is-lowercase.c: New file.
3870         * modules/unicase/u16-is-lowercase: New file.
3871
3872         New module 'unicase/u8-is-lowercase'.
3873         * lib/unicase/u8-is-lowercase.c: New file.
3874         * modules/unicase/u8-is-lowercase: New file.
3875
3876         Tests for module 'unicase/u32-is-uppercase'.
3877         * modules/unicase/u32-is-uppercase-tests: New file.
3878         * tests/unicase/test-u32-is-uppercase.c: New file.
3879
3880         Tests for module 'unicase/u16-is-uppercase'.
3881         * modules/unicase/u16-is-uppercase-tests: New file.
3882         * tests/unicase/test-u16-is-uppercase.c: New file.
3883
3884         Tests for module 'unicase/u8-is-uppercase'.
3885         * modules/unicase/u8-is-uppercase-tests: New file.
3886         * tests/unicase/test-u8-is-uppercase.c: New file.
3887         * tests/unicase/test-is-uppercase.h: New file.
3888
3889         New module 'unicase/u32-is-uppercase'.
3890         * lib/unicase/u32-is-uppercase.c: New file.
3891         * modules/unicase/u32-is-uppercase: New file.
3892
3893         New module 'unicase/u16-is-uppercase'.
3894         * lib/unicase/u16-is-uppercase.c: New file.
3895         * modules/unicase/u16-is-uppercase: New file.
3896
3897         New module 'unicase/u8-is-uppercase'.
3898         * lib/unicase/u8-is-uppercase.c: New file.
3899         * modules/unicase/u8-is-uppercase: New file.
3900
3901         New module 'unicase/u32-is-invariant'.
3902         * lib/unicase/u32-is-invariant.c: New file.
3903         * modules/unicase/u32-is-invariant: New file.
3904
3905         New module 'unicase/u16-is-invariant'.
3906         * lib/unicase/u16-is-invariant.c: New file.
3907         * modules/unicase/u16-is-invariant: New file.
3908
3909         New module 'unicase/u8-is-invariant'.
3910         * lib/unicase/u8-is-invariant.c: New file.
3911         * lib/unicase/invariant.h: New file.
3912         * lib/unicase/u-is-invariant.h: New file.
3913         * modules/unicase/u8-is-invariant: New file.
3914
3915         Tests for module 'unicase/u32-casecoll'.
3916         * modules/unicase/u32-casecoll-tests: New file.
3917         * tests/unicase/test-u32-casecoll.c: New file.
3918
3919         Tests for module 'unicase/u16-casecoll'.
3920         * modules/unicase/u16-casecoll-tests: New file.
3921         * tests/unicase/test-u16-casecoll.c: New file.
3922
3923         Tests for module 'unicase/u8-casecoll'.
3924         * modules/unicase/u8-casecoll-tests: New file.
3925         * tests/unicase/test-u8-casecoll.c: New file.
3926
3927         New module 'unicase/u32-casecoll'.
3928         * lib/unicase/u32-casecoll.c: New file.
3929         * modules/unicase/u32-casecoll: New file.
3930
3931         New module 'unicase/u16-casecoll'.
3932         * lib/unicase/u16-casecoll.c: New file.
3933         * modules/unicase/u16-casecoll: New file.
3934
3935         New module 'unicase/u8-casecoll'.
3936         * lib/unicase/u8-casecoll.c: New file.
3937         * lib/unicase/u-casecoll.h: New file.
3938         * modules/unicase/u8-casecoll: New file.
3939
3940         New module 'unicase/u32-casexfrm'.
3941         * lib/unicase/u32-casexfrm.c: New file.
3942         * modules/unicase/u32-casexfrm: New file.
3943
3944         New module 'unicase/u16-casexfrm'.
3945         * lib/unicase/u16-casexfrm.c: New file.
3946         * modules/unicase/u16-casexfrm: New file.
3947
3948         New module 'unicase/u8-casexfrm'.
3949         * lib/unicase/u8-casexfrm.c: New file.
3950         * lib/unicase/u-casexfrm.h: New file.
3951         * modules/unicase/u8-casexfrm: New file.
3952
3953         Tests for module 'unicase/u32-casecmp'.
3954         * modules/unicase/u32-casecmp-tests: New file.
3955         * tests/unicase/test-u32-casecmp.c: New file.
3956
3957         Tests for module 'unicase/u16-casecmp'.
3958         * modules/unicase/u16-casecmp-tests: New file.
3959         * tests/unicase/test-u16-casecmp.c: New file.
3960
3961         Tests for module 'unicase/u8-casecmp'.
3962         * modules/unicase/u8-casecmp-tests: New file.
3963         * tests/unicase/test-u8-casecmp.c: New file.
3964         * tests/unicase/test-casecmp.h: New file.
3965
3966         New module 'unicase/u32-casecmp'.
3967         * lib/unicase/u32-casecmp.c: New file.
3968         * modules/unicase/u32-casecmp: New file.
3969
3970         New module 'unicase/u16-casecmp'.
3971         * lib/unicase/u16-casecmp.c: New file.
3972         * modules/unicase/u16-casecmp: New file.
3973
3974         New module 'unicase/u8-casecmp'.
3975         * lib/unicase/u8-casecmp.c: New file.
3976         * lib/unicase/u-casecmp.h: New file.
3977         * modules/unicase/u8-casecmp: New file.
3978
3979         Tests for module 'unicase/u32-casefold'.
3980         * modules/unicase/u32-casefold-tests: New file.
3981         * tests/unicase/test-u32-casefold.c: New file.
3982
3983         Tests for module 'unicase/u16-casefold'.
3984         * modules/unicase/u16-casefold-tests: New file.
3985         * tests/unicase/test-u16-casefold.c: New file.
3986
3987         Tests for module 'unicase/u8-casefold'.
3988         * modules/unicase/u8-casefold-tests: New file.
3989         * tests/unicase/test-u8-casefold.c: New file.
3990
3991         New module 'unicase/u32-casefold'.
3992         * lib/unicase/u32-casefold.c: New file.
3993         * modules/unicase/u32-casefold: New file.
3994
3995         New module 'unicase/u16-casefold'.
3996         * lib/unicase/u16-casefold.c: New file.
3997         * modules/unicase/u16-casefold: New file.
3998
3999         New module 'unicase/u8-casefold'.
4000         * lib/unicase/u8-casefold.c: New file.
4001         * lib/unicase/u-casefold.h: New file.
4002         * modules/unicase/u8-casefold: New file.
4003
4004         New module 'unicase/tocasefold'.
4005         * lib/unicase/casefold.h: New file.
4006         * lib/unicase/tocasefold.c: New file.
4007         * lib/unicase/tocasefold.h: New file, generated by gen-uni-tables.c.
4008         * modules/unicase/tocasefold: New file.
4009
4010         Tests for module 'unicase/u32-totitle'.
4011         * modules/unicase/u32-totitle-tests: New file.
4012         * tests/unicase/test-u32-totitle.c: New file.
4013
4014         Tests for module 'unicase/u16-totitle'.
4015         * modules/unicase/u16-totitle-tests: New file.
4016         * tests/unicase/test-u16-totitle.c: New file.
4017
4018         Tests for module 'unicase/u8-totitle'.
4019         * modules/unicase/u8-totitle-tests: New file.
4020         * tests/unicase/test-u8-totitle.c: New file.
4021
4022         New module 'unicase/u32-totitle'.
4023         * lib/unicase/u32-totitle.c: New file.
4024         * modules/unicase/u32-totitle: New file.
4025
4026         New module 'unicase/u16-totitle'.
4027         * lib/unicase/u16-totitle.c: New file.
4028         * modules/unicase/u16-totitle: New file.
4029
4030         New module 'unicase/u8-totitle'.
4031         * lib/unicase/u8-totitle.c: New file.
4032         * lib/unicase/u-totitle.h: New file.
4033         * modules/unicase/u8-totitle: New file.
4034
4035         Tests for module 'unicase/u32-tolower'.
4036         * modules/unicase/u32-tolower-tests: New file.
4037         * tests/unicase/test-u32-tolower.c: New file.
4038
4039         Tests for module 'unicase/u16-tolower'.
4040         * modules/unicase/u16-tolower-tests: New file.
4041         * tests/unicase/test-u16-tolower.c: New file.
4042
4043         Tests for module 'unicase/u8-tolower'.
4044         * modules/unicase/u8-tolower-tests: New file.
4045         * tests/unicase/test-u8-tolower.c: New file.
4046
4047         New module 'unicase/u32-tolower'.
4048         * lib/unicase/u32-tolower.c: New file.
4049         * modules/unicase/u32-tolower: New file.
4050
4051         New module 'unicase/u16-tolower'.
4052         * lib/unicase/u16-tolower.c: New file.
4053         * modules/unicase/u16-tolower: New file.
4054
4055         New module 'unicase/u8-tolower'.
4056         * lib/unicase/u8-tolower.c: New file.
4057         * modules/unicase/u8-tolower: New file.
4058
4059         Tests for module 'unicase/u32-toupper'.
4060         * modules/unicase/u32-toupper-tests: New file.
4061         * tests/unicase/test-u32-toupper.c: New file.
4062
4063         Tests for module 'unicase/u16-toupper'.
4064         * modules/unicase/u16-toupper-tests: New file.
4065         * tests/unicase/test-u16-toupper.c: New file.
4066
4067         Tests for module 'unicase/u8-toupper'.
4068         * modules/unicase/u8-toupper-tests: New file.
4069         * tests/unicase/test-u8-toupper.c: New file.
4070
4071         New module 'unicase/u32-toupper'.
4072         * lib/unicase/u32-toupper.c: New file.
4073         * modules/unicase/u32-toupper: New file.
4074
4075         New module 'unicase/u16-toupper'.
4076         * lib/unicase/u16-toupper.c: New file.
4077         * modules/unicase/u16-toupper: New file.
4078
4079         New module 'unicase/u8-toupper'.
4080         * lib/unicase/u8-toupper.c: New file.
4081         * modules/unicase/u8-toupper: New file.
4082
4083         New module 'unicase/u32-casemap'.
4084         * lib/unicase/u32-casemap.c: New file.
4085         * modules/unicase/u32-casemap: New file.
4086
4087         New module 'unicase/u16-casemap'.
4088         * lib/unicase/u16-casemap.c: New file.
4089         * modules/unicase/u16-casemap: New file.
4090
4091         New module 'unicase/u8-casemap'.
4092         * lib/unicase/unicasemap.h: New file.
4093         * lib/unicase/u8-casemap.c: New file.
4094         * lib/unicase/u-casemap.h: New file.
4095         * modules/unicase/u8-casemap: New file.
4096
4097         New module 'unicase/special-casing'.
4098         * lib/unicase/special-casing.h: New file.
4099         * lib/unicase/special-casing.c: New file.
4100         * lib/unicase/special-casing-table.gperf: New file, generated by
4101         gen-uni-tables.c.
4102         * modules/unicase/special-casing: New file.
4103
4104         Tests for module 'unicase/locale-language'.
4105         * modules/unicase/locale-language-tests: New file.
4106         * tests/unicase/test-locale-language.sh: New file.
4107         * tests/unicase/test-locale-language.c: New file.
4108
4109         New module 'unicase/locale-language'.
4110         * lib/unicase/locale-language.c: New file.
4111         * lib/unicase/locale-languages.gperf: New file.
4112         * modules/unicase/locale-language: New file.
4113
4114         Generate more tables for case conversion and case folding.
4115         * lib/gen-uni-tables.c (SCC_*): New enum items.
4116         (struct special_casing_rule): New type.
4117         (casing_rules, num_casing_rules, allocated_casing_rules): New
4118         variables.
4119         (add_casing_rule, fill_casing_rules): New functions.
4120         (struct casefold_rule): New type.
4121         (casefolding_rules, num_casefolding_rules,
4122         allocated_casefolding_rules): New variables.
4123         (fill_casefolding_rules): New function.
4124         (unicode_casefold): New variable.
4125         (to_casefold, redistribute_casefolding_rules, compare_casing_rules,
4126         sort_casing_rules, output_casing_rules): New functions.
4127         (main): Accept to more arguments: SpecialCasing.txt and
4128         CaseFolding.txt. Invoke fill_casing_rules, fill_casefolding_rules,
4129         redistribute_casefolding_rules, sort_casing_rules, output_casing_rules.
4130         Output mapping for casefolding.
4131
4132         * lib/unicase.h: Include stdbool.h, uninorm.h.
4133         (u8_toupper, u16_toupper, u32_toupper, u8_tolower, u16_tolower,
4134         u32_tolower, u8_totitle, u16_totitle, u32_totitle): Add nf argument.
4135         (u8_casefold, u16_casefold, u32_casefold): Add iso639_language and nf
4136         arguments.
4137         (u8_casecmp, u16_casecmp, u32_casecmp): Add iso639_language, nf,
4138         resultp arguments.
4139         (u8_casexfrm, u16_casexfrm, u32_casexfrm): New declarations.
4140         (u8_casecoll, u16_casecoll, u32_casecoll): Add iso639_language, nf,
4141         resultp arguments.
4142         (u8_is_uppercase, u16_is_uppercase, u32_is_uppercase, u8_is_lowercase,
4143         u16_is_lowercase, u32_is_lowercase, u8_is_titlecase, u16_is_titlecase,
4144         u32_is_titlecase, u8_is_casefolded, u16_is_casefolded,
4145         u32_is_casefolded, u8_is_cased, u16_is_cased, u32_is_cased): New
4146         declarations.
4147         * modules/unicase/base (Depends-on): Add uninorm/base, stdbool.
4148
4149 2009-03-08  Bruno Haible  <bruno@clisp.org>
4150
4151         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp, u8_normcoll,
4152         u16_normcoll, u32_normcoll): Rename argument 'result' to 'resultp'.
4153         * lib/uninorm/u-normcmp.h (FUNC): Likewise.
4154         * lib/uninorm/u-normcoll.h (FUNC): Likewise.
4155
4156 2009-03-07  Bruno Haible  <bruno@clisp.org>
4157
4158         Adjust u*_normcmp, u*_normcoll API.
4159         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp, u8_normcoll,
4160         u16_normcoll, u32_normcoll): Change failure conventions.
4161         * lib/uninorm/u-normcmp.h (FUNC): Upon failure, store the error code in
4162         errno and return -1.
4163         * lib/uninorm/u-normcoll.h (FUNC): Likewise.
4164
4165 2009-03-07  Bruno Haible  <bruno@clisp.org>
4166
4167         Tests for module 'uninorm/u32-normcoll'.
4168         * modules/uninorm/u32-normcoll-tests: New file.
4169         * tests/uninorm/test-u32-normcoll.c: New file.
4170
4171         Tests for module 'uninorm/u16-normcoll'.
4172         * modules/uninorm/u16-normcoll-tests: New file.
4173         * tests/uninorm/test-u16-normcoll.c: New file.
4174
4175         Tests for module 'uninorm/u8-normcoll'.
4176         * modules/uninorm/u8-normcoll-tests: New file.
4177         * tests/uninorm/test-u8-normcoll.c: New file.
4178
4179 2009-03-07  Bruno Haible  <bruno@clisp.org>
4180
4181         * tests/uninorm/test-u32-normcmp.h: New file, extracted from
4182         tests/uninorm/test-u32-normcmp.c.
4183         * tests/uninorm/test-u32-normcmp.c: Include it.
4184         (test_nonascii): New function, extracted from main. Add some more
4185         tests.
4186         (main): Invoke test_ascii and test_nonascii.
4187         * modules/uninorm/u32-normcmp-tests (Files): Add
4188         tests/uninorm/test-u32-normcmp.h.
4189         (Depends-on): Remove uninorm/u32-normcmp.
4190
4191         * tests/uninorm/test-u16-normcmp.h: New file, extracted from
4192         tests/uninorm/test-u16-normcmp.c.
4193         * tests/uninorm/test-u16-normcmp.c: Include it.
4194         (test_nonascii): New function, extracted from main. Add some more
4195         tests.
4196         (main): Invoke test_ascii and test_nonascii.
4197         * modules/uninorm/u16-normcmp-tests (Files): Add
4198         tests/uninorm/test-u16-normcmp.h.
4199         (Depends-on): Remove uninorm/u16-normcmp.
4200
4201         * tests/uninorm/test-u8-normcmp.h: New file, extracted from
4202         tests/uninorm/test-u8-normcmp.c.
4203         * tests/uninorm/test-u8-normcmp.c: Include it.
4204         (test_nonascii): New function, extracted from main. Add some more
4205         tests.
4206         (main): Invoke test_ascii and test_nonascii.
4207         * modules/uninorm/u8-normcmp-tests (Files): Add
4208         tests/uninorm/test-u8-normcmp.h.
4209         (Depends-on): Remove uninorm/u8-normcmp.
4210
4211 2009-03-07  Bruno Haible  <bruno@clisp.org>
4212
4213         New module 'uninorm/u32-normcoll'.
4214         * lib/uninorm/u32-normcoll.c: New file.
4215         * modules/uninorm/u32-normcoll: New file.
4216
4217         New module 'uninorm/u16-normcoll'.
4218         * lib/uninorm/u16-normcoll.c: New file.
4219         * modules/uninorm/u16-normcoll: New file.
4220
4221         New module 'uninorm/u8-normcoll'.
4222         * lib/uninorm.h (u8_normcoll, u16_normcoll, u32_normcoll): New
4223         declarations.
4224         * lib/uninorm/u8-normcoll.c: New file.
4225         * lib/uninorm/u-normcoll.h: New file.
4226         * modules/uninorm/u8-normcoll: New file.
4227
4228         New module 'uninorm/u32-normxfrm'.
4229         * lib/uninorm/u32-normxfrm.c: New file.
4230         * modules/uninorm/u32-normxfrm: New file.
4231
4232         New module 'uninorm/u16-normxfrm'.
4233         * lib/uninorm/u16-normxfrm.c: New file.
4234         * modules/uninorm/u16-normxfrm: New file.
4235
4236         New module 'uninorm/u8-normxfrm'.
4237         * lib/uninorm.h (u8_normxfrm, u16_normxfrm, u32_normxfrm): New
4238         declarations.
4239         * lib/uninorm/u8-normxfrm.c: New file.
4240         * lib/uninorm/u-normxfrm.h: New file.
4241         * modules/uninorm/u8-normxfrm: New file.
4242
4243 2009-03-07  Bruno Haible  <bruno@clisp.org>
4244
4245         * modules/uninorm/u8-normcmp (Depends-on): Add uninorm/base.
4246         * modules/uninorm/u16-normcmp (Depends-on): Likewise.
4247         * modules/uninorm/u32-normcmp (Depends-on): Likewise.
4248
4249 2009-03-07  Bruno Haible  <bruno@clisp.org>
4250
4251         New module 'memxfrm'.
4252         * lib/memxfrm.h: New file.
4253         * lib/memxfrm.c: New file.
4254         * modules/memxfrm: New file.
4255
4256 2009-03-07  Bruno Haible  <bruno@clisp.org>
4257
4258         New module 'memcmp2'.
4259         * lib/memcmp2.h: New file.
4260         * lib/memcmp2.c: New file.
4261         * modules/memcmp2: New file.
4262
4263 2009-03-07  Bruno Haible  <bruno@clisp.org>
4264
4265         Tests for module 'uninorm/decomposing-form'.
4266         * modules/uninorm/decomposing-form-tests: New file.
4267         * tests/uninorm/test-decomposing-form.c: New file.
4268
4269         New module 'uninorm/decomposing-form'.
4270         * lib/uninorm.h (uninorm_decomposing_form): New declaration.
4271         * lib/uninorm/normalize-internal.h (struct unicode_normalization_form):
4272         Add 'decomposing_variant' field.
4273         * lib/uninorm/decomposing-form.c: New file.
4274         * lib/uninorm/nfc.c (uninorm_nfc): Update.
4275         * lib/uninorm/nfd.c (uninorm_nfd): Update.
4276         * lib/uninorm/nfkc.c (uninorm_nfkc): Update.
4277         * lib/uninorm/nfkd.c (uninorm_nfkd): Update.
4278         * modules/uninorm/decomposing-form: New file.
4279         * modules/uninorm/nfc (Depends-on): Add uninorm/nfd.
4280         * modules/uninorm/nfkc (Depends-on): Add uninorm/nfkd.
4281
4282 2009-03-07  Bruno Haible  <bruno@clisp.org>
4283
4284         * lib/uninorm/u-normcmp.h (FUNC): Use stack=allocated buffers for small
4285         strings.
4286
4287 2009-03-06  Bruno Haible  <bruno@clisp.org>
4288
4289         Tests for module 'uninorm/u32-normcmp'.
4290         * tests/uninorm/test-u32-normcmp.c: New file.
4291         * modules/uninorm/u32-normcmp-tests: New file.
4292
4293         Tests for module 'uninorm/u16-normcmp'.
4294         * tests/uninorm/test-u16-normcmp.c: New file.
4295         * modules/uninorm/u16-normcmp-tests: New file.
4296
4297         Tests for module 'uninorm/u8-normcmp'.
4298         * tests/uninorm/test-u8-normcmp.c: New file.
4299         * modules/uninorm/u8-normcmp-tests: New file.
4300
4301         New module 'uninorm/u32-normcmp'.
4302         * lib/uninorm/u32-normcmp.c: New file.
4303         * modules/uninorm/u32-normcmp: New file.
4304
4305         New module 'uninorm/u16-normcmp'.
4306         * lib/uninorm/u16-normcmp.c: New file.
4307         * modules/uninorm/u16-normcmp: New file.
4308
4309         New module 'uninorm/u8-normcmp'.
4310         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp): New
4311         declarations.
4312         * lib/uninorm/u8-normcmp.c: New file.
4313         * lib/uninorm/u-normcmp.h: New file.
4314         * modules/uninorm/u8-normcmp: New file.
4315
4316 2009-03-06  Bruno Haible  <bruno@clisp.org>
4317
4318         * lib/w32spawn.h (dup_noinherit): Add cast, to avoid gcc warning.
4319         Reported by Eric Blake.
4320
4321 2009-03-06  Eric Blake  <ebb9@byu.net>
4322             Bruno Haible  <bruno@clisp.org>
4323
4324         * lib/spawni.c (__spawni) [WIN32_NATIVE]: Define as a stub.
4325         * modules/posix_spawn-tests (configure.ac): Define POSIX_SPAWN_PORTED
4326         condition.
4327         (Makefile.am): Do nothing if POSIX_SPAWN_PORTED is false.
4328         * modules/posix_spawnp-tests (configure.ac): Define POSIX_SPAWN_PORTED
4329         condition.
4330         (Makefile.am): Do nothing if POSIX_SPAWN_PORTED is false.
4331
4332 2009-03-06  Eric Blake  <ebb9@byu.net>
4333
4334         * lib/execute.c (execute) [WIN32_NATIVE]: Cast arguments of spawnvpe,
4335         to avoid compiler warnings.
4336         * lib/pipe.c (create_pipe) [WIN32_NATIVE]: Likewise.
4337
4338 2009-03-05  Bruno Haible  <bruno@clisp.org>
4339
4340         * tests/test-ftell.c (main): Disable test beyond end of file on
4341         FreeMiNT.
4342         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
4343
4344 2009-03-05  Kamil Dudka  <kdudka@redhat.com>
4345
4346         * lib/filevercmp.c: Move hidden files up in ordering.
4347         * tests/test-filevercmp.c: Add tests for hidden files.
4348
4349 2009-03-04  Bruno Haible  <bruno@clisp.org>
4350
4351         * modules/visibility (Makefile.am): Augment AM_CFLAGS.
4352         * gnulib-tool (func_emit_lib_Makefile_am): Emit initialization of
4353         AM_CFLAGS.
4354         Reported by Simon Josefsson.
4355
4356 2009-03-03  Bruno Haible  <bruno@clisp.org>
4357
4358         * doc/visibility.texi: Recommend to use HAVE_VISIBILITY as a C macro.
4359         Reported by Simon Josefsson.
4360
4361         * doc/ld-version-script.texi: Update node reference.
4362
4363 2009-03-03  Bruno Haible  <bruno@clisp.org>
4364
4365         * modules/visibility (License): Change to 'unlimited'.
4366         Suggested by Simon Josefsson.
4367
4368 2009-03-03  Jim Meyering  <meyering@redhat.com>
4369
4370         unlinkdir: cannot_unlink_dir may modify process state
4371         * lib/unlinkdir.c (cannot_unlink_dir): Add a comment warning that
4372         it's neither thread-safe nor appropriate for use in a library.
4373
4374 2009-03-03  Eric Blake  <ebb9@byu.net>
4375
4376         test-closein: silence test under Darwin
4377         * tests/test-closein.sh: Ignore stderr from cat, since we don't
4378         care if it dies from EPIPE or EBADF.
4379
4380 2009-03-03  Bruno Haible  <bruno@clisp.org>
4381
4382         * doc/gnulib.texi: Include visibility.texi and ld-version-script.texi
4383         earlier.
4384         * doc/visibility.texi: Fix @node and @section.
4385
4386 2009-03-03  Simon Josefsson  <simon@josefsson.org>
4387
4388         * doc/gnulib.texi: Link to sections for ld version script and
4389         visibility.
4390         * doc/visibility.texi: Add @node and @section.
4391         * modules/ld-version-script: New module.
4392         * m4/ld-version-script.m4: New file.
4393         * doc/ld-version-script.texi: New file.
4394
4395 2009-03-02  David Lutterkort  <lutter@redhat.com>
4396
4397         * lib/safe-alloc.h (__GNUC_PREREQ): New macro.
4398         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
4399
4400 2009-03-02  Bruno Haible  <bruno@clisp.org>
4401
4402         * doc/visibility.texi: Mention libtool's -export-symbols option.
4403
4404 2009-03-02  Jim Meyering  <meyering@redhat.com>
4405
4406         announce-gen: new option: --no-print-checksums
4407         * build-aux/announce-gen (usage): Describe it.
4408         (print_checksums): Print a newline here, not in the [*] footnote.
4409         (main): Honor it.
4410
4411 2009-03-01  Bruno Haible  <bruno@clisp.org>
4412
4413         Use socklen_t in the native Windows replacements prototypes.
4414         * lib/sys_socket.in.h (rpl_getsockopt, rpl_setsockopt): Use socklen_t
4415         instead of 'int'.
4416         * lib/getsockopt.c (rpl_getsockopt): Likewise.
4417         * lib/setsockopt.c (rpl_setsockopt): Likewise.
4418         * modules/getsockopt (Depends-on): Add socklen.
4419         * modules/setsockopt (Depends-on): Add socklen.
4420
4421 2009-03-01  Bruno Haible  <bruno@clisp.org>
4422
4423         * gnulib-tool (sed): Do alias as "sed --posix" if sed's version is at
4424         least 4.2.
4425
4426 2009-03-01  Eric Blake  <ebb9@byu.net>
4427             Bruno Haible  <bruno@clisp.org>
4428
4429         * lib/wait-process.h (wait_subprocess): Describe effect of termsigp on
4430         error messages.
4431         * lib/wait-process.c (wait_subprocess): Omit error message about
4432         deadly signal sent to the child of termsigp != NULL.
4433
4434 2009-03-01  Eric Blake  <ebb9@byu.net>
4435
4436         * lib/wait-process.c (wait_subprocess): Remove unnecessary cast.
4437
4438 2009-03-01  Bruno Haible  <bruno@clisp.org>
4439
4440         Avoid a gcc warning.
4441         * tests/test-sched.c (b): Make global.
4442         Reported by Eric Blake.
4443
4444 2009-01-19  Martin Lambers  <marlam@marlam.de>
4445
4446         Provide POSIX semantics for socket timeout options on W32.
4447         * lib/setsockopt.c: Convert struct timeval to milliseconds on W32.
4448         * lib/getsockopt.c: Convert milliseconds to struct timeval on W32.
4449         * modules/setsockopt: Depend on sys_time module for struct timeval.
4450         * modules/getsockopt: Depend on sys_time module for struct timeval.
4451
4452 2009-03-01  Simon Josefsson  <simon@josefsson.org>
4453
4454         * lib/gai_strerror.c (values): Use EAI_INPROGRESS instead of
4455         __USE_GNU, for consistency with netdb.in.h.
4456         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
4457
4458 2009-03-01  Bruno Haible  <bruno@clisp.org>
4459
4460         More support for FreeMiNT.
4461         * lib/fseeko.c (rpl_fseeko): Complete last commit.
4462         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
4463
4464 2009-03-01  Bruno Haible  <bruno@clisp.org>
4465
4466         More support for FreeMiNT.
4467         * lib/fpurge.c (fpurge): Correct last commit.
4468         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
4469
4470 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4471
4472         Fix unportable awk script in vc-list-files.
4473         * build-aux/vc-list-files: In the replacement awk script, use
4474         substr with a second argument of 1, not zero.
4475         Report by Simon Josefsson.
4476
4477 2009-02-28  Bruno Haible  <bruno@clisp.org>
4478
4479         More support for FreeMiNT.
4480         * lib/freading.c (freading) [__MINT__]: Use new macros that were added
4481         to FreeMiNT today.
4482         * lib/fwriting.c (fwriting): Likewise.
4483         Based on patch by Alan Hourihane <alanh@fairlite.co.uk>.
4484
4485 2009-02-28  Bruno Haible  <bruno@clisp.org>
4486
4487         * tests/test-freadseek.c (main): Disable test beyond end of file on
4488         FreeMiNT.
4489         * tests/test-ftello.c (main): Likewise.
4490         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
4491
4492 2009-02-28  Bruno Haible  <bruno@clisp.org>
4493
4494         Add tentative support for FreeMiNT.
4495         * lib/fbufmode.c (fbufmode) [__MINT__]: Add conditional code.
4496         * lib/fpurge.c (fpurge): Likewise.
4497         * lib/freadable.c (freadable): Likewise.
4498         * lib/freading.c (freading): Likewise.
4499         * lib/freadptr.c (freadptr): Likewise.
4500         * lib/freadseek.c (freadptrinc): Likewise.
4501         * lib/fseeko.c (rpl_fseeko): Likewise.
4502         * lib/fseterr.c (fseterr): Likewise.
4503         * lib/fwritable.c (fwritable): Likewise.
4504         * lib/fwriting.c (fwriting): Likewise.
4505         * lib/freadahead.c (freadahead): Likewise, based on code by Alan
4506         Hourihane.
4507         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
4508
4509 2009-02-28  Bruno Haible  <bruno@clisp.org>
4510
4511         * lib/wait-process.h (wait_subprocess): Clarify restriction regarding
4512         SIGCHLD.
4513         Reported by Jim Meyering.
4514
4515 2009-02-28  Bruno Haible  <bruno@clisp.org>
4516
4517         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Separate the two first tests.
4518         Mention the results of these tests on various platforms.
4519         * doc/posix-functions/fprintf.texi: Mention platforms in canonical
4520         order.
4521         * doc/posix-functions/printf.texi: Likewise.
4522         * doc/posix-functions/snprintf.texi: Likewise.
4523         * doc/posix-functions/sprintf.texi: Likewise.
4524         * doc/posix-functions/vfprintf.texi: Likewise.
4525         * doc/posix-functions/vprintf.texi: Likewise.
4526         * doc/posix-functions/vsnprintf.texi: Likewise.
4527         * doc/posix-functions/vsprintf.texi: Likewise.
4528         * doc/glibc-functions/obstack_printf.texi: Likewise.
4529         * doc/glibc-functions/obstack_vprintf.texi: Likewise.
4530
4531 2009-02-28  Bruno Haible  <bruno@clisp.org>
4532
4533         * build-aux/po/Makefile.in.in: Update from GNU gettext 0.17.
4534         Reported by Loïc Minier <lool@dooz.org>.
4535
4536 2009-02-27  Bruno Haible  <bruno@clisp.org>
4537
4538         * gnulib-tool (func_import): Make the sed expression used to create the
4539         sed script for updating the .gitignore file POSIX compliant.
4540         Reported by Eric Blake.
4541
4542 2009-02-27  Bruno Haible  <bruno@clisp.org>
4543
4544         * gnulib-tool (sed): Don't alias as "sed --posix".
4545         Reported by Eric Blake.
4546
4547 2009-02-27  Bruno Haible  <bruno@clisp.org>
4548
4549         Avoid test link errors.
4550         * modules/uninorm/nfc-tests (test_u32_nfc_big_LDADD): New variable.
4551         * modules/uninorm/nfd-tests (test_u32_nfd_big_LDADD): New variable.
4552         * modules/uninorm/nfkc-tests (test_u32_nfkc_big_LDADD): New variable.
4553         * modules/uninorm/nfkd-tests (test_u32_nfkd_big_LDADD): New variable.
4554         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
4555
4556 2009-02-27  Bruno Haible  <bruno@clisp.org>
4557
4558         Avoid spurious "(cached)" in configure output.
4559         * m4/gnulib-common.m4 (gl_CACHE_VAL_SILENT): New macro.
4560         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Use it instead of AC_CACHE_VAL.
4561         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
4562         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
4563         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
4564         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Likewise.
4565         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
4566         * m4/stdarg.m4 (gl_STDARG_H): Likewise.
4567         Reported by Eric Blake.
4568
4569 2009-02-27  Eric Blake  <ebb9@byu.net>
4570
4571         printf: fix regression in previous patch
4572         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Fix compilation error.
4573
4574 2009-02-27  Bruno Haible  <bruno@clisp.org>
4575
4576         * lib/inttypes.in.h: Test merely whether _LP64 is defined, not its
4577         value.
4578         * lib/stdint.in.h: Likewise.
4579         Suggested by Eric Blake. Reported by Peter Bray <pdb_ml@yahoo.com.au>.
4580
4581 2009-02-27  Eric Blake  <ebb9@byu.net>
4582
4583         doc: mention more functions added in cygwin 1.7.0
4584         * doc/posix-functions/mbsnrtowcs.texi: Mention recent cygwin 1.7.0
4585         addition.
4586         * doc/posix-functions/open_wmemstream.texi: Likewise.
4587         * doc/posix-functions/wcsnlen.texi: Likewise.
4588         * doc/posix-functions/wcsnrtombs.texi: Likewise.
4589         * doc/posix-functions/wcstod.texi: Likewise.
4590         * doc/posix-functions/wcstof.texi: Likewise.
4591         * doc/posix-functions/wcstoimax.texi: Likewise.
4592         * doc/posix-functions/wcstok.texi: Likewise.
4593         * doc/posix-functions/wcstoumax.texi: Likewise.
4594
4595         Detect bug in cygwin 1.5.x *printf on 1-character %ls.
4596         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Enhance filter.
4597         * doc/posix-functions/fprintf.texi: Update.
4598         * doc/posix-functions/printf.texi: Update.
4599         * doc/posix-functions/snprintf.texi: Update.
4600         * doc/posix-functions/sprintf.texi: Update.
4601         * doc/posix-functions/vfprintf.texi: Update.
4602         * doc/posix-functions/vprintf.texi: Update.
4603         * doc/posix-functions/vsnprintf.texi: Update.
4604         * doc/posix-functions/vsprintf.texi: Update.
4605         * doc/glibc-functions/obstack_printf.texi: Update.
4606         * doc/glibc-functions/obstack_vprintf.texi: Update.
4607
4608 2009-02-26  Eric Blake  <ebb9@byu.net>
4609
4610         avoid gcc 3.4.3 bug on long double NaN on Irix 6.5
4611         * tests/nan.h (NaNl): Rewrite as function on Irix, to avoid
4612         compilation bug by using runtime conversion.
4613         * m4/isfinite.m4 (gl_ISFINITE): Likewise.
4614         * m4/isnanl.m4 (gl_FUNC_ISNANL): Likewise.
4615         * modules/ceill-tests (Files): Use nan.h.
4616         * modules/floorl-tests (Files): Likewise.
4617         * modules/frexpl-tests (Files): Likewise.
4618         * modules/isnanl-tests (Files): Likewise.
4619         * modules/ldexpl-tests (Files): Likewise.
4620         * modules/roundl-tests (Files): Likewise.
4621         * modules/truncl-tests (Files): Likewise.
4622         * tests/test-ceill.c (main): Use a working NaN.
4623         * tests/test-floorl.c (main): Likewise.
4624         * tests/test-frexpl.c (main): Likewise.
4625         * tests/test-isnan.c (test_long_double): Likewise.
4626         * tests/test-isnanl.h (main): Likewise.
4627         * tests/test-ldexpl.h (main): Likewise.
4628         * tests/test-roundl.h (main): Likewise.
4629         * tests/test-truncl.h (main): Likewise.
4630         See http://lists.gnu.org/archive/html/bug-gnulib/2009-02/msg00190.html.
4631
4632 2009-02-26  Eric Blake  <ebb9@byu.net>
4633             Bruno Haible  <bruno@clisp.org>
4634
4635         Work around a *printf bug with %ls on Solaris.
4636         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Also test whether, when a
4637         precision is specified, sprintf stops converting the wide string
4638         argument when the number of bytes that have been produced by this
4639         conversion equals or exceeds the precision.
4640         * doc/posix-functions/fprintf.texi: Update.
4641         * doc/posix-functions/printf.texi: Update.
4642         * doc/posix-functions/snprintf.texi: Update.
4643         * doc/posix-functions/sprintf.texi: Update.
4644         * doc/posix-functions/vfprintf.texi: Update.
4645         * doc/posix-functions/vprintf.texi: Update.
4646         * doc/posix-functions/vsnprintf.texi: Update.
4647         * doc/posix-functions/vsprintf.texi: Update.
4648         * doc/glibc-functions/obstack_printf.texi: Update.
4649         * doc/glibc-functions/obstack_vprintf.texi: Update.
4650
4651 2009-02-26  Eric Blake  <ebb9@byu.net>
4652
4653         stdlib: favor compiler check of random.h
4654         * m4/stdlib_h.m4 (gl_STDLIB_H): Skip preprocessor check.  Needed
4655         to avoid an ObjC random.h installed by Swarm.
4656
4657 2009-02-26  Bruno Haible  <bruno@clisp.org>
4658
4659         Work around *printf bug with %g directive and 0.0 on HP-UX 10.20.
4660         * m4/printf.m4 (gl_PRINTF_INFINITE): Also test for %g output of -0.0.
4661         Reported by Gary V. Vaughan <gary@gnu.org>.
4662
4663 2009-02-26  Bruno Haible  <bruno@clisp.org>
4664
4665         Fix *printf behaviour regarding the %ls directive.
4666         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): New macro.
4667         * lib/vasnprintf.c (local_wcslen, VASNPRINTF): Handle
4668         NEED_PRINTF_DIRECTIVE_LS.
4669         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_LS): New macro.
4670         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
4671         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
4672         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS and test its result. Invoke
4673         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS.
4674         * m4/dprintf-posix.m4 (gl_FUNC_DPRINTF_POSIX): Likewise.
4675         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
4676         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
4677         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
4678         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
4679         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
4680         * m4/vdprintf-posix.m4 (gl_FUNC_VDPRINTF_POSIX): Likewise.
4681         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
4682         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
4683         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
4684         * doc/posix-functions/fprintf.texi: Update.
4685         * doc/posix-functions/printf.texi: Update.
4686         * doc/posix-functions/snprintf.texi: Update.
4687         * doc/posix-functions/sprintf.texi: Update.
4688         * doc/posix-functions/vfprintf.texi: Update.
4689         * doc/posix-functions/vprintf.texi: Update.
4690         * doc/posix-functions/vsnprintf.texi: Update.
4691         * doc/posix-functions/vsprintf.texi: Update.
4692         * doc/glibc-functions/obstack_printf.texi: Update.
4693         * doc/glibc-functions/obstack_vprintf.texi: Update.
4694         Reported by Eric Blake.
4695
4696 2009-02-25  Bruno Haible  <bruno@clisp.org>
4697
4698         * m4/mbrtowc.m4 (gl_MBRTOWC_NUL_RETVAL): Update guess for Solaris 8
4699         with known value.
4700         Reported by Gary V. Vaughan <gary@gnu.org>.
4701
4702 2009-02-25  Bruno Haible  <bruno@clisp.org>
4703
4704         Work around mbrtowc bug in zh_CN.GB18030 locale on Solaris 8.
4705         * m4/mbrtowc.m4 (gl_MBRTOWC_SANITYCHECK): New macro.
4706         (gl_MBSTATE_T_BROKEN): Invoke it. Replace mbstate_t when it says "no".
4707         * doc/posix-functions/mbrtowc.texi: Document the Solaris 8 bug.
4708         Reported by Gary V. Vaughan <gary@gnu.org>.
4709
4710 2009-02-25  Bruno Haible  <bruno@clisp.org>
4711
4712         Work around broken INT8_MAX, UINT8_MAX etc. values on HP-UX 11.23.
4713         * m4/stdint.m4 (gl_STDINT_H): Also check whether the expansions of
4714         INT8_MAX, UINT8_MAX etc. contain casts to elementary types.
4715         * doc/posix-headers/stdint.texi: Mention the HP-UX bug.
4716         Reported by Gary V. Vaughan <gary@gnu.org>.
4717
4718 2009-02-25  Eric Blake  <ebb9@byu.net>
4719
4720         tests: skip fseek/ftell tests if ungetc is broken
4721         * m4/ungetc.m4: New file.
4722         * modules/fseek-tests: Split test, so ungetc dependency is
4723         separate from rest of test.
4724         * modules/fseeko-tests: Likewise.
4725         * modules/ftell-tests: Likewise.
4726         * modules/ftello-tests: Likewise.
4727         * tests/test-fseek.c (main): Isolate ungetc dependency.
4728         * tests/test-fseeko.c (main): Likewise.
4729         * tests/test-ftell.c (main): Likewise.
4730         * tests/test-ftello.c (main): Likewise.
4731         * tests/test-fseek2.sh: New file.
4732         * tests/test-fseeko2.sh: Likewise.
4733         * tests/test-ftell2.sh: Likewise.
4734         * tests/test-ftello2.sh: Likewise.
4735
4736 2009-02-25  Ondřej Vašík  <ovasik@redhat.com>
4737
4738         test-getaddrinfo: fix usage of skip return code 77
4739         * tests/test-gettaddrinfo.c: Return skip code 77 only
4740         for first occurance of skip (4x77 is not 77)
4741
4742 2009-02-25  Gary V. Vaughan  <gary@gnu.org>
4743
4744         strtod: avoid C99 decl-after-statement
4745         * m4/strtod.m4 (gl_FUNC_STRTOD): Rearrange declaration.
4746
4747 2009-02-24  Eric Blake  <ebb9@byu.net>
4748
4749         strtod: detect HP-UX 11.31 bug
4750         * m4/strtod.m4 (gl_FUNC_STRTOD): Detect errno handling bug.
4751         Reported by Gary V. Vaughan.
4752
4753 2009-02-23  Bruno Haible  <bruno@clisp.org>
4754
4755         Fix invalid read past end of memory block.
4756         * lib/vasnprintf.c (DCHAR_SET): Define.
4757         (local_wcslen): Define only when needed.
4758         (local_strnlen, local_wcsnlen): New functions.
4759         (VASNPRINTF) [!USE_SNPRINTF && HAVE_WCHAR_T]: Implement the %s and %ls
4760         directives that involve a conversion ourselves.
4761         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for strnlen,
4762         wcsnlen, mbrtowc, wcrtomb.
4763         * tests/test-vasnprintf-posix.c (test_function): Add tests for %.*s.
4764         * tests/test-vasprintf-posix.c (test_function): Likewise.
4765         * tests/test-snprintf-posix.h (test_function): Likewise.
4766         * tests/test-sprintf-posix.h (test_function): Likewise.
4767         Reported by Ben Pfaff <blp@cs.stanford.edu>.
4768
4769 2009-02-22  Bruno Haible  <bruno@clisp.org>
4770
4771         Implement new clarified decomposition of Hangul syllables.
4772         * lib/uninorm/decomposition.c (uc_decomposition): For Hangul syllables
4773         of type LTV, return only a pairwise decomposition.
4774         * lib/uninorm/canonical-decomposition.c (uc_canonical_decomposition):
4775         Likewise.
4776         * tests/uninorm/test-decomposition.c (main): Updated expected result.
4777         * tests/uninorm/test-canonical-decomposition.c (main): Likewise.
4778         * tests/uninorm/test-compat-decomposition.c (main): Likewise.
4779
4780 2009-02-22  Bruno Haible  <bruno@clisp.org>
4781
4782         * lib/uninorm/u-normalize-internal.h (FUNC): At the end, handle
4783         zero-length results and shrink excess allocated memory.
4784         * tests/uninorm/test-u8-nfc.c (test_u8_nfc): Check empty string result.
4785         * tests/uninorm/test-u8-nfd.c (test_u8_nfd): Likewise.
4786         * tests/uninorm/test-u8-nfkc.c (test_u8_nfkc): Likewise.
4787         * tests/uninorm/test-u8-nfkd.c (test_u8_nfkd): Likewise.
4788         * tests/uninorm/test-u16-nfc.c (test_u16_nfc): Likewise.
4789         * tests/uninorm/test-u16-nfd.c (test_u16_nfd): Likewise.
4790         * tests/uninorm/test-u16-nfkc.c (test_u16_nfkc): Likewise.
4791         * tests/uninorm/test-u16-nfkd.c (test_u16_nfkd): Likewise.
4792         * tests/uninorm/test-u32-nfc.c (test_u32_nfc): Likewise.
4793         * tests/uninorm/test-u32-nfd.c (test_u32_nfd): Likewise.
4794         * tests/uninorm/test-u32-nfkc.c (test_u32_nfkc): Likewise.
4795         * tests/uninorm/test-u32-nfkd.c (test_u32_nfkd): Likewise.
4796
4797 2009-02-21  Bruno Haible  <bruno@clisp.org>
4798
4799         * doc/gnulib.texi: Include safe-alloc.texi earlier.
4800         * doc/safe-alloc.texi: Terminate sentences with a period. Use two
4801         spaces after a period. Put a space between a macro name and its
4802         argument list. Trivial rewordings.
4803         * lib/safe-alloc.c: Include safe-alloc.h right after config.h.
4804         * tests/test-safe-alloc.c: Likewise. Include stdlib.h.
4805         (main): Return 0 explicitly.
4806
4807 2009-02-21  Bruno Haible  <bruno@clisp.org>
4808
4809         Tests for module 'uninorm/filter'.
4810         * tests/uninorm/test-uninorm-filter-nfc.c: New file.
4811         * modules/uninorm/filter-tests: New file.
4812
4813         New module 'uninorm/filter'.
4814         * lib/uninorm.h (uninorm_filter_create, uninorm_filter_write,
4815         uninorm_filter_flush, uninorm_filter_free): New declarations.
4816         * lib/uninorm/uninorm-filter.c: New file.
4817         * modules/uninorm/filter: New file.
4818
4819 2009-02-21  Bruno Haible  <bruno@clisp.org>
4820
4821         Tests for module 'uninorm/nfkc'.
4822         * tests/uninorm/test-nfkc.c: New file.
4823         * tests/uninorm/test-u8-nfkc.c: New file.
4824         * tests/uninorm/test-u16-nfkc.c: New file.
4825         * tests/uninorm/test-u32-nfkc.c: New file.
4826         * tests/uninorm/test-u32-nfkc-big.sh: New file.
4827         * tests/uninorm/test-u32-nfkc-big.c: New file.
4828         * modules/uninorm/nfkc-tests: New file.
4829
4830         New module 'uninorm/nfkc'.
4831         * lib/uninorm/nfkc.c: New file.
4832         * modules/uninorm/nfkc: New file.
4833
4834         Tests for module 'uninorm/nfkd'.
4835         * tests/uninorm/test-nfkd.c: New file.
4836         * tests/uninorm/test-u8-nfkd.c: New file.
4837         * tests/uninorm/test-u16-nfkd.c: New file.
4838         * tests/uninorm/test-u32-nfkd.c: New file.
4839         * tests/uninorm/test-u32-nfkd-big.sh: New file.
4840         * tests/uninorm/test-u32-nfkd-big.c: New file.
4841         * modules/uninorm/nfkd-tests: New file.
4842
4843         New module 'uninorm/nfkd'.
4844         * lib/uninorm/nfkd.c: New file.
4845         * modules/uninorm/nfkd: New file.
4846
4847         Tests for module 'uninorm/nfc'.
4848         * tests/uninorm/test-nfc.c: New file.
4849         * tests/uninorm/test-u8-nfc.c: New file.
4850         * tests/uninorm/test-u16-nfc.c: New file.
4851         * tests/uninorm/test-u32-nfc.c: New file.
4852         * tests/uninorm/test-u32-nfc-big.sh: New file.
4853         * tests/uninorm/test-u32-nfc-big.c: New file.
4854         * modules/uninorm/nfc-tests: New file.
4855
4856         New module 'uninorm/nfc'.
4857         * lib/uninorm/nfc.c: New file.
4858         * modules/uninorm/nfc: New file.
4859
4860         Tests for module 'uninorm/nfd'.
4861         * tests/uninorm/test-nfd.c: New file.
4862         * tests/uninorm/test-u8-nfd.c: New file.
4863         * tests/uninorm/test-u16-nfd.c: New file.
4864         * tests/uninorm/test-u32-nfd.c: New file.
4865         * tests/uninorm/test-u32-nfd-big.sh: New file.
4866         * tests/uninorm/test-u32-nfd-big.c: New file.
4867         * tests/uninorm/test-u32-normalize-big.h: New file.
4868         * tests/uninorm/test-u32-normalize-big.c: New file.
4869         * tests/uninorm/NormalizationTest.txt: New file, created from
4870         Unicode 5.1.0 NormalizationTest.txt.
4871         * modules/uninorm/nfd-tests: New file.
4872
4873         New module 'uninorm/nfd'.
4874         * lib/uninorm/nfd.c: New file.
4875         * modules/uninorm/nfd: New file.
4876
4877         New module 'uninorm/u32-normalize'.
4878         * lib/uninorm/u32-normalize.c: New file.
4879         * modules/uninorm/u32-normalize: New file.
4880
4881         New module 'uninorm/u16-normalize'.
4882         * lib/uninorm/u16-normalize.c: New file.
4883         * modules/uninorm/u16-normalize: New file.
4884
4885         New module 'uninorm/u8-normalize'.
4886         * lib/uninorm/u8-normalize.c: New file.
4887         * lib/uninorm/normalize-internal.h: New file.
4888         * lib/uninorm/u-normalize-internal.h: New file.
4889         * modules/uninorm/u8-normalize: New file.
4890
4891         New module 'uninorm/decompose-internal'.
4892         * lib/uninorm/decompose-internal.c: New file.
4893         * modules/uninorm/decompose-internal: New file.
4894
4895         Tests for module 'uninorm/composition'.
4896         * tests/uninorm/test-composition.c: New file.
4897         * modules/uninorm/composition-tests: New file.
4898
4899         New module 'uninorm/composition'.
4900         * lib/uninorm/composition.c: New file.
4901         * lib/uninorm/composition-table.gperf: New file, generated by
4902         gen-uni-tables.
4903         * modules/uninorm/composition: New file.
4904
4905         Tests for module 'uninorm/compat-decomposition'.
4906         * tests/uninorm/test-compat-decomposition.c: New file.
4907         * modules/uninorm/compat-decomposition-tests: New file.
4908
4909         New module 'uninorm/compat-decomposition'.
4910         * lib/uninorm/decompose-internal.h: New file.
4911         * lib/uninorm/compat-decomposition.c: New file.
4912         * modules/uninorm/compat-decomposition: New file.
4913
4914         Tests for module 'uninorm/canonical-decomposition'.
4915         * tests/uninorm/test-canonical-decomposition.c: New file.
4916         * modules/uninorm/canonical-decomposition-tests: New file.
4917
4918         New module 'uninorm/canonical-decomposition'.
4919         * lib/uninorm/canonical-decomposition.c: New file.
4920         * modules/uninorm/canonical-decomposition: New file.
4921
4922         Tests for module 'uninorm/decomposition'.
4923         * tests/uninorm/test-decomposition.c: New file.
4924         * modules/uninorm/decomposition-tests: New file.
4925
4926         New module 'uninorm/decomposition'.
4927         * lib/uninorm/decomposition.c: New file.
4928         * modules/uninorm/decomposition: New file.
4929
4930         New module 'uninorm/decomposition-table'.
4931         * lib/uninorm/decomposition-table.h: New file.
4932         * lib/uninorm/decomposition-table.c: New file.
4933         * lib/uninorm/decomposition-table1.h: New file, generated by
4934         gen-uni-tables.
4935         * lib/uninorm/decomposition-table2.h: New file, generated by
4936         gen-uni-tables.
4937         * modules/uninorm/decomposition-table: New file.
4938
4939         * lib/gen-uni-tables.c (MAX_DECOMP_LENGTH): New macro.
4940         (UC_DECOMP_*): New enumeration items.
4941         (get_decomposition): New function.
4942         (struct decomp_table): New type.
4943         (output_decomposition, output_decomposition_tables): New functions.
4944         (unicode_composition_exclusions): New variable.
4945         (fill_composition_exclusions, debug_output_composition_tables): New
4946         functions.
4947         (main): Accept one more argument. Invoke fill_composition_exclusions.
4948         Output decomposition and composition tables.
4949
4950         New module 'uninorm/base'.
4951         * lib/uninorm.h: New file.
4952         * lib/unictype.h: Update comment.
4953         * modules/uninorm/base: New file.
4954
4955 2009-02-21  David Lutterkort  <lutter@redhat.com>
4956
4957         Tests for module 'safe-alloc'.
4958         * tests/test-safe-alloc.c: New file.
4959         * modules/safe-alloc-tests: New file.
4960
4961         New module 'safe-alloc'.
4962         * lib/safe-alloc.h: New file.
4963         * lib/safe-alloc.c: New file.
4964         * m4/safe-alloc.m4: New file.
4965         * modules/safe-alloc: New file.
4966         * doc/safe-alloc.texi: New file.
4967         * doc/gnulib.texi: Include it.
4968         * MODULES.html.sh (Memory management functions <stdlib.h>): Add
4969         safe-alloc.
4970
4971 2009-02-18  Bruno Haible  <bruno@clisp.org>
4972
4973         Fix link error on non-glibc systems.
4974         * modules/uniwbrk/ulc-wordbreaks-tests (test_ulc_wordbreaks_LDADD): New
4975         variable.
4976         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
4977
4978 2009-02-18  Jim Meyering  <meyering@redhat.com>
4979
4980         fts: avoid used-uninitialized error due to recent change
4981         * lib/fts.c (fts_read): Guard uses of the new member,
4982         parent->fts_n_dirs_remaining, since it's not relevant for
4983         the parent of a directory specified on the command-line.
4984
4985 2009-02-17  James Youngman  <jay@gnu.org>
4986             Bruno Haible  <bruno@clisp.org>
4987
4988         * m4/include_next.m4: Reformulate comment.
4989
4990 2009-02-16  Jim Meyering  <meyering@redhat.com>
4991
4992         fts: add #if guards so that the fts_lgpl module still builds
4993         * lib/fts.c: Guard just-added hash-table-using parts with
4994         #if GNULIB_FTS, so as not to break builds of the fts_lgpl module.
4995         Reported by Simon Josefsson.
4996
4997 2009-02-15  Bruno Haible  <bruno@clisp.org>
4998
4999         * modules/array-mergesort-tests: New file.
5000         * tests/test-array-mergesort.c: New file.
5001
5002         New module 'array-mergesort'.
5003         * modules/array-mergesort: New file.
5004         * lib/array-mergesort.h: New file.
5005
5006 2009-02-15  Bruno Haible  <bruno@clisp.org>
5007
5008         Fix 2009-02-07 commit.
5009         * lib/gen-uni-tables.c (output_predicate, output_category,
5010         output_combclass, output_bidi_category, output_decimal_digit,
5011         output_digit, output_numeric, output_mirror, output_scripts,
5012         output_ident_category, output_simple_mapping): Fix format directives.
5013         (output_lbp, output_wbp): Don't convert -1 to a size_t implicitly.
5014
5015 2009-02-15  Albert Chin-A-Young  <china@thewrittenword.com>
5016
5017         * m4/include_next.m4: Update comment about IBM C 9.0/10.1 bug, now that
5018         fixes are available from IBM.
5019
5020 2009-02-13  Jim Meyering  <meyering@redhat.com>
5021
5022         fts: arrange not to stat non-directories in more cases
5023         This makes GNU find (when it doesn't need to stat each file)
5024         *much* more efficient at traversing reiserfs file systems.
5025         * lib/fts_.h (struct ftsent) [fts_n_dirs_remaining]: New member.
5026         (struct FTS) [fts_leaf_optimization_works_ht]: Add member.
5027         * lib/fts.c (fts_close): Free ->fts_leaf_optimization_works_ht.
5028         (S_MAGIC_REISERFS, S_MAGIC_PROC): Define.
5029         (leaf_optimization_applies): New function.
5030         (LCO_hash, LCO_compare): New helper functions.
5031         (link_count_optimize_ok): New function.
5032         (fts_stat): Initialize new member (if dir).
5033         (fts_read): Decrement parent's fts_n_dirs_remaining count if
5034         we've just stat'ed a directory.  Skip the stat call when possible.
5035         ---
5036         Note this AFS-related exchange:
5037         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=143111
5038         and note find's pioctl call in find/fstype.c.
5039         But that is necessary only if you want to enable the
5040         optimization for AFS, and for now, I don't.
5041
5042         fts: move a function definition "up" (no semantic change)
5043         * lib/fts.c (dirent_inode_sort_may_be_useful): Move definition
5044         "up" to precede upcoming use of a related function.
5045
5046 2009-02-11  Jim Meyering  <meyering@redhat.com>
5047
5048         fts: correct internal computation of nlinks (optimization-related)
5049         * lib/fts.c (fts_build): ISSET(FTS_NOSTAT) has no bearing on
5050         whether the current entry is a directory, so don't test it.
5051
5052 2009-02-10  Bruno Haible  <bruno@clisp.org>
5053
5054         Tests for module 'uniwbrk/ulc-wordbreaks'.
5055         * modules/uniwbrk/ulc-wordbreaks-tests: New file.
5056         * tests/uniwbrk/test-ulc-wordbreaks.sh: New file.
5057         * tests/uniwbrk/test-ulc-wordbreaks.c: New file.
5058
5059         Tests for module 'uniwbrk/u32-wordbreaks'.
5060         * modules/uniwbrk/u32-wordbreaks-tests: New file.
5061         * tests/uniwbrk/test-u32-wordbreaks.c: New file.
5062
5063         Tests for module 'uniwbrk/u16-wordbreaks'.
5064         * modules/uniwbrk/u16-wordbreaks-tests: New file.
5065         * tests/uniwbrk/test-u16-wordbreaks.c: New file.
5066
5067         Tests for module 'uniwbrk/u8-wordbreaks'.
5068         * modules/uniwbrk/u8-wordbreaks-tests: New file.
5069         * tests/uniwbrk/test-u8-wordbreaks.c: New file.
5070
5071 2009-02-10  Bruno Haible  <bruno@clisp.org>
5072
5073         * modules/uniwbrk/u8-wordbreaks (Depends-on): Add uniwbrk/wordbreak
5074         property.
5075         * modules/uniwbrk/u16-wordbreaks (Depends-on): Likewise.
5076         * modules/uniwbrk/u32-wordbreaks (Depends-on): Likewise.
5077         * modules/uniwbrk/ulc-wordbreaks (Depends-on): Add localcharset.
5078
5079 2009-02-10  Simon Josefsson  <simon@josefsson.org>
5080
5081         * m4/sockets.m4: Call AC_C_INLINE since sockets.h now can use
5082         inline keywords.  Reported by Bruno Haible <bruno@clisp.org>.
5083
5084 2009-02-10  Bruno Haible  <bruno@clisp.org>
5085
5086         * lib/unilbrk/lbrktables.h: Renamed from lib/unilbrk/tables.h.
5087         * lib/unilbrk/lbrktables.c: Renamed from lib/unilbrk/tables.c.
5088         * modules/unilbrk/tables (Files, Makefile.am, Include): Update.
5089         * lib/unilbrk/u8-possible-linebreaks.c: Update.
5090         * lib/unilbrk/u16-possible-linebreaks.c: Likewise.
5091         * lib/unilbrk/u32-possible-linebreaks.c: Likewise.
5092
5093 2009-02-09  Simon Josefsson  <simon@josefsson.org>
5094
5095         * lib/sockets.h (gl_fd_to_handle): New function.
5096
5097         * tests/test-sockets.c: Call gl_fd_to_handle.
5098
5099 2009-02-09  Bruno Haible  <bruno@clisp.org>
5100
5101         * doc/havelib.texi: Document the conventions on bi-arch systems.
5102
5103 2009-02-08  Bruno Haible  <bruno@clisp.org>
5104
5105         Document the AC_LIB_LINKFLAGS macro.
5106         * doc/havelib.texi: New file, mostly written on 2005-05-24.
5107         * doc/gnulib.texi: Include it.
5108
5109 2009-02-08  Bruno Haible  <bruno@clisp.org>
5110
5111         Fix wrong order of sections, compared to TOC.
5112         * doc/gnulib.texi: Include relocatable-maint.texi after the
5113         "Regular expressions" node, not before.
5114
5115 2009-02-08  Bruno Haible  <bruno@clisp.org>
5116
5117         Tests for module 'unicase/totitle'.
5118         * modules/unicase/totitle-tests: New file.
5119
5120         Tests for module 'unicase/tolower'.
5121         * modules/unicase/tolower-tests: New file.
5122
5123         Tests for module 'unicase/toupper'.
5124         * modules/unicase/toupper-tests: New file.
5125         * tests/unicase/test-mapping-part1.h: New file.
5126         * tests/unicase/test-mapping-part2.h: New file.
5127
5128         New module 'unicase/totitle'.
5129         * modules/unicase/totitle: New file.
5130         * lib/unicase/totitle.c: New file.
5131
5132         New module 'unicase/tolower'.
5133         * modules/unicase/tolower: New file.
5134         * lib/unicase/tolower.c: New file.
5135
5136         New module 'unicase/toupper'.
5137         * modules/unicase/toupper: New file.
5138         * lib/unicase/toupper.c: New file.
5139         * lib/unicase/simple-mapping.h: New file.
5140
5141         * lib/gen-uni-tables.c (output_simple_mapping_test): New function.
5142         (mapping_table): New structure.
5143         (output_simple_mapping): New function.
5144         (main): Invoke output_simple_mapping_test and output_simple_mapping.
5145         * modules/gen-uni-tables (Description): Update.
5146         * lib/unicase/toupper.h: New file, automatically generated by
5147         gen-uni-tables.
5148         * lib/unicase/tolower.h: New file, automatically generated by
5149         gen-uni-tables.
5150         * lib/unicase/totitle.h: New file, automatically generated by
5151         gen-uni-tables.
5152         * tests/unicase/test-uc_toupper.c: New file, automatically generated by
5153         gen-uni-tables.
5154         * tests/unicase/test-uc_tolower.c: New file, automatically generated by
5155         gen-uni-tables.
5156         * tests/unicase/test-uc_totitle.c: New file, automatically generated by
5157         gen-uni-tables.
5158
5159         New module 'unicase/base'.
5160         * modules/unicase/base: New file.
5161         * lib/unicase.h: New file.
5162
5163 2009-02-08  Bruno Haible  <bruno@clisp.org>
5164
5165         New module 'uniwbrk/ulc-wordbreaks'.
5166         * modules/uniwbrk/ulc-wordbreaks: New file.
5167         * lib/uniwbrk/ulc-wordbreaks.c: New file.
5168
5169         New module 'uniwbrk/u32-wordbreaks'.
5170         * modules/uniwbrk/u32-wordbreaks: New file.
5171         * lib/uniwbrk/u32-wordbreaks.c: New file.
5172
5173         New module 'uniwbrk/u16-wordbreaks'.
5174         * modules/uniwbrk/u16-wordbreaks: New file.
5175         * lib/uniwbrk/u16-wordbreaks.c: New file.
5176
5177         New module 'uniwbrk/u8-wordbreaks'.
5178         * modules/uniwbrk/u8-wordbreaks: New file.
5179         * lib/uniwbrk/u8-wordbreaks.c: New file.
5180         * lib/uniwbrk/u-wordbreaks.h: New file.
5181
5182         New module 'uniwbrk/table'.
5183         * modules/uniwbrk/table: New file.
5184         * lib/uniwbrk/wbrktable.h: New file.
5185         * lib/uniwbrk/wbrktable.c: New file.
5186
5187         New module 'uniwbrk/wordbreak-property'.
5188         * modules/uniwbrk/wordbreak-property: New file.
5189         * lib/uniwbrk/wordbreak-property.c: New file.
5190
5191         * lib/gen-uni-tables.c (WBP_*): New enum items.
5192         (get_wbp, debug_output_wbp, debug_output_wbrk_tables): New functions.
5193         (unicode_org_wbp): New variable.
5194         (fill_org_wbp, debug_output_org_wbp, debug_output_org_wbrk_tables):
5195         New functions.
5196         (wbp_table): New structure.
5197         (output_wbp, output_wbrk_tables): New functions.
5198         (main): Accept additional argument. Invoke fill_org_wbp,
5199         debug_output_wbrk_tables, debug_output_org_wbrk_tables,
5200         output_wbrk_tables.
5201         * modules/gen-uni-tables (Description): Update.
5202         * lib/uniwbrk/wbrkprop.h: New file, automatically generated by
5203         gen-uni-tables.
5204
5205         New module 'uniwbrk/base'.
5206         * modules/uniwbrk/base: New file.
5207         * lib/uniwbrk.h: New file.
5208
5209 2009-02-08  Bruno Haible  <bruno@clisp.org>
5210
5211         Update to Unicode 5.1.0.
5212         * lib/gen-uni-tables.c (is_property_alphabetic): Include
5213         U+2185..U+2188.
5214         (is_property_default_ignorable_code_point): Don't include characters
5215         of category Cc or Cs and not-a-characters.
5216         (get_lbp): Assume REVISION_22. Special handling of U+0609, U+060A,
5217         U+0D79, U+109E, U+109F, U+A60C.
5218         * lib/unictype/bidi_of.h: Regenerated.
5219         * lib/unictype/blocks.h: Regenerated.
5220         * lib/unictype/categ_C.h: Regenerated.
5221         * lib/unictype/categ_Cf.h: Regenerated.
5222         * lib/unictype/categ_Cn.h: Regenerated.
5223         * lib/unictype/categ_L.h: Regenerated.
5224         * lib/unictype/categ_Ll.h: Regenerated.
5225         * lib/unictype/categ_Lm.h: Regenerated.
5226         * lib/unictype/categ_Lo.h: Regenerated.
5227         * lib/unictype/categ_Lu.h: Regenerated.
5228         * lib/unictype/categ_M.h: Regenerated.
5229         * lib/unictype/categ_Mc.h: Regenerated.
5230         * lib/unictype/categ_Me.h: Regenerated.
5231         * lib/unictype/categ_Mn.h: Regenerated.
5232         * lib/unictype/categ_N.h: Regenerated.
5233         * lib/unictype/categ_Nd.h: Regenerated.
5234         * lib/unictype/categ_Nl.h: Regenerated.
5235         * lib/unictype/categ_No.h: Regenerated.
5236         * lib/unictype/categ_P.h: Regenerated.
5237         * lib/unictype/categ_Pd.h: Regenerated.
5238         * lib/unictype/categ_Pe.h: Regenerated.
5239         * lib/unictype/categ_Pf.h: Regenerated.
5240         * lib/unictype/categ_Pi.h: Regenerated.
5241         * lib/unictype/categ_Po.h: Regenerated.
5242         * lib/unictype/categ_Ps.h: Regenerated.
5243         * lib/unictype/categ_S.h: Regenerated.
5244         * lib/unictype/categ_Sk.h: Regenerated.
5245         * lib/unictype/categ_Sm.h: Regenerated.
5246         * lib/unictype/categ_So.h: Regenerated.
5247         * lib/unictype/categ_of.h: Regenerated.
5248         * lib/unictype/combining.h: Regenerated.
5249         * lib/unictype/ctype_alnum.h: Regenerated.
5250         * lib/unictype/ctype_alpha.h: Regenerated.
5251         * lib/unictype/ctype_graph.h: Regenerated.
5252         * lib/unictype/ctype_lower.h: Regenerated.
5253         * lib/unictype/ctype_print.h: Regenerated.
5254         * lib/unictype/ctype_punct.h: Regenerated.
5255         * lib/unictype/ctype_upper.h: Regenerated.
5256         * lib/unictype/decdigit.h: Regenerated.
5257         * lib/unictype/digit.h: Regenerated.
5258         * lib/unictype/mirror.h: Regenerated.
5259         * lib/unictype/numeric.h: Regenerated.
5260         * lib/unictype/pr_alphabetic.h: Regenerated.
5261         * lib/unictype/pr_bidi_arabic_digit.h: Regenerated.
5262         * lib/unictype/pr_bidi_arabic_right_to_left.h: Regenerated.
5263         * lib/unictype/pr_bidi_boundary_neutral.h: Regenerated.
5264         * lib/unictype/pr_bidi_eur_num_terminator.h: Regenerated.
5265         * lib/unictype/pr_bidi_left_to_right.h: Regenerated.
5266         * lib/unictype/pr_bidi_non_spacing_mark.h: Regenerated.
5267         * lib/unictype/pr_bidi_other_neutral.h: Regenerated.
5268         * lib/unictype/pr_combining.h: Regenerated.
5269         * lib/unictype/pr_dash.h: Regenerated.
5270         * lib/unictype/pr_decimal_digit.h: Regenerated.
5271         * lib/unictype/pr_default_ignorable_code_point.h: Regenerated.
5272         * lib/unictype/pr_deprecated.h: Regenerated.
5273         * lib/unictype/pr_diacritic.h: Regenerated.
5274         * lib/unictype/pr_extender.h: Regenerated.
5275         * lib/unictype/pr_format_control.h: Regenerated.
5276         * lib/unictype/pr_grapheme_base.h: Regenerated.
5277         * lib/unictype/pr_grapheme_extend.h: Regenerated.
5278         * lib/unictype/pr_grapheme_link.h: Regenerated.
5279         * lib/unictype/pr_id_continue.h: Regenerated.
5280         * lib/unictype/pr_id_start.h: Regenerated.
5281         * lib/unictype/pr_ideographic.h: Regenerated.
5282         * lib/unictype/pr_ignorable_control.h: Regenerated.
5283         * lib/unictype/pr_lowercase.h: Regenerated.
5284         * lib/unictype/pr_math.h: Regenerated.
5285         * lib/unictype/pr_numeric.h: Regenerated.
5286         * lib/unictype/pr_other_alphabetic.h: Regenerated.
5287         * lib/unictype/pr_other_default_ignorable_code_point.h: Regenerated.
5288         * lib/unictype/pr_other_grapheme_extend.h: Regenerated.
5289         * lib/unictype/pr_other_id_continue.h: Regenerated.
5290         * lib/unictype/pr_other_lowercase.h: Regenerated.
5291         * lib/unictype/pr_other_math.h: Regenerated.
5292         * lib/unictype/pr_punctuation.h: Regenerated.
5293         * lib/unictype/pr_sentence_terminal.h: Regenerated.
5294         * lib/unictype/pr_soft_dotted.h: Regenerated.
5295         * lib/unictype/pr_terminal_punctuation.h: Regenerated.
5296         * lib/unictype/pr_unassigned_code_value.h: Regenerated.
5297         * lib/unictype/pr_unified_ideograph.h: Regenerated.
5298         * lib/unictype/pr_uppercase.h: Regenerated.
5299         * lib/unictype/pr_xid_continue.h: Regenerated.
5300         * lib/unictype/pr_xid_start.h: Regenerated.
5301         * lib/unictype/pr_zero_width.h: Regenerated.
5302         * lib/unictype/scripts.h: Regenerated.
5303         * lib/unictype/scripts_byname.gperf: Regenerated.
5304         * lib/unictype/sy_java_ident.h: Regenerated.
5305         * lib/unilbrk/lbrkprop1.h: Regenerated.
5306         * lib/unilbrk/lbrkprop2.h: Regenerated.
5307         * tests/unictype/test-categ_C.c: Regenerated.
5308         * tests/unictype/test-categ_Cf.c: Regenerated.
5309         * tests/unictype/test-categ_Cn.c: Regenerated.
5310         * tests/unictype/test-categ_L.c: Regenerated.
5311         * tests/unictype/test-categ_Ll.c: Regenerated.
5312         * tests/unictype/test-categ_Lm.c: Regenerated.
5313         * tests/unictype/test-categ_Lo.c: Regenerated.
5314         * tests/unictype/test-categ_Lu.c: Regenerated.
5315         * tests/unictype/test-categ_M.c: Regenerated.
5316         * tests/unictype/test-categ_Mc.c: Regenerated.
5317         * tests/unictype/test-categ_Me.c: Regenerated.
5318         * tests/unictype/test-categ_Mn.c: Regenerated.
5319         * tests/unictype/test-categ_N.c: Regenerated.
5320         * tests/unictype/test-categ_Nd.c: Regenerated.
5321         * tests/unictype/test-categ_Nl.c: Regenerated.
5322         * tests/unictype/test-categ_No.c: Regenerated.
5323         * tests/unictype/test-categ_P.c: Regenerated.
5324         * tests/unictype/test-categ_Pd.c: Regenerated.
5325         * tests/unictype/test-categ_Pe.c: Regenerated.
5326         * tests/unictype/test-categ_Pf.c: Regenerated.
5327         * tests/unictype/test-categ_Pi.c: Regenerated.
5328         * tests/unictype/test-categ_Po.c: Regenerated.
5329         * tests/unictype/test-categ_Ps.c: Regenerated.
5330         * tests/unictype/test-categ_S.c: Regenerated.
5331         * tests/unictype/test-categ_Sk.c: Regenerated.
5332         * tests/unictype/test-categ_Sm.c: Regenerated.
5333         * tests/unictype/test-categ_So.c: Regenerated.
5334         * tests/unictype/test-ctype_alnum.c: Regenerated.
5335         * tests/unictype/test-ctype_alpha.c: Regenerated.
5336         * tests/unictype/test-ctype_graph.c: Regenerated.
5337         * tests/unictype/test-ctype_lower.c: Regenerated.
5338         * tests/unictype/test-ctype_print.c: Regenerated.
5339         * tests/unictype/test-ctype_punct.c: Regenerated.
5340         * tests/unictype/test-ctype_upper.c: Regenerated.
5341         * tests/unictype/test-decdigit.h: Regenerated.
5342         * tests/unictype/test-digit.h: Regenerated.
5343         * tests/unictype/test-numeric.h: Regenerated.
5344         * tests/unictype/test-pr_alphabetic.c: Regenerated.
5345         * tests/unictype/test-pr_bidi_arabic_digit.c: Regenerated.
5346         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Regenerated.
5347         * tests/unictype/test-pr_bidi_boundary_neutral.c: Regenerated.
5348         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Regenerated.
5349         * tests/unictype/test-pr_bidi_left_to_right.c: Regenerated.
5350         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Regenerated.
5351         * tests/unictype/test-pr_bidi_other_neutral.c: Regenerated.
5352         * tests/unictype/test-pr_combining.c: Regenerated.
5353         * tests/unictype/test-pr_dash.c: Regenerated.
5354         * tests/unictype/test-pr_decimal_digit.c: Regenerated.
5355         * tests/unictype/test-pr_default_ignorable_code_point.c: Regenerated.
5356         * tests/unictype/test-pr_deprecated.c: Regenerated.
5357         * tests/unictype/test-pr_diacritic.c: Regenerated.
5358         * tests/unictype/test-pr_extender.c: Regenerated.
5359         * tests/unictype/test-pr_format_control.c: Regenerated.
5360         * tests/unictype/test-pr_grapheme_base.c: Regenerated.
5361         * tests/unictype/test-pr_grapheme_extend.c: Regenerated.
5362         * tests/unictype/test-pr_grapheme_link.c: Regenerated.
5363         * tests/unictype/test-pr_id_continue.c: Regenerated.
5364         * tests/unictype/test-pr_id_start.c: Regenerated.
5365         * tests/unictype/test-pr_ideographic.c: Regenerated.
5366         * tests/unictype/test-pr_ignorable_control.c: Regenerated.
5367         * tests/unictype/test-pr_lowercase.c: Regenerated.
5368         * tests/unictype/test-pr_math.c: Regenerated.
5369         * tests/unictype/test-pr_numeric.c: Regenerated.
5370         * tests/unictype/test-pr_other_alphabetic.c: Regenerated.
5371         * tests/unictype/test-pr_other_default_ignorable_code_point.c:
5372         Regenerated.
5373         * tests/unictype/test-pr_other_grapheme_extend.c: Regenerated.
5374         * tests/unictype/test-pr_other_id_continue.c: Regenerated.
5375         * tests/unictype/test-pr_other_lowercase.c: Regenerated.
5376         * tests/unictype/test-pr_other_math.c: Regenerated.
5377         * tests/unictype/test-pr_punctuation.c: Regenerated.
5378         * tests/unictype/test-pr_sentence_terminal.c: Regenerated.
5379         * tests/unictype/test-pr_soft_dotted.c: Regenerated.
5380         * tests/unictype/test-pr_terminal_punctuation.c: Regenerated.
5381         * tests/unictype/test-pr_unassigned_code_value.c: Regenerated.
5382         * tests/unictype/test-pr_unified_ideograph.c: Regenerated.
5383         * tests/unictype/test-pr_uppercase.c: Regenerated.
5384         * tests/unictype/test-pr_xid_continue.c: Regenerated.
5385         * tests/unictype/test-pr_xid_start.c: Regenerated.
5386         * tests/unictype/test-pr_zero_width.c: Regenerated.
5387
5388         Update to Unicode 5.1.0.
5389         * lib/uniwidth/width.c (nonspacing_table_data): Add U+0487,
5390         U+0616..U+061A, U+0A51, U+0A75, U+0B44, U+0B62..U+0B63, U+0C62..U+0C63,
5391         U+0D44, U+0D62..U+0D63, U+1033..U+1035, U+103A, U+103D..U+103E,
5392         U+105E..U+1060, U+1071..U+1074, U+1082, U+1085..U+1086, U+108D,
5393         U+1B80..U+1B81, U+1BA2..U+1BA5, U+1BA8..U+1BA9, U+1C2C..U+1C33,
5394         U+1C36..U+1C37, U+1DCB..U+1DE6, U+2064, U+20F0, U+2DE0..U+2DFF,
5395         U+A66F..U+A672, U+A67C..U+A67D, U+A8C4, U+A926..U+A92D, U+A947..U+A951,
5396         U+AA29..U+AA2E, U+AA31..U+AA32, U+AA35..U+AA36, U+AA43, U+AA4C,
5397         U+FE24..U+FE26, U+101FD. Remove U+1929..U+192B.
5398         (nonspacing_table_ind): Update.
5399         * tests/uniwidth/test-uc_width2.sh: Update expected result.
5400
5401         Update to Unicode 5.1.0.
5402         * lib/uniname/gen-uninames.lisp (main): Add the range 0x1Fxxx to the
5403         code transform.
5404         * lib/uniname/uniname.c (unicode_character_name,
5405         unicode_name_character): Add the range 0x1Fxxx to the code transform.
5406         * lib/uniname/uninames.h: Regenerated.
5407         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.1.0.
5408
5409 2009-02-07  Bruno Haible  <bruno@clisp.org>
5410
5411         Merge gen-ctype and gen-lbrk into a single program.
5412         * lib/gen-uni-tables.c: New file, incorporating
5413         lib/unictype/gen-ctype.c and lib/unilbrk/gen-lbrk.c.
5414         Add directory prefixes to the names of the generated files.
5415         * lib/unictype/gen-ctype.c: Remove file.
5416         * lib/unilbrk/gen-lbrk.c: Remove file.
5417         * modules/gen-uni-tables: New file.
5418         * modules/unictype/gen-ctype: Remove file.
5419         * modules/unilbrk/gen-lbrk: Remove file.
5420
5421 2009-02-07  Bruno Haible  <bruno@clisp.org>
5422
5423         * lib/unistr.h (u8_strcoll, u16_strcoll, u32_strcoll): New declations.
5424
5425         New module 'unistr/u32-strcoll'.
5426         * modules/unistr/u32-strcoll: New file.
5427         * lib/unistr/u32-strcoll.c: New file.
5428
5429         New module 'unistr/u16-strcoll'.
5430         * modules/unistr/u16-strcoll: New file.
5431         * lib/unistr/u16-strcoll.c: New file.
5432
5433         New module 'unistr/u8-strcoll'.
5434         * modules/unistr/u8-strcoll: New file.
5435         * lib/unistr/u8-strcoll.c: New file.
5436         * lib/unistr/u-strcoll.h: New file.
5437
5438 2009-02-07  Bruno Haible  <bruno@clisp.org>
5439
5440         * test-mbrtowc4.sh (LOCALE_ZH_CN): Fix default value.
5441         * test-mbsnrtowcs4.sh (LOCALE_ZH_CN): Likewise.
5442         * test-mbsrtowcs4.sh (LOCALE_ZH_CN): Likewise.
5443         * test-wcrtomb.sh (LOCALE_ZH_CN): Likewise.
5444         * test-wcsnrtombs4.sh (LOCALE_ZH_CN): Likewise.
5445         * test-wcsrtombs4.sh (LOCALE_ZH_CN): Likewise.
5446
5447 2009-02-07  Bruno Haible  <bruno@clisp.org>
5448
5449         Make 64-bit clean.
5450         * lib/unictype/gen-ctype.c (output_predicate, output_category,
5451         output_combclass, output_bidi_category, output_decimal_digit,
5452         output_digit, output_numeric, output_mirror, output_scripts,
5453         output_ident_category): Use proper width specifier in format strings.
5454
5455 2009-02-07  Bruno Haible  <bruno@clisp.org>
5456
5457         * doc/posix-functions/dirfd.texi: Clarify situation on mingw. Document
5458         failure behaviour.
5459
5460 2009-02-07  Jim Meyering  <meyering@redhat.com>
5461
5462         regex: avoid compilation failure with upcoming gcc-4.4
5463         * lib/regex_internal.h: Revert e48d8b47fb3eee81d341b71c3e006efe9e3433a7
5464         [workaround for PGC prior to 6.1-2].  Otherwise, we'd get this:
5465         "... error: integer overflow in preprocessor expression".
5466
5467 2009-02-05  Ben Pfaff  <blp@gnu.org>
5468
5469         Fix link errors on Windows when close module is used.
5470         * modules/close: Add $(LIB_CLOSE) to Link section.
5471         * m4/close.m4 (gl_REPLACE_CLOSE): Substitute -lws2_32 into
5472         $(LIB_CLOSE) on Windows.
5473
5474 2009-02-05  Jim Meyering  <meyering@redhat.com>
5475
5476         still avoid unused-parameter warnings, but do it cleanly
5477         * lib/fsusage.c (UNUSED_PARAM): Remove definition.
5478         (get_fs_usage): Cast to void instead.
5479         * lib/mountlist.c (UNUSED_PARAM): Remove definition.
5480         (dev_from_mount_options, read_file_system_list): Cast to void.
5481         Prompted by Bruno Haible.
5482
5483 2009-02-04  Jim Meyering  <meyering@redhat.com>
5484
5485         fsusage.c: correct copyright year
5486         * lib/fsusage.c: Reflect year in which the change is pushed into
5487
5488         avoid misc. warnings
5489         * lib/fsusage.c (UNUSED_PARAM): Define.
5490         (get_fs_usage): Mark parameter "disk" as unused.
5491         * lib/getugroups.c (getgrent): Use "void" in prototype.
5492         * lib/mountlist.c: Mark unused parameters.
5493         (read_file_system_list): Declare a local with "const".
5494         * lib/nanosleep.c (getnow): Declare static.
5495         * lib/strftime.c: Include strftime.h, for declaration of nstrftime.
5496
5497         dirfd: set errno upon failure
5498         * lib/dirfd.c: Include <errno.h>.
5499         Set errno to ENOTSUP when returning -1.
5500         * modules/dirfd (Depends-on): Add errno.
5501         Suggested by John Kodis <kodis@comcast.net>.
5502
5503 2009-02-01  Bruno Haible  <bruno@clisp.org>
5504
5505         Don't assume sizeof (long) >= sizeof (void *).
5506         * lib/memcmp.c: Include stdint.h.
5507         (memcmp_bytes): Change argument types to op_t. Change type of srcp1,
5508         srcp2 to 'const byte *'.
5509         (memcmp_common_alignment, memcmp_not_common_alignment): Change argument
5510         types to uintptr_t.
5511         (rpl_memcmp): Change type of srcp1, srcp2 to 'uintptr_t'.
5512         * modules/memcmp (Depends-on): Add stdint.
5513         Reported by Ozkan Sezer <sezeroz@gmail.com>.
5514
5515 2009-01-30  Eric Blake  <ebb9@byu.net>
5516
5517         fix more require-before-expand issues
5518         * m4/pmccabe2html.m4 (gl_PMCCABE2HTML): Require, rather than
5519         expand, AC_PROG_AWK.
5520         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): Use AC_DEFUN_ONCE.
5521
5522 2009-01-28  Eric Blake  <ebb9@byu.net>
5523
5524         version-etc: use consistent URL formatting
5525         * lib/version-etc.c (emit_bug_reporting_address, version_etc_va):
5526         Improve formatting.  Use fputs for string without %.
5527
5528 2009-01-28  Jim Meyering  <meyering@redhat.com>
5529
5530         00gnulib.m4: add m4 quotes in shell comment to avoid autoconf warning
5531         * m4/00gnulib.m4 (AC_DEFUN_ONCE): Add quotes to avoid an
5532         "underquoted definition of NAME" from autoconf-2.59.
5533
5534 2009-01-28  Bruno Haible  <bruno@clisp.org>
5535
5536         * doc/gnulib.texi: Add "Obsolete modules" to index.
5537
5538 2009-01-28  Jim Meyering  <meyering@redhat.com>
5539
5540         useless-if-before-free: recognize more variants
5541         * build-aux/useless-if-before-free: Also recognize e.g.,
5542         if (NULL != p) free (p);
5543
5544 2009-01-27  Mark McLoughlin  <markmc@redhat.com>
5545
5546         test-getaddrinfo: skip (don't fail) this test when there's no network
5547         * tests/test-getaddrinfo.c: Skip test upon failure with EAI_AGAIN,
5548         on the presumption that it means you lack network access.
5549
5550 2009-01-26  Jim Meyering  <meyering@redhat.com>
5551
5552         fflush: avoid warnings on modern systems
5553         * lib/fflush.c (rpl_fflush): Move declarations of locals,
5554         pos and result, into scopes where they're used.
5555
5556 2009-01-26  Eric Blake  <ebb9@byu.net>
5557
5558         Silence warning reintroduced by recent extensions patch.
5559         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS)
5560         (gl_USE_SYSTEM_EXTENSIONS): Use AC_DEFUN_ONCE to silence newer
5561         autoconf.
5562
5563         Backport improved autoconf semantics of AC_DEFUN_ONCE.
5564         * m4/00gnulib.m4: New file.
5565         * gnulib-tool (func_get_filelist): Always use it.
5566         * m4/gnulib-common.m4 (gl_COMMON): Force the file to be used.
5567         Reported by Bruno Haible, with suggestions from Paolo Bonzini.
5568
5569 2009-01-25  Bruno Haible  <bruno@clisp.org>
5570
5571         Make test-quotearg work on MacOS X and AIX.
5572         * tests/test-quotearg.sh: New file.
5573         * tests/locale/fr/LC_MESSAGES/test-quotearg.po: New file.
5574         * tests/locale/fr/LC_MESSAGES/test-quotearg.mo: New file.
5575         * tests/test-quotearg.c: Include <locale.h> and gettext.h. Don't
5576         include <libintl.h>.
5577         (fake_locale): Remove variable.
5578         (gettext, dgettext, dcgettext): Remove functions.
5579         (main): Instead of setting a fake locale, set a real locale. Call
5580         textdomain and bindtextdomain.
5581         * modules/quotearg-tests (Files): Add the new files.
5582         (Depends-on): Add gettext, setenv, unsetenv.
5583         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
5584         (Makefile.am): Add test-quotearg.sh to TESTS, remove test-quotearg.
5585         Augment TESTS_ENVIRONMENT.
5586
5587 2009-01-25  Bruno Haible  <bruno@clisp.org>
5588
5589         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove special code that hid the
5590         fr_FR.ISO8859-1 locale on MacOS X.
5591         * m4/locale-ja.m4 (gt_LOCALE_JA): Remove special code that hid the
5592         ja_JP.eucJP locale on MacOS X.
5593         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Remove special code that hid the
5594         zh_CN.GB18030 locale on MacOS X.
5595
5596 2009-01-25  Bruno Haible  <bruno@clisp.org>
5597
5598         Avoid link errors on MacOS X 10.3.
5599         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Add initializer.
5600         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
5601
5602 2009-01-25  Bruno Haible  <bruno@clisp.org>
5603
5604         * lib/pipe.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
5605         * m4/pipe.m4 (gl_PIPE): Remove tests for vfork() based code.
5606         * modules/pipe (Files): Remove m4/posix_spawn.m4.
5607         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
5608         posix_spawn_file_actions_addclose, posix_spawn_file_actions_adddup2,
5609         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
5610         posix_spawnattr_init, posix_spawnattr_setsigmask,
5611         posix_spawnattr_setflags, posix_spawnattr_destroy.
5612
5613         * lib/execute.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
5614         * m4/execute.m4 (gl_EXECUTE): Remove tests for vfork() based code.
5615         * modules/execute (Files): Remove m4/posix_spawn.m4.
5616         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
5617         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
5618         posix_spawnattr_init, posix_spawnattr_setsigmask,
5619         posix_spawnattr_setflags, posix_spawnattr_destroy.
5620
5621 2009-01-25  Bruno Haible  <bruno@clisp.org>
5622
5623         * lib/glthread/threadlib.c: Include <stdlib.h>.
5624
5625 2009-01-25  Bruno Haible  <bruno@clisp.org>
5626
5627         * lib/glthread/threadlib.c (dummy): New declaration.
5628
5629 2009-01-25  Bruno Haible  <bruno@clisp.org>
5630
5631         * lib/mbrtowc.c (mbrtowc): Distinguish invalid and incomplete
5632         multibyte characters also for the GB18030 encoding. Don't crash when
5633         the encoding is unknown and nstate = 0. Needed on OSF/1 5.1.
5634
5635 2009-01-25  Bruno Haible  <bruno@clisp.org>
5636
5637         Avoid redefining 'struct random_data' on OSF/1 5.1.
5638         * lib/stdlib.in.h: Include <random.h> if it exists.
5639         * m4/stdlib_h.m4 (gl_STDLIB_H): Test whether <random.h> exists. Set
5640         HAVE_RANDOM_H. Include <random.h> when testing whether
5641         'struct random_data' exists.
5642         * modules/stdlib (Makefile.am): Substitute HAVE_RANDOM_H.
5643
5644 2009-01-25  Bruno Haible  <bruno@clisp.org>
5645
5646         Don't install charset.alias on MacOS X >= 10.3.
5647         * lib/localcharset.c (DARWIN7): New macro.
5648         (get_charset_aliases): Hardcode the result for Darwin7.
5649         * modules/localcharset (install-exec-local): Don't install
5650         charset.alias on MacOS X >= 10.3, if the file does not yet exist.
5651
5652 2009-01-25  Bruno Haible  <bruno@clisp.org>
5653
5654         Don't install charset.alias on mingw and Cygwin.
5655         * modules/localcharset (install-exec-local): Don't install
5656         charset.alias on mingw and Cygwin, if the file does not yet exist.
5657         The result for these platforms is hardcoded in localcharset.c.
5658
5659 2009-01-25  Bruno Haible  <bruno@clisp.org>
5660
5661         Make it possible again to use AC_GNU_SOURCE together with gnulib.
5662         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_GNU_SOURCE
5663         before requiring AC_USE_SYSTEM_EXTENSIONS.
5664
5665 2009-01-25  Jim Meyering  <meyering@redhat.com>
5666
5667         c-strtod: avoid warnings
5668         * lib/c-strtod.c (C_STRTOD): Cast nptr to (char *) to avoid
5669         "assignment discards qualifiers from pointer target type" warnings.
5670
5671 2009-01-24  Bruno Haible  <bruno@clisp.org>
5672
5673         Add support for non-UTF-8 locales on MacOS X.
5674         * lib/config.charset: Add CP1131, ARMSCII-8, PT154 to the list of
5675         canonical encodings. For Darwin 7 and newer, don't map traditional
5676         encodings to UTF-8.
5677         Reported by Vincent Lefevre <vincent@vinc17.org>
5678         at <http://savannah.gnu.org/bugs/?25235>.
5679
5680 2009-01-24  Bruno Haible  <bruno@clisp.org>
5681
5682         * doc/gnulib.texi (Obsolete modules): New section.
5683         Reported by Mike Frysinger <vapier@gentoo.org>.
5684
5685 2009-01-24  Bruno Haible  <bruno@clisp.org>
5686
5687         * doc/Makefile (%.pdf): Clarify where to find texmf.cnf.
5688         (%.dvi): New rule.
5689
5690 2009-01-24  Bruno Haible  <bruno@clisp.org>
5691
5692         * lib/c-strtod.h (c_strtod, c_strtold): Adjust specification.
5693         Reported by Eric Blake.
5694
5695 2009-01-24  Bruno Haible  <bruno@clisp.org>
5696
5697         * lib/c-stack.c (segv_handler): If !HAVE_XSI_STACK_OVERFLOW_HEURISTIC,
5698         set signo = 0 also if info->si_code <= 0. Needed on HP-UX 11.11.
5699         Reported by Gary V. Vaughan <gary@gnu.org>.
5700
5701 2009-01-24  Bruno Haible  <bruno@clisp.org>
5702
5703         * lib/c-strtod.h (c_strtod, c_strtold): Add specification.
5704
5705 2009-01-23  Bruno Haible  <bruno@clisp.org>
5706
5707         Make c-strtod, c-strtold usable in libraries.
5708         * lib/c-strtod.c: Include string.h instead of xalloc.h.
5709         (C_STRTOD): Call strdup instead of xstrdup.
5710         * modules/c-strtod (Depends-on): Add strdup-posix, remove xalloc.
5711         * modules/c-strtold (Depends-on): Likewise.
5712         * doc/c-strtod.texi: Remove the sentence mentioning xalloc_die.
5713         * NEWS: Mention the change.
5714         Reported by Michael Gold <mgold@ncf.ca>.
5715
5716 2009-01-23  Jim Meyering  <meyering@redhat.com>
5717
5718         c-strtod: when ENDPTR is non-NULL, set *ENDPTR in new failure path
5719         * lib/c-strtod.c (C_STRTOD) [LC_ALL_MASKC]: Ensure that when
5720         ENDPTR is non-NULL, *ENDPTR is set to NPTR upon failure.
5721
5722 2009-01-23  Simon Josefsson  <simon@josefsson.org>
5723
5724         * lib/version-etc.c: Add emit_bug_reporting_address, inspired by
5725         GNU CoreUtils.
5726         * lib/version-etc.h: Add prototype for emit_bug_reporting_address.
5727         * modules/version-etc (Description): Update.
5728
5729 2009-01-22  Bruno Haible  <bruno@clisp.org>
5730
5731         Cache the C locale object.
5732         * lib/c-strtod.c (c_locale_cache): New variable.
5733         (c_locale): New function.
5734         (C_STRTOD): Use it, and don't call freelocale.
5735         * m4/c-strtod.m4 (gl_C_STRTOD, gl_C_STRTOLD): Require AC_C_INLINE.
5736         Suggested by Paolo Bonzini.
5737
5738 2009-01-21  Bruno Haible  <bruno@clisp.org>
5739
5740         * lib/getloadavg.c (getloadavg): Check c_strtod result against error
5741         conditions other than overflow.
5742
5743 2009-01-21  Bruno Haible  <bruno@clisp.org>
5744
5745         * lib/c-strtod.c: Include errno.h.
5746         (C_STRTOD): Check against NULL return from newlocale. Preserve errno
5747         value from STRTOD_L and STRTOD.
5748
5749 2009-01-21  Bruno Haible  <bruno@clisp.org>
5750         and Jim Meyering  <meyering@redhat.com>
5751
5752         nanosleep: skip configure test (fail it) for apple universal builds
5753         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_MULTIARCH. In Apple
5754         universal builds, assume that nanosleep does not work.
5755         * modules/nanosleep (Depends-on): Add multiarch.
5756
5757         mktime: skip configure test (fail it) for apple universal builds
5758         * m4/mktime.m4 (AC_FUNC_MKTIME): Require gl_MULTIARCH. In Apple
5759         universal builds, assume that mktime does not work.
5760         * modules/mktime (Depends-on): Add multiarch.
5761
5762 2009-01-21  Eric Blake  <ebb9@byu.net>
5763
5764         multiarch: avoid expand-before-require warning
5765         * modules/multiarch (configure.ac): Require, rather than expand,
5766         gl_MULTIARCH.
5767         * m4/multiarch.m4 (gl_MULTIARCH_BODY): Merge...
5768         (gl_MULTIARCH): ...into this macro, and use AC_DEFUN_ONCE to
5769         enforce that all clients require it.  Partial reversion of
5770         2008-12-29 patch.
5771
5772         error: avoid expand-before-require warning
5773         * modules/errno (configure.ac): Require, rather than expand,
5774         gl_HEADER_ERRNO_H.
5775         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Merge...
5776         (gl_HEADER_ERRNO_H): ...into this macro, and use AC_DEFUN_ONCE to
5777         enforce that all clients require it.
5778
5779         gnulib-tool: avoid warnings from using obsolete AC_GNU_SOURCE
5780         * gnulib-tool (func_dest_tmpfilename, func_create_testdir): Using
5781         obsolete AC_GNU_SOURCE causes out-of-order expansion; avoid it,
5782         and rely solely on gl_USE_SYSTEM_EXTENSIONS.
5783
5784 2009-01-21  Paolo Bonzini  <bonzini@gnu.org>
5785
5786         Revert:
5787         2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
5788
5789         regex: do not depend on obsolete modules.
5790         * modules/regex: Remove memcmp and memmove.
5791
5792 2009-01-20  Bruno Haible  <bruno@clisp.org>
5793
5794         Make the 'link' module link on Windows NT 4.
5795         * lib/link.c (_WIN32_WINNT): Don't define.
5796         (CreateHardLinkFuncType): New type.
5797         (CreateHardLinkFunc, initialized): New variables.
5798         (initialize): New function.
5799         (link): Invoke CreateHardLink indirectly through the function pointer.
5800
5801 2009-01-20  Bruno Haible  <bruno@clisp.org>
5802
5803         Fix compilation failure on mingw.
5804         * tests/test-link.c (main): Don't assume that EOPNOTSUPP exists.
5805
5806 2009-01-20  Michael Gold  <mgold@ncf.ca>  (tiny change)
5807
5808         * doc/c-strtod.texi: Mention a couple of restrictions.
5809
5810 2009-01-20  Jim Meyering  <meyering@redhat.com>
5811
5812         gettimeofday: move more declarations out of functions
5813         * lib/gettimeofday.c: Move extern declarations of tzset and
5814         gmtime out of containing functions.  Prompted by Bruno Haible.
5815
5816 2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
5817
5818         regex: do not depend on obsolete modules.
5819         * modules/regex: Remove memcmp and memmove.
5820
5821 2009-01-19  Bruno Haible  <bruno@clisp.org>
5822
5823         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
5824         * modules/uniconv/u16-conv-from-enc (configure.ac): Require
5825         gl_BIGENDIAN, not AC_C_BIGENDIAN.
5826         * modules/uniconv/u16-conv-to-enc (configure.ac): Likewise.
5827         * modules/uniconv/u16-strconv-to-enc (configure.ac): Likewise.
5828
5829 2009-01-19  Bruno Haible  <bruno@clisp.org>
5830
5831         * tests/test-link.c: Include <errno.h>.
5832         (main): Exit with code 77 when a hard link cannot be created due to
5833         the file system.
5834         * tests/test-link.sh: Skip test when a hard link cannot be created due
5835         to the file system.
5836         Suggested by Eric Blake.
5837
5838 2009-01-19  Martin Lambers  <marlam@marlam.de>
5839
5840         * modules/link-tests: New file.
5841         * tests/test-link.sh: New file.
5842         * tests/test-link.c: New file.
5843
5844 2009-01-19  Eric Blake  <ebb9@byu.net>
5845
5846         doc: mention another function added in cygwin 1.7.0
5847         * doc/glibc-functions/glob_pattern_p.texi (glob_pattern_p):
5848         Another new function in cygwin 1.7.
5849
5850 2009-01-19  Bruno Haible  <bruno@clisp.org>
5851
5852         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
5853         * m4/gnulib-common.m4 (gl_BIGENDIAN): New macro.
5854         * m4/exponentl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require
5855         gl_BIGENDIAN, not AC_C_BIGENDIAN.
5856         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): Likewise.
5857         * m4/isinf.m4 (gl_ISINFL_WORKS): Likewise.
5858         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Likewise.
5859         * m4/md4.m4 (gl_MD4): Likewise.
5860         * m4/md5.m4 (gl_MD5): Likewise.
5861         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Likewise.
5862         * m4/sha1.m4 (gl_SHA1): Likewise.
5863         * m4/sha256.m4 (gl_SHA256): Likewise.
5864         * m4/sha512.m4 (gl_SHA512): Likewise.
5865
5866 2009-01-19  Bruno Haible  <bruno@clisp.org>
5867
5868         * modules/uniname/uniname-tests (Depends-on): Add progname.
5869         * tests/uniname/test-uninames.c: Include progname.h.
5870         (main): Call set_program_name.
5871
5872         * modules/unistdio/u8-vsprintf-tests (Depends-on): Add progname.
5873         * tests/unistdio/test-u8-vsprintf1.c: Include progname.h.
5874         (main): Call set_program_name.
5875
5876         * modules/unistdio/u8-vsnprintf-tests (Depends-on): Add progname.
5877         * tests/unistdio/test-u8-vsnprintf1.c: Include progname.h.
5878         (main): Call set_program_name.
5879
5880         * modules/unistdio/u16-vsprintf-tests (Depends-on): Add progname.
5881         * tests/unistdio/test-u16-vsprintf1.c: Include progname.h.
5882         (main): Call set_program_name.
5883
5884         * modules/unistdio/u16-vsnprintf-tests (Depends-on): Add progname.
5885         * tests/unistdio/test-u16-vsnprintf1.c: Include progname.h.
5886         (main): Call set_program_name.
5887
5888         * modules/unistdio/u32-vsprintf-tests (Depends-on): Add progname.
5889         * tests/unistdio/test-u32-vsprintf1.c: Include progname.h.
5890         (main): Call set_program_name.
5891
5892         * modules/unistdio/u32-vsnprintf-tests (Depends-on): Add progname.
5893         * tests/unistdio/test-u32-vsnprintf1.c: Include progname.h.
5894         (main): Call set_program_name.
5895
5896         * modules/unistdio/ulc-vsprintf-tests (Depends-on): Add progname.
5897         * tests/unistdio/test-ulc-vsprintf1.c: Include progname.h.
5898         (main): Call set_program_name.
5899
5900         * modules/unistdio/ulc-vsnprintf-tests (Depends-on): Add progname.
5901         * tests/unistdio/test-ulc-vsnprintf1.c: Include progname.h.
5902         (main): Call set_program_name.
5903
5904 2009-01-19  Eric Blake  <ebb9@byu.net>
5905
5906         test-unistd: test previous patch
5907         * tests/test-unistd.c: Test *_FILENO macros.
5908
5909         unistd: guarantee STDIN_FILENO here, for OS/2 EMX
5910         * lib/unistd.in.h (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
5911         Guarantee a definition.
5912         * doc/posix-headers/unistd.texi (unistd.h): Document the bug.
5913         * modules/unistd-safer (Depends-on): Add dependency on unistd.
5914         * lib/c-stack.c (STDERR_FILENO): Rely on <unistd.h>.
5915         * lib/dup-safer.c (STDERR_FILENO): Likewise.
5916         * lib/execute.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
5917         Likewise.
5918         * lib/fd-safer.c (STDIN_FILENO, STDERR_FILENO): Likewise.
5919         * lib/fopen-safer.c (STDERR_FILENO): Likewise.
5920         * lib/pipe.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
5921         Likewise.
5922         * lib/tmpfile-safer.c (STDERR_FILENO): Likewise.
5923         * tests/test-posix_spawn1.c (STDIN_FILENO, STDOUT_FILENO)
5924         (STDERR_FILENO): Likewise.
5925         * tests/test-posix_spawn2.c (STDIN_FILENO, STDOUT_FILENO)
5926         (STDERR_FILENO): Likewise.
5927         * tests/test-posix_spawn3.c (STDIN_FILENO, STDOUT_FILENO)
5928         (STDERR_FILENO): Likewise.
5929         Reported by Elbert Pol.
5930
5931 2009-01-19  Eric Blake  <ebb9@byu.net>
5932
5933         doc: mention more functions added in cygwin 1.7.0
5934         * doc/posix-functions/abort.texi (abort): Update wording related
5935         to cygwin.
5936         * doc/posix-functions/daylight.texi (daylight): Likewise.
5937         * doc/posix-functions/optarg.texi (optarg): Likewise.
5938         * doc/posix-functions/optarg.texi (opterr): Likewise.
5939         * doc/posix-functions/optarg.texi (optind): Likewise.
5940         * doc/posix-functions/optarg.texi (optopt): Likewise.
5941         * doc/posix-functions/wprintf.texi (wprintf): Cygwin wprintf never
5942         worked in 1.5.x, and was withdrawn in 1.7.
5943         * doc/posix-functions/vwprintf.texi (vwprintf): Likewise.
5944         * doc/posix-functions/fprintf.texi (fprintf): Tighten mention of
5945         cygwin versions.
5946         * doc/posix-functions/perror.texi (perror): Likewise.
5947         * doc/posix-functions/printf.texi (printf): Likewise.
5948         * doc/posix-functions/snprintf.texi (snprintf): Likewise.
5949         * doc/posix-functions/sprintf.texi (sprintf): Likewise.
5950         * doc/posix-functions/vfprintf.texi (vfprintf): Likewise.
5951         * doc/posix-functions/vprintf.texi (vprintf): Likewise.
5952         * doc/posix-functions/vsnprintf.texi (vsnprintf): Likewise.
5953         * doc/posix-functions/vsprintf.texi (vsprintf): Likewise.
5954         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
5955         Likewise.
5956         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
5957         Likewise.
5958         * doc/glibc-functions/cfmakeraw.texi (cfmakeraw): Cygwin 1.7 adds
5959         this function.
5960         * doc/glibc-functions/in6addr_any.texi (in6addr_any): Likewise.
5961         * doc/glibc-functions/in6addr_loopback.texi (in6addr_loopback):
5962         Likewise.
5963         * doc/glibc-functions/updwtmpx.texi (updwtmpx): Likewise.
5964         * doc/posix-functions/_Exit_C99.texi (_Exit): Likewise.
5965         * doc/posix-functions/confstr.texi (confstr): Likewise.
5966         * doc/posix-functions/dprintf.texi (dprintf): Likewise.
5967         * doc/posix-functions/fgetwc.texi (fgetwc): Likewise.
5968         * doc/posix-functions/fgetws.texi (fgetws): Likewise.
5969         * doc/posix-functions/fputwc.texi (fputwc): Likewise.
5970         * doc/posix-functions/fputws.texi (fputws): Likewise.
5971         * doc/posix-functions/fwide.texi (fwide): Likewise.
5972         * doc/posix-functions/getwc.texi (getwc): Likewise.
5973         * doc/posix-functions/getwchar.texi (getwchar): Likewise.
5974         * doc/posix-functions/putwc.texi (putwc): Likewise.
5975         * doc/posix-functions/putwchar.texi (putwchar): Likewise.
5976         * doc/posix-functions/sigignore.texi (sigignore): Likewise.
5977         * doc/posix-functions/ungetwc.texi (ungetwc): Likewise.
5978         * doc/posix-functions/vdprintf.texi (vdprintf): Likewise.
5979         * doc/posix-functions/wcpcpy.texi (wcpcpy): Likewise.
5980         * doc/posix-functions/wcpncpy.texi (wcpncpy): Likewise.
5981         * doc/posix-functions/wcstol.texi (wcstol): Likewise.
5982         * doc/posix-functions/wcstoll.texi (wcstoll): Likewise.
5983         * doc/posix-functions/wcstoul.texi (wcstoul): Likewise.
5984         * doc/posix-functions/wcstoull.texi (wcstoull): Likewise.
5985         * doc/posix-functions/wcsxfrm.texi (wcsxfrm): Likewise.
5986
5987 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
5988
5989         ioctl: avoid warning: no previous prototype for 'rpl_ioctl'
5990         * lib/ioctl.c: Include <sys/ioctl.h>.
5991
5992 2009-01-19  Simon Josefsson  <simon@josefsson.org>
5993
5994         * modules/getdate-tests (Depends-on): Add progname.
5995         * tests/test-getdate.c: Use progname module, to avoid link errors
5996         on non-glibc systems.
5997
5998 2009-01-18  Simon Josefsson  <simon@josefsson.org>
5999
6000         * modules/filenamecat-tests (Depends-on): Add progname.
6001         * modules/fstrcmp-tests (Depends-on): Likewise.
6002
6003         * tests/test-filenamecat.c: Use progname module, to avoid link
6004         errors on non-glibc systems.
6005         * tests/test-fstrcmp.c: Likewise.
6006
6007 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
6008
6009         gettimeofday: avoid warning: nested extern declaration of 'localtime'
6010         * lib/gettimeofday.c: Move extern declaration out of function.
6011
6012 2009-01-18  Bruno Haible  <bruno@clisp.org>
6013
6014         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mblen and mbrlen.
6015         * lib/strftime.c (HAVE_MBLEN, HAVE_MBRLEN): Remove macros.
6016         (MULTIBYTE_IS_FORMAT_SAFE): Define to 1 on all platforms except OSF/1.
6017
6018 2009-01-18  Bruno Haible  <bruno@clisp.org>
6019
6020         * lib/strftime.c (MEMPCPY): Remove unused macro.
6021         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mempcpy.
6022
6023 2009-01-18  Martin Lambers  <marlam@marlam.de>
6024
6025         New module 'link'.
6026         * lib/unistd.in.h (link): New declaration.
6027         * lib/link.c: New file.
6028         * m4/link.m4: New file.
6029         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_LINK,
6030         HAVE_LINK.
6031         * modules/unistd (Makefile.am): Substitute GNULIB_LINK, HAVE_LINK.
6032         * modules/link: New file.
6033         * doc/posix-functions/link.texi: Mention the new module.
6034
6035 2009-01-18  Bruno Haible  <bruno@clisp.org>
6036
6037         * tests/test-avltree_list.c (main): Call set_program_name.
6038         * tests/test-avltree_oset.c (main): Likewise.
6039         * tests/test-obstack-printf.c: Include progname.h.
6040         (main): Call set_program_name.
6041         * tests/test-quotearg.c: Include progname.h.
6042         (main): Call set_program_name.
6043         * tests/test-xmemdup0.c: Include progname.h.
6044         (main): Call set_program_name.
6045
6046 2009-01-18  Bruno Haible  <bruno@clisp.org>
6047
6048         New module 'alphasort'.
6049         * lib/dirent.in.h (alphasort): New declaration.
6050         * lib/alphasort.c: New file, from glibc with modifications.
6051         * m4/alphasort.m4: New file.
6052         * modules/alphasort: New file.
6053         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_ALPHASORT,
6054         HAVE_ALPHASORT.
6055         * modules/dirent (Makefile.am): Substitute GNULIB_ALPHASORT,
6056         HAVE_ALPHASORT.
6057         * doc/posix-functions/alphasort.texi: Mention the new module and the
6058         portability problems.
6059
6060 2009-01-18  Bruno Haible  <bruno@clisp.org>
6061
6062         New module 'scandir'.
6063         * lib/dirent.in.h (scandir): New declaration.
6064         * lib/scandir.c: New file, from glibc with modifications.
6065         * m4/scandir.m4: New file.
6066         * modules/scandir: New file.
6067         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_SCANDIR,
6068         HAVE_SCANDIR.
6069         * modules/dirent (Makefile.am): Substitute GNULIB_SCANDIR,
6070         HAVE_SCANDIR.
6071         * doc/posix-functions/scandir.texi: Mention the new module and the
6072         portability problems.
6073
6074 2009-01-17  Bruno Haible  <bruno@clisp.org>
6075
6076         * gnulib-tool (func_remove_prefix): Escape all dots in the prefix.
6077         Update documentation.
6078         (func_remove_suffix): Escape all dots in the suffix. Update
6079         documentation.
6080         (func_filter_filelist): Update documentation.
6081         Reported by Ralf Wildenhues.
6082
6083 2009-01-17  Bruno Haible  <bruno@clisp.org>
6084
6085         * modules/dprintf-posix-tests: New file.
6086         * tests/test-dprintf-posix.sh: New file.
6087         * tests/test-dprintf-posix.c: New file.
6088
6089         New modules 'dprintf', 'dprintf-posix'.
6090         * lib/stdio.in.h (dprintf): New declaration.
6091         * lib/dprintf.c: New file.
6092         * m4/dprintf.m4: New file.
6093         * m4/dprintf-posix.m4: New file.
6094         * modules/dprintf: New file.
6095         * modules/dprintf-posix: New file.
6096         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_DPRINTF,
6097         HAVE_DPRINTF, REPLACE_DPRINTF.
6098         * modules/stdio (Makefile.am): Substitute also GNULIB_DPRINTF,
6099         HAVE_DPRINTF, REPLACE_DPRINTF.
6100         * doc/posix-functions/dprintf.texi: Mention the new modules.
6101
6102 2009-01-17  Bruno Haible  <bruno@clisp.org>
6103
6104         * modules/vdprintf-posix-tests: New file.
6105         * tests/test-vdprintf-posix.sh: New file.
6106         * tests/test-vdprintf-posix.c: New file.
6107
6108         New modules 'vdprintf', 'vdprintf-posix'.
6109         * lib/stdio.in.h (vdprintf): New declaration.
6110         * lib/vdprintf.c: New file.
6111         * m4/vdprintf.m4: New file.
6112         * m4/vdprintf-posix.m4: New file.
6113         * modules/vdprintf: New file.
6114         * modules/vdprintf-posix: New file.
6115         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_VDPRINTF,
6116         HAVE_VDPRINTF, REPLACE_VDPRINTF.
6117         * modules/stdio (Makefile.am): Substitute also GNULIB_VDPRINTF,
6118         HAVE_VDPRINTF, REPLACE_VDPRINTF.
6119         * doc/posix-functions/vdprintf.texi: Mention the new modules.
6120
6121 2009-01-17  Bruno Haible  <bruno@clisp.org>
6122
6123         Fix replacement of fopen on mingw.
6124         * m4/fopen.m4 (gl_FUNC_FOPEN): Define FOPEN_TRAILING_SLASH_BUG also on
6125         mingw.
6126
6127 2009-01-17  Bruno Haible  <bruno@clisp.org>
6128
6129         Fix compilation error on HP-UX 11.00, present since 2008-09-24.
6130         * lib/fopen.c: Include <sys/types.h> and <sys/types.h>.
6131
6132 2009-01-17  Bruno Haible  <bruno@clisp.org>
6133
6134         Avoid test-fflush2.sh failure on mingw.
6135         * tests/test-fflush2.c: Include binary-io.h.
6136         (main): Put standard input into binary mode.
6137         * modules/fflush-tests (Depends-on): Add binary-io.
6138
6139 2009-01-17  Bruno Haible  <bruno@clisp.org>
6140
6141         * lib/wchar.in.h: In another particular situation, include only the
6142         system's <wchar.h> file.
6143         (_GL_ALREADY_INCLUDING_WCHAR_H): New macro.
6144         Reported by Albert Chin-A-Young <china@thewrittenword.com>
6145         and Thomas Guyot-Sionnest <dermoth@aei.ca>.
6146
6147 2009-01-17  Bruno Haible  <bruno@clisp.org>
6148
6149         Support for stripping executables in --enable-relocatable.
6150         * build-aux/install-reloc: Expect one more argument, or an environment
6151         variable RELOC_STRIP_PROG. If set, strip the destination program and
6152         its wrapper.
6153         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV, set
6154         RELOC_STRIP_PROG.
6155         * doc/relocatable-maint.texi (Supporting Relocation): Mention the need
6156         to set RELOCATABLE_STRIP.
6157         * NEWS: Mention the new Makefile requirement.
6158
6159 2009-01-17  Bruno Haible  <bruno@clisp.org>
6160
6161         * build-aux/install-reloc: Remove debugging information left over by
6162         C compiler on MacOS X.
6163
6164 2009-01-17  Bruno Haible  <bruno@clisp.org>
6165
6166         Update use of _NSGetExecutablePath after API change in MacOS X 10.4.
6167         * lib/progreloc.c (find_executable): Fix type of pointer passed to
6168         _NSGetExecutablePath.
6169
6170 2009-01-16  Jim Meyering  <meyering@redhat.com>
6171
6172         strerror: avoid warnings about discarding "const"
6173         * lib/strerror.c (rpl_strerror): Instead of returning a const
6174         string from each and every "case", use a variable, and add a single
6175         cast after the switch.
6176
6177 2009-01-16  Albert Chin-A-Young <china@thewrittenword.com>
6178
6179         * lib/arpa_inet.in.h: Add extern "C" block for C++.
6180
6181 2009-01-16  Bruno Haible  <bruno@clisp.org>
6182
6183         * m4/printf.m4 (gl_SNPRINTF_SIZE1, gl_VSNPRINTF_ZEROSIZE_C99): Use an
6184         array initializer syntax that also works in C++ mode.
6185         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6186
6187 2009-01-16  Jim Meyering  <meyering@redhat.com>
6188
6189         poll: suppress a warning
6190         * lib/poll.c: Use #pragma GCC diagnostic ignored "-Wtype-limits"
6191         to ignore "...unsigned expression < 0 is always false" warnings.
6192
6193 2009-01-16  Daniel P. Berrange  <berrange@redhat.com>
6194
6195         poll: remove declarations of unused variables
6196         * lib/poll.c (poll) [WIN32_NATIVE]: Remove declarations of unused
6197         sockbuf and optlen.
6198
6199 2009-01-15  Bruno Haible  <bruno@clisp.org>
6200
6201         Make fflush-after-ungetc POSIX compliant on BSD systems.
6202         * lib/fflush.c (clear_ungetc_buffer_preserving_position): New function.
6203         (clear_ungetc_buffer): Implement also for other systems.
6204         (rpl_fflush): On glibc systems, invoke
6205         clear_ungetc_buffer_preserving_position. Otherwise, invoke
6206         clear_ungetc_buffer after fetching the stream's position, not before.
6207
6208 2009-01-15  Bruno Haible  <bruno@clisp.org>
6209
6210         Make fflush-after-ungetc POSIX compliant on glibc systems.
6211         * m4/fflush.m4 (gl_FUNC_FFLUSH): Test also the behaviour of fflush
6212         after ungetc.
6213         * lib/fflush.c (clear_ungetc_buffer): Implement for glibc systems.
6214         (rpl_fflush): On glibc systems, simply call the system's fflush
6215         function after clearing the ungetc buffer.
6216         * lib/fseeko.c (rpl_fseeko): Don't try to lseek past the end of file.
6217         Instead, lseek only to the end of file, then use the system's fseeko
6218         for the rest. On glibc systems, reset the EOF indicator bit.
6219
6220 2009-01-15  Jim Meyering  <meyering@redhat.com>
6221
6222         openmp.m4: revert quote-adding change, for portability to older autoconf
6223         * m4/openmp.m4: Remove the quotes added on 2009-01-14.
6224         This reverts part of 42d1eda5dcce2d68deab7a642e7f29bcd7144a0d.
6225         Simon Josefsson noticed the problem when using autoconf-2.61.
6226
6227 2009-01-15  Bruno Haible  <bruno@clisp.org>
6228
6229         * tests/test-fflush2.sh: Invoke test-fflush2 twice.
6230         * tests/test-fflush2.c (ASSERT): Always fail.
6231         (main): Add two tests for fflush() after ungetc(), taking into account
6232         the Austin Group's clarification.
6233         Suggested by Eric Blake.
6234
6235 2009-01-15  Albert Chin-A-Young  <china@thewrittenword.com>
6236
6237         mktime.m4: remove K&R-style function prototypes
6238         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove K&R-style function prototypes
6239         for the Sun C++ compiler.
6240
6241 2009-01-14  Bruno Haible  <bruno@clisp.org>
6242
6243         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_WCHAR_H): New macro, defined
6244         while including <wchar.h>.
6245         * lib/wchar.in.h: In two particular situations on HP-UX, include only
6246         the system's <wchar.h> file.
6247         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6248
6249 2009-01-14  Bruno Haible  <bruno@clisp.org>
6250
6251         * m4/csharp.m4: Don't mention gettext on the serial number line.
6252         * m4/csharpexec.m4: Likewise.
6253         * m4/eaccess.m4: Likewise.
6254         * m4/javaexec.m4: Likewise.
6255         * m4/sig_atomic_t.m4: Likewise.
6256         * m4/tmpdir.m4: Likewise.
6257         * m4/intldir.m4: Bump gettext version.
6258         * m4/lib-ld.m4: Likewise.
6259
6260 2009-01-14  Bruno Haible  <bruno@clisp.org>
6261
6262         * lib/progname.c (set_program_name): Add more comments.
6263         Reported by Sergey Poznyakoff <gray@gnu.org.ua>.
6264
6265 2009-01-14  Simon Josefsson  <simon@josefsson.org>
6266
6267         * lib/sys_stat.in.h: Include sys/types.h for nlink_t on systems
6268         were sys/stat.h does not define it.
6269
6270 2009-01-14  Jim Meyering  <meyering@redhat.com>
6271
6272         many *.m4 files: improve m4 quoting
6273         99% of this change was performed by running the following commands:
6274         git ls-files | grep '\.m4$' | xargs perl -pi \
6275           -e 's/(AC_\w+\()([^[()]+?)([,)])/$1\[$2]$3/g;' \
6276           -e 's/(AC_\w+\((?:\[[^,]+?\], ){1})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
6277           -e 's/(AC_\w+\((?:\[[^,]+?\], ){2})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
6278           -e 's/(AC_\w+\((?:\[[^,]+?\], ){3})([^,[()]+?)([,)])/$1\[$2]$3/g'
6279         perl -pi -e 's/\[\.\.\.\]/.../' m4/onceonly.m4
6280         The remainder were to add Copyright dates, increment serial numbers,
6281         undo some changes in comments, exclude m4/intl.m4, and add quotes
6282         around the "1" in ",1" where the unusual spacing prohibited the
6283         above regexps from doing the job.  For more details, see
6284         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16175>.
6285         * m4/acl.m4: Modified.
6286         * m4/afs.m4: Likewise.
6287         * m4/alloca.m4: Likewise.
6288         * m4/argp.m4: Likewise.
6289         * m4/argz.m4: Likewise.
6290         * m4/atexit.m4: Likewise.
6291         * m4/bison-i18n.m4: Likewise.
6292         * m4/bison.m4: Likewise.
6293         * m4/byteswap.m4: Likewise.
6294         * m4/c-stack.m4: Likewise.
6295         * m4/c-strtod.m4: Likewise.
6296         * m4/calloc.m4: Likewise.
6297         * m4/canonicalize-lgpl.m4: Likewise.
6298         * m4/chown.m4: Likewise.
6299         * m4/clock_time.m4: Likewise.
6300         * m4/codeset.m4: Likewise.
6301         * m4/copy-file.m4: Likewise.
6302         * m4/csharp.m4: Likewise.
6303         * m4/csharpcomp.m4: Likewise.
6304         * m4/csharpexec.m4: Likewise.
6305         * m4/d-ino.m4: Likewise.
6306         * m4/d-type.m4: Likewise.
6307         * m4/dirfd.m4: Likewise.
6308         * m4/double-slash-root.m4: Likewise.
6309         * m4/eaccess.m4: Likewise.
6310         * m4/eealloc.m4: Likewise.
6311         * m4/environ.m4: Likewise.
6312         * m4/errno_h.m4: Likewise.
6313         * m4/euidaccess.m4: Likewise.
6314         * m4/execute.m4: Likewise.
6315         * m4/fatal-signal.m4: Likewise.
6316         * m4/fchdir.m4: Likewise.
6317         * m4/fcntl_h.m4: Likewise.
6318         * m4/fileblocks.m4: Likewise.
6319         * m4/filenamecat.m4: Likewise.
6320         * m4/findprog.m4: Likewise.
6321         * m4/flexmember.m4: Likewise.
6322         * m4/fnmatch.m4: Likewise.
6323         * m4/fopen.m4: Likewise.
6324         * m4/fpending.m4: Likewise.
6325         * m4/fprintf-posix.m4: Likewise.
6326         * m4/free.m4: Likewise.
6327         * m4/frexp.m4: Likewise.
6328         * m4/frexpl.m4: Likewise.
6329         * m4/fsusage.m4: Likewise.
6330         * m4/ftruncate.m4: Likewise.
6331         * m4/gc-camellia.m4: Likewise.
6332         * m4/gc-random.m4: Likewise.
6333         * m4/gc.m4: Likewise.
6334         * m4/getaddrinfo.m4: Likewise.
6335         * m4/getcwd-abort-bug.m4: Likewise.
6336         * m4/getcwd-path-max.m4: Likewise.
6337         * m4/getdate.m4: Likewise.
6338         * m4/getdomainname.m4: Likewise.
6339         * m4/getgroups.m4: Likewise.
6340         * m4/gethostname.m4: Likewise.
6341         * m4/gethrxtime.m4: Likewise.
6342         * m4/getline.m4: Likewise.
6343         * m4/getloadavg.m4: Likewise.
6344         * m4/getndelim2.m4: Likewise.
6345         * m4/getpass.m4: Likewise.
6346         * m4/gettext.m4: Likewise.
6347         * m4/gettime.m4: Likewise.
6348         * m4/gettimeofday.m4: Likewise.
6349         * m4/gnulib-common.m4: Likewise.
6350         * m4/group-member.m4: Likewise.
6351         * m4/host-os.m4: Likewise.
6352         * m4/iconv.m4: Likewise.
6353         * m4/iconv_open.m4: Likewise.
6354         * m4/inet_ntop.m4: Likewise.
6355         * m4/inet_pton.m4: Likewise.
6356         * m4/inline.m4: Likewise.
6357         * m4/intldir.m4: Likewise.
6358         * m4/intlmacosx.m4: Likewise.
6359         * m4/intmax.m4: Likewise.
6360         * m4/intmax_t.m4: Likewise.
6361         * m4/inttypes.m4: Likewise.
6362         * m4/inttypes_h.m4: Likewise.
6363         * m4/inttypes-pri.m4: Likewise.
6364         * m4/isapipe.m4: Likewise.
6365         * m4/isnand.m4: Likewise.
6366         * m4/isnanf.m4: Likewise.
6367         * m4/isnanl.m4: Likewise.
6368         * m4/javacomp.m4: Likewise.
6369         * m4/javaexec.m4: Likewise.
6370         * m4/jm-winsz1.m4: Likewise.
6371         * m4/jm-winsz2.m4: Likewise.
6372         * m4/lchown.m4: Likewise.
6373         * m4/lcmessage.m4: Likewise.
6374         * m4/ldexpl.m4: Likewise.
6375         * m4/lib-ld.m4: Likewise.
6376         * m4/lib-link.m4: Likewise.
6377         * m4/libsigsegv.m4: Likewise.
6378         * m4/link-follow.m4: Likewise.
6379         * m4/localcharset.m4: Likewise.
6380         * m4/locale-fr.m4: Likewise.
6381         * m4/locale-ja.m4: Likewise.
6382         * m4/locale-tr.m4: Likewise.
6383         * m4/locale-zh.m4: Likewise.
6384         * m4/lock.m4: Likewise.
6385         * m4/longlong.m4: Likewise.
6386         * m4/ls-mntd-fs.m4: Likewise.
6387         * m4/lstat.m4: Likewise.
6388         * m4/malloc.m4: Likewise.
6389         * m4/mathl.m4: Likewise.
6390         * m4/mbrtowc.m4: Likewise.
6391         * m4/mbstate_t.m4: Likewise.
6392         * m4/mbswidth.m4: Likewise.
6393         * m4/memchr.m4: Likewise.
6394         * m4/memcmp.m4: Likewise.
6395         * m4/memcpy.m4: Likewise.
6396         * m4/memmem.m4: Likewise.
6397         * m4/memmove.m4: Likewise.
6398         * m4/mempcpy.m4: Likewise.
6399         * m4/memrchr.m4: Likewise.
6400         * m4/memset.m4: Likewise.
6401         * m4/minmax.m4: Likewise.
6402         * m4/mkdir-slash.m4: Likewise.
6403         * m4/mkdtemp.m4: Likewise.
6404         * m4/mktime.m4: Likewise.
6405         * m4/mmap-anon.m4: Likewise.
6406         * m4/mountlist.m4: Likewise.
6407         * m4/nanosleep.m4: Likewise.
6408         * m4/nls.m4: Likewise.
6409         * m4/nocrash.m4: Likewise.
6410         * m4/open.m4: Likewise.
6411         * m4/openat.m4: Likewise.
6412         * m4/openmp.m4: Likewise.
6413         * m4/pathmax.m4: Likewise.
6414         * m4/perl.m4: Likewise.
6415         * m4/physmem.m4: Likewise.
6416         * m4/pipe.m4: Likewise.
6417         * m4/po.m4: Likewise.
6418         * m4/poll.m4: Likewise.
6419         * m4/posixtm.m4: Likewise.
6420         * m4/posixver.m4: Likewise.
6421         * m4/printf-frexp.m4: Likewise.
6422         * m4/printf-frexpl.m4: Likewise.
6423         * m4/printf-posix.m4: Likewise.
6424         * m4/printf-posix-rpl.m4: Likewise.
6425         * m4/printf.m4: Likewise.
6426         * m4/progtest.m4: Likewise.
6427         * m4/putenv.m4: Likewise.
6428         * m4/readline.m4: Likewise.
6429         * m4/readlink.m4: Likewise.
6430         * m4/readutmp.m4: Likewise.
6431         * m4/realloc.m4: Likewise.
6432         * m4/regex.m4: Likewise.
6433         * m4/relocatable.m4: Likewise.
6434         * m4/relocatable-lib.m4: Likewise.
6435         * m4/rename-dest-slash.m4: Likewise.
6436         * m4/rename.m4: Likewise.
6437         * m4/rmdir-errno.m4: Likewise.
6438         * m4/rmdir.m4: Likewise.
6439         * m4/roundf.m4: Likewise.
6440         * m4/roundl.m4: Likewise.
6441         * m4/rpmatch.m4: Likewise.
6442         * m4/save-cwd.m4: Likewise.
6443         * m4/selinux-selinux-h.m4: Likewise.
6444         * m4/setenv.m4: Likewise.
6445         * m4/settime.m4: Likewise.
6446         * m4/sig2str.m4: Likewise.
6447         * m4/sig_atomic_t.m4: Likewise.
6448         * m4/signalblocking.m4: Likewise.
6449         * m4/signbit.m4: Likewise.
6450         * m4/sigpipe.m4: Likewise.
6451         * m4/sockets.m4: Likewise.
6452         * m4/sockpfaf.m4: Likewise.
6453         * m4/st_dm_mode.m4: Likewise.
6454         * m4/stat-time.m4: Likewise.
6455         * m4/stdbool.m4: Likewise.
6456         * m4/stdint.m4: Likewise.
6457         * m4/stdint_h.m4: Likewise.
6458         * m4/stpcpy.m4: Likewise.
6459         * m4/stpncpy.m4: Likewise.
6460         * m4/strcase.m4: Likewise.
6461         * m4/strchrnul.m4: Likewise.
6462         * m4/strcspn.m4: Likewise.
6463         * m4/strdup.m4: Likewise.
6464         * m4/strftime.m4: Likewise.
6465         * m4/strndup.m4: Likewise.
6466         * m4/strnlen.m4: Likewise.
6467         * m4/strpbrk.m4: Likewise.
6468         * m4/strptime.m4: Likewise.
6469         * m4/strsep.m4: Likewise.
6470         * m4/strtod.m4: Likewise.
6471         * m4/strtoimax.m4: Likewise.
6472         * m4/strtok_r.m4: Likewise.
6473         * m4/strtol.m4: Likewise.
6474         * m4/strtoll.m4: Likewise.
6475         * m4/strtoul.m4: Likewise.
6476         * m4/strtoull.m4: Likewise.
6477         * m4/strtoumax.m4: Likewise.
6478         * m4/strverscmp.m4: Likewise.
6479         * m4/threadlib.m4: Likewise.
6480         * m4/timegm.m4: Likewise.
6481         * m4/tm_gmtoff.m4: Likewise.
6482         * m4/tmpdir.m4: Likewise.
6483         * m4/tmpfile.m4: Likewise.
6484         * m4/tzset.m4: Likewise.
6485         * m4/uintmax_t.m4: Likewise.
6486         * m4/unlinkdir.m4: Likewise.
6487         * m4/unlocked-io.m4: Likewise.
6488         * m4/uptime.m4: Likewise.
6489         * m4/userspec.m4: Likewise.
6490         * m4/utimbuf.m4: Likewise.
6491         * m4/utime.m4: Likewise.
6492         * m4/utimes-null.m4: Likewise.
6493         * m4/utimes.m4: Likewise.
6494         * m4/vararrays.m4: Likewise.
6495         * m4/vasnprintf.m4: Likewise.
6496         * m4/vfprintf-posix.m4: Likewise.
6497         * m4/vprintf-posix.m4: Likewise.
6498         * m4/wait-process.m4: Likewise.
6499         * m4/wchar_t.m4: Likewise.
6500         * m4/wint_t.m4: Likewise.
6501         * m4/write-any-file.m4: Likewise.
6502         * m4/yield.m4: Likewise.
6503
6504 2009-01-13  Bruno Haible  <bruno@clisp.org>
6505
6506         Avoid test-copy-file.sh failures when ACL support insufficient.
6507         * modules/copy-file-tests (Makefile.am): Pass USE_ACL in
6508         TESTS_ENVIRONMENT.
6509         * tests/test-copy-file.sh: Skip the ACL comparisons if USE_ACL is 0.
6510         Reported by Jim Meyering.
6511
6512 2009-01-13  Bruno Haible  <bruno@clisp.org>
6513
6514         * modules/unistdio/u-printf-args (Files): Add m4/stdint_h.m4 and
6515         m4/inttypes_h.m4, needed by m4/intmax_t.m4.
6516         * modules/unistdio/u8-printf-parse (Files): Likewise.
6517         * modules/unistdio/u32-printf-parse (Files): Likewise.
6518         * modules/unistdio/ulc-printf-parse (Files): Likewise.
6519
6520 2009-01-13  Simon Josefsson  <simon@josefsson.org>
6521
6522         * modules/unistdio/u16-printf-parse (Files): Add m4/stdint_h.m4
6523         and m4/inttypes_h.m4 too.
6524
6525 2009-01-12  Eric Blake  <ebb9@byu.net>
6526
6527         tests: IRIX 6.2 cc can't compile -0.0 into .data
6528         * tests/test-ceill.c (minus_zero): Compute -0.0L at runtime,
6529         rather than at compile-time.
6530         * tests/test-floorl.c (minus_zero): Likewise.
6531         * tests/test-frexpl.c (minus_zero): Likewise.
6532         * tests/test-isnan.c (minus_zerol): Likewise.
6533         * tests/test-isnanl.h (minus_zero): Likewise.
6534         * tests/test-ldexpl.c (minus_zero): Likewise.
6535         * tests/test-roundl.c (minus_zero): Likewise.
6536         * tests/test-signbit.c (minus_zerol): Likewise.
6537         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
6538         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
6539         * tests/test-truncl.c (minus_zero): Likewise.
6540         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
6541         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
6542         Reported by Tom G. Christensen and Nelson H. F. Beebe.
6543
6544 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
6545
6546         regex: fix glibc bug 9697
6547         * lib/regcomp.c (re_compile_fastmap_iter): Rewrite COMPLEX_BRACKET
6548         handling.
6549
6550 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
6551
6552         regex: fix glibc bug 697
6553         * lib/regexec.c (prune_impossible_nodes): Handle sifted_states[0]
6554         being NULL also if there are no backreferences.
6555
6556 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
6557
6558         regex: merge glibc changes
6559         * lib/regcomp.c (re_compile_fastmap_iter): Use __mbrtowc.
6560         * lib/regex_internal.c (build_wcs_buffer, build_wcs_upper_buffer,
6561         re_string_skip_chars, re_string_reconstruct): Likewise.
6562         * lib/regex_internal.h [!_LIBC] (__mbrtowc): New #define.
6563
6564 2009-01-07  Jim Meyering  <meyering@redhat.com>
6565
6566         poll: filter through cppi
6567         * lib/poll.c: Indent cpp directives to reflect nesting.
6568
6569 2009-01-07  Daniel P. Berrange  <berrange@redhat.com>
6570
6571         poll: don't return uninitialized
6572         * lib/poll.c (poll) [WIN32_NATIVE]: Initialize "rc".
6573
6574 2009-01-06  Jeremy Olexa <darkside@gentoo.org>  (tiny change)
6575
6576         avoid compile failure on AIX 6.1
6577         * lib/getloadavg.c [HAVE_LIBPERFSTAT]: Include <sys/protosw.h>.
6578         Details in http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/15465
6579
6580 2009-01-04  Jim Meyering  <meyering@redhat.com>
6581
6582         remove duplicate inclusion of <stdio.h>
6583         * tests/test-fprintf-posix.c: Likewise.
6584         * tests/test-printf-posix.c: Likewise.
6585         * tests/test-snprintf-posix.c: Likewise.
6586         * tests/test-sprintf-posix.c: Likewise.
6587         * tests/test-vasprintf-posix.c: Likewise.
6588         * tests/test-vfprintf-posix.c: Likewise.
6589         * tests/test-vprintf-posix.c: Likewise.
6590         * tests/test-vsnprintf-posix.c: Likewise.
6591         * tests/test-vsprintf-posix.c: Likewise.
6592
6593 2009-01-03  Jim Meyering  <meyering@redhat.com>
6594
6595         gnulib-tool: fix sed-based filtering
6596         * gnulib-tool (func_filter_filelist): Remove extra backslash
6597         in sed_fff_filter definition.
6598
6599 2009-01-02  Jim Meyering  <meyering@redhat.com>
6600
6601         strftime: avoid compilation failure on Solaris 2.6
6602         * modules/strftime (Depends-on): Add mbrlen and mbsinit.
6603         * lib/strftime.c [DO_MULTIBYTE]: Include <wchar.h> unconditionally.
6604         Don't #define mbrlen or mbsinit, since now they're guaranteed to
6605         be available.  Reported by Tom G. Christensen.  Details in
6606         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16180>.
6607
6608 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6609             Bruno Haible  <bruno@clisp.org>
6610
6611         Speed up gnulib-tool by doing more string processing through shell
6612         built-ins.
6613         * gnulib-tool (fast_func_append): New variable.
6614         (func_remove_prefix, func_remove_suffix): New functions.
6615         (fast_func_remove_prefix, fast_func_remove_suffix): New variables.
6616         (func_filter_filelist): New function.
6617         (func_get_dependencies): Use func_remove_suffix instead of sed.
6618         (func_get_automake_snippet): Use func_filter_filelist instead of a
6619         subshell and sed invocation.
6620
6621 2009-01-01  Bruno Haible  <bruno@clisp.org>
6622
6623         Fix a security bug.
6624         * gnulib-tool (func_import, import, update): Don't allow the characters
6625         '"', '$', '`', '\' in macro arguments that become part of commands that
6626         are evaluated.
6627
6628 2009-01-01  Bruno Haible  <bruno@clisp.org>
6629
6630         * gnulib-tool (func_reset_sigpipe): Add more comments.
6631
6632 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6633
6634         * gnulib-tool (func_modules_add_dummy, func_emit_lib_Makefile_am,
6635         func_emit_tests_Makefile_am, func_import): Abort loops early if we
6636         already know the answer.
6637
6638 2009-01-01  Jim Meyering  <meyering@redhat.com>
6639
6640         * lib/version-etc.c (version_etc_va): Update copyright year.
6641
6642 2008-12-30  Bruno Haible  <bruno@clisp.org>
6643
6644         * m4/lib-prefix.m4 (AC_LIB_LINKFLAGS_BODY): Don't overwrite
6645         LIB${NAME}_PREFIX when considering the dependencies of lib${name}.
6646         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
6647
6648 2008-12-29  Eric Blake  <ebb9@byu.net>
6649
6650         multiarch: avoid autoconf AC_REQUIRE bug
6651         * m4/multiarch.m4 (gl_MULTIARCH): Split body...
6652         (gl_MULTIARCH_BODY): ...into new macro, to work around bug in Autoconf
6653         2.63 and older.
6654         Reported by Bruno Haible, and analyzed in
6655         http://lists.gnu.org/archive/html/bug-autoconf/2008-12/msg00039.html
6656
6657 2008-12-29  Bruno Haible  <bruno@clisp.org>
6658
6659         * gnulib-tool (func_import): When generating sed-ignore-removed, handle
6660         files in subdirectories correctly.
6661         Reported by Ralf Wildenhues.
6662
6663 2008-12-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6664
6665         * gnulib-tool (func_update_ignorelist): Use 'join - FILE'
6666         rather than 'join FILE -', for Solaris join.
6667
6668 2008-12-29  Bruno Haible  <bruno@clisp.org>
6669
6670         * m4/codeset.m4 (AM_LANGINFO_CODESET): More systematic m4 argument
6671         quoting.
6672         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
6673         * m4/glibc2.m4 (gt_GLIBC2): Likewise.
6674         * m4/glibc21.m4 (gl_GLIBC21): Likewise.
6675         * m4/iconv.m4 (AM_ICONV_LINK, AM_ICONV): Likewise.
6676         * m4/intdiv0.m4 (gt_INTDIV0): Likewise.
6677         * m4/intlmacosx.m4 (gt_INTL_MACOSX): Likewise.
6678         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Likewise.
6679         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Likewise.
6680         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
6681         * m4/lcmessage.m4 (gt_LC_MESSAGES): Likewise.
6682         * m4/nls.m4 (AM_NLS): Likewise.
6683         * m4/po.m4 (AM_PO_SUBDIRS): Likewise.
6684         * m4/printf-posix.m4 (gt_PRINTF_POSIX): Likewise.
6685         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
6686         * m4/size_max.m4 (gl_SIZE_MAX): Likewise.
6687         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Likewise.
6688         * m4/threadlib.m4 (gl_THREADLIB_BODY): Likewise.
6689         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Likewise.
6690         * m4/visibility.m4 (gl_VISIBILITY): Likewise.
6691         * m4/wchar_t.m4 (gt_TYPE_WCHAR_T): Likewise.
6692         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
6693         * m4/xsize.m4 (gl_XSIZE): Likewise.
6694         Suggested by Jim Meyering.
6695
6696 2008-11-17  Bruce Korb  <bkorb@gnu.org>
6697
6698         * lib/parse-duration.h: non-iso form accepts years, months weeks, too
6699         * lib/parse-duration.c: use a switch instead of cascading if's.
6700
6701 2008-12-29  Eric Blake  <ebb9@byu.net>
6702
6703         wchar.h: supply WEOF on Irix 5.3
6704         * lib/wchar.in.h (wint_t): Also supply WEOF.
6705         * lib/wctype.in.h (wint_t): Likewise.
6706         * doc/posix-headers/wchar.texi (wchar.h): Document the bug.
6707         * doc/posix-headers/wctype.texi (wctype.h): Likewise.
6708         Reported by Tom G. Christensen.
6709
6710 2008-12-26  Bruno Haible  <bruno@clisp.org>
6711
6712         * m4/multiarch.m4 (gl_MULTIARCH): Recognize also the architecture names
6713         i486, i586, i686.
6714
6715 2008-12-26  Bruno Haible  <bruno@clisp.org>
6716
6717         * lib/stdlib.in.h (struct random_data): Fix indentation of comments.
6718
6719 2008-12-26  Bruno Haible  <bruno@clisp.org>
6720
6721         * lib/stdint.in.h: Move the include of <wchar.h> down until after all
6722         the types are defined. Also conditionalize it on __STDC_LIMIT_MACROS,
6723         not __STDC_CONSTANT_MACROS.
6724         Reported by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
6725
6726 2008-12-25  Bruno Haible  <bruno@clisp.org>
6727
6728         Add support for universal builds to vasnprintf.
6729         * m4/printf.m4 (gl_PRINTF_ENOMEM): Require gl_MULTIARCH. In Apple
6730         universal builds, guess no.
6731         * modules/vasnprintf-posix (Depends-on): Add multiarch.
6732         * modules/vasprintf-posix (Depends-on): Likewise.
6733         * modules/fprintf-posix (Depends-on): Likewise.
6734         * modules/vfprintf-posix (Depends-on): Likewise.
6735         * modules/snprintf-posix (Depends-on): Likewise.
6736         * modules/vsnprintf-posix (Depends-on): Likewise.
6737         * modules/sprintf-posix (Depends-on): Likewise.
6738         * modules/vsprintf-posix (Depends-on): Likewise.
6739         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
6740         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
6741         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
6742         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
6743         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
6744         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
6745         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
6746
6747         Add support for universal builds to <inttypes.h>.
6748         * lib/inttypes.in.h (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX,
6749         _SCNu64_PREFIX): In Apple
6750         universal builds, define directly, using _LP64.
6751         * m4/inttypes.m4 (gl_INTTYPES_H): In Apple universal builds, set
6752         INT64_MAX_EQ_LONG_MAX and UINT64_MAX_EQ_ULONG_MAX to -1.
6753         * modules/inttypes (Depends-on): Add multiarch.
6754         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
6755
6756         Add support for universal builds to <stdint.h>.
6757         * lib/stdint.in.h (PDFDIFF_MIN, PTRDIFF_MAX, SIZE_MAX): In Apple
6758         universal builds, define directly, using _LP64.
6759         * m4/stdint.m4 (gl_STDINT_TYPE_PROPERTIES): Require gl_MULTIARCH. In
6760         Apple universal builds, don't test for the size and suffix of ptrdiff_t
6761         and size_t.
6762         * modules/stdint (Depends-on): Add multiarch.
6763         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
6764
6765         New module 'multiarch'.
6766         * modules/multiarch: New file.
6767         * m4/multiarch.m4: New file.
6768
6769 2008-12-25  Bruno Haible  <bruno@clisp.org>
6770
6771         * gnulib-tool (func_create_testdir): Avoid failure of mv command.
6772
6773 2008-12-25  Bruno Haible  <bruno@clisp.org>
6774
6775         * modules/btowc (License): Relicense under LGPLv2+.
6776         * modules/mbsinit (License): Likewise.
6777         * modules/mbrtowc (License): Likewise.
6778         * modules/wcrtomb (License): Likewise.
6779         * modules/streq (License): Likewise.
6780         Reported by David Lutterkort <lutter@redhat.com>.
6781
6782 2008-12-23  Bruno Haible  <bruno@clisp.org>
6783
6784         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Fix conditional and comment.
6785
6786 2008-12-23  Bruno Haible  <bruno@clisp.org>
6787
6788         Module getaddrinfo requires linking with $(GETADDRINFO_LIB).
6789         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Put link options into
6790         GETADDRINFO_LIB, not in LIBS.
6791         * modules/getaddrinfo (Link): Set to $(GETADDRINFO_LIB).
6792         * modules/canon-host (Link): Likewise.
6793         * NEWS: Mention the change.
6794         * modules/getaddrinfo-tests (test_getaddrinfo_LDADD): Add the
6795         GETADDRINFO_LIB.
6796
6797 2008-12-22  Bruno Haible  <bruno@clisp.org>
6798
6799         * doc/posix-functions/iswalnum_l.texi: Mention limitation of wchar_t.
6800         * doc/posix-functions/iswalpha_l.texi: Likewise.
6801         * doc/posix-functions/iswblank_l.texi: Likewise.
6802         * doc/posix-functions/iswcntrl_l.texi: Likewise.
6803         * doc/posix-functions/iswctype_l.texi: Likewise.
6804         * doc/posix-functions/iswdigit_l.texi: Likewise.
6805         * doc/posix-functions/iswgraph_l.texi: Likewise.
6806         * doc/posix-functions/iswlower_l.texi: Likewise.
6807         * doc/posix-functions/iswprint_l.texi: Likewise.
6808         * doc/posix-functions/iswpunct_l.texi: Likewise.
6809         * doc/posix-functions/iswspace_l.texi: Likewise.
6810         * doc/posix-functions/iswupper_l.texi: Likewise.
6811         * doc/posix-functions/iswxdigit_l.texi: Likewise.
6812         * doc/posix-functions/mbsnrtowcs.texi: Likewise.
6813         * doc/posix-functions/open_wmemstream.texi: Likewise.
6814         * doc/posix-functions/swscanf.texi: Likewise.
6815         * doc/posix-functions/towctrans_l.texi: Likewise.
6816         * doc/posix-functions/towlower.texi: Likewise.
6817         * doc/posix-functions/towlower_l.texi: Likewise.
6818         * doc/posix-functions/towupper.texi: Likewise.
6819         * doc/posix-functions/towupper_l.texi: Likewise.
6820         * doc/posix-functions/vfwprintf.texi: Likewise.
6821         * doc/posix-functions/vfwscanf.texi: Likewise.
6822         * doc/posix-functions/vswscanf.texi: Likewise.
6823         * doc/posix-functions/vwprintf.texi: Likewise.
6824         * doc/posix-functions/vwscanf.texi: Likewise.
6825         * doc/posix-functions/wcpcpy.texi: Likewise.
6826         * doc/posix-functions/wcpncpy.texi: Likewise.
6827         * doc/posix-functions/wcscasecmp.texi: Likewise.
6828         * doc/posix-functions/wcscasecmp_l.texi: Likewise.
6829         * doc/posix-functions/wcscoll_l.texi: Likewise.
6830         * doc/posix-functions/wcsdup.texi: Likewise.
6831         * doc/posix-functions/wcsncasecmp.texi: Likewise.
6832         * doc/posix-functions/wcsncasecmp_l.texi: Likewise.
6833         * doc/posix-functions/wcsnlen.texi: Likewise.
6834         * doc/posix-functions/wcsnrtombs.texi: Likewise.
6835         * doc/posix-functions/wcsxfrm_l.texi: Likewise.
6836         * doc/posix-functions/wctrans_l.texi: Likewise.
6837         * doc/posix-functions/wctype_l.texi: Likewise.
6838         * doc/glibc-functions/fgetwc_unlocked.texi: Likewise.
6839         * doc/glibc-functions/fgetws_unlocked.texi: Likewise.
6840         * doc/glibc-functions/fputwc_unlocked.texi: Likewise.
6841         * doc/glibc-functions/fputws_unlocked.texi: Likewise.
6842         * doc/glibc-functions/getwc_unlocked.texi: Likewise.
6843         * doc/glibc-functions/getwchar_unlocked.texi: Likewise.
6844         * doc/glibc-functions/putwc_unlocked.texi: Likewise.
6845         * doc/glibc-functions/putwchar_unlocked.texi: Likewise.
6846         * doc/glibc-functions/wcschrnul.texi: Likewise.
6847         * doc/glibc-functions/wcsftime_l.texi: Likewise.
6848         * doc/glibc-functions/wcstod_l.texi: Likewise.
6849         * doc/glibc-functions/wcstof_l.texi: Likewise.
6850         * doc/glibc-functions/wcstol_l.texi: Likewise.
6851         * doc/glibc-functions/wcstold_l.texi: Likewise.
6852         * doc/glibc-functions/wcstoll_l.texi: Likewise.
6853         * doc/glibc-functions/wcstoq.texi: Likewise.
6854         * doc/glibc-functions/wcstoul_l.texi: Likewise.
6855         * doc/glibc-functions/wcstoull_l.texi: Likewise.
6856         * doc/glibc-functions/wcstouq.texi: Likewise.
6857         * doc/glibc-functions/wmempcpy.texi: Likewise.
6858
6859 2008-12-22  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
6860             Eric Blake  <ebb9@byu.net>
6861             Paolo Bonzini  <bonzini@gnu.org>
6862             Bruno Haible  <bruno@clisp.org>
6863
6864         Make c-stack work on Haiku.
6865         * lib/c-stack.c (SA_ONSTACK): Define fallback.
6866         (c_stack_action): Use SA_ONSTACK flag.
6867
6868 2008-12-22  Bruno Haible  <bruno@clisp.org>
6869
6870         * m4/locale-fr.m4 (gt_LOCALE_FR_UTF8): Treat Haiku like BeOS.
6871
6872 2008-12-22  Bruno Haible  <bruno@clisp.org>
6873
6874         Work around mbrlen() bugs on AIX, HP-UX, OSF/1, Solaris.
6875         * m4/mbrlen.m4 (gl_FUNC_MBRLEN): Set REPLACE_MBRLEN if mbrtowc is
6876         being overridden.
6877         (gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL, gl_MBRLEN_NUL_RETVAL):
6878         New macros.
6879         * lib/wchar.in.h (mbrlen): Override if REPLACE_MBRLEN is set.
6880         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBRLEN.
6881         * modules/wchar (Makefile.am): Substitute REPLACE_MBRLEN.
6882         * doc/posix-functions/mbrlen.texi: Mention the various platform bugs.
6883
6884 2008-12-22  Bruno Haible  <bruno@clisp.org>
6885
6886         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE): Remove unused variable
6887         from test code.
6888
6889 2008-12-22  Eric Blake  <ebb9@byu.net>
6890
6891         Avoid gcc warnings on cygwin.
6892         * lib/regex_internal.c (re_string_reconstruct) [!RE_ENABLE_I18N]:
6893         Avoid unused variable.
6894         * lib/regexec.c (check_arrival_add_next_nodes) [!RE_ENABLE_I18N]:
6895         Likewise.
6896
6897 2008-12-22  Bruno Haible  <bruno@clisp.org>
6898
6899         Remove HAVE_MBRTOWC conditionals.
6900         * lib/mbscasecmp.c: Include mbuiter.h unconditionally.
6901         (mbscasecmp): Assume mbrtowc function.
6902         * lib/mbscasestr.c: Include mbuiter.h unconditionally.
6903         (knuth_morris_pratt_multibyte, mbscasestr): Assume mbrtowc function.
6904         * lib/mbschr.c: Include mbuiter.h unconditionally.
6905         (mbschr): Assume mbrtowc function.
6906         * lib/mbscspn.c: Include mbuiter.h unconditionally.
6907         (mbscspn): Assume mbrtowc function.
6908         * lib/mbslen.c: Include mbuiter.h unconditionally.
6909         (mbslen): Assume mbrtowc function.
6910         * lib/mbsncasecmp.c: Include mbuiter.h unconditionally.
6911         (mbsncasecmp): Assume mbrtowc function.
6912         * lib/mbsnlen.c: Include mbiter.h unconditionally.
6913         (mbsnlen): Assume mbrtowc function.
6914         * lib/mbspbrk.c: Include mbuiter.h unconditionally.
6915         (mbspbrk): Assume mbrtowc function.
6916         * lib/mbspcasecmp.c: Include mbuiter.h unconditionally.
6917         (mbspcasecmp): Assume mbrtowc function.
6918         * lib/mbsrchr.c: Include mbuiter.h unconditionally.
6919         (mbsrchr): Assume mbrtowc function.
6920         * lib/mbssep.c: Include mbuiter.h unconditionally.
6921         (mbssep): Assume mbrtowc function.
6922         * lib/mbsspn.c: Include mbuiter.h unconditionally.
6923         (mbsspn): Assume mbrtowc function.
6924         * lib/mbsstr.c: Include mbuiter.h unconditionally.
6925         (knuth_morris_pratt_multibyte, mbsstr): Assume mbrtowc function.
6926         * lib/mbstok_r.c: Include mbuiter.h unconditionally.
6927         (mbstok_r): Assume mbrtowc function.
6928         * lib/propername.c: Include mbuiter.h unconditionally.
6929         (mbsstr_trimmed_wordbounded): Assume mbrtowc function.
6930         * lib/trim.c: Include mbchar.h, mbiter.h uncondtionally.
6931         (trim2): Assume mbrtowc function.
6932         * lib/mbswidth.c (mbsinit): Remove fallback definition.
6933         (mbsnwidth): Assume mbrtowc function.
6934         * modules/mbswidth (Depends-on): Add mbrtowc, mbsinit.
6935         * lib/quotearg.c (MB_CUR_MAX, mbstate_t, mbrtowc, iswprint): Remove
6936         fallback definitions.
6937         * modules/quotearg (Depends-on): Add mbrtowc, mbsinit.
6938
6939 2008-12-22  Bruno Haible  <bruno@clisp.org>
6940
6941         * doc/posix-functions/mbtowc.texi: Mention a glibc bug.
6942
6943 2008-12-22  Paolo Bonzini  <bonzini@gnu.org>
6944
6945         * modules/regex: Request emulations for the mb*/wc* functions we need.
6946         * m4/regex.m4: Don't look for those functions here.
6947         * lib/regex_internal.h: Do not check HAVE_WCRTOMB and HAVE_MBRTOWC.
6948
6949 2008-12-22  Bruno Haible  <bruno@clisp.org>
6950
6951         * modules/fnmatch (Depends-on): Remove duplicated dependency.
6952
6953 2008-12-21  Bruno Haible  <bruno@clisp.org>
6954
6955         Make mbiter.h, mbuiter.h, mbfile.h usable unconditionally.
6956         * modules/mbiter (Depends-on): Add mbrtowc, mbsinit.
6957         (Include): Remove conditionalization.
6958         * modules/mbuiter (Depends-on): Add mbrtowc, mbsinit.
6959         (Include): Remove conditionalization.
6960         * modules/mbfile (Depends-on): Add mbrtowc, mbsinit.
6961         (Include): Remove conditionalization.
6962         * m4/mbiter.m4 (gl_MBITER): Deprecate the use of AC_FUNC_MBRTOWC.
6963         * m4/mbfile.m4 (gl_MBFILE): Likewise.
6964         * NEWS: Mention the change.
6965         Reported by Alan Hourihane <alanh@fairlite.co.uk>
6966         via Sergey Poznyakoff <gray@gnu.org.ua>.
6967
6968 2008-12-21  Bruno Haible  <bruno@clisp.org>
6969
6970         * MODULES.html.sh (Extended multibyte and wide character utilities
6971         <wchar.h>): Add btowc, wctob, mbsinit, mbrlen, mbrtowc, mbsrtowcs,
6972         wcrtomb, wcsrtombs.
6973         (Support for systems lacking POSIX:2008): Add accept, bind, close,
6974         connect, fclose, getpeername, getsockname, getsockopt, hostent, listen,
6975         mbsnrtowcs, posix_spawn*, recv, recvfrom, sched, select, send, sendto,
6976         setsockopt, shutdown, socket, spawn, sys_wait, wcsnrtombs, write.
6977
6978 2008-12-21  Bruno Haible  <bruno@clisp.org>
6979
6980         * MODULES.html.sh: Change section titles to refer to POSIX:2008.
6981
6982 2008-12-21  Bruno Haible  <bruno@clisp.org>
6983
6984         * modules/wcsnrtombs-tests: New file.
6985         * tests/test-wcsnrtombs1.sh: New file.
6986         * tests/test-wcsnrtombs2.sh: New file.
6987         * tests/test-wcsnrtombs3.sh: New file.
6988         * tests/test-wcsnrtombs4.sh: New file.
6989         * tests/test-wcsnrtombs.c: New file.
6990
6991         New module 'wcsnrtombs'.
6992         * lib/wchar.in.h (wcsnrtombs): New declaration.
6993         * lib/wcsnrtombs.c: New file.
6994         * lib/wcsrtombs-state.c: New file.
6995         * lib/wcsrtombs.c: Refer to _gl_wcsrtombs_state.
6996         (internal_state): Remove variable.
6997         * m4/wcsnrtombs.m4: New file.
6998         * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): Add wcsrtombs-state.c to the
6999         compilation units.
7000         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNRTOMBS,
7001         HAVE_WCSNRTOMBS.
7002         * modules/wchar (Makefile.am): Substitute GNULIB_WCSNRTOMBS,
7003         HAVE_WCSNRTOMBS.
7004         * modules/wcsnrtombs: New file.
7005         * modules/wcsrtombs (Files): Add lib/wcsrtombs-state.c.
7006         * doc/posix-functions/wcsnrtombs.texi: Mention the new module.
7007
7008 2008-12-21  Bruno Haible  <bruno@clisp.org>
7009
7010         * modules/wcsrtombs-tests: New file.
7011         * tests/test-wcsrtombs1.sh: New file.
7012         * tests/test-wcsrtombs2.sh: New file.
7013         * tests/test-wcsrtombs3.sh: New file.
7014         * tests/test-wcsrtombs4.sh: New file.
7015         * tests/test-wcsrtombs.c: New file.
7016
7017         New module 'wcsrtombs'.
7018         * lib/wchar.in.h (wcsrtombs): New declaration.
7019         * lib/wcsrtombs.c: New file.
7020         * m4/wcsrtombs.m4: New file.
7021         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRTOMBS,
7022         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
7023         * modules/wchar (Makefile.am): Substitute GNULIB_WCSRTOMBS,
7024         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
7025         * modules/wcsrtombs: New file.
7026         * doc/posix-functions/wcsrtombs.texi: Mention the new module and the
7027         bugs.
7028
7029 2008-12-21  Bruno Haible  <bruno@clisp.org>
7030
7031         Work around a wcrtomb() bug on Solaris 10 and OSF/1 5.1.
7032         * lib/wchar.in.h (wcrtomb): Override if REPLACE_WCRTOMB is set.
7033         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Test the return value of wcrtomb
7034         with NULL destination argument in various locales. Set REPLACE_WCRTOMB
7035         if not correct.
7036         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCRTOMB.
7037         * modules/wchar (Makefile.am): Substitute REPLACE_WCRTOMB.
7038         * modules/wcrtomb (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
7039         m4/locale-zh.m4, m4/codeset.m4.
7040         * doc/posix-functions/wcrtomb.texi: Document the bug.
7041
7042 2008-12-21  Bruno Haible  <bruno@clisp.org>
7043
7044         Work around a btowc() bug on IRIX 6.5.
7045         * lib/wchar.in.h (btowc): Override if REPLACE_BTOWC is set.
7046         * m4/btowc.m4 (gl_FUNC_BTOWC): Test whether btowc(EOF) is correct. Set
7047         REPLACE_WTOBC if not.
7048         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_BTOWC.
7049         * modules/wchar (Makefile.am): Substitute REPLACE_BTOWC.
7050         * doc/posix-functions/btowc.texi: Mention the IRIX bug.
7051
7052 2008-12-21  Bruno Haible  <bruno@clisp.org>
7053
7054         * modules/wcrtomb-tests: New file.
7055         * tests/test-wcrtomb.sh: New file.
7056         * tests/test-wcrtomb.c: New file.
7057
7058         New module 'wcrtomb'.
7059         * lib/wchar.in.h (wcrtomb): New declaration.
7060         * lib/wcrtomb.c: New file.
7061         * m4/wcrtomb.m4: New file.
7062         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCRTOMB,
7063         HAVE_WCRTOMB.
7064         * modules/wchar (Makefile.am): Substitute GNULIB_WCRTOMB,
7065         HAVE_WCRTOMB.
7066         * modules/wcrtomb: New file.
7067         * doc/posix-functions/wcrtomb.texi: Mention the new module.
7068
7069 2008-12-21  Bruno Haible  <bruno@clisp.org>
7070
7071         * modules/mbrtowc (Files): Add m4/codeset.m4, needed by m4/locale-fr.m4.
7072         * modules/mbsrtowcs (Files): Likewise.
7073         * modules/wctob (Files): Likewise.
7074         * modules/c-strcase-tests (Files): Likewise.
7075         * modules/unistdio/u8-vasnprintf-tests (Files): Likewise.
7076         * modules/unistdio/u16-vasnprintf-tests (Files): Likewise.
7077         * modules/unistdio/u32-vasnprintf-tests (Files): Likewise.
7078         * modules/unistdio/ulc-vasnprintf-tests (Files): Likewise.
7079         * modules/vasnprintf-posix-tests (Files): Likewise.
7080
7081 2008-12-21  William Pursell  <bill.pursell@gmail.com>
7082
7083         gitlog-to-changelog: pass all command-line arguments to git-log
7084         * build-aux/gitlog-to-changelog: When producing a ChangeLog,
7085         it is sometimes convenient to filter the commits in various ways.
7086         gitlog-to-changelog only allows --since to specify a start date,
7087         but git-log itself supports many other filtering mechanisms.
7088         At the moment, I want to filter by branch name.  Rather than
7089         adding a --branch option to gitlog-to-changelog, it seems more
7090         flexible to simply pass all options directly to git-log and let
7091         git do the work.  Notice that this effectively makes --since a
7092         redundant option for gitlog-to-changelog, but removing it would
7093         require current usage to change since calls would then require
7094         an additional '--'.
7095
7096 2008-12-21  Bruno Haible  <bruno@clisp.org>
7097
7098         * modules/mbsnrtowcs-tests: New file.
7099         * tests/test-mbsnrtowcs1.sh: New file.
7100         * tests/test-mbsnrtowcs2.sh: New file.
7101         * tests/test-mbsnrtowcs3.sh: New file.
7102         * tests/test-mbsnrtowcs4.sh: New file.
7103         * tests/test-mbsnrtowcs.c: New file.
7104
7105         New module 'mbsnrtowcs'.
7106         * lib/wchar.in.h (mbsnrtowcs): New declaration.
7107         * lib/mbsnrtowcs.c: New file.
7108         * lib/mbsrtowcs-state.c: New file.
7109         * lib/mbsrtowcs.c: Refer to _gl_mbsrtowcs_state.
7110         (internal_state): Remove variable.
7111         * m4/mbsnrtowcs.m4: New file.
7112         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Add mbsrtowcs-state.c to the
7113         compilation units.
7114         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSNRTOWCS,
7115         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
7116         * modules/wchar (Makefile.am): Substitute GNULIB_MBSNRTOWCS,
7117         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
7118         * modules/mbsnrtowcs: New file.
7119         * modules/mbsrtowcs (Files): Add lib/mbsrtowcs-state.c.
7120         * doc/posix-functions/mbsnrtowcs.texi: Mention the new module and a
7121         portability problem.
7122
7123 2008-12-21  Bruno Haible  <bruno@clisp.org>
7124
7125         Work around mbsrtowcs bug.
7126         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): New macro.
7127         (gl_FUNC_MBSRTOWCS): Invoke it.
7128         * modules/mbsrtowcs (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
7129         m4/locale-zh.m4.
7130         * doc/posix-functions/mbsrtowcs.texi: Document the bug.
7131
7132 2008-12-21  Bruno Haible  <bruno@clisp.org>
7133
7134         * tests/test-mbsrtowcs.c (main): Execute the loop also for unlimited=1.
7135
7136 2008-12-21  Bruno Haible  <bruno@clisp.org>
7137
7138         Update doc for AIX.
7139         * doc/pastposix-functions/wcswcs.texi: Mention that AIX has only a
7140         16-bit wchar_t type.
7141         * doc/posix-functions/btowc.texi: Likewise.
7142         * doc/posix-functions/fgetwc.texi: Likewise.
7143         * doc/posix-functions/fgetws.texi: Likewise.
7144         * doc/posix-functions/fputwc.texi: Likewise.
7145         * doc/posix-functions/fputws.texi: Likewise.
7146         * doc/posix-functions/fwide.texi: Likewise.
7147         * doc/posix-functions/fwprintf.texi: Likewise.
7148         * doc/posix-functions/fwscanf.texi: Likewise.
7149         * doc/posix-functions/getwchar.texi: Likewise.
7150         * doc/posix-functions/getwc.texi: Likewise.
7151         * doc/posix-functions/iswalnum.texi: Likewise.
7152         * doc/posix-functions/iswalpha.texi: Likewise.
7153         * doc/posix-functions/iswblank.texi: Likewise.
7154         * doc/posix-functions/iswcntrl.texi: Likewise.
7155         * doc/posix-functions/iswctype.texi: Likewise.
7156         * doc/posix-functions/iswdigit.texi: Likewise.
7157         * doc/posix-functions/iswgraph.texi: Likewise.
7158         * doc/posix-functions/iswlower.texi: Likewise.
7159         * doc/posix-functions/iswprint.texi: Likewise.
7160         * doc/posix-functions/iswpunct.texi: Likewise.
7161         * doc/posix-functions/iswspace.texi: Likewise.
7162         * doc/posix-functions/iswupper.texi: Likewise.
7163         * doc/posix-functions/iswxdigit.texi: Likewise.
7164         * doc/posix-functions/mbrtowc.texi: Likewise.
7165         * doc/posix-functions/mbsrtowcs.texi: Likewise.
7166         * doc/posix-functions/mbstowcs.texi: Likewise.
7167         * doc/posix-functions/mbtowc.texi: Likewise.
7168         * doc/posix-functions/putwchar.texi: Likewise.
7169         * doc/posix-functions/putwc.texi: Likewise.
7170         * doc/posix-functions/swprintf.texi: Likewise.
7171         * doc/posix-functions/tolower.texi: Likewise.
7172         * doc/posix-functions/toupper.texi: Likewise.
7173         * doc/posix-functions/towctrans.texi: Likewise.
7174         * doc/posix-functions/ungetwc.texi: Likewise.
7175         * doc/posix-functions/vswprintf.texi: Likewise.
7176         * doc/posix-functions/wcrtomb.texi: Likewise.
7177         * doc/posix-functions/wcscat.texi: Likewise.
7178         * doc/posix-functions/wcschr.texi: Likewise.
7179         * doc/posix-functions/wcscmp.texi: Likewise.
7180         * doc/posix-functions/wcscoll.texi: Likewise.
7181         * doc/posix-functions/wcscpy.texi: Likewise.
7182         * doc/posix-functions/wcscspn.texi: Likewise.
7183         * doc/posix-functions/wcsftime.texi: Likewise.
7184         * doc/posix-functions/wcslen.texi: Likewise.
7185         * doc/posix-functions/wcsncat.texi: Likewise.
7186         * doc/posix-functions/wcsncmp.texi: Likewise.
7187         * doc/posix-functions/wcsncpy.texi: Likewise.
7188         * doc/posix-functions/wcspbrk.texi: Likewise.
7189         * doc/posix-functions/wcsrchr.texi: Likewise.
7190         * doc/posix-functions/wcsrtombs.texi: Likewise.
7191         * doc/posix-functions/wcsspn.texi: Likewise.
7192         * doc/posix-functions/wcsstr.texi: Likewise.
7193         * doc/posix-functions/wcstod.texi: Likewise.
7194         * doc/posix-functions/wcstof.texi: Likewise.
7195         * doc/posix-functions/wcstoimax.texi: Likewise.
7196         * doc/posix-functions/wcstok.texi: Likewise.
7197         * doc/posix-functions/wcstold.texi: Likewise.
7198         * doc/posix-functions/wcstoll.texi: Likewise.
7199         * doc/posix-functions/wcstol.texi: Likewise.
7200         * doc/posix-functions/wcstombs.texi: Likewise.
7201         * doc/posix-functions/wcstoull.texi: Likewise.
7202         * doc/posix-functions/wcstoul.texi: Likewise.
7203         * doc/posix-functions/wcstoumax.texi: Likewise.
7204         * doc/posix-functions/wcswidth.texi: Likewise.
7205         * doc/posix-functions/wcsxfrm.texi: Likewise.
7206         * doc/posix-functions/wctob.texi: Likewise.
7207         * doc/posix-functions/wctomb.texi: Likewise.
7208         * doc/posix-functions/wctrans.texi: Likewise.
7209         * doc/posix-functions/wctype.texi: Likewise.
7210         * doc/posix-functions/wcwidth.texi: Likewise.
7211         * doc/posix-functions/wmemchr.texi: Likewise.
7212         * doc/posix-functions/wmemcmp.texi: Likewise.
7213         * doc/posix-functions/wmemcpy.texi: Likewise.
7214         * doc/posix-functions/wmemmove.texi: Likewise.
7215         * doc/posix-functions/wmemset.texi: Likewise.
7216         * doc/posix-functions/wprintf.texi: Likewise.
7217         * doc/posix-functions/wscanf.texi: Likewise.
7218
7219 2008-12-21  Bruno Haible  <bruno@clisp.org>
7220
7221         Update doc for HP-UX 11.11.
7222         * doc/posix-functions/btowc.texi: Clarify that the function is missing
7223         in HP-UX version 11.00, not in all versions of HP-UX 11.
7224         * doc/posix-functions/fwide.texi: Likewise.
7225         * doc/posix-functions/fwprintf.texi: Likewise.
7226         * doc/posix-functions/fwscanf.texi: Likewise.
7227         * doc/posix-functions/inet_ntop.texi: Likewise.
7228         * doc/posix-functions/inet_pton.texi: Likewise.
7229         * doc/posix-functions/mbrlen.texi: Likewise.
7230         * doc/posix-functions/mbrtowc.texi: Likewise.
7231         * doc/posix-functions/mbsinit.texi: Likewise.
7232         * doc/posix-functions/mbsrtowcs.texi: Likewise.
7233         * doc/posix-functions/swprintf.texi: Likewise.
7234         * doc/posix-functions/swscanf.texi: Likewise.
7235         * doc/posix-functions/towctrans.texi: Likewise.
7236         * doc/posix-functions/vfwprintf.texi: Likewise.
7237         * doc/posix-functions/vswprintf.texi: Likewise.
7238         * doc/posix-functions/vwprintf.texi: Likewise.
7239         * doc/posix-functions/wcrtomb.texi: Likewise.
7240         * doc/posix-functions/wcsrtombs.texi: Likewise.
7241         * doc/posix-functions/wcsstr.texi: Likewise.
7242         * doc/posix-functions/wctob.texi: Likewise.
7243         * doc/posix-functions/wctrans.texi: Likewise.
7244         * doc/posix-functions/wmemchr.texi: Likewise.
7245         * doc/posix-functions/wmemcmp.texi: Likewise.
7246         * doc/posix-functions/wmemcpy.texi: Likewise.
7247         * doc/posix-functions/wmemmove.texi: Likewise.
7248         * doc/posix-functions/wmemset.texi: Likewise.
7249         * doc/posix-functions/wprintf.texi: Likewise.
7250         * doc/posix-functions/wscanf.texi: Likewise.
7251
7252 2008-12-21  Bruno Haible  <bruno@clisp.org>
7253
7254         Work around a portability problem.
7255         * tests/test-mbsrtowcs.c (main): Use a temporary conversion state.
7256         * doc/posix-functions/mbsrtowcs.texi: Document the portability problem.
7257
7258 2008-12-20  Bruno Haible  <bruno@clisp.org>
7259
7260         * lib/wchar.in.h (mbsrtowcs): Redefine if REPLACE_MBSRTOWCS is set.
7261         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBSTATE_T_BROKEN. Set
7262         REPLACE_MBSRTOWCS if mbsrtowcs needs to be overridden.
7263         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSRTOWCS.
7264         * modules/wchar (Makefile.am): Substitute REPLACE_MBSRTOWCS.
7265
7266         Work around mbrtowc bugs on AIX, HP-UX, OSF/1, Solaris.
7267         * lib/wchar.in.h (mbstate_t): Redefine also if REPLACE_MBSTATE_T is
7268         set.
7269         (GNULIB_defined_mbstate_t): New macro.
7270         (mbsinit): Redefine if REPLACE_MBSINIT is set.
7271         (mbrtowc): Redefine if REPLACE_MBRTOWC is set.
7272         * lib/mbrtowc.c (rpl_mbrtowc): Add an alternative implementation that
7273         reuses the system's mbrtowc function but works around the bugs.
7274         * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN, gl_MBRTOWC_INCOMPLETE_STATE,
7275         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL): New
7276         macros.
7277         (gl_FUNC_MBRTOWC): Invoke them. Set REPLACE_MBRTOWC if mbrtowc needs to
7278         be overridden. Optionally define MBRTOWC_NULL_ARG_BUG,
7279         MBRTOWC_RETVAL_BUG, MBRTOWC_NUL_RETVAL_BUG.
7280         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_MBSTATE_T_BROKEN. Set
7281         REPLACE_MBSINIT if mbsinit needs to be overridden.
7282         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSTATE_T,
7283         REPLACE_MBSINIT, REPLACE_MBRTOWC.
7284         * modules/wchar (Makefile.am): Substitute REPLACE_MBSTATE_T,
7285         REPLACE_MBSINIT, REPLACE_MBRTOWC.
7286         * modules/mbrtowc (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
7287         m4/locale-zh.m4.
7288         (Depends): Add mbsinit.
7289         * modules/mbsinit (Depends): Add mbrtowc.
7290         * doc/posix-functions/mbrtowc.texi: Mention the various bugs.
7291
7292 2008-12-20  Bruno Haible  <bruno@clisp.org>
7293
7294         * tests/test-mbrtowc.c (main): Change sample string in EUC-JP encoding
7295         so that there are no conversion errors on AIX.
7296         * tests/test-mbsrtowcs.c (main): LIkewise.
7297
7298 2008-12-20  Bruno Haible  <bruno@clisp.org>
7299
7300         Work around wctob bug on Solaris <= 9.
7301         * lib/wchar.in.h (wctob): Redefine if REPLACE_WCTOB is set.
7302         * m4/wctob.m4 (gl_FUNC_WCTOB): Test whether wctob works.
7303         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCTOB.
7304         * modules/wchar (Makefile.am): Substitute REPLACE_WCTOB.
7305         * modules/wctob (Files): Add m4/locale-fr.m4.
7306         * doc/posix-functions/wctob.texi: Mention the Solaris bug.
7307
7308 2008-12-20  Bruno Haible  <bruno@clisp.org>
7309
7310         * doc/posix-functions/select.texi: Mention Solaris 2.6 bug with
7311         /dev/null.
7312         * tests/test-select-in.sh: Likewise.
7313         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
7314
7315 2008-12-20  Bruno Haible  <bruno@clisp.org>
7316
7317         Don't pretend that Cygwin has a ja_JP.EUC-JP locale.
7318         * m4/locale-ja.m4 (gt_LOCALE_JA): Add test for MB_CUR_MAX. Needed on
7319         Cygwin 1.5.x.
7320
7321 2008-12-20  Bruno Haible  <bruno@clisp.org>
7322
7323         Ensure mbstate_t is defined on HP-UX 11.11.
7324         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Require
7325         AC_CANONICAL_HOST. On HP-UX, define _XOPEN_SOURCE to 500.
7326         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Require
7327         AC_USE_SYSTEM_EXTENSIONS.
7328         * modules/fnmatch (Depends-on): Add extensions.
7329         * modules/mbrlen (Depends-on): Likewise.
7330         * modules/mbrtowc (Depends-on): Likewise.
7331         * modules/mbsinit (Depends-on): Likewise.
7332         * modules/mbsrtowcs (Depends-on): Likewise.
7333         * modules/mbswidth (Depends-on): Likewise.
7334         * modules/quotearg (Depends-on): Likewise.
7335         * modules/strftime (Depends-on): Likewise.
7336
7337 2008-12-20  Bruno Haible  <bruno@clisp.org>
7338
7339         Ensure wctob is declared on IRIX 6.5.
7340         * lib/wchar.in.h (wctob): Declare also when HAVE_DECL_WCTOB is 0.
7341         * m4/wctob.m4 (gl_FUNC_WCTOB): Set HAVE_DECL_WCTOB instead of
7342         HAVE_WCTOB. Also test whether <wchar.h> declares wctob.
7343         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize HAVE_DECL_WCTOB instead
7344         of HAVE_WCTOB.
7345         * modules/wchar (Makefile.am): Substitute HAVE_DECL_WCTOB instead of
7346         HAVE_WCTOB.
7347         * doc/posix-functions/wctob.texi: Mention missing declaration on IRIX.
7348
7349 2008-12-19  Bruno Haible  <bruno@clisp.org>
7350
7351         * modules/mbsrtowcs-tests: New file.
7352         * tests/test-mbsrtowcs1.sh: New file.
7353         * tests/test-mbsrtowcs2.sh: New file.
7354         * tests/test-mbsrtowcs3.sh: New file.
7355         * tests/test-mbsrtowcs4.sh: New file.
7356         * tests/test-mbsrtowcs.c: New file.
7357
7358         New module 'mbsrtowcs'.
7359         * lib/wchar.in.h (mbsrtowcs): New declaration.
7360         * lib/mbsrtowcs.c: New file.
7361         * m4/mbsrtowcs.m4: New file.
7362         * modules/mbsrtowcs: New file.
7363         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSRTOWCS and
7364         HAVE_MBSRTOWCS.
7365         * modules/wchar (Makefile.am): Substitute GNULIB_MBSRTOWCS and
7366         HAVE_MBSRTOWCS.
7367         * doc/posix-functions/mbsrtowcs.texi: Document the new module.
7368
7369 2008-12-19  Bruno Haible  <bruno@clisp.org>
7370
7371         New module 'mbrlen'.
7372         * lib/wchar.in.h (mbrlen): New declaration.
7373         * lib/mbrlen.c: New file.
7374         * m4/mbrlen.m4: New file.
7375         * modules/mbrlen: New file.
7376         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRLEN and
7377         HAVE_MBRLEN.
7378         * modules/wchar (Makefile.am): Substitute GNULIB_MBRLEN and
7379         HAVE_MBRLEN.
7380         * doc/posix-functions/mbrlen.texi: Document the new module.
7381
7382 2008-12-19  Bruno Haible  <bruno@clisp.org>
7383
7384         * lib/mbrtowc.c: Include verify.h. Verify an assumption.
7385         * modules/mbrtowc (Depends-on): Add verify.
7386         Suggested by Paul Eggert.
7387
7388 2008-12-18  Bruno Haible  <bruno@clisp.org>
7389
7390         * modules/mbsinit-tests: New file.
7391         * tests/test-mbsinit.sh: New file.
7392         * tests/test-mbsinit.c: New file.
7393
7394 2008-12-18  Bruno Haible  <bruno@clisp.org>
7395
7396         * modules/mbrtowc-tests: New file.
7397         * tests/test-mbrtowc1.sh: New file.
7398         * tests/test-mbrtowc2.sh: New file.
7399         * tests/test-mbrtowc3.sh: New file.
7400         * tests/test-mbrtowc4.sh: New file.
7401         * tests/test-mbrtowc.c: New file.
7402
7403         New module 'mbrtowc'.
7404         * lib/wchar.in.h (mbstate_t): Override when the system does not have
7405         mbsinit and mbrtowc.
7406         (mbrtowc): New declaration.
7407         * lib/mbrtowc.c: New file.
7408         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC, gl_PREREQ_MBRTOWC): New macros.
7409         * modules/mbrtowc: New file.
7410         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRTOWC and
7411         HAVE_MBRTOWC.
7412         * modules/wchar (Makefile.am): Substitute GNULIB_MBRTOWC and
7413         HAVE_MBRTOWC.
7414         * doc/posix-functions/mbrtowc.texi: Document the new module.
7415
7416 2008-12-18  Bruno Haible  <bruno@clisp.org>
7417
7418         New module 'wctob'.
7419         * lib/wchar.in.h (wctob): New declaration.
7420         * lib/wctob.c: New file.
7421         * m4/wctob.m4: New file.
7422         * modules/wctob: New file.
7423         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCTOB and
7424         HAVE_WCTOB.
7425         * modules/wchar (Makefile.am): Substitute GNULIB_WCTOB and HAVE_WCTOB.
7426         * doc/posix-functions/wctob.texi: Document the new module.
7427
7428 2008-12-18  Bruno Haible  <bruno@clisp.org>
7429
7430         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_REPLACE_WCHAR_H.
7431         * m4/btowc.m4 (gl_FUNC_BTOWC): Likewise.
7432
7433 2008-12-18  Simon Josefsson  <simon@josefsson.org>
7434
7435         * lib/flock.c: Use proper #if symbol in check.  Reported by "Tom
7436         G. Christensen" <tgc@jupiterrise.com>.
7437
7438         * lib/flock.c: Need to include errno.h.  Reported by "Tom
7439         G. Christensen" <tgc@jupiterrise.com>.
7440
7441         * lib/flock.c: Need to include string.h.  Reported by "Tom
7442         G. Christensen" <tgc@jupiterrise.com> and Eric Blake
7443         <ebb9@byu.net>.
7444
7445 2008-12-18  Bruno Haible  <bruno@clisp.org>
7446
7447         * m4/locale-ja.m4: New file, from GNU gettext.
7448
7449 2008-12-17  Bruno Haible  <bruno@clisp.org>
7450
7451         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Don't override in autoconf >= 2.60.
7452         Suggested by Eric Blake.
7453
7454 2008-12-17  Bruno Haible  <bruno@clisp.org>
7455
7456         * m4/errno_h.m4 (AC_COMPUTE_INT): Provide fallback definition.
7457
7458 2008-12-17  Bruno Haible  <bruno@clisp.org>
7459
7460         * lib/mbsinit.c: Include verify.h. Verify an assumption.
7461         * modules/mbsinit (Depends-on): Add verify.
7462         Suggested by Paul Eggert.
7463
7464 2008-12-17  Bruno Haible  <bruno@clisp.org>
7465
7466         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Renamed from gl_FUNC_MBRTOWC.
7467         * m4/mbfile.m4 (gl_MBFILE): Use AC_FUNC_MBRTOWC instead of
7468         gl_FUNC_MBRTOWC.
7469         * m4/mbiter.m4 (gl_MBITER): LIkewise.
7470         * m4/mbscasecmp.m4 (gl_PREREQ_MBSCASECMP): Likewise.
7471         * m4/mbscasestr.m4 (gl_PREREQ_MBSCASESTR): Likewise.
7472         * m4/mbschr.m4 (gl_PREREQ_MBSCHR): Likewise.
7473         * m4/mbscspn.m4 (gl_PREREQ_MBSCSPN): Likewise.
7474         * m4/mbslen.m4 (gl_PREREQ_MBSLEN): Likewise.
7475         * m4/mbsncasecmp.m4 (gl_PREREQ_MBSNCASECMP): Likewise.
7476         * m4/mbsnlen.m4 (gl_PREREQ_MBSNLEN): Likewise.
7477         * m4/mbspbrk.m4 (gl_PREREQ_MBSPBRK): Likewise.
7478         * m4/mbspcasecmp.m4 (gl_PREREQ_MBSPCASECMP): Likewise.
7479         * m4/mbsrchr.m4 (gl_PREREQ_MBSRCHR): Likewise.
7480         * m4/mbssep.m4 (gl_PREREQ_MBSSEP): Likewise.
7481         * m4/mbsspn.m4 (gl_PREREQ_MBSSPN): Likewise.
7482         * m4/mbsstr.m4 (gl_PREREQ_MBSSTR): Likewise.
7483         * m4/mbstok_r.m4 (gl_PREREQ_MBSTOK_R): Likewise.
7484         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
7485         * m4/quotearg.m4 (gl_QUOTEARG): Likewise.
7486         * modules/trim (configure.ac): Likewise.
7487
7488 2008-12-17  Bruno Haible  <bruno@clisp.org>
7489
7490         * modules/btowc-tests: New file.
7491         * tests/test-btowc1.sh: New file.
7492         * tests/test-btowc2.sh: New file.
7493         * tests/test-btowc.c: New file.
7494
7495         New module 'btowc'.
7496         * lib/wchar.in.h (btowc): New declaration.
7497         * lib/btowc.c: New file.
7498         * m4/btowc.m4: New file.
7499         * modules/btowc: New file.
7500         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_BTOWC and
7501         HAVE_BTOWC.
7502         * modules/wchar (Makefile.am): Substitute GNULIB_BTOWC and HAVE_BTOWC.
7503         * doc/posix-functions/btowc.texi: Document the new module.
7504
7505 2008-12-17  Bruno Haible  <bruno@clisp.org>
7506
7507         New module 'mbsinit'.
7508         * lib/wchar.in.h (mbsinit): New declaration.
7509         * lib/mbsinit.c: New file.
7510         * m4/mbsinit.m4: New file.
7511         * modules/mbsinit: New file.
7512         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSINIT and
7513         HAVE_MBSINIT.
7514         * modules/wchar (Makefile.am): Substitute GNULIB_MBSINIT and
7515         HAVE_MBSINIT.
7516         * doc/posix-functions/mbsinit.texi: Document the new module.
7517
7518 2008-12-16  Bruno Haible  <bruno@clisp.org>
7519
7520         * lib/unistd.in.h: Add comment.
7521         * tests/test-environ.c: Don't include <stdlib.h>.
7522
7523 2008-12-16  Bruno Haible  <bruno@clisp.org>
7524
7525         * lib/parse-duration.h (parse_duration): Document return value
7526         convention.
7527         * lib/parse-duration.c: Include specification header first. Add
7528         comments.
7529         (_): Remove macro.
7530         (parse_year_month_day, parse_hour_minute_second): Move side effects
7531         outside of strchr call.
7532         (parse_non_iso8601): Move side effects outside of isspace call.
7533         (parse_duration): Don't test errno is res != BAD_TIME. Remove fprintf
7534         call.
7535
7536 2008-12-16  Bruno Haible  <bruno@clisp.org>
7537
7538         * tests/test-parse-duration.sh: Produce no output when the test
7539         succeeds.
7540
7541 2008-12-16  Bruno Haible  <bruno@clisp.org>
7542
7543         * tests/test-parse-duration.sh: Fix quoting of $tmp and $tmpf
7544         expressions.
7545
7546 2008-12-15  Bruno Haible  <bruno@clisp.org>
7547
7548         * doc/glibc-functions/fgetxattr.texi: Tweak wording.
7549         * doc/glibc-functions/flistxattr.texi: Likewise.
7550         * doc/glibc-functions/fopencookie.texi: Likewise.
7551         * doc/glibc-functions/fremovexattr.texi: Likewise.
7552         * doc/glibc-functions/fsetxattr.texi: Likewise.
7553         * doc/glibc-functions/getxattr.texi: Likewise.
7554         * doc/glibc-functions/lgetxattr.texi: Likewise.
7555         * doc/glibc-functions/listxattr.texi: Likewise.
7556         * doc/glibc-functions/llistxattr.texi: Likewise.
7557         * doc/glibc-functions/lremovexattr.texi: Likewise.
7558         * doc/glibc-functions/lsetxattr.texi: Likewise.
7559         * doc/glibc-functions/removexattr.texi: Likewise.
7560         * doc/glibc-functions/setxattr.texi: Likewise.
7561         * doc/posix-functions/open_memstream.texi: Likewise.
7562
7563 2008-12-15  Eric Blake  <ebb9@byu.net>
7564
7565         Update doc for cygwin 1.7.
7566         * doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
7567         functions.
7568         * doc/posix-functions/fchmodat.texi: Likewise.
7569         * doc/posix-functions/fchownat.texi: Likewise.
7570         * doc/posix-functions/fdopendir.texi: Likewise.
7571         * doc/posix-functions/fmemopen.texi: Likewise.
7572         * doc/posix-functions/freeaddrinfo.texi: Likewise.
7573         * doc/posix-functions/fstatat.texi: Likewise.
7574         * doc/posix-functions/futimens.texi: Likewise.
7575         * doc/posix-functions/gai_strerror.texi: Likewise.
7576         * doc/posix-functions/getaddrinfo.texi: Likewise.
7577         * doc/posix-functions/getnameinfo.texi: Likewise.
7578         * doc/posix-functions/if_freenameindex.texi: Likewise.
7579         * doc/posix-functions/if_indextoname.texi: Likewise.
7580         * doc/posix-functions/if_nameindex.texi: Likewise.
7581         * doc/posix-functions/if_nametoindex.texi: Likewise.
7582         * doc/posix-functions/insque.texi: Likewise.
7583         * doc/posix-functions/linkat.texi: Likewise.
7584         * doc/posix-functions/llrint.texi: Likewise.
7585         * doc/posix-functions/llrintf.texi: Likewise.
7586         * doc/posix-functions/llrintl.texi: Likewise.
7587         * doc/posix-functions/lockf.texi: Likewise.
7588         * doc/posix-functions/lrintl.texi: Likewise.
7589         * doc/posix-functions/mkdirat.texi: Likewise.
7590         * doc/posix-functions/mkfifoat.texi: Likewise.
7591         * doc/posix-functions/mknodat.texi: Likewise.
7592         * doc/posix-functions/mq_close.texi: Likewise.
7593         * doc/posix-functions/mq_getattr.texi: Likewise.
7594         * doc/posix-functions/mq_notify.texi: Likewise.
7595         * doc/posix-functions/mq_open.texi: Likewise.
7596         * doc/posix-functions/mq_receive.texi: Likewise.
7597         * doc/posix-functions/mq_send.texi: Likewise.
7598         * doc/posix-functions/mq_setattr.texi: Likewise.
7599         * doc/posix-functions/mq_timedreceive.texi: Likewise.
7600         * doc/posix-functions/mq_timedsend.texi: Likewise.
7601         * doc/posix-functions/mq_unlink.texi: Likewise.
7602         * doc/posix-functions/open_memstream.texi: Likewise.
7603         * doc/posix-functions/openat.texi: Likewise.
7604         * doc/posix-functions/posix_fadvise.texi: Likewise.
7605         * doc/posix-functions/posix_fallocate.texi: Likewise.
7606         * doc/posix-functions/posix_madvise.texi: Likewise.
7607         * doc/posix-functions/posix_memalign.texi: Likewise.
7608         * doc/posix-functions/posix_openpt.texi: Likewise.
7609         * doc/posix-functions/readlinkat.texi: Likewise.
7610         * doc/posix-functions/remque.texi: Likewise.
7611         * doc/posix-functions/renameat.texi: Likewise.
7612         * doc/posix-functions/rintl.texi: Likewise.
7613         * doc/posix-functions/sem_unlink.texi: Likewise.
7614         * doc/posix-functions/shm_open.texi: Likewise.
7615         * doc/posix-functions/shm_unlink.texi: Likewise.
7616         * doc/posix-functions/signgam.texi: Likewise.
7617         * doc/posix-functions/sigset.texi: Likewise.
7618         * doc/posix-functions/stpcpy.texi: Likewise.
7619         * doc/posix-functions/stpncpy.texi: Likewise.
7620         * doc/posix-functions/strerror.texi: Likewise.
7621         * doc/posix-functions/strtod.texi: Likewise.
7622         * doc/posix-functions/symlinkat.texi: Likewise.
7623         * doc/posix-functions/unlinkat.texi: Likewise.
7624         * doc/posix-functions/utimensat.texi: Likewise.
7625         * doc/glibc-functions/bindresvport.texi: Likewise.
7626         * doc/glibc-functions/dn_expand.texi: Likewise.
7627         * doc/glibc-functions/exp10.texi: Likewise.
7628         * doc/glibc-functions/exp10f.texi: Likewise.
7629         * doc/glibc-functions/fgetxattr.texi: Likewise.
7630         * doc/glibc-functions/flistxattr.texi: Likewise.
7631         * doc/glibc-functions/fopencookie.texi: Likewise.
7632         * doc/glibc-functions/freeifaddrs.texi: Likewise.
7633         * doc/glibc-functions/fremovexattr.texi: Likewise.
7634         * doc/glibc-functions/fsetxattr.texi: Likewise.
7635         * doc/glibc-functions/getifaddrs.texi: Likewise.
7636         * doc/glibc-functions/getxattr.texi: Likewise.
7637         * doc/glibc-functions/lgetxattr.texi: Likewise.
7638         * doc/glibc-functions/listxattr.texi: Likewise.
7639         * doc/glibc-functions/llistxattr.texi: Likewise.
7640         * doc/glibc-functions/lremovexattr.texi: Likewise.
7641         * doc/glibc-functions/lsetxattr.texi: Likewise.
7642         * doc/glibc-functions/pow10.texi: Likewise.
7643         * doc/glibc-functions/pow10f.texi: Likewise.
7644         * doc/glibc-functions/rcmd_af.texi: Likewise.
7645         * doc/glibc-functions/removexattr.texi: Likewise.
7646         * doc/glibc-functions/res_init.texi: Likewise.
7647         * doc/glibc-functions/res_mkquery.texi: Likewise.
7648         * doc/glibc-functions/res_query.texi: Likewise.
7649         * doc/glibc-functions/res_querydomain.texi: Likewise.
7650         * doc/glibc-functions/res_send.texi: Likewise.
7651         * doc/glibc-functions/rresvport_af.texi: Likewise.
7652         * doc/glibc-functions/setxattr.texi: Likewise.
7653         * doc/glibc-functions/strcasestr.texi: Likewise.
7654
7655 2008-12-15  Bruno Haible  <bruno@clisp.org>
7656
7657         Fix compilation error on OSF/1 4.0.
7658         * lib/sys_select.in.h: When invoked from OSF/1 <sys/types.h> or
7659         <sys/time.h>, simply delegate to the system header.
7660         Reported by Daniel Richard G. <oss@teragram.com>.
7661
7662 2008-12-15  Bruno Haible  <bruno@clisp.org>
7663
7664         * doc/posix-functions/openat.texi: Mention the 'openat' module.
7665         * doc/posix-functions/fchmodat.texi: Likewise.
7666         * doc/posix-functions/fchownat.texi: Likewise.
7667         * doc/posix-functions/fdopendir.texi: Likewise.
7668         * doc/posix-functions/fstatat.texi: Likewise.
7669         * doc/posix-functions/mkdirat.texi: Likewise.
7670         * doc/posix-functions/unlinkat.texi: Likewise.
7671
7672 2008-12-14  Bruno Haible  <bruno@clisp.org>
7673
7674         Update doc for POSIX:2008.
7675         * doc/posix-functions/faccessat.texi: New file.
7676         * doc/posix-functions/fchmodat.texi: New file.
7677         * doc/posix-functions/fchownat.texi: New file.
7678         * doc/posix-functions/fdopendir.texi: New file.
7679         * doc/posix-functions/fstatat.texi: New file.
7680         * doc/posix-functions/futimens.texi: New file.
7681         * doc/posix-functions/linkat.texi: New file.
7682         * doc/posix-functions/mkdirat.texi: New file.
7683         * doc/posix-functions/mkfifoat.texi: New file.
7684         * doc/posix-functions/mknodat.texi: New file.
7685         * doc/posix-functions/open_wmemstream.texi: New file.
7686         * doc/posix-functions/openat.texi: New file.
7687         * doc/posix-functions/psiginfo.texi: New file.
7688         * doc/posix-functions/pthread_mutex_consistent.texi: New file.
7689         * doc/posix-functions/pthread_mutexattr_getrobust.texi: New file.
7690         * doc/posix-functions/pthread_mutexattr_setrobust.texi: New file.
7691         * doc/posix-functions/readlinkat.texi: New file.
7692         * doc/posix-functions/renameat.texi: New file.
7693         * doc/posix-functions/strerror_l.texi: New file.
7694         * doc/posix-functions/symlinkat.texi: New file.
7695         * doc/posix-functions/unlinkat.texi: New file.
7696         * doc/posix-functions/utimensat.texi: New file.
7697         * doc/gnulib.texi (Function Substitutes): Add these subsections.
7698
7699 2008-12-14  Bruno Haible  <bruno@clisp.org>
7700
7701         Update doc for POSIX:2008.
7702         * doc/posix-functions/alphasort.texi: Renamed from
7703         doc/glibc-functions/alphasort.texi.
7704         * doc/posix-functions/dirfd.texi: Renamed from
7705         doc/glibc-functions/dirfd.texi.
7706         * doc/posix-functions/dprintf.texi: Renamed from
7707         doc/glibc-functions/dprintf.texi.
7708         * doc/posix-functions/duplocale.texi: Renamed from
7709         doc/glibc-functions/duplocale.texi.
7710         * doc/posix-functions/fexecve.texi: Renamed from
7711         doc/glibc-functions/fexecve.texi.
7712         * doc/posix-functions/fmemopen.texi: Renamed from
7713         doc/glibc-functions/fmemopen.texi.
7714         * doc/posix-functions/freelocale.texi: Renamed from
7715         doc/glibc-functions/freelocale.texi.
7716         * doc/posix-functions/getdate_err.texi: Renamed from
7717         doc/glibc-functions/getdate_err.texi.
7718         * doc/posix-functions/isalnum_l.texi: Renamed from
7719         doc/glibc-functions/isalnum_l.texi.
7720         * doc/posix-functions/isalpha_l.texi: Renamed from
7721         doc/glibc-functions/isalpha_l.texi.
7722         * doc/posix-functions/isblank_l.texi: Renamed from
7723         doc/glibc-functions/isblank_l.texi.
7724         * doc/posix-functions/iscntrl_l.texi: Renamed from
7725         doc/glibc-functions/iscntrl_l.texi.
7726         * doc/posix-functions/isdigit_l.texi: Renamed from
7727         doc/glibc-functions/isdigit_l.texi.
7728         * doc/posix-functions/isgraph_l.texi: Renamed from
7729         doc/glibc-functions/isgraph_l.texi.
7730         * doc/posix-functions/islower_l.texi: Renamed from
7731         doc/glibc-functions/islower_l.texi.
7732         * doc/posix-functions/isprint_l.texi: Renamed from
7733         doc/glibc-functions/isprint_l.texi.
7734         * doc/posix-functions/ispunct_l.texi: Renamed from
7735         doc/glibc-functions/ispunct_l.texi.
7736         * doc/posix-functions/isspace_l.texi: Renamed from
7737         doc/glibc-functions/isspace_l.texi.
7738         * doc/posix-functions/isupper_l.texi: Renamed from
7739         doc/glibc-functions/isupper_l.texi.
7740         * doc/posix-functions/iswalnum_l.texi: Renamed from
7741         doc/glibc-functions/iswalnum_l.texi.
7742         * doc/posix-functions/iswalpha_l.texi: Renamed from
7743         doc/glibc-functions/iswalpha_l.texi.
7744         * doc/posix-functions/iswblank_l.texi: Renamed from
7745         doc/glibc-functions/iswblank_l.texi.
7746         * doc/posix-functions/iswcntrl_l.texi: Renamed from
7747         doc/glibc-functions/iswcntrl_l.texi.
7748         * doc/posix-functions/iswctype_l.texi: Renamed from
7749         doc/glibc-functions/iswctype_l.texi.
7750         * doc/posix-functions/iswdigit_l.texi: Renamed from
7751         doc/glibc-functions/iswdigit_l.texi.
7752         * doc/posix-functions/iswgraph_l.texi: Renamed from
7753         doc/glibc-functions/iswgraph_l.texi.
7754         * doc/posix-functions/iswlower_l.texi: Renamed from
7755         doc/glibc-functions/iswlower_l.texi.
7756         * doc/posix-functions/iswprint_l.texi: Renamed from
7757         doc/glibc-functions/iswprint_l.texi.
7758         * doc/posix-functions/iswpunct_l.texi: Renamed from
7759         doc/glibc-functions/iswpunct_l.texi.
7760         * doc/posix-functions/iswspace_l.texi: Renamed from
7761         doc/glibc-functions/iswspace_l.texi.
7762         * doc/posix-functions/iswupper_l.texi: Renamed from
7763         doc/glibc-functions/iswupper_l.texi.
7764         * doc/posix-functions/iswxdigit_l.texi: Renamed from
7765         doc/glibc-functions/iswxdigit_l.texi.
7766         * doc/posix-functions/isxdigit_l.texi: Renamed from
7767         doc/glibc-functions/isxdigit_l.texi.
7768         * doc/posix-functions/mbsnrtowcs.texi: Renamed from
7769         doc/glibc-functions/mbsnrtowcs.texi.
7770         * doc/posix-functions/mkdtemp.texi: Renamed from
7771         doc/glibc-functions/mkdtemp.texi.
7772         * doc/posix-functions/newlocale.texi: Renamed from
7773         doc/glibc-functions/newlocale.texi.
7774         * doc/posix-functions/nl_langinfo_l.texi: Renamed from
7775         doc/glibc-functions/nl_langinfo_l.texi.
7776         * doc/posix-functions/open_memstream.texi: Renamed from
7777         doc/glibc-functions/open_memstream.texi.
7778         * doc/posix-functions/opterr.texi: Renamed from
7779         doc/glibc-functions/opterr.texi.
7780         * doc/posix-functions/optind.texi: Renamed from
7781         doc/glibc-functions/optind.texi.
7782         * doc/posix-functions/optopt.texi: Renamed from
7783         doc/glibc-functions/optopt.texi.
7784         * doc/posix-functions/psignal.texi: Renamed from
7785         doc/glibc-functions/psignal.texi.
7786         * doc/posix-functions/scandir.texi: Renamed from
7787         doc/glibc-functions/scandir.texi.
7788         * doc/posix-functions/sched_get_priority_min.texi: Renamed from
7789         doc/glibc-functions/sched_get_priority_min.texi.
7790         * doc/posix-functions/signgam.texi: Renamed from
7791         doc/glibc-functions/signgam.texi.
7792         * doc/posix-functions/stpcpy.texi: Renamed from
7793         doc/glibc-functions/stpcpy.texi.
7794         * doc/posix-functions/stpncpy.texi: Renamed from
7795         doc/glibc-functions/stpncpy.texi.
7796         * doc/posix-functions/strcasecmp_l.texi: Renamed from
7797         doc/glibc-functions/strcasecmp_l.texi.
7798         * doc/posix-functions/strcoll_l.texi: Renamed from
7799         doc/glibc-functions/strcoll_l.texi.
7800         * doc/posix-functions/strfmon_l.texi: Renamed from
7801         doc/glibc-functions/strfmon_l.texi.
7802         * doc/posix-functions/strftime_l.texi: Renamed from
7803         doc/glibc-functions/strftime_l.texi.
7804         * doc/posix-functions/strncasecmp_l.texi: Renamed from
7805         doc/glibc-functions/strncasecmp_l.texi.
7806         * doc/posix-functions/strndup.texi: Renamed from
7807         doc/glibc-functions/strndup.texi.
7808         * doc/posix-functions/strnlen.texi: Renamed from
7809         doc/glibc-functions/strnlen.texi.
7810         * doc/posix-functions/strsignal.texi: Renamed from
7811         doc/glibc-functions/strsignal.texi.
7812         * doc/posix-functions/strxfrm_l.texi: Renamed from
7813         doc/glibc-functions/strxfrm_l.texi.
7814         * doc/posix-functions/timer_gettime.texi: Renamed from
7815         doc/glibc-functions/timer_gettime.texi.
7816         * doc/posix-functions/tolower_l.texi: Renamed from
7817         doc/glibc-functions/tolower_l.texi.
7818         * doc/posix-functions/toupper_l.texi: Renamed from
7819         doc/glibc-functions/toupper_l.texi.
7820         * doc/posix-functions/towctrans_l.texi: Renamed from
7821         doc/glibc-functions/towctrans_l.texi.
7822         * doc/posix-functions/towlower_l.texi: Renamed from
7823         doc/glibc-functions/towlower_l.texi.
7824         * doc/posix-functions/towupper_l.texi: Renamed from
7825         doc/glibc-functions/towupper_l.texi.
7826         * doc/posix-functions/uselocale.texi: Renamed from
7827         doc/glibc-functions/uselocale.texi.
7828         * doc/posix-functions/vdprintf.texi: Renamed from
7829         doc/glibc-functions/vdprintf.texi.
7830         * doc/posix-functions/wcpcpy.texi:
7831         Renamed from doc/glibc-functions/wcpcpy.texi.
7832         * doc/posix-functions/wcpncpy.texi: Renamed from
7833         doc/glibc-functions/wcpncpy.texi.
7834         * doc/posix-functions/wcscasecmp.texi: Renamed from
7835         doc/glibc-functions/wcscasecmp.texi.
7836         * doc/posix-functions/wcscasecmp_l.texi: Renamed from
7837         doc/glibc-functions/wcscasecmp_l.texi.
7838         * doc/posix-functions/wcscoll_l.texi: Renamed from
7839         doc/glibc-functions/wcscoll_l.texi.
7840         * doc/posix-functions/wcsdup.texi: Renamed from
7841         doc/glibc-functions/wcsdup.texi.
7842         * doc/posix-functions/wcsncasecmp.texi: Renamed from
7843         doc/glibc-functions/wcsncasecmp.texi.
7844         * doc/posix-functions/wcsncasecmp_l.texi: Renamed from
7845         doc/glibc-functions/wcsncasecmp_l.texi.
7846         * doc/posix-functions/wcsnlen.texi: Renamed from
7847         doc/glibc-functions/wcsnlen.texi.
7848         * doc/posix-functions/wcsnrtombs.texi: Renamed from
7849         doc/glibc-functions/wcsnrtombs.texi.
7850         * doc/posix-functions/wcsxfrm_l.texi: Renamed from
7851         doc/glibc-functions/wcsxfrm_l.texi.
7852         * doc/posix-functions/wctrans_l.texi: Renamed from
7853         doc/glibc-functions/wctrans_l.texi.
7854         * doc/posix-functions/wctype_l.texi: Renamed from
7855         doc/glibc-functions/wctype_l.texi.
7856         * doc/gnulib.texi (Function Substitutes): Add these subsections.
7857         (Glibc ctype.h, Glibc dirent.h, Glibc getopt.h, Glibc math.h,
7858         Glibc sched.h, Glibc signal.h, Glibc stdio.h, Glibc stdlib.h,
7859         Glibc string.h, Glibc time.h, Glibc unistd.h, Glibc wchar.h): Remove
7860         these subsections.
7861         (Glibc langinfo.h, Glibc locale.h, Glibc monetary.h, Glibc wctype.h):
7862         Remove sections.
7863
7864 2008-12-14  Bruno Haible  <bruno@clisp.org>
7865
7866         Update doc for POSIX:2008.
7867         * doc/posix-functions/*.texi: Update URL of POSIX specification.
7868
7869 2008-12-14  Bruno Haible  <bruno@clisp.org>
7870
7871         Update doc for POSIX:2008.
7872         * doc/pastposix-functions/bcmp.texi: Renamed from
7873         doc/posix-functions/bcmp.texi.
7874         * doc/pastposix-functions/bcopy.texi: Renamed from
7875         doc/posix-functions/bcopy.texi.
7876         * doc/pastposix-functions/bsd_signal.texi: Renamed from
7877         doc/posix-functions/bsd_signal.texi.
7878         * doc/pastposix-functions/bzero.texi: Renamed from
7879         doc/posix-functions/bzero.texi.
7880         * doc/pastposix-functions/ecvt.texi: Renamed from
7881         doc/posix-functions/ecvt.texi.
7882         * doc/pastposix-functions/fcvt.texi: Renamed from
7883         doc/posix-functions/fcvt.texi.
7884         * doc/pastposix-functions/ftime.texi: Renamed from
7885         doc/posix-functions/ftime.texi.
7886         * doc/pastposix-functions/gcvt.texi: Renamed from
7887         doc/posix-functions/gcvt.texi.
7888         * doc/pastposix-functions/getcontext.texi: Renamed from
7889         doc/posix-functions/getcontext.texi.
7890         * doc/pastposix-functions/gethostbyaddr.texi: Renamed from
7891         doc/posix-functions/gethostbyaddr.texi.
7892         * doc/pastposix-functions/gethostbyname.texi: Renamed from
7893         doc/posix-functions/gethostbyname.texi.
7894         * doc/pastposix-functions/getwd.texi: Renamed from
7895         doc/posix-functions/getwd.texi.
7896         * doc/pastposix-functions/h_errno.texi: Renamed from
7897         doc/posix-functions/h_errno.texi.
7898         * doc/pastposix-functions/index.texi: Renamed from
7899         doc/posix-functions/index.texi.
7900         * doc/pastposix-functions/makecontext.texi: Renamed from
7901         doc/posix-functions/makecontext.texi.
7902         * doc/pastposix-functions/mktemp.texi: Renamed from
7903         doc/posix-functions/mktemp.texi.
7904         * doc/pastposix-functions/pthread_attr_getstackaddr.texi: Renamed from
7905         doc/posix-functions/pthread_attr_getstackaddr.texi.
7906         * doc/pastposix-functions/pthread_attr_setstackaddr.texi: Renamed from
7907         doc/posix-functions/pthread_attr_setstackaddr.texi.
7908         * doc/pastposix-functions/rindex.texi: Renamed from
7909         doc/posix-functions/rindex.texi.
7910         * doc/pastposix-functions/scalb.texi: Renamed from
7911         doc/posix-functions/scalb.texi.
7912         * doc/pastposix-functions/setcontext.texi: Renamed from
7913         doc/posix-functions/setcontext.texi.
7914         * doc/pastposix-functions/swapcontext.texi: Renamed from
7915         doc/posix-functions/swapcontext.texi.
7916         * doc/pastposix-functions/ualarm.texi: Renamed from
7917         doc/posix-functions/ualarm.texi.
7918         * doc/pastposix-functions/usleep.texi: Renamed from
7919         doc/posix-functions/usleep.texi.
7920         * doc/pastposix-functions/vfork.texi: Renamed from
7921         doc/posix-functions/vfork.texi.
7922         * doc/pastposix-functions/wcswcs.texi: Renamed from
7923         doc/posix-functions/wcswcs.texi.
7924         * doc/gnulib.texi (Legacy Function Substitutes): New chapter.
7925         (Function Substitutes): Update.
7926
7927 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7928
7929         * modules/relocatable-prog-wrapper (Depends-on): Add errno, needed by
7930         m4/strerror.m4.
7931
7932 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7933             Bruno Haible  <bruno@clisp.org>
7934
7935         * modules/unilbrk/tables (Depends-on): Add unilbrk/base.
7936
7937 2008-12-13  Bruno Haible  <bruno@clisp.org>
7938
7939         * modules/strtoull (Depends-on): Remove unistd.
7940
7941 2008-12-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7942
7943         * modules/strtoull (Depends-on): Add stdlib.
7944
7945 2008-12-11  Simon Josefsson  <simon@josefsson.org>
7946
7947         * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add more warnings.
7948
7949 2008-12-10  Jim Meyering  <meyering@redhat.com>
7950
7951         gl_ASSERT: don't say assertions are disabled when they're not
7952         * m4/assert.m4 (gl_ASSERT): Do not make configure report
7953         "checking whether to enable assertions... no", when they are in
7954         fact enabled.  This is solely a bug in the output of configure.
7955         In spite of saying "no", NDEBUG was not defined in that case.
7956         Also, as noted by Eric Blake, leave assertions enabled upon
7957         --enable-assert=INVALID.
7958
7959 2008-12-10  Bruno Haible  <bruno@clisp.org>
7960
7961         Change MODULES.html to refer to POSIX:2008 where possible.
7962         * MODULES.html.sh (POSIX2008_URL): New variable.
7963         (posix_headers): Remove sys/timeb, ucontext.
7964         (posix2001_headers): New variable.
7965         (posix_functions): Remove bcmp, bcopy, bsd_signal, bzero, ecvt, fcvt,
7966         ftime, gcvt, getcontext, gethostbyaddr, gethostbyname, getwd, h_errno,
7967         index, makecontext, mktemp, pthread_attr_getstackaddr,
7968         pthread_attr_setstackaddr, rindex, scalb, setcontext, swapcontext,
7969         ualarm, usleep, vfork, wcswcs. Add the new POSIX:2008 functions.
7970         (posix2001_functions): New variable.
7971         (func_module): Use URLs to POSIX:2008 where possible and to POSIX:2001
7972         otherwise.
7973
7974 2008-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
7975
7976         add missing include to parse-duration.c
7977         * lib/parse-duration.c: #include "xalloc.h", for xstrdup.
7978         * modules/parse-duration (Depends-on): Add xalloc.
7979
7980         fix sed script reading maint.mk
7981         * top/maint.mk (MYSELF): New macro, define as $(srcdir)/$(ME).
7982         (syntax-check-rules): Use it.
7983
7984 2008-12-09  Bruno Haible  <bruno@clisp.org>
7985
7986         * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Add another check, that fails on
7987         MacOS X 10.4/PowerPC.
7988         Reported by Simon Josefsson.
7989
7990 2008-12-08  Jim Meyering  <meyering@redhat.com>
7991
7992         work around mingw's lack of some S_IF definitions
7993         * lib/fts.c (S_IFLNK, S_IFSOCK): Define if not already defined.
7994         Reported by Simon Josefsson.
7995
7996 2008-12-08  Bruno Haible  <bruno@clisp.org>
7997
7998         * m4/signbitl.m4 (gl_SIGNBIT_TEST_PROGRAM): Add a link check of signbit
7999         applied to variables. Needed on MacOS X 10.4/PowerPC.
8000         Reported by Simon Josefsson.
8001
8002 2008-12-08  William Pursell  <bill.pursell@gmail.com>  (tiny change)
8003         and Eric Blake  <ebb9@byu.net>
8004
8005         assert: honor --enable-assert
8006         * m4/assert.m4 (gl_ASSERT): Synchronize with autoconf 2.64, in
8007         order to honor --enable-assert, rather than treating it as a
8008         synonym for --disable-assert.
8009
8010 2008-12-08  Jim Meyering  <meyering@redhat.com>
8011
8012         * lib/posixtm.c: Remove now-useless declaration of mktime.
8013
8014         * build-aux/announce-gen (get_tool_versions): Accept .xz tarballs.
8015
8016 2008-12-07  Bruno Haible  <bruno@clisp.org>
8017
8018         * tests/test-lock.c (test_lock, test_rwlock, test_recursive_lock,
8019         test_once): Mark functions as static.
8020         * tests/test-tls.c (test_tls): Likewise.
8021
8022 2008-12-07  Bruno Haible  <bruno@clisp.org>
8023
8024         * lib/striconveha.h (uniconv_register_autodetect): Renamed from
8025         iconv_register_autodetect.
8026
8027 2008-12-07  Jim Meyering  <meyering@redhat.com>
8028
8029         posixtm.c: avoid a warning
8030         * lib/posixtm.c (posixtime): Don't initialize tm0.
8031         It's no longer needed to placate gcc4's -Wuninitialized,
8032         and the attempt to placate would elicit a new warning.
8033
8034         unicodeio.c: mark unused parameters
8035         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
8036         (fallback_failure_callback): Likewise.
8037
8038 2008-12-07  Bruno Haible  <bruno@clisp.org>
8039
8040         * gnulib-tool (func_create_testdir): When building the tests
8041         subdirectory, ignore the modules gnumakefile and maintainer-makefile.
8042         Reported by Simon Josefsson.
8043
8044 2008-12-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8045
8046         * doc/manywarnings.texi, doc/gnulib-intro.texi: Fix typos.
8047
8048 2008-12-06  Bruno Haible  <bruno@clisp.org>
8049
8050         * lib/c-stack.h (c_stack_action): Clarify possible side effects.
8051         Suggested by Eric Blake.
8052
8053 2008-12-06  Bruno Haible  <bruno@clisp.org>
8054
8055         Fix a c-stack test failure on MacOS X.
8056         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Require
8057         AC_CANONICAL_HOST. Define FAULT_YIELDS_SIGBUS. If set, install a signal
8058         handler for SIGBUS as well.
8059         * lib/c-stack.c (c_stack_action): If FAULT_YIELDS_SIGBUS is set,
8060         install a signal handler for SIGBUS as well.
8061         Reported by Bruce Dugan <bld0401@gmail.com> via Eric Blake.
8062
8063 2008-12-06  Bruno Haible  <bruno@clisp.org>
8064
8065         Advocacy documentation.
8066         * doc/gnulib-intro.texi (Benefits): New section.
8067         * doc/gnulib.texi: Update.
8068
8069 2008-12-06  Bruno Haible  <bruno@clisp.org>
8070
8071         Document the 'manywarnings' module.
8072         * doc/manywarnings.texi: New file.
8073         * doc/gnulib.texi: Include it.
8074
8075 2008-12-05  Eric Blake  <ebb9@byu.net>
8076
8077         tests: silence some gcc warnings
8078         * tests/test-getdate.c (LOG) [!DEBUG]: Mark no-op void.
8079         * tests/uniwidth/test-uc_width2.c (finish_interval): Avoid printf
8080         type mismatches.
8081
8082 2008-12-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
8083             Bruno Haible  <bruno@clisp.org>
8084
8085         * m4/openmp.m4 (AC_OPENMP): Do not define with Autoconf 2.62 or newer.
8086
8087 2008-11-29  Jim Meyering  <meyering@redhat.com>
8088
8089         unicodeio.c: mark unused parameters
8090         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
8091         (fallback_failure_callback): Likewise.
8092
8093         fts: fix a thinko
8094         * lib/fts.c (s_ifmt_shift_bits): Remove function.  Not needed after all.
8095         (set_stat_type): Return S_IF*-valued "type" directly.
8096         Prompted by James Youngman's spotting a related bug.
8097         Confirmed by further testing through find.
8098
8099         fts: provide dirent.d_type via FTSENT.fts_statp, when possible
8100         * lib/fts.c (D_TYPE): Define.
8101         (DT_UNKNOWN, DT_BLK, DT_CHR) [HAVE_STRUCT_DIRENT_D_TYPE]: Define.
8102         (DT_DIR, DT_FIFO, DT_LNK, DT_REG, DT_SOCK): Likewise.
8103         (s_ifmt_shift_bits): New function.
8104         (set_stat_type): New function.
8105         (fts_build): When not calling fts_stat, call set_stat_type
8106         to propagate dirent.d_type info to fts_read caller.
8107         * lib/fts_.h (FTSENT) [FTS_DEFER_STAT]: Mention that
8108         fts_statp->st_mode type information may be valid.
8109
8110 2008-11-28  Simon Josefsson  <simon@josefsson.org>
8111
8112         * lib/sys_time.in.h: Add extern "C" block for C++.  Suggested by
8113         Brian Dessent <brian@dessent.net>.  Reported by Sam Steingold
8114         <sds@gnu.org>.
8115
8116 2008-11-20  Bruno Haible  <bruno@clisp.org>
8117
8118         Attempt to work around an AIX 5.3, 6.1 compiler bug with include_next.
8119         * lib/math.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of
8120         INCLUDE_NEXT.
8121         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also
8122         INCLUDE_NEXT_AS_FIRST_DIRECTIVE.
8123         * modules/math (Makefile.am): Substitute
8124         INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of INCLUDE_NEXT.
8125         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
8126
8127 2008-11-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
8128             Bruno Haible  <bruno@clisp.org>
8129
8130         * lib/stdint.in.h: Define all type macros so that their expansion is
8131         a single typedef'ed token. Fixes a compilation failure in Boost which
8132         does "using ::int8_t;".
8133
8134 2008-11-18  Simon Josefsson  <simon@josefsson.org>
8135
8136         * m4/manywarnings.m4: New file with gl_MANYWARN_COMPLEMENT and
8137         gl_MANYWARN_ALL_GCC.
8138         * m4/warnings.m4: Removed gl_WARN_SUPPORTED and
8139         gl_WARN_COMPLEMENT.  Suggested by Bruno Haible <bruno@clisp.org>.
8140         * modules/manywarnings: New file.
8141         * MODULES.html.sh: Mention manywarnings module.
8142
8143 2008-11-18  Bruno Haible  <bruno@clisp.org>
8144
8145         * doc/gnulib-tool.texi (Unit tests): New section.
8146
8147 2008-11-18  Simon Josefsson  <simon@josefsson.org>
8148
8149         * top/maint.mk (refresh-po): Fix sed regexp to avoid problems with
8150         paths like 'lib/po/foo.po'.
8151
8152 2008-11-17  Simon Josefsson  <simon@josefsson.org>
8153
8154         * m4/warnings.m4: Improve code.  Reported by Ralf Wildenhues
8155         <Ralf.Wildenhues@gmx.de> and Paolo Bonzini <bonzini@gnu.org>.
8156
8157 2008-11-17  Simon Josefsson  <simon@josefsson.org>
8158
8159         * m4/warnings.m4: Use CPPFLAGS to really check whether the
8160         parameter works.
8161
8162 2008-11-17  Simon Josefsson  <simon@josefsson.org>
8163
8164         * m4/warnings.m4: Add gl_WARN_COMPLEMENT and gl_WARN_SUPPORTED.
8165
8166 2008-11-17  Bruce Korb  <bkorb@gnu.org>
8167
8168         * modules/parse-duration-tests: New file.
8169         * tests/test-parse-duration.sh: New file.
8170         * tests/test-parse-duration.c: New file.
8171
8172         New module 'parse-duration'.
8173         * lib/parse-duration.h: New file.
8174         * lib/parse-duration.c: New file.
8175         * modules/parse-duration: New file.
8176
8177 2008-11-17  Bruno Haible  <bruno@clisp.org>
8178
8179         * tests/test-select-out.sh: Comment out the first pipe test.
8180         Reported by Simon Josefsson.
8181
8182 2008-11-17  Bruno Haible  <bruno@clisp.org>
8183
8184         * modules/getaddrinfo (Depends-on): Add servent, hostent.
8185         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_SERVENT and
8186         gl_HOSTENT.
8187
8188 2008-11-17  Bruno Haible  <bruno@clisp.org>
8189
8190         * m4/sockets.m4 (gl_SOCKETS): After trying -lsocket, try also
8191         -lnetwork and -lnet. Needed for Haiku and BeOS.
8192
8193 2008-11-16  Bruno Haible  <bruno@clisp.org>
8194
8195         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix indentation.
8196
8197 2008-11-16  Bruno Haible  <bruno@clisp.org>
8198
8199         Avoid test failure on Haiku.
8200         * tests/test-fsync.c: Include <errno.h>.
8201         (main): Don't require that fsync (0) fails.
8202
8203 2008-11-15  Bruno Haible  <bruno@clisp.org>
8204
8205         New module 'hostent'.
8206         * modules/hostent: New file.
8207         * m4/hostent.m4: New file, based on code in m4/getaddrinfo.m4.
8208
8209 2008-11-15  Bruno Haible  <bruno@clisp.org>
8210
8211         New module 'servent'.
8212         * modules/servent: New file.
8213         * m4/servent.m4: New file, based on code in m4/getaddrinfo.m4.
8214
8215 2008-11-15  Bruno Haible  <bruno@clisp.org>
8216
8217         Avoid generating same test program with two different rules.
8218         * modules/frexp-nolibm-tests (Makefile.am): Rename test program from
8219         test-frexp to test-frexp-nolibm.
8220         * modules/frexpl-nolibm-tests (Makefile.am): Rename test program from
8221         test-frexpl to test-frexpl-nolibm.
8222
8223 2008-11-15  Bruno Haible  <bruno@clisp.org>
8224
8225         * modules/frexpl-tests (Makefile.am): Link test-frexpl with
8226         $(FREXPL_LIBM).
8227
8228 2008-11-15  Bruno Haible  <bruno@clisp.org>
8229
8230         * lib/netdb.in.h: Activate the definitions also when the system's
8231         <netdb.h> has 'struct addrinfo'.
8232         * m4/netdb_h.m4 (gl_HEADER_NETDB): Replace netdb.h also when it lacks
8233         EAI_OVERFLOW or AI_NUMERICSERV.
8234         * doc/posix-headers/netdb.texi: Document the problem.
8235
8236 2008-11-15  Bruno Haible  <bruno@clisp.org>
8237
8238         * tests/test-sched.c: Test also the existence of the SCHED_* macros.
8239
8240         Make the 'sched' module work on platforms where <sched.h> exists but
8241         is incomplete (such as Haiku).
8242         * lib/sched.in.h; Include the system's <sched.h> if it exists.
8243         (SCHED_FIFO, SCHED_RR, SCHED_OTHER): New macros.
8244         * m4/sched_h.m4 (gl_SCHED_H): Test whether <sched.h> exists and also
8245         defines SCHED_FIFO, SCHED_RR, SCHED_OTHER. Set HAVE_SCHED_H,
8246         HAVE_STRUCT_SCHED_PARAM.
8247         * modules/sched (Depends-on): Add include_next.
8248         (Makefile.am): Substitute HAVE_SCHED_H, INCLUDE_NEXT,
8249         PRAGMA_SYSTEM_HEADER, NEXT_SCHED_H, HAVE_STRUCT_SCHED_PARAM.
8250         * doc/posix-headers/sched.texi: Document the issue.
8251
8252 2008-11-13  Jim Meyering  <meyering@redhat.com>
8253
8254         test-argp-2: avoid test failure when PACKAGE_BUGREPORT is defined
8255         * tests/test-argp-2.sh: When PACKAGE_BUGREPORT was defined, this
8256         test would fail due to the difference in the Report bugs to ...
8257         line.  The expected address is empty, "<>", while the actual
8258         would contain e.g., "<bug-tar@gnu.org>".  Filter out any address.
8259
8260 2008-11-12  Bruno Haible  <bruno@clisp.org>
8261
8262         lstat: don't compile lstat.c on systems lacking lstat
8263         * m4/lstat.m4 (gl_FUNC_LSTAT): Don't compile lstat.c on systems
8264         which don't have lstat; this is handled by lib/sys_stat.in.h already.
8265         Reported by Daniel P. Berrange via Jim Meyering.
8266
8267 2008-11-12  Jim Meyering  <meyering@redhat.com>
8268
8269         * lib/unicodeio.c (unicode_to_mb): Correct spelling of u8_uctomb.
8270
8271 2008-11-12  Simon Josefsson  <simon@josefsson.org>
8272
8273         * modules/warnings (configure.ac): Do AC_SUBST([WARN_CFLAGS]) here
8274         instead.
8275
8276 2008-11-12  Bruno Haible  <bruno@clisp.org>
8277
8278         * lib/unicodeio.c: Include unistr.h.
8279         (utf8_wctomb): Remove function.
8280         (unicode_to_mb): Use utf8_uctomb instead of utf8_wctomb.
8281
8282 2008-11-12  Simon Josefsson  <simon@josefsson.org>
8283
8284         * m4/warnings.m4 (gl_WARN_INIT): Remove, suggested by Ralf
8285         Wildenhues <Ralf.Wildenhues@gmx.de> and Bruno Haible
8286         <bruno@clisp.org>.
8287         * modules/warnings (configure.ac): Don't call gl_WARN_INIT.
8288
8289 2008-11-12  Simon Josefsson  <simon@josefsson.org>
8290
8291         * doc/warnings.texi: New file, from Bruno Haible <bruno@clisp.org>.
8292         * doc/gnulib.texi: Add section for warnings.
8293
8294 2008-11-11  Bruno Haible  <bruno@clisp.org>
8295
8296         * lib/sockets.h: Add a comment.
8297
8298 2008-11-11  Karl Berry  <karl@gnu.org>
8299
8300         * config/srclist.txt (fdl.texi): add, syncing from gnustandards.
8301
8302 2008-11-11  Eric Blake  <ebb9@byu.net>
8303
8304         fdl.texi: avoid git symlinks
8305         * doc/fdl.texi: Copy, rather than link, fdl-1.3.texi.
8306
8307 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
8308
8309         * m4/warnings.m4 (gl_WARN_ADD): Don't AC_SUBST the empty string.
8310
8311 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
8312
8313         * m4/warnings.m4 (gl_WARN_INIT): Substitute WARN_CFLAGS.
8314         (gl_WARN_ADD): Substitute $2 if literal.
8315
8316 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
8317
8318         * m4/warning.m4: Remove.
8319
8320 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
8321
8322         * m4/warnings.m4: Almost complete rewrite. :-)
8323
8324 2008-11-10  Simon Josefsson  <simon@josefsson.org>
8325
8326         * modules/warnings: New module.
8327         * m4/warnings.m4: New file.
8328         * MODULES.html.sh: Mention warnings module.
8329         With review improvements from Paolo Bonzini <bonzini@gnu.org> and
8330         Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
8331
8332 2008-11-10  Eric Blake  <ebb9@byu.net>
8333
8334         fdl.texi: make a symlink to the latest version
8335         * doc/standards.texi: Revert today's earlier change.
8336         * doc/fdl-1.2.texi: Rename from old fdl.texi...
8337         * doc/fdl.texi: ...and replace this with a symlink to the newer
8338         fdl-1.3.texi.
8339
8340 2008-11-10  Bruno Haible  <bruno@clisp.org>
8341
8342         * tests/test-select-fd.c (main): Accept the result file name as fourth
8343         argument.
8344         * tests/test-select-in.sh: Pass t-select-in.tmp as fourth argument.
8345         * tests/test-select-out.sh: Pass t-select-out.tmp as fourth argument.
8346
8347 2008-11-10  Bruno Haible  <bruno@clisp.org>
8348
8349         * lib/netdb.in.h: Use HAVE_STRUCT_ADDRINFO, HAVE_DECL_GETADDRINFO,
8350         HAVE_DECL_FREEADDRINFO, HAVE_DECL_GAI_STRERROR, HAVE_DECL_GETNAMEINFO
8351         as autoconf-substituted macros.
8352         * m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Initialize these variables to 1.
8353         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require
8354         gl_NETDB_H_DEFAULTS. Set these variables.
8355         * modules/netdb (Makefile.am): Substitute these variables.
8356
8357 2008-11-10  Eric Blake  <ebb9@byu.net>
8358
8359         standards.texi: include correct file for FDL 1.3
8360         * doc/standards.texi (GNU Free Documentation License): Change
8361         include file to pull in FDL 1.3, not 1.2.
8362
8363         fdl.texi: revert accidental change to license
8364         * doc/fdl.texi: This is FDL 1.2, not 1.3.
8365
8366 2008-11-10  Bruno Haible  <bruno@clisp.org>
8367
8368         * m4/printf.m4 (gl_PRINTF_ENOMEM): Guess yes on Haiku. Use the
8369         cross-compiling guesses also when the native compile gives no result.
8370
8371 2008-11-10  Bruno Haible  <bruno@clisp.org>
8372
8373         * lib/spawni.c (__spawni): Force variable into the stack.
8374
8375 2008-11-10  Bruno Haible  <bruno@clisp.org>
8376
8377         Add support for Haiku.
8378         * lib/fbufmode.c (fbufmode): Test a symbol that is not only defined on
8379         glibc and BeOS, but also on Haiku.
8380         * lib/fpurge.c (fpurge): Likewise.
8381         * lib/freadable.c (freadable): Likewise.
8382         * lib/freadahead.c (freadahead): Likewise.
8383         * lib/freading.c (freading): Likewise.
8384         * lib/freadptr.c (freadptr): Likewise.
8385         * lib/freadseek.c (freadptrinc): Likewise.
8386         * lib/fseeko.c (rpl_fseeko): Likewise.
8387         * lib/fseterr.c (fseterr): Likewise.
8388         * lib/fwritable.c (fwritable): Likewise.
8389         * lib/fwriting.c (fwriting): Likewise.
8390         Reported by Ingo Weinhold <ingo_weinhold@gmx.de>.
8391
8392 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
8393
8394         * lib/config.charset: Treat Haiku like BeOS.
8395
8396 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
8397
8398         * lib/binary-io.h (O_BINARY, O_TEXT): Treat Haiku like BeOS.
8399         * lib/fcntl.in.h (O_BINARY, O_TEXT): Likewise.
8400
8401 2008-11-08  Bruno Haible  <bruno@clisp.org>
8402
8403         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Avoid using AC_CHECK_DECL inside
8404         AC_CACHE_CHECK.
8405
8406 2008-11-08  Bruno Haible  <bruno@clisp.org>
8407
8408         * modules/select-tests (configure.ac): Check for unistd.h, sys/wait.h.
8409
8410 2008-11-08  Bruno Haible  <bruno@clisp.org>
8411
8412         * tests/test-select-fd.c: New file.
8413         * tests/test-select-in.sh: New file.
8414         * tests/test-select-out.sh: New file.
8415         * tests/test-select-stdin.c: New file.
8416         * modules/select-tests (Files): Add the new files.
8417         (Depends-on): Add gettimeofday.
8418         (Makefile.am): Add test-select-in.sh, test-select-out.sh to TESTS.
8419         Set TESTS_ENVIRONMENT. Add test-select-fd, test-select-stdin to
8420         check_PROGRAMS. Define test_select_fd_LDADD, test_select_stdin_LDADD.
8421
8422 2008-11-06  Alexander V. Lukyanov  <lav@netis.ru>
8423             Bruno Haible  <bruno@clisp.org>
8424
8425         * lib/sys_stat.in.h: Enclose function definitions in extern "C".
8426
8427 2008-10-12  Giuseppe Scrivano  <gscrivano@gnu.org>
8428
8429         * build-aux/pmccabe2html: Added support for C++ source files.
8430
8431 2008-11-05  Ben Pfaff  <blp@gnu.org>
8432
8433         Fix lib/close.c build on Windows.
8434         * modules/close (Files): Add lib/w32sock.h.
8435
8436 2008-11-05  Joel E. Denny  <jdenny@ces.clemson.edu>
8437
8438         Accept Bison's NEWS format.
8439         * build-aux/announce-gen (print_news_deltas): Tweak
8440         $re_prefix.
8441
8442 2008-11-04  Bruno Haible  <bruno@clisp.org>
8443
8444         * modules/random_r (Maintainer): Add glibc.
8445
8446 2008-11-04  Simon Josefsson  <simon@josefsson.org>
8447
8448         * doc/alloca-opt.texi: Change license to GFDLv1.3+, as suggested
8449         by karl@freefriends.org (Karl Berry).
8450         * doc/alloca.texi: Likewise.
8451         * doc/c-ctype.texi: Likewise.
8452         * doc/c-strcase.texi: Likewise.
8453         * doc/c-strcaseeq.texi: Likewise.
8454         * doc/c-strcasestr.texi: Likewise.
8455         * doc/c-strstr.texi: Likewise.
8456         * doc/c-strtod.texi: Likewise.
8457         * doc/c-strtold.texi: Likewise.
8458         * doc/ctime.texi: Likewise.
8459         * doc/error.texi: Likewise.
8460         * doc/fdl.texi: Likewise.
8461         * doc/gcd.texi: Likewise.
8462         * doc/getdate.texi: Likewise.
8463         * doc/gnulib-intro.texi: Likewise.
8464         * doc/gnulib-tool.texi: Likewise.
8465         * doc/gnulib.texi: Likewise.
8466         * doc/inet_ntoa.texi: Likewise.
8467         * doc/maintain.texi: Likewise.
8468         * doc/make-stds.texi: Likewise.
8469         * doc/quote.texi: Likewise.
8470         * doc/regexprops-generic.texi: Likewise.
8471         * doc/standards.texi: Likewise.
8472         * doc/verify.texi: Likewise.
8473         * doc/visibility.texi: Likewise.
8474         * doc/gnulib.texi (GNU Free Documentation License): Include
8475         fdl-1.3.texi instead of fdl.texi.
8476
8477 2008-11-04  Simon Josefsson  <simon@josefsson.org>
8478
8479         * doc/fdl-1.3.texi: New file, from
8480         <http://www.gnu.org/licenses/fdl-1.3.texi>.
8481         * modules/fdl-1.3: Add.
8482         * MODULES.html.sh: Add fdl-1.3.
8483
8484 2008-11-03  Bruno Haible  <bruno@clisp.org>
8485
8486         Make determination of absolute name of header file work with AIX xlc.
8487         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Require
8488         AC_CANONICAL_HOST. On AIX, use "$CPP -C" rather than "$CPP" for
8489         preprocessing.
8490         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
8491         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
8492
8493 2008-11-03  Simon Josefsson  <simon@josefsson.org>
8494
8495         * top/maint.mk (COVERAGE_CCOPTS): Use --coverage instead of
8496         -fprofile-arcs -ftest-coverage.  Suggested by Ludovic Courtès
8497         <ludo@gnu.org>.
8498
8499 2008-11-02  Bruno Haible  <bruno@clisp.org>
8500
8501         Mark 'strpbrk' obsolete.
8502         * modules/strpbrk (Status, Notice): New sections.
8503         * modules/strtok_r (Depends-on): Add strpbrk.
8504
8505 2008-11-02  Bruno Haible  <bruno@clisp.org>
8506
8507         Mark 'strdup' obsolete.
8508         * modules/strdup (Status, Notice): New sections.
8509         * modules/findprog (Depends-on): Add strdup.
8510         * modules/getaddrinfo (Depends-on): Likewise.
8511         * modules/localename (Depends-on): Likewise.
8512         * modules/relocatable-lib (Depends-on): Likewise.
8513         * modules/relocatable-lib-lgpl (Depends-on): Likewise.
8514         * modules/relocatable-prog (Depends-on): Likewise.
8515         * modules/trim (Depends-on): Likewise.
8516         * modules/unictype/gen-ctype (Depends-on): Likewise.
8517         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
8518
8519 2008-11-02  Bruno Haible  <bruno@clisp.org>
8520
8521         Mark 'strcspn' obsolete.
8522         * modules/strcspn (Status, Notice): New sections.
8523
8524 2008-11-02  Bruno Haible  <bruno@clisp.org>
8525
8526         Mark 'rmdir' obsolete.
8527         * modules/rmdir (Status, Notice): New sections.
8528         * modules/clean-temp (Depends-on): Add rmdir.
8529         * modules/openat (Depends-on): Likewise.
8530
8531 2008-11-02  Bruno Haible  <bruno@clisp.org>
8532
8533         Mark 'raise' obsolete.
8534         * modules/raise (Status, Notice): New sections.
8535         (Include): Specify <signal.h>.
8536         * modules/stdio (Depends-on): Add raise.
8537         * modules/write (Depends-on): Likewise.
8538
8539 2008-11-02  Bruno Haible  <bruno@clisp.org>
8540
8541         Mark 'memset' obsolete.
8542         * modules/memset (Status, Notice): New sections.
8543
8544 2008-11-02  Bruno Haible  <bruno@clisp.org>
8545
8546         Mark 'memmove' obsolete.
8547         * modules/memmove (Status, Notice): New sections.
8548         * modules/argp (Depends-on): Add memmove.
8549         * modules/argz (Depends-on): Likewise.
8550         * modules/canonicalize (Depends-on): Likewise.
8551         * modules/canonicalize-lgpl (Depends-on): Likewise.
8552         * modules/fts (Depends-on): Likewise.
8553         * modules/getcwd (Depends-on): Likewise.
8554         * modules/human (Depends-on): Likewise.
8555         * modules/regex (Depends-on): Likewise.
8556         * modules/striconveh (Depends-on): Likewise.
8557         * modules/trim (Depends-on): Likewise.
8558         * modules/unistr/u8-move (Depends-on): Likewise.
8559         * modules/unistr/u16-move (Depends-on): Likewise.
8560         * modules/unistr/u32-move (Depends-on): Likewise.
8561
8562 2008-11-02  Bruno Haible  <bruno@clisp.org>
8563
8564         Mark 'memcpy' obsolete.
8565         * modules/memcpy (Status, Notice): New sections.
8566
8567 2008-11-02  Bruno Haible  <bruno@clisp.org>
8568
8569         Mark 'memcmp' obsolete.
8570         * modules/memcmp (Status, Notice): New sections.
8571         * modules/argmatch (Depends-on): Add memchr.
8572         * modules/backupfile (Depends-on): Likewise.
8573         * modules/c-strcasestr (Depends-on): Likewise.
8574         * modules/crypto/des (Depends-on): Likewise.
8575         * modules/csharpcomp (Depends-on): Likewise.
8576         * modules/fnmatch (Depends-on): Likewise.
8577         * modules/git-merge-changelog (Depends-on): Likewise.
8578         * modules/isnand (Depends-on): Likewise.
8579         * modules/isnand-nolibm (Depends-on): Likewise.
8580         * modules/isnanf (Depends-on): Likewise.
8581         * modules/isnanf-nolibm (Depends-on): Likewise.
8582         * modules/isnanl (Depends-on): Likewise.
8583         * modules/isnanl-nolibm (Depends-on): Likewise.
8584         * modules/mbchar (Depends-on): Likewise.
8585         * modules/memcoll (Depends-on): Likewise.
8586         * modules/quotearg (Depends-on): Likewise.
8587         * modules/regex (Depends-on): Likewise.
8588         * modules/relocatable-prog (Depends-on): Likewise.
8589         * modules/same (Depends-on): Likewise.
8590         * modules/signbit (Depends-on): Likewise.
8591         * modules/strcasestr-simple (Depends-on): Likewise.
8592         * modules/unictype/gen-ctype (Depends-on): Likewise.
8593         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
8594         * modules/uniname/uniname (Depends-on): Likewise.
8595         * modules/unistr/u8-cmp (Depends-on): Likewise.
8596
8597 2008-11-02  Bruno Haible  <bruno@clisp.org>
8598
8599         Mark 'memchr' obsolete.
8600         * modules/memchr (Status, Notice): New sections.
8601         * modules/argp (Depends-on): Add memchr.
8602         * modules/base64 (Depends-on): Likewise.
8603         * modules/c-strcasestr (Depends-on): Likewise.
8604         * modules/chdir-long (Depends-on): Likewise.
8605         * modules/fnmatch (Depends-on): Likewise.
8606         * modules/getsubopt (Depends-on): Likewise.
8607         * modules/git-merge-changelog (Depends-on): Likewise.
8608         * modules/glob (Depends-on): Likewise.
8609         * modules/strcasestr-simple (Depends-on): Likewise.
8610         * modules/strnlen (Depends-on): Likewise.
8611
8612 2008-11-02  Bruno Haible  <bruno@clisp.org>
8613
8614         Mark 'atexit' obsolete.
8615         * modules/atexit (Status, Notice): New sections.
8616         * modules/chdir-long (Depends-on): Add atexit.
8617         * modules/wait-process (Depends-on): Likewise.
8618
8619 2008-11-02  Bruno Haible  <bruno@clisp.org>
8620
8621         * gnulib-tool: New option --with-obsolete.
8622         (func_usage): Document it.
8623         (func_modules_transitive_closure): Drop obsolete dependencies if
8624         incobsolete is not true.
8625         (func_import): Read and save the incobsolete variable to the cache.
8626
8627 2008-11-02  Bruno Haible  <bruno@clisp.org>
8628
8629         * modules/TEMPLATE-EXTENDED: New field 'Status'.
8630         * gnulib-tool: New option --extract-status.
8631         (func_usage): Document it.
8632         (sed_extract_prog): Recognize it.
8633         (func_get_status): New function.
8634
8635 2008-10-30  Simon Josefsson  <simon@josefsson.org>
8636
8637         * modules/sockets (License): Change from LGPL to LGPLv2+.
8638
8639 2008-10-28  Simon Josefsson  <simon@josefsson.org>
8640
8641         * top/maint.mk: Add coverage rules, inspired by scripts in gnupdf.
8642
8643 2008-10-28  Simon Josefsson  <simon@josefsson.org>
8644
8645         * MODULES.html.sh (Support for systems lacking POSIX:2001):
8646         Mention times and sys_times.
8647         * modules/sys_times, modules/sys_times-tests: New modules.
8648         * modules/times, modules/times-tests: Likewise
8649         * m4/sys_times_h.m4: New file.
8650         * lib/sys_times.in.h: Likewise
8651         * lib/times.c: Likewise.
8652         * tests/test-sys_times.c: Likewise.
8653         * tests/test-times.c: Likewise.
8654         * doc/posix-headers/sys_times.texi: Update.
8655         * doc/posix-functions/times.texi: Update.
8656
8657 2008-10-28  Jim Meyering  <meyering@redhat.com>
8658
8659         * modules/tempname (Depends-on): Add lstat.
8660
8661         * modules/lstat (License): Relicense: LGPL -> LGPLv2+.
8662
8663 2008-10-28  Simon Josefsson  <simon@josefsson.org>
8664
8665         * gnulib-tool (func_emit_tests_Makefile_am): Revert last commit.
8666         * modules/argp-tests (test_argp_LDADD): Set EXEEXT here instead,
8667         using idiom used elsewhere in gnulib.
8668
8669 2008-10-27  Jim Meyering  <meyering@redhat.com>
8670
8671         * modules/gethostname (License): Relicense: LGPL -> LGPLv2+.
8672
8673 2008-10-27  Simon Josefsson  <simon@josefsson.org>
8674
8675         * gnulib-tool (func_emit_tests_Makefile_am): Set EXEEXT in
8676         TESTS_ENVIRONMENT, for shell scripts that needs to call built
8677         programs.
8678         * tests/test-argp-2.sh: Use $EXEEXT when needed.
8679
8680 2008-10-27  Simon Josefsson  <simon@josefsson.org>
8681
8682         * lib/sys_stat.in.h (lstat): Fix declaration for mingw.
8683
8684 2008-10-27  Bruno Haible  <bruno@clisp.org>
8685
8686         * tests/test-lstat.c: Include <stdio.h>.
8687
8688 2008-10-27  Simon Josefsson  <simon@josefsson.org>
8689
8690         * modules/lstat-tests: New module.
8691         * tests/test-lstat.c: New file.
8692
8693 2008-10-26  Jim Meyering  <meyering@redhat.com>
8694
8695         * lib/mkdir.c (rpl_mkdir) [_WIN32...]: Mark mode as an unused parameter.
8696
8697 2008-10-26  Simon Josefsson  <simon@josefsson.org>
8698             Bruno Haible  <bruno@clisp.org>
8699
8700         Fix a clash between the type DATADIR on Windows and the macro DATADIR.
8701         * modules/configmake (Include): Add a note that the include must come
8702         after all system headers.
8703         * lib/javaversion.c: Include configmake.h after all other includes.
8704
8705 2008-10-26  Bruno Haible  <bruno@clisp.org>
8706
8707         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Set default of
8708         HAVE_STRUCT_RANDOM_DATA to 1.
8709         (gl_STDLIB_H): Simplify.
8710
8711 2008-10-26  Simon Josefsson  <simon@josefsson.org>
8712
8713         * m4/stdlib_h.m4: Check for struct random_data.  Initialize and
8714         substitute HAVE_STRUCT_RANDOM_DATA.
8715         * lib/stdlib.in.h [!HAVE_STRUCT_RANDOM_DATA]: Provide struct
8716         random_data.
8717         * modules/stdlib (Makefile.am): Substitute
8718         HAVE_STRUCT_RANDOM_DATA.
8719
8720 2008-10-26  Simon Josefsson  <simon@josefsson.org>
8721
8722         * doc/gnulib.texi (@copying): Use GFDLv1.2+.
8723         * doc/gnulib-intro.texi (Copyright): Likewise.
8724
8725 2008-10-26  Simon Josefsson  <simon@josefsson.org>
8726
8727         * doc/gnulib.texi (Header files): C++ fixes, based on Bruno's
8728         findings.
8729
8730 2008-10-25  Ben Pfaff  <blp@cs.stanford.edu>
8731             Bruno Haible  <bruno@clisp.org>
8732
8733         * lib/unistd.in.h: Include <winsock2.h>.
8734         (socket, connect,accept, bind, getpeername, getsockname, getsockopt,
8735         listen, recv, send, recvfrom, sendto, setsockopt, shutdown, select):
8736         Provide dummy declarations.
8737         (gethostname): Override.
8738         * lib/sys_socket.in.h (gethostname): Provide dummy declaration.
8739         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Invoke
8740         gl_PREREQ_SYS_H_WINSOCK2.
8741         * modules/gethostname (Files): Add m4/sys_socket_h.m4.
8742         * doc/posix-functions/gethostname.texi: More details.
8743
8744 2008-10-25  Bruno Haible  <bruno@clisp.org>
8745
8746         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
8747         gl_UNISTD_H_DEFAULTS, gl_SYS_IOCTL_H_DEFAULTS only if they exist.
8748         * modules/sys_socket (Files): Remove m4/unistd_h.m4, m4/sys_ioctl_h.m4.
8749
8750         * lib/sys_socket.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); Move macro from
8751         here ...
8752         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); ... to here.
8753         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Remove invocation of
8754         gl_UNISTD_H_DEFAULTS.
8755
8756 2008-10-25  Eric Blake  <ebb9@byu.net>
8757
8758         signbit: avoid spurious compiler failure
8759         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Move non-constant
8760         declarations inside function.
8761
8762 2008-10-24  Simon Josefsson  <simon@josefsson.org>
8763             Bruno Haible  <bruno@clisp.org>
8764
8765         * lib/stdlib.in.h (@GNULIB_RANDOM_R@): Include stdint.h.
8766         * modules/random_r (Depends-on): Add stdint.
8767
8768 2008-10-24  Bruno Haible  <bruno@clisp.org>
8769
8770         * modules/intprops (License): Change to LGPLv2+, with approval by Paul
8771         Eggert.
8772         * modules/strerror (License): Likewise.
8773
8774 2008-10-24  Jim Meyering  <meyering@redhat.com>
8775
8776         sys_socket: fix typo that inhibited expansion of @GNULIB_SEND@
8777         * modules/sys_socket (Depends-on) [Depends-on]: Fix typo.
8778
8779 2008-10-24  Eric Blake  <ebb9@byu.net>
8780
8781         getgroups: fix compilation when getgroups is available
8782         * lib/getgroups.c (includes): Include <unistd.h> for getgroups,
8783         but with <config.h> override of getgroups disabled.
8784
8785 2008-10-24  Simon Josefsson  <simon@josefsson.org>
8786
8787         * doc/gnulib.texi (Header files): Add note about C++ problems.
8788         Explained by Bruno Haible <bruno@clisp.org>.
8789
8790 2008-10-23  Bruno Haible  <bruno@clisp.org>
8791
8792         Define a dummy SA_NODEFER macro on Interix.
8793         * lib/signal.in.h (SA_NODEFER): Define fallback.
8794         Reported by Aleksey Cheusov <cheusov@tut.by> via
8795         Thomas Klausner <wiz@netbsd.org> and Eric Blake.
8796
8797 2008-10-23  Bruno Haible  <bruno@clisp.org>
8798
8799         * modules/freadahead (License): Change to LGPLv2+.
8800         Suggested by Simon Josefsson.
8801
8802 2008-10-23  Jim Meyering  <meyering@redhat.com>
8803
8804         random_r: new module
8805         * modules/random_r: New file.
8806         * m4/random_r.m4: New file.
8807         * lib/random_r.c: New file, from glibc.
8808         * modules/random_r-tests: New file.
8809         * tests/test-random_r.c: New file.
8810         * lib/stdlib.in.h (srandom_r, initstate_r, setstate_r, random_r):
8811          Declare.
8812         (RAND_MAX): Define.
8813         * m4/stdlib_h.m4: Define and AC_SUBST GNULIB_RANDOM_R and HAVE_RANDOM_R.
8814         * modules/stdlib: Substitute them, too.
8815         * MODULES.html.sh (Extra functions based on POSIX:2001) [Misc]: Add it.
8816         * doc/glibc-functions/initstate_r.texi: Mention the new module.
8817         * doc/glibc-functions/random_r.texi: Likewise.
8818         * doc/glibc-functions/setstate_r.texi: Likewise.
8819         * doc/glibc-functions/srandom_r.texi: Likewise.
8820         * config/srclist.txt: Mention it.
8821
8822 2008-10-23  David Lutterkort  <lutter@redhat.com>
8823
8824         * modules/selinux-h: Search for LIB_SELINUX and mark it as a
8825         link requirement
8826
8827 2008-10-23  Jim Meyering  <meyering@redhat.com>
8828
8829         selinux-h: mark parameters of stub functions as intentionally unused
8830         * lib/se-selinux.in.h: Mark parameters as _UNUSED_PARAMETER_.
8831         * lib/se-context.in.h: Likewise.
8832
8833 2008-10-22  Simon Josefsson  <simon@josefsson.org>
8834
8835         * lib/sys_socket.in.h (FD_ISSET): Fix warnings under mingw.
8836
8837 2008-10-22  Simon Josefsson  <simon@josefsson.org>
8838
8839         * m4/getgroups.m4: Avoid invoking test with wrong parameters.
8840
8841 2008-10-22  Eric Blake  <ebb9@byu.net>
8842
8843         glthread/thread: avoid compiler warning
8844         * lib/glthread/thread.c (gl_thread_exit_func) [USE_WIN32_THREADS]:
8845         Add unreachable abort to silence compiler.
8846
8847 2008-10-22  Eric Blake  <ebb9@byu.net>
8848
8849         netdb: also supply struct addrinfo for cygwin 1.5.x
8850         * m4/netdb_h.m4 (gl_HEADER_NETDB): Check for incomplete header on
8851         older cygwin.
8852         * lib/netdb.in.h [!HAVE_STRUCT_ADDRINFO]: Also supply contents for
8853         cygwin.
8854         * doc/posix-headers/netdb.texi (netdb.h): Document this.
8855
8856 2008-10-22  Bruno Haible  <bruno@clisp.org>
8857
8858         * users.txt: Update entry about pspp.
8859
8860 2008-10-21  Bruno Haible  <bruno@clisp.org>
8861
8862         Simplification.
8863         * lib/sys_socket.in.h (_gl_close_fd_maybe_socket): Remove declaration.
8864         * lib/close.c (_gl_close_fd_maybe_socket): Make static.
8865
8866         Simplification.
8867         * lib/ioctl.c (ioctl): Don't undefine.
8868         * lib/socket.c (socket): Don't undefine.
8869
8870         Remove unused module indicator macros.
8871         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Don't define
8872         GNULIB_$1 as a C macro.
8873
8874         * doc/posix-functions/close.texi: Undo last change.
8875         * doc/posix-functions/ioctl.texi: Merge the two paragraphs about
8876         Windows platforms.
8877
8878 2008-10-21  Bruno Haible  <bruno@clisp.org>
8879
8880         Add gethostname() declaration to <unistd.h>.
8881         * lib/unistd.in.h (gethostname): New declaration.
8882         * lib/gethostname.c: Include <unistd.h>.
8883         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Require
8884         gl_UNISTD_H_DEFAULTS. Set HAVE_GETHOSTNAME.
8885         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETHOSTNAME
8886         and HAVE_GETHOSTNAME.
8887         * modules/gethostname (Depends-on): Add unistd.
8888         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8889         (Include): Specify <unistd.h>.
8890         * modules/unistd (Makefile.am): Substitute GNULIB_GETHOSTNAME and
8891         HAVE_GETHOSTNAME.
8892         * tests/test-gethostname.c: Include <unistd.h> first.
8893
8894 2008-10-21  Bruno Haible  <bruno@clisp.org>
8895
8896         * modules/poll-tests (Depends-on): Add sys_ioctl, ioctl.
8897         * modules/select-tests (Depends-on): Likewise.
8898         Reported by Simon Josefsson.
8899
8900 2008-10-21  Simon Josefsson  <simon@josefsson.org>
8901
8902         * lib/close.c: Add _gl_close_fd_maybe_socket from winsock.c.
8903         * lib/accept.c: New file, based on winsock.c.
8904         * lib/bind.c: New file, based on winsock.c.
8905         * lib/connect.c: New file, based on winsock.c.
8906         * lib/getpeername.c: New file, based on winsock.c.
8907         * lib/getsockname.c: New file, based on winsock.c.
8908         * lib/getsockopt.c: New file, based on winsock.c.
8909         * lib/ioctl.c: New file, based on winsock.c.
8910         * lib/listen.c: New file, based on winsock.c.
8911         * lib/recv.c: New file, based on winsock.c.
8912         * lib/recvfrom.c: New file, based on winsock.c.
8913         * lib/send.c: New file, based on winsock.c.
8914         * lib/sendto.c: New file, based on winsock.c.
8915         * lib/setsockopt.c: New file, based on winsock.c.
8916         * lib/shutdown.c: New file, based on winsock.c.
8917         * lib/socket.c: New file, based on winsock.c.
8918         * lib/w32sock.h: New file, based on winsock.c.
8919         * lib/winsock.c: Remove file.
8920         * modules/accept: Likewise.
8921         * modules/bind: Likewise.
8922         * modules/connect: Likewise.
8923         * modules/getpeername: Likewise.
8924         * modules/getsockname: Likewise.
8925         * modules/getsockopt: Likewise.
8926         * modules/ioctl: Likewise.
8927         * modules/listen: Likewise.
8928         * modules/recv: Likewise.
8929         * modules/recvfrom: Likewise.
8930         * modules/send: Likewise.
8931         * modules/sendto: Likewise.
8932         * modules/setsockopt: Likewise.
8933         * modules/shutdown: Likewise.
8934         * modules/socket: Use socket.c instead of winsock.c.
8935         * modules/sys_socket: Remove (unneeded?) dependency on winsock.c.
8936         * doc/posix-functions/accept.texi: Doc fix.
8937         * doc/posix-functions/bind.texi: Doc fix.
8938         * doc/posix-functions/close.texi: Doc fix.
8939         * doc/posix-functions/connect.texi: Doc fix.
8940         * doc/posix-functions/getpeername.texi: Doc fix.
8941         * doc/posix-functions/getsockname.texi: Doc fix.
8942         * doc/posix-functions/getsockopt.texi: Doc fix.
8943         * doc/posix-functions/ioctl.texi: Doc fix.
8944         * doc/posix-functions/listen.texi: Doc fix.
8945         * doc/posix-functions/recv.texi: Doc fix.
8946         * doc/posix-functions/recvfrom.texi: Doc fix.
8947         * doc/posix-functions/send.texi: Doc fix.
8948         * doc/posix-functions/sendto.texi: Doc fix.
8949         * doc/posix-functions/setsockopt.texi: Doc fix.
8950         * doc/posix-functions/shutdown.texi: Doc fix.
8951         * doc/posix-functions/socket.texi: Doc fix.
8952
8953 2008-10-20  Bruno Haible  <bruno@clisp.org>
8954
8955         Take into account the role of SIGABRT_COMPAT on Windows 2008.
8956         * lib/sigprocmask.c (SIGABRT_COMPAT, SIGABRT_COMPAT_MASK): New macros.
8957         (sigismember, sigaddset, sigdelset, sigfillset, rpl_signal): Handle it
8958         as an alias for SIGABRT.
8959         * lib/sigaction.c (SIGABRT_COMPAT): New macro.
8960         (sigaction): Map it to SIGABRT.
8961         Reported by Ramiro Polla <ramiro.polla@gmail.com> via Eric Blake.
8962
8963 2008-10-20  Bruno Haible  <bruno@clisp.org>
8964
8965         * lib/fts.c: Don't include lstat.h.
8966         * lib/openat.c: Include <sys/stat.h> instead of lstat.h.
8967
8968         Move the lstat() declaration to <sys/stat.h>.
8969         * lib/lstat.h: Remove file.
8970         * lib/sys_stat.in.h: Add special invocation convention.
8971         (lstat): New declaration.
8972         * lib/lstat.c (orig_lstat): New function.
8973         (rpl_lstat): Use orig_lstat instead of lstat.
8974         * m4/lstat.m4 (gl_FUNC_LSTAT): Require gl_SYS_STAT_H_DEFAULTS and
8975         AC_C_INLINE. Set REPLACE_LSTAT.
8976         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LSTAT
8977         and REPLACE_LSTAT.
8978         * modules/lstat (Files): Remove lib/lstat.h.
8979         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
8980         (Include): Specify <sys/stat.h> instead of lstat.h.
8981         * modules/sys_stat (Makefile.am): Substitute GNULIB_LSTAT and
8982         REPLACE_LSTAT.
8983         * NEWS: Mention the change.
8984
8985 2008-10-20  Bruno Haible  <bruno@clisp.org>
8986
8987         * modules/posix_spawn-tests: New file.
8988         * tests/test-posix_spawn3.c: New file.
8989
8990 2008-10-20  Bruno Haible  <bruno@clisp.org>
8991
8992         * modules/posix_spawnp-tests (Depends-on): Add sys_wait.
8993         * tests/test-posix_spawn1.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
8994         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Remove fallback definitions.
8995         * tests/test-posix_spawn2.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
8996         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Likewise.
8997
8998 2008-10-20  Bruno Haible  <bruno@clisp.org>
8999
9000         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Test against another bug
9001         of posix_spawn on AIX 5.3.
9002
9003 2008-10-20  Bruno Haible  <bruno@clisp.org>
9004
9005         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Make the check on MacOS X.
9006
9007 2008-10-20  Bruno Haible  <bruno@clisp.org>
9008
9009         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Use AC_LANG_SOURCE instead
9010         of AC_LANG_PROGRAM.
9011
9012 2008-10-20  Simon Josefsson  <simon@josefsson.org>
9013
9014         * lib/netdb.in.h: Don't define GNU specific constants until they
9015         are supported or needed.  Reported by Bruno Haible
9016         <bruno@clisp.org>.
9017
9018 2008-10-20  Simon Josefsson  <simon@josefsson.org>
9019
9020         * lib/canon-host.c: Include netdb.h instead of getaddrinfo.h.
9021
9022 2008-10-20  Simon Josefsson  <simon@josefsson.org>
9023
9024         * lib/getaddrinfo.h: Remove file.
9025         * modules/getaddrinfo: Reflect move from getaddrinfo.h to netdb.h.
9026         * m4/getaddrinfo.m4: Call gl_HEADER_NETDB.  Don't check for netdb.h.
9027         * lib/netdb.in.h: Add declarations from getaddrinfo.h.
9028         * m4/netdb_h.m4: Initialize GNULIB_GETADDRINFO to 0.
9029         * modules/netdb: Substitute GNULIB_GETADDRINFO.
9030         * lib/getaddrinfo.c: Include netdb.h instead of getaddrinfo.h.
9031         * tests/test-getaddrinfo.c: Likewise.
9032         * lib/gai_strerror.c: Likewise.  Also drop HAVE_NETDB_H check.
9033         * NEWS: Mention change.
9034
9035 2008-10-19  Bruno Haible  <bruno@clisp.org>
9036
9037         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Remove unneeded code.
9038
9039 2008-10-19  Bruno Haible  <bruno@clisp.org>
9040
9041         * lib/wait-process.c: Include simply <sys/wait.h>.
9042         (waitpid, WTERMSIG, WCOREDUMP, WEXITSTATUS, WIFSIGNALED, WIFEXITED,
9043         WIFSTOPPED): Remove fallback definitions.
9044         * modules/wait-process (Depends-on): Add sys_wait.
9045
9046         New module 'sys_wait'.
9047         * modules/sys_wait: New file.
9048         * lib/sys_wait.in.h: New file, partially copied from
9049         lib/wait-process.c.
9050         * m4/sys_wait_h.m4: New file.
9051         * doc/posix-headers/sys_wait.texi: Mention the new module.
9052
9053 2008-10-19  Bruno Haible  <bruno@clisp.org>
9054
9055         * m4/wait-process.m4 (gl_WAIT_PROCESS): Remove test for unistd.h.
9056
9057 2008-10-19  Bruno Haible  <bruno@clisp.org>
9058
9059         Assume that waitpid() fills an 'int' status, not a 'union wait'.
9060         * lib/wait-process.c (WAIT_T): Remove type.
9061         (WTERMSIG, WCOREDUMP, WEXITSTATUS): Define fallbacks using bit masks.
9062         (wait_subprocess): Update.
9063
9064 2008-10-19  Bruno Haible  <bruno@clisp.org>
9065
9066         New module 'atoll'.
9067         * modules/atoll: New file.
9068         * lib/stdlib.in.h (atoll): New declaration.
9069         * lib/atoll.c: New file, from glibc with modifications.
9070         * m4/atoll.m4: New file.
9071         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_ATOLL,
9072         HAVE_ATOLL.
9073         * modules/stdlib (Makefile.am): Substitute GNULIB_ATOLL, HAVE_ATOLL.
9074         * doc/posix-functions/atoll.texi: Mention the new module.
9075
9076 2008-10-19  Bruno Haible  <bruno@clisp.org>
9077
9078         Add strtoull() declaration to <stdlib.h>.
9079         * lib/stdlib.in.h (strtoull): New declaration.
9080         * m4/strtoull.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
9081         Set HAVE_STRTOULL.
9082         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOULL,
9083         HAVE_STRTOULL.
9084         * modules/strtoull (Depends-on): Add stdlib.
9085         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
9086         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOULL,
9087         HAVE_STRTOULL.
9088
9089 2008-10-19  Bruno Haible  <bruno@clisp.org>
9090
9091         Add strtoll() declaration to <stdlib.h>.
9092         * lib/stdlib.in.h (strtoll): New declaration.
9093         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
9094         Set HAVE_STRTOLL.
9095         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOLL,
9096         HAVE_STRTOLL.
9097         * modules/strtoll (Depends-on): Add stdlib.
9098         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
9099         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOLL, HAVE_STRTOLL.
9100
9101 2008-10-19  Bruno Haible  <bruno@clisp.org>
9102
9103         * modules/bcopy (Depends-on): Add strings.
9104         (Include): Specify <strings.h>.
9105
9106 2008-10-19  Bruno Haible  <bruno@clisp.org>
9107
9108         * doc/posix-functions/atexit.texi: Update doc regarding mingw.
9109
9110 2008-10-19  Bruno Haible  <bruno@clisp.org>
9111
9112         * lib/openat-die.c (openat_save_fail, openat_restore_fail): Rename
9113         the parameter from 'errno' to 'errnum'. Fixes a compilation error on
9114         mingw.
9115
9116 2008-10-19  Bruno Haible  <bruno@clisp.org>
9117
9118         * lib/atanl.c: Don't include isnanl.h.
9119         * lib/cosl.c: Likewise.
9120         * lib/ldexpl.c: Likewise.
9121         * lib/logl.c: Likewise.
9122         * lib/sinl.c: Likewise.
9123         * lib/sqrtl.c: Likewise.
9124         * lib/tanl.c: Likewise.
9125
9126         Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
9127         * lib/isnanf.h: Remove file.
9128         * lib/isnand.h: Remove file.
9129         * lib/isnanl.h: Remove file.
9130         * lib/math.in.h: Include the contents of lib/isnanf.h, lib/isnand.h,
9131         lib/isnanl.h. Use HAVE_ISNANF, HAVE_ISNAND, HAVE_ISNANL as substituted
9132         macros.
9133         * m4/isnanf.m4 (gl_FUNC_ISNANF): Require gl_MATH_H_DEFAULTS. Set
9134         HAVE_ISNANF, don't define it as a C macro.
9135         * m4/isnand.m4 (gl_FUNC_ISNAND): Require gl_MATH_H_DEFAULTS. Set
9136         HAVE_ISNAND, don't define it as a C macro.
9137         * m4/isnanl.m4 (gl_FUNC_ISNANL): Require gl_MATH_H_DEFAULTS. Set
9138         HAVE_ISNANL, don't define it as a C macro.
9139         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_ISNAN[FDL] and
9140         HAVE_ISNAN[FDL].
9141         * modules/isnanf (Files): Remove lib/isnanf.h.
9142         (Depends-on): Add math.
9143         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
9144         (Include): Specify <math.h> instead of isnanf.h.
9145         * modules/isnand (Files): Remove lib/isnand.h.
9146         (Depends-on): Add math.
9147         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
9148         (Include): Specify <math.h> instead of isnand.h.
9149         * modules/isnanl (Files): Remove lib/isnanl.h.
9150         (Depends-on): Add math.
9151         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
9152         (Include): Specify <math.h> instead of isnanl.h.
9153         * modules/math (Makefile.am): Substitute GNULIB_ISNAN[FDL] and
9154         HAVE_ISNAN[FDL].
9155         * tests/test-isnanf.c: Include <math.h> instead of isnanf.h.
9156         * tests/test-isnand.c: Include <math.h> instead of isnand.h.
9157         * tests/test-isnanl.c: Include <math.h> instead of isnanl.h.
9158         * NEWS: Mention the change.
9159
9160 2008-10-18  Bruno Haible  <bruno@clisp.org>
9161
9162         Add getusershell(), setusershell(), endusershell() declarations to
9163         <unistd.h>.
9164         * lib/unistd.in.h (getusershell, setusershell, endusershell): New
9165         declarations.
9166         * lib/getusershell.c: Include unistd.h.
9167         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Require
9168         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
9169         HAVE_GETUSERSHELL.
9170         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETUSERSHELL
9171         and HAVE_GETUSERSHELL.
9172         * modules/getusershell (Depends-on): Add unistd, extensions.
9173         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9174         (Include): Specify <unistd.h>.
9175         * modules/unistd (Makefile.am): Substitute GNULIB_GETUSERSHELL and
9176         HAVE_GETUSERSHELL.
9177
9178 2008-10-18  Bruno Haible  <bruno@clisp.org>
9179
9180         Add a getloadavg() declaration to <stdlib.h>.
9181         * lib/stdlib.in.h; Include <sys/loadavg.h> when needed for the
9182         getloadavg declaration.
9183         (getloadavg): New declaration.
9184         * lib/getloadavg.c: Include <stdlib.h> first.
9185         * m4/getloadavg.m4 (gl_GETLOADAVG): Require gl_STDLIB_H_DEFAULTS and
9186         AC_USE_SYSTEM_EXTENSIONS. Test whether sys/loadavg.h exists. Set
9187         HAVE_SYS_LOADAVG_H and HAVE_DECL_GETLOADAVG.
9188         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GETLOADAVG,
9189         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
9190         * modules/getloadavg (Depends-on): Add stdlib, extensions.
9191         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
9192         (Include): Specify <stdlib.h>.
9193         * modules/stdlib (Makefile.am): Substitute GNULIB_GETLOADAVG,
9194         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
9195
9196 2008-10-18  Bruno Haible  <bruno@clisp.org>
9197
9198         * lib/dirchownmod.c: Don't include lchmod.h.
9199
9200         Move the lchmod() declaration to <sys/stat.h>.
9201         * lib/lchmod.h: Remove file.
9202         * lib/sys_stat.in.h: Add placeholder for GL_LINK_WARNING.
9203         (lchmod): New declaration, moved here from lib/lchown.h.
9204         * m4/lchmod.m4 (gl_FUNC_LCHMOD): Require gl_SYS_STAT_H_DEFAULTS and
9205         AC_USE_SYSTEM_EXTENSIONS. Set HAVE_LCHMOD.
9206         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LCHMOD
9207         and HAVE_LCHMOD.
9208         * modules/lchmod (Files): Remove lib/lchmod.h.
9209         (Depends-on): Add sys_stat, extensions.
9210         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
9211         (Include): Specify <sys/stat.h> instead of lchmod.h.
9212         * modules/sys_stat (Depends-on): Add link-warning.
9213         (Makefile.am): Substitute GNULIB_LCHMOD, HAVE_LCHMOD, and the
9214         definition of GL_LINK_WARNING.
9215         * NEWS: Mention the change.
9216
9217 2008-10-18  Bruno Haible  <bruno@clisp.org>
9218
9219         * lib/fchdir.c: Don't include dirfd.h.
9220         * lib/fts.c: Likewise.
9221         * lib/getcwd.c: Likewise.
9222         * lib/glob.c: Likewise.
9223
9224         Move the dirfd() declaration to <dirent.h>.
9225         * lib/dirfd.h: Remove file.
9226         * lib/dirent.in.h: Add placeholder for GL_LINK_WARNING.
9227         (dirfd): New declaration.
9228         * lib/dirfd.c: Include <dirent.h> instead of dirfd.h.
9229         * m4/dirfd.m4 (gl_FUNC_DIRFD): Require gl_DIRENT_H_DEFAULTS and
9230         AC_USE_SYSTEM_EXTENSIONS. Invoke gl_REPLACE_DIRENT_H. Set
9231         HAVE_DECL_DIRFD.
9232         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_DIRFD and
9233         HAVE_DECL_DIRFD.
9234         * modules/dirfd (Files): Remove lib/dirfd.h.
9235         (Depends-on): Add dirent, extensions.
9236         (configure.ac): Invoke gl_DIRENT_MODULE_INDICATOR.
9237         (Include): Specify <dirent.h> instead of dirfd.h.
9238         * modules/dirent (Depends-on): Add link-warning.
9239         (Makefile.am): Substitute GNULIB_DIRFD, HAVE_DECL_DIRFD, and
9240         definition of GL_LINK_WARNING.
9241         * NEWS: Mention the change.
9242
9243 2008-10-18  Bruno Haible  <bruno@clisp.org>
9244
9245         Move the euidaccess() declaration to <unistd.h>.
9246         * lib/euidaccess.h: Remove file.
9247         * lib/unistd.in.h (euidaccess): New declaration.
9248         * lib/euidaccess.c: Don't include euidaccess.h.
9249         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Require gl_UNISTD_H_DEFAULTS.
9250         Don't check whether euidaccess is declared. Set HAVE_EUIDACCESS.
9251         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_EUIDACCESS
9252         and HAVE_EUIDACCESS.
9253         * modules/euidaccess (Files): Remove lib/euidaccess.h.
9254         (Depends-on): Add unistd.
9255         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9256         (Include): Specify <unistd.h> instead of euidaccess.h.
9257         * modules/unistd (Makefile.am): Substitute GNULIB_EUIDACCESS and
9258         HAVE_EUIDACCESS.
9259         * NEWS: Mention the change.
9260
9261 2008-10-18  Bruno Haible  <bruno@clisp.org>
9262
9263         * lib/xgetdomainname.c: Include <unistd.h> instead of getdomainname.h.
9264
9265         Move the getdomainname() declaration to <unistd.h>.
9266         * lib/getdomainname.h: Remove file.
9267         * lib/unistd.in.h (getdomainname): New declaration.
9268         * lib/getdomainname.c: Include <unistd.h> instead of getdomainname.h.
9269         * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Require
9270         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
9271         HAVE_GETDOMAINNAME.
9272         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
9273         GNULIB_GETDOMAINNAME and HAVE_GETDOMAINNAME.
9274         * modules/getdomainname (Files): Remove lib/getdomainname.h.
9275         (Depends-on): Add unistd, extensions.
9276         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
9277         (Includes): Specify <unistd.h> instead of getdomainname.h.
9278         * modules/unistd (Makefile.am): Substitute GNULIB_GETDOMAINNAME and
9279         HAVE_GETDOMAINNAME.
9280         * NEWS: Mention the change.
9281
9282 2008-10-18  Bruno Haible  <bruno@clisp.org>
9283
9284         * modules/dirent: New file.
9285         * m4/dirent_h.m4: New file.
9286         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_DIRENT_H_DEFAULTS.
9287         Invoke gl_REPLACE_DIRENT_H. Don't assign DIRENT_H directly.
9288         * modules/fchdir (Files): Remove lib/dirent.in.h.
9289         (Depends-on): Add dirent.
9290         (Makefile.am): Move rules to modules/dirent.
9291         * doc/posix-headers/dirent.texi: Mention the new module.
9292
9293 2008-10-18  Bruno Haible  <bruno@clisp.org>
9294
9295         Avoid -Wunused-parameter warnings in public gnulib header files.
9296         * m4/gnulib-common.m4 (gl_COMMON_BODY): Define _UNUSED_PARAMETER_ as a
9297         macro.
9298         * lib/unistr.h (u32_mbtouc_unsafe, u32_mbtouc): Use it.
9299
9300 2008-10-18  Bruno Haible  <bruno@clisp.org>
9301
9302         * doc/glibc-functions/dirfd.texi: Mention the module 'dirfd'.
9303         * doc/glibc-functions/error.texi: Mention the module 'error'.
9304         * doc/glibc-functions/euidaccess.texi: Mention the module 'euidaccess'.
9305         * doc/glibc-functions/getdomainname.texi: Mention the module
9306         'getdomainname'.
9307         * doc/glibc-functions/getloadavg.texi: Mention the module 'getloadavg'.
9308         * doc/glibc-functions/getpagesize.texi: Mention the module
9309         'getpagesize'.
9310         * doc/glibc-functions/getusershell.texi: Mention the module
9311         'getusershell'.
9312         * doc/glibc-functions/isnanl.texi: Mention the module 'isnanl'.
9313         * doc/glibc-functions/lchmod.texi: Mention the module 'lchmod'.
9314         * doc/glibc-functions/mempcpy.texi: Mention the module 'mempcpy'.
9315         * doc/glibc-functions/memrchr.texi: Mention the module 'memrchr'.
9316         * doc/glibc-functions/mkdtemp.texi: Mention the module 'mkdtemp'.
9317         * doc/glibc-functions/rpmatch.texi: Mention the module 'rpmatch'.
9318         * doc/glibc-functions/stpcpy.texi: Mention the module 'stpcpy'.
9319         * doc/glibc-functions/stpncpy.texi: Mention the module 'stpncpy'.
9320         * doc/glibc-functions/strchrnul.texi: Mention the module 'strchrnul'.
9321         * doc/glibc-functions/strndup.texi: Mention the module 'strndup'.
9322         * doc/glibc-functions/strnlen.texi: Mention the module 'strnlen'.
9323         * doc/glibc-functions/strsep.texi: Mention the module 'strsep'.
9324         * doc/glibc-functions/timegm.texi: Mention the module 'timegm'.
9325         * doc/glibc-functions/vasprintf.texi: Mention the module 'vasprintf'.
9326
9327 2008-10-17  Bruno Haible  <bruno@clisp.org>
9328
9329         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): On platforms other than
9330         HP-UX and IRIX, use -0.0L.
9331         * tests/test-ceill.c (minus_zero): Likewise.
9332         * tests/test-floorl.c (minus_zero): Likewise.
9333         * tests/test-frexpl.c (minus_zero): Likewise.
9334         * tests/test-isnan.c (minus_zerol): Likewise.
9335         * tests/test-isnanl.h (minus_zero): Likewise.
9336         * tests/test-ldexpl.c (minus_zero): Likewise.
9337         * tests/test-roundl.c (minus_zero): Likewise.
9338         * tests/test-signbit.c (minus_zerol): Likewise.
9339         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
9340         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
9341         * tests/test-truncl.c (minus_zero): Likewise.
9342         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
9343         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
9344         Reported by Markus Armbruster <armbru@redhat.com> via Jim Meyering
9345         and by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
9346
9347 2008-10-17  Bruno Haible  <bruno@clisp.org>
9348
9349         Avoid gcc warnings because of #pragma GCC system_header on older gcc.
9350         * lib/arpa_inet.in.h: Encloses reference to PRAGMA_SYSTEM_HEADER so
9351         that it gets activated only for gcc >= 3.0.
9352         * lib/dirent.in.h: Likewise.
9353         * lib/errno.in.h: Likewise.
9354         * lib/fcntl.in.h: Likewise.
9355         * lib/float.in.h: Likewise.
9356         * lib/iconv.in.h: Likewise.
9357         * lib/inttypes.in.h: Likewise.
9358         * lib/locale.in.h: Likewise.
9359         * lib/math.in.h: Likewise.
9360         * lib/netdb.in.h: Likewise.
9361         * lib/netinet_in.in.h: Likewise.
9362         * lib/search.in.h: Likewise.
9363         * lib/signal.in.h: Likewise.
9364         * lib/spawn.in.h: Likewise.
9365         * lib/stdarg.in.h: Likewise.
9366         * lib/stdint.in.h: Likewise.
9367         * lib/stdio.in.h: Likewise.
9368         * lib/stdlib.in.h: Likewise.
9369         * lib/string.in.h: Likewise.
9370         * lib/strings.in.h: Likewise.
9371         * lib/sys_file.in.h: Likewise.
9372         * lib/sys_ioctl.in.h: Likewise.
9373         * lib/sys_select.in.h: Likewise.
9374         * lib/sys_socket.in.h: Likewise.
9375         * lib/sys_stat.in.h: Likewise.
9376         * lib/sys_time.in.h: Likewise.
9377         * lib/sysexits.in.h: Likewise.
9378         * lib/time.in.h: Likewise.
9379         * lib/unistd.in.h: Likewise.
9380         * lib/wchar.in.h: Likewise.
9381         * lib/wctype.in.h: Likewise.
9382         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
9383
9384 2008-10-17  Jim Meyering  <meyering@redhat.com>
9385
9386         ignore-value: don't depend on inline module
9387         * modules/ignore-value (Depends-on): Remove 'inline'.
9388         (configure.ac): Instead, add AC_REQUIRE([AC_C_INLINE]) here.
9389         Suggestion from Bruno Haible.
9390
9391 2008-10-17  Bruno Haible  <bruno@clisp.org>
9392
9393         New implementation of condition variables for Win32.
9394         * lib/glthread/cond.h (struct gl_waitqueue_link): New type.
9395         (gl_linked_waitqueue_t): New type.
9396         (gl_cond_t): Use it.
9397         * lib/glthread/cond.c (struct gl_waitqueue_element): New type.
9398         (gl_waitqueue_init, gl_waitqueue_add, gl_waitqueue_remove,
9399         gl_waitqueue_notify_first, gl_waitqueue_notify_all): New functions.
9400         (glthread_cond_init_func, glthread_cond_wait_func,
9401         glthread_cond_timedwait_func, glthread_cond_signal_func,
9402         glthread_cond_broadcast_func, glthread_cond_destroy_func):
9403         Reimplemented on the basis of gl_linked_waitqueue_t.
9404         * lib/glthread/lock.h (gl_carray_waitqueue_t): Renamed from
9405         gl_waitqueue_t.
9406         (gl_rwlock_t): Update.
9407         * lib/glthread/lock.c (gl_waitqueue_t): Alias to gl_carray_waitqueue_t.
9408
9409 2008-10-17  Simon Josefsson  <simon@josefsson.org>
9410
9411         * modules/recvfrom (Depends-on): Add dependency on getpeername.
9412         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
9413
9414 2008-10-17  Jim Meyering  <meyering@redhat.com>
9415
9416         ignore-value: new module
9417         * modules/ignore-value: New file.
9418         * lib/ignore-value.h: New file.
9419         * MODULES.html.sh (Compiler warning management): New section,
9420         just for this module.  More to come.
9421
9422 2008-10-16  Paul Eggert  <eggert@cs.ucla.edu>
9423
9424         open-safer.c: avoid 'signed and unsigned in conditional...' warning
9425         * lib/open-safer.c (open_safer): Use an "if/else" statement in place
9426         of the ternary operator.  Reported by Reuben Thomas <rrt@sc3d.org>.
9427
9428 2008-10-16  Jim Meyering  <meyering@redhat.com>
9429
9430         openat-die.c: avoid 'no previous prototype' warning
9431         * lib/openat-die.c: Include "openat.h".
9432         Reported by Reuben Thomas <rrt@sc3d.org>.
9433
9434 2008-10-16  Simon Josefsson  <simon@josefsson.org>
9435
9436         * m4/netdb_h.m4: Assume that if netdb.h exists, it works.
9437         * lib/netdb.in.h: Fix typo.
9438         Reported by Bruno Haible  <bruno@clisp.org>
9439
9440         * lib/netdb.in.h: Include sys/socket.h for platforms without
9441         netdb.h, to get structures like hostent on MinGW.
9442         * modules/netdb (Depends-on): Add sys_socket.
9443
9444 2008-10-15  Simon Josefsson  <simon@josefsson.org>
9445
9446         * modules/netdb, modules/netdb-tests: New file.
9447         * m4/netdb_h.m4: New file.
9448         * lib/netdb.in.h: Add, currently just an empty file pending
9449         definitions.
9450         * tests/test-netdb.c: New file.
9451         * doc/posix-headers/netdb.texi: Mention that we replace it if
9452         needed.
9453         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
9454         netdb.
9455
9456 2008-10-15  Simon Josefsson  <simon@josefsson.org>
9457
9458         * doc/gnulib.texi (Getaddrinfo and WINVER): Sync documentation
9459         with code.
9460
9461 2008-10-13  Bruno Haible  <bruno@clisp.org>
9462
9463         * lib/glthread/cond.c (glthread_cond_wait_func,
9464         glthread_cond_timedwait_func): Add a comment.
9465
9466 2008-10-13  Yoann Vandoorselaere  <yoann@prelude-ids.org>
9467
9468         * tests/test-poll.c: Include <sys/ioctl.h>, for ioctl().
9469         * tests/test-select.c: Likewise,
9470
9471 2008-10-13  Bruno Haible  <bruno@clisp.org>
9472
9473         * lib/glthread/cond.c (glthread_cond_wait_func,
9474         glthread_cond_timedwait_func): Fix variable name.
9475         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
9476
9477 2008-10-13  Paolo Bonzini  <bonzini@gnu.org>
9478
9479         fix getaddrinfo emulation for systems with struct sockaddr.sa_len
9480         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect
9481         struct sockaddr.sa_len.
9482         * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
9483
9484 2008-10-13  Simon Josefsson  <simon@josefsson.org>
9485
9486         * build-aux/pmccabe2html: Add css and css_url parameters.
9487
9488 2008-10-12  Bruno Haible  <bruno@clisp.org>
9489
9490         * tests/test-sameacls.c (main) [AIX]: Clear type argument before
9491         calling aclx_get.
9492         Reported by Rainer Tammer <tammer@tammer.net>.
9493
9494 2008-10-12  Bruno Haible  <bruno@clisp.org>
9495
9496         Use msvcrt aware primitives for creation/termination of Win32 threads.
9497         * lib/glthread/thread.c: Include <process.h>.
9498         (glthread_create_func): Use _beginthreadex instead of CreateThread.
9499         (wrapper_func): Update signature.
9500         (gl_thread_exit_func): Use _endthreadex instead of EndThread.
9501
9502 2008-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
9503             Bruno Haible  <bruno@clisp.org>
9504
9505         Provide a Win32 implementation of the 'cond' module.
9506         * lib/glthread/cond.h [USE_WIN32]: New implementation.
9507         * lib/glthread/cond.c (glthread_cond_init_func,
9508         glthread_cond_wait_func, glthread_cond_timedwait_func,
9509         glthread_cond_signal_func, glthread_cond_broadcast_func,
9510         glthread_cond_destroy_func) [USE_WIN32]: New functions.
9511         * modules/cond (Dependencies): Add gettimeofday.
9512
9513 2008-10-11  Bruno Haible  <bruno@clisp.org>
9514
9515         Make sleep work on older versions of mingw.
9516         * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
9517         only whether it exists.
9518         * doc/posix-functions/sleep.texi: Mention the problem with older
9519         versions of mingw.
9520
9521 2008-10-11  Bruno Haible  <bruno@clisp.org>
9522
9523         New module 'shutdown'.
9524         * modules/shutdown: New file.
9525         * lib/sys_socket.in.h (shutdown): New declaration.
9526         * lib/winsock.c (shutdown): New function.
9527         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
9528         GNULIB_SHUTDOWN.
9529         * modules/sys_socket (Makefile.am): Substitute GNULIB_SHUTDOWN.
9530         * doc/posix-functions/shutdown.texi: Document the new module.
9531
9532 2008-10-11  Jim Meyering  <meyering@redhat.com>
9533
9534         * lib/fclose.c: Fix typo in comment: s/close/fclose/.
9535
9536 2008-10-11  Bruno Haible  <bruno@clisp.org>
9537
9538         New module 'fclose'.
9539         * modules/fclose: New file.
9540         * lib/stdio.in.h (fclose): New declaration.
9541         * lib/fclose.c: New file.
9542         * m4/fclose.m4: New file.
9543         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FCLOSE,
9544         REPLACE_FCLOSE.
9545         * m4/close.m4 (gl_REPLACE_CLOSE): Invoke gl_REPLACE_FCLOSE.
9546         * modules/stdio (Makefile.am): Substitute GNULIB_FCLOSE,
9547         REPLACE_FCLOSE.
9548         * modules/close (Depends-on): fclose.
9549         * doc/posix-functions/fclose.texi: Mention the problem on Windows.
9550
9551 2008-10-11  Bruno Haible  <bruno@clisp.org>
9552
9553         * lib/winsock.c (_gl_close_fd_maybe_socket): If closesocket fails,
9554         set errno and don't call _close.
9555
9556 2008-10-10  Bruno Haible  <bruno@clisp.org>
9557
9558         * lib/copy-acl.c (qcopy_acl) [CYGWIN]: Call chmod before setting the
9559         ACL, not afterwards. Fixes test failure on Cygwin.
9560
9561 2008-10-09  Ben Pfaff  <blp@gnu.org>
9562
9563         * build-aux/announce-gen: Fix gnulib version related part of usage
9564         message.  Die with a useful error message if no tarballs are
9565         found.
9566
9567 2008-10-10  Jim Meyering  <meyering@redhat.com>
9568
9569         bootstrap: use git's --depth=N option only if it's supported
9570         * build-aux/bootstrap: Work with git-1.4.4.4, which does not
9571         recognize the --depth option.  Reported by Pádraig Brady.
9572
9573 2008-10-09  Bruno Haible  <bruno@clisp.org>
9574
9575         New module 'ioctl'.
9576         * modules/ioctl: New file.
9577         * lib/sys_socket.in.h (ioctl): Remove declaration.
9578         * lib/winsock.c: Include <sys/ioctl.h>.
9579         (rpl_ioctl): Define only of the gnulib module 'ioctl' is present.
9580         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
9581         gl_SYS_IOCTL_H_DEFAULTS. Set also SYS_IOCTL_H_HAVE_WINSOCK2_H.
9582         * modules/sys_socket (Files): Add m4/sys_ioctl_h.m4.
9583         * doc/posix-functions/ioctl.texi: Mention the new module.
9584
9585 2008-10-09  Bruno Haible  <bruno@clisp.org>
9586
9587         New module 'sys_ioctl'.
9588         * lib/sys_ioctl.in.h: New file.
9589         * m4/sys_ioctl_h.m4: New file.
9590         * modules/sys_ioctl: New file.
9591         * doc/glibc-headers/sys_ioctl.texi: Mention the new module.
9592
9593 2008-10-09  Bruno Haible  <bruno@clisp.org>
9594
9595         * lib/sys_socket.in.h (ioctl): Make signature POSIX compliant.
9596         * lib/winsock.c: Include <stdarg.h>.
9597         (rpl_ioctl): Change to second argument 'int' and then varargs.
9598
9599 2008-10-09  Bruno Haible  <bruno@clisp.org>
9600
9601         * m4/close.m4 (gl_FUNC_CLOSE): Arrange to replace the close() function
9602         when the sys_socket module is present and the system has <winsock2.h>.
9603
9604 2008-10-09  Bruno Haible  <bruno@clisp.org>
9605
9606         * doc/posix-functions/close.texi: Mention module 'close' instead of
9607         module 'sys_socket'.
9608
9609 2008-10-09  Bruno Haible  <bruno@clisp.org>
9610
9611         * doc/glibc-headers/sys_ioctl.texi: New file.
9612         * doc/gnulib.texi: Include it.
9613
9614 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
9615             Bruno Haible  <bruno@clisp.org>
9616
9617         Combine the two replacements of 'close'.
9618         * lib/sys_socket.in.h (close): Define to a reminder to include
9619         <unistd.h>.
9620         (_gl_close_fd_maybe_socket): New declaration.
9621         (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): New macro.
9622         * lib/winsock.c (close): Remove undefinition.
9623         (_gl_close_fd_maybe_socket): Renamed from rpl_close. Define only when
9624         needed for the gnulib module 'close'.
9625         * lib/unistd.in.h (close): If the gnulib module 'close' is not used,
9626         define to an error symbol or to a warning, if suitable.
9627         * lib/close.c: Include <sys/socket.h>.
9628         (rpl_close): Invoke _gl_close_fd_maybe_socket when gnulib defines it.
9629         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Set also
9630         UNISTD_H_HAVE_WINSOCK2_H.
9631         (gl_SYS_SOCKET_H_DEFAULTS): Require gl_UNISTD_H_DEFAULTS.
9632         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
9633         UNISTD_H_HAVE_WINSOCK2_H.
9634         * modules/sys_socket (Files): Add m4/unistd_h.m4.
9635         (configure.ac): Set a module indicator.
9636         (Makefile.am): Substitute GNULIB_CLOSE.
9637         * modules/unistd (Makefile.am): Substitute UNISTD_H_HAVE_WINSOCK2_H.
9638         * modules/poll-tests (Depends-on): Add close.
9639         * modules/select-tests (Depends-on): Likewise.
9640
9641 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
9642             Bruno Haible  <bruno@clisp.org>
9643
9644         New module 'close'.
9645         * modules/close: New file.
9646         * lib/unistd.in.h (close): Move declaration out of the
9647         FCHDIR_REPLACEMENT scope.
9648         (_gl_unregister_fd): New declaration.
9649         * lib/close.c: New file.
9650         * lib/fchdir.c (rpl_close): Remove function.
9651         * m4/close.m4: New file.
9652         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
9653         close.
9654         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_CLOSE and
9655         REPLACE_CLOSE.
9656         * modules/unistd (Makefile.am): Substitute GNULIB_CLOSE and
9657         REPLACE_CLOSE.
9658         * modules/fchdir (Depends-on): Add close.
9659
9660 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
9661             Bruno Haible  <bruno@clisp.org>
9662
9663         * lib/fcntl.in.h (open): Simplify conditionals.
9664         (_gl_register_fd): New declaration.
9665         * lib/fchdir.c (rpl_open): Remove function.
9666         * lib/open.c: When FCHDIR_REPLACEMENT is defined, compile the file
9667         also.
9668         (open): When FCHDIR_REPLACEMENT is defined, invoke _gl_register_fd.
9669         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
9670         open.
9671
9672 2008-10-09  Jim Meyering  <meyering@redhat.com>
9673
9674         GNUmakefile: use the more name-space-friendly "_version"
9675         * top/GNUmakefile (_dummy): Update.
9676         (_version): Rename from "version".
9677
9678 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
9679             Bruno Haible  <bruno@clisp.org>
9680
9681         * lib/fchdir.c (_gl_unregister_fd): New functions, extracted from
9682         rpl_close.
9683         (_gl_register_fd): New function, extracted from rpl_open.
9684         (rpl_close, rpl_closedir): Use _gl_unregister_fd.
9685         (rpl_open, rpl_opendir): Use _gl_register_fd.
9686
9687 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
9688
9689         Fix organization of 'open' replacement.
9690         * m4/open.m4 (gl_REPLACE_OPEN): New macro.
9691         (gl_FUNC_OPEN): Use it.
9692         (gl_PREREQ_OPEN): Add a : to make the body non-empty.
9693
9694 2008-10-08  Bruno Haible  <bruno@clisp.org>
9695
9696         * modules/getdate-tests (test_getdata_LDADD): Add LIBINTL.
9697
9698 2008-10-08  Simon Josefsson  <simon@josefsson.org>
9699
9700         * m4/sys_socket_h.m4: Don't AC_LIBOBJ(winsock).  The file is
9701         AC_LIBOBJ'ed by each gnulib module that needs it (e.g., socket,
9702         listen).
9703
9704 2008-10-08  Eric Blake  <ebb9@byu.net>
9705
9706         GNUmakefile: add 'make version' target
9707         * top/GNUmakefile (_curr-ver): Split version update rules...
9708         (version): ...into a target.
9709
9710 2008-10-07  Bruno Haible  <bruno@clisp.org>
9711
9712         Use a more portable replacement expression for -0.0L.
9713         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Use -LDBL_MIN * LDBL_MIN
9714         instead of -0.0L. Fix m4 quotation.
9715
9716         * tests/test-signbit.c: Include <float.h>.
9717         (minus_zero): New variable.
9718         (test_signbitl): Use minus_zero instead of -zero.
9719         * modules/signbit-tests (Depends-on): Add float.
9720
9721         * tests/test-ceill.c: Include <float.h>.
9722         (zero): Remove variable.
9723         (minus_zero): New variable.
9724         (main): Use minus_zero instead of -zero.
9725         * modules/ceill-tests (Depends-on): Add float.
9726
9727         * tests/test-floorl.c: Include <float.h>.
9728         (zero): Remove variable.
9729         (minus_zero): New variable.
9730         (main): Use minus_zero instead of -zero.
9731         * modules/floorl-tests (Depends-on): Add float.
9732
9733         * tests/test-roundl.c: Include <float.h>.
9734         (zero): Remove variable.
9735         (minus_zero): New variable.
9736         (main): Use minus_zero instead of -zero.
9737         * modules/roundl-tests (Depends-on): Add float.
9738
9739         * tests/test-truncl.c: Include <float.h>.
9740         (zero): Remove variable.
9741         (minus_zero): New variable.
9742         (main): Use minus_zero instead of -zero.
9743         * modules/truncl-tests (Depends-on): Add float.
9744
9745         * tests/test-frexpl.c (zero): Remove variable.
9746         (minus_zero): New variable.
9747         (main): Use minus_zero instead of -zero.
9748         * modules/frexpl-tests (Depends-on): Add float.
9749
9750         * tests/test-isnan.c (zerol): Remove variable.
9751         (minus_zerol): New variable.
9752         (test_long_double): Use minus_zerol instead of -zerol.
9753         * modules/isnan-tests (Depends-on): Add float.
9754
9755         * tests/test-isnanl.h (zero): Remove variable.
9756         (minus_zero): New variable.
9757         (main): Use minus_zero instead of -zero.
9758         * modules/isnanl-nolibm-tests (Depends-on): Add float.
9759         * modules/isnanl-tests (Depends-on): Add float.
9760
9761         * tests/test-ldexpl.c (zero): Remove variable.
9762         (minus_zero): New variable.
9763         (main): Use minus_zero instead of -zero.
9764         * modules/ldexpl-tests (Depends-on): Add float.
9765
9766         * tests/test-snprintf-posix.h (zerol): Remove variable.
9767         (minus_zerol): New variable.
9768         (test_function): Use minus_zerol instead of -zerol.
9769         * modules/snprintf-posix-tests (Depends-on): Add float.
9770         * modules/vsnprintf-posix-tests (Depends-on): Add float.
9771
9772         * tests/test-sprintf-posix.h (zerol): Remove variable.
9773         (minus_zerol): New variable.
9774         (test_function): Use minus_zerol instead of -zerol.
9775         * modules/sprintf-posix-tests (Depends-on): Add float.
9776         * modules/vsprintf-posix-tests (Depends-on): Add float.
9777
9778         * tests/test-vasnprintf-posix.c (zerol): Remove variable.
9779         (minus_zerol): New variable.
9780         (test_function): Use minus_zerol instead of -zerol.
9781         * modules/vasnprintf-posix-tests (Depends-on): Add float.
9782
9783         * tests/test-vasprintf-posix.c (zerol): Remove variable.
9784         (minus_zerol): New variable.
9785         (test_function): Use minus_zerol instead of -zerol.
9786         * modules/vasprintf-posix-tests (Depends-on): Add float.
9787
9788 2008-10-07  Simon Josefsson  <simon@josefsson.org>
9789
9790         * MODULES.html.sh (Support for building documentation): Mention
9791         pmccabe2html.  Sort entries.
9792
9793         Add pmccabe2html module, from gnupdf.
9794         * build-aux/pmccabe.css: New file.
9795         * build-aux/pmccabe2html: New file.
9796         * m4/pmccabe2html.m4: New file.
9797         * modules/pmccabe2html: New file.
9798
9799 2008-10-07  Richard W.M. Jones <rjones@redhat.com>
9800
9801         flock: new module
9802         * MODULES.html.sh: Add to list of modules.
9803         * lib/flock.c: flock implementation for Windows and Unix systems
9804         which have fcntl.
9805         * doc/glibc-functions/flock.texi: Update documentation.
9806         * lib/sys_file.in.h: <sys/file.h> header file.
9807         * m4/flock.m4: M4 macros.
9808         * m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
9809         * modules/flock: flock module.
9810         * modules/flock-tests: flock tests module.
9811         * modules/sys_file: sys/file.h module.
9812         * tests/test-flock.c: test suite for flock.
9813
9814 2008-10-06  Jim Meyering  <meyering@redhat.com>
9815
9816         bootstrap: check for LT_INIT more portably still ;-)
9817         * build-aux/bootstrap: Don't rely on \>, since it's not portable.
9818         Spotted by Bruno Haible.
9819
9820 2008-10-06  Eric Blake  <ebb9@byu.net>
9821
9822         test-signbit: avoid tripping Irix cc bug on -0.0L
9823         * tests/test-signbit.c (minus_zerol): Delete, and replace with
9824         '-zerol'.  This may break on HP-UX/hppa, but at least makes the
9825         entire testsuite consistent and avoids an Irix 6.2 bug.
9826
9827 2008-10-05  Bruno Haible  <bruno@clisp.org>
9828             Jim Meyering  <jim@meyering.net>
9829
9830         Add an option for ignoring EPIPE during close_stdout.
9831         * lib/closeout.h: Include <stdbool.h>.
9832         (close_stdout_set_ignore_EPIPE): New declaration.
9833         * lib/closeout.c: Include <stdbool.h>.
9834         (ignore_EPIPE): New variable.
9835         (close_stdout_set_ignore_EPIPE): New function.
9836         (close_stdout): Ignore EPIPE error if ignore_EPIPE is set.
9837         * lib/close-stream.c (close_stream): Mention the possible EPIPE
9838         failure.
9839         * modules/closeout (Depends-on): Add stdbool.
9840
9841 2008-10-05  Bruno Haible  <bruno@clisp.org>
9842
9843         * modules/accept: New file.
9844         * modules/bind: New file.
9845         * modules/connect: New file.
9846         * modules/getpeername: New file.
9847         * modules/getsockname: New file.
9848         * modules/getsockopt: New file.
9849         * modules/listen: New file.
9850         * modules/recv: New file.
9851         * modules/recvfrom: New file.
9852         * modules/send: New file.
9853         * modules/sendto: New file.
9854         * modules/setsockopt: New file.
9855         * modules/socket: New file.
9856         * lib/sys_socket.in.h: Include the GL_LINK_WARNING definition.
9857         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
9858         listen, recv, send, recvfrom, sendto, setsockopt): Declare only when
9859         the particular module is requested. Add a link warning when the
9860         particular module is not requested.
9861         * lib/winsock.c (rpl_socket, rpl_connect, rpl_accept, rpl_bind,
9862         rpl_getpeername, rpl_getsockname, rpl_getsockopt, rpl_listen, rpl_recv,
9863         rpl_send, rpl_recvfrom, rpl_sendto, rpl_setsockopt): Define only when
9864         the particular module is requested.
9865         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR,
9866         gl_SYS_SOCKET_H_DEFAULTS): New macros.
9867         (gl_HEADER_SYS_SOCKET): Require gl_SYS_SOCKET_H_DEFAULTS.
9868         * modules/sys_socket (Depends-on): Add link-warning.
9869         (Makeifle.am): Substitute GNULIB_SOCKET, GNULIB_CONNECT, GNULIB_ACCEPT,
9870         GNULIB_BIND, GNULIB_GETPEERNAME, GNULIB_GETSOCKNAME, GNULIB_GETSOCKOPT,
9871         GNULIB_LISTEN, GNULIB_RECV, GNULIB_SEND, GNULIB_RECVFROM,
9872         GNULIB_SENDTO, GNULIB_SETSOCKOPT, and the definition of
9873         GL_LINK_WARNING.
9874         * doc/posix-functions/accept.texi: Mention the new module 'accept'.
9875         * doc/posix-functions/bind.texi: Mention the new module 'bind'.
9876         * doc/posix-functions/connect.texi: Mention the new module 'connect'.
9877         * doc/posix-functions/getpeername.texi: Mention the new module
9878         'getpeername'.
9879         * doc/posix-functions/getsockname.texi: Mention the new module
9880         'getsockname'.
9881         * doc/posix-functions/getsockopt.texi: Mention the new module
9882         'getsockopt'.
9883         * doc/posix-functions/listen.texi: Mention the new module 'listen'.
9884         * doc/posix-functions/recv.texi: Mention the new module 'recv'.
9885         * doc/posix-functions/recvfrom.texi: Mention the new module 'recvfrom'.
9886         * doc/posix-functions/send.texi: Mention the new module 'send'.
9887         * doc/posix-functions/sendto.texi: Mention the new module 'sendto'.
9888         * doc/posix-functions/setsockopt.texi: Mention the new module
9889         'setsockopt'.
9890         * doc/posix-functions/socket.texi: Mention the new module 'socket'.
9891         * modules/poll-tests (Depends-on): Add socket, bind, getsockopt,
9892         listen, connect, accept.
9893         * modules/select-tests (Depends-on): Likewise.
9894
9895 2008-10-05  Bruno Haible  <bruno@clisp.org>
9896
9897         * lib/winsock.c (strerror): Remove unused #undef.
9898         (rpl_close): Remove unused local variable.
9899
9900         * modules/sys_socket (Depends-on); Add errno.
9901
9902 2008-10-05  Bruno Haible  <bruno@clisp.org>
9903
9904         * lib/sys_select.in.h: Include the GL_LINK_WARNING definition.
9905         (select): Add a link warning when the 'select' module is not used.
9906         * modules/sys_select (Depends-on): Add link-warning.
9907         (Makefile.am): Substitute the definition of GL_LINK_WARNING.
9908         Suggested by Paolo Bonzini.
9909
9910 2008-10-05  Jim Meyering  <meyering@redhat.com>
9911
9912         bootstrap: check for LT_INIT more portably
9913         * build-aux/bootstrap: Avoid using grep -E, since it's not
9914         portable enough.  Suggestion from Bruno Haible.
9915
9916 2008-10-05  Bruno Haible  <bruno@clisp.org>
9917
9918         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem
9919         as being fixed by gnulib.
9920
9921 2008-10-05  Bruno Haible  <bruno@clisp.org>
9922
9923         * modules/select-tests: New file, mostly copied from
9924         modules/sys_select-tests.
9925         * tests/test-select.c: New file, mostly copied from
9926         tests/test-sys_select.c.
9927         * tests/test-sys_select.c: Move most of the code to tests/test-select.c.
9928         * modules/sys_select-tests (Depends-on): Remove all dependencies.
9929         (Makefile.am): Remove test_sys_select_LDADD.
9930
9931         * lib/sys_select.in.h (select): If GNULIB_SELECT is not set, define it
9932         to an undefined symbol, for an error message.
9933         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): New macro.
9934         (gl_SYS_SELECT_H_DEFAULTS): New macro.
9935         (gl_HEADER_SYS_SELECT): Require it. Don't require compilation of
9936         winsock-select.c here.
9937         * modules/sys_select (Files): Remove lib/winsock-select.c.
9938         (Depends-on): Remove alloca.
9939         (Makefile.am): Substitute GNULIB_SELECT.
9940         * modules/select: New file.
9941         * doc/posix-functions/select.texi: Update.
9942
9943 2008-10-05  Bruno Haible  <bruno@clisp.org>
9944
9945         * lib/spawn_faction_addclose.c (__sysconf): Use getdtablesize always.
9946         * lib/spawn_faction_adddup2.c (__sysconf): Likewise.
9947         * lib/spawn_faction_addopen.c (__sysconf): Likewise.
9948         * modules/posix_spawn_file_actions_addclose (Depends-on): Add
9949         getdtablesize.
9950         * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
9951         * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
9952
9953 2008-10-05  Bruno Haible  <bruno@clisp.org>
9954
9955         * modules/getdtablesize-tests: New file.
9956         * tests/test-getdtablesize.c: New file.
9957
9958         New module 'getdtablesize'.
9959         * lib/unistd.in.h (getdtablesize): New declaration.
9960         * lib/getdtablesize.c: New file.
9961         * m4/getdtablesize.m4: New file.
9962         * modules/getdtablesize: New file.
9963         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
9964         GNULIB_GETDTABLESIZE, HAVE_GETDTABLESIZE.
9965         * modules/unistd (Makefile.am): Substitute GNULIB_GETDTABLESIZE,
9966         HAVE_GETDTABLESIZE.
9967         * doc/glibc-functions/getdtablesize.texi: Mention the new module.
9968
9969 2008-10-05  Bruno Haible  <bruno@clisp.org>
9970
9971         * modules/sched (Makefile.am): Fix typo.
9972         Reported by Simon Josefsson.
9973
9974 2008-10-05  Jim Meyering  <meyering@redhat.com>
9975
9976         bootstrap: check for LT_INIT, too
9977         * build-aux/bootstrap: Both AC_PROG_LIBTOOL and AM_PROG_LIBTOOL
9978         are deprecated.  Suggestion from Ralf Wildenhues.
9979
9980 2008-10-05  Bruno Haible  <bruno@clisp.org>
9981
9982         * lib/spawn.in.h (POSIX_SPAWN_*): Use the system's values, rather than
9983         overriding them by ours.
9984         (POSIX_SPAWN_USEVFORK): Use the next free bit position.
9985
9986 2008-10-05  Jim Meyering  <meyering@redhat.com>
9987
9988         bootstrap: check for AC_PROG_LIBTOOL as well as AM_PROG_LIBTOOL
9989         * build-aux/bootstrap: Check for AC_PROG_LIBTOOL, as well as the
9990         obsolete AM_PROG_LIBTOOL.  Spotted by Debarshi Ray <rishi@gnu.org>.
9991
9992 2008-10-04  Bruno Haible  <bruno@clisp.org>
9993
9994         * modules/dup2 (License): Change to LGPLv2+.
9995         * modules/sleep (License): Likewise.
9996         * modules/perror (License): Likewise.
9997         * modules/fopen (License): Change to LGPLv2+, with approval by Eric
9998         Blake.
9999         * modules/signal (License): Likewise.
10000         * modules/sigprocmask (License): Likewise.
10001         * modules/raise (License): Change to LGPLv2+, with approval by Jim
10002         Meyering.
10003
10004 2008-10-04  Bruno Haible  <bruno@clisp.org>
10005
10006         * lib/spawn.in.h (POSIX_SPAWN_*): Undefine before redefining.
10007         Reported by Rainer Tammer <tammer@tammer.net>.
10008
10009 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
10010             Bruno Haible  <bruno@clisp.org>
10011
10012         * lib/errno.in.h (EWOULDBLOCK) [win32]: Define to EAGAIN.
10013         * lib/winsock.c (set_winsock_errno): Map WSAEWOULDBLOCK to EWOULDBLOCK.
10014         * lib/strerror.c (rpl_strerror): Remove error string for EWOULDBLOCK.
10015
10016 2008-10-03  Kamil Dudka  <kdudka@redhat.com>
10017
10018         filevercmp: new module
10019         * lib/filevercmp.h: New function filevercmp comparing version strings.
10020         * lib/filevercmp.c: Implementation of filevercmp function.
10021         * modules/filevercmp: Module metadata.
10022         * tests/test-filevercmp.c: Unit test for new module.
10023         * modules/filevercmp-tests: Unit test metadata.
10024         * MODULES.html.sh: Add filevercmp module.
10025
10026 2008-10-03  Bruno Haible  <bruno@clisp.org>
10027
10028         * lib/c-ctype.h: Add comment.
10029         Reported by Jim Meyering.
10030
10031 2008-10-02  Bruno Haible  <bruno@clisp.org>
10032
10033         * modules/posix_spawn-internal (Depends-on): Add 'open'.
10034
10035 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
10036
10037         * build-aux/bootstrap: Allow renaming bootstrap, and change the
10038         name of bootstrap.conf accordingly.
10039
10040 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
10041
10042         * build-aux/bootstrap: Install git-merge-changelog configuration
10043         items into .gitconfig if needed.
10044
10045 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
10046
10047         * build-aux/bootstrap: Recognize `gnulib' being a submodule in a
10048         git repository, and initialize/update it accordingly.
10049
10050 2008-10-02  Richard W.M. Jones  <rjones@redhat.com>
10051
10052         * modules/fsync-tests: New file.
10053         * tests/test-fsync.c: New file.
10054
10055         New module 'fsync'.
10056         * lib/fsync.c: New file.
10057         * m4/fsync.m4: New file.
10058         * modules/fsync: New file.
10059         * lib/unistd.in.h (fsync): New declaration.
10060         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST both
10061         GNULIB_FSYNC and HAVE_FSYNC.
10062         * modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
10063         * MODULES.html.sh (posix_functions): Add fsync.
10064         * doc/posix-functions/fsync.texi: Mention the new module.
10065
10066 2008-10-02  Jim Meyering  <meyering@redhat.com>
10067
10068         fts.c: sync with similar code from coreutils' remove.c
10069         * lib/fts.c (dirent_inode_sort_may_be_useful): Merge from coreutils.
10070         Guard also with "#if defined __linux__", since for now at least,
10071         this code is Linux-kernel-specific.
10072
10073 2008-10-02  Jim Meyering  <meyering@redhat.com>
10074
10075         fts: bug fixes
10076         * lib/fts.c: Remove unnecessary "defined" in cpp directive.
10077         Include <sys/vfs.h>, not <sys/statfs.h>.
10078
10079         * m4/fts.m4 (gl_FUNC_FTS_CORE): Fix typo s/vfs/vfs.h/.
10080         Include <sys/vfs.h>, not <sys/statfs.h>.
10081
10082 2008-10-01  Bruno Haible  <bruno@clisp.org>
10083
10084         Avoid the broken posix_spawn function on AIX 5.3 and 6.1.
10085         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): New macro.
10086         (gl_POSIX_SPAWN_BODY): Invoke it. Set REPLACE_POSIX_SPAWN if needed.
10087         * doc/posix-functions/posix_spawn.texi: Mention the AIX bugs.
10088         * doc/posix-functions/posix_spawnp.texi: Likewise.
10089         * m4/execute.m4 (gl_EXECUTE): Invoke gl_POSIX_SPAWN_WORKS, to check
10090         whether posix_spawn actually works.
10091         * m4/pipe.m4 (gl_PIPE): Likewise.
10092         * modules/execute (Files): Add m4/posix_spawn.m4.
10093         * modules/pipe (Files): Add m4/posix_spawn.m4.
10094         Reported and analyzed by Rainer Tammer <tammer@tammer.net>.
10095
10096 2008-10-01  Jim Meyering  <meyering@redhat.com>
10097
10098         remove trailing spaces
10099         * NEWS: Likewise.
10100         * lib/poll.c (poll): Likewise.
10101         * lib/sys_socket.in.h (SHUT_RDWR): Likewise.
10102         * lib/winsock.c (rpl_close): Likewise.
10103         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Likewise.
10104         * modules/yield: Likewise.
10105         * tests/test-poll.c (connect_to_socket, poll1): Likewise.
10106         * tests/test-sys_select.c (connect_to_socket): Likewise.
10107
10108         fts.c: adjust a new interface to be more generally useful
10109         * lib/fts.c (dirent_inode_sort_may_be_useful): Take an FD parameter.
10110         (fts_build): Adjust caller.
10111
10112 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10113
10114         * modules/cond-tests: New file.
10115         * tests/test-cond.c: New file.
10116
10117 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10118             Bruno Haible  <bruno@clisp.org>
10119
10120         * modules/cond (Dependencies): Add errno, time.
10121         * lib/glthread/cond.h: Include <time.h>.
10122         (gl_cond_define, gl_cond_define_initialized): Use the same definition
10123         across platforms.
10124
10125 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10126             Bruno Haible  <bruno@clisp.org>
10127
10128         * m4/thread.m4 (gl_THREAD): Fix detection of pthread_atfork function.
10129
10130 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10131             Bruno Haible  <bruno@clisp.org>
10132
10133         * modules/tls-tests (Depends-on): Add thread, yield.
10134         (configure.ac): Remove all checks.
10135         (test_tls_LDADD): Use YIELD_LIB instead of LIBSCHED.
10136         * tests/test-tls.c (gl_thread_t, gl_thread_join, gl_thread_yield,
10137         gl_thread_self): Remove definitions. Include glthread/thread.h and
10138         glthread/yield.h instead.
10139         (test_tls): Pass an additional NULL argument to gl_thread_join.
10140
10141 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10142             Bruno Haible  <bruno@clisp.org>
10143
10144         * modules/lock-tests (Depends-on): Add thread, yield.
10145         (configure.ac): Remove all checks.
10146         (test_lock_LDADD): Use YIELD_LIB instead of LIBSCHED.
10147         * tests/test-lock.c (gl_thread_t, gl_thread_join, gl_thread_yield,
10148         gl_thread_self): Remove definitions. Include glthread/thread.h and
10149         glthread/yield.h instead.
10150         (test_lock, test_rwlock, test_recursive_lock, test_once): Pass an
10151         additional NULL argument to gl_thread_join.
10152
10153 2008-09-30  Bruno Haible  <bruno@clisp.org>
10154
10155         Fix the Win32 implementation of the 'thread' module.
10156         * lib/glthread/thread.h [USE_WIN32_THREADS] (gl_thread_t): Change to a
10157         pointer type.
10158         (gl_thread_self): Invoke gl_thread_self_func.
10159         (gl_thread_self_func): New declaration.
10160         * lib/glthread/thread.c [USE_WIN32_THREADS] (self_key): New variable.
10161         (do_init_self_key, init_self_key): New functions.
10162         (struct gl_thread_struct): Renamed from 'struct thread_extra'.
10163         Remove some fields.
10164         (running_threads, running_lock): Remove variables.
10165         (get_current_thread_handle): New function.
10166         (gl_thread_self_func, wrapper_func, glthread_create_func,
10167         glthread_join_func, gl_thread_exit_func): Largely rewritten and
10168         simplified.
10169
10170 2008-09-30  Bruno Haible  <bruno@clisp.org>
10171
10172         * lib/winsock-select.c (win32_poll_handle): Add shortcut for regular
10173         files.
10174
10175 2008-09-30  Jim Meyering  <meyering@redhat.com>
10176
10177         fts.m4: correct the test for statfs.f_type
10178         * m4/fts.m4 (gl_FUNC_FTS_CORE): Include <sys/statfs.h>
10179         when checking for statfs.f_type.
10180
10181 2008-09-15  Simon Josefsson  <simon@josefsson.org>
10182
10183         tests: avoid some compiler warnings
10184         * tests/test-memchr.c (main): Pass NULL indirectly.
10185         * tests/test-getdate.c (main): Remove unused variable 'ret'.
10186
10187 2008-09-29  Ondřej Vašík  <ovasik@redhat.com>
10188
10189         getdate.y: disallow countable dayshifts like "4 yesterday ago"
10190         * lib/getdate.y (relative_time_table) [tDAY_SHIFT]: New type for
10191         exactly specified dayshifts.
10192         (dayshift): New rule.
10193         (rel): Add dayshift.
10194         (relative_time_table) [tomorrow, yesterday, today, now]:
10195         Use tDAY_SHIFT in place of tDAY_UNIT.
10196         * tests/test-getdate.c: Add tests for now-disallowed countable
10197         dayshifts, e.g., "4 yesterday ago".
10198
10199 2008-09-29  Bruno Haible  <bruno@clisp.org>
10200
10201         * tests/test-posix_spawn1.c: Renamed from tests/test-posix_spawn.c.
10202         * tests/test-posix_spawn1.in.sh: Renamed from
10203         tests/test-posix_spawn.in.sh.
10204         * tests/test-posix_spawn2.c: New file.
10205         * tests/test-posix_spawn2.in.sh: New file.
10206         * modules/posix_spawnp-tests (Files): Update.
10207         (Makefile.am): Update. Add test-posix_spawn2 to the tests.
10208
10209 2008-09-29  Bruno Haible  <bruno@clisp.org>
10210
10211         Propagate effects of putenv/setenv/unsetenv to child processes.
10212         * lib/execute.c (execute): Use spawnvpe instead of spawnvp.
10213         * lib/pipe.c (create_pipe): Likewise.
10214
10215 2008-09-29  Bruno Haible  <bruno@clisp.org>
10216
10217         Enable use of shell scripts as executables in mingw.
10218         * lib/execute.c (execute): When spawnv fails with error ENOEXEC,
10219         run the program as a shell script.
10220         * lib/pipe.c (create_pipe): Likewise.
10221         * lib/w32spawn.h (prepare_spawn): Add a hidden element in front of the
10222         resulting array.
10223
10224 2008-09-29  Eric Blake  <ebb9@byu.net>
10225
10226         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Fix typo.
10227
10228 2008-08-24  Paolo Bonzini  <bonzini@gnu.org>
10229
10230         * doc/posix-functions/accept.texi: Update mingw problems.
10231         * doc/posix-functions/bind.texi: Update mingw problems.
10232         * doc/posix-functions/close.texi: Update mingw problems.
10233         * doc/posix-functions/connect.texi: Update mingw problems.
10234         * doc/posix-functions/getpeername.texi: Update mingw problems.
10235         * doc/posix-functions/getsockname.texi: Update mingw problems.
10236         * doc/posix-functions/getsockopt.texi: Update mingw problems.
10237         * doc/posix-functions/ioctl.texi: Update mingw problems.
10238         * doc/posix-functions/listen.texi: Update mingw problems.
10239         * doc/posix-functions/recv.texi: Update mingw problems.
10240         * doc/posix-functions/recvfrom.texi: Update mingw problems.
10241         * doc/posix-functions/select.texi: Update mingw problems.
10242         * doc/posix-functions/send.texi: Update mingw problems.
10243         * doc/posix-functions/sendto.texi: Update mingw problems.
10244         * doc/posix-functions/setsockopt.texi: Update mingw problems.
10245         * doc/posix-functions/socket.texi: Update mingw problems.
10246
10247 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
10248             Bruno Haible  <bruno@clisp.org>
10249
10250         * lib/sys_select.in.h: Include sys/time.h.
10251         * m4/sys_select.h.m4: Test that struct timeval is fully defined.
10252         * modules/sys_select: Depend on sys_time.
10253         * tests/test-sys_select.c: Test that sys/select.h defines struct
10254         timeval fully.
10255
10256 2008-09-29  Bruno Haible  <bruno@clisp.org>
10257
10258         * lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
10259         * lib/sys_select.in.h: Likewise.
10260
10261 2008-09-29  Bruno Haible  <bruno@clisp.org>
10262
10263         * lib/winsock.c (rpl_close, rpl_socket): Remove unused variables.
10264
10265 2008-09-29  Bruno Haible  <bruno@clisp.org>
10266
10267         * m4/sockets.m4 (gl_SOCKETS): Check also for the need to use -lsocket.
10268         Set LIBSOCKET instead of augmenting LIBS.
10269         * modules/sockets (Link): New section.
10270         * modules/sockets-tests (test_sockets_LDADD): New variable.
10271         * modules/sys_select-tests (test_sys_select_LDADD): New variable.
10272         * modules/poll-tests (test_poll_LDADD): New variable.
10273         * NEWS: Document the change.
10274
10275 2008-09-29  Bruno Haible  <bruno@clisp.org>
10276
10277         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): New macro.
10278         * m4/inet_ntop.m4 (gl_INET_NTOP): Invoke it instead of assigning
10279         ARPA_INET_H directly.
10280         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
10281
10282 2008-09-28  Bruno Haible  <bruno@clisp.org>
10283
10284         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): New macro, extracted
10285         from gl_HEADER_SYS_SOCKET.
10286         (gl_HEADER_SYS_SOCKET): Invoke it.
10287         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
10288
10289 2008-09-28  Bruno Haible  <bruno@clisp.org>
10290
10291         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem.
10292         * tests/test-sys_select.c: Include <sys/time.h>, for struct timeval.
10293         Needed on OSF/1 4.0.
10294
10295 2008-09-28  Bruno Haible  <bruno@clisp.org>
10296
10297         Override open more carefully.
10298         * lib/open.c (orig_open): New function.
10299         (rpl_open): Use orig_open instead of open.
10300         * lib/fcntl.in.h: Add special invocation convention.
10301         * m4/open.m4 (gl_PREREQ_OPEN): New macro.
10302         (gl_FUNC_OPEN): Invoke it.
10303
10304         Override freopen more carefully.
10305         * lib/freopen.c (orig_freopen): New function.
10306         (rpl_freopen): Use orig_freopen instead of freopen.
10307         * m4/freopen.m4 (gl_PREREQ_FREOPEN): New macro.
10308         (gl_FUNC_FREOPEN): Invoke it.
10309
10310         Override fopen more carefully.
10311         * lib/fopen.c (orig_fopen): New function.
10312         (rpl_fopen): Use orig_fopen instead of fopen.
10313         * m4/fopen.m4 (gl_PREREQ_FOPEN): New macro.
10314         (gl_FUNC_FOPEN): Invoke it.
10315         Needed on AIX. Reported by Rainer Tammer <tammer@tammer.net>.
10316
10317 2008-09-28  Bruno Haible  <bruno@clisp.org>
10318
10319         * lib/pipe.h (create_pipe_out, create_pipe_bidi): Add comment about
10320         SIGPIPE.
10321
10322 2008-09-28  Bruno Haible  <bruno@clisp.org>
10323
10324         * tests/test-sigaction.c (handler, main): Disable the check whether
10325         SA_RESETHAND has reverted the installed handler to SIG_DFL. Needed on
10326         glibc systems with LinuxThreads.
10327
10328 2008-09-28  Bruno Haible  <bruno@clisp.org>
10329
10330         * doc/posix-functions/freopen.texi: Mention the trailing slash problem.
10331
10332         * lib/stdio.in.h (fopen, freopen): Undefine before redefining. Needed
10333         with AIX xlc.
10334         * lib/fcntl.in.h (open): Likewise.
10335         Reported by Rainer Tammer <tammer@tammer.net>.
10336
10337 2008-09-28  Bruno Haible  <bruno@clisp.org>
10338
10339         * modules/posix_spawnp-tests: New file.
10340         * tests/test-posix_spawn.c: New file.
10341         * tests/test-posix_spawn.in.sh: New file.
10342
10343         New module 'posix_spawnp'.
10344         * modules/posix_spawnp: New file.
10345         * lib/spawnp.c: New file, from GNU libc with modifications.
10346         * doc/posix-functions/posix_spawnp.texi: Mention the new module.
10347
10348         New module 'posix_spawn'.
10349         * modules/posix_spawn: New file.
10350         * lib/spawn.c: New file, from GNU libc with modifications.
10351         * doc/posix-functions/posix_spawn.texi: Mention the new module.
10352
10353         New module 'posix_spawnattr_destroy'.
10354         * modules/posix_spawnattr_destroy: New file.
10355         * lib/spawnattr_destroy.c: New file, from GNU libc with modifications.
10356         * doc/posix-functions/posix_spawnattr_destroy.texi: Mention the new
10357         module.
10358
10359         New module 'posix_spawnattr_setsigmask'.
10360         * modules/posix_spawnattr_setsigmask: New file.
10361         * lib/spawnattr_setsigmask.c: New file, from GNU libc with
10362         modifications.
10363         * doc/posix-functions/posix_spawnattr_setsigmask.texi: Mention the
10364         new module.
10365
10366         New module 'posix_spawnattr_getsigmask'.
10367         * modules/posix_spawnattr_getsigmask: New file.
10368         * lib/spawnattr_getsigmask.c: New file, from GNU libc with
10369         modifications.
10370         * doc/posix-functions/posix_spawnattr_getsigmask.texi: Mention the
10371         new module.
10372
10373         New module 'posix_spawnattr_setsigdefault'.
10374         * modules/posix_spawnattr_setsigdefault: New file.
10375         * lib/spawnattr_setdefault.c: New file, from GNU libc with
10376         modifications.
10377         * doc/posix-functions/posix_spawnattr_setsigdefault.texi: Mention the
10378         new module.
10379
10380         New module 'posix_spawnattr_getsigdefault'.
10381         * modules/posix_spawnattr_getsigdefault: New file.
10382         * lib/spawnattr_getdefault.c: New file, from GNU libc with
10383         modifications.
10384         * doc/posix-functions/posix_spawnattr_getsigdefault.texi: Mention the
10385         new module.
10386
10387         New module 'posix_spawnattr_setschedpolicy'.
10388         * modules/posix_spawnattr_setschedpolicy: New file.
10389         * lib/spawnattr_setschedpolicy.c: New file, from GNU libc with
10390         modifications.
10391         * doc/posix-functions/posix_spawnattr_setschedpolicy.texi: Mention the
10392         new module.
10393
10394         New module 'posix_spawnattr_getschedpolicy'.
10395         * modules/posix_spawnattr_getschedpolicy: New file.
10396         * lib/spawnattr_getschedpolicy.c: New file, from GNU libc with
10397         modifications.
10398         * doc/posix-functions/posix_spawnattr_getschedpolicy.texi: Mention the
10399         new module.
10400
10401         New module 'posix_spawnattr_setschedparam'.
10402         * modules/posix_spawnattr_setschedparam: New file.
10403         * lib/spawnattr_setschedparam.c: New file, from GNU libc with
10404         modifications.
10405         * doc/posix-functions/posix_spawnattr_setschedparam.texi: Mention the
10406         new module.
10407
10408         New module 'posix_spawnattr_getschedparam'.
10409         * modules/posix_spawnattr_getschedparam: New file.
10410         * lib/spawnattr_getschedparam.c: New file, from GNU libc with
10411         modifications.
10412         * doc/posix-functions/posix_spawnattr_getschedparam.texi: Mention the
10413         new module.
10414
10415         New module 'posix_spawnattr_setpgroup'.
10416         * modules/posix_spawnattr_setpgroup: New file.
10417         * lib/spawnattr_setpgroup.c: New file, from GNU libc with
10418         modifications.
10419         * doc/posix-functions/posix_spawnattr_setpgroup.texi: Mention the new
10420         module.
10421
10422         New module 'posix_spawnattr_getpgroup'.
10423         * modules/posix_spawnattr_getpgroup: New file.
10424         * lib/spawnattr_getpgroup.c: New file, from GNU libc with
10425         modifications.
10426         * doc/posix-functions/posix_spawnattr_getpgroup.texi: Mention the new
10427         module.
10428
10429         New module 'posix_spawnattr_setflags'.
10430         * modules/posix_spawnattr_setflags: New file.
10431         * lib/spawnattr_setflags.c: New file, from GNU libc with modifications.
10432         * doc/posix-functions/posix_spawnattr_setflags.texi: Mention the new
10433         module.
10434
10435         New module 'posix_spawnattr_getflags'.
10436         * modules/posix_spawnattr_getflags: New file.
10437         * lib/spawnattr_getflags.c: New file, from GNU libc with modifications.
10438         * doc/posix-functions/posix_spawnattr_getflags.texi: Mention the new
10439         module.
10440
10441         New module 'posix_spawnattr_init'.
10442         * modules/posix_spawnattr_init: New file.
10443         * lib/spawnattr_init.c: New file, from GNU libc with modifications.
10444         * doc/posix-functions/posix_spawnattr_init.texi: Mention the new
10445         module.
10446
10447         New module 'posix_spawn_file_actions_destroy'.
10448         * modules/posix_spawn_file_actions_destroy: New file.
10449         * lib/spawn_faction_destroy.c: New file, from GNU libc with
10450         modifications.
10451         * doc/posix-functions/posix_spawn_file_actions_destroy.texi: Mention
10452         the new module.
10453
10454         New module 'posix_spawn_file_actions_addopen'.
10455         * modules/posix_spawn_file_actions_addopen: New file.
10456         * lib/spawn_faction_addopen.c: New file, from GNU libc with
10457         modifications.
10458         * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
10459         the new module.
10460
10461         New module 'posix_spawn_file_actions_adddup2'.
10462         * modules/posix_spawn_file_actions_adddup2: New file.
10463         * lib/spawn_faction_adddup2.c: New file, from GNU libc with
10464         modifications.
10465         * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
10466         the new module.
10467
10468         New module 'posix_spawn_file_actions_addclose'.
10469         * modules/posix_spawn_file_actions_addclose: New file.
10470         * lib/spawn_faction_addclose.c: New file, from GNU libc with
10471         modifications.
10472         * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
10473         the new module.
10474
10475         New module 'posix_spawn_file_actions_init'.
10476         * modules/posix_spawn_file_actions_init: New file.
10477         * lib/spawn_faction_init.c: New file, from GNU libc with modifications.
10478         * doc/posix-functions/posix_spawn_file_actions_init.texi: Mention the
10479         new module.
10480
10481         New module 'posix_spawn-internal'.
10482         * modules/posix_spawn-internal: New file.
10483         * lib/spawn_int.h: New file, from GNU libc with modifications.
10484         * lib/spawni.c: New file, from GNU libc with modifications.
10485         * m4/posix_spawn.m4: New file.
10486
10487         New module 'spawn'.
10488         * modules/spawn: New file.
10489         * lib/spawn.in.h: New file, from GNU libc with modifications.
10490         * m4/spawn_h.m4: New file.
10491         * doc/posix-headers/spawn.texi: Mention the new module.
10492
10493 2008-09-28  Bruno Haible  <bruno@clisp.org>
10494
10495         * modules/sched-tests: New file.
10496         * tests/test-sched.c: New file.
10497
10498         New module 'sched'.
10499         * modules/sched: New file.
10500         * lib/sched.in.h: New file.
10501         * m4/sched_h.m4: New file.
10502         * doc/posix-headers/sched.texi: Mention the new module.
10503
10504 2008-09-27  Eric Blake  <ebb9@byu.net>
10505
10506         Fix previous patch, and tweak references to $0.
10507         * posix-modules: Call func_gnulib_dir before using $gnulib_dir.
10508         (func_version, func_gnulib_dir): Don't call this program
10509         gnulib-tool.
10510         (func_gnulib_dir, func_tmpdir, func_fatal_error): Avoid shell bugs
10511         with using $0 in function.
10512         * gnulib-tool (func_gnulib_dir, func_tmpdir): Likewise.
10513         (func_fatal_error): Reuse the name the user invoked us with.
10514
10515 2008-09-27  Bruno Haible  <bruno@clisp.org>
10516
10517         * m4/iconv_h.m4 (gl_REPLACE_ICONV_H): New macro.
10518         (gl_ICONV_H_DEFAULTS): Initialize ICONV_H here...
10519         (gl_ICONV_H): Not here.
10520         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
10521         instead of assigning ICONV_H directly.
10522
10523         * m4/wchar.m4 (gl_REPLACE_WCHAR_H): New macro.
10524         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Invoke it instead of assigning
10525         WCHAR_H directly.
10526
10527 2008-09-27  Bruno Haible  <bruno@clisp.org>
10528
10529         * lib/arpa_inet.in.h: Include the GL_LINK_WARNING anchor.
10530         * modules/arpa_inet (Depends-on): Add link-warning.
10531         (Makefile.am): Insert the definition of GL_LINK-WARNING.
10532         * modules/unistd (Makefile.am): Likewise.
10533
10534 2008-09-26  Bruno Haible  <bruno@clisp.org>
10535
10536         * posix-modules (cvsdatestamp, last_checkin_date, version): Remove
10537         variables.
10538         (func_version): Essentially copied from gnulib-tool.
10539         (func_exit, func_gnulib_dir, func_tmpdir, func_fatal_error,
10540         func_readlink): Copied from gnulib-tool.
10541
10542 2008-09-26  Bruno Haible  <bruno@clisp.org>
10543
10544         * gnulib-tool (func_version): Change directory to $gnulib_dir before
10545         invoking git-version-gen.
10546
10547 2008-09-26  Bruno Haible  <bruno@clisp.org>
10548
10549         * posix-modules: Update to directory names changed on 2008-01-19.
10550         Remove commas in output before splitting into words. No more need to
10551         avoid 'ftruncate' since 2007-02-19.
10552
10553 2008-09-26  Bruno Haible  <bruno@clisp.org>
10554
10555         * doc/posix-headers/errno.texi: Remove mention of module 'EOVERFLOW'.
10556
10557 2008-09-26  Bruno Haible  <bruno@clisp.org>
10558
10559         * lib/fwriteerror.c (do_fwriteerror): Ignore error EPIPE.
10560         * modules/fwriteerror (Depends-on): Add errno.
10561
10562 2008-09-26  Bruno Haible  <bruno@clisp.org>
10563
10564         * tests/test-vc-list-files-git.sh: Explain reason for skipping test.
10565         * tests/test-vc-list-files-cvs.sh: Likewise.
10566
10567 2008-09-26  Bruno Haible  <bruno@clisp.org>
10568
10569         * doc/posix-headers/sys_resource.texi: Reorder items.
10570
10571 2008-09-26  Jim Meyering  <meyering@redhat.com>
10572
10573         fts: tweak inode comparison function
10574         * lib/fts.c (fts_compare_ino): Sort on increasing, not decreasing
10575         inode numbers, as documented.
10576
10577         fts: sort dirent entries on inode number before traversing
10578         This avoids a quadratic, seek-related performance penalty when
10579         operating on a directory containing many entries (measurable at 10k;
10580         3.5 hours at 2 million entries with a cold cache) on certain types
10581         of file systems, including ext3 and ext4, but not tmpfs.
10582         * lib/fts.c (DT_MUST_BE, NOT_AN_INODE_NUMBER, D_INO): Define.
10583         (FTS_INODE_SORT_DIR_ENTRIES_THRESHOLD): Define if not defined.
10584         (S_MAGIC_TMPFS, S_MAGIC_NFS): Define.
10585         (fs_handles_readdir_ordered_dirents_efficiently): New function.
10586         (dirent_inode_sort_may_be_useful, fts_compare_ino): Likewise.
10587         (fts_build): Set the stat.st_ino member from D_INO.
10588         If it is likely to be useful, sort dirent entries on inode number.
10589
10590         * m4/fts.m4 (gl_FUNC_FTS_CORE): Check for fstatfs, sys/vfs.h,
10591         and the struct statfs.f_type member.
10592         * modules/fts (Depends-on): Add d-ino.
10593
10594 2008-09-26  Bruno Haible  <bruno@clisp.org>
10595
10596         * modules/sigpipe-die (Depends-on): Add sigpipe.
10597
10598         * lib/stdio.in.h (fprintf, vfprintf, printf, vprintf, fputc, putc,
10599         putchar, fputs, puts, fwrite): Replace when REPLACE_STDIO_WRITE_FUNCS
10600         and GNULIB_STDIO_H_SIGPIPE are set.
10601         * lib/stdio-write.c: New file.
10602         * m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FPRINTF, GNULIB_PRINTF,
10603         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
10604         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
10605         REPLACE_STDIO_WRITE_FUNCS.
10606         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FPRINTF, GNULIB_PRINTF,
10607         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
10608         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
10609         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
10610         * modules/stdio (Files): Add lib/stdio-write.c.
10611         (Makefile.am): Substitute GNULIB_FPRINTF, GNULIB_PRINTF,
10612         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
10613         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
10614         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
10615         * m4/fprintf-posix.m4 (gl_REPLACE_FPRINTF): Define
10616         REPLACE_FPRINTF_POSIX.
10617         * m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF): Define
10618         REPLACE_PRINTF_POSIX.
10619         * m4/vfprintf-posix.m4 (gl_REPLACE_VFPRINTF): Define
10620         REPLACE_VFPRINTF_POSIX.
10621         * m4/vprintf-posix.m4 (gl_REPLACE_VPRINTF): Define
10622         REPLACE_VPRINTF_POSIX.
10623         * doc/posix-functions/fprintf.texi: Mention the sigpipe module and the
10624         SIGPIPE issue.
10625         * doc/posix-functions/fputc.texi: Likewise.
10626         * doc/posix-functions/fputs.texi: Likewise.
10627         * doc/posix-functions/fwrite.texi: Likewise.
10628         * doc/posix-functions/printf.texi: Likewise.
10629         * doc/posix-functions/putc.texi: Likewise.
10630         * doc/posix-functions/putchar.texi: Likewise.
10631         * doc/posix-functions/puts.texi: Likewise.
10632         * doc/posix-functions/vfprintf.texi: Likewise.
10633         * doc/posix-functions/vprintf.texi: Likewise.
10634
10635         * modules/safe-write (Depends-on): Add write.
10636
10637         * modules/sigpipe-tests: New file.
10638         * tests/test-sigpipe.c: New file.
10639         * tests/test-sigpipe.sh: New file.
10640
10641         * modules/write: New file.
10642         * lib/unistd.in.h: Include <sys/types.h>.
10643         (write): New declaration.
10644         * lib/write.c: New file.
10645         * m4/write.m4: New file.
10646         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
10647         GNULIB_UNISTD_H_SIGPIPE, GNULIB_WRITE, REPLACE_WRITE.
10648         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_SIGPIPE,
10649         GNULIB_WRITE, REPLACE_WRITE.
10650         * doc/posix-functions/write.texi: Mention the write, sigpipe modules
10651         and the SIGPIPE issue.
10652
10653         * lib/signal.in.h (SIGPIPE): Define to a replacement value.
10654         (raise): New declaration.
10655         * lib/sigprocmask.c (SIGPIPE_handler): New variable.
10656         (ext_signal): New function.
10657         (rpl_raise): New function.
10658         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize
10659         GNULIB_SIGNAL_H_SIGPIPE.
10660         * modules/signal (Makefile.am): Substitute GNULIB_SIGNAL_H_SIGPIPE.
10661         * doc/posix-headers/signal.texi: Mention the SIGPIPE issue.
10662
10663         * modules/sigpipe: New file.
10664         * m4/sigpipe.m4: New file.
10665
10666 2008-09-25  Derek Price  <derek@ximbiot.com>
10667             Bruno Haible  <bruno@clisp.org>
10668
10669         * gnulib-tool (func_import): Report all license incompatibilities, not
10670         just the first one.
10671
10672 2008-09-25  Bruno Haible  <bruno@clisp.org>
10673
10674         * gnulib-tool (func_import): When computing the edits, consider not
10675         only the Makefile.ams that exist but also those that will be generated.
10676
10677 2008-09-25  Simon Josefsson  <simon@josefsson.org>
10678
10679         * modules/sys_select-tests (Depends-on): Remove sys_select itself,
10680         fixes gnulib-tool --test warning about duplicate dependency.
10681
10682 2008-09-25  Bruno Haible  <bruno@clisp.org>
10683
10684         * gnulib-tool: Don't ask the user to perform edits in the generated
10685         Makefile.ams.
10686         (func_emit_lib_Makefile_am): Emit empty SUBDIRS. Execute edits that
10687         apply to the Makefile.am being generated.
10688         (func_emit_tests_Makefile_am): Execute edits that apply to the
10689         Makefile.am being generated.
10690         (func_import): Setup list of Makefile.am edits before emitting the
10691         Makefile.ams, not at the end.
10692         (func_create_testdir): Update.
10693         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
10694
10695 2008-09-25  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10696
10697         * gnulib-tool (func_import): Store the --tests-base option in the
10698         comment in gnulib-cache.m4.
10699
10700 2008-09-24  Paolo Bonzini  <bonzini@gnu.org>
10701
10702         * NEWS: Document increased portability that sys_select now provides.
10703
10704         * lib/sys_select.in.h: Install select wrapper.
10705         * lib/sys_socket.in.h: Use more descriptive name when there is no
10706         select wrapper.
10707         * lib/winsock-select.c: New.
10708         * m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
10709         Require gl_HEADER_SYS_SOCKET.
10710         * modules/sys_select: Depend on alloca, add lib/winsock-select.c.
10711         * modules/sys_select-tests: Copy dependencies from modules/poll-tests.
10712         * tests/test-sys_select.c: Add functional tests.
10713
10714 2008-09-24  Eric Blake  <ebb9@byu.net>
10715
10716         open, fopen: close fd leak in last patch
10717         * lib/open.c (rpl_open): Close fd before returning error.
10718         * lib/fopen.c (rpl_fopen): Close fd before returning error.
10719         * doc/posix-functions/open.texi (open): Document that Irix also
10720         has the bug.
10721         * doc/posix-functions/fopen.texi (fopen): Likewise.
10722         Reported by Paolo Bonzini.
10723
10724 2008-09-24  Bruno Haible  <bruno@clisp.org>
10725
10726         Ensure that a filename ending in a slash cannot be used to access a
10727         non-directory.
10728         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
10729         to check whether it's really a directory.
10730         * lib/fopen.c: Include fcntl.h, unistd.h.
10731         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
10732         and fdopen().
10733         * modules/fopen (Depends-on): Add unistd.
10734         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
10735         * tests/test-fopen.c (main): Likewise.
10736         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
10737         * doc/posix-functions/fopen.texi: Likewise.
10738         Reported by Eric Blake.
10739
10740 2008-09-23  Eric Blake  <ebb9@byu.net>
10741
10742         c-stack: avoid compiler optimizations when provoking overflow
10743         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
10744         recursion harder to optimize, to ensure a stack overflow occurs.
10745         * tests/test-c-stack.c (recurse): Likewise.
10746         Borrowed from libsigsegv.
10747
10748         c-stack: work around Irix sigaltstack bug
10749         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
10750         whether sigaltstack uses wrong end of stack_t (copied in part from
10751         libsigsegv).
10752         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
10753         Irix bug, without requiring an over-allocation.
10754         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
10755         bug.
10756
10757         fopen: document mingw bug on directories
10758         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
10759         not allowing a stream visiting a directory, even though reading
10760         from such a stream is not portable.
10761
10762 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
10763
10764         * lib/poll.c: Rewrite.
10765         * modules/poll: Depend on alloca.
10766
10767 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
10768
10769         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
10770         instead define prototypes for a full set of wrappers.  Ensure
10771         that Cygwin does not use the compatibility code, which is only
10772         for MinGW.
10773         * lib/winsock.c: New.
10774         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
10775         * modules/sys_socket: Add lib/winsock.c.
10776
10777         * modules/poll-tests: Add errno and perror.
10778         * tests/test-poll.c: Use ioctl, not ioctlsocket.
10779
10780 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
10781
10782         * tests/test-poll.c: Downgrade minimum needed Winsock version.
10783
10784 2008-09-23  Bruno Haible  <bruno@clisp.org>
10785
10786         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
10787         * doc/glibc-functions/*: Likewise.
10788
10789 2008-09-23  Simon Josefsson  <simon@josefsson.org>
10790
10791         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
10792         success.
10793
10794 2008-09-22  Eric Blake  <ebb9@byu.net>
10795             Bruno Haible  <bruno@clisp.org>
10796
10797         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
10798         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
10799         supply %A but mishandle pseudo-NaN.
10800         Reported by Simon Josefsson.
10801
10802 2008-09-21  Bruno Haible  <bruno@clisp.org>
10803
10804         * tests/test-lock.c (main): Tweak skip message.
10805         * tests/test-tls.c (main): Likewise.
10806
10807 2008-09-21  Bruno Haible  <bruno@clisp.org>
10808
10809         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
10810         whether 'struct sigaction' has sa_sigaction here...
10811         (gl_PREREQ_SIG_HANDLER_H): ... not here.
10812         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
10813
10814 2008-09-21  Bruno Haible  <bruno@clisp.org>
10815
10816         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
10817         section.
10818         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
10819         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
10820         the new section.
10821         (Support for obsolete systems lacking POSIX:2001): New section.
10822         (String handling <string.h>): Move strdup to the new section.
10823         Suggested by Simon Josefsson and Paolo Bonzini.
10824
10825 2008-09-21  Bruno Haible  <bruno@clisp.org>
10826
10827         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
10828         exponents in %e and %g results on 'long double'. Needed for mingw's
10829         improved *printf functions.
10830         * tests/test-vasprintf-posix.c (test_function): Likewise.
10831         * tests/test-snprintf-posix.h (test_function): Likewise.
10832         * tests/test-sprintf-posix.h (test_function): Likewise.
10833         Reported by Eric Blake.
10834
10835 2008-09-21  Bruno Haible  <bruno@clisp.org>
10836
10837         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
10838         * tests/test-sprintf-posix.h (test_function): Likewise.
10839
10840 2008-09-21  Bruno Haible  <bruno@clisp.org>
10841
10842         * modules/getpass (Depends-on): Add strdup-posix.
10843
10844         New module 'strdup-posix'.
10845         * modules/strdup-posix: New file.
10846         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
10847         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
10848         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
10849         REPLACE_STRDUP.
10850         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
10851         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
10852         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
10853         strdup-posix.
10854
10855         * modules/strdup (Depends-on): Remove malloc-posix.
10856
10857 2008-09-20  Bruno Haible  <bruno@clisp.org>
10858
10859         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
10860         Wildenhues.
10861
10862 2008-09-20  Bruno Haible  <bruno@clisp.org>
10863
10864         Ensure that wint_t gets defined on IRIX 5.3.
10865         * lib/wchar.in.h (wint_t): Define if not defined by the system.
10866         * lib/wctype.in.h (wint_t): Likewise.
10867         (__wctype_wint_t): Remove type.
10868         (isw*): Use wint_t instead of __wctype_wint_t.
10869         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
10870         * modules/wchar (Files): Add m4/wint_t.m4.
10871         (Makefile.am): Substitute HAVE_WINT_T.
10872         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
10873         * tests/test-wctype.c: Check that wint_t is defined.
10874         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
10875         * doc/posix-headers/wctype.texi: Likewise.
10876         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
10877
10878 2008-09-18  Bruno Haible  <bruno@clisp.org>
10879
10880         * gnulib-tool (func_exit): Update comment.
10881
10882 2008-09-18  Simon Josefsson  <simon@josefsson.org>
10883
10884         * modules/getaddrinfo (Depends-on): Remove strdup, this module
10885         assumes strdup exists and does not depend on strdup to return
10886         ENOMEM on out of memory conditions.
10887
10888 2008-09-18  Bruno Haible  <bruno@clisp.org>
10889
10890         * lib/vasnprintf.c (VASNPRINTF): When printing ±0.0L in
10891         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
10892         digits for the exponent.
10893
10894 2008-09-18  Jim Meyering  <meyering@redhat.com>
10895             Bruno Haible  <bruno@clisp.org>
10896
10897         * lib/vasnprintf.c (decimal_point_char): Define also if
10898         NEED_PRINTF_INFINITE_LONG_DOUBLE.
10899
10900 2008-09-16  Bruno Haible  <bruno@clisp.org>
10901         and Eric Blake  <ebb9@byu.net>
10902
10903         vasnprintf: support Irix 5.3
10904         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
10905         that mishandle long double infinity.
10906         Reported by Tom G. Christensen.
10907
10908 2008-09-16  Bruno Haible  <bruno@clisp.org>
10909
10910         * doc/glibc-functions/scandir.texi: Mention the function is missing on
10911         Solaris 9.
10912         * doc/glibc-functions/alphasort.texi: Likewise.
10913         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
10914
10915 2008-09-16  Jim Meyering  <meyering@redhat.com>
10916
10917         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
10918         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
10919         a umask modification leak out of a subshell.  Otherwise, the
10920         opensolaris /bin/sh would be accepted and thus cause unwarranted
10921         failures in the coreutils test suite.
10922
10923 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
10924
10925         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
10926         to succeed.
10927
10928 2008-09-16  Jim Meyering  <meyering@redhat.com>
10929
10930         avoid spurious test failure when library is built without ACL support
10931         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
10932         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
10933         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
10934         * tests/test-copy-acl.sh: Likewise.
10935
10936 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10937
10938         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
10939         based on character occurrence counts.
10940
10941 2008-09-15  Eric Blake  <ebb9@byu.net>
10942
10943         tests: avoid some compiler warnings
10944         * tests/test-memchr.c (main): Pass NULL indirectly.
10945         * tests/test-closein.c (main): Avoid unused variable.
10946
10947 2008-09-15  Bruno Haible  <bruno@clisp.org>
10948
10949         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
10950         are missing on OpenBSD 4.0 individually.
10951         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
10952
10953 2008-09-15  Bruno Haible  <bruno@clisp.org>
10954
10955         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
10956         * doc/posix-functions/strerror.texi: Mention also Cygwin.
10957         * doc/posix-functions/perror.texi: Likewise.
10958         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
10959         is missing.
10960         Reported by Eric Blake.
10961
10962         * lib/errno.in.h: Use replacement values >= 2000.
10963         Reported by Eric Blake.
10964
10965 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10966
10967         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
10968         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
10969         limit.
10970         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
10971         compareseq was aborted.
10972
10973 2008-09-14  Bruno Haible  <bruno@clisp.org>
10974
10975         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
10976         yvec_edit_count.
10977         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
10978         (fstrcmp_bounded): Simplify result computation accordingly.
10979
10980 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10981
10982         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
10983         (fstrcmp): Define in terms of fstrcmp_bounded.
10984         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
10985         lower_bound argument.
10986         Return quickly if the result is certainly < lower_bound.
10987         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
10988
10989 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10990
10991         * lib/diffseq.h (EARLY_ABORT): New macro.
10992         (compareseq): Change return type to bool. Return true when EARLY_ABORT
10993         evaluates to true.
10994
10995 2008-09-14  Bruno Haible  <bruno@clisp.org>
10996
10997         * modules/perror-tests: New file.
10998         * tests/test-perror.sh: New file.
10999         * tests/test-perror.c: New file.
11000
11001         New module 'perror'.
11002         * lib/stdio.in.h (perror): New declaration.
11003         * lib/perror.c: New file.
11004         * m4/perror.m4: New file.
11005         * modules/perror: New file.
11006         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
11007         * doc/posix-functions/perror.texi: Mention the perror module.
11008         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
11009         REPLACE_PERROR.
11010         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
11011         REPLACE_PERROR.
11012
11013 2008-09-14  Bruno Haible  <bruno@clisp.org>
11014
11015         * modules/stdio (Makefile.am): Reorder to match the order in
11016         lib/stdio.in.h.
11017         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
11018
11019 2008-09-13  Bruno Haible  <bruno@clisp.org>
11020
11021         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
11022
11023 2008-09-13  Bruno Haible  <bruno@clisp.org>
11024
11025         Extend strerror to cover the added errno values.
11026         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
11027         (rpl_strerror): Provide error messages for the added errno values and
11028         for the WSA* values.
11029         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
11030         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
11031         strerror.
11032         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
11033         * modules/strerror (Depends-on): Add errno.
11034         * doc/posix-functions/strerror.texi: Document the change.
11035         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
11036         and EOVERFLOW.
11037
11038 2008-09-13  Bruno Haible  <bruno@clisp.org>
11039
11040         * modules/EOVERFLOW: Remove file.
11041         * m4/eoverflow.m4: Remove file.
11042         * modules/EOVERFLOW-tests: Remove file.
11043         * tests/test-EOVERFLOW.c: Remove file.
11044         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
11045         * modules/ftell (Depends-on): Likewise.
11046         * modules/getdelim (Depends-on): Likewise.
11047         * modules/getugroups (Depends-on): Likewise.
11048         * modules/poll (Depends-on): Likewise.
11049         * modules/snprintf (Depends-on): Likewise.
11050         * modules/sprintf-posix (Depends-on): Likewise.
11051         * modules/vasnprintf (Depends-on): Likewise.
11052         * modules/vasprintf (Depends-on): Likewise.
11053         * modules/vfprintf-posix (Depends-on): Likewise.
11054         * modules/vsnprintf (Depends-on): Likewise.
11055         * modules/vsprintf-posix (Depends-on): Likewise.
11056         * modules/xvasprintf (Depends-on): Likewise.
11057         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
11058         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
11059         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
11060         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
11061         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
11062         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
11063         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
11064         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
11065         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
11066         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
11067         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
11068         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
11069         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
11070         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
11071         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
11072         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
11073         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
11074         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
11075         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
11076         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
11077         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
11078         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
11079         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
11080         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
11081         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
11082         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
11083         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
11084         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
11085         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
11086         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
11087         * MODULES.html.sh: Remove EOVERFLOW.
11088         * NEWS: Mention the change.
11089
11090 2008-09-13  Bruno Haible  <bruno@clisp.org>
11091
11092         * modules/errno-tests: New file.
11093         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
11094
11095         * lib/errno.in.h: New file.
11096         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
11097         * modules/errno: New file.
11098         * doc/posix-headers/errno.texi: Update documentation.
11099         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
11100
11101 2008-09-13  Bruno Haible  <bruno@clisp.org>
11102
11103         * tests/test-poll.c: Use #if for native Windows, rather than testing
11104         __MSVCRT__.
11105
11106 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11107             Bruno Haible  <bruno@clisp.org>
11108
11109         * lib/glob.c: Don't include <pwd.h> on native Windows.
11110         (WINDOWS32): New macro.
11111         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
11112
11113 2008-09-13  Bruno Haible  <bruno@clisp.org>
11114
11115         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
11116         (ETIMEDOUT): Remove macro.
11117         (glthread_cond_timedwait_multithreaded): New declaration.
11118         (glthread_cond_timedwait): Use it.
11119         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
11120         (glthread_cond_timedwait_multithreaded): New function.
11121
11122 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
11123
11124         * modules/poll-tests: Do not check for io.h.
11125         * tests/test-poll.c: Check for __MSVCRT__ instead.
11126
11127 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
11128
11129         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
11130         * modules/poll-tests: Add inet_pton, stdbool, sockets.
11131         * tests/test-poll.c: Use them.  Use _pipe on Windows.
11132
11133 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
11134
11135         * modules/poll-tests: New.
11136         * tests/test-poll.c: New.
11137
11138 2008-09-12  Eric Blake  <ebb9@byu.net>
11139
11140         frexp: test for NetBSD failure on -0.0
11141         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
11142         not all, bugs from NetBSD 3.0 have been fixed.
11143         * doc/posix-functions/frexp.texi (frexp): Document bug.
11144         Reported by Thomas Klausner.
11145
11146         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
11147         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
11148         literal -0.0.
11149         Reported by Jonathan C. Patschke <jp@centtech.com>.
11150
11151 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11152
11153         * lib/glthread/cond.h: Use dummy implementation also if
11154         USE_WIN32_THREADS.
11155
11156 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11157
11158         * modules/fnmatch-posix (License): Change to LGPLv2+.
11159         * modules/fnmatch-gnu (License): Likewise.
11160
11161 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11162
11163         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
11164
11165 2008-09-11  Jim Meyering  <meyering@redhat.com>
11166
11167         * users.txt: Add gtk-vnc.
11168
11169 2008-09-08  Simon Josefsson  <simon@josefsson.org>
11170
11171         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
11172         rotate amounts.
11173
11174         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
11175         required for 16-bit and 8-bit rotates.
11176         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
11177         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
11178         UINT8_MAX instead of hard-coded constants.
11179         Suggested by Paul Eggert.
11180
11181 2008-09-07  Bruno Haible  <bruno@clisp.org>
11182
11183         * tests/test-striconveh.c (main): Check behaviour when converting from
11184         UTF-7.
11185
11186         Make striconveh work better with stateful encodings.
11187         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
11188         that iconv does not increment the inptr when returning -1/EINVAL.
11189
11190 2008-09-07  Bruno Haible  <bruno@clisp.org>
11191
11192         * build-aux/config.rpath: Update according to libtool-2.2.6.
11193         * build-aux/config.libpath: Likewise.
11194
11195 2008-09-06  Bruno Haible  <bruno@clisp.org>
11196
11197         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
11198         * lib/freadptr.c (freadptr): Likewise.
11199         * lib/freadseek.c (freadptrinc): Likewise.
11200         Reported by Simon Josefsson.
11201
11202 2008-09-06  Bruno Haible  <bruno@clisp.org>
11203
11204         * modules/freadptr (License): Change to LGPLv2+.
11205         * modules/freadseek (License): Likewise.
11206         Suggested by Eric Blake.
11207
11208         * modules/memchr2 (License): Change to LGPLv2+.
11209         Approved by Eric Blake.
11210
11211 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11212             Bruno Haible  <bruno@clisp.org>
11213
11214         Make gnulib-tool work with native 'sed' on AIX.
11215         * gnulib-tool (sed_noop): New variable.
11216         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
11217         func_add_or_update, func_create_testdir): Use it to initialize sed
11218         script variables.
11219         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
11220
11221 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
11222             Bruno Haible  <bruno@clisp.org>
11223
11224         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
11225         also works after #include directives.
11226
11227 2008-09-04  Ondřej Vašík  <ovasik@redhat.com>
11228
11229         getdate.y: reject an out-of-range timezone value
11230         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
11231         the range [-24...+24].  When specified with only one or two digits,
11232         * tests/test-getdate.c: Tests for the fix.
11233         * doc/getdate.texi: Document this change.
11234
11235 2008-09-03  Bruno Haible  <bruno@clisp.org>
11236
11237         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
11238
11239 2008-09-02  Simon Josefsson  <simon@josefsson.org>
11240
11241         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
11242         <bruce.korb@gmail.com> with ideas from Ben Pfaff
11243         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
11244         Blake <ebb9@byu.net>.
11245
11246         * tests/test-bitrotate.c: Add more test vectors.
11247
11248 2008-09-02  Eric Blake  <ebb9@byu.net>
11249
11250         vasnprintf-posix: handle large precision via %.*d
11251         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
11252         when handling it ourselves.
11253         * tests/test-vasnprintf-posix.c (test_function): Add test.
11254         * tests/test-snprintf-posix.h (test_function): Likewise.
11255         * tests/test-sprintf-posix.h (test_function): Likewise.
11256         * tests/test-vasprintf-posix.c (test_function): Likewise.
11257         Reported by Alain Guibert.
11258
11259 2008-09-01  Eric Blake  <ebb9@byu.net>
11260
11261         c-stack: make configure-time check more robust
11262         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
11263         successful sigaction call.
11264         Reported by Tom G. Christensen.
11265
11266 2008-09-01  Bruno Haible  <bruno@clisp.org>
11267
11268         New module 'findprog-lgpl'.
11269         * modules/findprog-lgpl: New file.
11270         * lib/findprog-lgpl.c: New file.
11271         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
11272         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
11273         to decide whether to use strdup or xstrdup, concatenated_filename or
11274         xconcatenated_filename.
11275
11276 2008-09-01  Bruno Haible  <bruno@clisp.org>
11277
11278         Split module 'concat-filename' into 'concat-filename' (LGPL) and
11279         'xconcat-filename' (GPL).
11280         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
11281         (License): Change to LGPLv2+.
11282         * modules/xconcat-filename: New file.
11283         * lib/concat-filename.h (concatenated_filename): Change specification.
11284         (xconcatenated_filename): New declaration.
11285         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
11286         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
11287         memory situations.
11288         * lib/xconcat-filename.c: New file.
11289         * NEWS: Mention the change.
11290         * lib/findprog.c: Include concat-filename.h, not filename.h.
11291         (find_in_path): Use xconcatenated_filename instead of
11292         concatenated_filename.
11293         * lib/javacomp.c: Include concat-filename.h, not filename.h.
11294         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
11295         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
11296         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
11297         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
11298         instead of concatenated_filename.
11299         * lib/javaexec.c: Include concat-filename.h, not filename.h.
11300         (execute_java_class): Use xconcatenated_filename instead of
11301         concatenated_filename.
11302         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
11303         * modules/javacomp (Depends-on): Likewise.
11304         * modules/javaexec (Depends-on): Likewise.
11305
11306 2008-09-01  Bruno Haible  <bruno@clisp.org>
11307
11308         Split module 'filename' into 'filename' and 'concat-filename'.
11309         * modules/filename: Keep only lib/filename.h.
11310         (License): Change to LGPLv2+.
11311         * modules/concat-filename: New file, extracted from modules/filename.
11312         * lib/filename.h (concatenated_filename): Remove declaration.
11313         * lib/concat-filename.h: New file, extracted from lib/filename.h.
11314         * lib/concat-filename.c: Include concat-filename.h.
11315         * NEWS: Mention the change.
11316
11317 2008-09-01  Simon Josefsson  <simon@josefsson.org>
11318
11319         * lib/bitrotate.h (rotl8, rotr8): Add.
11320
11321         * modules/bitrotate (configure.ac): Need
11322         AC_REQUIRE([AC_C_INLINE]).
11323         (Description): Mention stdint.h.  Reported by Bruno Haible
11324         <bruno@clisp.org>.
11325
11326         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
11327         Paolo Bonzini <bonzini@gnu.org>.
11328
11329 2008-08-31  Bruno Haible  <bruno@clisp.org>
11330
11331         Assume Solaris specific bi-arch conventions on Solaris systems.
11332         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
11333         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
11334         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
11335         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
11336         like acl_libdirstem.
11337         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
11338         acl_libdirstem.
11339         * NEWS: Mention the change.
11340         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
11341
11342 2008-08-31  Jim Meyering  <meyering@redhat.com>
11343
11344         * lib/strftime.h: Add comments describing the two added arguments.
11345
11346         remove duplicate #include directives
11347         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
11348         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
11349
11350 2008-08-31  Bruno Haible  <bruno@clisp.org>
11351
11352         New module 'sigpipe-die'.
11353         * modules/sigpipe-die: New file.
11354         * lib/sigpipe-die.h: New file.
11355         * lib/sigpipe-die.c: New file.
11356         * MODULES.html.sh (Signal handling): Add sigpipe-die.
11357
11358 2008-08-31  Bruno Haible  <bruno@clisp.org>
11359
11360         Don't override previously installed signal handlers.
11361         * lib/fatal-signal.c (saved_sigactions): New variable.
11362         (uninstall_handlers): Reset the signal to the saved handler, not
11363         to SIG_DFL (except when ignored).
11364         (install_handlers): Save the previous handlers.
11365
11366 2008-08-30  Bruno Haible  <bruno@clisp.org>
11367
11368         * gnulib-tool (func_reset_sigpipe): New function.
11369         (func_get_automake_snippet, func_modules_transitive_closure,
11370         func_import): Invoke it before a join command that reads from stdin,
11371         to avoid "echo: write error: Broken pipe" error messages on stderr.
11372         Reported by Sam Steingold <sds@gnu.org>.
11373
11374 2008-08-30  Bruno Haible  <bruno@clisp.org>
11375
11376         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
11377         Code copied from m4/open.m4.
11378         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
11379         access and the filename ends in a slash. Code copied from lib/open.c.
11380         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
11381         * tests/test-fopen.c (main): Check against bug with trailing slash.
11382
11383 2008-08-29  Bruno Haible  <bruno@clisp.org>
11384
11385         Avoid some "gcc -pedantic" warnings.
11386         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
11387         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
11388         * lib/dirent.in.h: Likewise.
11389         * lib/fcntl.in.h: Likewise.
11390         * lib/float.in.h: Likewise.
11391         * lib/iconv.in.h: Likewise.
11392         * lib/inttypes.in.h: Likewise.
11393         * lib/locale.in.h: Likewise.
11394         * lib/math.in.h: Likewise.
11395         * lib/netinet_in.in.h: Likewise.
11396         * lib/search.in.h: Likewise.
11397         * lib/signal.in.h: Likewise.
11398         * lib/stdarg.in.h: Likewise.
11399         * lib/stdint.in.h: Likewise.
11400         * lib/stdio.in.h: Likewise.
11401         * lib/stdlib.in.h: Likewise.
11402         * lib/string.in.h: Likewise.
11403         * lib/strings.in.h: Likewise.
11404         * lib/sys_select.in.h: Likewise.
11405         * lib/sys_socket.in.h: Likewise.
11406         * lib/sys_stat.in.h: Likewise.
11407         * lib/sys_time.in.h: Likewise.
11408         * lib/sysexits.in.h: Likewise.
11409         * lib/time.in.h: Likewise.
11410         * lib/unistd.in.h: Likewise.
11411         * lib/wchar.in.h: Likewise.
11412         * lib/wctype.in.h: Likewise.
11413         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
11414         * modules/fchdir (Makefile.am): Likewise.
11415         * modules/fcntl (Makefile.am): Likewise.
11416         * modules/float (Makefile.am): Likewise.
11417         * modules/iconv_open (Makefile.am): Likewise.
11418         * modules/inttypes (Makefile.am): Likewise.
11419         * modules/locale (Makefile.am): Likewise.
11420         * modules/math (Makefile.am): Likewise.
11421         * modules/netinet_in (Makefile.am): Likewise.
11422         * modules/search (Makefile.am): Likewise.
11423         * modules/signal (Makefile.am): Likewise.
11424         * modules/stdarg (Makefile.am): Likewise.
11425         * modules/stdint (Makefile.am): Likewise.
11426         * modules/stdio (Makefile.am): Likewise.
11427         * modules/stdlib (Makefile.am): Likewise.
11428         * modules/string (Makefile.am): Likewise.
11429         * modules/strings (Makefile.am): Likewise.
11430         * modules/sys_select (Makefile.am): Likewise.
11431         * modules/sys_socket (Makefile.am): Likewise.
11432         * modules/sys_stat (Makefile.am): Likewise.
11433         * modules/sys_time (Makefile.am): Likewise.
11434         * modules/sysexits (Makefile.am): Likewise.
11435         * modules/time (Makefile.am): Likewise.
11436         * modules/unistd (Makefile.am): Likewise.
11437         * modules/wchar (Makefile.am): Likewise.
11438         * modules/wctype (Makefile.am): Likewise.
11439         Reported by Reuben Thomas <rrt@sc3d.org>.
11440
11441 2008-08-29  Bruno Haible  <bruno@clisp.org>
11442
11443         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
11444         any more.
11445
11446 2008-08-29  Simon Josefsson  <simon@josefsson.org>
11447
11448         * MODULES.html.sh (Misc): Add bitrotate.
11449
11450         * modules/bitrotate: New file.
11451
11452         * lib/bitrotate.h: New file.
11453
11454         * modules/bitrotate-tests: New file.
11455
11456         * tests/test-bitrotate.c: New file.
11457
11458         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
11459         on the bitrotate module.
11460
11461         * lib/arctwo.c: Use new bitrotate module.
11462
11463 2008-08-29  Jim Meyering  <meyering@redhat.com>
11464
11465         bootstrap: merge changes from coreutils
11466         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
11467         of copied files.  Remove a kludge, now that this is fixed.
11468         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
11469         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
11470         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
11471
11472 2008-08-29  Bruno Haible  <bruno@clisp.org>
11473
11474         * MODULES.html.sh: Remove --cvs-urls option.
11475
11476 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
11477
11478         maint.mk: adjust to file name change
11479         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
11480
11481 2008-08-28  Jim Meyering  <meyering@redhat.com>
11482
11483         * modules/getndelim2 (License): Relicense to LGPLv2+.
11484         Approved by Richard Stallman for the version of 1995, and by
11485         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
11486
11487 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
11488
11489         * lib/getdelim.c (flockfile, funlockfile): Make all of them
11490         dummy if one is not available.  Do not touch them if
11491         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
11492         (getc_maybe_unlocked): New.
11493         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
11494
11495 2008-08-26  Eric Blake  <ebb9@byu.net>
11496
11497         doc/INSTALL: resync from autoconf
11498         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
11499         (INSTALL_PRELUDE): Delete; this is done more efficiently by
11500         moving...
11501         * install.texi [!autoconf]: ...here.  Resync from autoconf.
11502         * INSTALL: Regenerate.
11503         * INSTALL.ISO: New file.
11504         * INSTALL.UTF-8: Likewise.
11505
11506 2008-08-26  Jim Meyering  <meyering@redhat.com>
11507
11508         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
11509         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
11510         these definitions conditional, so that they may be overridden, too.
11511
11512 2008-08-26  Bruno Haible  <bruno@clisp.org>
11513
11514         Generate INSTALL file variants with prettier quotes.
11515         * doc/Makefile (INSTALL_PRELUDE): New macro.
11516         (INSTALL): Use it.
11517         (INSTALL.ISO, INSTALL.UTF-8): New rules.
11518
11519 2008-08-26  Bruno Haible  <bruno@clisp.org>
11520
11521         Run makeinfo in an English locale.
11522         * doc/Makefile (MAKEINFO): New variable.
11523
11524 2008-08-26  Bruno Haible  <bruno@clisp.org>
11525
11526         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
11527         Suggested by Eric Blake.
11528
11529 2008-08-25  Bruno Haible  <bruno@clisp.org>
11530
11531         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
11532
11533 2008-08-25  Eric Blake  <ebb9@byu.net>
11534
11535         c-stack: test that stack overflow can be caught
11536         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
11537         that platform allows handling stack overflow; at least OS/2 EMX
11538         has sigaltstack, but crashes before transferring control to
11539         handler on stack overflow.
11540         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
11541         check for HAVE_STACK_OVERFLOW_HANDLING.
11542         Reported by Elbert Pol.
11543
11544 2008-08-25  Bruno Haible  <bruno@clisp.org>
11545
11546         * doc/posix-functions/strftime.texi: Fix description of strftime
11547         module.
11548
11549 2008-08-24  Bruno Haible  <bruno@clisp.org>
11550
11551         * tests/uniwidth/test-uc_width2.c: New file.
11552         * tests/uniwidth/test-uc_width2.sh: New file.
11553         * modules/uniwidth/width-tests (Files): Add the new files.
11554         (TESTS): Add uniwidth/test-uc_width2.sh.
11555         (TESTS_ENVIRONMENT): New variable.
11556         (check_PROGRAMS): Add test-uc_width2.
11557         (test_uc_width2_SOURCES): New variable.
11558
11559         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
11560         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
11561         not 0x00AB.
11562         Reported by Alexander V. Lukyanov <lav@netis.ru>.
11563
11564 2008-08-22  Eric Blake  <ebb9@byu.net>
11565
11566         test-lock, test-tls: mention why a test is skipped
11567         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
11568         skipped.
11569         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
11570
11571         count-one-bits: relax license
11572         * modules/count-one-bits (License): Relicense to LGPLv2+.
11573         Suggested by Ludovic Courtès, approved by Ben Pfaff.
11574
11575 2008-08-22  Andreas Schwab  <schwab@suse.de>
11576
11577         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
11578         Remove spurious space in assignment.
11579
11580 2008-08-21  Simon Josefsson  <simon@josefsson.org>
11581
11582         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
11583         Paul Eggert <eggert@CS.UCLA.EDU>.
11584
11585 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
11586
11587         * modules/gettext: Add m4/threadlib.m4.
11588
11589 2008-08-19  Eric Blake  <ebb9@byu.net>
11590
11591         test-c-stack: fix compilation failure on FreeBSD 5.0
11592         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
11593         headers before <sys/resource.h>.
11594         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
11595         the bug.
11596         Reported by Nelson H. F. Beebe.
11597
11598         strverscmp: migrate from "strverscmp.h" to <string.h>
11599         * modules/string (Makefile.am): Add new hooks.
11600         * modules/strverscmp (Files): Remove strverscmp.h.
11601         (Depends-on): Add string.
11602         (configure.ac): Add indicator.
11603         (Include): Mention new header.
11604         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
11605         defaults.
11606         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
11607         results.
11608         * lib/strverscmp.h: Delete.
11609         * lib/string.in.h (strverscmp): Provide declaration, when needed.
11610         * tests/test-strverscmp.c (includes): Adjust client.
11611         * lib/check-version.c (includes): Likewise.
11612         * NEWS: Document the change.
11613
11614         strverscmp: add unit test
11615         * modules/strverscmp-tests: New file.
11616         * tests/test-strverscmp.c: Likewise.
11617
11618 2008-08-19  Simon Josefsson  <simon@josefsson.org>
11619
11620         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
11621         regarding Windows crypto stuff, from Mono.
11622
11623 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
11624
11625         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
11626         if present, for intel RND.  Return error on failures.
11627
11628 2008-08-18  Ben Pfaff  <blp@gnu.org>
11629
11630         gitlog-to-changelog: give better diagnostic for failed pipe-open
11631         * build-aux/gitlog-to-changelog: Improve error message: suggest
11632         that the version of Git may be too old.
11633
11634 2008-08-18  Simon Josefsson  <simon@josefsson.org>
11635
11636         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
11637         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
11638
11639 2008-08-18  Bruno Haible  <bruno@clisp.org>
11640
11641         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
11642         pthread_in_use().
11643
11644 2008-08-18  Bruno Haible  <bruno@clisp.org>
11645
11646         * lib/glthread/threadlib.c: Include <pthread.h>.
11647
11648 2008-08-18  Bruno Haible  <bruno@clisp.org>
11649
11650         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
11651         glthread_recursive_lock_* macros.
11652         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
11653         Fix syntax error.
11654
11655 2008-08-18  Bruno Haible  <bruno@clisp.org>
11656
11657         * lib/glthread/thread.c: Avoid forcing a context switch right after
11658         thread creation.
11659
11660 2008-08-17  Bruno Haible  <bruno@clisp.org>
11661
11662         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
11663         * lib/glthread/thread.h: Provide Win32 specific implementation.
11664         * modules/thread (Files): Add lib/glthread/thread.c.
11665         (Depends-on): Add lock.
11666         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
11667
11668 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11669
11670         New module 'yield'.
11671         * modules/yield: New file.
11672         * lib/glthread/yield.h: New file.
11673         * m4/yield.m4: New file.
11674         * MODULES.html.sh (Multithreading): Add yield.
11675
11676 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11677
11678         New module 'thread'.
11679         * modules/thread: New file.
11680         * lib/glthread/thread.h: New file.
11681         * m4/thread.m4: New file.
11682         * MODULES.html.sh (Multithreading): Add thread.
11683
11684 2008-08-17  Bruno Haible  <bruno@clisp.org>
11685
11686         * lib/glthread/lock.h: Include <stdlib.h> always.
11687         * lib/glthread/tls.h: Likewise.
11688         * lib/glthread/cond.h: Likewise.
11689
11690 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
11691
11692         New module 'cond'.
11693         * modules/cond: New file.
11694         * lib/glthread/cond.h: New file.
11695         * lib/glthread/cond.c: New file.
11696         * m4/cond.m4: New file.
11697         * MODULES.html.sh (Multithreading): Add cond.
11698
11699 2008-08-16  Eric Blake  <ebb9@byu.net>
11700
11701         c-stack: fix regression on Irix 5.3 from 2008-06-21
11702         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
11703         sa_sigaction...
11704         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
11705         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
11706         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
11707         * modules/signal (Makefile.am): Use the value.
11708         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
11709         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
11710         * doc/posix-headers/signal.texi (signal.h): Document this
11711         portability issue.
11712         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
11713         Reported by Tom G. Christensen.
11714
11715 2008-08-17  Bruno Haible  <bruno@clisp.org>
11716
11717         New module 'threadlib'.
11718         * modules/threadlib: New file.
11719         * lib/glthread/threadlib.c: New file, extracted from
11720         lib/glthread/lock.c.
11721         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
11722         functions.
11723         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
11724         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
11725         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
11726         macros.
11727         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
11728         (gl_DISABLE_THREADS): Remove macro.
11729         * modules/lock (Files): Remove build-aux/config.rpath.
11730         (Depends-on): Remove havelib. Add threadlib.
11731         (configure.ac-early): Remove section.
11732         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
11733         * modules/tls (Depends-on): Remove lock. Add threadlib.
11734         (Link): New section, copied from threadlib.
11735         * MODULES.html.sh (Multithreading): Add threadlib.
11736
11737 2008-08-14  Bruno Haible  <bruno@clisp.org>
11738
11739         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
11740         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
11741         glthread_rwlock_unlock, glthread_rwlock_destroy,
11742         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
11743         glthread_recursive_lock_destroy): Define as macros always.
11744         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
11745         glthread_lock_lock.
11746         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
11747         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
11748         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
11749         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
11750         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
11751         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
11752         (glthread_recursive_lock_lock_func): Renamed from
11753         glthread_recursive_lock_lock.
11754         (glthread_recursive_lock_unlock_func): Renamed from
11755         glthread_recursive_lock_unlock.
11756         (glthread_recursive_lock_destroy_func): Renamed from
11757         glthread_recursive_lock_destroy.
11758
11759 2008-08-14  Bruno Haible  <bruno@clisp.org>
11760
11761         * lib/glthread/lock.h: Renamed from lib/lock.h.
11762         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
11763         * lib/glthread/tls.h: Renamed from lib/tls.h.
11764         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
11765         * lib/fstrcmp.c: Update includes.
11766         * lib/strsignal.c: Update includes.
11767         * modules/lock (Files, Makefile.am): Update.
11768         (Include): Change to "glthread/lock.h".
11769         * modules/tls (Files, Makefile.am): Update.
11770         (Include): Change to "glthread/tls.h".
11771         * tests/test-lock.c: Update includes.
11772         * tests/test-tls.c: Update includes.
11773         * NEWS: Mention the renamed header files.
11774
11775 2008-08-11  Jim Meyering  <meyering@redhat.com>
11776
11777         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
11778
11779 2008-08-11  Eric Blake  <ebb9@byu.net>
11780
11781         test-c-stack: avoid C99-ism
11782         * tests/test-c-stack.c (main): Fix whitespace, move declaration
11783         before statement.
11784         Reported by Alain Guibert.
11785
11786 2008-08-10  Jim Meyering  <meyering@redhat.com>
11787
11788         ensure that return value of uinttostr et al are not ignored
11789         * lib/inttostr.h (__GNUC_PREREQ): Define.
11790         (__attribute_warn_unused_result__): Define.
11791         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
11792
11793 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
11794
11795         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
11796         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
11797
11798 2008-08-07  Jim Meyering  <meyering@redhat.com>
11799
11800         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
11801
11802         * modules/mkstemp (License): Relicense under LGPLv2+.
11803         * modules/tempname (License): Likewise.
11804
11805 2008-08-06  Bruno Haible  <bruno@clisp.org>
11806
11807         * lib/poll.c (poll): Further micro-optimization.
11808
11809 2008-08-06  Jim Meyering  <meyering@redhat.com>
11810
11811         inet_pton.c: use locale-independent tolower
11812         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
11813         (inet_pton6): Use c_tolower rather than tolower.
11814         * modules/inet_pton (Depends-on): Add c-ctype.
11815
11816 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
11817
11818         * lib/poll.c (poll): Avoid division when timeout is 0, cache
11819         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
11820
11821 2008-08-06  Jim Meyering  <meyering@redhat.com>
11822
11823         * modules/inet_pton (License): Relicense under LGPLv2+.
11824
11825 2008-08-03  Bruno Haible  <bruno@clisp.org>
11826
11827         Additional non-aborting API for lock and tls.
11828         * lib/lock.h: Include <errno.h>.
11829         (glthread_lock_init): New macro/function.
11830         (gl_lock_init): Define as wrapper around glthread_lock_init.
11831         (glthread_lock_lock): New macro/function.
11832         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
11833         (glthread_lock_unlock): New macro/function.
11834         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
11835         (glthread_lock_destroy): New macro/function.
11836         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
11837         (glthread_rwlock_init): New macro/function.
11838         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
11839         (glthread_rwlock_rdlock): New macro/function.
11840         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
11841         (glthread_rwlock_wrlock): New macro/function.
11842         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
11843         (glthread_rwlock_unlock): New macro/function.
11844         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
11845         (glthread_rwlock_destroy): New macro/function.
11846         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
11847         (glthread_recursive_lock_init): New macro/function.
11848         (gl_recursive_lock_init): Define as wrapper around
11849         glthread_recursive_lock_init.
11850         (glthread_recursive_lock_lock): New macro/function.
11851         (gl_recursive_lock_lock): Define as wrapper around
11852         glthread_recursive_lock_lock.
11853         (glthread_recursive_lock_unlock): New macro/function.
11854         (gl_recursive_lock_unlock): Define as wrapper around
11855         glthread_recursive_lock_unlock.
11856         (glthread_recursive_lock_destroy): New macro/function.
11857         (gl_recursive_lock_destroy): Define as wrapper around
11858         glthread_recursive_lock_destroy.
11859         (glthread_once): New macro/function.
11860         (gl_once): Define as wrapper around glthread_once.
11861         Update function declarations.
11862         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
11863         glthread_rwlock_init. Return error code.
11864         (glthread_rwlock_rdlock_multithreaded): Renamed from
11865         glthread_rwlock_rdlock. Return error code.
11866         (glthread_rwlock_wrlock_multithreaded): Renamed from
11867         glthread_rwlock_wrlock. Return error code.
11868         (glthread_rwlock_unlock_multithreaded): Renamed from
11869         glthread_rwlock_unlock. Return error code.
11870         (glthread_rwlock_destroy_multithreaded): Renamed from
11871         glthread_rwlock_destroy. Return error code.
11872         (glthread_recursive_lock_init_multithreaded): Renamed from
11873         glthread_recursive_lock_init. Return error code.
11874         (glthread_recursive_lock_lock_multithreaded): Renamed from
11875         glthread_recursive_lock_lock. Return error code.
11876         (glthread_recursive_lock_unlock_multithreaded): Renamed from
11877         glthread_recursive_lock_unlock. Return error code.
11878         (glthread_recursive_lock_destroy_multithreaded): Renamed from
11879         glthread_recursive_lock_destroy. Return error code.
11880         (glthread_once_call): Make static.
11881         (glthread_once_multithreaded): Renamed from glthread_once.
11882         * lib/tls.h: Include <errno.h>.
11883         (glthread_tls_key_init): New macro/function.
11884         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
11885         (glthread_tls_set): New macro/function.
11886         (gl_tls_set): Define as wrapper around glthread_tls_set.
11887         (glthread_tls_key_destroy): New macro/function.
11888         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
11889         Update function declarations.
11890         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
11891         glthread_tls_get.
11892         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
11893
11894 2008-08-04  Eric Blake  <ebb9@byu.net>
11895
11896         gnumakefile: use space, not TAB, outside of targets
11897         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
11898
11899 2008-08-02  Jim Meyering  <meyering@redhat.com>
11900
11901         getdate.y: avoid locale-dependent date parsing failure
11902         In Turkish locales, getdate would fail to recognize keywords
11903         containing a lowercase "i".  The solution is not to rely on
11904         locale-sensitive case-conversion.
11905         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
11906         (lookup_word): Use c_toupper in place of toupper.
11907         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
11908         Reported by Vefa Bicakci <bicave@superonline.com> in
11909         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
11910         * modules/getdate (Depends-on): Add c-ctype.
11911
11912 2008-08-02  Bruno Haible  <bruno@clisp.org>
11913
11914         * gnulib-tool (func_import): When updating or creating a .gitignore
11915         file, prepend each added line with a slash, and ignore leading slashes
11916         from the existing lines.
11917         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
11918
11919 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11920
11921         Portability fix for GNU make 3.79.1.
11922         * top/GNUmakefile: Avoid 'else COND', which older GNU make
11923         versions do not understand.
11924
11925 2008-08-01  Bruno Haible  <bruno@clisp.org>
11926
11927         Work around bug of HP-UX 10.20 cc with -0.0 literal.
11928         * tests/test-isnanf.h (zero): New variable.
11929         (main): Avoid literal -0.0f.
11930         * tests/test-isnand.h (zero): New variable.
11931         (main): Avoid literal -0.0.
11932         * tests/test-isnanl.h (zero): New variable.
11933         (main): Avoid literal -0.0L.
11934         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
11935         (test_float, test_double, test_long_double): Avoid literals -0.0f,
11936         -0.0, -0.0L.
11937         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
11938         (test_signbitd): Avoid literal -0.0.
11939         (test_signbitl): Avoid literal -0.0L.
11940         * tests/test-ceilf1.c (zero): New variable.
11941         (main): Avoid literal -0.0f.
11942         * tests/test-ceill.c (zero): New variable.
11943         (main): Avoid literal -0.0L.
11944         * tests/test-floorf1.c (zero): New variable.
11945         (main): Avoid literal -0.0f.
11946         * tests/test-floorl.c (zero): New variable.
11947         (main): Avoid literal -0.0L.
11948         * tests/test-roundf1.c (zero): New variable.
11949         (main): Avoid literal -0.0f.
11950         * tests/test-round1.c (zero): New variable.
11951         (main): Avoid literal -0.0.
11952         * tests/test-roundl.c (zero): New variable.
11953         (main): Avoid literal -0.0L.
11954         * tests/test-truncf1.c (zero): New variable.
11955         (main): Avoid literal -0.0f.
11956         * tests/test-trunc1.c (zero): New variable.
11957         (main): Avoid literal -0.0.
11958         * tests/test-truncl.c (zero): New variable.
11959         (main): Avoid literal -0.0L.
11960         * tests/test-frexp.c (zero): New variable.
11961         (main): Avoid literal -0.0.
11962         * tests/test-frexpl.c (zero): New variable.
11963         (main): Avoid literal -0.0L.
11964         * tests/test-ldexpl.c (zero): New variable.
11965         (main): Avoid literal -0.0L.
11966         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
11967         (zerod, zerol): New variables.
11968         (test_function): Avoid literals -0.0, -0.0L.
11969         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
11970         (zerod, zerol): New variables.
11971         (test_function): Avoid literals -0.0, -0.0L.
11972         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
11973         (zerod, zerol): New variables.
11974         (test_function): Avoid literals -0.0, -0.0L.
11975         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
11976         (zerod, zerol): New variables.
11977         (test_function): Avoid literals -0.0, -0.0L.
11978         * tests/test-strtod.c (zero): New variable.
11979         (main): Avoid literal -0.0.
11980         Reported by Jonathan C. Patschke <jp@centtech.com>.
11981
11982 2008-07-31  Jim Meyering  <meyering@redhat.com>
11983
11984         sha256.h: correct definition of SHA224_DIGEST_SIZE
11985         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
11986         Reported by Paulie Pena IV <paulie4@gmail.com>.
11987         Define as 224 / 8, rather than as a literal.
11988         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
11989         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
11990         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
11991
11992 2008-07-31  Bruno Haible  <bruno@clisp.org>
11993
11994         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
11995         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
11996         Reported by Jonathan Patschke <jp@centtech.com>.
11997
11998 2008-07-31  Bruno Haible  <bruno@clisp.org>
11999
12000         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
12001         Reported by Paolo Bonzini <bonzini@gnu.org>.
12002
12003 2008-07-30  Eric Blake  <ebb9@byu.net>
12004
12005         test-strtod: allow compilation without -lm
12006         * tests/test-strtod.c (main): Avoid link dependence on fabs.
12007         Reported by Dennis Clarke <blastwave@gmail.com>.
12008
12009 2008-07-28  Jim Meyering  <meyering@redhat.com>
12010
12011         bootstrap: work also when there are no .po files in po/
12012         * build-aux/bootstrap (update_po_files): Complete the change
12013         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
12014
12015 2008-07-27  Jim Meyering  <meyering@redhat.com>
12016
12017         * users.txt: Add zile.
12018
12019 2008-07-26  Ben Pfaff  <blp@gnu.org>
12020
12021         Add missing dependencies on new m4/exponent[fdl].m4 files.
12022         * modules/isnanf-nolibm: Add m4/exponentf.m4.
12023         * modules/isnand-nolibm: Add m4/exponentd.m4.
12024         * modules/isnanl-nolibm: Add m4/exponentl.m4.
12025         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
12026         m4/isnan[fdl].m4, because the macros actually used moved.
12027         Reported by Jim Meyering.
12028
12029 2008-07-14  Ben Pfaff  <blp@gnu.org>
12030
12031         Add isinf module.
12032         * lib/isinf.c: New file.
12033         * lib/math.in.h: Define isinf macro if we have decided to replace
12034         it.
12035         * m4/isinf.m4: New file.
12036         * m4/math_h.m4: Initialize and substitute variables for isinf
12037         module.
12038         * modules/isinf: New file.
12039         * modules/isinf-tests: New file.
12040         * modules/math: Add substitutions for new module.
12041         * tests/test-isinf.c: New file.
12042         * doc/posix-functions/isinf.texi: Mention new module.
12043         * MODULES.html.sh: Mention new module.
12044
12045 2008-07-14  Ben Pfaff  <blp@gnu.org>
12046
12047         Factor out some macros for use by additional modules.
12048         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
12049         exponentf.m4.
12050         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
12051         exponentd.m4.
12052         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
12053         file exponentl.m4.
12054         * m4/exponentf.m4: New file.
12055         * m4/exponentd.m4: New file.
12056         * m4/exponentl.m4: New file.
12057         * modules/isnanf: Use new file m4/exponentf.m4.
12058         * modules/isnand: Use new file m4/exponentd.m4.
12059         * modules/isnanl: Use new file m4/exponentl.m4.
12060
12061 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
12062
12063         mktime.c: normalize tp->tm_isdst value to -1/0/1.
12064         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
12065         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
12066         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
12067
12068         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
12069         readlink on platforms without PATH_MAX.
12070
12071 2008-07-21  Eric Blake  <ebb9@byu.net>
12072
12073         Warn, not fail, on stale version.
12074         * top/GNUmakefile (_curr-ver): Tone down previous patch.
12075
12076         Don't allow installation with stale devel version number.
12077         * top/GNUmakefile (_is-install-target): New macro.
12078         (_curr-ver): Forbid installation with stale version number.
12079
12080 2008-07-20  Bruno Haible  <bruno@clisp.org>
12081
12082         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
12083         TESTS_ENVIRONMENT.
12084         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
12085
12086 2008-07-20  Bruno Haible  <bruno@clisp.org>
12087
12088         * lib/c-stack.h (c_stack_action): Add documentation.
12089         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
12090
12091 2008-07-20  Bruno Haible  <bruno@clisp.org>
12092
12093         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
12094         * modules/readlink (License): Likewise.
12095
12096 2008-07-17  Eric Blake  <ebb9@byu.net>
12097
12098         * modules/c-stack (Link): Fix typo.
12099
12100         Make c-stack use libsigsegv, when available.
12101         * modules/c-stack (Depends-on): Add libsigsegv.
12102         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
12103         needed.
12104         * lib/c-stack.c (SIGSTKSZ): Define fallback.
12105         (segv_handler, overflow_handler, c_stack_action)
12106         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
12107         implementation when libsigsegv is available, but only when using
12108         the library is necessary.
12109         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
12110         comment, explaining why XSI check fails on Linux.
12111         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
12112         * tests/test-c-stack2.sh: Tweak skip message.
12113         * NEWS: Document new link-time requirements.
12114
12115 2008-07-16  Eric Blake  <ebb9@byu.net>
12116
12117         c-stack: Expose false positives when not using libsigsegv.
12118         * modules/c-stack-tests (Files): Expand test.
12119         * tests/test-c-stack.c (main): Add means to conditionally trigger
12120         non-overflow SIGSEGV.
12121         * tests/test-c-stack2.sh: New file.
12122
12123 2008-07-14  Bruno Haible  <bruno@clisp.org>
12124
12125         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
12126         Reported by Eric Blake.
12127
12128 2008-07-14  Sam Steingold  <sds@gnu.org>
12129             Bruno Haible  <bruno@clisp.org>
12130
12131         New module libsigsegv.
12132         * modules/libsigsegv: New file.
12133         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
12134         modifications.
12135         * MODULES.html.sh (Signal handling): New section.
12136
12137 2008-07-14  Bruno Haible  <bruno@clisp.org>
12138
12139         * modules/unictype/ctype-* (Description): Add the word "function".
12140         Improves the resulting doc in MODULES.html.
12141
12142 2008-07-12  Ben Pfaff  <blp@gnu.org>
12143
12144         Add longlong module.
12145         * modules/longlong: New file.
12146
12147 2008-07-12  Bruno Haible  <bruno@clisp.org>
12148
12149         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
12150         to empty.
12151
12152 2008-07-10  Ben Pfaff  <blp@gnu.org>
12153
12154         Add isnan module.
12155         * doc/posix-functions/isnan.texi: Mention new module.
12156         * lib/math.in.h: Define isnan macro if we have decided to replace
12157         it.
12158         * m4/isnan.m4: New file.
12159         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
12160         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
12161         also.
12162         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
12163         redundancy.
12164         * m4/math_h.m4: Initialize and substitute variables for isnan
12165         module.
12166         * modules/isnan: New file.
12167         * modules/isnan-tests: New file.
12168         * modules/math: Add substitutions for new module.
12169         * tests/test-isnan.c: New file.
12170         * MODULES.html.sh: Mention new module.
12171
12172 2008-07-10  Ben Pfaff  <blp@gnu.org>
12173
12174         Add isnanf module.
12175         * lib/isnanf.m4: New file.
12176         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
12177         (gl_HAVE_ISNANF_IN_LIBM): New macro.
12178         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
12179         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
12180         * modules/isnanf: New file.
12181         * modules/isnanf-tests: New file.
12182         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
12183         files.
12184         * tests/test-isnanf-nolibm.c: factored most of its contents into
12185         new file tests/test-isnanf.h.
12186         * tests/test-isnanf.h: New file.
12187         * tests/test-isnanf.c: New file.
12188         * MODULES.html.sh: Mention new module.
12189         * doc/glibc-functions/isnanf.texi: Mention new module.
12190
12191 2008-07-10  Ben Pfaff  <blp@gnu.org>
12192
12193         Add isnand module.
12194         * lib/isnand.h: New file.
12195         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
12196         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
12197         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
12198         functionality also.
12199         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
12200         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
12201         (gl_HAVE_ISNAND_IN_LIBM): New macro.
12202         * modules/isnand: New file.
12203         * modules/isnand-tests: New file.
12204         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
12205         files.
12206         * tests/test-isnand-nolibm.c: factored most of its contents into
12207         new file tests/test-isnand.h.
12208         * tests/test-isnand.h: New file.
12209         * tests/test-isnand.c: New file.
12210         * MODULES.html.sh: Mention new module.
12211
12212 2008-07-10  Ben Pfaff  <blp@gnu.org>
12213
12214         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
12215         * lib/isnand.h: Rename lib/isnand-nolibm.h.
12216         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
12217         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
12218         * modules/isnanf-nolibm: Update references to renamed files.
12219         * modules/isnand-nolibm: Likewise.
12220         * modules/isnanf-nolibm-tests: Likewise.
12221         * modules/isnand-nolibm-tests: Likewise.
12222         * lib/frexp.c: Likewise.
12223         * lib/isfinite.c: Likewise.
12224         * lib/signbitd.c: Likewise.
12225         * lib/signbitf.c: Likewise.
12226         * lib/vasnprintf.c: Likewise.
12227         * tests/test-ceilf1.c: Likewise.
12228         * tests/test-ceilf2.c: Likewise.
12229         * tests/test-floorf1.c: Likewise.
12230         * tests/test-floorf2.c: Likewise.
12231         * tests/test-frexp.c: Likewise.
12232         * tests/test-round1.c: Likewise.
12233         * tests/test-round2.c: Likewise.
12234         * tests/test-roundf1.c: Likewise.
12235         * tests/test-strtod.c: Likewise.
12236         * tests/test-trunc1.c: Likewise.
12237         * tests/test-trunc2.c: Likewise.
12238         * tests/test-truncf1.c: Likewise.
12239         * tests/test-truncf2.c: Likewise.
12240         * NEWS: Mention the renamed header files.
12241
12242 2008-07-11  Jim Meyering  <meyering@redhat.com>
12243
12244         vc-list-files: make the last-resort awk code more portable
12245         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
12246         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
12247         does not support it.
12248
12249 2008-07-10  Eric Blake  <ebb9@byu.net>
12250
12251         Work with tar's bootstrap.
12252         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
12253         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
12254         an m4 comment.
12255
12256 2008-07-09  Jim Meyering  <meyering@redhat.com>
12257
12258         posix-shell.m4: fix typo that made this test malfunction
12259         * m4/posix-shell.m4: Remove capitalization in variable name.
12260
12261 2008-07-08  Bruno Haible  <bruno@clisp.org>
12262
12263         * m4/onceonly.m4: Update comments.
12264         Reported by Ben Pfaff <blp@cs.stanford.edu>.
12265
12266 2008-07-04  Jim Meyering  <meyering@redhat.com>
12267
12268         * users.txt: Add vc-dwim.
12269         (bison, coreutils): Use the gitweb URL.
12270
12271 2008-07-03  Jim Meyering  <meyering@redhat.com>
12272
12273         * users.txt: Add libffcall.  From Sam Steingold.
12274
12275 2008-07-03  Ondřej Vašík  <ovasik@redhat.com>
12276
12277         getdate.y: do not ignore TZ with relative day, month or year offset
12278         * lib/getdate.y (get_date): Move the tz-handling block to follow the
12279         relative-date-handling, since otherwise, the latter would clobber the
12280         sole output (an updated Start value) of the tz-handling block.
12281         * tests/test-getdate.c: Tests for the fix
12282
12283 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
12284
12285         Recognize 'foo_LIBRARIES += libgnu.a'.
12286         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
12287         makefile snippet has already specified an installation location,
12288         also using '+='.
12289
12290 2008-07-02  Ondřej Vašík  <ovasik@redhat.com>
12291
12292         getdate.y: factor out common actions
12293         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
12294         Use them in place of open-coded actions.
12295
12296 2008-07-01  Simon Josefsson  <simon@josefsson.org>
12297
12298         Add self-test for getdate module.
12299         * modules/getdate-tests: New file.
12300         * tests/test-getdate.c: New file.
12301
12302 2008-06-29  Bruno Haible  <bruno@clisp.org>
12303
12304         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
12305         .gitignore.
12306         Reported by Sylvain Beucler <beuc@beuc.net>.
12307
12308 2008-06-29  Bruno Haible  <bruno@clisp.org>
12309
12310         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
12311         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
12312
12313 2008-06-29  Bruno Haible  <bruno@clisp.org>
12314
12315         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
12316         EXTRA_DIST.
12317         Reported by Sylvain Beucler <beuc@beuc.net>.
12318
12319 2008-06-26  Jim Meyering  <meyering@redhat.com>
12320
12321         make several modules depend on the "open" module
12322         This provides slightly increased consistency when opening-for-write
12323         the name of a non-directory spelled with a trailing slash.
12324         * modules/chdir-safer: Likewise.
12325         * modules/chown: Likewise.
12326         * modules/clean-temp: Likewise.
12327         * modules/copy-file: Likewise.
12328         * modules/fchdir: Likewise.
12329         * modules/fcntl-safer: Likewise.
12330         * modules/pipe: Likewise.
12331         * modules/utime: Likewise.
12332         Prompted by Eric Blake and Bruno Haible.
12333
12334 2008-06-24  Andreas Schwab  <schwab@suse.de>
12335
12336         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
12337         literals can be used as initializers for global variables.
12338
12339 2008-06-23  Eric Blake  <ebb9@byu.net>
12340
12341         Make gnulib-cache.m4 easier to diff.
12342         * gnulib-tool (func_import): Allow newlines when reading cached
12343         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
12344
12345 2008-06-23  Bruno Haible  <bruno@clisp.org>
12346
12347         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
12348         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
12349         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
12350         m4/signalblocking.m4.
12351         (gl_PREREQ_SIGACTION): Don't invoke it.
12352         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
12353         gl_PREREQ_SIG_HANDLER_H.
12354         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
12355         Don't check for sigaction here.
12356
12357 2008-06-23  Bruno Haible  <bruno@clisp.org>
12358
12359         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
12360         (install_handlers): Don't set the SA_RESETHAND flag.
12361
12362 2008-06-23  Bruno Haible  <bruno@clisp.org>
12363
12364         * m4/sigaction.m4: Comment fixes.
12365         * lib/signal.in.h: Likewise.
12366
12367 2008-06-23  Eric Blake  <ebb9@byu.net>
12368
12369         Fix typo.
12370         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
12371
12372         Avoid SA_ namespace.
12373         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
12374         Reported by Ralf Wildenhues.
12375
12376         Avoid test failure due to SA_RESTORER.
12377         * tests/test-sigaction.c (SA_MASK): New macro.
12378         (main): Avoid failing due to extension flags being set.
12379         Reported by Jim Meyering.
12380
12381         Revert use of sig-handler.h in sigprocmask.c.
12382         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
12383         it requires the existence of struct sigaction.
12384         * lib/sigprocmask.c (handler_t): Restore typedef.
12385         (rpl_signal, old_handlers): Use local type.
12386
12387 2008-06-22  Bruno Haible  <bruno@clisp.org>
12388
12389         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
12390         conditionally.
12391         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
12392
12393 2008-06-22  Bruno Haible  <bruno@clisp.org>
12394
12395         * doc/posix-functions/siginterrupt.texi: Move note.
12396
12397         * lib/signal.in.h (SA_RESTART): New macro.
12398         * lib/sigaction.c: Update comment.
12399
12400         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
12401
12402         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
12403         (gl_PREREQ_SIGPROCMASK): Invoke it.
12404         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
12405
12406         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
12407
12408         * lib/sigprocmask.c: Update a comment.
12409
12410 2008-06-21  Eric Blake  <ebb9@byu.net>
12411
12412         Use sigaction module rather than signal().
12413         * modules/c-stack (Depends-on): Add sigaction.
12414         * modules/fatal-signal (Depends-on): Likewise.
12415         * modules/nanosleep (Depends-on): Likewise.
12416         * modules/sigprocmask (Files): Add sig-handler.h.
12417         * modules/sigaction (Files): Likewise.
12418         * lib/sig-handler.h (get_handler): New file, suggested by Paul
12419         Eggert.
12420         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
12421         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
12422         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
12423         (init_fatal_signals): Likewise.
12424         * lib/nanosleep.c (rpl_nanosleep): Likewise.
12425         (siginterrupt): Delete fallback.
12426         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
12427         instead.
12428         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
12429         siginterrupt.
12430
12431         New module sigaction, for mingw.
12432         * modules/sigaction: New module...
12433         * modules/sigaction-tests: ...and its test.
12434         * m4/sigaction.m4: New file.
12435         * lib/sigaction.c: Likewise.
12436         * tests/test-sigaction.c: Likewise.
12437         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
12438         * modules/signal (Makefile.am): Likewise.
12439         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
12440         needed.
12441         * doc/posix-headers/signal.texi (signal.h): Mention provided
12442         types.
12443         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
12444         that sigaction is preferable.
12445         * doc/posix-functions/sigaction.texi (sigaction): Mention new
12446         module.
12447         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
12448         sigaction.
12449
12450         Improve robustness of sigprocmask by overriding signal.
12451         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
12452         is in use.
12453         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
12454         (SIGKILL, SIGSTOP): Provide fallbacks.
12455         (rpl_signal): Implement.
12456         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
12457         signal can be called inside handlers.
12458
12459         Fix nanosleep module on mingw.
12460         * modules/nanosleep (Depends-on): Add sys_select.
12461         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
12462
12463         Fix licensing of sigprocmask.
12464         * modules/raise (License): Relicense as LGPL.
12465
12466 2008-06-21  Bruno Haible  <bruno@clisp.org>
12467
12468         * lib/propername.c (proper_name_utf8): Don't use the transliterated
12469         result if it contains question marks.
12470         Reported by Michael Geng <linux@michaelgeng.de>.
12471
12472 2008-06-19  Bruno Haible  <bruno@clisp.org>
12473
12474         Fix CVS-ism.
12475         * doc/gnulib.texi: Include updated-stamp.texi.
12476         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
12477         (updated-stamp.texi): New rule.
12478         (gnulib.info): Depend on it.
12479         * doc/.gitignore: Add updated-stamp.texi.
12480         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
12481
12482 2008-06-19  Bruno Haible  <bruno@clisp.org>
12483
12484         * doc/Makefile (gnulib.info): Update and simplify dependencies.
12485         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
12486
12487 2008-06-19  Eric Blake  <ebb9@byu.net>
12488
12489         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
12490         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
12491         Reported by Stepan Kasal.
12492
12493 2008-06-18  Bruno Haible  <bruno@clisp.org>
12494
12495         * lib/fatal-signal.c (init_fatal_signals): Add comment.
12496         Reported by Eric Blake.
12497
12498 2008-06-18  Eric Blake  <ebb9@byu.net>
12499
12500         Work around cygwin 1.5.25 strsignal bug.
12501         * tests/test-strsignal.c: Allow for const char *.
12502         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
12503
12504 2008-06-18  Simon Josefsson  <simon@josefsson.org>
12505
12506         * users.txt: Update URL to article and add author/date
12507         information.
12508
12509 2008-06-17  Bruno Haible  <bruno@clisp.org>
12510
12511         New macro gl_DISABLE_THREADS.
12512         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
12513         if the user did not pass --enable-threads or --disable-threads option.
12514         (gl_DISABLE_THREADS): New macro.
12515         Reported by Eric Blake <ebb9@byu.net>.
12516
12517 2008-06-17  Bruno Haible  <bruno@clisp.org>
12518
12519         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
12520         when the macro ignores it.
12521         Based on a patch by Eric Blake <ebb9@byu.net>.
12522
12523 2008-06-17  Bruno Haible  <bruno@clisp.org>
12524
12525         * modules/tls (License): Change to LGPLv2+.
12526         Reported by Eric Blake.
12527
12528 2008-06-17  Eric Blake  <ebb9@byu.net>
12529
12530         Simplify c-stack prerequisites.
12531         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
12532         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
12533         no longer requires <ucontext.h> to exist.  Optimize setrlimit
12534         check.
12535         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
12536         <sys/resource.h>.
12537
12538         Move c-stack test into testsuite.
12539         * modules/c-stack-tests: New file.
12540         * lib/c-stack.c [DEBUG]: Move test program...
12541         * tests/test-c-stack.c: ...into this new file.  Skip rather than
12542         fail test if sigaltstack is lacking.
12543         * tests/test-c-stack.sh: New driver file.
12544
12545 2008-06-16  Eric Blake  <ebb9@byu.net>
12546
12547         Use raise module consistently.
12548         * modules/fatal-signal (Depends-on): Add raise.
12549         * modules/sigprocmask (Depends-on): Likewise.
12550         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
12551         * lib/sigprocmask.c (sigprocmask): Likewise.
12552         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
12553         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
12554
12555         Fix compliance bug in sigpending.
12556         * lib/sigprocmask.c (sigpending): Return pending array via
12557         parameter, not return value.
12558
12559 2008-06-14  Eric Blake  <ebb9@byu.net>
12560
12561         Improve obstack-printf test code.
12562         * tests/test-obstack-printf.c (test_function): Fix comment, and
12563         simplify usage of obstack_* in macros.  Add a test for coverage.
12564         Reported by Bruno Haible.
12565
12566 2008-06-14  Bruno Haible  <bruno@clisp.org>
12567
12568         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
12569         array size as a constant, not as a const variable.
12570         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
12571         AC_USE_SYSTEM_EXTENSIONS.
12572         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
12573         Test whether the obstack_printf function actually exists.
12574         * modules/obstack-printf (Depends-on): Add extensions.
12575         (Include): Remove obstack.h.
12576         * modules/obstack-printf-posix (Depends-on): Add extensions.
12577         (Include): Remove obstack.h.
12578
12579 2008-06-13  Eric Blake  <ebb9@byu.net>
12580
12581         Add obstack-printf and obstack-printf-posix modules.
12582         * modules/obstack-printf: New file.
12583         * modules/obstack-printf-posix: Likewise.
12584         * MODULES.html.sh (Misc): Mention them.
12585         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
12586         Likewise.
12587         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
12588         Likewise.
12589         * modules/stdio (Makefile.am): Accomodate new modules.
12590         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
12591         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
12592         Declare.
12593         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
12594         functions.
12595         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
12596         (gl_REPLACE_OBSTACK_PRINTF): New macros
12597         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
12598         * tests/test-obstack-printf.c: New file.
12599         * modules/obstack-printf-tests: Likewise.
12600         * modules/obstack-printf-posix-tests: Likewise.
12601
12602 2008-06-11  Bruno Haible  <bruno@clisp.org>
12603
12604         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
12605         * lib/open.c: Include errno.h.
12606         (open): Fail when attempting to write to a file that has a trailing
12607         slash.
12608         * tests/test-open.c (main): Test against trailing slash bug.
12609         * doc/posix-functions/open.texi: Mention the trailing slash bug.
12610
12611 2008-06-10  Bruno Haible  <bruno@clisp.org>
12612
12613         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
12614         for $? to work inside the trap command, with various /bin/sh-s.
12615         * tests/test-vc-list-files-cvs.sh: Likewise.
12616
12617 2008-06-10  Bruno Haible  <bruno@clisp.org>
12618
12619         * lib/acl-internal.h: Don't include gettext.h here.
12620         * lib/set-mode-acl.c: Include gettext.h here.
12621         * lib/copy-acl.c: Likewise.
12622
12623 2008-06-10  Bruno Haible  <bruno@clisp.org>
12624
12625         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
12626         * lib/wait-process.c (wait_subprocess): Likewise.
12627         * lib/execute.h (execute): Add termsigp argument.
12628         * lib/execute.c (execute): Likewise.
12629         * lib/csharpcomp.c (compile_csharp_using_pnet,
12630         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
12631         * lib/csharpexec.c (execute_csharp_using_pnet,
12632         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
12633         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
12634         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
12635         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
12636         is_jikes_present): Update.
12637         * lib/javaexec.c (execute_java_class): Update.
12638         * lib/javaversion.c (execute_and_read_line): Update.
12639         * NEWS: Document the changes.
12640         Reported by Eric Blake.
12641
12642 2008-06-10  Eric Blake  <ebb9@byu.net>
12643
12644         Add missing include.
12645         * tests/test-strstr.c (includes): Add <signal.h>.
12646         * tests/test-strcasestr.c (includes): Likewise.
12647         * tests/test-memmem.c (includes): Likewise.
12648
12649 2008-06-10  Bruno Haible  <bruno@clisp.org>
12650
12651         * lib/wait-process.c (wait_subprocess): Add an assertion.
12652
12653 2008-06-10  Bruno Haible  <bruno@clisp.org>
12654
12655         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
12656
12657 2008-06-10  Bruno Haible  <bruno@clisp.org>
12658
12659         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
12660         using alarm().
12661         * tests/test-strcasestr.c (main): Likewise.
12662         * tests/test-strstr.c (main): Likewise.
12663
12664 2008-06-09  Bruno Haible  <bruno@clisp.org>
12665
12666         Work around the Solaris 10 ACE ACLs ABI change.
12667         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
12668         declare if ACL_NO_TRIVIAL is present.
12669         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
12670         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
12671         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
12672         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
12673         define if ACL_NO_TRIVIAL is present.
12674         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
12675         and use the current ABI.
12676         (file_has_acl): Use same #if condition as elsewhere.
12677         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
12678         in use, and use the current ABI.
12679         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
12680         Reported by Jim Meyering.
12681
12682 2008-06-09  Eric Blake  <ebb9@byu.net>
12683
12684         Work around environments that (stupidly) ignore SIGALRM.
12685         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
12686         before using alarm().
12687         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
12688         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
12689         Reported by Ian Beckwith <ianb@erislabs.net>.
12690
12691         Produce autobuild blurb earlier in log.
12692         * modules/autobuild (configure.ac-early): Move AB_INIT here.
12693
12694 2008-06-09  Jim Meyering  <meyering@redhat.com>
12695         and Ondřej Vašík  <ovasik@redhat.com>
12696
12697         utimens.c: correct kernel bug work-around
12698         Ondřej Vašík found that the invalid return value of 280 indicates
12699         failure, not success, and the kernel bug we're trying to work
12700         around affects not just the utimensat call, but also the fallback
12701         futimens call.
12702         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
12703         not success.
12704         [HAVE_FUTIMENS]: Use the same work-around, here.
12705
12706 2008-06-09  Jim Meyering  <meyering@redhat.com>
12707
12708         add more guards around definition of ACE_-related code
12709         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
12710         ALLOW and ACE_OWNER are also defined.
12711
12712 2008-06-08  Bruno Haible  <bruno@clisp.org>
12713
12714         * lib/acl-internal.h: Add me as co-author.
12715         * lib/file-has-acl.c: Likewise.
12716         * lib/set-mode-acl.c: Likewise.
12717         * lib/copy-acl.c: Likewise.
12718
12719 2008-06-08  Bruno Haible  <bruno@clisp.org>
12720
12721         Add support for AIX ACLs.
12722         * lib/acl-internal.h (acl_nontrivial): New declaration.
12723         * lib/file-has-acl.c (acl_nontrivial): New function.
12724         (file_has_acl): Add implementation using AIX 4 ACL API.
12725         * lib/set-mode-acl.c (qset_acl): Likewise.
12726         * lib/copy-acl.c (qcopy_acl): Likewise.
12727
12728 2008-06-08  Bruno Haible  <bruno@clisp.org>
12729
12730         Add support for HP-UX ACLs.
12731         * lib/acl-internal.h (acl_nontrivial): New declaration.
12732         * lib/file-has-acl.c (acl_nontrivial): New function.
12733         (file_has_acl): Add implementation using HP-UX 11 ACL API.
12734         * lib/set-mode-acl.c (qset_acl): Likewise.
12735         * lib/copy-acl.c (qcopy_acl): Likewise.
12736
12737 2008-06-08  Bruno Haible  <bruno@clisp.org>
12738
12739         Add support for Cygwin ACLs.
12740         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
12741         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
12742         the chmod_or_fchmod call.
12743         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
12744
12745 2008-06-08  Bruno Haible  <bruno@clisp.org>
12746
12747         Fix bug with setuid modes in Solaris 10+ code.
12748         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
12749         succeeded, when the mode contains some special bits.
12750
12751 2008-06-08  Bruno Haible  <bruno@clisp.org>
12752
12753         Add support for Solaris 7..10 ACLs.
12754         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
12755         declarations.
12756         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
12757         functions.
12758         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
12759         * lib/set-mode-acl.c (qset_acl): Likewise.
12760         * lib/copy-acl.c (qcopy_acl): Likewise.
12761
12762 2008-06-08  Bruno Haible  <bruno@clisp.org>
12763
12764         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
12765         declaration.
12766         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
12767         (acl_access_nontrivial): Remove MacOS X case.
12768         (file_has_acl): Use acl_extended_nontrivial.
12769         * lib/copy-acl.c (qcopy_acl): Likewise.
12770
12771 2008-06-08  Bruno Haible  <bruno@clisp.org>
12772
12773         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
12774
12775 2008-06-08  Jim Meyering  <meyering@redhat.com>
12776
12777         * modules/acl (Maintainer): Add Bruno Haible.
12778
12779 2008-06-07  Bruno Haible  <bruno@clisp.org>
12780
12781         Improve support for Tru64 ACLs.
12782         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
12783         ACL on OSF/1.
12784
12785 2008-06-07  Bruno Haible  <bruno@clisp.org>
12786
12787         Add support for MacOS X ACLs.
12788         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
12789         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
12790         * lib/set-mode-acl.c (qset_acl): Likewise.
12791         * lib/copy-acl.c (qcopy_acl): Likewise.
12792
12793 2008-06-07  Bruno Haible  <bruno@clisp.org>
12794
12795         Fix memory leak introduced on 2008-05-22.
12796         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
12797         use.
12798
12799 2008-06-07  Bruno Haible  <bruno@clisp.org>
12800
12801         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
12802         to construct an empty ACL.
12803
12804 2008-06-07  Bruno Haible  <bruno@clisp.org>
12805
12806         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
12807         precisely.
12808         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
12809
12810 2008-06-07  Bruno Haible  <bruno@clisp.org>
12811
12812         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
12813         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
12814
12815 2008-06-07  Bruno Haible  <bruno@clisp.org>
12816
12817         * doc/posix-functions/_setjmp.texi: Explain the use of this function
12818         regardless of POSIX.
12819         * doc/posix-functions/_longjmp.texi: Likewise.
12820         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
12821         SystemV platform in this case.
12822
12823 2008-06-06  Eric Blake  <ebb9@byu.net>
12824
12825         Document abort() bugs.
12826         * doc/posix-functions/abort.texi (abort): Mention anomalies.
12827
12828         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
12829         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
12830         sigsetjmp.
12831         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
12832         siglongjmp, but only as a macro.
12833         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
12834         is obsolete.
12835         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
12836
12837         Tweak documentation to cover cygwin argz bugs.
12838         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
12839         argz bug fix; no code change needed since no cygwin releases
12840         occurred between the last fix and the bug being tested.
12841         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
12842         module and recently fixed cygwin bugs.
12843         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
12844         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
12845         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
12846         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
12847         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
12848         Likewise.
12849         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
12850         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
12851         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
12852         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
12853         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
12854         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
12855         Likewise.
12856
12857         Avoid gcc warning on cygwin.
12858         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
12859         !ACL_NO_TRIVIAL]: Avoid unused variable.
12860
12861 2008-06-05  Eric Blake  <ebb9@byu.net>
12862
12863         Be tolerant of UNKNOWN version in gnulib-tool test dir.
12864         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
12865         git-version-gen fails to come up with a version.
12866         Reported by Simon Josefsson.
12867
12868 2008-06-05  Jim Meyering  <meyering@redhat.com>
12869             Paul Eggert  <eggert@cs.ucla.edu>
12870
12871         utimens.c: work around a probable Linux kernel bug
12872         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
12873         appears to be a kernel bug that causes utimensat to return 280
12874         instead of 0, indicating success.
12875
12876 2008-06-04  Bruno Haible  <bruno@clisp.org>
12877
12878         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
12879         2008-06-01 commit.
12880
12881 2008-06-04  Bruno Haible  <bruno@clisp.org>
12882
12883         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
12884         * lib/file-has-acl.c (acl_access_nontrivial): New function.
12885         (file_has_acl): Use it. Save errno afterwards.
12886         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
12887
12888 2008-06-03  Bruno Haible  <bruno@clisp.org>
12889
12890         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
12891         draft code. Simplify #ifs.
12892         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
12893         Put Solaris code after POSIX-draft code. Fix comments regarding
12894         Solaris 10, HP-UX. Mention Cygwin.
12895         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
12896
12897 2008-06-03  Eric Blake  <ebb9@byu.net>
12898
12899         Provide fallback for older kernels.
12900         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
12901         Provide runtime fallback if kernel lacks support.
12902         Reported by Mike Frysinger.
12903
12904 2008-06-02  Bruno Haible  <bruno@clisp.org>
12905
12906         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
12907         it exists.
12908
12909 2008-06-02  Bruno Haible  <bruno@clisp.org>
12910
12911         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
12912         * lib/copy-acl.c (qcopy_acl): Update comment.
12913
12914 2008-06-02  Bruno Haible  <bruno@clisp.org>
12915
12916         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
12917         like ACL APIs.
12918
12919 2008-06-02  Bruno Haible  <bruno@clisp.org>
12920
12921         * tests/test-file-has-acl.sh: Use different code for Cygwin.
12922         * tests/test-set-mode-acl.sh: Likewise.
12923         * tests/test-copy-acl.sh: Likewise.
12924         * tests/test-copy-file.sh: Likewise.
12925
12926 2008-06-02  Bruno Haible  <bruno@clisp.org>
12927
12928         * tests/test-file-has-acl.sh: Remove unused code.
12929
12930 2008-06-01  Bruno Haible  <bruno@clisp.org>
12931
12932         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
12933         (copy_acl): Just a wrapper around qcopy_acl that emits the error
12934         messages.
12935         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
12936
12937 2008-06-01  Bruno Haible  <bruno@clisp.org>
12938
12939         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
12940         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
12941         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
12942         APIs.
12943         * modules/acl-tests (configure.ac): Remove tests now contained in
12944         m4/acl.m4.
12945
12946 2008-06-02  Jim Meyering  <meyering@redhat.com>
12947
12948         announce-gen: use a better key-server host name
12949         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
12950         it may be more consistently reliable.  Suggested by Werner Koch
12951         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
12952
12953 2008-06-01  Bruno Haible  <bruno@clisp.org>
12954
12955         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
12956         Reported by Voroskoi Andras <voroskoi@gmail.com>.
12957
12958 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
12959
12960         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
12961
12962 2008-06-01  Bruno Haible  <bruno@clisp.org>
12963
12964         New ACL tests.
12965         * tests/test-file-has-acl.sh: New file.
12966         * tests/test-file-has-acl.c: New file.
12967         * tests/test-set-mode-acl.sh: New file.
12968         * tests/test-set-mode-acl.c: New file.
12969         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
12970         * tests/test-copy-acl.c: New file.
12971         * modules/acl-tests: New file, based on modules/copy-file-tests.
12972         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
12973         (Depends-on): Add acl-tests.
12974         (configure.ac): Remove checks.
12975         (Makefile.am): Don't create test-sameacls program here any more.
12976
12977 2008-06-01  Bruno Haible  <bruno@clisp.org>
12978
12979         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
12980         * tests/test-sameacls.c: Include progname.h.
12981         (main): Invoke set_program_name. Portability fixes for MacOS X,
12982         Solaris, HP-UX.
12983
12984 2008-06-01  Bruno Haible  <bruno@clisp.org>
12985
12986         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
12987         function.
12988         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
12989
12990 2008-06-01  Bruno Haible  <bruno@clisp.org>
12991
12992         * modules/rpmatch (Depends-on): Add strdup.
12993
12994 2008-06-01  Bruno Haible  <bruno@clisp.org>
12995
12996         * lib/pipe.c: Include unistd-safer.h.
12997         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
12998         * modules/pipe (Depends-on): Add unistd-safer.
12999
13000 2008-05-30  Simon Josefsson  <simon@josefsson.org>
13001
13002         * modules/autobuild (configure.ac): Call AB_INIT.
13003
13004 2008-05-30  Simon Josefsson  <simon@josefsson.org>
13005
13006         * tests/test-getaddrinfo.c: Don't print debug messages by default.
13007         Suggested by Bruno Haible <bruno@clisp.org>.
13008
13009 2008-05-30  Simon Josefsson  <simon@josefsson.org>
13010
13011         * tests/test-base64.c: Cast size_t to unsigned long when invoking
13012         printf.  Use %lu instead of %d.  Reported by Bruno Haible
13013         <bruno@clisp.org>.
13014
13015 2008-05-29  Eric Blake  <ebb9@byu.net>
13016
13017         Prefer new POSIX 200x interfaces over futimesat.
13018         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
13019         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
13020         when available.
13021         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
13022
13023 2008-05-28  Bruno Haible  <bruno@clisp.org>
13024
13025         * modules/stpcpy (License): Change to LGPLv2+.
13026         Requested by David Lutterkort <dlutter@redhat.com>.
13027
13028 2008-05-27  Bruno Haible  <bruno@clisp.org>
13029
13030         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
13031         current mingw.
13032         Reported by Jose E. Marchesi <jemarch@gnu.org>.
13033
13034 2008-05-27  Bruno Haible  <bruno@clisp.org>
13035
13036         * modules/iconv_open (Link): New section, from module 'iconv'.
13037         * modules/striconv (Link): Likewise.
13038         * modules/striconveh (Link): Likewise.
13039         * modules/xstriconv (Link): Likewise.
13040         * modules/unicodeio (Link): Likewise.
13041         * modules/propername (Link): Likewise.
13042         Reported by Jim Meyering.
13043
13044 2008-05-26  Jim Meyering  <meyering@redhat.com>
13045
13046         sha256: do not artificially restrict buffer length to be < 2^32
13047         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
13048         uint32_t to size_t.
13049         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
13050         to match.
13051
13052         avoid unaligned access errors, e.g., on sparc
13053         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
13054         direct access through a possibly-unaligned uint64* pointer.
13055         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
13056         direct access through a possibly-unaligned uint32* pointer.
13057         Prompted by this patch from Tom "spot" Callaway:
13058         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
13059
13060         sha512.c: fix typo in comment
13061         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
13062
13063 2008-05-25  Bruno Haible  <bruno@clisp.org>
13064
13065         * lib/set-mode-acl.c: Renamed from lib/acl.c.
13066         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
13067         (Makefile.am): Update lib_SOURCES.
13068
13069 2008-05-25  Bruno Haible  <bruno@clisp.org>
13070
13071         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
13072
13073 2008-05-25  Jim Meyering  <meyering@redhat.com>
13074
13075         useless-if-before-free: freed expr may have white-space differences
13076         * build-aux/useless-if-before-free: Recognize cases in which the
13077         freed expression differs from the tested one in embedded white
13078         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
13079         $1 was used, so we can't make any regexp shy.  Improved tests now
13080         detect this.
13081
13082         useless-if-before-free: accept white space in the expression.
13083         * build-aux/useless-if-before-free: For now, any white space
13084         in the expression must be identical in the free argument.
13085
13086         useless-if-before-free: efficiency tweak
13087         * build-aux/useless-if-before-free: Make the expression-matching
13088         regexp "shy".
13089         Make the *outer* regexp shy, not the expr-matching one.
13090
13091         update code-in-comment to accept cast of free arg
13092         * build-aux/useless-if-before-free: Update regexp.
13093
13094 2008-05-25  Bruno Haible  <bruno@clisp.org>
13095
13096         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
13097         * modules/copy-file-tests (Files, Makefile.am): Update.
13098         * tests/test-copy-file.c (func_test_copy): Update.
13099
13100 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
13101
13102         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
13103
13104 2008-05-23  Bruno Haible  <bruno@clisp.org>
13105
13106         Improve support for ACLs on OSF/1.
13107         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
13108         Remove fallback for unknown flavors of ACLs.
13109
13110 2008-05-22  Bruno Haible  <bruno@clisp.org>
13111
13112         Add support for ACLs on OSF/1.
13113         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
13114         replacements.
13115         (acl_free_text): New macro fallback.
13116         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
13117         acl_free.
13118         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
13119         acl_free_text function. Require AC_C_INLINE.
13120
13121 2008-05-22  Bruno Haible  <bruno@clisp.org>
13122
13123         Make copy_acl work on MacOS X 10.5.
13124         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
13125         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
13126         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
13127         If MODE_INSIDE_ACL, don't assume that every system has the same text
13128         representation for ACLs as FreeBSD.
13129         * lib/copy-acl.c (copy_acl): Add support for platforms with
13130         !MODE_INSIDE_ACL.
13131         * lib/file-has-acl.c (file_has_acl): Likewise.
13132         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
13133         FreeBSD, MacOS X, or IRIX, respectively.
13134
13135 2008-05-22  Bruno Haible  <bruno@clisp.org>
13136
13137         * lib/acl.h: Don't include <sys/acl.h>.
13138         (GETACLCNT): Move fallback to lib/acl-internal.h.
13139         * lib/acl-internal.h: Include <sys/acl.h> here.
13140         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
13141
13142 2008-05-22  Bruno Haible  <bruno@clisp.org>
13143
13144         Split off copy_acl function to separate file.
13145         * lib/copy-acl.c: New file, extracted from lib/acl.c.
13146         * lib/acl.c (copy_acl): Moved function to separate file.
13147         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
13148         * modules/acl (Files): Add lib/copy-acl.c.
13149         (Makefiles.am): Augment lib_SOURCES.
13150
13151 2008-05-22  Bruno Haible  <bruno@clisp.org>
13152
13153         * modules/copy-file-tests: New file.
13154         * tests/test-copy-file.sh: New file.
13155         * tests/test-copy-file.c: New file.
13156         * tests/test-copy-file-sameacls.c: New file.
13157
13158 2008-05-22  Eric Blake  <ebb9@byu.net>
13159
13160         Avoid gcc warning.
13161         * tests/test-memcmp.c (main): Pass NULL indirectly.
13162
13163 2008-05-21  Bruno Haible  <bruno@clisp.org>
13164
13165         Add reference doc about ACLs.
13166         * doc/acl-resources.txt: New file.
13167         * doc/acl-cygwin.txt: New file.
13168
13169 2008-05-21  Bruno Haible  <bruno@clisp.org>
13170
13171         Avoid one more warning from gcc.
13172         * lib/vasnprintf.c (IF_LINT): Update comments.
13173         (VASNPRINTF): Use it also for the 'prefix' array initializer.
13174
13175 2008-05-21  Jim Meyering  <meyering@redhat.com>
13176
13177         avoid a warning from gcc
13178         * lib/vasnprintf.c (IF_LINT): Define.
13179         (scale10_round_decimal_long_double):
13180         Use it to avoid a "may be used uninitialized" warning.
13181         (scale10_round_decimal_double): Likewise.
13182
13183 2008-05-21  Simon Josefsson  <simon@josefsson.org>
13184
13185         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
13186         declared.
13187
13188 2008-05-20  Bruno Haible  <bruno@clisp.org>
13189
13190         * tests/test-memcmp.c (main): Test also the sign of the result. Test
13191         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
13192
13193 2008-05-20  Simon Josefsson  <simon@josefsson.org>
13194
13195         * modules/memcmp-tests: New file.
13196         * tests/test-memcmp.c: New file.
13197
13198 2008-05-19  Bruno Haible  <bruno@clisp.org>
13199
13200         * modules/propername (Notice, configure.ac): Put quoted "..." into
13201         --keyword option.
13202         * lib/propername.h: Update comments accordingly.
13203         Reported by Eric Blake.
13204
13205 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
13206
13207         * modules/getpass-gnu (Depends-on): Add fseeko.
13208
13209 2008-05-19  Simon Josefsson  <simon@josefsson.org>
13210
13211         * modules/base64-tests: New file.
13212
13213 2008-05-19  Bo Borgerson <gigabo@gmail.com>
13214
13215         * lib/base64.c (base64_decode_ctx): If a decode context structure
13216         was passed in use it to ignore newlines.  If a context structure
13217         was _not_ passed in, continue to treat newlines as garbage (this
13218         is the historical behavior).  Formerly base64_decode.
13219         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
13220         takes a decode context structure.
13221         * lib/base64.h (base64_decode): Macro for four-argument calls.
13222         (base64_decode_alloc): Likewise.
13223         * lib/base64.c (base64_decode_ctx): If a decode context structure
13224         was passed in use it to ignore newlines.  If a context structure
13225         was _not_ passed in, continue to treat newlines as garbage (this
13226         is the historical behavior).  Formerly base64_decode.
13227         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
13228         takes a decode context structure.
13229         * lib/base64.h (base64_decode): Macro for four-argument calls.
13230         (base64_decode_alloc): Likewise.
13231
13232 2008-05-19  Jim Meyering  <meyering@redhat.com>
13233
13234         avoid a warning from gcc
13235         * lib/trim.c (IF_LINT): Define.
13236         (trim2): Use it to avoid a "may be used uninitialized" warning.
13237
13238         Fix doc typo.
13239         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
13240
13241 2008-05-19  Bruno Haible  <bruno@clisp.org>
13242
13243         * doc/glibc-functions/getpass.texi: Document limits of other
13244         implementations.
13245
13246 2008-05-19  Simon Josefsson  <simon@josefsson.org>
13247             Bruno Haible <bruno@clisp.org>
13248
13249         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
13250
13251 2008-05-18  Bruno Haible  <bruno@clisp.org>
13252
13253         * modules/propername: New file, from GNU gettext.
13254         * lib/propername.h: New file, from GNU gettext.
13255         * lib/propername.c: New file, from GNU gettext.
13256         * MODULES.html.sh (Internationalization functions): Add propername.
13257
13258 2008-05-16  Jim Meyering  <meyering@redhat.com>
13259             Bruno Haible  <bruno@clisp.org>
13260
13261         Avoid some warnings from "gcc -Wshadow".
13262         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
13263
13264 2008-05-15  Eric Blake  <ebb9@byu.net>
13265
13266         Extend previous patch to cygwin 1.7.0.
13267         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
13268         fast implementation in cygwin >= 1.7.0.
13269         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
13270         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
13271
13272 2008-05-15  Bruno Haible  <bruno@clisp.org>
13273
13274         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
13275         implementation in glibc >= 2.9.
13276         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
13277         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
13278
13279 2008-05-15  Bruno Haible  <bruno@clisp.org>
13280
13281         * MODULES.html.sh (Internationalization functions): Remove linebreak.
13282         (Unicode string functions): Add unilbrk/*.
13283         Reported by Karl Berry.
13284
13285 2008-05-15  Eric Blake  <ebb9@byu.net>
13286
13287         Fix violation of <stdbool.h> replacement in regex.
13288         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
13289         * lib/regexec.c (re_search_internal): Likewise.
13290         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
13291
13292 2008-05-15  Jim Meyering  <meyering@redhat.com>
13293
13294         avoid distracting test output when git or cvs is not found
13295         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
13296         * tests/test-vc-list-files-git.sh: Likewise.
13297
13298 2008-05-15  Eric Blake  <ebb9@byu.net>
13299
13300         Glibc finally accepted the memmem speedup code, bugzilla #5514.
13301         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
13302         glibc version.
13303         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
13304         * doc/posix-functions/strstr.texi (strstr): Likewise.
13305         * lib/str-two-way.h (MAX): Sychronize with glibc.
13306
13307 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
13308
13309         * lib/regcomp.c (optimize_utf8): Add a note on why we test
13310         opr.ctx_type.
13311         (calc_first): Initialize constraint field.
13312         (duplicate_node_closure): Use it instead of special casing ANCHORS.
13313         Fix grammar.
13314         (duplicate_node): Merge constraint field for all node types.
13315         (calc_eclosure_iter): Look at constraint field for all node types.
13316         * lib/regex_internal.c (create_cd_newstate): Don't look at
13317         opr.ctx_type.
13318
13319 2008-05-14  Bruno Haible  <bruno@clisp.org>
13320
13321         Help GCC to do better code generation.
13322         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
13323         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
13324         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
13325         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
13326         Declare with attribute 'malloc' if supported.
13327
13328 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
13329
13330         use "echo STR|wc -c" rather than unportable "expr length STR"
13331         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
13332         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
13333
13334 2008-05-14  Jim Meyering  <meyering@redhat.com>
13335
13336         use dd ibs=$n count=1 ... rather than less-portable head -c$n
13337         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
13338         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
13339         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
13340         via Collin Lasse.
13341
13342 2008-05-14  Eric Blake  <ebb9@byu.net>
13343
13344         Avoid quadratic growth in gl_LIBSOURCES.
13345         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
13346         Suggested by Bruno Haible.
13347
13348         Test xmemdup0.
13349         * modules/xmemdup0-tests: New file.
13350         * tests/test-xmemdup0.c: Likewise.
13351
13352 2008-05-13  Eric Blake  <ebb9@byu.net>
13353
13354         Split xmemdup0 into its own module.
13355         * modules/xmemdup0: New file.
13356         * lib/xmemdup0.h: Likewise.
13357         * lib/xmemdup0.c: Likewise.
13358         * MODULES.html.sh (Memory management functions): Add xmemdup0.
13359         * lib/xalloc.h (xmemdup0): Remove.
13360         * lib/xmalloc.c (xmemdup0): Likewise.
13361
13362 2008-05-13  Eric Blake  <ebb9@byu.net>
13363             Bruno Haible  <bruno@clisp.org>
13364
13365         Reduce number of forks required during autoconf.
13366         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
13367         and gl_LIBSOURCES_DIR.
13368         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
13369         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
13370         m4_syscmd per file.
13371         <m4_foreach_w>: Move...
13372         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
13373
13374 2008-05-13  Eric Blake  <ebb9@byu.net>
13375
13376         * gnulib-tool: Fix various comment typos.
13377
13378 2008-05-12  Bruno Haible  <bruno@clisp.org>
13379
13380         Tailor the linebreaking algorithm.
13381         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
13382
13383 2008-05-12  Bruno Haible  <bruno@clisp.org>
13384
13385         Update to Unicode 5.0.0.
13386         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
13387         LBP_JV, LBP_JT. Redistribute values.
13388         (unilbrk_table): Change size.
13389         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
13390         Unicode TR#14 rev. 22.
13391         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
13392         LBP_JV, LBP_JT. Redistribute values.
13393         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
13394         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
13395         Update.
13396         * lib/unilbrk/lbrkprop1.h: Regenerated.
13397         * lib/unilbrk/lbrkprop2.h: Regenerated.
13398         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
13399         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
13400         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
13401         Likewise.
13402         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
13403         Likewise.
13404         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
13405         result.
13406         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
13407         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
13408         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
13409         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
13410         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
13411         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
13412
13413 2008-05-11  Bruno Haible  <bruno@clisp.org>
13414
13415         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
13416
13417 2008-05-11  Bruno Haible  <bruno@clisp.org>
13418
13419         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
13420         * modules/unilbrk/gen-lbrk: New file.
13421
13422 2008-05-11  Bruno Haible  <bruno@clisp.org>
13423
13424         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
13425         * m4/sha512.m4 (gl_SHA512): Likewise.
13426
13427 2008-05-11  Jim Meyering  <meyering@redhat.com>
13428
13429         New modules: crypto/sha256, crypto/sha512 (from coreutils)
13430         * modules/crypto/sha256: New file.
13431         * modules/crypto/sha512: Likewise.
13432         * lib/sha256.c: Likewise.
13433         * lib/sha256.h: Likewise.
13434         * lib/sha512.c: Likewise.
13435         * lib/sha512.h: Likewise.
13436         * lib/u64.h: Likewise.
13437         * m4/sha256.m4: Likewise.
13438         * m4/sha512.m4: Likewise.
13439         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
13440
13441 2008-05-10  Bruno Haible  <bruno@clisp.org>
13442
13443         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
13444         (Input/Output <stdio.h>): Add xprintf.
13445         (Signal handling <signal.h>): Add strsignal.
13446         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
13447         (Core language properties): Add func.
13448         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
13449         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
13450         strings.
13451         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
13452         (Input/output): New section.
13453         (File system functions): Add openat-die, stat-macros.
13454         (Networking functions): Add sockets.
13455         (Unicode string functions): Add unictype/*.
13456         (Support for building libraries and executables): Add gperf.
13457         (Support for building documentation): Add agpl-3.0.
13458         (Misc): Add nocrash.
13459
13460 2008-05-10  Bruno Haible  <bruno@clisp.org>
13461
13462         * modules/unictype/gen-ctype: New file.
13463
13464 2008-05-10  Jim Meyering  <meyering@redhat.com>
13465
13466         Make chdir-safer.c more efficient on a system with no symlinks.
13467         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
13468         also if ELOOP is zero.  Suggested by Bruno Haible.
13469
13470         Make chdir-safer.c slightly safer.
13471         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
13472         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
13473
13474         Avoid compile failure on systems without ELOOP (like mingw).
13475         * lib/chdir-safer.c (ELOOP): Define if not already defined.
13476         Reported by Bruno Haible.
13477
13478 2008-05-10  Bruno Haible  <bruno@clisp.org>
13479
13480         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
13481         (is_utf8_encoding): Use a case-insensitive comparison.
13482         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
13483         streq.
13484
13485 2008-05-10  Bruno Haible  <bruno@clisp.org>
13486
13487         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
13488         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
13489         * lib/unilbrk/ulc-common.h (iconv_string_length,
13490         iconv_string_keeping_offsets): Remove declarations.
13491         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
13492         Don't include <iconv.h>, streq.h, xsize.h.
13493         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
13494         conversion.
13495         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
13496         <iconv.h>, streq.h, xsize.h.
13497         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
13498         conversion.
13499         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
13500         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
13501         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
13502         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
13503
13504 2008-05-10  Bruno Haible  <bruno@clisp.org>
13505
13506         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
13507         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
13508
13509         * modules/unilbrk/u32-width-linebreaks-tests: New file.
13510         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
13511
13512         * modules/unilbrk/u16-width-linebreaks-tests: New file.
13513         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
13514
13515         * modules/unilbrk/u8-width-linebreaks-tests: New file.
13516         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
13517
13518         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
13519         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
13520
13521         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
13522         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
13523
13524         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
13525         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
13526
13527         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
13528         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
13529
13530 2008-05-10  Bruno Haible  <bruno@clisp.org>
13531
13532         Split up 'linebreak' module.
13533         * lib/unilbrk.h: New file, based on lib/linebreak.h.
13534         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
13535         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
13536         modifications.
13537         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
13538         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
13539         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
13540         lib/linebreak.c.
13541         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
13542         lib/linebreak.c.
13543         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
13544         lib/linebreak.c.
13545         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
13546         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
13547         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
13548         lib/linebreak.c.
13549         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
13550         lib/linebreak.c.
13551         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
13552         lib/linebreak.c.
13553         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
13554         lib/linebreak.c.
13555         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
13556         lib/linebreak.c.
13557         * modules/unilbrk/base: New file.
13558         * modules/unilbrk/tables: New file.
13559         * modules/unilbrk/u8-possible-linebreaks: New file.
13560         * modules/unilbrk/u16-possible-linebreaks: New file.
13561         * modules/unilbrk/u32-possible-linebreaks: New file.
13562         * modules/unilbrk/ulc-common: New file.
13563         * modules/unilbrk/ulc-possible-linebreaks: New file.
13564         * modules/unilbrk/u8-width-linebreaks: New file.
13565         * modules/unilbrk/u16-width-linebreaks: New file.
13566         * modules/unilbrk/u32-width-linebreaks: New file.
13567         * modules/unilbrk/ulc-width-linebreaks: New file.
13568         * lib/linebreak.h: Remove file.
13569         * lib/linebreak.c: Remove file.
13570         * m4/linebreak.m4: Remove file.
13571         * modules/linebreak: Remove file.
13572         * NEWS: Mention the changes.
13573
13574 2008-05-09  Eric Blake  <ebb9@byu.net>
13575
13576         Add xmemdup0.
13577         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
13578         implementation.
13579         * lib/xmalloc.c (xmemdup0): New C implementation.
13580
13581 2008-05-08  Bruno Haible  <bruno@clisp.org>
13582
13583         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
13584
13585 2008-05-07  Eric Blake  <ebb9@byu.net>
13586
13587         Support cross-compilation of <wctype.h>.
13588         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
13589         AC_CACHE_CHECK.
13590
13591 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
13592
13593         * build-aux/vc-list-files: Add support for bzr.
13594
13595 2008-05-03  Jim Meyering  <meyering@redhat.com>
13596
13597         avoid failed assertion with tight malloc
13598         * tests/test-getndelim2.c: Correct an off-by-one assertion.
13599
13600 2008-05-03  Simon Josefsson  <simon@josefsson.org>
13601
13602         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
13603         are needed from arpa/inet.h.
13604         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
13605         Reported by Bruno Haible.
13606
13607 2008-05-02  Jim Meyering  <meyering@redhat.com>
13608
13609         avoid compilation error on FreeBSD 6
13610         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
13611
13612 2008-05-01  Jim Meyering  <meyering@redhat.com>
13613
13614         useless-if-before-free: correct --help's exit status description
13615         * build-aux/useless-if-before-free (usage): Like grep, exit 0
13616         for one or more matches, etc.  Reported by Bruno Haible.
13617
13618         vc-list-files: make the stand-alone gnulib test work
13619         * modules/vc-list-files-tests (configure.ac):
13620         Define and AC_SUBST abs_aux_dir.
13621         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
13622         $(abs_top_srcdir) to each script and having each of them
13623         duplicate the work of setting PATH, set PATH here, using
13624         the new variable, abs_aux_dir instead.
13625         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
13626         * tests/test-vc-list-files-git.sh: Likewise.
13627         Reported by Bruno Haible.
13628
13629 2008-05-01  Bruno Haible  <bruno@clisp.org>
13630
13631         * lib/getndelim2.c (getndelim2): Fix newsize computation during
13632         reallocation. Rename 'done' to 'found_delimiter'.
13633
13634 2008-05-01  Jim Meyering  <meyering@redhat.com>
13635
13636         vc-list-files: accommodate /bin/sh like the one from Solaris 10
13637         * build-aux/vc-list-files: Use `...`, not $(...).
13638
13639 2008-04-30  Jim Meyering  <meyering@redhat.com>
13640
13641         add tests for vc-list-files
13642         * modules/vc-list-files-tests: New module.
13643         * tests/test-vc-list-files-cvs.sh: New file.
13644         * tests/test-vc-list-files-git.sh: New file.
13645
13646         avoid a warning from gcc
13647         * lib/getndelim2.c (IF_LINT): Define.
13648         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
13649
13650         vc-list-files: work properly with build-aux/cvsu, too
13651         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
13652         to all cvs-based clauses.
13653
13654         vc-list-files: work properly in the CVS+awk case, too
13655         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
13656
13657         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
13658         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
13659         take more than one file argument, so .  Add quotes, just in case $dir
13660         ever contains a shell meta-character.  Prompted by Soren Hansen in
13661         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
13662
13663 2008-04-29  Eric Blake  <ebb9@byu.net>
13664
13665         Optimize getndelim2 to use block operations when possible.
13666         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
13667         freadseek, and memchr2.
13668         * lib/getndelim2.c (getndelim2): Use them for block reads.
13669
13670 2008-04-29  Bruno Haible  <bruno@clisp.org>
13671
13672         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
13673         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
13674         * modules/inet_ntop (Depends-on): Add extensions.
13675         * modules/inet_pton (Depends-on): Likewise.
13676         Reported by Simon Josefsson.
13677
13678 2008-04-29  Jim Meyering  <meyering@redhat.com>
13679
13680         When the is more than one match in a block, match all of them.
13681         * build-aux/useless-if-before-free: Iterate through each block
13682         until there are no more matches.
13683
13684         Fix broken useless-if-before-free script.
13685         * build-aux/useless-if-before-free: Fix typo: missing "?" after
13686         the expression to match cast of argument to free-like function.
13687
13688 2008-04-29  Eric Blake  <ebb9@byu.net>
13689
13690         Use new header.
13691         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
13692
13693 2008-04-29  Jim Meyering  <meyering@redhat.com>
13694
13695         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
13696         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
13697         by gnulib to exist and to declare e.g., inet_ntop.
13698         Don't include "inet_ntop.h", now removed.
13699
13700         * m4/arpa_inet_h.m4: Remove trailing blanks.
13701
13702 2008-04-29  Eric Blake  <ebb9@byu.net>
13703
13704         Silence valgrind on safe reads beyond potential array bounds.
13705         * lib/rawmemchr.valgrind: New file.
13706         * lib/strchrnul.valgrind: Likewise.
13707         * modules/rawmemchr (Files): Distribute new file.
13708         * modules/strchrnul (Files): Likewise.
13709         Suggested by Bruno Haible.
13710
13711 2008-04-29  Bruno Haible  <bruno@clisp.org>
13712
13713         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
13714         (inet_ntop, inet_pton): Change portability warning's wording.
13715         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
13716         Invoke gl_CHECK_NEXT_HEADERS.
13717         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
13718         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
13719         set ARPA_INET_H.
13720         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
13721         * modules/arpa_inet (Description): No longer only for systems that
13722         lack it.
13723         (Depends-on): Add include_next.
13724         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
13725         HAVE_ARPA_INET_H.
13726
13727 2008-04-29  Jim Meyering  <meyering@redhat.com>
13728
13729         * modules/mkdir (License): Re-license as LGPLv2+.
13730
13731 2008-04-29  Bruno Haible  <bruno@clisp.org>
13732
13733         * modules/rawmemchr (Maintainer): Set to Eric.
13734         * modules/strchrnul (Maintainer): Likewise.
13735
13736 2008-04-29  Simon Josefsson  <simon@josefsson.org>
13737
13738         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
13739         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
13740
13741         * modules/arpa_inet (arpa/inet.h): Use them.
13742
13743 2008-04-28  Eric Blake  <ebb9@byu.net>
13744
13745         Test getndelim2.
13746         * modules/getndelim2-tests: New file.
13747         * tests/test-getndelim2.c: Likewise.
13748         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
13749         stream.
13750         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
13751
13752         * MODULES.html.sh: Document new module.
13753
13754 2008-04-20  Bruno Haible  <bruno@clisp.org>
13755
13756         * lib/c-stack.c (die): Use raise.
13757         * modules/c-stack (Depends-on): Add raise.
13758
13759 2008-04-28  Bruno Haible  <bruno@clisp.org>
13760
13761         Expect rpmatch to be declared.
13762         * lib/yesno.c (rpmatch): Remove declaration.
13763
13764         Declare rpmatch.
13765         * lib/stdlib.in.h (rpmatch): New declaration.
13766         * lib/rpmatch.c: Include <stdlib.h> first.
13767         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
13768         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
13769         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
13770         HAVE_RPMATCH.
13771         * modules/rpmatch (Depends-on): Add stdlib, extensions.
13772         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
13773         (Include): Set to <stdlib.h>.
13774         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
13775         HAVE_RPMATCH.
13776         * NEWS: Document the change.
13777
13778 2008-04-28  Bruno Haible  <bruno@clisp.org>
13779
13780         Change rpmatch to use nl_langinfo when appropriate.
13781         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
13782         (N_): New macro.
13783         (localized_pattern): New function/macro.
13784         (try): Remove match, nomatch arguments. Copy the pattern into safe
13785         memory before caching it.
13786         (rpmatch): Use localized_pattern. Add translator comments.
13787         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
13788         Suggested by Eric Blake.
13789         * modules/rpmatch (Depends-on): Add stdbool.
13790
13791 2008-04-28  Eric Blake  <ebb9@byu.net>
13792
13793         Add rawmemchr module, matching glibc.
13794         * modules/string (Makefile.am): New indicator.
13795         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
13796         * lib/string.in.h (rawmemchr): Declare when appropriate.
13797         * modules/rawmemchr: New file.
13798         * m4/rawmemchr.m4: Likewise.
13799         * lib/rawmemchr.c: Likewise.
13800         * modules/rawmemchr-tests: Likewise.
13801         * tests/test-rawmemchr.c: Likewise.
13802         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
13803         module.
13804         * modules/strchrnul (Depends-on): Add rawmemchr.
13805         * lib/strchrnul.c (strchrnul): Optimize a corner case.
13806
13807         Whitespace cleanup.
13808         * tests/test-strchrnul.c: Reindent.
13809         * lib/strchrnul.c: Likewise.
13810
13811         Optimize and test strchrnul.
13812         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
13813         * modules/strchrnul-tests: New file.
13814         * tests/test-strchrnul.c: Likewise.
13815
13816         Remove intprops dependency.
13817         * modules/memchr (Depends-on): Remove intprops.
13818         * modules/memrchr (Depends-on): Likewise.
13819         * modules/memchr2 (Depends-on): Likewise.
13820         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
13821         * lib/memrchr.c (__memrchr): Likewise.
13822         * lib/memrchr2.c (memchr2): Likewise.
13823         Reported by Simon Josefsson.
13824
13825 2008-04-28  Simon Josefsson  <simon@josefsson.org>
13826
13827         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
13828         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
13829
13830 2008-04-28  Simon Josefsson  <simon@josefsson.org>
13831
13832         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
13833
13834         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
13835
13836         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
13837
13838         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
13839         declarations.
13840         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
13841
13842         * m4/inet_pton.m4: Don't check for header files.
13843
13844         * m4/inet_ntop.m4: Don't check for header files.
13845
13846 2008-04-28  Simon Josefsson  <simon@josefsson.org>
13847
13848         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
13849         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
13850         trigger for cygwin).
13851         Reported by Bruno Haible  <bruno@clisp.org>.
13852
13853 2008-04-28  Bruno Haible  <bruno@clisp.org>
13854
13855         * doc/posix-functions/strdup.texi: Mention mingw problem.
13856
13857 2008-04-27  Bruno Haible  <bruno@clisp.org>
13858
13859         * modules/stat-time-tests (Depends-on): Add sleep.
13860         * tests/test-stat-time.c (force_unlink): New function.
13861         (cleanup): Use it.
13862         (test_mtime): Remove the ctime related tests.
13863         (test_ctime): New function, containing the ctime related tests.
13864         (main): Call test_ctime, except on native Windows platforms.
13865
13866 2008-04-27  Bruno Haible  <bruno@clisp.org>
13867
13868         * lib/rpmatch.c (rpmatch): Add some comments.
13869         Reported by James Youngman <jay@gnu.org>.
13870
13871 2008-04-27  Bruno Haible  <bruno@clisp.org>
13872
13873         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
13874         quiet NaNs.
13875
13876 2008-04-27  Bruno Haible  <bruno@clisp.org>
13877
13878         Make test-yesno.sh work on mingw.
13879         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
13880         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
13881         (main): Set stdin to binary mode.
13882         * modules/yesno-tests (Depends-on): Add binary-io.
13883
13884 2008-04-27  Bruno Haible  <bruno@clisp.org>
13885
13886         Fix 'isfinite' on x86, x86_64, ia64 platforms.
13887         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
13888         argument that lie outside the IEEE 854 domain.
13889         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
13890         (gl_ISFINITE): Use it.
13891         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
13892
13893 2008-04-27  Bruno Haible  <bruno@clisp.org>
13894
13895         Allow local renaming in config.h.
13896         * lib/memrchr.c (memrchr): Don't undefine outside libc.
13897
13898 2008-04-27  Bruno Haible  <bruno@clisp.org>
13899
13900         * lib/memchr.c (__memchr): Change type of 'i'.
13901         * lib/memchr2.c (memchr2): Likewise.
13902
13903 2008-04-26  Eric Blake  <ebb9@byu.net>
13904         and Bruno Haible  <bruno@clisp.org>
13905
13906         Optimize and test memrchr.
13907         * modules/memrchr (Depends-on): Add intprops.
13908         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
13909         * modules/memrchr-tests: New file.
13910         * tests/test-memrchr.c: New file.
13911
13912 2008-04-26  Bruno Haible  <bruno@clisp.org>
13913
13914         Add tentative support for DragonFly BSD.
13915         * lib/stdio-impl.h: Add macros for DragonFly BSD.
13916         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
13917         fp.
13918         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
13919         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
13920         * lib/fpurge.c (fpurge): Likewise.
13921         * lib/freadable.c (freaadable): Likewise.
13922         * lib/freadahead.c (freadahead): Likewise.
13923         * lib/freading.c (freading): Likewise.
13924         * lib/freadptr.c (freadptr): Likewise.
13925         * lib/freadseek.c (freadptrinc): Likewise.
13926         * lib/fseeko.c (fseeko): Likewise.
13927         * lib/fseterr.c (fseterr): Likewise.
13928         * lib/fwritable.c (fwritable): Likewise.
13929         * lib/fwriting.c (fwriting): Likewise.
13930
13931 2008-04-26  Bruno Haible  <bruno@clisp.org>
13932
13933         * lib/stdio-impl.h: New file.
13934         * lib/fbufmode.c: Include stdio-impl.h.
13935         (fbufmode): Use fp_, remove redundant #defines.
13936         * lib/fflush.c: Include stdio-impl.h.
13937         (clear_ungetc_buffer): Remove redundant #defines.
13938         * lib/fpurge.c: Include stdio-impl.h.
13939         (fpurge): Remove redundant #defines.
13940         * lib/freadable.c: Include stdio-impl.h.
13941         (freadable): Remove redundant #defines.
13942         * lib/freadahead.c: Include stdio-impl.h.
13943         (freadahead): Remove redundant #defines.
13944         * lib/freading.c: Include stdio-impl.h.
13945         (freading): Remove redundant #defines.
13946         * lib/freadptr.c: Include stdio-impl.h.
13947         (freadptr): Remove redundant #defines.
13948         * lib/freadseek.c: Include stdio-impl.h.
13949         (freadptrinc): Remove redundant #defines.
13950         * lib/fseeko.c: Include stdio-impl.h.
13951         (rpl_fseeko): Remove redundant #defines.
13952         * lib/fseterr.c: Include stdio-impl.h.
13953         (fseterr): Remove redundant #defines.
13954         * lib/fwritable.c: Include stdio-impl.h.
13955         (fwritable: Remove redundant #defines.
13956         * lib/fwriting.c: Include stdio-impl.h.
13957         (fwriting): Remove redundant #defines.
13958         * modules/fbufmode (Files): Add lib/stdio-impl.h.
13959         * modules/fflush (Files): Likewise.
13960         * modules/fpurge (Files): Likewise.
13961         * modules/freadable (Files): Likewise.
13962         * modules/freadahead (Files): Likewise.
13963         * modules/freading (Files): Likewise.
13964         * modules/freadptr (Files): Likewise.
13965         * modules/freadseek (Files): Likewise.
13966         * modules/fseeko (Files): Likewise.
13967         * modules/fseterr (Files): Likewise.
13968         * modules/fwritable (Files): Likewise.
13969         * modules/fwriting (Files): Likewise.
13970
13971 2008-04-26  Bruno Haible  <bruno@clisp.org>
13972
13973         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
13974         restore_seek_optimization, update_fpos_cache): New functions, extracted
13975         from rpl_fflush.
13976         (rpl_fflush): Use them.
13977         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
13978         (gl_REPLACE_FFLUSH): Use it.
13979
13980 2008-04-26  Bruno Haible  <bruno@clisp.org>
13981
13982         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
13983         on Solaris.
13984         * tests/test-xstrtoimax.sh: Likewise.
13985         * tests/test-xstrtoumax.sh: Likewise.
13986         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
13987
13988 2008-04-26  Bruno Haible  <bruno@clisp.org>
13989
13990         * modules/memchr-tests: New file.
13991         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
13992
13993 2008-04-26  Eric Blake  <ebb9@byu.net>
13994             Bruno Haible  <bruno@clisp.org>
13995
13996         * lib/memchr.c: Include intprops.h.
13997         (__memchr): Optimize parallel detection of matching bytes. Rename local
13998         variables. Add explanatory comments.
13999
14000 2008-04-26  Bruno Haible  <bruno@clisp.org>
14001
14002         Fix module 'memchr', broken since 2000-10-28.
14003         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
14004
14005 2008-04-26  Bruno Haible  <bruno@clisp.org>
14006
14007         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
14008         comments.
14009
14010 2008-04-25  Eric Blake  <ebb9@byu.net>
14011
14012         Use native fstatat on cygwin 1.7.0.
14013         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
14014         first.
14015
14016 2008-04-23  Eric Blake  <ebb9@byu.net>
14017
14018         Improve memchr2 performance.
14019         * lib/memchr2.c (memchr2): Further optimize parallel detection of
14020         NUL bytes.
14021         * modules/memchr2 (Depends-on): Use intprops.h.
14022
14023 2008-04-23  Simon Josefsson  <simon@josefsson.org>
14024
14025         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
14026         an inline function instead of a CPP macro.  Patch by Ben Pfaff
14027         <blp@cs.stanford.edu>.
14028
14029 2008-04-23  Simon Josefsson  <simon@josefsson.org>
14030
14031         * lib/arpa_inet.in.h: New file.
14032
14033         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
14034         (Makefile.am): Sed in substitute header file.
14035
14036         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
14037         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
14038
14039         * modules/inet_ntop (configure.ac): Use
14040         gl_ARPA_INET_MODULE_INDICATOR.
14041
14042         * modules/inet_pton (configure.ac): Use
14043         gl_ARPA_INET_MODULE_INDICATOR.
14044
14045 2008-04-22  Jim Meyering  <meyering@redhat.com>
14046
14047         * modules/verify (License): Re-license as LGPLv2+.
14048
14049 2008-04-22  Simon Josefsson  <simon@josefsson.org>
14050
14051         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
14052         parameter to void* as per POSIX standard (MinGW uses char*).
14053
14054 2008-04-21  Bruno Haible  <bruno@clisp.org>
14055
14056         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
14057         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
14058         Define to replacements if REPLACE_ISWCNTRL is 1.
14059         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
14060         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
14061         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
14062         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
14063         what it fixes.
14064         * doc/posix-functions/iswalpha.texi: Likewise.
14065         * doc/posix-functions/iswblank.texi: Likewise.
14066         * doc/posix-functions/iswcntrl.texi: Likewise.
14067         * doc/posix-functions/iswdigit.texi: Likewise.
14068         * doc/posix-functions/iswgraph.texi: Likewise.
14069         * doc/posix-functions/iswlower.texi: Likewise.
14070         * doc/posix-functions/iswprint.texi: Likewise.
14071         * doc/posix-functions/iswpunct.texi: Likewise.
14072         * doc/posix-functions/iswspace.texi: Likewise.
14073         * doc/posix-functions/iswupper.texi: Likewise.
14074         * doc/posix-functions/iswxdigit.texi: Likewise.
14075         Reported by Alain Guibert.
14076
14077 2008-04-21  Bruno Haible  <bruno@clisp.org>
14078
14079         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
14080         Patch by Alain Guibert.
14081
14082 2008-04-21  Bruno Haible  <bruno@clisp.org>
14083
14084         Fix test failures on mingw.
14085         * tests/test-xstrtol.c (print_no_progname): New function.
14086         (main): Install it in error_print_progname hook.
14087         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
14088         * tests/test-xstrtoimax.sh: Likewise.
14089         * tests/test-xstrtoumax.sh: Likewise.
14090
14091 2008-04-21  Bruno Haible  <bruno@clisp.org>
14092
14093         Fix test failure on mingw.
14094         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
14095
14096 2008-04-21  Bruno Haible  <bruno@clisp.org>
14097
14098         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
14099         Actually assign a value.
14100
14101 2008-04-20  Bruno Haible  <bruno@clisp.org>
14102
14103         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
14104         take 2.
14105         * lib/canonicalize.c (canonicalize_file_name): Elide if the
14106         'canonicalize-lgpl' module is also used.
14107         * lib/canonicalize-lgpl.c: Undo last change.
14108         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
14109
14110 2008-04-20  Bruno Haible  <bruno@clisp.org>
14111
14112         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
14113         config.h. Provide _mkdir based fallback for mingw.
14114         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
14115         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
14116         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
14117         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
14118         rather than defining mkdir in config.h.
14119         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
14120         (gl_SYS_STAT_H_DEFAULTS): New macro.
14121         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
14122         HAVE_IO_H any more.
14123         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
14124         HAVE_DECL_MKDIR and HAVE_IO_H.
14125
14126 2008-04-20  Bruno Haible  <bruno@clisp.org>
14127
14128         * lib/isapipe.c: Port to native Windows platforms.
14129
14130 2008-04-20  Bruno Haible  <bruno@clisp.org>
14131
14132         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
14133
14134 2008-04-21  Eric Blake  <ebb9@byu.net>
14135
14136         Work around preprocessors that don't handle UINTMAX_MAX.
14137         * lib/memchr2.c (memchr2): Avoid embedded #if.
14138         Reported by Alain Guibert, fix suggested by Bruno Haible.
14139
14140 2008-04-21  Simon Josefsson  <simon@josefsson.org>
14141
14142         * doc/posix-functions/strftime.texi (strftime): Explain better
14143         Windows incompatibility.  Suggested by Micah Cowan
14144         <micah@cowan.name>.
14145
14146 2008-04-20  Bruno Haible  <bruno@clisp.org>
14147
14148         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
14149         unistr/u8-mblen.
14150
14151 2008-04-20  Bruno Haible  <bruno@clisp.org>
14152
14153         Fix test failure on platforms with non-GNU iconv.
14154         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
14155         (U_TO_U8): Use it, rather than u16_to_u8.
14156         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
14157         units at the end of the input string.
14158         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
14159
14160 2008-04-20  Bruno Haible  <bruno@clisp.org>
14161
14162         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
14163         when the resulting length is 0.
14164         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
14165
14166 2008-04-20  Bruno Haible  <bruno@clisp.org>
14167
14168         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
14169         works.
14170         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
14171
14172 2008-04-20  Bruno Haible  <bruno@clisp.org>
14173
14174         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
14175         * modules/tsearch-tests (configure.ac): Test for initstate function.
14176
14177 2008-04-20  Bruno Haible  <bruno@clisp.org>
14178
14179         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
14180         for nlink_t if missing.
14181         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
14182
14183 2008-04-19  Bruno Haible  <bruno@clisp.org>
14184
14185         Work around snprintf bug on Linux libc5.
14186         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
14187         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
14188         gl_SNPRINTF_SIZE1.
14189         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14190         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
14191         that test failed.
14192         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
14193         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
14194         * modules/snprintf (Files): Add m4/printf.m4.
14195         * modules/vsnprintf (Files): Likewise.
14196         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
14197         * doc/posix-functions/vsnprintf.texi: Likewise.
14198
14199 2008-04-19  Bruno Haible  <bruno@clisp.org>
14200
14201         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
14202         from 0.0058 to less than 10^-7.
14203
14204 2008-04-19  Bruno Haible  <bruno@clisp.org>
14205
14206         Fix rounding when a precision is given.
14207         * lib/vasnprintf.c (is_borderline): New function.
14208         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
14209         9...9x.
14210         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
14211         %e, %g.
14212         * tests/test-vasprintf-posix.c (test_function): Likewise.
14213         * tests/test-snprintf-posix.h (test_function): Likewise.
14214         * tests/test-sprintf-posix.h (test_function): Likewise.
14215         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
14216         * tests/test-printf-posix.h (test_function): Likewise.
14217         * tests/test-printf-posix.output: Update.
14218         Reported by John Darrington <john@darrington.wattle.id.au> via
14219         Ben Pfaff <blp@cs.stanford.edu>.
14220
14221 2008-04-18  Simon Josefsson  <simon@josefsson.org>
14222
14223         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
14224         Suggested by Bruno Haible <bruno@clisp.org>.
14225
14226 2008-04-17  Bruno Haible  <bruno@clisp.org>
14227
14228         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
14229         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
14230         implementation.
14231         Patch by Bruce Merry <bmerry@gmail.com>.
14232
14233 2008-04-17  Simon Josefsson  <simon@josefsson.org>
14234
14235         * doc/posix-functions/strftime.texi (strftime): Mention that %e
14236         doesn't work under Windows.
14237
14238 2008-04-16  Bruno Haible  <bruno@clisp.org>
14239
14240         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
14241         New macros.
14242         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
14243         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
14244         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
14245         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
14246         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
14247         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
14248         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
14249         macros.
14250         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
14251         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
14252         Northern Sotho, Uighur.
14253
14254 2008-04-16  Bruno Haible  <bruno@clisp.org>
14255
14256         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
14257         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
14258         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
14259         Reported by Daniel Bergström <daniel@octocode.com>.
14260
14261 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
14262             Bruno Haible  <bruno@clisp.org>
14263
14264         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
14265         function.
14266         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
14267         New functions, mostly extracted from gl_locale_name_default.
14268         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
14269
14270 2008-04-16  Eric Blake  <ebb9@byu.net>
14271
14272         Adjust strtod detection to catch glibc 2.7 bug.
14273         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
14274         Reported by John Gatewood Ham.
14275
14276 2008-04-16  Bruno Haible  <bruno@clisp.org>
14277
14278         Add tentative support for Linux libc5.
14279         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
14280         * lib/fpurge.c (fpurge): Likewise.
14281         * lib/freadable.c (freadable): Likewise.
14282         * lib/freadahead.c (freadahead): Likewise.
14283         * lib/freading.c (freading): Likewise.
14284         * lib/freadptr.c (freadptr): Likewise.
14285         * lib/freadseek.c (freadptrinc): Likewise.
14286         * lib/fseeko.c (rpl_fseeko): Likewise.
14287         * lib/fseterr.c (fseterr): Likewise.
14288         * lib/fwritable.c (fwritable): Likewise.
14289         * lib/fwriting.c (fwriting): Likewise.
14290         Reported by Alain Guibert <alguibert+bts@free.fr>.
14291
14292 2008-04-15  Bruno Haible  <bruno@clisp.org>
14293
14294         * modules/mathl (configure.ac): Define module indicator.
14295
14296 2008-04-15  Bruno Haible  <bruno@clisp.org>
14297
14298         * lib/logl.c (logl): Remove unused variables.
14299
14300 2008-04-15  Bruno Haible  <bruno@clisp.org>
14301
14302         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
14303         fails.
14304
14305 2008-04-15  Bruno Haible  <bruno@clisp.org>
14306
14307         * lib/trim.c (trim2): Fix argument of isspace() macro.
14308
14309 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
14310
14311         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
14312         to 0.
14313         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
14314
14315 2008-04-14  Bruno Haible  <bruno@clisp.org>
14316
14317         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
14318         AC_LANG_PROGRAM argument.
14319         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
14320         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
14321         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
14322         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
14323         * m4/math_h.m4 (gl_MATH_H): Likewise.
14324         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
14325         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
14326         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
14327         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
14328         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
14329         * m4/regex.m4 (gl_REGEX): Likewise.
14330         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
14331         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
14332         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
14333         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
14334         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
14335         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
14336         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
14337         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
14338
14339 2008-04-14  Jim Meyering  <meyering@redhat.com>
14340
14341         test-strtod: fix typos: s/abs/fabs/
14342         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
14343
14344 2008-04-13  Bruno Haible  <bruno@clisp.org>
14345
14346         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
14347         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
14348         module is also used and while not building the reloc-wrapper.
14349
14350 2008-04-13  Bruno Haible  <bruno@clisp.org>
14351
14352         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
14353
14354 2008-04-13  Bruno Haible  <bruno@clisp.org>
14355
14356         Fix AIX compilation failure introduced on 2008-04-02.
14357         * tests/test-frexp.c (exp): Undefine before redefining.
14358         * tests/test-frexpl.c (exp): Likewise.
14359
14360 2008-04-13  Bruno Haible  <bruno@clisp.org>
14361
14362         Work around a HP-UX stdio bug.
14363         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
14364         * tests/test-ftello.c (main): Likewise.
14365         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
14366         * doc/posix-functions/ftello.texi: Likewise.
14367
14368 2008-04-13  Bruno Haible  <bruno@clisp.org>
14369
14370         Make test-signbit pass on HP-UX/hppa.
14371         * tests/test-signbit.c (minus_zerol): New variable.
14372         (test_signbitl): Use it.
14373
14374 2008-04-13  Bruno Haible  <bruno@clisp.org>
14375
14376         Make truncl work on OSF/1 4.0.
14377         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
14378         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
14379         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
14380         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
14381         HAVE_DECL_TRUNCL.
14382         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
14383         HAVE_DECL_TRUNCL.
14384         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
14385
14386 2008-04-13  Bruno Haible  <bruno@clisp.org>
14387
14388         * lib/unictype.h: Remove trailing comma from enumeration definitions.
14389
14390 2008-04-13  Bruno Haible  <bruno@clisp.org>
14391
14392         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
14393         expression, so as to avoid HP-UX 11 cc compiler bug.
14394
14395 2008-04-13  Bruno Haible  <bruno@clisp.org>
14396
14397         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
14398
14399 2008-04-13  Bruno Haible  <bruno@clisp.org>
14400
14401         * lib/git-merge-changelog.c: Remove empty declaration outside of
14402         functions.
14403
14404 2008-04-13  Bruno Haible  <bruno@clisp.org>
14405
14406         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
14407
14408 2008-04-13  Bruno Haible  <bruno@clisp.org>
14409
14410         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
14411         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
14412         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
14413         also if it exists but lacks definitions of the SHUT_* macros.
14414         * modules/sys_socket (Description): Update.
14415         Reported by Elbert Pol <e.pol@chello.nl>.
14416
14417 2008-04-13  Bruno Haible  <bruno@clisp.org>
14418
14419         * lib/localcharset.c (OS2): Don't redefine if already defined.
14420         Reported by Elbert Pol <e.pol@chello.nl>.
14421
14422 2008-04-13  Bruno Haible  <bruno@clisp.org>
14423
14424         * lib/binary-io.h [__EMX__]: Include <io.h>.
14425         Reported by Elbert Pol <e.pol@chello.nl>.
14426
14427 2008-04-12  Bruno Haible  <bruno@clisp.org>
14428
14429         * lib/fpucw.h: Enable the definitions also for x86_64.
14430         Needed for NetBSD/x86_64.
14431         Reported by Thomas Klausner <tk@giga.or.at>.
14432
14433 2008-04-12  Bruno Haible  <bruno@clisp.org>
14434
14435         * tests/test-strtod.c: Include isnand.h.
14436         (main): Use isnand instead of isnan.
14437         Reported by Jim Meyering.
14438
14439 2008-04-12  Bruno Haible  <bruno@clisp.org>
14440
14441         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
14442         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
14443
14444 2008-04-12  Jim Meyering  <meyering@redhat.com>
14445
14446         * m4/math_h.m4 (gl_MATH_H): Fix typos.
14447
14448 2008-04-12  Bruno Haible  <bruno@clisp.org>
14449
14450         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
14451         Reported by Elbert Pol <e.pol@chello.nl>.
14452
14453 2008-04-12  Eric Blake  <ebb9@byu.net>
14454
14455         Work around Solaris 10 math.h bug.
14456         * m4/math_h.m4 (gl_MATH_H): Check for bug.
14457         (gl_MATH_H_DEFAULTS): Set up default.
14458         * modules/math (Makefile.am): Replace new indicators.
14459         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
14460         * tests/test-math.c (main): Test this.
14461         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
14462         * doc/posix-headers/math.texi (math.h): Mention bug.
14463         Reported by Nelson H. F. Beebe and Jim Meyering.
14464
14465 2008-04-11  Bruno Haible  <bruno@clisp.org>
14466
14467         Adapt to future versions of Apple GCC.
14468         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
14469         Reported by Peter O'Gorman <peter@pogma.com>.
14470
14471 2008-04-11  Bruno Haible  <bruno@clisp.org>
14472
14473         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
14474
14475 2008-04-11  Bruno Haible  <bruno@clisp.org>
14476
14477         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
14478
14479         * modules/getaddrinfo-tests (Makefile.am): Define
14480         test_getaddrinfo_LDADD.
14481
14482 2008-04-11  Bruno Haible  <bruno@clisp.org>
14483
14484         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
14485         (init): Fix syntax error.
14486         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
14487         is declared.
14488
14489 2008-04-11  Bruno Haible  <bruno@clisp.org>
14490
14491         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
14492         * modules/glob (Depends-on): Add stdbool.
14493
14494 2008-04-11  Bruno Haible  <bruno@clisp.org>
14495
14496         * lib/trim.c: Include <string.h>.
14497
14498 2008-04-11  Eric Blake  <ebb9@byu.net>
14499
14500         Avoid compile failure on OS/2.
14501         * lib/regex_internal.h (internal_function): Disable optimization
14502         on OS/2 (__EMX__), where it caused compiler error.
14503         Reported by Elbert Pol.
14504
14505 2008-04-11  Bruno Haible  <bruno@clisp.org>
14506
14507         Flush the standard error stream before aborting. Needed on mingw.
14508         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
14509         * tests/test-array_list.c (ASSERT): Likewise.
14510         * tests/test-array_oset.c (ASSERT): Likewise.
14511         * tests/test-avltree_list.c (ASSERT): Likewise.
14512         * tests/test-avltree_oset.c (ASSERT): Likewise.
14513         * tests/test-avltreehash_list.c (ASSERT): Likewise.
14514         * tests/test-binary-io.c (ASSERT): Likewise.
14515         * tests/test-byteswap.c (ASSERT): Likewise.
14516         * tests/test-c-ctype.c (ASSERT): Likewise.
14517         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
14518         * tests/test-c-strcasestr.c (ASSERT): Likewise.
14519         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
14520         * tests/test-c-strstr.c (ASSERT): Likewise.
14521         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
14522         * tests/test-canonicalize.c (ASSERT): Likewise.
14523         * tests/test-carray_list.c (ASSERT): Likewise.
14524         * tests/test-ceilf1.c (ASSERT): Likewise.
14525         * tests/test-ceilf2.c (ASSERT): Likewise.
14526         * tests/test-ceill.c (ASSERT): Likewise.
14527         * tests/test-count-one-bits.c (ASSERT): Likewise.
14528         * tests/test-fbufmode.c (ASSERT): Likewise.
14529         * tests/test-fflush2.c (ASSERT): Likewise.
14530         * tests/test-floorf1.c (ASSERT): Likewise.
14531         * tests/test-floorf2.c (ASSERT): Likewise.
14532         * tests/test-floorl.c (ASSERT): Likewise.
14533         * tests/test-fopen.c (ASSERT): Likewise.
14534         * tests/test-fpending.c (ASSERT): Likewise.
14535         * tests/test-fprintf-posix.c (ASSERT): Likewise.
14536         * tests/test-fpurge.c (ASSERT): Likewise.
14537         * tests/test-freadable.c (ASSERT): Likewise.
14538         * tests/test-freadahead.c (ASSERT): Likewise.
14539         * tests/test-freading.c (ASSERT): Likewise.
14540         * tests/test-freadptr.c (ASSERT): Likewise.
14541         * tests/test-freadptr2.c (ASSERT): Likewise.
14542         * tests/test-freadseek.c (ASSERT): Likewise.
14543         * tests/test-freopen.c (ASSERT): Likewise.
14544         * tests/test-frexp.c (ASSERT): Likewise.
14545         * tests/test-frexpl.c (ASSERT): Likewise.
14546         * tests/test-fseek.c (ASSERT): Likewise.
14547         * tests/test-fseeko.c (ASSERT): Likewise.
14548         * tests/test-fstrcmp.c (ASSERT): Likewise.
14549         * tests/test-ftell.c (ASSERT): Likewise.
14550         * tests/test-ftello.c (ASSERT): Likewise.
14551         * tests/test-func.c (ASSERT): Likewise.
14552         * tests/test-fwritable.c (ASSERT): Likewise.
14553         * tests/test-fwriting.c (ASSERT): Likewise.
14554         * tests/test-getdelim.c (ASSERT): Likewise.
14555         * tests/test-getline.c (ASSERT): Likewise.
14556         * tests/test-i-ring.c (ASSERT): Likewise.
14557         * tests/test-iconv-utf.c (ASSERT): Likewise.
14558         * tests/test-iconv.c (ASSERT): Likewise.
14559         * tests/test-isfinite.c (ASSERT): Likewise.
14560         * tests/test-isnand.c (ASSERT): Likewise.
14561         * tests/test-isnanf.c (ASSERT): Likewise.
14562         * tests/test-isnanl.h (ASSERT): Likewise.
14563         * tests/test-ldexpl.c (ASSERT): Likewise.
14564         * tests/test-linked_list.c (ASSERT): Likewise.
14565         * tests/test-linkedhash_list.c (ASSERT): Likewise.
14566         * tests/test-localename.c (ASSERT): Likewise.
14567         * tests/test-lseek.c (ASSERT): Likewise.
14568         * tests/test-mbscasecmp.c (ASSERT): Likewise.
14569         * tests/test-mbscasestr1.c (ASSERT): Likewise.
14570         * tests/test-mbscasestr2.c (ASSERT): Likewise.
14571         * tests/test-mbscasestr3.c (ASSERT): Likewise.
14572         * tests/test-mbscasestr4.c (ASSERT): Likewise.
14573         * tests/test-mbschr.c (ASSERT): Likewise.
14574         * tests/test-mbscspn.c (ASSERT): Likewise.
14575         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
14576         * tests/test-mbspbrk.c (ASSERT): Likewise.
14577         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
14578         * tests/test-mbsrchr.c (ASSERT): Likewise.
14579         * tests/test-mbsspn.c (ASSERT): Likewise.
14580         * tests/test-mbsstr1.c (ASSERT): Likewise.
14581         * tests/test-mbsstr2.c (ASSERT): Likewise.
14582         * tests/test-mbsstr3.c (ASSERT): Likewise.
14583         * tests/test-memchr2.c (ASSERT): Likewise.
14584         * tests/test-memmem.c (ASSERT): Likewise.
14585         * tests/test-open.c (ASSERT): Likewise.
14586         * tests/test-printf-frexp.c (ASSERT): Likewise.
14587         * tests/test-printf-frexpl.c (ASSERT): Likewise.
14588         * tests/test-printf-posix.c (ASSERT): Likewise.
14589         * tests/test-quotearg.c (ASSERT): Likewise.
14590         * tests/test-rbtree_list.c (ASSERT): Likewise.
14591         * tests/test-rbtree_oset.c (ASSERT): Likewise.
14592         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
14593         * tests/test-round1.c (ASSERT): Likewise.
14594         * tests/test-roundf1.c (ASSERT): Likewise.
14595         * tests/test-roundl.c (ASSERT): Likewise.
14596         * tests/test-signbit.c (ASSERT): Likewise.
14597         * tests/test-sleep.c (ASSERT): Likewise.
14598         * tests/test-snprintf-posix.c (ASSERT): Likewise.
14599         * tests/test-snprintf.c (ASSERT): Likewise.
14600         * tests/test-sprintf-posix.c (ASSERT): Likewise.
14601         * tests/test-stat-time.c (ASSERT): Likewise.
14602         * tests/test-strcasestr.c (ASSERT): Likewise.
14603         * tests/test-strerror.c (ASSERT): Likewise.
14604         * tests/test-striconv.c (ASSERT): Likewise.
14605         * tests/test-striconveh.c (ASSERT): Likewise.
14606         * tests/test-striconveha.c (ASSERT): Likewise.
14607         * tests/test-strsignal.c (ASSERT): Likewise.
14608         * tests/test-strstr.c (ASSERT): Likewise.
14609         * tests/test-strtod.c (ASSERT): Likewise.
14610         * tests/test-trunc1.c (ASSERT): Likewise.
14611         * tests/test-trunc2.c (ASSERT): Likewise.
14612         * tests/test-truncf1.c (ASSERT): Likewise.
14613         * tests/test-truncf2.c (ASSERT): Likewise.
14614         * tests/test-truncl.c (ASSERT): Likewise.
14615         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
14616         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
14617         * tests/test-vasnprintf.c (ASSERT): Likewise.
14618         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
14619         * tests/test-vasprintf.c (ASSERT): Likewise.
14620         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
14621         * tests/test-vprintf-posix.c (ASSERT): Likewise.
14622         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
14623         * tests/test-vsnprintf.c (ASSERT): Likewise.
14624         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
14625         * tests/test-wcwidth.c (ASSERT): Likewise.
14626         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
14627         * tests/test-xprintf-posix.c (ASSERT): Likewise.
14628         * tests/test-xvasprintf.c (ASSERT): Likewise.
14629         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
14630         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
14631         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
14632         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
14633         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
14634         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
14635         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
14636         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
14637         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
14638         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
14639         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
14640         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
14641         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
14642         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
14643         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
14644         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
14645         * tests/unictype/test-block_list.c (ASSERT): Likewise.
14646         * tests/unictype/test-block_of.c (ASSERT): Likewise.
14647         * tests/unictype/test-block_test.c (ASSERT): Likewise.
14648         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
14649         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
14650         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
14651         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
14652         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
14653         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
14654         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
14655         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
14656         * tests/unictype/test-combining.c (ASSERT): Likewise.
14657         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
14658         * tests/unictype/test-digit.c (ASSERT): Likewise.
14659         * tests/unictype/test-mirror.c (ASSERT): Likewise.
14660         * tests/unictype/test-numeric.c (ASSERT): Likewise.
14661         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
14662         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
14663         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
14664         * tests/unictype/test-scripts.c (ASSERT): Likewise.
14665         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
14666         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
14667         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
14668         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
14669         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
14670         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
14671         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
14672         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
14673         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
14674         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
14675         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
14676         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
14677         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
14678         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
14679         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
14680         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
14681         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
14682         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
14683         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
14684         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
14685         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
14686         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
14687         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
14688         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
14689         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
14690         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
14691         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
14692         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
14693         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
14694         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
14695         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
14696         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
14697         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
14698         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
14699         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
14700         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
14701         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
14702         Reported by Eric Blake.
14703
14704 2008-04-11  Bruno Haible  <bruno@clisp.org>
14705
14706         * lib/wchar.in.h: Tweak comment.
14707
14708 2008-04-11  Bruno Haible  <bruno@clisp.org>
14709
14710         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
14711         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
14712         gl_COMMON.
14713         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
14714
14715 2008-04-11  Bruno Haible  <bruno@clisp.org>
14716
14717         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
14718
14719 2008-04-11  Simon Josefsson  <simon@josefsson.org>
14720
14721         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
14722         of attempting to use non-existing /dev/*random.  Based on patch
14723         from Adam Strzelecki <ono@java.pl> in
14724         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
14725
14726 2008-04-08  Bruno Haible  <bruno@clisp.org>
14727
14728         Add tentative support for emx+gcc.
14729         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
14730         * lib/fpurge.c (fpurge): Likewise.
14731         * lib/freadable.c (freadable): Likewise.
14732         * lib/freadahead.c (freadahead): Likewise.
14733         * lib/freading.c (freading): Likewise.
14734         * lib/freadptr.c (freadptr): Likewise.
14735         * lib/freadseek.c (freadptrinc): Likewise.
14736         * lib/fseeko.c (rpl_fseeko): Likewise.
14737         * lib/fseterr.c (fseterr): Likewise.
14738         * lib/fwritable.c (fwritable): Likewise.
14739         * lib/fwriting.c (fwriting): Likewise.
14740         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
14741
14742 2008-04-09  Eric Blake  <ebb9@byu.net>
14743
14744         Avoid some autoconf warnings.
14745         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
14746         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
14747         * m4/afs.m4 (gl_AFS): Likewise.
14748         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
14749         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
14750         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
14751         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
14752         (gl_INTEGER_TYPE_SUFFIX): Likewise.
14753         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
14754         (AC_CHECK_DECLS_ONCE): Likewise.
14755         Rename file...
14756         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
14757         gnulib-tool requires autoconf 2.59 or better.
14758         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
14759
14760 2008-04-08  Eric Blake  <ebb9@byu.net>
14761
14762         Use 'git describe --match' if present (added in git 1.5.5).
14763         * build-aux/git-version-gen: Limit result to tags that match 'v*'
14764         if possible.
14765
14766 2008-04-08  Bruno Haible  <bruno@clisp.org>
14767
14768         Add tentative support for OpenServer.
14769         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
14770         _ptr, _cnt.
14771         * lib/fpurge.c (fpurge): Likewise.
14772         * lib/freadable.c (freadable): Likewise.
14773         * lib/freadahead.c (freadahead): Likewise.
14774         * lib/freading.c (freading): Likewise.
14775         * lib/freadptr.c (freadptr): Likewise.
14776         * lib/freadseek.c (freadptrinc): Likewise.
14777         * lib/fseeko.c (rpl_fseeko): Likewise.
14778         * lib/fseterr.c (fseterr): Likewise.
14779         * lib/fwritable.c (fwritable): Likewise.
14780         * lib/fwriting.c (fwriting): Likewise.
14781         Reported by Roger Cornelius <rac@tenzing.org> and
14782         Brian K. White <brian@aljex.com>.
14783
14784 2008-04-06  Jim Meyering  <meyering@redhat.com>
14785
14786         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
14787
14788 2008-04-06  Bruno Haible  <bruno@clisp.org>
14789
14790         Avoid possible error with non-ASCII bytes in UTF-8 locales.
14791         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
14792         * tests/test-printf-posix.sh: Likewise.
14793         * tests/test-vfprintf-posix.sh: Likewise.
14794         * tests/test-vprintf-posix.sh: Likewise.
14795         * tests/test-xprintf-posix.sh: Likewise.
14796
14797 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14798
14799         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
14800         hide error from 'ls', needed on OS/2.
14801         Report by Elbert Pol <elbert.pol@gmail.com>.
14802
14803 2008-04-04  Eric Blake  <ebb9@byu.net>
14804
14805         Make test-fseeko.c failures meaningful.
14806         * tests/test-fseeko.c: Print line number on failure.
14807         * tests/test-fseek.c: Likewise.
14808         Reported by Nelson H. F. Beebe.
14809
14810         Improve strtod bug detection check.
14811         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
14812         required for Solaris 10.
14813         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
14814
14815 2008-04-04  Bruno Haible  <bruno@clisp.org>
14816
14817         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
14818         by m4/setenv.m4.
14819
14820 2008-04-03  Eric Blake  <ebb9@byu.net>
14821
14822         Ensure sane .version contents.
14823         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
14824         version string.
14825         * build-aux/git-version-gen: Improve documentation.
14826
14827         Make GNU make output nicer.
14828         * top/GNUmakefile [!_have-Makefile]: Add dependency on
14829         MAKECMDGOALS to enforce message for all command line targets.  Set
14830         srcdir for use in maint.mk.
14831
14832         Another maintainer tweak.
14833         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
14834         a target that regenerates version.
14835
14836 2008-04-03  Jim Meyering  <meyering@redhat.com>
14837
14838         vc-list-files: don't cause coreutils "make po-check" failure
14839         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
14840
14841 2008-04-03  Eric Blake  <ebb9@byu.net>
14842
14843         Allow VPATH usage of vc-list-files.
14844         * build-aux/vc-list-files (scriptversion): Add timestamp.
14845         (options): Add --help, --version, -C.
14846         (CVS): Support installed cvsu.
14847
14848 2008-04-02  Bruno Haible  <bruno@clisp.org>
14849
14850         Avoid some "statement with no effect" warnings from gcc.
14851         * tests/test-wctype.c (main): Explicitly ignore unused values.
14852         Reported by Jim Meyering.
14853
14854 2008-04-02  Jim Meyering  <meyering@redhat.com>
14855
14856         Avoid some warnings from "gcc -Wshadow".
14857         * tests/test-frexp.c (exp): Define to a different identifier.
14858         * tests/test-frexpl.c (exp): Likewise.
14859
14860 2008-04-03  Jim Meyering  <meyering@redhat.com>
14861
14862         bootstrap: remove dangling *.[ch] symlinks from lib
14863         * build-aux/bootstrap [dangling symlink removal]: Move find's
14864         -depth option to precede all others, to avoid a warning.
14865         Remove *.[ch] files too, and from "$source_base" (usually lib/).
14866
14867 2008-04-02  Bruno Haible  <bruno@clisp.org>
14868
14869         Avoid some warnings from "gcc -Wshadow".
14870         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
14871         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
14872         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
14873         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
14874         Reported by Jim Meyering.
14875
14876 2008-04-01  Bruno Haible  <bruno@clisp.org>
14877
14878         Fix test to work on IRIX 6.5 with cc.
14879         * tests/test-math.c (numeric_equal): New function.
14880         (main): Use it.
14881
14882 2008-04-01  Bruno Haible  <bruno@clisp.org>
14883
14884         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
14885
14886 2008-04-01  Bruno Haible  <bruno@clisp.org>
14887
14888         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
14889         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
14890         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
14891         (Depends-on): Remove math.
14892
14893         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
14894         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
14895         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
14896         (Depends-on): Remove math.
14897
14898         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
14899         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
14900         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
14901         (Depends-on): Remove math.
14902         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
14903         (Depends-on): Remove math.
14904
14905         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
14906         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
14907         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
14908         (Depends-on): Remove math.
14909         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
14910         (Depends-on): Remove math.
14911
14912         * tests/test-round1.c: Include nan.h.
14913         (main): Use NaNd instead of NAN.
14914         * modules/round-tests (Files): Add tests/nan.h.
14915
14916         * tests/test-trunc1.c: Include nan.h.
14917         (main): Use NaNd instead of NAN.
14918         * modules/trunc-tests (Files): Add tests/nan.h.
14919
14920         * tests/test-roundf1.c: Include nan.h.
14921         (main): Use NaNf instead of NAN.
14922         * modules/roundf-tests (Files): Add tests/nan.h.
14923
14924         * tests/test-truncf1.c: Include nan.h.
14925         (main): Use NaNf instead of NAN.
14926         * modules/truncf-tests (Files): Add tests/nan.h.
14927
14928         * tests/test-ceilf1.c: Include nan.h.
14929         (main): Use NaNf instead of NAN.
14930         * modules/ceilf-tests (Files): Add tests/nan.h.
14931
14932         * tests/test-floorf1.c: Include nan.h.
14933         (main): Use NaNf instead of NAN.
14934         * modules/floorf-tests (Files): Add tests/nan.h.
14935
14936         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
14937         (main): Use NaNf instead of NAN.
14938         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
14939
14940         * tests/test-isnand.c: Include nan.h instead of <math.h>.
14941         (main): Use NaNd instead of NAN.
14942         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
14943
14944         * tests/test-frexp.c: Include nan.h.
14945         (main): Use NaNd instead of NAN.
14946         * modules/frexp-tests (Files): Add tests/nan.h.
14947
14948         * lib/isnan.c: Don't include <math.h>.
14949         (FUNC): Don't use NAN macro.
14950         * modules/isnand-nolibm (Depends-on): Remove math.
14951         * modules/isnanf-nolibm (Depends-on): Remove math.
14952         * modules/isnanl (Depends-on): Remove math.
14953         * modules/isnanl-nolibm (Depends-on): Remove math.
14954
14955         * tests/nan.h: New file.
14956
14957 2008-04-01  Eric Blake  <ebb9@byu.net>
14958
14959         Fix typos.
14960         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
14961         values to be the right type.
14962
14963         For now, cater to gnulib strtod inaccuracies.
14964         * tests/test-strtod.c (main): Allow 1-ulp error on expected
14965         fractional results.  While not as nice from a QoI perspective, it
14966         is a quicker patch than correctly implementing decimal to binary
14967         rounding.
14968
14969 2008-03-31  Eric Blake  <ebb9@byu.net>
14970
14971         Guarantee a definition of NAN.
14972         * lib/math.in.h (NAN): Define if missing.
14973         * tests/test-math.c (main): Test it.
14974         * doc/posix-headers/math.texi (math.h): Document this.
14975         * lib/isnan.c (rpl_isnand): Use it.
14976         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
14977         * tests/test-floorf1.c (NaN): Likewise.
14978         * tests/test-frexp.c (NaN): Likewise.
14979         * tests/test-isnand.c (NaN): Likewise.
14980         * tests/test-isnanf.c (NaN): Likewise.
14981         * tests/test-round1.c (NaN): Likewise.
14982         * tests/test-roundf1.c (NaN): Likewise.
14983         * tests/test-snprintf-posix.h (NaN): Likewise.
14984         * tests/test-sprintf-posix.h (NaN): Likewise.
14985         * tests/test-trunc1.c (NaN): Likewise.
14986         * tests/test-truncf1.c (NaN): Likewise.
14987         * tests/test-vasnprintf-posix.c (NaN): Likewise.
14988         * tests/test-vasprintf-posix.c (NaN): Likewise.
14989         * modules/isnand-nolibm (Depends-on): Add math.
14990         * modules/isnanf-nolibm (Depends-on): Likewise.
14991         * modules/isnanl (Depends-on): Likewise.
14992         * modules/isnanl-nolibm (Depends-on): Likewise.
14993         * modules/snprintf-posix-tests (Depends-on): Likewise.
14994         * modules/sprintf-posix-tests (Depends-on): Likewise.
14995         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
14996         * modules/vsprintf-posix-tests (Depends-on): Likewise.
14997         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
14998         * modules/vasprintf-posix-tests (Depends-on): Likewise.
14999
15000 2008-03-31  Bruno Haible  <bruno@clisp.org>
15001
15002         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
15003         * doc/posix-functions/strtod.texi: Likewise.
15004
15005 2008-03-31  Bruno Haible  <bruno@clisp.org>
15006
15007         * tests/test-strtod.c (main): Don't use C99 syntax.
15008
15009 2008-03-31  Bruno Haible  <bruno@clisp.org>
15010
15011         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
15012         Reported by Eric Blake.
15013
15014 2008-03-31  Jim Meyering  <meyering@redhat.com>
15015
15016         Don't compare actual signbit return values.
15017         * tests/test-strtod.c (main): Rather, compare only their
15018         zero/non-zero nature.
15019
15020 2008-03-31  Eric Blake  <ebb9@byu.net>
15021
15022         More strtod documentation.
15023         * doc/posix-functions/strtod.texi (strtod): Interpret more test
15024         failures as distinct bugs.
15025
15026 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
15027
15028         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
15029         Problem reported by Erik Benada in
15030         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
15031
15032 2008-03-30  Bruno Haible  <bruno@clisp.org>
15033
15034         * tests/test-strtod.c: Add comments about which assertion fails on which
15035         platform.
15036         * doc/posix-functions/strtod.texi: Add info about many more platforms.
15037
15038 2008-03-30  Eric Blake  <ebb9@byu.net>
15039
15040         Test signbit behavior on zeros.
15041         * tests/test-signbit.c (test_signbitf): Add tests for zero.
15042         (test_signbitd, test_signbitl): Likewise.
15043
15044         More strtod touchups.
15045         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
15046         sign of negative underflow, for now.  Use .5, not .1.
15047         * doc/posix-functions/strtod.texi (strtod): Mention these
15048         limitations.
15049         Reported by Jim Meyering.
15050
15051 2008-03-30  Bruno Haible  <bruno@clisp.org>
15052
15053         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
15054         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
15055
15056 2008-03-30  Bruno Haible  <bruno@clisp.org>
15057
15058         Avoid failure when attempting to return empty iconv results on some
15059         platforms.
15060         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
15061         allocation, don't report ENOMEM when the resulting string is empty.
15062
15063 2008-03-30  Bruno Haible  <bruno@clisp.org>
15064
15065         Fix buffer overrun.
15066         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
15067         Don't consider the width for tmp_length. Check count against tmp_length
15068         before doing the padding. Ensure enough allocation during padding.
15069
15070 2008-03-30  Eric Blake  <ebb9@byu.net>
15071
15072         strtod touchups.
15073         * lib/strtod.c (strtod): Avoid compiler warnings.
15074         Reported by Jim Meyering.
15075
15076 2008-03-30  Bruno Haible  <bruno@clisp.org>
15077
15078         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
15079         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
15080         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
15081         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
15082         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
15083         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
15084         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
15085         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
15086
15087         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
15088         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
15089         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
15090         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
15091         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
15092         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
15093         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
15094         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
15095
15096         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
15097         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
15098         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
15099         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
15100         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
15101         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
15102         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
15103         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
15104
15105         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
15106         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
15107
15108         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
15109         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
15110
15111         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
15112         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
15113
15114         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
15115         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
15116         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
15117
15118         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
15119         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
15120         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
15121
15122         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
15123         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
15124         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
15125
15126         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
15127         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
15128         * modules/vasprintf (Depends-on): Add EOVERFLOW.
15129
15130         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
15131         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
15132         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
15133         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
15134         (Depends-on): Add EOVERFLOW.
15135         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
15136         (Depends-on): Add EOVERFLOW.
15137         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
15138         (Depends-on): Add EOVERFLOW.
15139         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
15140         (Depends-on): Add EOVERFLOW.
15141         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
15142         (Depends-on): Add EOVERFLOW.
15143         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
15144         (Depends-on): Add EOVERFLOW.
15145         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
15146         (Depends-on): Add EOVERFLOW.
15147         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
15148         (Depends-on): Add EOVERFLOW.
15149
15150         * lib/sprintf.c (EOVERFLOW): Remove fallback.
15151         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
15152         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
15153
15154         * lib/snprintf.c (EOVERFLOW): Remove fallback.
15155         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
15156         * modules/snprintf (Depends-on): Add EOVERFLOW.
15157
15158         * lib/poll.c (EOVERFLOW): Remove fallback.
15159         * modules/poll (Depends-on): Add EOVERFLOW.
15160
15161         * lib/getugroups.c (EOVERFLOW): Remove fallback.
15162         * modules/getugroups (Depends-on): Add EOVERFLOW.
15163
15164         * lib/getdelim.c (EOVERFLOW): Remove fallback.
15165         * modules/getdelim (Depends-on): Add EOVERFLOW.
15166
15167         * lib/ftell.c (EOVERFLOW): Remove fallback.
15168         * modules/ftell (Depends-on): Add EOVERFLOW.
15169
15170         * lib/fprintf.c (EOVERFLOW): Remove fallback.
15171         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
15172         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
15173
15174         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
15175
15176         * modules/EOVERFLOW-tests: New file.
15177         * tests/test-EOVERFLOW.c: New file.
15178
15179         * modules/EOVERFLOW: New file.
15180         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
15181
15182 2008-03-30  Bruno Haible  <bruno@clisp.org>
15183
15184         Fix bug introduced on 2007-06-10.
15185         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
15186         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
15187
15188 2008-03-30  Bruno Haible  <bruno@clisp.org>
15189
15190         Improve freadseek's efficiency after ungetc.
15191         * lib/freadseek.c: Include freadahead.h.
15192         (freadptrinc): New function, extracted from freadseek.
15193         (freadseek): Use it in a loop. Use freadahead to determine the number
15194         of loop iterations.
15195         * modules/freadseek (Depends-on): Add freadahead.
15196         (configure.ac): Require AC_C_INLINE.
15197
15198 2008-03-30  Bruno Haible  <bruno@clisp.org>
15199
15200         * lib/freadseek.c (freadseek): Don't ignore the return value of
15201         freadptr.
15202
15203 2008-03-29  Eric Blake  <ebb9@byu.net>
15204
15205         Add hex float support.
15206         * modules/strtod (Depends-on): Add c-ctype.
15207         (Link): Mention POW_LIB.
15208         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
15209         whitespace between 'e' and exponent.
15210         * tests/test-strtod.c (main): Enable hex float tests.
15211         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
15212         now provides.
15213
15214         Document various strtod bugs, with some fixes.
15215         * doc/posix-functions/strtod.texi (strtod): Document bugs with
15216         "-0x", "inf", "nan", and hex constants.
15217         * doc/posix-functions/atof.texi (atof): Likewise.
15218         * modules/stdlib (Makefile.am): Support strtod.
15219         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
15220         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
15221         detect additional strtod bugs.
15222         * lib/stdlib.in.h (rpl_strtod): Add declarations.
15223         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
15224         bool where appropriate.  Parse 'inf' and 'nan'.
15225         * tests/test-strtod.c: New file.
15226         * modules/strtod (Depends-on): Add stdbool, stdlib.
15227         (configure.ac): Turn on module indicator.
15228         * modules/strtod-tests: New module.
15229
15230 2008-03-29  Eric Blake  <ebb9@byu.net>
15231
15232         Fix ftell on mingw.
15233         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
15234         * modules/ftell-tests (Depends-on): Add binary-io.
15235         * modules/ftello-tests (Depends-on): Likewise.
15236         * tests/test-ftell.c (main): Enhance test to cover behavior after
15237         ungetc.  Enforce binary mode.
15238         * tests/test-ftello.c (main): Likewise.
15239
15240         Pass test-freadseek on cygwin.
15241         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
15242         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
15243         ungetc buffer.
15244
15245         * tests/test-fflush2.c (main): Fix typo.
15246
15247 2008-03-29  Bruno Haible  <bruno@clisp.org>
15248
15249         * tests/test-fflush2.c (main): Temporarily disable the contents of
15250         this test.
15251         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
15252         Reported by Eric Blake.
15253
15254 2008-03-28  Simon Josefsson  <simon@josefsson.org>
15255
15256         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
15257         (GC_SHA224_DIGEST_SIZE): Add.
15258
15259         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
15260         (gc_hash_digest_length): Likewise.
15261         (gc_hash_buffer): Likewise.
15262
15263 2008-03-25  Bruno Haible  <bruno@clisp.org>
15264
15265         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
15266         detail which gettext release to use.
15267         Reported by Simon Josefsson.
15268
15269 2008-03-26  Jim Meyering  <meyering@redhat.com>
15270
15271         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
15272         * modules/gnumakefile (clean-GNUmakefile): Also, use
15273         test ... && ... || : syntax rather than if-then ... fi.
15274
15275         gnumakefile: Don't double-quote-expand $(VPATH) value.
15276         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
15277
15278 2008-03-24  Eric Blake  <ebb9@byu.net>
15279
15280         Alter GNUmakefile to install into top directory.
15281         * modules/maintainer-makefile: Split, and add dependency...
15282         * modules/gnumakefile: to this new module.
15283         * build-aux/GNUmakefile: Move...
15284         * top/GNUmakefile: ...here.
15285         * build-aux/maint.mk: Move...
15286         * top/maint.mk: ...here.
15287         * MODULES.html.sh (Support for maintaining...): Document new
15288         module.
15289
15290 2008-03-23  Bruno Haible  <bruno@clisp.org>
15291
15292         * gnulib-tool: New options --vc-files, --no-vc-files.
15293         (func_usage): Document them.
15294         (vc_files): New variable.
15295         (func_import): Consider vc_files.
15296         (func_create_testdir): Set vc_files to empty.
15297         Suggested by Jim Meyering and Karl Berry.
15298
15299 2008-03-23  Bruno Haible  <bruno@clisp.org>
15300
15301         Fix regex compilation error on HP-UX 11.
15302         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
15303         * modules/regex (Files): Add m4/mbstate_t.m4.
15304         Reported by Ton Voon <ton.voon@altinity.com>.
15305
15306 2008-03-23  Bruno Haible  <bruno@clisp.org>
15307
15308         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
15309
15310 2008-03-23  Eric Blake  <ebb9@byu.net>
15311             Bruno Haible  <bruno@clisp.org>
15312
15313         Install files from top/ in the destination directory.
15314         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
15315         augmentation also for the files from top/.
15316         (func_import, func_create_testdir): Rewrite file names:
15317         top/filename -> filename.
15318
15319 2008-03-23  Bruno Haible  <bruno@clisp.org>
15320
15321         Tweak "gnulib --version" output.
15322         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
15323
15324 2008-03-23  Bruno Haible  <bruno@clisp.org>
15325
15326         Tweak "gnulib --version" output.
15327         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
15328         rather than contents of ChangeLog, when possible.
15329
15330 2008-03-21  Eric Blake  <ebb9@byu.net>
15331
15332         More --version tweaks.
15333         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
15334         date of last ChangeLog entry.
15335
15336 2008-03-21  Jim Meyering  <meyering@redhat.com>
15337
15338         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
15339
15340 2008-03-20  Eric Blake  <ebb9@byu.net>
15341
15342         VPATH fix.
15343         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
15344
15345 2008-03-20  Simon Josefsson  <simon@josefsson.org>
15346
15347         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
15348         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
15349
15350 2008-03-20  Eric Blake  <ebb9@byu.net>
15351
15352         Sync GNUmakefile with coreutils.
15353         * build-aux/GNUmakefile (have-Makefile): Rename...
15354         (_have-Makefile): ...to this, for namespace consideration.
15355         (GNUmakefile.cfg): Include, if present.
15356         (_autoreconf): Define a default.
15357         (_is-dist-target): New rule for rebuilds to pick up intra-release
15358         version.
15359         (maint-cfg.mk): Rename...
15360         (cfg.mk): ...to this.
15361
15362 2008-03-18  Jim Meyering  <meyering@redhat.com>
15363
15364         New script and module: mktempd
15365         * MODULES.html.sh (maint+release support): Add mktempd.
15366         * build-aux/mktempd: New file.
15367         * modules/mktempd: New file.
15368
15369 2008-03-15  Jim Meyering  <meyering@redhat.com>
15370
15371         Undo last change.
15372         * lib/sha1.c, lib/md5.c: 63 != ~63.
15373         Reported by Andreas Schwab.
15374
15375         sha1.c, md5.c: Hoist a redundant expression.
15376         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
15377         "ctx->buflen" only once, before calling *_process_block.
15378         * lib/md5.c (md5_process_bytes): Likewise.
15379
15380 2008-03-14  Eric Blake  <ebb9@byu.net>
15381
15382         Bump copyright year in files generated by gnulib-tool.
15383         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
15384         gnulib-tool, rather than hard-coding it.
15385
15386         Fix 'gnulib-tool --version' output to work with git.
15387         * gnulib-tool (func_gnulib_dir): New function, extracted from...
15388         (startup): ...here.
15389         (func_version): Use it to invoke git-version-gen, rather than
15390         relying on CVS keyword expansion.  Modernize wording.
15391         (cvsdatestamp, last_checkin_date, version): Kill unused
15392         variables.
15393
15394 2008-03-12  Jim Meyering  <meyering@redhat.com>
15395
15396         Recognize optional cast of the argument to free.
15397         * build-aux/useless-if-before-free: Update regexps.
15398
15399         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
15400
15401 2008-03-11  Bruno Haible  <bruno@clisp.org>
15402
15403         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
15404         by a single package.
15405         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
15406         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
15407         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
15408         Reported by Sam Steingold <sds@gnu.org>.
15409
15410 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
15411
15412         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
15413         repositories.
15414
15415 2008-03-11  Bruno Haible  <bruno@clisp.org>
15416
15417         Avoid conflicts between local macro definitions.
15418         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
15419         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
15420
15421 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
15422             Bruno Haible  <bruno@clisp.org>
15423
15424         Make va_copy work with some version of xlc on AIX 5.1.
15425         * lib/stdarg.in.h: New file.
15426         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
15427         On AIX, use a <stdarg.h> file substitute.
15428         * modules/stdarg (Files): Add lib/stdarg.in.h.
15429         (Depends-on): Add include_next.
15430         (Makefile.am): Build a stdarg.h substitute if requested.
15431         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
15432
15433 2008-03-10  Bruno Haible  <bruno@clisp.org>
15434
15435         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
15436         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
15437         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
15438
15439 2008-03-10  Bruno Haible  <bruno@clisp.org>
15440
15441         * modules/stdlib (Depends-on): Add include_next, remove
15442         absolute-header.
15443
15444 2008-03-09  Bruno Haible  <bruno@clisp.org>
15445
15446         * lib/freadahead.h (freadahead): Document more precisely.
15447         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
15448         the sum of both buffer sizes.
15449         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
15450         * NEWS: Document the change.
15451
15452 2008-03-09  Bruno Haible  <bruno@clisp.org>
15453
15454         Extend freadptr to return also the buffer size.
15455         * lib/freadptr.h (freadptr): Add sizep argument.
15456         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
15457         (freadptr): Add sizep argument. Determine buffer size like freadahead
15458         does.
15459         * tests/test-freadptr.c: Don't include freadahead.h.
15460         (main): Adapt for new calling convention of freadptr.
15461         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
15462         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
15463         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
15464         tests/test-freadptr2.sh.
15465         (Depends): Remove freadahead.
15466         (TESTS): Add test-freadptr2.sh.
15467         (check_PROGRAMS): Add test-freadptr2.
15468
15469 2008-03-09  Bruno Haible  <bruno@clisp.org>
15470
15471         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
15472         Report and solution by Simon Josefsson.
15473
15474 2008-03-06  Bruno Haible  <bruno@clisp.org>
15475
15476         Make fflush after ungetc work on BSD platforms.
15477         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
15478         * tests/test-fflush2.c: New file.
15479         * tests/test-fflush2.sh: New file.
15480         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
15481         tests/test-fflush2.c.
15482         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
15483         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
15484
15485 2008-03-06  Eric Blake  <ebb9@byu.net>
15486
15487         Likewise for ftello.
15488         * modules/ftello (Dependencies): Add extensions.
15489         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
15490
15491 2008-03-06  Bruno Haible  <bruno@clisp.org>
15492
15493         * modules/fseeko (Dependencies): Add extensions.
15494         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
15495         Needed on glibc systems.
15496
15497 2008-03-06  Bruno Haible  <bruno@clisp.org>
15498
15499         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
15500         email address.
15501         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
15502
15503 2008-03-06  Bruno Haible  <bruno@clisp.org>
15504
15505         * users.txt: Add libgnupdf.
15506
15507 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
15508
15509         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
15510         (Header File Substitutes, Function Substitutes,
15511         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
15512         (Build robot for gnulib): Fix typo.
15513
15514 2008-03-06  Bruno Haible  <bruno@clisp.org>
15515
15516         * doc/gnulib-tool.texi (VCS Issues): Small updates.
15517         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
15518
15519 2008-03-06  Bruno Haible  <bruno@clisp.org>
15520
15521         * doc/func.texi: New file, extracted from doc/gnulib.texi.
15522         * doc/gnulib.texi: Include it.
15523
15524 2008-03-06  Simon Josefsson  <simon@josefsson.org>
15525
15526         * modules/func (License): Change license to unlimited; there was
15527         no LGPL parts in the module anyway.
15528
15529 2008-03-06  Simon Josefsson  <simon@josefsson.org>
15530
15531         * modules/__func__: Renamed to modules/func.
15532         * modules/__func__-tests: Renamed to modules/func-tests.
15533         * tests/test-__func__.c: Renamed to tests/test-func.c.
15534         * m4/__func__.m4: Renamed to m4/func.m4.
15535         * doc/gnulib.texi (__func__): Section renamed to func.
15536         Suggested by Eric Blake <ebb9@byu.net>.
15537
15538 2008-03-06  Simon Josefsson  <simon@josefsson.org>
15539
15540         * doc/gnulib.texi (__func__): Use C99 terminology when talking
15541         about __func__.  Make example self-contained.  Suggested by Eric
15542         Blake <ebb9@byu.net>.
15543
15544         * tests/test-__func__.c (main): Avoid extraneous () around __func.
15545         Suggested by Eric Blake <ebb9@byu.net>.
15546
15547 2008-03-06  Simon Josefsson  <simon@josefsson.org>
15548
15549         * modules/__func__: New file.
15550         * modules/__func__-tests: New file.
15551         * tests/test-__func__.c: New file.
15552         * m4/__func__.m4: New file.
15553         * doc/gnulib.texi (__func__): Document __func__ module.
15554
15555 2008-03-05  Simon Josefsson  <simon@josefsson.org>
15556
15557         * modules/byteswap (License): Re-license as LGPLv2+.
15558
15559 2008-03-05  Simon Josefsson  <simon@josefsson.org>
15560
15561         * doc/Makefile: Add pdf target.
15562
15563 2008-03-05  Simon Josefsson  <simon@josefsson.org>
15564
15565         * modules/inline (License): Use 'unlimited', since there are only
15566         *.m4 files in this module.
15567
15568 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
15569             Bruno Haible  <bruno@clisp.org>
15570
15571         Add support for HP C 7.1 on OpenVMS 8.3.
15572         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
15573
15574 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
15575
15576         Update VMS specifics.
15577         * lib/getopt.c [VMS]: Remove include of unixlib.h.
15578
15579 2008-03-02  Jim Meyering  <meyering@redhat.com>
15580
15581         Remove the last dependency on the "free" module.
15582         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
15583         Reported by Bob Proulx.
15584
15585         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
15586
15587         Remove useless "if" tests before free.  Deprecate "free" module.
15588         * doc/posix-functions/free.texi: Mention that this
15589         module is no longer useful.
15590         * modules/free (Notice): Say this module is obsolete.
15591         * modules/readutmp (Depends-on): Remove free.
15592         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
15593         * lib/putenv.c (putenv): Likewise.
15594         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
15595         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
15596         * tests/test-c-strcasestr.c (main): Likewise.
15597         * tests/test-c-strstr.c (main): Likewise.
15598         * tests/test-mbscasestr1.c (main): Likewise.
15599         * tests/test-mbscasestr2.c (main): Likewise.
15600         * tests/test-mbsstr1.c (main): Likewise.
15601         * tests/test-mbsstr2.c (main): Likewise.
15602         * tests/test-memmem.c (main): Likewise.
15603         * tests/test-strcasestr.c (main): Likewise.
15604         * tests/test-striconv.c (main): Likewise.
15605         * tests/test-striconveh.c (main): Likewise.
15606         * tests/test-striconveha.c (main): Likewise.
15607         * tests/test-strstr.c (main): Likewise.
15608
15609         * build-aux/git-version-gen: Adjust a comment and the Usage string.
15610
15611         bootstrap: sync from coreutils again
15612         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
15613
15614 2008-03-01  Jim Meyering  <meyering@redhat.com>
15615
15616         bootstrap: sync from coreutils
15617         * build-aux/bootstrap (update_po_files): Copy a .po file into place
15618         also when the target doesn't exist.
15619
15620 2008-03-01  Eric Blake  <ebb9@byu.net>
15621
15622         Fix bugs in last patch.
15623         * lib/memchr2.c (memchr2): Fix typo.
15624         * tests/test-memchr2.c: Test previous bug, and don't use GNU
15625         extension.
15626         Reported by Bruce Korb.
15627
15628         New module 'memchr2'.
15629         * modules/memchr2: New file.
15630         * modules/memchr2-tests: Likewise.
15631         * lib/memchr2.h: Likewise.
15632         * lib/memchr2.c: Likewise, based on memchr.c.
15633         * tests/test-memchr2.c: New test.
15634         * MODULES.html.sh (String handling): Add memchr2.
15635
15636 2008-02-29  Bruno Haible  <bruno@clisp.org>
15637
15638         * modules/freadseek-tests: New file.
15639         * tests/test-freadseek.sh: New file.
15640         * tests/test-freadseek.c: New file.
15641
15642         New module 'freadseek'.
15643         * modules/freadseek: New file.
15644         * lib/freadseek.h: New file.
15645         * lib/freadseek.c: New file.
15646         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
15647
15648 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
15649
15650         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
15651         wydawca.
15652
15653         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
15654         program_invocation_name and program_invocation_short_name are
15655         present.
15656
15657 2008-02-28  Bruno Haible  <bruno@clisp.org>
15658
15659         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
15660         * tests/test-freadptr.sh: Also test non-seekable stdin.
15661
15662 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
15663
15664         * build-aux/bootstrap (source_base, m4_base)
15665         (doc_base, tests_base): New variables.
15666         (gnulib_tool_options): Do not hardcode base directories, use
15667         the above variables instead.
15668
15669 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
15670
15671         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
15672
15673 2008-02-28  Bruno Haible  <bruno@clisp.org>
15674
15675         * modules/freadptr-tests: New file.
15676         * tests/test-freadptr.sh: New file.
15677         * tests/test-freadptr.c: New file.
15678
15679         New module 'freadptr'.
15680         * modules/freadptr: New file.
15681         * lib/freadptr.h: New file.
15682         * lib/freadptr.c: New file.
15683         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
15684
15685 2008-02-26  Karl Berry  <karl@freefriends.org>
15686
15687         Sync from Libtool:
15688         * libltdl/argz.c (argz_add, argz_count): New functions.
15689         * libltdl/argz.in.h: Declare them.
15690         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
15691
15692 2008-02-22  Bruno Haible  <bruno@clisp.org>
15693
15694         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
15695         is a pointer type.  Needed for HP-UX 10.
15696         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
15697         * doc/posix-functions/gmtime_r.texi: Likewise.
15698         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
15699
15700 2008-02-24  Bruno Haible  <bruno@clisp.org>
15701
15702         * modules/environ-tests: New file.
15703         * tests/test-environ.c: New file.
15704
15705         New module 'environ'.
15706         * modules/environ: New file.
15707         * lib/unistd.in.h (environ): New declaration.
15708         * m4/environ.m4: New file.
15709         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
15710         after use.
15711         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
15712         HAVE_DECL_ENVIRON.
15713         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
15714         HAVE_DECL_ENVIRON.
15715         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
15716         wrong claim that 'environ' is missing on some systems.
15717         * modules/execute (Depends-on): Add environ.
15718         * lib/execute.c (environ): Remove fallback declaration.
15719         * modules/pipe (Depends-on): Add environ.
15720         * lib/pipe.c (environ): Remove fallback declaration.
15721         * modules/setenv (Depends-on): Add environ.
15722         * lib/setenv.c (environ): Remove fallback declaration.
15723         * modules/unsetenv (Depends-on): Add environ.
15724         * lib/unsetenv.c (environ): Remove fallback declaration.
15725         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
15726         m4/environ.m4.
15727         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
15728         (gl_PREREQ_UNSETENV): Likewise.
15729
15730 2008-02-24  Bruno Haible  <bruno@clisp.org>
15731
15732         * doc/posix-functions/environ.texi: Document the MacOS X problem.
15733
15734 2008-02-20  Bob Proulx  <bob@proulx.com>
15735
15736         Enable use of older two part flavor 'git describe'.
15737         * build-aux/git-version-gen: If using the older two part flavor of
15738         git version then recreate the third part now present in the
15739         newer three part flavor of git describe.
15740
15741 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
15742
15743         * lib/fts.c (fts_build): Typo correction to comment.
15744
15745 2008-02-17  Bruno Haible  <bruno@clisp.org>
15746
15747         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
15748         generating no-op conflicts.
15749
15750 2008-02-17  Bruno Haible  <bruno@clisp.org>
15751
15752         Speed up by 10%.
15753         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
15754         result_entries, rather than an index-based loop.
15755
15756 2008-02-17  Bruno Haible  <bruno@clisp.org>
15757
15758         Speed up by 25%.
15759         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
15760         'hashcode_cached'.
15761         (entry_create): New function.
15762         (entry_hashcode): Use the cached hashcode if possible.
15763         (read_changelog_file, try_split_merged_entry): Use entry_create.
15764
15765 2008-02-17  Bruno Haible  <bruno@clisp.org>
15766
15767         Speed up from O(n^2) to O(n) for long ChangeLog files.
15768         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
15769         (read_changelog_file): Change implementation of entries_reversed list
15770         to rbtreehash.
15771         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
15772
15773 2008-02-17  Bruno Haible  <bruno@clisp.org>
15774
15775         New option --split-merged-entry.
15776         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
15777         (find_paragraph_end, try_split_merged_entry): New functions.
15778         (long_options): Add option --split-merged-entry.
15779         (usage): Document option --split-merged-entry.
15780         (main): Implement option --split-merged-entry.
15781         Reported by Eric Blake.
15782
15783 2008-02-17  Bruno Haible  <bruno@clisp.org>
15784
15785         * lib/git-merge-changelog.c: Include c-strstr.h.
15786         (main): Support the "git pull --rebase" situation.
15787         * modules/git-merge-changelog (Depends-on): Add c-strstr.
15788         Reported by Eric Blake.
15789
15790 2008-02-16  Eric Blake  <ebb9@byu.net>
15791
15792         Avoid doubling \ in common case of "c-maybe" quoting style.
15793         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
15794         eliding outer quotes.
15795         * lib/quotearg.h: Document this.
15796         * tests/test-quotearg.c (result_strings, inputs, results_g)
15797         (flag_results, locale_results): Test it by adding a new string to
15798         each test group.
15799         (compare_strings): Test new string.
15800
15801 2008-02-13  Eric Blake  <ebb9@byu.net>
15802
15803         Avoid trigraph quoting in default output.
15804         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
15805         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
15806         unless explicitly requested.
15807         * tests/test-quotearg.c (flag_results, main): Add additional tests.
15808
15809 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
15810
15811         Don't rely on signed integer overflowing to negative value.
15812         * lib/getugroups.c (getugroups): Include <limits.h>.
15813         Instead, compare against INT_MAX, and increment only if the test passes.
15814
15815 2008-02-13  Jim Meyering  <meyering@redhat.com>
15816         and Eric Blake  <ebb9@byu.net>
15817
15818         Avoid shadowing warning and compile errors on Linux.
15819         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
15820         forwarding macros on Linux.
15821         (dcgettext): Define a stub, for Linux.
15822         (results_g, main): Avoid warnings.
15823
15824 2008-02-12  Eric Blake  <ebb9@byu.net>
15825
15826         Silence warning in last patch.
15827         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
15828
15829         Quotearg part 4: add tests, fix c-maybe colon quoting.
15830         * lib/quotearg.h: Improve documentation.
15831         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
15832         escapes when adding outer quotes.  When quoting trigraphs, use
15833         valid C notation.  When quoting NUL, omit extra characters if next
15834         character is not digit.  Alter prototype.
15835         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
15836         callers.
15837         * modules/quotearg-tests: New module.
15838         * tests/test-quotearg.c: New test.
15839
15840 2008-02-07  Eric Blake  <ebb9@byu.net>
15841
15842         Quotearg part 3: add flag to control outer quote elision.
15843         * lib/quotearg.h (c_maybe_quoting_style): New style.
15844         (enum quoting_flags): Better documentation of flags.
15845         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
15846         c-maybe style.
15847         (quotearg_buffer_restyled): Handle new flag to elide outer
15848         quotes.
15849
15850         Quotearg part 2: add flag that can control NUL elision.
15851         * lib/quotearg.h (set_quoting_flags): New prototype.
15852         * lib/quotearg.c (struct quoting_options): Add flag field.
15853         (set_quoting_flags): New function.
15854         (quotearg_buffer_restyled): Add flags parameter.
15855         (quotearg_alloc_mem): Set the flag if length cannot be returned.
15856         (quotearg_n_options): Set the flag, since length cannot be
15857         returned.
15858         (quoting_options_from_style): Default flags correctly.
15859
15860         Quotearg part 1: more wrappers, restore quotearg_char state.
15861         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
15862         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
15863         (quotearg_colon_mem): New wrappers.
15864         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
15865         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
15866         functions.
15867         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
15868         (quotearg_colon_mem): New functions.
15869
15870 2008-02-11  Bruno Haible  <bruno@clisp.org>
15871
15872         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
15873         library in the current directory: it does not work with parallel make.
15874         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
15875
15876 2008-02-11  Bruno Haible  <bruno@clisp.org>
15877
15878         * .gitattributes: New file.
15879
15880 2008-02-11  Jim Meyering  <meyering@redhat.com>
15881
15882         useless-if-before-free: Fix reversed exit values.
15883         * build-aux/useless-if-before-free: Use correct values
15884         for EXIT_MATCH and EXIT_NO_MATCH.
15885
15886         * build-aux/useless-if-before-free: Close stdout carefully.
15887
15888 2008-02-10  Bruno Haible  <bruno@clisp.org>
15889
15890         New module 'git-merge-changelog'.
15891         * modules/git-merge-changelog: New file.
15892         * lib/git-merge-changelog.c: New file.
15893
15894 2008-02-10  Jim Meyering  <meyering@redhat.com>
15895
15896         useless-if-before-free: New option: --list (-l).
15897
15898         useless-if-before-free: Don't exit immediately upon open failure.
15899         * build-aux/useless-if-before-free: Exit 2 for errors.
15900         Upon failure to open a file, don't exit immediately.
15901         Rather, just warn and continue with any remaining files.
15902
15903 2008-02-10  Bruno Haible  <bruno@clisp.org>
15904
15905         New abstract list operation 'node_set_value'.
15906         * lib/gl_list.h (gl_list_node_set_value): New function.
15907         (struct gl_list_implementation): New field node_set_value.
15908         * lib/gl_list.c (gl_list_node_set_value): New function.
15909         * lib/gl_array_list.c (gl_array_node_set_value): New function.
15910         (gl_array_list_implementation): Update.
15911         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
15912         (gl_carray_list_implementation): Update.
15913         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
15914         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
15915         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
15916         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
15917         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
15918         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
15919         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
15920         Update.
15921         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
15922         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
15923         (gl_sublist_list_implementation): Update.
15924
15925 2008-02-10  Bruno Haible  <bruno@clisp.org>
15926
15927         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
15928         Needed when ELEMENT is #defined to 'some_type *'.
15929
15930 2008-02-10  Jim Meyering  <meyering@redhat.com>
15931
15932         New script and module: useless-if-before-free
15933         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
15934         * build-aux/useless-if-before-free: New file.
15935         * modules/useless-if-before-free: New file.
15936
15937         * build-aux/gitlog-to-changelog: Use committer date, not author date.
15938
15939         xstrtol_error: Fix typo.
15940         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
15941         s/exit_failure/exit_status/.
15942
15943 2008-02-09  Jim Meyering  <meyering@redhat.com>
15944
15945         New script and module: gitlog-to-changelog
15946         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
15947         * modules/gitlog-to-changelog: New file.
15948         * build-aux/gitlog-to-changelog: New file.
15949
15950 2008-02-08  Jim Meyering  <meyering@redhat.com>
15951
15952         Avoid two "parameter unused" warnings.
15953         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
15954         Mark "st" as used.
15955
15956         Use "git COMMAND", not "git-COMMAND".
15957         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
15958         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
15959         * build-aux/git-version-gen: Use "git status", not "git-status".
15960
15961 2008-02-07  Bruno Haible  <bruno@clisp.org>
15962
15963         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
15964         Avoids a crash on Windows Vista.
15965         Reported by Adam Strzelecki <ono@java.pl> via
15966         Simon Josefsson <simon@josefsson.org>.
15967
15968 2008-02-06  Bruno Haible  <bruno@clisp.org>
15969
15970         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
15971         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
15972         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
15973         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
15974         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
15975         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
15976         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
15977         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
15978         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
15979         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
15980         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
15981         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
15982         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
15983         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
15984         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
15985         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
15986         left-adjust flag.
15987         * tests/test-snprintf-posix.h (test_function): Likewise.
15988         * tests/test-sprintf-posix.h (test_function): Likewise.
15989         * tests/test-vasprintf-posix.c (test_function): Likewise.
15990         * doc/posix-functions/fprintf.texi: Update.
15991         * doc/posix-functions/printf.texi: Update.
15992         * doc/posix-functions/snprintf.texi: Update.
15993         * doc/posix-functions/sprintf.texi: Update.
15994         * doc/posix-functions/vfprintf.texi: Update.
15995         * doc/posix-functions/vprintf.texi: Update.
15996         * doc/posix-functions/vsnprintf.texi: Update.
15997         * doc/posix-functions/vsprintf.texi: Update.
15998         Reported by Peter Fales <psfales@alcatel-lucent.com>.
15999
16000 2008-02-06  Bruno Haible  <bruno@clisp.org>
16001
16002         Fix bug introduced on 2008-01-26.
16003         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
16004
16005 2008-02-06  Bruno Haible  <bruno@clisp.org>
16006
16007         Fix bug introduced on 2007-06-10.
16008         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
16009         !NEED_PRINTF_FLAG_ZERO.
16010
16011 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
16012
16013         getloadavg: use libperfstat on AIX5
16014         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
16015
16016 2008-02-03  Bruno Haible  <bruno@clisp.org>
16017
16018         * lib/diffseq.h: Add comments about required #includes.
16019         Reported by Michael Biggs <gnulib@doubleplum.net>.
16020
16021 2008-02-01  Bruno Haible  <bruno@clisp.org>
16022
16023         * users.txt: Add gnuit.
16024
16025 2008-01-31  Bruno Haible  <bruno@clisp.org>
16026
16027         * lib/md4.c (set_uint32): Mark as inline.
16028         * lib/md5.c (set_uint32): Likewise.
16029         * lib/sha1.c (set_uint32): Likewise.
16030         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
16031         * m4/md5.m4 (gl_MD5): Likewise.
16032         * m4/sha1.m4 (gl_SHA1): Likewise.
16033
16034 2008-01-31  Jim Meyering  <meyering@redhat.com>
16035
16036         Use "sizeof VAR", rather than a literal "4".
16037         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
16038         * lib/md4.c (md4_read_ctx): Likewise.
16039         * lib/sha1.c (sha1_read_ctx): Likewise.
16040
16041 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16042
16043         * tests/test-sha1.c: New file, based on test-md5.c.
16044
16045         * modules/crypto/sha1-tests: New file.
16046
16047 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16048
16049         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
16050
16051 2008-01-31  Jim Meyering  <meyering@redhat.com>
16052
16053         Prefer "sizeof v" over the equivalent "4".
16054         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
16055         * lib/md5.c (set_uint32): Likewise.
16056         * lib/sha1.c (set_uint32): Likewise.
16057
16058 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16059
16060         * lib/sha1.c (set_uint32): Mark function as static.
16061
16062 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16063
16064         md2: clarify comments to say that alignment is not required.
16065         * lib/md2.h: Remove warning about alignment in comment.
16066         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
16067         never been required.
16068
16069 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16070
16071         md4: adapt alignment constraint fix from sha1.
16072         * lib/md4.c (set_uint32): New function, from sha1.c
16073         (md4_read_ctx): Use it.
16074         (md4_finish_ctx): Doc fix.
16075         * lib/md4.h: Doc fix.
16076
16077 2008-01-31  Simon Josefsson  <simon@josefsson.org>
16078
16079         md5: adapt alignment constraint fix from sha1.
16080         * lib/md5.c (set_uint32): New function, from sha1.c
16081         (md5_read_ctx): Use it.
16082         (md5_finish_ctx): Doc fix.
16083         * lib/md5.h: Doc fix.
16084
16085 2008-01-30  Peter Palfrader  <weasel@debian.org>
16086
16087         sha1: remove the result buffer alignment constraint
16088         * lib/sha1.c (set_uint32): New function.
16089         (sha1_read_ctx): Rewrite to remove the result buffer alignment
16090         constraint.
16091         (sha1_finish_ctx): Remove comment warning about alignment constraint.
16092         * lib/sha1.h: Likewise.
16093
16094 2008-01-30  Andreas Schwab  <schwab@suse.de>
16095             Bruno Haible  <bruno@clisp.org>
16096
16097         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
16098         correct definition of LDBL_MIN_EXP.
16099
16100 2008-01-30  Karl Berry  <karl@gnu.org>
16101
16102         * config/srclist-update: try to preserve x bit on updates.
16103         * config/srclistvars.sh: update for karl.
16104
16105 2008-01-29  Jim Meyering  <meyering@redhat.com>
16106
16107         vasnprintf.c: Avoid warning about unused label
16108         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
16109         "overflow" label definition and associated code with the
16110         same cpp condition that guards the sole use of that label.
16111
16112 2008-01-26  Bruno Haible  <bruno@clisp.org>
16113
16114         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
16115         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
16116         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
16117         * lib/isnanl-nolibm.h (isnanl): Likewise.
16118         Reported by Paul Eggert <eggert@cs.ucla.edu>.
16119
16120 2008-01-26  Bruno Haible  <bruno@clisp.org>
16121
16122         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
16123         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
16124
16125 2008-01-26  Bruno Haible  <bruno@clisp.org>
16126
16127         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
16128         GCC >= 4.0 built-in.
16129         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
16130
16131 2008-01-26  Bruno Haible  <bruno@clisp.org>
16132
16133         Rename isnan, applicable to 'double' only, to isnand.
16134         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
16135         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
16136         (configure.ac): Update.
16137         (Include): Replace "isnan.h" with "isnand.h".
16138         * m4/isnand.m4: Renamed from m4/isnan.m4.
16139         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
16140         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
16141         instead of isnan.c.
16142         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
16143         instead of HAVE_ISNAN_IN_LIBC.
16144         (isnand): Renamed from isnan.
16145         * lib/isnand.c: New file.
16146         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
16147         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
16148         (Makefile.am): Update.
16149         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
16150         Include isnand.h instead of isnan.h.
16151         (main): Test isnand instead of isnan.
16152         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
16153         isnan-nolibm.
16154         * modules/frexp (Depends-on): Likewise.
16155         * modules/frexp-tests (Depends-on): Likewise.
16156         * modules/frexp-nolibm (Depends-on): Likewise.
16157         * modules/frexp-nolibm-tests (Depends-on): Likewise.
16158         * modules/isfinite (Depends-on): Likewise.
16159         * modules/round-tests (Depends-on): Likewise.
16160         * modules/signbit (Depends-on): Likewise.
16161         * modules/signbit-tests (Depends-on): Likewise.
16162         * modules/snprintf-posix (Depends-on): Likewise.
16163         * modules/sprintf-posix (Depends-on): Likewise.
16164         * modules/trunc-tests (Depends-on): Likewise.
16165         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
16166         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
16167         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
16168         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
16169         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
16170         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
16171         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
16172         * modules/vasnprintf-posix (Depends-on): Likewise.
16173         * modules/vasprintf-posix (Depends-on): Likewise.
16174         * modules/vfprintf-posix (Depends-on): Likewise.
16175         * modules/vsnprintf-posix (Depends-on): Likewise.
16176         * modules/vsprintf-posix (Depends-on): Likewise.
16177         * lib/frexp.c: Include isnand.h instead of isnan.h.
16178         (ISNAN): Set to isnand instead of isnan.
16179         * lib/isfinite.c: Include isnand.h instead of isnan.h.
16180         (gl_isfinited): Use isnand instead of isnan.
16181         * lib/signbitd.c: Include isnand.h instead of isnan.h.
16182         (gl_signbitd): Use isnand instead of isnan.
16183         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
16184         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
16185         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
16186         (main): Use isnand instead of isnan.
16187         * tests/test-round1.c: Include isnand.h.
16188         (main): Use isnand instead of isnan.
16189         * tests/test-round2.c: Include isnand.h instead of isnan.h.
16190         (ISNAN): Set to isnand instead of isnan.
16191         * tests/test-trunc1.c: Include isnand.h.
16192         (main): Use isnand instead of isnan.
16193         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
16194         (equal): Use isnand instead of isnan.
16195         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
16196         isnand-nolibm.
16197         * NEWS: Mention the change.
16198
16199 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
16200             Bruno Haible  <bruno@clisp.org>
16201
16202         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
16203         the GCC builtins for signbits are present and set
16204         REPLACE_SIGNBIT_USING_GCC if so.
16205         * lib/math.in.h (signbit): Define using GCC builtins if
16206         REPLACE_SIGNBIT_USING_GCC is set.
16207         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
16208         REPLACE_SIGNBIT_USING_GCC.
16209         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
16210
16211 2008-01-25  Jim Meyering  <meyering@redhat.com>
16212
16213         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
16214         * lib/poll.c: Include <config.h>, not "config.h".
16215         * tests/test-getaddrinfo.c: Likewise.
16216
16217 2008-01-25  Simon Josefsson  <simon@josefsson.org>
16218
16219         * modules/sockets-tests: New file.
16220
16221 2008-01-24  Simon Josefsson  <simon@josefsson.org>
16222
16223         * modules/sockets: New module, can be used to call WSA_Startup and
16224         WSA_Cleanup when needed.
16225
16226         * lib/sockets.h, lib/sockets.c: New files.
16227
16228         * m4/sockets.m4: New file.
16229
16230         * tests/test-sockets.c: New file.
16231
16232 2008-01-19  Bruno Haible  <bruno@clisp.org>
16233
16234         * doc/posix-headers: Renamed from doc/headers.
16235         * doc/posix-functions: Renamed from doc/functions.
16236         * doc/gnulib.texi: Update.
16237
16238 2008-01-19  Bruno Haible  <bruno@clisp.org>
16239
16240         * doc/glibc-functions/strcasestr.texi: Include contents of
16241         doc/functions/strcasestr.texi, fixing the list of platforms.
16242         * doc/functions/strcasestr.texi: Remove file.
16243
16244 2008-01-19  Bruno Haible  <bruno@clisp.org>
16245
16246         * doc/glibc-functions/memmem.texi: Include contents of
16247         doc/functions/memmem.texi.
16248         * doc/functions/memmem.texi: Remove file.
16249
16250 2008-01-18  Bruno Haible  <bruno@clisp.org>
16251
16252         * doc/glibc-functions/*.texi: New files.
16253         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
16254         to use the new files.
16255
16256 2008-01-17  Bruno Haible  <bruno@clisp.org>
16257
16258         * tests/test-gethostname.c (main): Fix printf statement.
16259
16260 2008-01-17  Simon Josefsson  <simon@josefsson.org>
16261
16262         * modules/gethostname-tests: New file.
16263
16264         * tests/test-gethostname.c: New file.
16265
16266 2008-01-17  Simon Josefsson  <simon@josefsson.org>
16267
16268         * lib/gethostname.c: Include string.h unconditionally, strncpy is
16269         used by the UNAME case.  Reported by Bruno Haible
16270         <bruno@clisp.org>.
16271
16272 2008-01-17  Eric Blake  <ebb9@byu.net>
16273
16274         Convert c-strcasestr to be more efficient.
16275         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
16276         (Depends-on): Add c-strcase, remove malloca, strnlen.
16277         * tests/test-c-strcasestr.c (main): Enhance test.
16278         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
16279
16280 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
16281
16282         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
16283         Use it in creating po/Makevars.
16284
16285 2008-01-15  Simon Josefsson  <simon@josefsson.org>
16286
16287         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
16288         Applications that requires it should initialize libgcrypt
16289         manually.
16290
16291 2008-01-16  Simon Josefsson  <simon@josefsson.org>
16292
16293         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
16294
16295 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
16296
16297         Fix problem with getdate on mingw32 reported by Simon Josefsson
16298         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
16299         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
16300         tzname", when deciding whether to declare tzname.
16301         * lib/strftime.c (tzname): Likewise.
16302
16303 2008-01-15  Bruno Haible  <bruno@clisp.org>
16304
16305         Work around a MacOS X 10.5 bug in frexpl().
16306         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
16307         * doc/functions/frexpl.texi: Document the bug.
16308         Reported by Elias Pipping <pipping@gentoo.org>.
16309
16310 2008-01-14  Eric Blake  <ebb9@byu.net>
16311
16312         Touch up previous patch.
16313         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
16314         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
16315
16316         Convert strcasestr module to use Two-Way algorithm.
16317         * modules/strcasestr-simple: New module, based on the old
16318         strcasestr, but with Two-Way rather than KMP.
16319         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
16320         * lib/string.in.h (rpl_strcasestr): Declare.
16321         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
16322         performance.
16323         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
16324         * modules/string (Makefile.am): Support strcasestr.
16325         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
16326         * modules/strcasestr-tests (Depends-on): Check for alarm.
16327         * tests/test-strcasestr.c: Augment test.
16328         * lib/str-two-way.h: Clean up stray macro.
16329         * NEWS: Document new module.
16330         * MODULES.html.sh (string handling): Likewise.
16331         * doc/functions/strcasestr.texi: New file.
16332         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
16333         here, since it is not a POSIX function.
16334
16335 2008-01-14  Colin Watson  <cjwatson@debian.org>
16336             Bruno Haible  <bruno@clisp.org>
16337
16338         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
16339         works fine; if not, set REPLACE_STRSIGNAL.
16340         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
16341         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
16342         REPLACE_STRSIGNAL.
16343         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
16344         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
16345         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
16346
16347 2008-01-14  Bruno Haible  <bruno@clisp.org>
16348
16349         * modules/strsignal (Include): Change to <string.h>.
16350
16351 2008-01-14  Colin Watson  <cjwatson@debian.org>
16352
16353         * modules/argp (Notice): Add a notice recommending to change
16354         XGETTEXT_OPTIONS.
16355         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
16356
16357 2008-01-13  Colin Watson  <cjwatson@debian.org>
16358
16359         * modules/strsignal-tests: New file.
16360         * tests/test-strsignal.c: New file.
16361
16362         * lib/strsignal.c: New file, from glibc with modifications.
16363         * lib/siglist.h: New file, from glibc with modifications.
16364         * lib/string.in.h (strsignal): New declaration.
16365         * m4/strsignal.m4: New file.
16366         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
16367         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
16368         * modules/strsignal: New file.
16369         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
16370         HAVE_DECL_STRSIGNAL.
16371
16372 2008-01-13  Bruno Haible  <bruno@clisp.org>
16373
16374         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
16375         locale encoding is not ASCII. Needed for OpenBSD 4.0.
16376         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
16377         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
16378
16379 2008-01-13  Bruno Haible  <bruno@clisp.org>
16380
16381         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
16382         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
16383         * lib/argp.h (__attribute__): Likewise.
16384         * lib/c-stack.c (__attribute__): Likewise.
16385         * lib/error.h (__attribute__): Likewise.
16386         * lib/fts.c (__attribute__): Likewise.
16387         * lib/openat.h (__attribute__): Likewise.
16388         * lib/stdio.in.h (__attribute__): Likewise.
16389         * lib/string.in.h (__attribute__): Likewise.
16390         * lib/utimens.c (__attribute__): Likewise.
16391         * lib/vasnprintf.h (__attribute__): Likewise.
16392         * lib/xalloc.h (__attribute__): Likewise.
16393         * lib/xprintf.h (__attribute__): Likewise.
16394         * lib/xstrtol.h (__attribute__): Likewise.
16395         * lib/xvasprintf.h (__attribute__): Likewise.
16396
16397 2008-01-12  Bruno Haible  <bruno@clisp.org>
16398
16399         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
16400         * doc/glibc-headers/a.out.texi: New file.
16401         * doc/glibc-headers/aliases.texi: New file.
16402         * doc/glibc-headers/alloca.texi: New file.
16403         * doc/glibc-headers/ar.texi: New file.
16404         * doc/glibc-headers/argp.texi: New file.
16405         * doc/glibc-headers/argz.texi: New file.
16406         * doc/glibc-headers/byteswap.texi: New file.
16407         * doc/glibc-headers/crypt.texi: New file.
16408         * doc/glibc-headers/endian.texi: New file.
16409         * doc/glibc-headers/envz.texi: New file.
16410         * doc/glibc-headers/err.texi: New file.
16411         * doc/glibc-headers/error.texi: New file.
16412         * doc/glibc-headers/execinfo.texi: New file.
16413         * doc/glibc-headers/fpu_control.texi: New file.
16414         * doc/glibc-headers/fstab.texi: New file.
16415         * doc/glibc-headers/fts.texi: New file.
16416         * doc/glibc-headers/getopt.texi: New file.
16417         * doc/glibc-headers/ieee754.texi: New file.
16418         * doc/glibc-headers/ifaddrs.texi: New file.
16419         * doc/glibc-headers/libintl.texi: New file.
16420         * doc/glibc-headers/mcheck.texi: New file.
16421         * doc/glibc-headers/mntent.texi: New file.
16422         * doc/glibc-headers/obstack.texi: New file.
16423         * doc/glibc-headers/paths.texi: New file.
16424         * doc/glibc-headers/printf.texi: New file.
16425         * doc/glibc-headers/pty.texi: New file.
16426         * doc/glibc-headers/resolv.texi: New file.
16427         * doc/glibc-headers/shadow.texi: New file.
16428         * doc/glibc-headers/sysexits.texi: New file.
16429         * doc/glibc-headers/ttyent.texi: New file.
16430
16431 2008-01-12  Jim Meyering  <meyering@redhat.com>
16432
16433         announce-gen: emit Gnulib's git-based version string.
16434         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
16435         New option --gnulib-version=V, where V is expected to be
16436         the output of running git describe in the gnulib directory.
16437         (get_tool_versions): Request feedback on xdelta.  I suspect it's
16438         not useful, and plan to stop publishing an xdelta file with each
16439         coreutils release.
16440
16441         * build-aux/announce-gen: Also check for lzma-compressed files.
16442
16443 2008-01-11  Bruno Haible  <bruno@clisp.org>
16444
16445         * tests/test-memmem.c (main): Increase maximum allowed time.
16446         * tests/test-strstr.c (main): Likewise.
16447
16448 2008-01-11  Bruno Haible  <bruno@clisp.org>
16449
16450         * doc/functions/memmem.texi: Add more precisions about platforms.
16451         * doc/functions/strstr.texi: Likewise.
16452
16453 2008-01-10  Eric Blake  <ebb9@byu.net>
16454
16455         * m4/strstr.m4: Delete cruft from copy-n-paste.
16456         Reported by Bruno Haible.
16457
16458 2008-01-10  Bruno Haible  <bruno@clisp.org>
16459
16460         Make c-strstr rely on strstr.
16461         * lib/c-strstr.c: Don't include str-kmp.h.
16462         (c_strstr): Define in terms of strstr.
16463         * modules/c-strstr (Files): Remove lib/str-kmp.h.
16464         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
16465
16466 2008-01-10  Bruno Haible  <bruno@clisp.org>
16467
16468         * doc/gnulib.texi (String Functions in C Locale): New section.
16469         * doc/c-ctype.texi: New file.
16470         * doc/c-strcase.texi: New file.
16471         * doc/c-strcaseeq.texi: New file.
16472         * doc/c-strcasestr.texi: New file.
16473         * doc/c-strstr.texi: New file.
16474         * doc/c-strtod.texi: New file.
16475         * doc/c-strtold.texi: New file.
16476
16477 2008-01-10  Eric Blake  <ebb9@byu.net>
16478
16479         * lib/relocatable.h: Fix a comment.
16480
16481 2008-01-10  Eric Blake  <ebb9@byu.net>
16482
16483         Share two-way algorithm.
16484         * lib/str-two-way.h: New file, merged from...
16485         * lib/memmem.c: ...here...
16486         * lib/strstr.c: ...and here.
16487         * modules/memmem (Files): Use it.
16488         * modules/strstr (Files): Likewise.
16489
16490         Avoid quadratic strstr implementations.
16491         * lib/strstr.c: New file.
16492         * m4/strstr.m4: Likewise.
16493         * modules/strstr: Likewise.
16494         * modules/strstr-tests: Likewise.
16495         * tests/test-strstr.c: Likewise.
16496         * lib/string.in.h (rpl_strstr): Declare.
16497         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
16498         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
16499         * modules/string (Makefile.am): Likewise.
16500         * MODULES.html.sh (string handling): Mention new module.
16501         * doc/functions/strstr.texi (strstr): Document the bug.
16502
16503 2008-01-10  Bruno Haible  <bruno@clisp.org>
16504
16505         * lib/relocatable.h (relocate): State whether result is freshly
16506         allocated or not.
16507         * lib/relocatable.c (relocate): Return a freshly allocated string
16508         instead of a pointer to a privately held string.
16509         Reported by Sylvain Beucler <beuc@gnu.org>.
16510
16511 2008-01-10  Colin Watson  <cjwatson@debian.org>
16512
16513         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
16514         s/S_ISNLK/S_ISLNK/.
16515
16516 2008-01-09  Bruno Haible  <bruno@clisp.org>
16517
16518         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
16519         and other files.
16520         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
16521         if it's only a guess.
16522         * modules/memmem: Simplify by depending on memmem-simple.
16523
16524 2008-01-09  Bruno Haible  <bruno@clisp.org>
16525
16526         Work around OpenBSD 4.0 tdelete() bug.
16527         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
16528         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
16529         macros and don't redefine the enum values.
16530         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
16531         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
16532         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
16533
16534 2008-01-09  Bruno Haible  <bruno@clisp.org>
16535
16536         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
16537         (main): Don't perform the tests if setlocale did not install a UTF-8
16538         locale. Needed on OpenBSD 4.0.
16539         * modules/wcwidth-tests (Depends-on): Add localcharset.
16540
16541 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
16542
16543         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
16544         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
16545         * NEWS: announce this.
16546         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
16547
16548 2008-01-09  Simon Josefsson  <simon@josefsson.org>
16549         and Eric Blake  <ebb9@byu.net>
16550
16551         Add memmem-simple module.
16552         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
16553         (gl_FUNC_MEMMEM): Separate performance from presence checks.
16554         * modules/memmem-simple: New file.
16555         * modules/memmem (Description): Tweak.
16556         * MODULES.html.sh (string handling): Mention new module.
16557         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
16558         addressed by memmem-simple.
16559         * NEWS: Document the difference.
16560
16561 2008-01-09  Eric Blake  <ebb9@byu.net>
16562
16563         Give gcc some memmem optimization hints.
16564         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
16565         (strcasestr): Declare as pure.
16566         * modules/memmem (Maintainer): Claim my implementation.
16567
16568 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16569
16570         Support AIX 6.1 and higher.
16571         * build-aux/config.libpath: Likewise.
16572         * build-aux/config.rpath: Likewise.
16573
16574 2008-01-08  Jim Meyering  <meyering@redhat.com>
16575             Bruno Haible  <bruno@clisp.org>
16576
16577         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
16578         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
16579         Reported by Peter Fales in
16580         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
16581
16582 2008-01-08  Bruno Haible  <bruno@clisp.org>
16583
16584         * modules/unictype/category-of (Depends-on): Add
16585         unictype/category-none.
16586         * modules/unictype/category-and-tests (Depends-on): Add
16587         unictype/category-{L,N,Lu,Nd}.
16588         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
16589         * modules/unictype/category-or-tests (Depends-on): Add
16590         unictype/category-{L,N}.
16591         * modules/unictype/category-name-tests (Depends-on): Add
16592         unictype/category-{Z,Nl}.
16593         Reported by Simon Josefsson.
16594
16595 2008-01-08  Bruno Haible  <bruno@clisp.org>
16596
16597         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
16598         convention better.
16599         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
16600         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
16601         Reported by Peter Miller <millerp@canb.auug.org.au>.
16602
16603 2008-01-08  Eric Blake  <ebb9@byu.net>
16604
16605         Rewrite memmem to guarantee linear complexity without malloc.
16606         * lib/memmem.c (memmem): Use Two-Way rather than
16607         Knuth-Morris-Pratt, to allow O(1) space usage.
16608         (critical_factorization, two_way_short_needle)
16609         (two_way_long_needle): New functions.
16610         (knuth_morris_pratt): Delete.
16611         * modules/memmem (Depends-on): No longer need malloca or stdbool.
16612         Add stdint.
16613         * tests/test-memmem.c (main): Add tests for periodic needle and
16614         sublinear performance.
16615         * doc/functions/memmem.texi (memmem): Document other deficiencies
16616         in cygwin and older glibc.
16617
16618 2008-01-08  Bruno Haible  <bruno@clisp.org>
16619
16620         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
16621         augmentation.
16622
16623 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
16624
16625         Add a configure time option: --disable-acl.
16626         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
16627         AC_ARG_ENABLE(acl).
16628
16629 2008-01-06  Simon Josefsson  <simon@josefsson.org>
16630
16631         * tests/test-localename.c: Don't include obsolete "setenv.h".
16632
16633         * modules/localename-tests (Depends-on): Need unsetenv.
16634
16635 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16636
16637         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
16638
16639 2008-01-06  Colin Watson  <cjwatson@debian.org>
16640
16641         * users.txt: Add man-db.
16642
16643 2008-01-07  Bruno Haible  <bruno@clisp.org>
16644
16645         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
16646         previous section name.
16647
16648 2008-01-07  Bruno Haible  <bruno@clisp.org>
16649
16650         * lib/progname.c (set_program_name): Don't strip off a leading
16651         "lt-" prefix outside a .libs directory.
16652         Suggested by Paul Eggert.
16653
16654 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
16655             Bruno Haible  <bruno@clisp.org>
16656
16657         Improve memory cleanup in 'relocatable' module.
16658         * lib/relocatable.h (compute_curr_prefix): Change return type to
16659         'char *'.
16660         * lib/relocatable.c (compute_curr_prefix): Change return type to
16661         'char *'. Free curr_installdir after use.
16662         (relocate): Free curr_prefix_better after use.
16663         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
16664
16665 2008-01-01  Bruno Haible  <bruno@clisp.org>
16666
16667         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
16668         failure on older glibc systems.
16669         Reported by Peter Fales <psfales@alcatel-lucent.com>.
16670
16671 2008-01-05  Eric Blake  <ebb9@byu.net>
16672
16673         Avoid quadratic system memmem.
16674         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
16675         Reported by Ralf Wildenhues.
16676
16677         Fix memmem test for mingw.
16678         * modules/memmem-tests (configure.ac): Check for alarm.
16679         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
16680         it.
16681         * doc/functions/memmem.texi: New file.
16682         * doc/gnulib.texi (Function Substitutes): Add memmem.
16683         Reported by Bruno Haible.
16684
16685 2008-01-04  Bruno Haible  <bruno@clisp.org>
16686
16687         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
16688         Require gl_HEADER_STRINGS_H_DEFAULTS, not
16689         gl_HEADER_STRING_H_DEFAULTS.
16690
16691 2008-01-04  Eric Blake  <ebb9@byu.net>
16692
16693         Shorten duration of memmem test.
16694         * tests/test-memmem.c (main): Use alarm to declare failure if test
16695         is taking too long.
16696         Reported by Ralf Wildenhues.
16697
16698 2007-12-21  Simon Josefsson  <simon@josefsson.org>
16699
16700         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
16701         string, needed by strerror.
16702
16703 2008-01-03  Colin Watson  <cjwatson@debian.org>
16704             Bruno Haible  <bruno@clisp.org>
16705
16706         * doc/gnulib-tool.texi (Localization): New section.
16707
16708 2008-01-02  Bruno Haible  <bruno@clisp.org>
16709
16710         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
16711         variables to 'unsigned char *' type.
16712         Reported by Paul Eggert.
16713
16714 2008-01-02  Jim Meyering  <jim@meyering.net>
16715
16716         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
16717
16718 2007-12-31  Jim Meyering  <jim@meyering.net>
16719
16720         Avoid use of private FTS type name.
16721         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
16722
16723 2007-12-30  Karl Berry  <karl@gnu.org>
16724
16725         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
16726         work around defect in Texinfo and/or the standalone Info browser.
16727
16728 2007-12-30  Bruno Haible  <bruno@clisp.org>
16729
16730         Unify 5 copies of the KMP code.
16731         * lib/str-kmp.h: New file.
16732         * lib/c-strcasestr.c: Include str-kmp.h.
16733         (knuth_morris_pratt): Remove function.
16734         (c_strcasestr): Update.
16735         * lib/c-strstr.c: Include str-kmp.h.
16736         (knuth_morris_pratt): Remove function.
16737         (c_strcasestr): Update.
16738         * lib/mbscasestr.c: Include str-kmp.h.
16739         (knuth_morris_pratt_unibyte): Remove function.
16740         * lib/mbsstr.c: Include str-kmp.h.
16741         (knuth_morris_pratt_unibyte): Remove function.
16742         * lib/strcasestr.c: Include str-kmp.h.
16743         (knuth_morris_pratt): Remove function.
16744         (strcasestr): Update.
16745         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
16746         * modules/c-strstr (Files): Likewise.
16747         * modules/mbscasestr (Files): Likewise.
16748         * modules/mbsstr (Files): Likewise.
16749         * modules/strcasestr (Files): Likewise.
16750         Suggested by Paul Eggert.
16751
16752 2007-12-30  Bruno Haible  <bruno@clisp.org>
16753
16754         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
16755         defined.
16756
16757 2007-12-30  Bruno Haible  <bruno@clisp.org>
16758
16759         * lib/xmalloca.h: Include xalloc.h.
16760         (xnmalloca): New macro.
16761
16762 2007-12-30  Bruno Haible  <bruno@clisp.org>
16763
16764         * lib/malloca.h (nmalloca): New macro.
16765         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
16766         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
16767         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
16768         knuth_morris_pratt_multibyte): Likewise.
16769         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
16770         knuth_morris_pratt_multibyte): Likewise.
16771         * lib/memmem.c (knuth_morris_pratt): Likewise.
16772         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
16773
16774 2007-12-25  Bruno Haible  <bruno@clisp.org>
16775
16776         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
16777         * lib/glob.c: Don't include openat.h.
16778         (link_exists2_p): Add back the code that deals with the
16779         !GLOB_ALTDIRFUNC case.
16780         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
16781         let it do the filename concatenation.
16782         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
16783         * modules/glob (Depends-on): Remove openat.
16784
16785 2007-12-31  Bruno Haible  <bruno@clisp.org>
16786
16787         * modules/dirfd (License): Change to LGPLv2+.
16788         Approved by Jim Meyering.
16789
16790 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
16791
16792         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
16793         when multiplying M by sizeof (size_t).
16794
16795 2007-12-10  Martin Lambers  <marlam@marlam.de>
16796
16797         Override getpagesize on mingw.
16798         * lib/getpagesize.c: New file.
16799         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
16800         * modules/getpagesize (Files): Add lib/getpagesize.c.
16801         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
16802         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
16803         REPLACE_GETPAGESIZE.
16804         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
16805
16806 2007-12-25  Bruno Haible  <bruno@clisp.org>
16807
16808         * modules/localcharset (Notice): New field.
16809         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
16810         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
16811
16812 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
16813             Bruno Haible  <bruno@clisp.org>
16814
16815         Avoid using the syntax symbol() in formatted documentation.
16816         * MODULES.html.sh (func_module): When replacing symbol() with a
16817         hyperlink, remove the parentheses. Show an error if some remain.
16818         Recognize and render the '...' syntax.
16819         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
16820         Rework. Add paragraph about GCC's inlining.
16821         * doc/alloca.texi: Likewise.
16822         * doc/error.texi: Remove parentheses from symbol reference.
16823         * doc/gnulib-intro.texi: Likewise.
16824         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
16825         * modules/fnmatch (Description): Reword to say "the ... function".
16826         * modules/full-read (Description): Likewise.
16827         * modules/full-write (Description): Likewise.
16828         * modules/safe-read (Description): Likewise.
16829         * modules/safe-write (Description): Likewise.
16830         * modules/strchrnul (Description): Likewise.
16831         * modules/trim (Description): Likewise.
16832         * modules/error (Description): Remove parentheses from symbol
16833         references.
16834         * modules/verror (Description): Likewise.
16835         Reported by Karl Berry.
16836
16837 2007-12-25  Bruno Haible  <bruno@clisp.org>
16838
16839         Fixup after 2007-10-16 commit.
16840         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
16841
16842 2007-12-24  Bruno Haible  <bruno@clisp.org>
16843
16844         Make --enable-relocatable work with DESTDIR.
16845         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
16846         to compute installdir from destprog.
16847         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
16848         also set the RELOC_DESTDIR variable.
16849         Reported by Левашев Иван <octagram@bluebottle.com>.
16850
16851 2007-12-24  Bruno Haible  <bruno@clisp.org>
16852
16853         Fix link error due to xalloc_die().
16854         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
16855         of xreadlink.
16856         * lib/relocwrapper.c: Update comments.
16857         * build-aux/install-reloc: Remove xreadlink.c from file list.
16858         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
16859         xreadlink.c.
16860         Reported by Левашев Иван <octagram@bluebottle.com>.
16861
16862 2007-12-24  Bruno Haible  <bruno@clisp.org>
16863
16864         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
16865         * lib/setenv.h: Remove file.
16866         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
16867         lib/setenv.h.
16868         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
16869         (Depends-on): Add stdlib.
16870         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
16871         gl_FUNC_UNSETENV.
16872         (Include): Replace setenv.h with <stdlib.h>.
16873         * modules/unsetenv: New file.
16874         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
16875         * lib/unsetenv.c: Include <stdlib.h> first.
16876         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
16877         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
16878         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
16879         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
16880         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
16881         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
16882         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
16883         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
16884         * doc/functions/unsetenv.texi: Update.
16885         * modules/xsetenv (Depends-on): Add unsetenv.
16886         * modules/getdate (Depends-on): Likewise.
16887         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
16888         * lib/xsetenv.c: Don't include setenv.h.
16889         * lib/getdate.y: Likewise.
16890         * lib/relocwrapper.c: Likewise.
16891         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
16892         (Depends-on): Add stdlib.
16893         * NEWS: Mention the changes.
16894         Reported by Левашев Иван <octagram@bluebottle.com>.
16895
16896 2007-12-23  Bruno Haible  <bruno@clisp.org>
16897
16898         * lib/memmem.c (memmem): Use lowercase variable names. Tab
16899         indentation.
16900
16901 2007-12-23  Bruno Haible  <bruno@clisp.org>
16902
16903         * lib/c-strcasestr.c: Add more comments.
16904         * lib/c-strstr.c: Likewise.
16905         * lib/mbscasestr.c: Likewise.
16906         * lib/mbsstr.c: Likewise.
16907         * lib/strcasestr.c: Likewise.
16908         * lib/memmem.c: Likewise.
16909
16910 2007-12-23  Bruno Haible  <bruno@clisp.org>
16911
16912         * tests/test-memmem.c: Include <string.h> first.
16913
16914 2007-12-22  Bruno Haible  <bruno@clisp.org>
16915
16916         * gnulib-tool (func_create_testdir): Change $auxdir while generating
16917         the contents of $testsbase.
16918         Reported by Ralf Wildenhues.
16919
16920 2007-12-22  Bruno Haible  <bruno@clisp.org>
16921
16922         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
16923         two variables local_ldadd_before, local_ldadd_last.
16924
16925 2007-12-20  Eric Blake  <ebb9@byu.net>
16926
16927         Work around circular library issue when cross-compiling.
16928         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
16929         that progname.o does not need to pull in rpl_memcmp.
16930
16931 2007-12-19  Eric Blake  <ebb9@byu.net>
16932
16933         Fix memmem to avoid O(n^2) worst-case complexity.
16934         * lib/memmem.c (knuth_morris_pratt): New function.
16935         (memmem): Use it if first few naive iterations fail.
16936         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
16937         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
16938         * modules/memchr (License): Likewise.
16939         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
16940         malloca.
16941         * tests/test-memmem.c: Rewrite, borrowing ideas from
16942         test-mbsstr1.c; the old version wouldn't even compile!
16943         * modules/memmem-tests: New file.
16944         * lib/string.in.h (rpl_memmem): Add declaration.
16945         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
16946         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
16947         REPLACE_MEMMEM.
16948
16949 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
16950
16951         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
16952         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
16953         before any system include files, and undef after them all.  This
16954         should fix a problem on VMS reported by John E. Malmberg in
16955         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
16956
16957 2007-12-17  Eric Blake  <ebb9@byu.net>
16958
16959         Revert addition of verify, for BSD/OS.
16960         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
16961         can't handle large files, for the sake of obsolete platforms.
16962         * modules/fseeko (Depends-on): Remove verify.
16963         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
16964         * doc/functions/ftello.texi (ftello): Likewise.
16965         * doc/functions/fgetpos.texi (fgetpos): Likewise.
16966         Reported by Larry Jones.
16967
16968 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
16969
16970         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
16971         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
16972
16973 2007-12-17  Jim Meyering  <meyering@redhat.com>
16974
16975         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
16976         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
16977         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
16978         * modules/getcwd (Depends-on): Add openat.
16979         Reported by Petr Salinger.
16980
16981 2007-12-17  Bruno Haible  <bruno@clisp.org>
16982
16983         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
16984         avoid a segmentation fault of the configure test on x86_64 systems.
16985
16986 2007-12-15  Jim Meyering  <meyering@redhat.com>
16987
16988         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
16989
16990 2007-12-13  Eric Blake  <ebb9@byu.net>
16991
16992         Another fseek test.
16993         * tests/test-fseek.c (main): Also test ungetc handling.
16994         * tests/test-fseeko.c (main): Likewise.
16995         * modules/fseeko (Depends-on): Add verify.
16996         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
16997         large.
16998         Reported by Larry Jones.
16999
17000         Fix fseeko on mingw.
17001         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
17002         seek.
17003
17004         Beef up fseek tests.
17005         * tests/test-fseek.c (main): Also test eof handling.
17006         * tests/test-fseeko.c (main): Likewise.
17007         Reported by Larry Jones.
17008
17009 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
17010
17011         Fix fseeko on BSD-based platforms.
17012         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
17013         successful seek.
17014
17015 2007-12-12  Eric Blake  <ebb9@byu.net>
17016
17017         Allow circular dependency of separate libtests.a
17018         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
17019         when use_libtests.
17020
17021 2007-12-11  Eric Blake  <ebb9@byu.net>
17022
17023         Fix bug with -0.0L in previous patch.
17024         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
17025         * tests/test-isnan.c (main): Also test on zeroes.
17026         * tests/test-isnanf.c (main): Likewise.
17027         * tests/test-isnanl.h (main): Likewise.
17028
17029         Detect pseudo-denormals on x86 even when cross-compiling.
17030         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
17031         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
17032         invalid bit patterns that happen to satisfy ==.
17033
17034         Avoid link failures with separate libtests.a.
17035         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
17036         last, to satisfy circular dependencies.
17037
17038 2007-12-11  Eric Blake  <ebb9@byu.net>
17039         and Bruno Haible  <bruno@clisp.org>
17040
17041         Fix OpenBSD 4.0 <float.h> handling of long double.
17042         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
17043         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
17044         * doc/headers/float.texi (float.h): Document OpenBSD bug.
17045
17046 2007-12-11  Jim Meyering  <meyering@redhat.com>
17047
17048         * users.txt: Add libvirt.
17049
17050         Support versions of autoconf prior to 2.59c.
17051         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
17052         if it is not already defined.
17053
17054 2007-12-09  Bruno Haible  <bruno@clisp.org>
17055
17056         Let 'gnulib-tool --import' collect sources needed for the tests in
17057         tests/ rather than in lib/.
17058         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
17059         argument. If true, add rules to generate libtests.a, and put libtests.a
17060         into $(LDADD). Consider source files in subdirectories and set
17061         uses_subdirs.
17062         (func_emit_initmacro_start, func_emit_initmacro_end,
17063         func_emit_initmacro_done): Pass all arguments explicitly.
17064         (func_import): Determine two module lists main_modules,
17065         testsrelated_modules. Determine use_libtests. Determine two variables
17066         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
17067         instead of just sed_transform_lib_file. Determine two variables
17068         main_files and testsrelated_files. Compute 'files' as the union of
17069         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
17070         func_add_or_update. In the generated gnulib-comp.m4, collect the
17071         object files for tests/ in different variables than those for lib/.
17072         Substitute LIBTESTS_LIBDEPS.
17073         (func_create_testdir): Combine the uses_subdirs results from
17074         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
17075
17076 2007-12-09  Bruno Haible  <bruno@clisp.org>
17077
17078         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
17079         the build-aux directory.
17080
17081 2007-12-09  Bruno Haible  <bruno@clisp.org>
17082
17083         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
17084         introduced on 2006-09-09.
17085
17086 2007-12-07  Jim Meyering  <meyering@redhat.com>
17087
17088         Let these macros work also with autoconf-2.59.
17089         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
17090         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
17091         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
17092
17093 2007-12-06  Jim Meyering  <meyering@redhat.com>
17094
17095         Avoid a configure-time syntax error in gl_FUNC_ACL.
17096         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
17097         function in each branch, before testing the cache variable.
17098
17099 2007-12-04  Eric Blake  <ebb9@byu.net>
17100
17101         Make scripts executable.
17102         * build-aux/config.guess: Add execute permissions.
17103         * build-aux/config.sub: Likewise.
17104         * build-aux/gendocs.sh: Likewise.
17105
17106         Fix frexp on mingw.
17107         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
17108         cross-compiling.
17109         * doc/functions/frexp.texi (frexp): Document the bug.
17110
17111         Make cygwin fseeko check more reliable.
17112         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
17113         version numbers, rather than unrelated feature check.
17114         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
17115         * doc/functions/ftello.texi (ftello): Likewise.
17116         Reported by Bruno Haible.
17117
17118         * m4/strerror.m4: Bump version number.
17119
17120 2007-12-03  Bruno Haible  <bruno@clisp.org>
17121
17122         * doc/functions/mprotect.texi: Mention the mingw problem.
17123
17124 2007-12-03  Eric Blake  <ebb9@byu.net>
17125
17126         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
17127         REPLACE_STRERROR is initialized before this macro.
17128
17129 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
17130
17131         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
17132         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
17133         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
17134         put -lsec in even for programs other than 'ls'.  This fixes a problem
17135         for gettext reported by Bruno Haible in
17136         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
17137         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
17138         Add support for Solaris 10.  This isn't efficient, but should get the
17139         job done for now.
17140
17141 2007-12-03  James Youngman  <jay@gnu.org>
17142
17143         * doc/regexprops-generic.texi: change "an close-group" to "a
17144         close-group" and "illegal" to "not allowed".
17145
17146 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17147
17148         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
17149         pr_byname.h. Needed for the rare case when the maintainer has done
17150         "make maintainer-clean" in the source directory and then attempts a
17151         build outside the source directory.
17152         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
17153         scripts_byname.h.
17154
17155 2007-12-02  Martin Lambers <marlam@marlam.de>
17156             Bruno Haible  <bruno@clisp.org>
17157
17158         * lib/getpagesize.h: Remove file.
17159         * lib/unistd.in.h: Include declaration of getpagesize here.
17160         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
17161         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
17162         HAVE_SYS_PARAM_H.
17163         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
17164         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
17165         * modules/getpagesize (Files): Remove lib/getpagesize.h.
17166         (Depends-on): Add unistd.
17167         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
17168         (Include): Use <unistd.h> instead of getpagesize.h.
17169         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
17170         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
17171         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
17172         gl_GETPAGESIZE invocation, already handled by module dependency.
17173         * lib/pagealign_alloc.c: Don't include getpagesize.h.
17174
17175 2007-12-02  Bruno Haible  <bruno@clisp.org>
17176
17177         * modules/strings-tests: New file.
17178         * tests/test-strings.c: New file.
17179
17180         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
17181         * lib/strings.in.h: New file.
17182         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
17183         * m4/strings_h.m4: New file.
17184         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
17185         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
17186         * modules/strings: New file.
17187         * modules/string (Makefile.am): Update.
17188         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
17189         Reported by Karl Berry.
17190
17191 2007-12-01  Eric Blake  <ebb9@byu.net>
17192
17193         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
17194         accomodate fix in cygwin 1.5.25.
17195
17196 2007-12-01  Jim Meyering  <meyering@redhat.com>
17197
17198         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
17199         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
17200         that would inhibit utf8-optimization of a regexp containing line-
17201         or buffer-anchors, e.g., `^', `$'.
17202
17203 2007-11-30  Bruno Haible  <bruno@clisp.org>
17204
17205         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
17206         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
17207         glthread_recursive_lock_init.
17208         * lib/lock.c (glthread_recursive_lock_init)
17209         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
17210         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
17211
17212 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
17213
17214         New function qset_acl, like set_acl but with syscall semantics.
17215         * lib/acl.h (qset_acl): New decl.
17216         * lib/acl.c (qset_acl): New function.
17217         (set_acl): Use new function.  Use more-consistent diagnostics.
17218
17219 2007-11-28  Jim Meyering  <meyering@redhat.com>
17220
17221         * modules/physmem (License): Change from GPL to LGPLv2+.
17222
17223 2007-11-26  Bruno Haible  <bruno@clisp.org>
17224
17225         * lib/vasnprintf.c (decode_long_double): Don't abort if the
17226         'long double' type has excess precision.
17227         Reported by Jim Meyering in
17228         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
17229
17230 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17231
17232         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
17233         Sync from <http://gnu.org/licenses>.
17234         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
17235         with license text from same location.
17236         * doc/maintain.texi, doc/standards.texi:  Sync from
17237         <http://savannah.gnu.org/projects/gnustandards>.
17238
17239 2007-11-22  Ondřej Vašík  <ovasik@redhat.com>
17240         and Jim Meyering  <meyering@redhat.com>
17241
17242         Adjust getdate' grammar to accept a slightly more regular language.
17243         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
17244         Before, the former was rejected.
17245         * lib/getdate.y (digits_to_date_time): New function, factored
17246         out of ...
17247         (number): ...here.  Just call digits_to_date_time.
17248         (hybrid): New non-terminal to handle an <unsigned number,
17249         signed relative offset> sequence consistently.
17250
17251 2007-11-18  Jim Meyering  <meyering@redhat.com>
17252
17253         Pull my changes from coreutils:
17254         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
17255         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
17256         use of $gnulib_tool_option_extras, so that it's separated from the
17257         preceding argument.
17258
17259         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
17260         * build-aux/bootstrap (cp_mark_as_generated): Create any required
17261         parent destination directories before copying a file into place.
17262
17263 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
17264
17265         bootstrap: work also with 4-argument variant of AC_INIT
17266         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
17267
17268 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
17269
17270         Port test-getaddrinfo to Solaris.
17271         Problem reported by Bruno Haible in
17272         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
17273         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
17274         explanation of setting 'hints'.
17275         Don't reject an implementation merely because it returns EAI_SERVICE.
17276         (EAI_SERVICE): Define to 0 if not defined.
17277
17278 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
17279
17280         The license of gnu-make and posix-shell is now "GPLed build tool".
17281         * modules/gnu-make (License): Likewise.
17282         * modules/posix-shell (License): Likewise.
17283
17284         New module posix-shell, for determining a POSIX shell
17285         or perhaps something that is close enough to a POSIX shell.
17286         * m4/posix-shell.m4: New file.
17287         * modules/posix-shell: New file.
17288
17289         * MODULES.html.sh: Mention new module.
17290
17291         New module gnu-make, for determining whether we're using GNU Make.
17292         * m4/gnu-make.m4: New file.
17293         * modules/gnu-make: New file.
17294         * MODULES.html.sh: Mention new module.
17295
17296 2007-11-14  Jim Meyering  <meyering@redhat.com>
17297
17298         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
17299         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
17300         use this macro to create a function _definition_.
17301         Remove useless "#undef ARGMATCH_DIE".
17302
17303 2007-11-14  Bruno Haible  <bruno@clisp.org>
17304
17305         * lib/config.charset: Update for OpenBSD 4.1.
17306         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
17307
17308 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
17309
17310         Document 64-bit #if problems in stdint.texi.
17311         * doc/headers/stdint.texi (stdint.h): Mention problems with
17312         64-bit-#if, and how to work around them.
17313
17314         Don't insist on 'long long int' support in the preprocessor.  It
17315         breaks too many things.  For example, PRIdMAX still uses a 'long
17316         long int' format with the latest Sun compiler, even though
17317         HAVE_LONG_LONG_INT isn't defined due to that compiler's
17318         preprocessor problem.  This causes the latest coreutils to dump
17319         core on Solaris 10 sparc with the Sun C compiler.
17320         Instead, fix the 2007-10-16 problem in a different way, by evaluating
17321         the troublesome expressions at configure-time, not at #if-time.
17322         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
17323         preprocessor.
17324         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
17325         compile-time C checks, done at 'configure'-time.
17326         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
17327         * modules/inttypes (Makefile): Substitute the new symbols that
17328         gl_INTTYPES_H now generates.
17329         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
17330
17331 2007-11-12  Bruno Haible  <bruno@clisp.org>
17332
17333         Tests for Unicode character classification functions.
17334
17335         * modules/unictype/bidicategory-byname-tests: New file.
17336         * modules/unictype/bidicategory-name-tests: New file.
17337         * modules/unictype/bidicategory-of-tests: New file.
17338         * modules/unictype/bidicategory-test-tests: New file.
17339         * modules/unictype/block-list-tests: New file.
17340         * modules/unictype/block-of-tests: New file.
17341         * modules/unictype/block-test-tests: New file.
17342         * modules/unictype/category-C-tests: New file.
17343         * modules/unictype/category-Cc-tests: New file.
17344         * modules/unictype/category-Cf-tests: New file.
17345         * modules/unictype/category-Cn-tests: New file.
17346         * modules/unictype/category-Co-tests: New file.
17347         * modules/unictype/category-Cs-tests: New file.
17348         * modules/unictype/category-L-tests: New file.
17349         * modules/unictype/category-Ll-tests: New file.
17350         * modules/unictype/category-Lm-tests: New file.
17351         * modules/unictype/category-Lo-tests: New file.
17352         * modules/unictype/category-Lt-tests: New file.
17353         * modules/unictype/category-Lu-tests: New file.
17354         * modules/unictype/category-M-tests: New file.
17355         * modules/unictype/category-Mc-tests: New file.
17356         * modules/unictype/category-Me-tests: New file.
17357         * modules/unictype/category-Mn-tests: New file.
17358         * modules/unictype/category-N-tests: New file.
17359         * modules/unictype/category-Nd-tests: New file.
17360         * modules/unictype/category-Nl-tests: New file.
17361         * modules/unictype/category-No-tests: New file.
17362         * modules/unictype/category-P-tests: New file.
17363         * modules/unictype/category-Pc-tests: New file.
17364         * modules/unictype/category-Pd-tests: New file.
17365         * modules/unictype/category-Pe-tests: New file.
17366         * modules/unictype/category-Pf-tests: New file.
17367         * modules/unictype/category-Pi-tests: New file.
17368         * modules/unictype/category-Po-tests: New file.
17369         * modules/unictype/category-Ps-tests: New file.
17370         * modules/unictype/category-S-tests: New file.
17371         * modules/unictype/category-Sc-tests: New file.
17372         * modules/unictype/category-Sk-tests: New file.
17373         * modules/unictype/category-Sm-tests: New file.
17374         * modules/unictype/category-So-tests: New file.
17375         * modules/unictype/category-Z-tests: New file.
17376         * modules/unictype/category-Zl-tests: New file.
17377         * modules/unictype/category-Zp-tests: New file.
17378         * modules/unictype/category-Zs-tests: New file.
17379         * modules/unictype/category-and-not-tests: New file.
17380         * modules/unictype/category-and-tests: New file.
17381         * modules/unictype/category-byname-tests: New file.
17382         * modules/unictype/category-name-tests: New file.
17383         * modules/unictype/category-none-tests: New file.
17384         * modules/unictype/category-of-tests: New file.
17385         * modules/unictype/category-or-tests: New file.
17386         * modules/unictype/category-test-withtable-tests: New file.
17387         * modules/unictype/combining-class-tests: New file.
17388         * modules/unictype/ctype-alnum-tests: New file.
17389         * modules/unictype/ctype-alpha-tests: New file.
17390         * modules/unictype/ctype-blank-tests: New file.
17391         * modules/unictype/ctype-cntrl-tests: New file.
17392         * modules/unictype/ctype-digit-tests: New file.
17393         * modules/unictype/ctype-graph-tests: New file.
17394         * modules/unictype/ctype-lower-tests: New file.
17395         * modules/unictype/ctype-print-tests: New file.
17396         * modules/unictype/ctype-punct-tests: New file.
17397         * modules/unictype/ctype-space-tests: New file.
17398         * modules/unictype/ctype-upper-tests: New file.
17399         * modules/unictype/ctype-xdigit-tests: New file.
17400         * modules/unictype/decimal-digit-tests: New file.
17401         * modules/unictype/digit-tests: New file.
17402         * modules/unictype/mirror-tests: New file.
17403         * modules/unictype/numeric-tests: New file.
17404         * modules/unictype/property-alphabetic-tests: New file.
17405         * modules/unictype/property-ascii-hex-digit-tests: New file.
17406         * modules/unictype/property-bidi-arabic-digit-tests: New file.
17407         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
17408         * modules/unictype/property-bidi-block-separator-tests: New file.
17409         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
17410         * modules/unictype/property-bidi-common-separator-tests: New file.
17411         * modules/unictype/property-bidi-control-tests: New file.
17412         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
17413         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
17414         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
17415         * modules/unictype/property-bidi-european-digit-tests: New file.
17416         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
17417         * modules/unictype/property-bidi-left-to-right-tests: New file.
17418         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
17419         * modules/unictype/property-bidi-other-neutral-tests: New file.
17420         * modules/unictype/property-bidi-pdf-tests: New file.
17421         * modules/unictype/property-bidi-segment-separator-tests: New file.
17422         * modules/unictype/property-bidi-whitespace-tests: New file.
17423         * modules/unictype/property-byname-tests: New file.
17424         * modules/unictype/property-combining-tests: New file.
17425         * modules/unictype/property-composite-tests: New file.
17426         * modules/unictype/property-currency-symbol-tests: New file.
17427         * modules/unictype/property-dash-tests: New file.
17428         * modules/unictype/property-decimal-digit-tests: New file.
17429         * modules/unictype/property-default-ignorable-code-point-tests: New file.
17430         * modules/unictype/property-deprecated-tests: New file.
17431         * modules/unictype/property-diacritic-tests: New file.
17432         * modules/unictype/property-extender-tests: New file.
17433         * modules/unictype/property-format-control-tests: New file.
17434         * modules/unictype/property-grapheme-base-tests: New file.
17435         * modules/unictype/property-grapheme-extend-tests: New file.
17436         * modules/unictype/property-grapheme-link-tests: New file.
17437         * modules/unictype/property-hex-digit-tests: New file.
17438         * modules/unictype/property-hyphen-tests: New file.
17439         * modules/unictype/property-id-continue-tests: New file.
17440         * modules/unictype/property-id-start-tests: New file.
17441         * modules/unictype/property-ideographic-tests: New file.
17442         * modules/unictype/property-ids-binary-operator-tests: New file.
17443         * modules/unictype/property-ids-trinary-operator-tests: New file.
17444         * modules/unictype/property-ignorable-control-tests: New file.
17445         * modules/unictype/property-iso-control-tests: New file.
17446         * modules/unictype/property-join-control-tests: New file.
17447         * modules/unictype/property-left-of-pair-tests: New file.
17448         * modules/unictype/property-line-separator-tests: New file.
17449         * modules/unictype/property-logical-order-exception-tests: New file.
17450         * modules/unictype/property-lowercase-tests: New file.
17451         * modules/unictype/property-math-tests: New file.
17452         * modules/unictype/property-non-break-tests: New file.
17453         * modules/unictype/property-not-a-character-tests: New file.
17454         * modules/unictype/property-numeric-tests: New file.
17455         * modules/unictype/property-other-alphabetic-tests: New file.
17456         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
17457         * modules/unictype/property-other-grapheme-extend-tests: New file.
17458         * modules/unictype/property-other-id-continue-tests: New file.
17459         * modules/unictype/property-other-id-start-tests: New file.
17460         * modules/unictype/property-other-lowercase-tests: New file.
17461         * modules/unictype/property-other-math-tests: New file.
17462         * modules/unictype/property-other-uppercase-tests: New file.
17463         * modules/unictype/property-paired-punctuation-tests: New file.
17464         * modules/unictype/property-paragraph-separator-tests: New file.
17465         * modules/unictype/property-pattern-syntax-tests: New file.
17466         * modules/unictype/property-pattern-white-space-tests: New file.
17467         * modules/unictype/property-private-use-tests: New file.
17468         * modules/unictype/property-punctuation-tests: New file.
17469         * modules/unictype/property-quotation-mark-tests: New file.
17470         * modules/unictype/property-radical-tests: New file.
17471         * modules/unictype/property-sentence-terminal-tests: New file.
17472         * modules/unictype/property-soft-dotted-tests: New file.
17473         * modules/unictype/property-space-tests: New file.
17474         * modules/unictype/property-terminal-punctuation-tests: New file.
17475         * modules/unictype/property-test-tests: New file.
17476         * modules/unictype/property-titlecase-tests: New file.
17477         * modules/unictype/property-unassigned-code-value-tests: New file.
17478         * modules/unictype/property-unified-ideograph-tests: New file.
17479         * modules/unictype/property-uppercase-tests: New file.
17480         * modules/unictype/property-variation-selector-tests: New file.
17481         * modules/unictype/property-white-space-tests: New file.
17482         * modules/unictype/property-xid-continue-tests: New file.
17483         * modules/unictype/property-xid-start-tests: New file.
17484         * modules/unictype/property-zero-width-tests: New file.
17485         * modules/unictype/scripts-tests: New file.
17486         * modules/unictype/syntax-c-ident-tests: New file.
17487         * modules/unictype/syntax-c-whitespace-tests: New file.
17488         * modules/unictype/syntax-java-ident-tests: New file.
17489         * modules/unictype/syntax-java-whitespace-tests: New file.
17490         * tests/unictype/test-bidi_byname.c: New file.
17491         * tests/unictype/test-bidi_name.c: New file.
17492         * tests/unictype/test-bidi_of.c: New file.
17493         * tests/unictype/test-bidi_test.c: New file.
17494         * tests/unictype/test-block_list.c: New file.
17495         * tests/unictype/test-block_of.c: New file.
17496         * tests/unictype/test-block_test.c: New file.
17497         * tests/unictype/test-categ_and.c: New file.
17498         * tests/unictype/test-categ_and_not.c: New file.
17499         * tests/unictype/test-categ_byname.c: New file.
17500         * tests/unictype/test-categ_name.c: New file.
17501         * tests/unictype/test-categ_none.c: New file.
17502         * tests/unictype/test-categ_of.c: New file.
17503         * tests/unictype/test-categ_or.c: New file.
17504         * tests/unictype/test-categ_test_withtable.c: New file.
17505         * tests/unictype/test-combining.c: New file.
17506         * tests/unictype/test-decdigit.c: New file.
17507         * tests/unictype/test-digit.c: New file.
17508         * tests/unictype/test-mirror.c: New file.
17509         * tests/unictype/test-numeric.c: New file.
17510         * tests/unictype/test-pr_byname.c: New file.
17511         * tests/unictype/test-pr_test.c: New file.
17512         * tests/unictype/test-predicate-part1.h: New file.
17513         * tests/unictype/test-predicate-part2.h: New file.
17514         * tests/unictype/test-scripts.c: New file.
17515         * tests/unictype/test-sy_c_ident.c: New file.
17516         * tests/unictype/test-sy_java_ident.c: New file.
17517
17518         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
17519         for Unicode 5.0.0.
17520         * tests/unictype/test-categ_Cc.c: Likewise.
17521         * tests/unictype/test-categ_Cf.c: Likewise.
17522         * tests/unictype/test-categ_Cn.c: Likewise.
17523         * tests/unictype/test-categ_Co.c: Likewise.
17524         * tests/unictype/test-categ_Cs.c: Likewise.
17525         * tests/unictype/test-categ_L.c: Likewise.
17526         * tests/unictype/test-categ_Ll.c: Likewise.
17527         * tests/unictype/test-categ_Lm.c: Likewise.
17528         * tests/unictype/test-categ_Lo.c: Likewise.
17529         * tests/unictype/test-categ_Lt.c: Likewise.
17530         * tests/unictype/test-categ_Lu.c: Likewise.
17531         * tests/unictype/test-categ_M.c: Likewise.
17532         * tests/unictype/test-categ_Mc.c: Likewise.
17533         * tests/unictype/test-categ_Me.c: Likewise.
17534         * tests/unictype/test-categ_Mn.c: Likewise.
17535         * tests/unictype/test-categ_N.c: Likewise.
17536         * tests/unictype/test-categ_Nd.c: Likewise.
17537         * tests/unictype/test-categ_Nl.c: Likewise.
17538         * tests/unictype/test-categ_No.c: Likewise.
17539         * tests/unictype/test-categ_P.c: Likewise.
17540         * tests/unictype/test-categ_Pc.c: Likewise.
17541         * tests/unictype/test-categ_Pd.c: Likewise.
17542         * tests/unictype/test-categ_Pe.c: Likewise.
17543         * tests/unictype/test-categ_Pf.c: Likewise.
17544         * tests/unictype/test-categ_Pi.c: Likewise.
17545         * tests/unictype/test-categ_Po.c: Likewise.
17546         * tests/unictype/test-categ_Ps.c: Likewise.
17547         * tests/unictype/test-categ_S.c: Likewise.
17548         * tests/unictype/test-categ_Sc.c: Likewise.
17549         * tests/unictype/test-categ_Sk.c: Likewise.
17550         * tests/unictype/test-categ_Sm.c: Likewise.
17551         * tests/unictype/test-categ_So.c: Likewise.
17552         * tests/unictype/test-categ_Z.c: Likewise.
17553         * tests/unictype/test-categ_Zl.c: Likewise.
17554         * tests/unictype/test-categ_Zp.c: Likewise.
17555         * tests/unictype/test-categ_Zs.c: Likewise.
17556         * tests/unictype/test-ctype_alnum.c: Likewise.
17557         * tests/unictype/test-ctype_alpha.c: Likewise.
17558         * tests/unictype/test-ctype_blank.c: Likewise.
17559         * tests/unictype/test-ctype_cntrl.c: Likewise.
17560         * tests/unictype/test-ctype_digit.c: Likewise.
17561         * tests/unictype/test-ctype_graph.c: Likewise.
17562         * tests/unictype/test-ctype_lower.c: Likewise.
17563         * tests/unictype/test-ctype_print.c: Likewise.
17564         * tests/unictype/test-ctype_punct.c: Likewise.
17565         * tests/unictype/test-ctype_space.c: Likewise.
17566         * tests/unictype/test-ctype_upper.c: Likewise.
17567         * tests/unictype/test-ctype_xdigit.c: Likewise.
17568         * tests/unictype/test-decdigit.h: Likewise.
17569         * tests/unictype/test-digit.h: Likewise.
17570         * tests/unictype/test-numeric.h: Likewise.
17571         * tests/unictype/test-pr_alphabetic.c: Likewise.
17572         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
17573         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
17574         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
17575         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
17576         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
17577         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
17578         * tests/unictype/test-pr_bidi_control.c: Likewise.
17579         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
17580         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
17581         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
17582         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
17583         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
17584         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
17585         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
17586         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
17587         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
17588         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
17589         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
17590         * tests/unictype/test-pr_combining.c: Likewise.
17591         * tests/unictype/test-pr_composite.c: Likewise.
17592         * tests/unictype/test-pr_currency_symbol.c: Likewise.
17593         * tests/unictype/test-pr_dash.c: Likewise.
17594         * tests/unictype/test-pr_decimal_digit.c: Likewise.
17595         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
17596         * tests/unictype/test-pr_deprecated.c: Likewise.
17597         * tests/unictype/test-pr_diacritic.c: Likewise.
17598         * tests/unictype/test-pr_extender.c: Likewise.
17599         * tests/unictype/test-pr_format_control.c: Likewise.
17600         * tests/unictype/test-pr_grapheme_base.c: Likewise.
17601         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
17602         * tests/unictype/test-pr_grapheme_link.c: Likewise.
17603         * tests/unictype/test-pr_hex_digit.c: Likewise.
17604         * tests/unictype/test-pr_hyphen.c: Likewise.
17605         * tests/unictype/test-pr_id_continue.c: Likewise.
17606         * tests/unictype/test-pr_id_start.c: Likewise.
17607         * tests/unictype/test-pr_ideographic.c: Likewise.
17608         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
17609         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
17610         * tests/unictype/test-pr_ignorable_control.c: Likewise.
17611         * tests/unictype/test-pr_iso_control.c: Likewise.
17612         * tests/unictype/test-pr_join_control.c: Likewise.
17613         * tests/unictype/test-pr_left_of_pair.c: Likewise.
17614         * tests/unictype/test-pr_line_separator.c: Likewise.
17615         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
17616         * tests/unictype/test-pr_lowercase.c: Likewise.
17617         * tests/unictype/test-pr_math.c: Likewise.
17618         * tests/unictype/test-pr_non_break.c: Likewise.
17619         * tests/unictype/test-pr_not_a_character.c: Likewise.
17620         * tests/unictype/test-pr_numeric.c: Likewise.
17621         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
17622         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
17623         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
17624         * tests/unictype/test-pr_other_id_continue.c: Likewise.
17625         * tests/unictype/test-pr_other_id_start.c: Likewise.
17626         * tests/unictype/test-pr_other_lowercase.c: Likewise.
17627         * tests/unictype/test-pr_other_math.c: Likewise.
17628         * tests/unictype/test-pr_other_uppercase.c: Likewise.
17629         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
17630         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
17631         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
17632         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
17633         * tests/unictype/test-pr_private_use.c: Likewise.
17634         * tests/unictype/test-pr_punctuation.c: Likewise.
17635         * tests/unictype/test-pr_quotation_mark.c: Likewise.
17636         * tests/unictype/test-pr_radical.c: Likewise.
17637         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
17638         * tests/unictype/test-pr_soft_dotted.c: Likewise.
17639         * tests/unictype/test-pr_space.c: Likewise.
17640         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
17641         * tests/unictype/test-pr_titlecase.c: Likewise.
17642         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
17643         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
17644         * tests/unictype/test-pr_uppercase.c: Likewise.
17645         * tests/unictype/test-pr_variation_selector.c: Likewise.
17646         * tests/unictype/test-pr_white_space.c: Likewise.
17647         * tests/unictype/test-pr_xid_continue.c: Likewise.
17648         * tests/unictype/test-pr_xid_start.c: Likewise.
17649         * tests/unictype/test-pr_zero_width.c: Likewise.
17650         * tests/unictype/test-sy_c_whitespace.c: Likewise.
17651         * tests/unictype/test-sy_java_whitespace.c: Likewise.
17652
17653 2007-11-12  Bruno Haible  <bruno@clisp.org>
17654
17655         Unicode character classification functions.
17656         * lib/unictype.h: New file.
17657         * modules/unictype/base: New file.
17658         * modules/unictype/category-L: New file.
17659         * modules/unictype/category-Lu: New file.
17660         * modules/unictype/category-Ll: New file.
17661         * modules/unictype/category-Lt: New file.
17662         * modules/unictype/category-Lm: New file.
17663         * modules/unictype/category-Lo: New file.
17664         * modules/unictype/category-M: New file.
17665         * modules/unictype/category-Mn: New file.
17666         * modules/unictype/category-Mc: New file.
17667         * modules/unictype/category-Me: New file.
17668         * modules/unictype/category-N: New file.
17669         * modules/unictype/category-Nd: New file.
17670         * modules/unictype/category-Nl: New file.
17671         * modules/unictype/category-No: New file.
17672         * modules/unictype/category-P: New file.
17673         * modules/unictype/category-Pc: New file.
17674         * modules/unictype/category-Pd: New file.
17675         * modules/unictype/category-Ps: New file.
17676         * modules/unictype/category-Pe: New file.
17677         * modules/unictype/category-Pi: New file.
17678         * modules/unictype/category-Pf: New file.
17679         * modules/unictype/category-Po: New file.
17680         * modules/unictype/category-S: New file.
17681         * modules/unictype/category-Sm: New file.
17682         * modules/unictype/category-Sc: New file.
17683         * modules/unictype/category-Sk: New file.
17684         * modules/unictype/category-So: New file.
17685         * modules/unictype/category-Z: New file.
17686         * modules/unictype/category-Zs: New file.
17687         * modules/unictype/category-Zl: New file.
17688         * modules/unictype/category-Zp: New file.
17689         * modules/unictype/category-C: New file.
17690         * modules/unictype/category-Cc: New file.
17691         * modules/unictype/category-Cf: New file.
17692         * modules/unictype/category-Cs: New file.
17693         * modules/unictype/category-Co: New file.
17694         * modules/unictype/category-Cn: New file.
17695         * modules/unictype/category-or: New file.
17696         * modules/unictype/category-of: New file.
17697         * modules/unictype/category-test: New file.
17698         * modules/unictype/category-test-withtable: New file.
17699         * modules/unictype/category-byname: New file.
17700         * modules/unictype/category-none: New file.
17701         * modules/unictype/category-and: New file.
17702         * modules/unictype/category-and-not: New file.
17703         * modules/unictype/category-name: New file.
17704         * modules/unictype/combining-class: New file.
17705         * modules/unictype/category-all: New file.
17706         * modules/unictype/bidicategory-all: New file.
17707         * modules/unictype/bidicategory-byname: New file.
17708         * modules/unictype/bidicategory-name: New file.
17709         * modules/unictype/bidicategory-of: New file.
17710         * modules/unictype/bidicategory-test: New file.
17711         * modules/unictype/decimal-digit: New file.
17712         * modules/unictype/digit: New file.
17713         * modules/unictype/numeric: New file.
17714         * modules/unictype/mirror: New file.
17715         * modules/unictype/property-white-space: New file.
17716         * modules/unictype/property-alphabetic: New file.
17717         * modules/unictype/property-other-alphabetic: New file.
17718         * modules/unictype/property-not-a-character: New file.
17719         * modules/unictype/property-default-ignorable-code-point: New file.
17720         * modules/unictype/property-other-default-ignorable-code-point: New
17721         file.
17722         * modules/unictype/property-deprecated: New file.
17723         * modules/unictype/property-logical-order-exception: New file.
17724         * modules/unictype/property-variation-selector: New file.
17725         * modules/unictype/property-private-use: New file.
17726         * modules/unictype/property-unassigned-code-value: New file.
17727         * modules/unictype/property-uppercase: New file.
17728         * modules/unictype/property-other-uppercase: New file.
17729         * modules/unictype/property-lowercase: New file.
17730         * modules/unictype/property-other-lowercase: New file.
17731         * modules/unictype/property-titlecase: New file.
17732         * modules/unictype/property-soft-dotted: New file.
17733         * modules/unictype/property-id-start: New file.
17734         * modules/unictype/property-other-id-start: New file.
17735         * modules/unictype/property-id-continue: New file.
17736         * modules/unictype/property-other-id-continue: New file.
17737         * modules/unictype/property-xid-start: New file.
17738         * modules/unictype/property-xid-continue: New file.
17739         * modules/unictype/property-pattern-white-space: New file.
17740         * modules/unictype/property-pattern-syntax: New file.
17741         * modules/unictype/property-join-control: New file.
17742         * modules/unictype/property-grapheme-base: New file.
17743         * modules/unictype/property-grapheme-extend: New file.
17744         * modules/unictype/property-other-grapheme-extend: New file.
17745         * modules/unictype/property-grapheme-link: New file.
17746         * modules/unictype/property-bidi-control: New file.
17747         * modules/unictype/property-bidi-left-to-right: New file.
17748         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
17749         * modules/unictype/property-bidi-arabic-right-to-left: New file.
17750         * modules/unictype/property-bidi-european-digit: New file.
17751         * modules/unictype/property-bidi-eur-num-separator: New file.
17752         * modules/unictype/property-bidi-eur-num-terminator: New file.
17753         * modules/unictype/property-bidi-arabic-digit: New file.
17754         * modules/unictype/property-bidi-common-separator: New file.
17755         * modules/unictype/property-bidi-block-separator: New file.
17756         * modules/unictype/property-bidi-segment-separator: New file.
17757         * modules/unictype/property-bidi-whitespace: New file.
17758         * modules/unictype/property-bidi-non-spacing-mark: New file.
17759         * modules/unictype/property-bidi-boundary-neutral: New file.
17760         * modules/unictype/property-bidi-pdf: New file.
17761         * modules/unictype/property-bidi-embedding-or-override: New file.
17762         * modules/unictype/property-bidi-other-neutral: New file.
17763         * modules/unictype/property-hex-digit: New file.
17764         * modules/unictype/property-ascii-hex-digit: New file.
17765         * modules/unictype/property-ideographic: New file.
17766         * modules/unictype/property-unified-ideograph: New file.
17767         * modules/unictype/property-radical: New file.
17768         * modules/unictype/property-ids-binary-operator: New file.
17769         * modules/unictype/property-ids-trinary-operator: New file.
17770         * modules/unictype/property-zero-width: New file.
17771         * modules/unictype/property-space: New file.
17772         * modules/unictype/property-non-break: New file.
17773         * modules/unictype/property-iso-control: New file.
17774         * modules/unictype/property-format-control: New file.
17775         * modules/unictype/property-dash: New file.
17776         * modules/unictype/property-hyphen: New file.
17777         * modules/unictype/property-punctuation: New file.
17778         * modules/unictype/property-line-separator: New file.
17779         * modules/unictype/property-paragraph-separator: New file.
17780         * modules/unictype/property-quotation-mark: New file.
17781         * modules/unictype/property-sentence-terminal: New file.
17782         * modules/unictype/property-terminal-punctuation: New file.
17783         * modules/unictype/property-currency-symbol: New file.
17784         * modules/unictype/property-math: New file.
17785         * modules/unictype/property-other-math: New file.
17786         * modules/unictype/property-paired-punctuation: New file.
17787         * modules/unictype/property-left-of-pair: New file.
17788         * modules/unictype/property-combining: New file.
17789         * modules/unictype/property-composite: New file.
17790         * modules/unictype/property-decimal-digit: New file.
17791         * modules/unictype/property-numeric: New file.
17792         * modules/unictype/property-diacritic: New file.
17793         * modules/unictype/property-extender: New file.
17794         * modules/unictype/property-ignorable-control: New file.
17795         * modules/unictype/property-test: New file.
17796         * modules/unictype/property-byname: New file.
17797         * modules/unictype/property-all: New file.
17798         * modules/unictype/scripts: New file.
17799         * modules/unictype/scripts-all: New file.
17800         * modules/unictype/block-of: New file.
17801         * modules/unictype/block-test: New file.
17802         * modules/unictype/block-list: New file.
17803         * modules/unictype/block-all: New file.
17804         * modules/unictype/syntax-c-whitespace: New file.
17805         * modules/unictype/syntax-java-whitespace: New file.
17806         * modules/unictype/syntax-c-ident: New file.
17807         * modules/unictype/syntax-java-ident: New file.
17808         * modules/unictype/ctype-alnum: New file.
17809         * modules/unictype/ctype-alpha: New file.
17810         * modules/unictype/ctype-cntrl: New file.
17811         * modules/unictype/ctype-digit: New file.
17812         * modules/unictype/ctype-graph: New file.
17813         * modules/unictype/ctype-lower: New file.
17814         * modules/unictype/ctype-print: New file.
17815         * modules/unictype/ctype-punct: New file.
17816         * modules/unictype/ctype-space: New file.
17817         * modules/unictype/ctype-upper: New file.
17818         * modules/unictype/ctype-xdigit: New file.
17819         * modules/unictype/ctype-blank: New file.
17820         * lib/unictype/bidi_byname.c: New file.
17821         * lib/unictype/bidi_name.c: New file.
17822         * lib/unictype/bidi_of.c: New file.
17823         * lib/unictype/bidi_test.c: New file.
17824         * lib/unictype/bitmap.h: New file.
17825         * lib/unictype/block_test.c: New file.
17826         * lib/unictype/blocks.c: New file.
17827         * lib/unictype/categ_C.c: New file.
17828         * lib/unictype/categ_Cc.c: New file.
17829         * lib/unictype/categ_Cf.c: New file.
17830         * lib/unictype/categ_Cn.c: New file.
17831         * lib/unictype/categ_Co.c: New file.
17832         * lib/unictype/categ_Cs.c: New file.
17833         * lib/unictype/categ_L.c: New file.
17834         * lib/unictype/categ_Ll.c: New file.
17835         * lib/unictype/categ_Lm.c: New file.
17836         * lib/unictype/categ_Lo.c: New file.
17837         * lib/unictype/categ_Lt.c: New file.
17838         * lib/unictype/categ_Lu.c: New file.
17839         * lib/unictype/categ_M.c: New file.
17840         * lib/unictype/categ_Mc.c: New file.
17841         * lib/unictype/categ_Me.c: New file.
17842         * lib/unictype/categ_Mn.c: New file.
17843         * lib/unictype/categ_N.c: New file.
17844         * lib/unictype/categ_Nd.c: New file.
17845         * lib/unictype/categ_Nl.c: New file.
17846         * lib/unictype/categ_No.c: New file.
17847         * lib/unictype/categ_P.c: New file.
17848         * lib/unictype/categ_Pc.c: New file.
17849         * lib/unictype/categ_Pd.c: New file.
17850         * lib/unictype/categ_Pe.c: New file.
17851         * lib/unictype/categ_Pf.c: New file.
17852         * lib/unictype/categ_Pi.c: New file.
17853         * lib/unictype/categ_Po.c: New file.
17854         * lib/unictype/categ_Ps.c: New file.
17855         * lib/unictype/categ_S.c: New file.
17856         * lib/unictype/categ_Sc.c: New file.
17857         * lib/unictype/categ_Sk.c: New file.
17858         * lib/unictype/categ_Sm.c: New file.
17859         * lib/unictype/categ_So.c: New file.
17860         * lib/unictype/categ_Z.c: New file.
17861         * lib/unictype/categ_Zl.c: New file.
17862         * lib/unictype/categ_Zp.c: New file.
17863         * lib/unictype/categ_Zs.c: New file.
17864         * lib/unictype/categ_and.c: New file.
17865         * lib/unictype/categ_and_not.c: New file.
17866         * lib/unictype/categ_byname.c: New file.
17867         * lib/unictype/categ_name.c: New file.
17868         * lib/unictype/categ_none.c: New file.
17869         * lib/unictype/categ_of.c: New file.
17870         * lib/unictype/categ_or.c: New file.
17871         * lib/unictype/categ_test.c: New file.
17872         * lib/unictype/combining.c: New file.
17873         * lib/unictype/ctype_alnum.c: New file.
17874         * lib/unictype/ctype_alpha.c: New file.
17875         * lib/unictype/ctype_blank.c: New file.
17876         * lib/unictype/ctype_cntrl.c: New file.
17877         * lib/unictype/ctype_digit.c: New file.
17878         * lib/unictype/ctype_graph.c: New file.
17879         * lib/unictype/ctype_lower.c: New file.
17880         * lib/unictype/ctype_print.c: New file.
17881         * lib/unictype/ctype_punct.c: New file.
17882         * lib/unictype/ctype_space.c: New file.
17883         * lib/unictype/ctype_upper.c: New file.
17884         * lib/unictype/ctype_xdigit.c: New file.
17885         * lib/unictype/decdigit.c: New file.
17886         * lib/unictype/digit.c: New file.
17887         * lib/unictype/identsyntaxmap.h: New file.
17888         * lib/unictype/mirror.c: New file.
17889         * lib/unictype/numeric.c: New file.
17890         * lib/unictype/pr_alphabetic.c: New file.
17891         * lib/unictype/pr_ascii_hex_digit.c: New file.
17892         * lib/unictype/pr_bidi_arabic_digit.c: New file.
17893         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
17894         * lib/unictype/pr_bidi_block_separator.c: New file.
17895         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
17896         * lib/unictype/pr_bidi_common_separator.c: New file.
17897         * lib/unictype/pr_bidi_control.c: New file.
17898         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
17899         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
17900         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
17901         * lib/unictype/pr_bidi_european_digit.c: New file.
17902         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
17903         * lib/unictype/pr_bidi_left_to_right.c: New file.
17904         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
17905         * lib/unictype/pr_bidi_other_neutral.c: New file.
17906         * lib/unictype/pr_bidi_pdf.c: New file.
17907         * lib/unictype/pr_bidi_segment_separator.c: New file.
17908         * lib/unictype/pr_bidi_whitespace.c: New file.
17909         * lib/unictype/pr_byname.c: New file.
17910         * lib/unictype/pr_byname.gperf: New file.
17911         * lib/unictype/pr_combining.c: New file.
17912         * lib/unictype/pr_composite.c: New file.
17913         * lib/unictype/pr_currency_symbol.c: New file.
17914         * lib/unictype/pr_dash.c: New file.
17915         * lib/unictype/pr_decimal_digit.c: New file.
17916         * lib/unictype/pr_default_ignorable_code_point.c: New file.
17917         * lib/unictype/pr_deprecated.c: New file.
17918         * lib/unictype/pr_diacritic.c: New file.
17919         * lib/unictype/pr_extender.c: New file.
17920         * lib/unictype/pr_format_control.c: New file.
17921         * lib/unictype/pr_grapheme_base.c: New file.
17922         * lib/unictype/pr_grapheme_extend.c: New file.
17923         * lib/unictype/pr_grapheme_link.c: New file.
17924         * lib/unictype/pr_hex_digit.c: New file.
17925         * lib/unictype/pr_hyphen.c: New file.
17926         * lib/unictype/pr_id_continue.c: New file.
17927         * lib/unictype/pr_id_start.c: New file.
17928         * lib/unictype/pr_ideographic.c: New file.
17929         * lib/unictype/pr_ids_binary_operator.c: New file.
17930         * lib/unictype/pr_ids_trinary_operator.c: New file.
17931         * lib/unictype/pr_ignorable_control.c: New file.
17932         * lib/unictype/pr_iso_control.c: New file.
17933         * lib/unictype/pr_join_control.c: New file.
17934         * lib/unictype/pr_left_of_pair.c: New file.
17935         * lib/unictype/pr_line_separator.c: New file.
17936         * lib/unictype/pr_logical_order_exception.c: New file.
17937         * lib/unictype/pr_lowercase.c: New file.
17938         * lib/unictype/pr_math.c: New file.
17939         * lib/unictype/pr_non_break.c: New file.
17940         * lib/unictype/pr_not_a_character.c: New file.
17941         * lib/unictype/pr_numeric.c: New file.
17942         * lib/unictype/pr_other_alphabetic.c: New file.
17943         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
17944         * lib/unictype/pr_other_grapheme_extend.c: New file.
17945         * lib/unictype/pr_other_id_continue.c: New file.
17946         * lib/unictype/pr_other_id_start.c: New file.
17947         * lib/unictype/pr_other_lowercase.c: New file.
17948         * lib/unictype/pr_other_math.c: New file.
17949         * lib/unictype/pr_other_uppercase.c: New file.
17950         * lib/unictype/pr_paired_punctuation.c: New file.
17951         * lib/unictype/pr_paragraph_separator.c: New file.
17952         * lib/unictype/pr_pattern_syntax.c: New file.
17953         * lib/unictype/pr_pattern_white_space.c: New file.
17954         * lib/unictype/pr_private_use.c: New file.
17955         * lib/unictype/pr_punctuation.c: New file.
17956         * lib/unictype/pr_quotation_mark.c: New file.
17957         * lib/unictype/pr_radical.c: New file.
17958         * lib/unictype/pr_sentence_terminal.c: New file.
17959         * lib/unictype/pr_soft_dotted.c: New file.
17960         * lib/unictype/pr_space.c: New file.
17961         * lib/unictype/pr_terminal_punctuation.c: New file.
17962         * lib/unictype/pr_test.c: New file.
17963         * lib/unictype/pr_titlecase.c: New file.
17964         * lib/unictype/pr_unassigned_code_value.c: New file.
17965         * lib/unictype/pr_unified_ideograph.c: New file.
17966         * lib/unictype/pr_uppercase.c: New file.
17967         * lib/unictype/pr_variation_selector.c: New file.
17968         * lib/unictype/pr_white_space.c: New file.
17969         * lib/unictype/pr_xid_continue.c: New file.
17970         * lib/unictype/pr_xid_start.c: New file.
17971         * lib/unictype/pr_zero_width.c: New file.
17972         * lib/unictype/scripts.c: New file.
17973         * lib/unictype/sy_c_ident.c: New file.
17974         * lib/unictype/sy_c_whitespace.c: New file.
17975         * lib/unictype/sy_java_ident.c: New file.
17976         * lib/unictype/sy_java_whitespace.c: New file.
17977
17978         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
17979         Unicode 5.0.0.
17980         * lib/unictype/blocks.h: Likewise.
17981         * lib/unictype/categ_C.h: Likewise.
17982         * lib/unictype/categ_Cc.h: Likewise.
17983         * lib/unictype/categ_Cf.h: Likewise.
17984         * lib/unictype/categ_Cn.h: Likewise.
17985         * lib/unictype/categ_Co.h: Likewise.
17986         * lib/unictype/categ_Cs.h: Likewise.
17987         * lib/unictype/categ_L.h: Likewise.
17988         * lib/unictype/categ_Ll.h: Likewise.
17989         * lib/unictype/categ_Lm.h: Likewise.
17990         * lib/unictype/categ_Lo.h: Likewise.
17991         * lib/unictype/categ_Lt.h: Likewise.
17992         * lib/unictype/categ_Lu.h: Likewise.
17993         * lib/unictype/categ_M.h: Likewise.
17994         * lib/unictype/categ_Mc.h: Likewise.
17995         * lib/unictype/categ_Me.h: Likewise.
17996         * lib/unictype/categ_Mn.h: Likewise.
17997         * lib/unictype/categ_N.h: Likewise.
17998         * lib/unictype/categ_Nd.h: Likewise.
17999         * lib/unictype/categ_Nl.h: Likewise.
18000         * lib/unictype/categ_No.h: Likewise.
18001         * lib/unictype/categ_P.h: Likewise.
18002         * lib/unictype/categ_Pc.h: Likewise.
18003         * lib/unictype/categ_Pd.h: Likewise.
18004         * lib/unictype/categ_Pe.h: Likewise.
18005         * lib/unictype/categ_Pf.h: Likewise.
18006         * lib/unictype/categ_Pi.h: Likewise.
18007         * lib/unictype/categ_Po.h: Likewise.
18008         * lib/unictype/categ_Ps.h: Likewise.
18009         * lib/unictype/categ_S.h: Likewise.
18010         * lib/unictype/categ_Sc.h: Likewise.
18011         * lib/unictype/categ_Sk.h: Likewise.
18012         * lib/unictype/categ_Sm.h: Likewise.
18013         * lib/unictype/categ_So.h: Likewise.
18014         * lib/unictype/categ_Z.h: Likewise.
18015         * lib/unictype/categ_Zl.h: Likewise.
18016         * lib/unictype/categ_Zp.h: Likewise.
18017         * lib/unictype/categ_Zs.h: Likewise.
18018         * lib/unictype/categ_of.h: Likewise.
18019         * lib/unictype/combining.h: Likewise.
18020         * lib/unictype/ctype_alnum.h: Likewise.
18021         * lib/unictype/ctype_alpha.h: Likewise.
18022         * lib/unictype/ctype_blank.h: Likewise.
18023         * lib/unictype/ctype_cntrl.h: Likewise.
18024         * lib/unictype/ctype_digit.h: Likewise.
18025         * lib/unictype/ctype_graph.h: Likewise.
18026         * lib/unictype/ctype_lower.h: Likewise.
18027         * lib/unictype/ctype_print.h: Likewise.
18028         * lib/unictype/ctype_punct.h: Likewise.
18029         * lib/unictype/ctype_space.h: Likewise.
18030         * lib/unictype/ctype_upper.h: Likewise.
18031         * lib/unictype/ctype_xdigit.h: Likewise.
18032         * lib/unictype/decdigit.h: Likewise.
18033         * lib/unictype/digit.h: Likewise.
18034         * lib/unictype/mirror.h: Likewise.
18035         * lib/unictype/numeric.h: Likewise.
18036         * lib/unictype/pr_alphabetic.h: Likewise.
18037         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
18038         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
18039         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
18040         * lib/unictype/pr_bidi_block_separator.h: Likewise.
18041         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
18042         * lib/unictype/pr_bidi_common_separator.h: Likewise.
18043         * lib/unictype/pr_bidi_control.h: Likewise.
18044         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
18045         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
18046         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
18047         * lib/unictype/pr_bidi_european_digit.h: Likewise.
18048         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
18049         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
18050         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
18051         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
18052         * lib/unictype/pr_bidi_pdf.h: Likewise.
18053         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
18054         * lib/unictype/pr_bidi_whitespace.h: Likewise.
18055         * lib/unictype/pr_combining.h: Likewise.
18056         * lib/unictype/pr_composite.h: Likewise.
18057         * lib/unictype/pr_currency_symbol.h: Likewise.
18058         * lib/unictype/pr_dash.h: Likewise.
18059         * lib/unictype/pr_decimal_digit.h: Likewise.
18060         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
18061         * lib/unictype/pr_deprecated.h: Likewise.
18062         * lib/unictype/pr_diacritic.h: Likewise.
18063         * lib/unictype/pr_extender.h: Likewise.
18064         * lib/unictype/pr_format_control.h: Likewise.
18065         * lib/unictype/pr_grapheme_base.h: Likewise.
18066         * lib/unictype/pr_grapheme_extend.h: Likewise.
18067         * lib/unictype/pr_grapheme_link.h: Likewise.
18068         * lib/unictype/pr_hex_digit.h: Likewise.
18069         * lib/unictype/pr_hyphen.h: Likewise.
18070         * lib/unictype/pr_id_continue.h: Likewise.
18071         * lib/unictype/pr_id_start.h: Likewise.
18072         * lib/unictype/pr_ideographic.h: Likewise.
18073         * lib/unictype/pr_ids_binary_operator.h: Likewise.
18074         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
18075         * lib/unictype/pr_ignorable_control.h: Likewise.
18076         * lib/unictype/pr_iso_control.h: Likewise.
18077         * lib/unictype/pr_join_control.h: Likewise.
18078         * lib/unictype/pr_left_of_pair.h: Likewise.
18079         * lib/unictype/pr_line_separator.h: Likewise.
18080         * lib/unictype/pr_logical_order_exception.h: Likewise.
18081         * lib/unictype/pr_lowercase.h: Likewise.
18082         * lib/unictype/pr_math.h: Likewise.
18083         * lib/unictype/pr_non_break.h: Likewise.
18084         * lib/unictype/pr_not_a_character.h: Likewise.
18085         * lib/unictype/pr_numeric.h: Likewise.
18086         * lib/unictype/pr_other_alphabetic.h: Likewise.
18087         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
18088         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
18089         * lib/unictype/pr_other_id_continue.h: Likewise.
18090         * lib/unictype/pr_other_id_start.h: Likewise.
18091         * lib/unictype/pr_other_lowercase.h: Likewise.
18092         * lib/unictype/pr_other_math.h: Likewise.
18093         * lib/unictype/pr_other_uppercase.h: Likewise.
18094         * lib/unictype/pr_paired_punctuation.h: Likewise.
18095         * lib/unictype/pr_paragraph_separator.h: Likewise.
18096         * lib/unictype/pr_pattern_syntax.h: Likewise.
18097         * lib/unictype/pr_pattern_white_space.h: Likewise.
18098         * lib/unictype/pr_private_use.h: Likewise.
18099         * lib/unictype/pr_punctuation.h: Likewise.
18100         * lib/unictype/pr_quotation_mark.h: Likewise.
18101         * lib/unictype/pr_radical.h: Likewise.
18102         * lib/unictype/pr_sentence_terminal.h: Likewise.
18103         * lib/unictype/pr_soft_dotted.h: Likewise.
18104         * lib/unictype/pr_space.h: Likewise.
18105         * lib/unictype/pr_terminal_punctuation.h: Likewise.
18106         * lib/unictype/pr_titlecase.h: Likewise.
18107         * lib/unictype/pr_unassigned_code_value.h: Likewise.
18108         * lib/unictype/pr_unified_ideograph.h: Likewise.
18109         * lib/unictype/pr_uppercase.h: Likewise.
18110         * lib/unictype/pr_variation_selector.h: Likewise.
18111         * lib/unictype/pr_white_space.h: Likewise.
18112         * lib/unictype/pr_xid_continue.h: Likewise.
18113         * lib/unictype/pr_xid_start.h: Likewise.
18114         * lib/unictype/pr_zero_width.h: Likewise.
18115         * lib/unictype/scripts.h: Likewise.
18116         * lib/unictype/scripts_byname.gperf: Likewise.
18117         * lib/unictype/sy_c_ident.h: Likewise.
18118         * lib/unictype/sy_c_whitespace.h: Likewise.
18119         * lib/unictype/sy_java_ident.h: Likewise.
18120         * lib/unictype/sy_java_whitespace.h: Likewise.
18121
18122         * lib/unictype/Makefile: New file.
18123         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
18124         glibc.
18125         * lib/unictype/3level.h: New file, copied from glibc.
18126         * lib/unictype/3levelbit.h: New file.
18127
18128 2007-11-11  Bruno Haible  <bruno@clisp.org>
18129
18130         * modules/gperf: New file.
18131         * modules/iconv_open (Depends-on): Add it.
18132         (Makefile.am): Remove the GPERF definition.
18133
18134 2007-11-11  Bruno Haible  <bruno@clisp.org>
18135
18136         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
18137         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
18138
18139 2007-11-11  Bruno Haible  <bruno@clisp.org>
18140
18141         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
18142         (usage): Remove function.
18143
18144 2007-11-11  Bruno Haible  <bruno@clisp.org>
18145
18146         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
18147         gl_FUNC_CEILF_LIBS.
18148         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
18149         gl_FUNC_CEIL_LIBS.
18150         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
18151         gl_FUNC_CEILL_LIBS.
18152         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
18153         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
18154         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
18155
18156 2007-11-11  Bruno Haible  <bruno@clisp.org>
18157
18158         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
18159         roundf were declared but do not exist on functions.
18160         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
18161         roundl were declared but do not exist on functions.
18162         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
18163         HAVE_FLOORL_AND_CEILL, respectively.
18164         Needed for Sun C on Solaris 10.
18165
18166 2007-11-11  Bruno Haible  <bruno@clisp.org>
18167
18168         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
18169         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
18170         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
18171         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
18172         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
18173         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
18174         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
18175         HAVE_DECL_ROUNDF.
18176         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
18177         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
18178         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
18179         of HAVE_DECL_ROUND*.
18180         * modules/math (Makefile.am): Update.
18181
18182 2007-11-10  Bruno Haible  <bruno@clisp.org>
18183
18184         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
18185         ptrdiff_t as m4/intl.m4.
18186
18187 2007-11-10  Jim Meyering  <meyering@redhat.com>
18188
18189         Avoid link failure for the argmatch test.
18190         * tests/test-argmatch.c (usage): Define function to avoid a link
18191         failure: argmatch_die requires a usage function.
18192
18193 2007-11-09  Bruno Haible  <bruno@clisp.org>
18194
18195         * doc/functions/snprintf.texi: Mention BeOS deficiency.
18196         * doc/functions/vsnprintf.texi: Likewise.
18197         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
18198         with a size argument < 2.
18199
18200 2007-11-09  Bruno Haible  <bruno@clisp.org>
18201
18202         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
18203         buffer. Fixes an inefficiency introduced on 2007-11-03.
18204
18205 2007-11-09  Bruno Haible  <bruno@clisp.org>
18206
18207         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
18208         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
18209
18210 2007-11-08  Jim Meyering  <meyering@redhat.com>
18211
18212         Change cache variable name prefix "jm_" to "gl_" everywhere.
18213         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
18214         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
18215         * m4/uptime.m4: s/gl_/jm_/
18216
18217 2007-11-07  Bruno Haible  <bruno@clisp.org>
18218
18219         Update to GNU gettext 0.17.
18220         * m4/intl.m4: Update to GNU gettext 0.17.
18221         * m4/po.m4: Likewise.
18222         * modules/gettext (Files): Remove m4/ulonglong.m4.
18223         (configure.ac): Require gettext infrastructure from version 0.17.
18224
18225 2007-11-06  Bruno Haible  <bruno@clisp.org>
18226
18227         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
18228         symbolic values are not defined in a public header.
18229         * lib/freadable.c (freadable) [QNX]: Likewise.
18230         * lib/freadahead.c (freadahead) [QNX]: Likewise.
18231         * lib/freading.c (freading) [QNX]: Likewise.
18232         * lib/fseterr.c (fseterr) [QNX]: Likewise.
18233         * lib/fwritable.c (fwritable) [QNX]: Likewise.
18234         * lib/fwriting.c (fwriting) [QNX]: Likewise.
18235         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
18236         Reported by Alain Magloire.
18237
18238         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
18239
18240 2007-11-05  Bruno Haible  <bruno@clisp.org>
18241
18242         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
18243         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
18244         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
18245         Reported by Eric Blake.
18246
18247 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18248             Bruno Haible  <bruno@clisp.org>
18249
18250         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
18251         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
18252         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
18253         (malloc): Undefine also before including <stdlib.h>.
18254         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
18255         Needed on OSF/1 4.0.
18256
18257 2007-11-05  Jim Meyering  <meyering@redhat.com>
18258
18259         git-version-gen: sync from coreutils.
18260         * build-aux/git-version-gen: Add comments.
18261         Change the first '-' to '.' in the snapshot version string,
18262         e.g., 6.9-377-08144 -> 6.9.377-08144
18263         Remove first parameter.
18264         Don't declare a version "-dirty" merely because a time
18265         stamp has changed.
18266
18267 2007-11-04  Bruno Haible  <bruno@clisp.org>
18268
18269         * lib/lock.h: Protect all macro definitions containing an 'if'
18270         statement through a "do { ... } while (0)".
18271         * lib/tls.h: Likewise.
18272
18273 2007-11-04  Bruno Haible  <bruno@clisp.org>
18274
18275         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
18276
18277 2007-11-04  Bruno Haible  <bruno@clisp.org>
18278
18279         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
18280         * modules/fprintf-posix (Depends-on): Add nocrash.
18281         * modules/snprintf-posix (Depends-on): Likewise.
18282         * modules/sprintf-posix (Depends-on): Likewise.
18283         * modules/vasnprintf-posix (Depends-on): Likewise.
18284         * modules/vasprintf-posix (Depends-on): Likewise.
18285         * modules/vfprintf-posix (Depends-on): Likewise.
18286         * modules/vsnprintf-posix (Depends-on): Likewise.
18287         * modules/vsprintf-posix (Depends-on): Likewise.
18288         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
18289         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
18290         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
18291         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
18292         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
18293         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
18294         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
18295
18296 2007-11-04  Bruno Haible  <bruno@clisp.org>
18297
18298         * modules/nocrash: New file.
18299         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
18300         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
18301
18302 2007-11-04  Bruno Haible  <bruno@clisp.org>
18303
18304         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
18305         precision handling.
18306         * tests/test-vasprintf-posix.c (test_function): Likewise.
18307         * tests/test-snprintf-posix.h (test_function): Likewise.
18308         * tests/test-sprintf-posix.h (test_function): Likewise.
18309
18310         Fix *printf behaviour for large precisions on mingw and BeOS.
18311         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
18312         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
18313         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
18314         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
18315         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18316         gl_PRINTF_PRECISION and test its result. Invoke
18317         gl_PREREQ_VASNPRINTF_PRECISION.
18318         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18319         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18320         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18321         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18322         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18323         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18324         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18325         * doc/functions/fprintf.texi: Update.
18326         * doc/functions/printf.texi: Update.
18327         * doc/functions/snprintf.texi: Update.
18328         * doc/functions/sprintf.texi: Update.
18329         * doc/functions/vfprintf.texi: Update.
18330         * doc/functions/vprintf.texi: Update.
18331         * doc/functions/vsnprintf.texi: Update.
18332         * doc/functions/vsprintf.texi: Update.
18333
18334 2007-11-04  Bruno Haible  <bruno@clisp.org>
18335
18336         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
18337
18338 2007-11-04  Bruno Haible  <bruno@clisp.org>
18339
18340         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
18341         Reported by Sylvain Beucler <beuc@gnu.org>.
18342
18343 2007-11-03  Bruno Haible  <bruno@clisp.org>
18344
18345         * tests/test-fprintf-posix2.sh: New file.
18346         * tests/test-fprintf-posix2.c: New file.
18347         * modules/fprintf-posix-tests (Files): Add them.
18348         (TESTS): Add test-fprintf-posix2.sh.
18349         (configure.ac): Check for getrlimit and setrlimit.
18350         (check_PROGRAMS): Add test-fprintf-posix2.
18351
18352         * tests/test-printf-posix2.sh: New file.
18353         * tests/test-printf-posix2.c: New file.
18354         * modules/printf-posix-tests (Files): Add them.
18355         (TESTS): Add test-printf-posix2.sh.
18356         (configure.ac): Check for getrlimit and setrlimit.
18357         (check_PROGRAMS): Add test-printf-posix2.
18358
18359         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
18360         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
18361         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
18362         (decode_double): New function, copied from decode_long_double.
18363         (scale10_round_decimal_decoded): New function, extracted from
18364         scale10_round_decimal_long_double.
18365         (scale10_round_decimal_long_double): Use it.
18366         (scale10_round_decimal_double): New function.
18367         (floorlog10): New function.
18368         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
18369         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
18370         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
18371         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
18372         gl_PRINTF_ENOMEM and test its result. Invoke
18373         gl_PREREQ_VASNPRINTF_ENOMEM.
18374         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
18375         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
18376         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
18377         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
18378         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
18379         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
18380         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
18381         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
18382         * modules/snprintf-posix (Depends-on): Likewise.
18383         * modules/sprintf-posix (Depends-on): Likewise.
18384         * modules/vasnprintf-posix (Depends-on): Likewise.
18385         * modules/vasprintf-posix (Depends-on): Likewise.
18386         * modules/vfprintf-posix (Depends-on): Likewise.
18387         * modules/vsnprintf-posix (Depends-on): Likewise.
18388         * modules/vsprintf-posix (Depends-on): Likewise.
18389         * doc/functions/fprintf.texi: Update.
18390         * doc/functions/printf.texi: Update.
18391         * doc/functions/snprintf.texi: Update.
18392         * doc/functions/sprintf.texi: Update.
18393         * doc/functions/vfprintf.texi: Update.
18394         * doc/functions/vprintf.texi: Update.
18395         * doc/functions/vsnprintf.texi: Update.
18396         * doc/functions/vsprintf.texi: Update.
18397
18398 2007-11-03  Bruno Haible  <bruno@clisp.org>
18399
18400         * modules/frexp-nolibm-tests: New file.
18401
18402         * modules/frexp-nolibm: New file.
18403         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
18404
18405 2007-11-03  Bruno Haible  <bruno@clisp.org>
18406
18407         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
18408         value is C99 compliant.
18409         Needed for OSF/1 5.1.
18410
18411 2007-11-03  Bruno Haible  <bruno@clisp.org>
18412
18413         Fix out-of-memory handling of vasnprintf.
18414         * lib/printf-parse.c: Include <errno.h>.
18415         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
18416         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
18417         is already set.
18418
18419 2007-11-02  Eric Blake  <ebb9@byu.net>
18420
18421         Fix tests on cygwin.
18422         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
18423
18424 2007-11-01  Bruno Haible  <bruno@clisp.org>
18425
18426         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
18427         warning.
18428         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
18429         needed for POSIX compatibility.
18430
18431 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
18432
18433         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
18434         for compatibility with GNU.
18435
18436 2007-11-01  Bruno Haible  <bruno@clisp.org>
18437
18438         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
18439         (putenv): Renamed from rpl_putenv. Change argument type from
18440         'const char *' to 'char *'.
18441         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
18442         of defining putenv in config.h, just set REPLACE_PUTENV.
18443         * modules/putenv (Depends-on): Add stdlib.
18444         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
18445         (Include): Use <stdlib.h>.
18446         * lib/stdlib.in.h (putenv): New declaration.
18447         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
18448         REPLACE_PUTENV.
18449         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
18450         REPLACE_PUTENV.
18451         Needed for MacOS X 10.5.0.
18452         Reported by Peter O'Gorman <peter@pogma.com>.
18453
18454 2007-11-01  Jim Meyering  <meyering@redhat.com>
18455
18456         Treat an empty date string exactly like "0".
18457         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
18458         if the remaining date string (to be parsed) is empty, use "0".
18459         Reported by Mischa Molhoek and discussed in this thread:
18460         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
18461
18462 2007-10-31  Bruno Haible  <bruno@clisp.org>
18463
18464         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
18465         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
18466         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
18467         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
18468         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
18469         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
18470
18471 2007-10-31  Bruno Haible  <bruno@clisp.org>
18472
18473         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
18474         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
18475         (AC_TYPE_LONG_LONG_INT): Use it.
18476         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
18477         it as well.
18478         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
18479         to m4/longlong.m4.
18480         * modules/stdint (Files): Remove m4/ulonglong.m4.
18481         * modules/strtoull (Files): Use m4/longlong.m4 instead of
18482         m4/ulonglong.m4.
18483         * modules/strtoumax (Files): Likewise.
18484
18485 2007-10-30  Bruno Haible  <bruno@clisp.org>
18486
18487         * modules/xvasprintf-posix: New file.
18488         Suggested by Eric Blake.
18489
18490 2007-10-30  Bruno Haible  <bruno@clisp.org>
18491
18492         * modules/xprintf-posix-tests: New file.
18493         * tests/test-xprintf-posix.sh: New file.
18494         * tests/test-xprintf-posix.c: New file.
18495         * tests/test-xfprintf-posix.c: New file.
18496
18497         * modules/xprintf-posix: New file.
18498
18499 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18500
18501         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
18502         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
18503         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
18504
18505 2007-10-29  Bruno Haible  <bruno@clisp.org>
18506
18507         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
18508         contain the special marker '_cv_'.
18509         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
18510         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
18511         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
18512         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
18513         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
18514         Reported by Ralf Wildenhues.
18515
18516 2007-10-29  Bruno Haible  <bruno@clisp.org>
18517
18518         * gnulib-tool (func_import): When --lgpl is not specified, set
18519         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
18520         GPLv3.
18521         Reported by Simon Josefsson.
18522
18523 2007-10-28  Bruno Haible  <bruno@clisp.org>
18524
18525         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
18526         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
18527         HAVE_DECL_ISFINITE.
18528         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
18529         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
18530         HAVE_DECL_ISFINITE.
18531
18532 2007-10-28  Bruno Haible  <bruno@clisp.org>
18533
18534         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
18535         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
18536
18537 2007-10-28  Bruno Haible  <bruno@clisp.org>
18538
18539         Fix link errors with Sun C 5.0 on Solaris 10.
18540         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
18541         function is declared but not present in the compiler's libm.
18542         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
18543         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
18544         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
18545         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
18546         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
18547         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
18548         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
18549         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
18550         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
18551         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
18552         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
18553         HAVE_DECL_FLOORL.
18554
18555 2007-10-28  Bruno Haible  <bruno@clisp.org>
18556
18557         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
18558         gl_FUNC_FLOORL. Cache the result.
18559         (gl_FUNC_FLOORL): Use it.
18560         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
18561         gl_FUNC_CEILL. Cache the result.
18562         (gl_FUNC_CEILL): Use it.
18563
18564         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
18565         gl_FUNC_FLOOR. Cache the result.
18566         (gl_FUNC_FLOOR): Use it.
18567         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
18568         gl_FUNC_CEIL. Cache the result.
18569         (gl_FUNC_CEIL): Use it.
18570
18571         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
18572         gl_FUNC_FLOORF. Cache the result.
18573         (gl_FUNC_FLOORF): Use it.
18574         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
18575         gl_FUNC_CEILF. Cache the result.
18576         (gl_FUNC_CEILF): Use it.
18577
18578 2007-10-28  Bruno Haible  <bruno@clisp.org>
18579
18580         * gnulib-tool: Allow specifying the LGPL version number through
18581         --lgpl=2 or --lgpl=3.
18582         (func_usage): Document --lgpl with argument.
18583         Handle --lgpl=... arguments.
18584         (func_import): Recognize also gl_LGPL calls with an argument. When
18585         --lgpl=2 is used and the module's license is just LGPL, report an
18586         error. Set sed_transform_lib_file according to the lgpl variable. In
18587         the generated files, use --lgpl or gl_LGPL invocations with argument,
18588         if necessary.
18589         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
18590         an LGPv2+ license.
18591         * doc/gnulib-tool.texi (Modified imports): Update explanation of
18592         gl_LGPL macro.
18593
18594 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18595             Bruno Haible  <bruno@clisp.org>
18596
18597         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
18598         (u16_uctomb_aux): Likewise.
18599         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
18600         !HAVE_INLINE.
18601         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
18602
18603 2007-10-28  Bruno Haible  <bruno@clisp.org>
18604
18605         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
18606         Invoke AM_GETTEXT_OPTION if it exists.
18607         * modules/vasprintf: Likewise.
18608         * modules/verror: Likewise.
18609         * modules/xprintf: Likewise.
18610         * modules/xvasprintf: Likewise.
18611
18612 2007-10-27  Ben Pfaff  <blp@gnu.org>
18613
18614         * lib/math.in.h: Define isfinite macro and prototypes for
18615         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
18616         implementations.
18617         * m4/math_h.m4: New substitutions for isfinite module.
18618         * lib/isfinite.c: New file.
18619         * m4/isfinite.m4: New file.
18620         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
18621         * modules/isfinite: New file.
18622         * modules/isfinite-tests: New file.
18623         * tests/tests-isfinite.c: New file.
18624         * doc/functions/isfinite.texi: Mention isfinite module.
18625         * MODULES.html.sh: Mention new module.
18626
18627 2007-10-27  Ben Pfaff  <blp@gnu.org>
18628
18629         Ralf Wildenhues reported that Tru64 4.0D declares the round
18630         functions but does not have definitions.
18631         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
18632         cannot be found in any library, set the output variable to
18633         "missing" instead of "".
18634         * m4/round.m4: Also use our substitute if we cannot find round in
18635         any library, even if it is declared.
18636         * m4/roundf.m4: Likewise for roundf.
18637         * m4/roundl.m4: Likewise for roundl.
18638         * lib/math.in.h: Undefine roundf, round, roundl before defining
18639         their replacements, to allow for hypothetical systems where these
18640         may be defined as macros but not available in libraries.
18641
18642 2007-10-27  Bruno Haible  <bruno@clisp.org>
18643
18644         * doc/gnulib.texi: Invoke @firstparagraphindent.
18645         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
18646         changes in gnulib.
18647         (Source changes): New section.
18648
18649 2007-10-26  Bruno Haible  <bruno@clisp.org>
18650
18651         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
18652         borrowed from autoconf.
18653
18654 2007-10-26  Bruno Haible  <bruno@clisp.org>
18655
18656         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
18657         strerror returned the empty string. Needed on HP-UX 11.00.
18658
18659 2007-10-24  Micah Cowan  <micah@cowan.name>
18660
18661         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
18662         * build-aux/bootstrap: Remove support for now-unnecessary option,
18663         --cvs-user, and envvars CVS_USER, CVS_RSH.
18664
18665 2007-10-24  Jim Meyering  <meyering@redhat.com>
18666
18667         Avoid diagnostics from sha1sum when there is no cached checksum.
18668         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
18669         if the po.s1 file hasn't been created yet.
18670
18671         * build-aux/bootstrap: Sync from coreutils:
18672         2007-10-24  Jim Meyering  <meyering@redhat.com>
18673         Get gnulib from the git repository, not from an obsolete cvs one.
18674         * build-aux/bootstrap: Suggestion from Micah Cowan.
18675         2007-10-04  Jim Meyering  <jim@meyering.net>
18676         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
18677         (update_po_files): Work also when there are no .po files in po/.
18678
18679 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
18680
18681         * README: Append ".git" to git and cg examples.
18682         Problem reported by Benoit Sigoure.
18683
18684 2007-10-23  Micah Cowan  <micah@cowan.name>
18685
18686         * users.txt: Add wget.
18687
18688 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18689
18690         Fix linking of some unistdio tests on FreeBSD.
18691         * modules/unistdio/u16-vsnprintf-tests
18692         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
18693         * modules/unistdio/u16-vsprintf-tests
18694         (test_u16_vsnprintf1_LDADD): Likewise.
18695         * modules/unistdio/u32-vsnprintf-tests
18696         (test_u32_vsnprintf1_LDADD): Likewise.
18697         * modules/unistdio/u32-vsprintf-tests
18698         (test_u32_vsprintf1_LDADD): Likewise.
18699         * modules/unistdio/u8-vsnprintf-tests
18700         (test_u8_vsnprintf1_LDADD): Likewise.
18701         * modules/unistdio/u8-vsprintf-tests
18702         (test_u8_vsprintf1_LDADD): Likewise.
18703         * modules/unistdio/ulc-vsnprintf-tests
18704         (test_ulc_vsnprintf1_LDADD): Likewise.
18705         * modules/unistdio/ulc-vsprintf-tests
18706         (test_ulc_vsprintf1_LDADD): Likewise.
18707
18708         Fix linking of some uniconv tests on FreeBSD.
18709         * modules/uniconv/u16-conv-from-enc-tests
18710         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
18711         * modules/uniconv/u16-conv-to-enc-tests
18712         (test_u16_conv_to_enc_LDADD): Likewise.
18713         * modules/uniconv/u16-strconv-from-enc-tests
18714         (test_u16_strconv_from_enc_LDADD): Likewise.
18715         * modules/uniconv/u16-strconv-to-enc-tests
18716         (test_u16_strconv_to_enc_LDADD): Likewise.
18717         * modules/uniconv/u32-conv-from-enc-tests
18718         (test_u32_conv_from_enc_LDADD): Likewise.
18719         * modules/uniconv/u32-conv-to-enc-tests
18720         (test_u32_conv_to_enc_LDADD): Likewise.
18721         * modules/uniconv/u32-strconv-from-enc-tests
18722         (test_u32_strconv_from_enc_LDADD): Likewise.
18723         * modules/uniconv/u32-strconv-to-enc-tests
18724         (test_u32_strconv_to_enc_LDADD): Likewise.
18725         * modules/uniconv/u8-conv-from-enc-tests
18726         (test_u8_conv_from_enc_LDADD): Likewise.
18727         * modules/uniconv/u8-conv-to-enc-tests
18728         (test_u8_conv_to_enc_LDADD): Likewise.
18729         * modules/uniconv/u8-strconv-from-enc-tests
18730         (test_u8_strconv_from_enc_LDADD): Likewise.
18731         * modules/uniconv/u8-strconv-to-enc-tests
18732         (test_u8_strconv_to_enc_LDADD): Likewise.
18733
18734 2007-10-22  Bruno Haible  <bruno@clisp.org>
18735
18736         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
18737         size.
18738
18739 2007-10-22  Eric Blake  <ebb9@byu.net>
18740
18741         Tweak x*printf documentation.
18742         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
18743         variable name and comments.
18744         Suggested by Bruno Haible.
18745
18746 2007-10-22  Bruno Haible  <bruno@clisp.org>
18747
18748         * lib/acl.c (copy_acl): Fix file name in comment.
18749
18750 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
18751
18752         Fix Tru64 problem with stdbool.h.
18753         * lib/stdbool.in.h (false, true):
18754         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
18755         Don't declare as an enum in this situation; it runs afoul of Tru64.
18756         Problem reported by Steven M. Schweda in
18757         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
18758
18759 2007-10-22  Eric Blake  <ebb9@byu.net>
18760
18761         Also wrap vf?printf.
18762         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
18763         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
18764         (xvprintf, xvfprintf): New functions.
18765
18766 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18767
18768         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
18769         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
18770
18771         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
18772         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
18773
18774 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
18775
18776         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
18777         by Bruno Haible.
18778
18779 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18780
18781         * lib/getloadavg.c
18782         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
18783         Undef `sys' after including sys/table.h, for Tru64 4.0D.
18784
18785         * tests/test-i-ring.c: Work for C89.
18786
18787 2007-10-22  Bruno Haible  <bruno@clisp.org>
18788
18789         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
18790         -1u, in preprocessor expression, so that we don't test for the bug
18791         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
18792         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
18793
18794 2007-10-22  Eric Blake  <ebb9@byu.net>
18795
18796         * tests/test-yesno.sh: Silence stderr during test.
18797
18798 2007-10-22  Simon Josefsson  <simon@josefsson.org>
18799
18800         * modules/crypto/gc-camellia: New file.
18801
18802         * m4/gc-camellia.m4: New file.
18803
18804         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
18805
18806         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
18807
18808 2007-10-22  Simon Josefsson  <simon@josefsson.org>
18809
18810         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
18811         --help to stdout.  Reported by sms@antinode.org (Steven
18812         M. Schweda).
18813
18814 2007-10-22  Simon Josefsson  <simon@josefsson.org>
18815
18816         * users.txt: Fix link to libksba.
18817
18818 2007-10-21  Ben Pfaff  <blp@gnu.org>
18819
18820         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
18821         round.c roundf implementation that depends on floorf and ceilf to
18822         be tested unconditionally.
18823
18824 2007-10-21  Ben Pfaff  <blp@gnu.org>
18825
18826         * m4/check-libm-func.m4: Removed.
18827         * m4/check-math-lib.m4: New file.
18828         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
18829         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
18830         definition and lack of AC_LIBOBJ([roundf]).
18831         * m4/roundl.m4: Ditto, and similarly for roundl.
18832         * modules/round: Reference new m4 file.
18833         * modules/roundf: Ditto.
18834         * modules/roundl: Ditto.
18835         * tests/test-round2.c (main): Use ROUND instead of round.
18836         Bug report from Bruno Haible.
18837
18838 2007-10-21  Bruno Haible  <bruno@clisp.org>
18839
18840         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
18841         context.
18842
18843 2007-10-21  Bruno Haible  <bruno@clisp.org>
18844
18845         * tests/test-wcwidth.c (main): Allow negative result for some control
18846         characters.
18847
18848         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
18849         Needed on OSF/1 5.1.
18850
18851 2007-10-21  Bruno Haible  <bruno@clisp.org>
18852
18853         * tests/test-floorf1.c: Include isnanf.h.
18854         (main): Use isnanf() instead of isnan().
18855         * tests/test-ceilf1.c: Include isnanf.h.
18856         (main): Use isnanf() instead of isnan().
18857         * tests/test-truncf1.c: Include isnanf.h.
18858         (main): Use isnanf() instead of isnan().
18859         * tests/test-roundf1.c: Include isnanf.h.
18860         (main): Use isnanf() instead of isnan().
18861
18862 2007-10-21  Eric Blake  <ebb9@byu.net>
18863
18864         * users.txt: Update URL for m4.
18865
18866 2007-10-21  Bruno Haible  <bruno@clisp.org>
18867
18868         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
18869
18870 2007-10-21  Bruno Haible  <bruno@clisp.org>
18871
18872         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
18873         Git's management files if the CVS files are not present.
18874
18875 2007-10-20  Bruno Haible  <bruno@clisp.org>
18876
18877         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
18878         gcc-3.4.x.
18879
18880 2007-10-20  Ben Pfaff  <blp@gnu.org>
18881
18882         * lib/math.in.h: Declare round, roundf, roundl if we are providing
18883         implementations.
18884         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
18885         * lib/round.c: New file.
18886         * lib/roundf.c: New file.
18887         * lib/roundl.c: New file.
18888         * m4/round.m4: New file.
18889         * m4/roundf.m4: New file.
18890         * m4/roundl.m4: New file.
18891         * m4/check-libm-func-m4: New file.
18892         * modules/math: Replace round, roundf, roundl related @VARS@ in
18893         math.in.h.
18894         * modules/round: New file.
18895         * modules/round-tests: New file.
18896         * modules/roundf: New file.
18897         * modules/roundf-tests: New file.
18898         * modules/roundl: New file.
18899         * modules/roundl-tests: New file.
18900         * tests/test-round1.c: New file.
18901         * tests/test-round2.c: New file.
18902         * tests/test-roundf1.c: New file.
18903         * tests/test-roundf2.c: New file.
18904         * tests/test-roundl.c: New file.
18905         * doc/functions/round.texi: Mention round module.
18906         * doc/functions/roundf.texi: Mention roundf module.
18907         * doc/functions/roundl.texi: Mention roundl module.
18908         * MODULES.html.sh: Mention new modules.
18909         Thanks to Bruno Haible for suggestions.
18910
18911 2007-10-20  Jim Meyering  <meyering@redhat.com>
18912
18913         * lib/xprintf.c: Include <config.h> unconditionally.
18914
18915         Change xprintf's license to GPL.
18916         * modules/xprintf (License): s/LGPL/GPL/, since this module
18917         depends on modules (exit and exitfail) which are GPL.
18918         Suggestion from Bruno Haible.
18919
18920         xprintf fixes.
18921         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
18922         Use a clearer diagnostic.
18923         Patch from Bruno Haible.
18924
18925 2007-10-20  Bruno Haible  <bruno@clisp.org>
18926
18927         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
18928         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
18929         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18930
18931 2007-10-20  Bruno Haible  <bruno@clisp.org>
18932
18933         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
18934         precision in the comparison result > x - 1 or similar.
18935         * tests/test-ceilf2.c (correct_result_p): Likewise.
18936         * tests/test-truncf2.c (correct_result_p): Likewise.
18937         * tests/test-trunc2.c (correct_result_p): Likewise.
18938         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
18939
18940 2007-10-20  Bruno Haible  <bruno@clisp.org>
18941
18942         * modules/ceil: New file.
18943         * m4/ceil.m4: New file.
18944         * doc/functions/ceil.texi: Mention the 'ceil' module.
18945
18946 2007-10-20  Bruno Haible  <bruno@clisp.org>
18947
18948         * modules/floor: New file.
18949         * m4/floor.m4: New file.
18950         * doc/functions/floor.texi: Mention the 'floor' module.
18951
18952 2007-10-20  Bruno Haible  <bruno@clisp.org>
18953
18954         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
18955         of %a.
18956         * modules/floorf-tests (Depends-on): Likewise.
18957         * modules/truncf-tests (Depends-on): Likewise.
18958         * modules/trunc-tests (Depends-on): Likewise.
18959         Reported by Ben Pfaff.
18960
18961 2007-10-19  Jim Meyering  <meyering@redhat.com>
18962
18963         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
18964         Don't bother testing specific errno values.  Just test ferror.
18965
18966         New module: xprintf
18967         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
18968
18969 2007-10-19  Bruno Haible  <bruno@clisp.org>
18970
18971         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
18972         syntax.
18973         * modules/javaexec (Makefile.am): Likewise.
18974         * modules/relocatable-prog (Makefile.am): Likewise.
18975         Suggested by Jim Meyering.
18976
18977 2007-10-18  Bruno Haible  <bruno@clisp.org>
18978
18979         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
18980         Reported by Jim Meyering.
18981
18982 2007-10-18  Eric Blake  <ebb9@byu.net>
18983
18984         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
18985
18986 2007-10-18  Bruno Haible  <bruno@clisp.org>
18987
18988         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
18989         the format string into writable memory. Needed in Fortify conditions.
18990
18991 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
18992             Bruno Haible  <bruno@clisp.org>
18993
18994         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
18995         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
18996         * modules/trim (Depends-on): Add mbchar.
18997         (configure.ac): Add gl_FUNC_MBRTOWC.
18998         (Makefile.am): Augment lib_SOURCES.
18999
19000 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
19001
19002         Modify glob.c to use fstatat and dirfd, to simplify it.
19003         Suggested by Eric Blake.
19004         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
19005         Don't include <stdbool.h>; not used.
19006         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
19007         (link_exists_p): Simplify implementation, since we can now assume
19008         dirfd and fstatat.
19009         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
19010
19011 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19012
19013         * gnulib-tool (func_get_dependencies): Fix sed script to
19014         match only tests.
19015
19016 2007-10-17  Bruno Haible  <bruno@clisp.org>
19017
19018         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
19019         allow locale names without encoding suffix.
19020         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
19021         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
19022
19023 2007-10-16  Bruno Haible  <bruno@clisp.org>
19024
19025         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
19026         * lib/getgroups.c (getgroups): Likewise.
19027         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
19028
19029 2007-10-16  Bruno Haible  <bruno@clisp.org>
19030
19031         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
19032         * modules/malloc-posix (License): Likewise.
19033         * modules/realloc-posix (License): Likewise.
19034         * modules/calloc-posix (License): Likewise.
19035         * modules/intprops (License): Change from GPL to LGPL, with
19036         Paul Eggert's approval.
19037
19038 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19039
19040         Merge glibc changes into lib/glob.c.
19041
19042         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
19043         2007-10-15 04:59:03 UTC.  Here are the changes:
19044
19045         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
19046
19047         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
19048
19049         * lib/glob.c: Add some branch prediction throughout.
19050
19051         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
19052
19053         [BZ #5103]
19054         * lib/glob.c (glob): Recognize patterns starting \/.
19055
19056         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
19057
19058         [BZ #3996]
19059         * lib/glob.c (attribute_hidden): Define if not defined.
19060         (glob): Unescape dirname, filename or username when needed and not
19061         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
19062         is NULL.  Handle unescaped [ in pattern without closing ].
19063         Don't pass GLOB_CHECK down to recursive glob for directories.
19064         (__glob_pattern_type): New function.
19065         (__glob_pattern_p): Implement using __glob_pattern_type.
19066         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
19067         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
19068         Remove unreachable code.
19069
19070         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
19071
19072         * lib/glob.c (glob_in_dir): Add some comments and asserts to
19073         explain why there are no leaks.
19074
19075         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
19076
19077         [BZ #3253]
19078         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
19079         time, rather allocate increasingly bigger arrays of pointers, if
19080         possible with alloca, if too large with malloc.
19081
19082 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
19083
19084         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
19085         Problem reported by H.Merijn Brand in
19086         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
19087         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
19088         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
19089
19090 2007-10-15  Bruno Haible  <bruno@clisp.org>
19091
19092         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
19093         with explicit rpl_ prefix.
19094         * lib/fopen.c (fopen): Likewise.
19095         * lib/freopen.c (freopen): Likewise.
19096         * lib/iconv.c (iconv): Likewise.
19097         * lib/iconv_close.c (iconv_close): Likewise.
19098
19099 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19100
19101         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
19102
19103 2007-10-15  Bruno Haible  <bruno@clisp.org>
19104
19105         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
19106         <stddef.h> instead of <stdlib.h> since we only need NULL.
19107         Reported by Ben Pfaff <blp@cs.stanford.edu>.
19108
19109 2007-10-15  Bruno Haible  <bruno@clisp.org>
19110
19111         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
19112         Replace paragraph talking about LIBOBJS.
19113         Reported by Colin Watson <cjwatson@debian.org>.
19114
19115 2007-10-15  Bruno Haible  <bruno@clisp.org>
19116
19117         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
19118         <stdlib.h> before using NULL.
19119
19120 2007-10-15  Simon Josefsson  <simon@josefsson.org>
19121
19122         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
19123         Reported by Albert Chin <china@thewrittenword.com>.
19124
19125 2007-10-14  Bruno Haible  <bruno@clisp.org>
19126
19127         * modules/iconv_open-utf-tests: New file.
19128         * tests/test-iconv-utf.c: New file.
19129
19130         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
19131         * modules/iconv_open-utf: New file.
19132         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
19133         (iconv, iconv_close): New declarations.
19134         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
19135         be defined.
19136         (iconv_open): Add special handling of conversion between UTF-8 and
19137         UTF-{16,32}{BE,LE}.
19138         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
19139         * lib/iconv_close.c: New file.
19140         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
19141         gl_FUNC_ICONV_OPEN.
19142         (gl_FUNC_ICONV_OPEN): Use it.
19143         (gl_FUNC_ICONV_OPEN_UTF): New macro.
19144         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
19145         and REPLACE_ICONV_UTF.
19146         * modules/iconv_open (Depends-on): Add c-strcase.
19147         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
19148         ICONV_CONST.
19149         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
19150
19151 2007-10-13  Albert Chin  <china@thewrittenword.com>
19152             Bruno Haible  <bruno@clisp.org>
19153
19154         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
19155         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
19156
19157 2007-10-13  Bruno Haible  <bruno@clisp.org>
19158
19159         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
19160         defined, use the ISO C99 inline semantics.
19161         * lib/argp.h (ARGP_EI): Likewise.
19162
19163 2007-10-13  Bruno Haible  <bruno@clisp.org>
19164
19165         Handle 'inline' change in gcc 4.3.0.
19166         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
19167         argp_fmtstream_write, argp_fmtstream_set_lmargin,
19168         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
19169         argp_fmtstream_point): Disable 'extern' declaration if the function
19170         definition is going to be provided inline.
19171         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
19172         semantics, not the ISO C99 inline semantics.
19173         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
19174         'extern' declaration if the function definition is going to be provided
19175         inline.
19176         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
19177         the GNU C inline semantics, not the ISO C99 inline semantics. With
19178         GCC 4.2, avoid a warning.
19179
19180 2007-10-13  Bruno Haible  <bruno@clisp.org>
19181
19182         * lib/freading.h (freading): Enable the use of __freading for
19183         glibc >= 2.7.
19184         * lib/freading.c (freading): Likewise.
19185
19186 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
19187
19188         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
19189         "warning: C99 inline functions are not supported; using GNU89".
19190
19191 2007-10-12  Bruno Haible  <bruno@clisp.org>
19192
19193         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
19194         of 2.
19195         * tests/test-ceilf2.c: New file.
19196         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
19197
19198         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
19199         * modules/ceilf-tests: Update.
19200
19201 2007-10-12  Bruno Haible  <bruno@clisp.org>
19202
19203         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
19204         of 2.
19205         * tests/test-floorf2.c: New file.
19206         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
19207
19208         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
19209         * modules/floorf-tests: Update.
19210
19211 2007-10-12  Bruno Haible  <bruno@clisp.org>
19212
19213         * tests/test-trunc2.c: New file.
19214         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
19215
19216         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
19217         * modules/trunc-tests: Update.
19218
19219 2007-10-12  Bruno Haible  <bruno@clisp.org>
19220
19221         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
19222         of 2.
19223         * tests/test-truncf2.c: New file.
19224         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
19225
19226         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
19227         * modules/truncf-tests: Update.
19228
19229 2007-10-11  Eric Blake  <ebb9@byu.net>
19230
19231         Don't claim strerror is broken on Interix.
19232         * doc/functions/strerror.texi (strerror): Known broken systems are
19233         now Solaris 8, and not Interix.
19234         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
19235         Interix on cross-compile.
19236         Reported by Martin Koeppe in
19237         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
19238
19239 2007-10-11  Bruno Haible  <bruno@clisp.org>
19240
19241         * modules/i-ring-tests: New file.
19242         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
19243         instead of assert.
19244
19245 2007-10-11  Bruno Haible  <bruno@clisp.org>
19246
19247         * modules/filenamecat-tests: New file.
19248         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
19249         * lib/filenamecat.c: Remove test code.
19250
19251 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
19252
19253         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
19254
19255         * lib/strerror.c: Include <string.h> always, to test interface,
19256         and to remove the need for the dummy.
19257         Include intprops.h to compute width instead of doing it ourselves
19258         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
19259         (strerror): Define it to return NULL if there's no system strerror.
19260         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
19261         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
19262         ancient pre-strerror Unix systems well any more.  Saying "unknown
19263         system error" is enough.
19264         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
19265         simpler strerror.c implementation.
19266         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
19267         Simplify the tests to reflect the simpler strerror implementation.
19268         * modules/strerror (Depends-on): Add intprops.
19269
19270 2007-10-09  Eric Blake  <ebb9@byu.net>
19271
19272         Silence test-fpending.
19273         * modules/fpending-tests (Files): Add wrapper script.
19274         * tests/test-fpending.sh: New file.
19275
19276 2007-10-09  Bruno Haible  <bruno@clisp.org>
19277
19278         * MODULES.html.sh (func_module): Don't create a hyperlink for
19279         function names like 'printf_frexp'.
19280         (Misc): Add crc, memxor.
19281         (Characteristics of floating types): New section.
19282         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
19283         isnanf-nolibm, signbit, trunc, truncf, truncl.
19284         (Enhancements for ISO C 99 functions): New subsection Input/output.
19285         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
19286         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
19287         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
19288         (Compatibility checks for POSIX:2001 functions): Add clock-time.
19289         (Enhancements for POSIX:2001 functions): Add chdir-long.
19290         (File system functions): Add areadlink, chdir-safer, read-file.
19291         Remove cycle-check.
19292         (File system as inode set): New section.
19293         (Date and time): Add gethrxtime.
19294         (Multithreading): Add openmp.
19295         (Internationalization functions): Add localename.
19296         (Unicode string functions): Add unistr/u*-mbsnlen.
19297         (Support for maintaining and releasing projects): Add git-version-gen.
19298         (Lone files): Remove directories.
19299
19300 2007-10-08  Ben Pfaff  <blp@gnu.org>
19301
19302         * lib/xmalloca.h: Fix typo in comment.
19303
19304 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
19305
19306         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
19307         when avoiding problems with integer overflow.  Use a portable test
19308         instead.
19309
19310 2007-10-08  Simon Josefsson  <simon@josefsson.org>
19311
19312         * modules/dummy (License): Change to LGPLv2+.
19313         * modules/float (License): Likewise
19314         * modules/realloc (License): Likewise
19315         * modules/stdlib (License): Likewise
19316
19317 2007-10-07  Bruno Haible  <bruno@clisp.org>
19318
19319         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
19320         * floor.c (TWO_MANT_DIG): Likewise.
19321         * ceil.c (TWO_MANT_DIG): Likewise.
19322         Reported by Ben Pfaff.
19323
19324 2007-10-07  Bruno Haible  <bruno@clisp.org>
19325
19326         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
19327         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
19328         * lib/frexp.c (FUNC): Likewise.
19329         * lib/printf-frexp.h (printf_frexp): Likewise.
19330         * lib/printf-frexpl.h (printf_frexpl): Likewise.
19331         * lib/printf-frexp.c (FUNC): Likewise.
19332         Suggested by Jim Meyering.
19333
19334 2007-10-07  Jim Meyering  <meyering@redhat.com>
19335
19336         Make xnanosleep's integer overflow test more robust.
19337         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
19338         so that gcc-4.3.0 doesn't optimize away this test for overflow.
19339
19340 2007-10-07  Bruno Haible  <bruno@clisp.org>
19341
19342         * NEWS: Mention the license change.
19343
19344         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
19345         abbreviations in the modules files.
19346
19347         Change copyright notice from GPLv2+ to GPLv3+.
19348         * README: Change copyright notice.
19349         * MODULES.html.sh: Likewise.
19350         * build-aux/bootstrap.conf: Likewise.
19351         * build-aux/config.libpath: Likewise.
19352         * build-aux/csharpcomp.sh.in: Likewise.
19353         * build-aux/csharpexec.sh.in: Likewise.
19354         * build-aux/install-reloc: Likewise.
19355         * build-aux/javacomp.sh.in: Likewise.
19356         * build-aux/javaexec.sh.in: Likewise.
19357         * build-aux/ldd.sh.in: Likewise.
19358         * build-aux/reloc-ldflags: Likewise.
19359         * build-aux/relocatable.sh.in: Likewise.
19360         * build-aux/x-to-1.in: Likewise.
19361         * check-module: Likewise.
19362         * config/srclistvars.sh: Likewise.
19363         * gnulib-tool: Likewise.
19364         * lib/acl-internal.h: Likewise.
19365         * lib/acl.c: Likewise.
19366         * lib/acl.h: Likewise.
19367         * lib/acl_entries.c: Likewise.
19368         * lib/areadlink-with-size.c: Likewise.
19369         * lib/areadlink.c: Likewise.
19370         * lib/areadlink.h: Likewise.
19371         * lib/argmatch.c: Likewise.
19372         * lib/argmatch.h: Likewise.
19373         * lib/argp-ba.c: Likewise.
19374         * lib/argp-eexst.c: Likewise.
19375         * lib/argp-fmtstream.c: Likewise.
19376         * lib/argp-fmtstream.h: Likewise.
19377         * lib/argp-fs-xinl.c: Likewise.
19378         * lib/argp-help.c: Likewise.
19379         * lib/argp-namefrob.h: Likewise.
19380         * lib/argp-parse.c: Likewise.
19381         * lib/argp-pin.c: Likewise.
19382         * lib/argp-pv.c: Likewise.
19383         * lib/argp-pvh.c: Likewise.
19384         * lib/argp-xinl.c: Likewise.
19385         * lib/argp.h: Likewise.
19386         * lib/at-func.c: Likewise.
19387         * lib/atanl.c: Likewise.
19388         * lib/backupfile.c: Likewise.
19389         * lib/backupfile.h: Likewise.
19390         * lib/basename.c: Likewise.
19391         * lib/binary-io.h: Likewise.
19392         * lib/byteswap.in.h: Likewise.
19393         * lib/c-stack.c: Likewise.
19394         * lib/c-stack.h: Likewise.
19395         * lib/c-strcasestr.c: Likewise.
19396         * lib/c-strcasestr.h: Likewise.
19397         * lib/c-strstr.c: Likewise.
19398         * lib/c-strstr.h: Likewise.
19399         * lib/c-strtod.c: Likewise.
19400         * lib/calloc.c: Likewise.
19401         * lib/canon-host.c: Likewise.
19402         * lib/canon-host.h: Likewise.
19403         * lib/canonicalize-lgpl.c: Likewise.
19404         * lib/canonicalize.c: Likewise.
19405         * lib/canonicalize.h: Likewise.
19406         * lib/ceil.c: Likewise.
19407         * lib/ceilf.c: Likewise.
19408         * lib/ceill.c: Likewise.
19409         * lib/chdir-long.c: Likewise.
19410         * lib/chdir-long.h: Likewise.
19411         * lib/chdir-safer.c: Likewise.
19412         * lib/chdir-safer.h: Likewise.
19413         * lib/chown.c: Likewise.
19414         * lib/classpath.c: Likewise.
19415         * lib/classpath.h: Likewise.
19416         * lib/clean-temp.c: Likewise.
19417         * lib/clean-temp.h: Likewise.
19418         * lib/cloexec.c: Likewise.
19419         * lib/close-stream.c: Likewise.
19420         * lib/closein.c: Likewise.
19421         * lib/closein.h: Likewise.
19422         * lib/closeout.c: Likewise.
19423         * lib/closeout.h: Likewise.
19424         * lib/concat-filename.c: Likewise.
19425         * lib/copy-file.c: Likewise.
19426         * lib/copy-file.h: Likewise.
19427         * lib/count-one-bits.h: Likewise.
19428         * lib/crc.c: Likewise.
19429         * lib/crc.h: Likewise.
19430         * lib/creat-safer.c: Likewise.
19431         * lib/csharpcomp.c: Likewise.
19432         * lib/csharpcomp.h: Likewise.
19433         * lib/csharpexec.c: Likewise.
19434         * lib/csharpexec.h: Likewise.
19435         * lib/cycle-check.c: Likewise.
19436         * lib/cycle-check.h: Likewise.
19437         * lib/diacrit.c: Likewise.
19438         * lib/diacrit.h: Likewise.
19439         * lib/diffseq.h: Likewise.
19440         * lib/dirchownmod.c: Likewise.
19441         * lib/dirent.in.h: Likewise.
19442         * lib/dirfd.c: Likewise.
19443         * lib/dirfd.h: Likewise.
19444         * lib/dirname.c: Likewise.
19445         * lib/dirname.h: Likewise.
19446         * lib/dummy.c: Likewise.
19447         * lib/dup-safer.c: Likewise.
19448         * lib/dup2.c: Likewise.
19449         * lib/eealloc.h: Likewise.
19450         * lib/error.c: Likewise.
19451         * lib/error.h: Likewise.
19452         * lib/euidaccess.c: Likewise.
19453         * lib/exclude.c: Likewise.
19454         * lib/exclude.h: Likewise.
19455         * lib/execute.c: Likewise.
19456         * lib/execute.h: Likewise.
19457         * lib/exitfail.c: Likewise.
19458         * lib/exitfail.h: Likewise.
19459         * lib/expl.c: Likewise.
19460         * lib/fatal-signal.c: Likewise.
19461         * lib/fatal-signal.h: Likewise.
19462         * lib/fbufmode.c: Likewise.
19463         * lib/fbufmode.h: Likewise.
19464         * lib/fchdir.c: Likewise.
19465         * lib/fchmodat.c: Likewise.
19466         * lib/fchownat.c: Likewise.
19467         * lib/fcntl--.h: Likewise.
19468         * lib/fcntl-safer.h: Likewise.
19469         * lib/fcntl.in.h: Likewise.
19470         * lib/fd-safer.c: Likewise.
19471         * lib/fflush.c: Likewise.
19472         * lib/file-has-acl.c: Likewise.
19473         * lib/file-set.c: Likewise.
19474         * lib/file-type.c: Likewise.
19475         * lib/file-type.h: Likewise.
19476         * lib/fileblocks.c: Likewise.
19477         * lib/filemode.c: Likewise.
19478         * lib/filemode.h: Likewise.
19479         * lib/filename.h: Likewise.
19480         * lib/filenamecat.c: Likewise.
19481         * lib/filenamecat.h: Likewise.
19482         * lib/findprog.c: Likewise.
19483         * lib/findprog.h: Likewise.
19484         * lib/float.in.h: Likewise.
19485         * lib/floor.c: Likewise.
19486         * lib/floorf.c: Likewise.
19487         * lib/floorl.c: Likewise.
19488         * lib/fopen-safer.c: Likewise.
19489         * lib/fopen.c: Likewise.
19490         * lib/fpending.c: Likewise.
19491         * lib/fpending.h: Likewise.
19492         * lib/fprintf.c: Likewise.
19493         * lib/fprintftime.h: Likewise.
19494         * lib/fpucw.h: Likewise.
19495         * lib/fpurge.c: Likewise.
19496         * lib/fpurge.h: Likewise.
19497         * lib/freadable.c: Likewise.
19498         * lib/freadable.h: Likewise.
19499         * lib/freadahead.c: Likewise.
19500         * lib/freadahead.h: Likewise.
19501         * lib/freading.c: Likewise.
19502         * lib/freading.h: Likewise.
19503         * lib/free.c: Likewise.
19504         * lib/freopen.c: Likewise.
19505         * lib/frexp.c: Likewise.
19506         * lib/frexpl.c: Likewise.
19507         * lib/fseek.c: Likewise.
19508         * lib/fseterr.c: Likewise.
19509         * lib/fseterr.h: Likewise.
19510         * lib/fstatat.c: Likewise.
19511         * lib/fstrcmp.c: Likewise.
19512         * lib/fstrcmp.h: Likewise.
19513         * lib/fsusage.c: Likewise.
19514         * lib/fsusage.h: Likewise.
19515         * lib/ftell.c: Likewise.
19516         * lib/ftello.c: Likewise.
19517         * lib/fts-cycle.c: Likewise.
19518         * lib/fts.c: Likewise.
19519         * lib/fts_.h: Likewise.
19520         * lib/full-read.c: Likewise.
19521         * lib/full-read.h: Likewise.
19522         * lib/full-write.c: Likewise.
19523         * lib/full-write.h: Likewise.
19524         * lib/fwritable.c: Likewise.
19525         * lib/fwritable.h: Likewise.
19526         * lib/fwriteerror.c: Likewise.
19527         * lib/fwriteerror.h: Likewise.
19528         * lib/fwriting.c: Likewise.
19529         * lib/fwriting.h: Likewise.
19530         * lib/gcd.c: Likewise.
19531         * lib/gcd.h: Likewise.
19532         * lib/getcwd.c: Likewise.
19533         * lib/getdate.h: Likewise.
19534         * lib/getdate.y: Likewise.
19535         * lib/getdomainname.c: Likewise.
19536         * lib/getdomainname.h: Likewise.
19537         * lib/getgroups.c: Likewise.
19538         * lib/gethostname.c: Likewise.
19539         * lib/gethrxtime.c: Likewise.
19540         * lib/gethrxtime.h: Likewise.
19541         * lib/getloadavg.c: Likewise.
19542         * lib/getndelim2.c: Likewise.
19543         * lib/getndelim2.h: Likewise.
19544         * lib/getnline.c: Likewise.
19545         * lib/getnline.h: Likewise.
19546         * lib/getopt.c: Likewise.
19547         * lib/getopt.in.h: Likewise.
19548         * lib/getopt1.c: Likewise.
19549         * lib/getopt_int.h: Likewise.
19550         * lib/getpagesize.h: Likewise.
19551         * lib/getsubopt.c: Likewise.
19552         * lib/gettime.c: Likewise.
19553         * lib/getugroups.c: Likewise.
19554         * lib/getugroups.h: Likewise.
19555         * lib/getusershell.c: Likewise.
19556         * lib/gl_anyavltree_list1.h: Likewise.
19557         * lib/gl_anyavltree_list2.h: Likewise.
19558         * lib/gl_anyhash_list1.h: Likewise.
19559         * lib/gl_anyhash_list2.h: Likewise.
19560         * lib/gl_anylinked_list1.h: Likewise.
19561         * lib/gl_anylinked_list2.h: Likewise.
19562         * lib/gl_anyrbtree_list1.h: Likewise.
19563         * lib/gl_anyrbtree_list2.h: Likewise.
19564         * lib/gl_anytree_list1.h: Likewise.
19565         * lib/gl_anytree_list2.h: Likewise.
19566         * lib/gl_anytree_oset.h: Likewise.
19567         * lib/gl_anytreehash_list1.h: Likewise.
19568         * lib/gl_anytreehash_list2.h: Likewise.
19569         * lib/gl_array_list.c: Likewise.
19570         * lib/gl_array_list.h: Likewise.
19571         * lib/gl_array_oset.c: Likewise.
19572         * lib/gl_array_oset.h: Likewise.
19573         * lib/gl_avltree_list.c: Likewise.
19574         * lib/gl_avltree_list.h: Likewise.
19575         * lib/gl_avltree_oset.c: Likewise.
19576         * lib/gl_avltree_oset.h: Likewise.
19577         * lib/gl_avltreehash_list.c: Likewise.
19578         * lib/gl_avltreehash_list.h: Likewise.
19579         * lib/gl_carray_list.c: Likewise.
19580         * lib/gl_carray_list.h: Likewise.
19581         * lib/gl_linked_list.c: Likewise.
19582         * lib/gl_linked_list.h: Likewise.
19583         * lib/gl_linkedhash_list.c: Likewise.
19584         * lib/gl_linkedhash_list.h: Likewise.
19585         * lib/gl_list.c: Likewise.
19586         * lib/gl_list.h: Likewise.
19587         * lib/gl_oset.c: Likewise.
19588         * lib/gl_oset.h: Likewise.
19589         * lib/gl_rbtree_list.c: Likewise.
19590         * lib/gl_rbtree_list.h: Likewise.
19591         * lib/gl_rbtree_oset.c: Likewise.
19592         * lib/gl_rbtree_oset.h: Likewise.
19593         * lib/gl_rbtreehash_list.c: Likewise.
19594         * lib/gl_rbtreehash_list.h: Likewise.
19595         * lib/gl_sublist.c: Likewise.
19596         * lib/gl_sublist.h: Likewise.
19597         * lib/group-member.c: Likewise.
19598         * lib/group-member.h: Likewise.
19599         * lib/hard-locale.c: Likewise.
19600         * lib/hard-locale.h: Likewise.
19601         * lib/hash-pjw.c: Likewise.
19602         * lib/hash-pjw.h: Likewise.
19603         * lib/hash-triple.c: Likewise.
19604         * lib/hash.c: Likewise.
19605         * lib/hash.h: Likewise.
19606         * lib/human.c: Likewise.
19607         * lib/human.h: Likewise.
19608         * lib/i-ring.c: Likewise.
19609         * lib/i-ring.h: Likewise.
19610         * lib/idcache.c: Likewise.
19611         * lib/imaxabs.c: Likewise.
19612         * lib/imaxdiv.c: Likewise.
19613         * lib/inet_pton.c: Likewise.
19614         * lib/inet_pton.h: Likewise.
19615         * lib/intprops.h: Likewise.
19616         * lib/inttostr.c: Likewise.
19617         * lib/inttostr.h: Likewise.
19618         * lib/inttypes.in.h: Likewise.
19619         * lib/isapipe.c: Likewise.
19620         * lib/isdir.c: Likewise.
19621         * lib/isnan.c: Likewise.
19622         * lib/isnan.h: Likewise.
19623         * lib/isnanf.c: Likewise.
19624         * lib/isnanf.h: Likewise.
19625         * lib/isnanl-nolibm.h: Likewise.
19626         * lib/isnanl.c: Likewise.
19627         * lib/isnanl.h: Likewise.
19628         * lib/javacomp.c: Likewise.
19629         * lib/javacomp.h: Likewise.
19630         * lib/javaexec.c: Likewise.
19631         * lib/javaexec.h: Likewise.
19632         * lib/javaversion.c: Likewise.
19633         * lib/javaversion.h: Likewise.
19634         * lib/javaversion.java: Likewise.
19635         * lib/lbrkprop.h: Likewise.
19636         * lib/lchmod.h: Likewise.
19637         * lib/lchown.c: Likewise.
19638         * lib/ldexpl.c: Likewise.
19639         * lib/linebreak.c: Likewise.
19640         * lib/linebreak.h: Likewise.
19641         * lib/linebuffer.c: Likewise.
19642         * lib/linebuffer.h: Likewise.
19643         * lib/locale.in.h: Likewise.
19644         * lib/logl.c: Likewise.
19645         * lib/long-options.c: Likewise.
19646         * lib/long-options.h: Likewise.
19647         * lib/lstat.c: Likewise.
19648         * lib/lstat.h: Likewise.
19649         * lib/math.in.h: Likewise.
19650         * lib/mbchar.c: Likewise.
19651         * lib/mbchar.h: Likewise.
19652         * lib/mbfile.h: Likewise.
19653         * lib/mbiter.h: Likewise.
19654         * lib/mbscasecmp.c: Likewise.
19655         * lib/mbscasestr.c: Likewise.
19656         * lib/mbschr.c: Likewise.
19657         * lib/mbscspn.c: Likewise.
19658         * lib/mbslen.c: Likewise.
19659         * lib/mbsncasecmp.c: Likewise.
19660         * lib/mbsnlen.c: Likewise.
19661         * lib/mbspbrk.c: Likewise.
19662         * lib/mbspcasecmp.c: Likewise.
19663         * lib/mbsrchr.c: Likewise.
19664         * lib/mbssep.c: Likewise.
19665         * lib/mbsspn.c: Likewise.
19666         * lib/mbsstr.c: Likewise.
19667         * lib/mbstok_r.c: Likewise.
19668         * lib/mbswidth.c: Likewise.
19669         * lib/mbswidth.h: Likewise.
19670         * lib/mbuiter.h: Likewise.
19671         * lib/memcasecmp.c: Likewise.
19672         * lib/memcasecmp.h: Likewise.
19673         * lib/memchr.c: Likewise.
19674         * lib/memcmp.c: Likewise.
19675         * lib/memcoll.c: Likewise.
19676         * lib/memcoll.h: Likewise.
19677         * lib/memcpy.c: Likewise.
19678         * lib/memrchr.c: Likewise.
19679         * lib/mkancesdirs.c: Likewise.
19680         * lib/mkdir-p.c: Likewise.
19681         * lib/mkdir-p.h: Likewise.
19682         * lib/mkdir.c: Likewise.
19683         * lib/mkdirat.c: Likewise.
19684         * lib/mkdtemp.c: Likewise.
19685         * lib/mkstemp-safer.c: Likewise.
19686         * lib/mkstemp.c: Likewise.
19687         * lib/modechange.c: Likewise.
19688         * lib/modechange.h: Likewise.
19689         * lib/mountlist.c: Likewise.
19690         * lib/mountlist.h: Likewise.
19691         * lib/mpsort.c: Likewise.
19692         * lib/nanosleep.c: Likewise.
19693         * lib/obstack.c: Likewise.
19694         * lib/obstack.h: Likewise.
19695         * lib/open-safer.c: Likewise.
19696         * lib/open.c: Likewise.
19697         * lib/openat-die.c: Likewise.
19698         * lib/openat-priv.h: Likewise.
19699         * lib/openat-proc.c: Likewise.
19700         * lib/openat.c: Likewise.
19701         * lib/openat.h: Likewise.
19702         * lib/pagealign_alloc.c: Likewise.
19703         * lib/pagealign_alloc.h: Likewise.
19704         * lib/physmem.c: Likewise.
19705         * lib/physmem.h: Likewise.
19706         * lib/pipe-safer.c: Likewise.
19707         * lib/pipe.c: Likewise.
19708         * lib/pipe.h: Likewise.
19709         * lib/posixtm.c: Likewise.
19710         * lib/posixtm.h: Likewise.
19711         * lib/posixver.c: Likewise.
19712         * lib/printf-frexp.c: Likewise.
19713         * lib/printf-frexp.h: Likewise.
19714         * lib/printf-frexpl.c: Likewise.
19715         * lib/printf-frexpl.h: Likewise.
19716         * lib/printf.c: Likewise.
19717         * lib/progname.c: Likewise.
19718         * lib/progname.h: Likewise.
19719         * lib/progreloc.c: Likewise.
19720         * lib/putenv.c: Likewise.
19721         * lib/quote.c: Likewise.
19722         * lib/quote.h: Likewise.
19723         * lib/quotearg.c: Likewise.
19724         * lib/quotearg.h: Likewise.
19725         * lib/raise.c: Likewise.
19726         * lib/readline.c: Likewise.
19727         * lib/readline.h: Likewise.
19728         * lib/readlink.c: Likewise.
19729         * lib/readtokens.c: Likewise.
19730         * lib/readtokens.h: Likewise.
19731         * lib/readtokens0.c: Likewise.
19732         * lib/readtokens0.h: Likewise.
19733         * lib/readutmp.c: Likewise.
19734         * lib/readutmp.h: Likewise.
19735         * lib/realloc.c: Likewise.
19736         * lib/relocwrapper.c: Likewise.
19737         * lib/rename-dest-slash.c: Likewise.
19738         * lib/rename.c: Likewise.
19739         * lib/rmdir.c: Likewise.
19740         * lib/rpmatch.c: Likewise.
19741         * lib/safe-read.c: Likewise.
19742         * lib/safe-read.h: Likewise.
19743         * lib/safe-write.c: Likewise.
19744         * lib/safe-write.h: Likewise.
19745         * lib/same-inode.h: Likewise.
19746         * lib/same.c: Likewise.
19747         * lib/same.h: Likewise.
19748         * lib/save-cwd.c: Likewise.
19749         * lib/save-cwd.h: Likewise.
19750         * lib/savedir.c: Likewise.
19751         * lib/savedir.h: Likewise.
19752         * lib/savewd.c: Likewise.
19753         * lib/savewd.h: Likewise.
19754         * lib/search.in.h: Likewise.
19755         * lib/setenv.c: Likewise.
19756         * lib/setenv.h: Likewise.
19757         * lib/settime.c: Likewise.
19758         * lib/sh-quote.c: Likewise.
19759         * lib/sh-quote.h: Likewise.
19760         * lib/sig2str.c: Likewise.
19761         * lib/sig2str.h: Likewise.
19762         * lib/signal.in.h: Likewise.
19763         * lib/signbitd.c: Likewise.
19764         * lib/signbitf.c: Likewise.
19765         * lib/signbitl.c: Likewise.
19766         * lib/sigprocmask.c: Likewise.
19767         * lib/sincosl.c: Likewise.
19768         * lib/sleep.c: Likewise.
19769         * lib/sprintf.c: Likewise.
19770         * lib/sqrtl.c: Likewise.
19771         * lib/stat-time.h: Likewise.
19772         * lib/stdio--.h: Likewise.
19773         * lib/stdio-safer.h: Likewise.
19774         * lib/stdlib--.h: Likewise.
19775         * lib/stdlib-safer.h: Likewise.
19776         * lib/stdlib.in.h: Likewise.
19777         * lib/stpcpy.c: Likewise.
19778         * lib/stpncpy.c: Likewise.
19779         * lib/strchrnul.c: Likewise.
19780         * lib/strcspn.c: Likewise.
19781         * lib/strerror.c: Likewise.
19782         * lib/strftime.c: Likewise.
19783         * lib/strftime.h: Likewise.
19784         * lib/striconveh.c: Likewise.
19785         * lib/striconveh.h: Likewise.
19786         * lib/striconveha.c: Likewise.
19787         * lib/striconveha.h: Likewise.
19788         * lib/stripslash.c: Likewise.
19789         * lib/strnlen1.c: Likewise.
19790         * lib/strnlen1.h: Likewise.
19791         * lib/strtod.c: Likewise.
19792         * lib/strtoimax.c: Likewise.
19793         * lib/strtok_r.c: Likewise.
19794         * lib/strtol.c: Likewise.
19795         * lib/strtoll.c: Likewise.
19796         * lib/strtoul.c: Likewise.
19797         * lib/strtoull.c: Likewise.
19798         * lib/sysexits.in.h: Likewise.
19799         * lib/tempname.c: Likewise.
19800         * lib/tempname.h: Likewise.
19801         * lib/timespec.h: Likewise.
19802         * lib/tls.c: Likewise.
19803         * lib/tls.h: Likewise.
19804         * lib/tmpdir.c: Likewise.
19805         * lib/tmpdir.h: Likewise.
19806         * lib/tmpfile-safer.c: Likewise.
19807         * lib/tmpfile.c: Likewise.
19808         * lib/trigl.c: Likewise.
19809         * lib/trigl.h: Likewise.
19810         * lib/trim.c: Likewise.
19811         * lib/trim.h: Likewise.
19812         * lib/trunc.c: Likewise.
19813         * lib/truncf.c: Likewise.
19814         * lib/truncl.c: Likewise.
19815         * lib/tsearch.c: Likewise.
19816         * lib/unicodeio.c: Likewise.
19817         * lib/unicodeio.h: Likewise.
19818         * lib/unistd--.h: Likewise.
19819         * lib/unistd-safer.h: Likewise.
19820         * lib/unistdio/ulc-fprintf.c: Likewise.
19821         * lib/unistdio/ulc-vfprintf.c: Likewise.
19822         * lib/unlinkdir.c: Likewise.
19823         * lib/unlinkdir.h: Likewise.
19824         * lib/unlocked-io.h: Likewise.
19825         * lib/unsetenv.c: Likewise.
19826         * lib/userspec.c: Likewise.
19827         * lib/utime.c: Likewise.
19828         * lib/utimecmp.c: Likewise.
19829         * lib/utimecmp.h: Likewise.
19830         * lib/utimens.c: Likewise.
19831         * lib/verify.h: Likewise.
19832         * lib/verror.c: Likewise.
19833         * lib/verror.h: Likewise.
19834         * lib/version-etc-fsf.c: Likewise.
19835         * lib/version-etc.c: Likewise.
19836         * lib/version-etc.h: Likewise.
19837         * lib/vfprintf.c: Likewise.
19838         * lib/vprintf.c: Likewise.
19839         * lib/vsprintf.c: Likewise.
19840         * lib/w32spawn.h: Likewise.
19841         * lib/wait-process.c: Likewise.
19842         * lib/wait-process.h: Likewise.
19843         * lib/wcwidth.c: Likewise.
19844         * lib/write-any-file.c: Likewise.
19845         * lib/xalloc-die.c: Likewise.
19846         * lib/xalloc.h: Likewise.
19847         * lib/xasprintf.c: Likewise.
19848         * lib/xgetcwd.c: Likewise.
19849         * lib/xgetcwd.h: Likewise.
19850         * lib/xgetdomainname.c: Likewise.
19851         * lib/xgetdomainname.h: Likewise.
19852         * lib/xgethostname.c: Likewise.
19853         * lib/xmalloc.c: Likewise.
19854         * lib/xmalloca.c: Likewise.
19855         * lib/xmalloca.h: Likewise.
19856         * lib/xmemcoll.c: Likewise.
19857         * lib/xnanosleep.c: Likewise.
19858         * lib/xreadlink.c: Likewise.
19859         * lib/xreadlink.h: Likewise.
19860         * lib/xsetenv.c: Likewise.
19861         * lib/xsetenv.h: Likewise.
19862         * lib/xstriconv.c: Likewise.
19863         * lib/xstriconv.h: Likewise.
19864         * lib/xstrndup.c: Likewise.
19865         * lib/xstrndup.h: Likewise.
19866         * lib/xstrtod.c: Likewise.
19867         * lib/xstrtod.h: Likewise.
19868         * lib/xstrtol-error.c: Likewise.
19869         * lib/xstrtol.c: Likewise.
19870         * lib/xstrtol.h: Likewise.
19871         * lib/xtime.h: Likewise.
19872         * lib/xvasprintf.c: Likewise.
19873         * lib/xvasprintf.h: Likewise.
19874         * lib/yesno.c: Likewise.
19875         * lib/yesno.h: Likewise.
19876         * posix-modules: Likewise.
19877         * tests/test-alloca-opt.c: Likewise.
19878         * tests/test-arcfour.c: Likewise.
19879         * tests/test-arctwo.c: Likewise.
19880         * tests/test-argmatch.c: Likewise.
19881         * tests/test-argp-2.sh: Likewise.
19882         * tests/test-argp.c: Likewise.
19883         * tests/test-arpa_inet.c: Likewise.
19884         * tests/test-array_list.c: Likewise.
19885         * tests/test-array_oset.c: Likewise.
19886         * tests/test-atexit.c: Likewise.
19887         * tests/test-avltree_list.c: Likewise.
19888         * tests/test-avltree_oset.c: Likewise.
19889         * tests/test-avltreehash_list.c: Likewise.
19890         * tests/test-base64.c: Likewise.
19891         * tests/test-binary-io.c: Likewise.
19892         * tests/test-byteswap.c: Likewise.
19893         * tests/test-c-ctype.c: Likewise.
19894         * tests/test-c-strcasecmp.c: Likewise.
19895         * tests/test-c-strcasestr.c: Likewise.
19896         * tests/test-c-strncasecmp.c: Likewise.
19897         * tests/test-c-strstr.c: Likewise.
19898         * tests/test-canonicalize-lgpl.c: Likewise.
19899         * tests/test-canonicalize.c: Likewise.
19900         * tests/test-carray_list.c: Likewise.
19901         * tests/test-ceilf.c: Likewise.
19902         * tests/test-ceill.c: Likewise.
19903         * tests/test-count-one-bits.c: Likewise.
19904         * tests/test-crc.c: Likewise.
19905         * tests/test-dirname.c: Likewise.
19906         * tests/test-fbufmode.c: Likewise.
19907         * tests/test-fcntl.c: Likewise.
19908         * tests/test-fflush.c: Likewise.
19909         * tests/test-floorf.c: Likewise.
19910         * tests/test-floorl.c: Likewise.
19911         * tests/test-fopen.c: Likewise.
19912         * tests/test-fprintf-posix.c: Likewise.
19913         * tests/test-fprintf-posix.h: Likewise.
19914         * tests/test-fpurge.c: Likewise.
19915         * tests/test-freadable.c: Likewise.
19916         * tests/test-freadahead.c: Likewise.
19917         * tests/test-freading.c: Likewise.
19918         * tests/test-freopen.c: Likewise.
19919         * tests/test-frexp.c: Likewise.
19920         * tests/test-frexpl.c: Likewise.
19921         * tests/test-fseek.c: Likewise.
19922         * tests/test-fseeko.c: Likewise.
19923         * tests/test-fseterr.c: Likewise.
19924         * tests/test-fstrcmp.c: Likewise.
19925         * tests/test-ftell.c: Likewise.
19926         * tests/test-ftello.c: Likewise.
19927         * tests/test-fwritable.c: Likewise.
19928         * tests/test-fwriting.c: Likewise.
19929         * tests/test-getaddrinfo.c: Likewise.
19930         * tests/test-getpass.c: Likewise.
19931         * tests/test-gettimeofday.c: Likewise.
19932         * tests/test-hmac-md5.c: Likewise.
19933         * tests/test-hmac-sha1.c: Likewise.
19934         * tests/test-iconv.c: Likewise.
19935         * tests/test-iconvme.c: Likewise.
19936         * tests/test-inttypes.c: Likewise.
19937         * tests/test-isnan.c: Likewise.
19938         * tests/test-isnanf.c: Likewise.
19939         * tests/test-isnanl-nolibm.c: Likewise.
19940         * tests/test-isnanl.c: Likewise.
19941         * tests/test-isnanl.h: Likewise.
19942         * tests/test-ldexpl.c: Likewise.
19943         * tests/test-linked_list.c: Likewise.
19944         * tests/test-linkedhash_list.c: Likewise.
19945         * tests/test-locale.c: Likewise.
19946         * tests/test-localename.c: Likewise.
19947         * tests/test-lock.c: Likewise.
19948         * tests/test-lseek.c: Likewise.
19949         * tests/test-malloca.c: Likewise.
19950         * tests/test-math.c: Likewise.
19951         * tests/test-mbscasecmp.c: Likewise.
19952         * tests/test-mbscasestr1.c: Likewise.
19953         * tests/test-mbscasestr2.c: Likewise.
19954         * tests/test-mbscasestr3.c: Likewise.
19955         * tests/test-mbscasestr4.c: Likewise.
19956         * tests/test-mbschr.c: Likewise.
19957         * tests/test-mbscspn.c: Likewise.
19958         * tests/test-mbsncasecmp.c: Likewise.
19959         * tests/test-mbspbrk.c: Likewise.
19960         * tests/test-mbspcasecmp.c: Likewise.
19961         * tests/test-mbsrchr.c: Likewise.
19962         * tests/test-mbsspn.c: Likewise.
19963         * tests/test-mbsstr1.c: Likewise.
19964         * tests/test-mbsstr2.c: Likewise.
19965         * tests/test-mbsstr3.c: Likewise.
19966         * tests/test-md5.c: Likewise.
19967         * tests/test-memmem.c: Likewise.
19968         * tests/test-netinet_in.c: Likewise.
19969         * tests/test-open.c: Likewise.
19970         * tests/test-printf-frexp.c: Likewise.
19971         * tests/test-printf-frexpl.c: Likewise.
19972         * tests/test-printf-posix.c: Likewise.
19973         * tests/test-printf-posix.h: Likewise.
19974         * tests/test-rbtree_list.c: Likewise.
19975         * tests/test-rbtree_oset.c: Likewise.
19976         * tests/test-rbtreehash_list.c: Likewise.
19977         * tests/test-read-file.c: Likewise.
19978         * tests/test-rijndael.c: Likewise.
19979         * tests/test-search.c: Likewise.
19980         * tests/test-signbit.c: Likewise.
19981         * tests/test-sleep.c: Likewise.
19982         * tests/test-snprintf-posix.c: Likewise.
19983         * tests/test-snprintf-posix.h: Likewise.
19984         * tests/test-snprintf.c: Likewise.
19985         * tests/test-sprintf-posix.c: Likewise.
19986         * tests/test-sprintf-posix.h: Likewise.
19987         * tests/test-stat-time.c: Likewise.
19988         * tests/test-stdbool.c: Likewise.
19989         * tests/test-stdint.c: Likewise.
19990         * tests/test-stdio.c: Likewise.
19991         * tests/test-stdlib.c: Likewise.
19992         * tests/test-stpncpy.c: Likewise.
19993         * tests/test-strcasestr.c: Likewise.
19994         * tests/test-striconv.c: Likewise.
19995         * tests/test-striconveh.c: Likewise.
19996         * tests/test-striconveha.c: Likewise.
19997         * tests/test-string.c: Likewise.
19998         * tests/test-sys_select.c: Likewise.
19999         * tests/test-sys_socket.c: Likewise.
20000         * tests/test-sys_stat.c: Likewise.
20001         * tests/test-sys_time.c: Likewise.
20002         * tests/test-sysexits.c: Likewise.
20003         * tests/test-time.c: Likewise.
20004         * tests/test-tls.c: Likewise.
20005         * tests/test-trunc.c: Likewise.
20006         * tests/test-truncf.c: Likewise.
20007         * tests/test-truncl.c: Likewise.
20008         * tests/test-unistd.c: Likewise.
20009         * tests/test-vasnprintf-posix.c: Likewise.
20010         * tests/test-vasnprintf-posix2.c: Likewise.
20011         * tests/test-vasnprintf.c: Likewise.
20012         * tests/test-vasprintf-posix.c: Likewise.
20013         * tests/test-vasprintf.c: Likewise.
20014         * tests/test-verify.c: Likewise.
20015         * tests/test-vfprintf-posix.c: Likewise.
20016         * tests/test-vprintf-posix.c: Likewise.
20017         * tests/test-vsnprintf-posix.c: Likewise.
20018         * tests/test-vsnprintf.c: Likewise.
20019         * tests/test-vsprintf-posix.c: Likewise.
20020         * tests/test-wchar.c: Likewise.
20021         * tests/test-wctype.c: Likewise.
20022         * tests/test-wcwidth.c: Likewise.
20023         * tests/test-xstrtol.c: Likewise.
20024         * tests/test-xvasprintf.c: Likewise.
20025         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
20026         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
20027         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
20028         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
20029         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
20030         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
20031         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
20032         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
20033         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
20034         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
20035         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
20036         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
20037         * tests/uniname/test-uninames.c: Likewise.
20038         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
20039         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
20040         * tests/unistdio/test-u16-printf1.h: Likewise.
20041         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
20042         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
20043         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
20044         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
20045         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
20046         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
20047         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
20048         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
20049         * tests/unistdio/test-u32-printf1.h: Likewise.
20050         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
20051         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
20052         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
20053         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
20054         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
20055         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
20056         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
20057         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
20058         * tests/unistdio/test-u8-printf1.h: Likewise.
20059         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
20060         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
20061         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
20062         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
20063         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
20064         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
20065         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
20066         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
20067         * tests/unistdio/test-ulc-printf1.h: Likewise.
20068         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
20069         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
20070         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
20071         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
20072         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
20073         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
20074         * tests/uniwidth/test-u16-strwidth.c: Likewise.
20075         * tests/uniwidth/test-u16-width.c: Likewise.
20076         * tests/uniwidth/test-u32-strwidth.c: Likewise.
20077         * tests/uniwidth/test-u32-width.c: Likewise.
20078         * tests/uniwidth/test-u8-strwidth.c: Likewise.
20079         * tests/uniwidth/test-u8-width.c: Likewise.
20080         * tests/uniwidth/test-uc_width.c: Likewise.
20081         * config/srclist-update: Likewise.
20082         (fixlicense): Update to GPLv3+.
20083
20084         Change copyright notice from LGPLv2.1+ to LGPLv3+.
20085         * tests/test-tsearch.c: Change copyright notice.
20086
20087         Change copyright notice from LGPLv2.0+ to LGPLv3+.
20088         * lib/c-strcaseeq.h: Change copyright notice.
20089         * lib/streq.h: Likewise.
20090         * lib/uniconv.h: Likewise.
20091         * lib/uniconv/u-conv-from-enc.h: Likewise.
20092         * lib/uniconv/u-conv-to-enc.h: Likewise.
20093         * lib/uniconv/u-strconv-from-enc.h: Likewise.
20094         * lib/uniconv/u-strconv-to-enc.h: Likewise.
20095         * lib/uniconv/u16-conv-from-enc.c: Likewise.
20096         * lib/uniconv/u16-conv-to-enc.c: Likewise.
20097         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
20098         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
20099         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
20100         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
20101         * lib/uniconv/u32-conv-from-enc.c: Likewise.
20102         * lib/uniconv/u32-conv-to-enc.c: Likewise.
20103         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
20104         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
20105         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
20106         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
20107         * lib/uniconv/u8-conv-from-enc.c: Likewise.
20108         * lib/uniconv/u8-conv-to-enc.c: Likewise.
20109         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
20110         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
20111         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
20112         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
20113         * lib/uniname.h: Likewise.
20114         * lib/uniname/uniname.c: Likewise.
20115         * lib/unistdio.h: Likewise.
20116         * lib/unistdio/u-asnprintf.h: Likewise.
20117         * lib/unistdio/u-asprintf.h: Likewise.
20118         * lib/unistdio/u-printf-args.c: Likewise.
20119         * lib/unistdio/u-printf-args.h: Likewise.
20120         * lib/unistdio/u-printf-parse.h: Likewise.
20121         * lib/unistdio/u-snprintf.h: Likewise.
20122         * lib/unistdio/u-sprintf.h: Likewise.
20123         * lib/unistdio/u-vasprintf.h: Likewise.
20124         * lib/unistdio/u-vsnprintf.h: Likewise.
20125         * lib/unistdio/u-vsprintf.h: Likewise.
20126         * lib/unistdio/u16-asnprintf.c: Likewise.
20127         * lib/unistdio/u16-asprintf.c: Likewise.
20128         * lib/unistdio/u16-printf-parse.c: Likewise.
20129         * lib/unistdio/u16-snprintf.c: Likewise.
20130         * lib/unistdio/u16-sprintf.c: Likewise.
20131         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
20132         * lib/unistdio/u16-u16-asprintf.c: Likewise.
20133         * lib/unistdio/u16-u16-snprintf.c: Likewise.
20134         * lib/unistdio/u16-u16-sprintf.c: Likewise.
20135         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
20136         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
20137         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
20138         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
20139         * lib/unistdio/u16-vasnprintf.c: Likewise.
20140         * lib/unistdio/u16-vasprintf.c: Likewise.
20141         * lib/unistdio/u16-vsnprintf.c: Likewise.
20142         * lib/unistdio/u16-vsprintf.c: Likewise.
20143         * lib/unistdio/u32-asnprintf.c: Likewise.
20144         * lib/unistdio/u32-asprintf.c: Likewise.
20145         * lib/unistdio/u32-printf-parse.c: Likewise.
20146         * lib/unistdio/u32-snprintf.c: Likewise.
20147         * lib/unistdio/u32-sprintf.c: Likewise.
20148         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
20149         * lib/unistdio/u32-u32-asprintf.c: Likewise.
20150         * lib/unistdio/u32-u32-snprintf.c: Likewise.
20151         * lib/unistdio/u32-u32-sprintf.c: Likewise.
20152         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
20153         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
20154         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
20155         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
20156         * lib/unistdio/u32-vasnprintf.c: Likewise.
20157         * lib/unistdio/u32-vasprintf.c: Likewise.
20158         * lib/unistdio/u32-vsnprintf.c: Likewise.
20159         * lib/unistdio/u32-vsprintf.c: Likewise.
20160         * lib/unistdio/u8-asnprintf.c: Likewise.
20161         * lib/unistdio/u8-asprintf.c: Likewise.
20162         * lib/unistdio/u8-printf-parse.c: Likewise.
20163         * lib/unistdio/u8-snprintf.c: Likewise.
20164         * lib/unistdio/u8-sprintf.c: Likewise.
20165         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
20166         * lib/unistdio/u8-u8-asprintf.c: Likewise.
20167         * lib/unistdio/u8-u8-snprintf.c: Likewise.
20168         * lib/unistdio/u8-u8-sprintf.c: Likewise.
20169         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
20170         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
20171         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
20172         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
20173         * lib/unistdio/u8-vasnprintf.c: Likewise.
20174         * lib/unistdio/u8-vasprintf.c: Likewise.
20175         * lib/unistdio/u8-vsnprintf.c: Likewise.
20176         * lib/unistdio/u8-vsprintf.c: Likewise.
20177         * lib/unistdio/ulc-asnprintf.c: Likewise.
20178         * lib/unistdio/ulc-asprintf.c: Likewise.
20179         * lib/unistdio/ulc-printf-parse.c: Likewise.
20180         * lib/unistdio/ulc-snprintf.c: Likewise.
20181         * lib/unistdio/ulc-sprintf.c: Likewise.
20182         * lib/unistdio/ulc-vasnprintf.c: Likewise.
20183         * lib/unistdio/ulc-vasprintf.c: Likewise.
20184         * lib/unistdio/ulc-vsnprintf.c: Likewise.
20185         * lib/unistdio/ulc-vsprintf.c: Likewise.
20186         * lib/unistr.h: Likewise.
20187         * lib/unistr/u-cpy-alloc.h: Likewise.
20188         * lib/unistr/u-cpy.h: Likewise.
20189         * lib/unistr/u-endswith.h: Likewise.
20190         * lib/unistr/u-move.h: Likewise.
20191         * lib/unistr/u-set.h: Likewise.
20192         * lib/unistr/u-startswith.h: Likewise.
20193         * lib/unistr/u-stpcpy.h: Likewise.
20194         * lib/unistr/u-stpncpy.h: Likewise.
20195         * lib/unistr/u-strcat.h: Likewise.
20196         * lib/unistr/u-strcpy.h: Likewise.
20197         * lib/unistr/u-strcspn.h: Likewise.
20198         * lib/unistr/u-strdup.h: Likewise.
20199         * lib/unistr/u-strlen.h: Likewise.
20200         * lib/unistr/u-strncat.h: Likewise.
20201         * lib/unistr/u-strncpy.h: Likewise.
20202         * lib/unistr/u-strnlen.h: Likewise.
20203         * lib/unistr/u-strpbrk.h: Likewise.
20204         * lib/unistr/u-strspn.h: Likewise.
20205         * lib/unistr/u-strstr.h: Likewise.
20206         * lib/unistr/u-strtok.h: Likewise.
20207         * lib/unistr/u16-check.c: Likewise.
20208         * lib/unistr/u16-chr.c: Likewise.
20209         * lib/unistr/u16-cmp.c: Likewise.
20210         * lib/unistr/u16-cpy-alloc.c: Likewise.
20211         * lib/unistr/u16-cpy.c: Likewise.
20212         * lib/unistr/u16-endswith.c: Likewise.
20213         * lib/unistr/u16-mblen.c: Likewise.
20214         * lib/unistr/u16-mbsnlen.c: Likewise.
20215         * lib/unistr/u16-mbtouc-aux.c: Likewise.
20216         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
20217         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
20218         * lib/unistr/u16-mbtouc.c: Likewise.
20219         * lib/unistr/u16-mbtoucr.c: Likewise.
20220         * lib/unistr/u16-move.c: Likewise.
20221         * lib/unistr/u16-next.c: Likewise.
20222         * lib/unistr/u16-prev.c: Likewise.
20223         * lib/unistr/u16-set.c: Likewise.
20224         * lib/unistr/u16-startswith.c: Likewise.
20225         * lib/unistr/u16-stpcpy.c: Likewise.
20226         * lib/unistr/u16-stpncpy.c: Likewise.
20227         * lib/unistr/u16-strcat.c: Likewise.
20228         * lib/unistr/u16-strchr.c: Likewise.
20229         * lib/unistr/u16-strcmp.c: Likewise.
20230         * lib/unistr/u16-strcpy.c: Likewise.
20231         * lib/unistr/u16-strcspn.c: Likewise.
20232         * lib/unistr/u16-strdup.c: Likewise.
20233         * lib/unistr/u16-strlen.c: Likewise.
20234         * lib/unistr/u16-strmblen.c: Likewise.
20235         * lib/unistr/u16-strmbtouc.c: Likewise.
20236         * lib/unistr/u16-strncat.c: Likewise.
20237         * lib/unistr/u16-strncmp.c: Likewise.
20238         * lib/unistr/u16-strncpy.c: Likewise.
20239         * lib/unistr/u16-strnlen.c: Likewise.
20240         * lib/unistr/u16-strpbrk.c: Likewise.
20241         * lib/unistr/u16-strrchr.c: Likewise.
20242         * lib/unistr/u16-strspn.c: Likewise.
20243         * lib/unistr/u16-strstr.c: Likewise.
20244         * lib/unistr/u16-strtok.c: Likewise.
20245         * lib/unistr/u16-to-u32.c: Likewise.
20246         * lib/unistr/u16-to-u8.c: Likewise.
20247         * lib/unistr/u16-uctomb-aux.c: Likewise.
20248         * lib/unistr/u16-uctomb.c: Likewise.
20249         * lib/unistr/u32-check.c: Likewise.
20250         * lib/unistr/u32-chr.c: Likewise.
20251         * lib/unistr/u32-cmp.c: Likewise.
20252         * lib/unistr/u32-cpy-alloc.c: Likewise.
20253         * lib/unistr/u32-cpy.c: Likewise.
20254         * lib/unistr/u32-endswith.c: Likewise.
20255         * lib/unistr/u32-mblen.c: Likewise.
20256         * lib/unistr/u32-mbsnlen.c: Likewise.
20257         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
20258         * lib/unistr/u32-mbtouc.c: Likewise.
20259         * lib/unistr/u32-mbtoucr.c: Likewise.
20260         * lib/unistr/u32-move.c: Likewise.
20261         * lib/unistr/u32-next.c: Likewise.
20262         * lib/unistr/u32-prev.c: Likewise.
20263         * lib/unistr/u32-set.c: Likewise.
20264         * lib/unistr/u32-startswith.c: Likewise.
20265         * lib/unistr/u32-stpcpy.c: Likewise.
20266         * lib/unistr/u32-stpncpy.c: Likewise.
20267         * lib/unistr/u32-strcat.c: Likewise.
20268         * lib/unistr/u32-strchr.c: Likewise.
20269         * lib/unistr/u32-strcmp.c: Likewise.
20270         * lib/unistr/u32-strcpy.c: Likewise.
20271         * lib/unistr/u32-strcspn.c: Likewise.
20272         * lib/unistr/u32-strdup.c: Likewise.
20273         * lib/unistr/u32-strlen.c: Likewise.
20274         * lib/unistr/u32-strmblen.c: Likewise.
20275         * lib/unistr/u32-strmbtouc.c: Likewise.
20276         * lib/unistr/u32-strncat.c: Likewise.
20277         * lib/unistr/u32-strncmp.c: Likewise.
20278         * lib/unistr/u32-strncpy.c: Likewise.
20279         * lib/unistr/u32-strnlen.c: Likewise.
20280         * lib/unistr/u32-strpbrk.c: Likewise.
20281         * lib/unistr/u32-strrchr.c: Likewise.
20282         * lib/unistr/u32-strspn.c: Likewise.
20283         * lib/unistr/u32-strstr.c: Likewise.
20284         * lib/unistr/u32-strtok.c: Likewise.
20285         * lib/unistr/u32-to-u16.c: Likewise.
20286         * lib/unistr/u32-to-u8.c: Likewise.
20287         * lib/unistr/u32-uctomb.c: Likewise.
20288         * lib/unistr/u8-check.c: Likewise.
20289         * lib/unistr/u8-chr.c: Likewise.
20290         * lib/unistr/u8-cmp.c: Likewise.
20291         * lib/unistr/u8-cpy-alloc.c: Likewise.
20292         * lib/unistr/u8-cpy.c: Likewise.
20293         * lib/unistr/u8-endswith.c: Likewise.
20294         * lib/unistr/u8-mblen.c: Likewise.
20295         * lib/unistr/u8-mbsnlen.c: Likewise.
20296         * lib/unistr/u8-mbtouc-aux.c: Likewise.
20297         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
20298         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
20299         * lib/unistr/u8-mbtouc.c: Likewise.
20300         * lib/unistr/u8-mbtoucr.c: Likewise.
20301         * lib/unistr/u8-move.c: Likewise.
20302         * lib/unistr/u8-next.c: Likewise.
20303         * lib/unistr/u8-prev.c: Likewise.
20304         * lib/unistr/u8-set.c: Likewise.
20305         * lib/unistr/u8-startswith.c: Likewise.
20306         * lib/unistr/u8-stpcpy.c: Likewise.
20307         * lib/unistr/u8-stpncpy.c: Likewise.
20308         * lib/unistr/u8-strcat.c: Likewise.
20309         * lib/unistr/u8-strchr.c: Likewise.
20310         * lib/unistr/u8-strcmp.c: Likewise.
20311         * lib/unistr/u8-strcpy.c: Likewise.
20312         * lib/unistr/u8-strcspn.c: Likewise.
20313         * lib/unistr/u8-strdup.c: Likewise.
20314         * lib/unistr/u8-strlen.c: Likewise.
20315         * lib/unistr/u8-strmblen.c: Likewise.
20316         * lib/unistr/u8-strmbtouc.c: Likewise.
20317         * lib/unistr/u8-strncat.c: Likewise.
20318         * lib/unistr/u8-strncmp.c: Likewise.
20319         * lib/unistr/u8-strncpy.c: Likewise.
20320         * lib/unistr/u8-strnlen.c: Likewise.
20321         * lib/unistr/u8-strpbrk.c: Likewise.
20322         * lib/unistr/u8-strrchr.c: Likewise.
20323         * lib/unistr/u8-strspn.c: Likewise.
20324         * lib/unistr/u8-strstr.c: Likewise.
20325         * lib/unistr/u8-strtok.c: Likewise.
20326         * lib/unistr/u8-to-u16.c: Likewise.
20327         * lib/unistr/u8-to-u32.c: Likewise.
20328         * lib/unistr/u8-uctomb-aux.c: Likewise.
20329         * lib/unistr/u8-uctomb.c: Likewise.
20330         * lib/unitypes.h: Likewise.
20331         * lib/uniwidth.h: Likewise.
20332         * lib/uniwidth/cjk.h: Likewise.
20333         * lib/uniwidth/u16-strwidth.c: Likewise.
20334         * lib/uniwidth/u16-width.c: Likewise.
20335         * lib/uniwidth/u32-strwidth.c: Likewise.
20336         * lib/uniwidth/u32-width.c: Likewise.
20337         * lib/uniwidth/u8-strwidth.c: Likewise.
20338         * lib/uniwidth/u8-width.c: Likewise.
20339         * lib/uniwidth/width.c: Likewise.
20340
20341 2007-10-07  Bruno Haible  <bruno@clisp.org>
20342
20343         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
20344         The file is still under LGPL (see modules/inttypes).
20345
20346 2007-10-06  Bruno Haible  <bruno@clisp.org>
20347
20348         * modules/trunc (Dependencies): Add 'extensions'.
20349         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
20350         Reported by Ben Pfaff <blp@gnu.org>.
20351
20352 2007-10-06  Bruno Haible  <bruno@clisp.org>
20353
20354         * modules/freopen-tests: New file.
20355         * tests/test-freopen.c: New file.
20356
20357         * modules/fopen-tests: New file.
20358         * tests/test-fopen.c: New file.
20359
20360         * modules/fopen: New file.
20361         * lib/fopen.c: New file.
20362         * m4/fopen.m4: New file.
20363         * modules/freopen: New file.
20364         * lib/freopen.c: New file.
20365         * m4/freopen.m4: New file.
20366         * lib/stdio.in.h (fopen, freopen): New declarations.
20367         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
20368         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
20369         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
20370         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
20371         * doc/functions/fopen.texi: Mention the 'fopen' module.
20372         * doc/functions/freopen.texi: Mention the 'freopen' module.
20373
20374 2007-10-06  Bruno Haible  <bruno@clisp.org>
20375
20376         * modules/open-tests: New file.
20377         * tests/test-open.c: New file.
20378
20379         * modules/open: New file.
20380         * lib/open.c: New file.
20381         * m4/open.m4: New file.
20382         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
20383         lib/open.c does.
20384         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
20385         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
20386         macros.
20387         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
20388         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
20389         REPLACE_OPEN.
20390         * doc/functions/open.texi: Mention the 'open' module.
20391
20392 2007-10-04  Bruno Haible  <bruno@clisp.org>
20393
20394         * modules/ceill-tests: New file.
20395         * tests/test-ceill.c: New file.
20396
20397         * modules/ceill: New file.
20398         * lib/ceill.c: Replace entire file.
20399         * m4/ceill.m4: New file.
20400         * lib/math.in.h (ceill): Replace declaration.
20401         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
20402         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
20403         * doc/functions/ceill.texi: Mention the 'ceill' module.
20404         * modules/mathl (Files): Remove lib/ceill.c.
20405         (Depends-on): Add ceill.
20406
20407 2007-10-04  Bruno Haible  <bruno@clisp.org>
20408
20409         * modules/ceilf-tests: New file.
20410         * tests/test-ceilf.c: New file.
20411
20412         * modules/ceilf: New file.
20413         * lib/ceil.c: New file.
20414         * lib/ceilf.c: New file.
20415         * m4/ceilf.m4: New file.
20416         * lib/math.in.h (ceilf): New declaration.
20417         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
20418         HAVE_DECL_CEILF.
20419         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
20420         HAVE_DECL_CEILF.
20421         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
20422
20423 2007-10-04  Bruno Haible  <bruno@clisp.org>
20424
20425         * modules/floorl-tests: New file.
20426         * tests/test-floorl.c: New file.
20427
20428         * modules/floorl: New file.
20429         * lib/floorl.c: Replace entire file.
20430         * m4/floorl.m4: New file.
20431         * lib/math.in.h (floorl): Replace declaration.
20432         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
20433         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
20434         * doc/functions/floorl.texi: Mention the 'floorl' module.
20435         * modules/mathl (Files): Remove lib/floorl.c.
20436         (Depends-on): Add floorl.
20437
20438 2007-10-04  Bruno Haible  <bruno@clisp.org>
20439
20440         * modules/floorf-tests: New file.
20441         * tests/test-floorf.c: New file.
20442
20443         * modules/floorf: New file.
20444         * lib/floor.c: New file.
20445         * lib/floorf.c: New file.
20446         * m4/floorf.m4: New file.
20447         * lib/math.in.h (floorf): New declaration.
20448         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
20449         HAVE_DECL_FLOORF.
20450         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
20451         HAVE_DECL_FLOORF.
20452         * doc/functions/floorf.texi: Mention the 'floorf' module.
20453
20454 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
20455             Bruno Haible  <bruno@clisp.org>
20456
20457         Advertise for the Git server instead of the CVS server.
20458         * doc/gnulib-intro.texi (Steady Development): Mention the Git
20459         repository instead of the CVS one.
20460         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
20461         about all VCS systems generically.
20462         * doc/gnulib.texi (Introduction): Capitalize `Git'.
20463
20464 2007-10-04  Bruno Haible  <bruno@clisp.org>
20465
20466         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
20467         means.
20468         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
20469
20470 2007-10-04  Bruno Haible  <bruno@clisp.org>
20471
20472         * modules/truncl-tests: New file.
20473         * tests/test-truncl.c: New file.
20474
20475         * modules/truncl: New file.
20476         * lib/truncl.c: New file.
20477         * m4/truncl.m4: New file.
20478         * lib/math.in.h (truncl): New declaration.
20479         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
20480         HAVE_DECL_TRUNCL.
20481         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
20482         HAVE_DECL_TRUNCL.
20483         * doc/functions/truncl.texi: Mention the 'truncl' module.
20484
20485 2007-10-04  Bruno Haible  <bruno@clisp.org>
20486
20487         * modules/truncf-tests: New file.
20488         * tests/test-truncf.c: New file.
20489
20490         * modules/truncf: New file.
20491         * lib/trunc.c: Make paramerizable through USE_* macros.
20492         * lib/truncf.c: New file.
20493         * m4/truncf.m4: New file.
20494         * lib/math.in.h (truncf): New declaration.
20495         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
20496         HAVE_DECL_TRUNCF.
20497         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
20498         HAVE_DECL_TRUNCF.
20499         * doc/functions/truncf.texi: Mention the 'truncf' module.
20500
20501 2007-10-03  Bruno Haible  <bruno@clisp.org>
20502
20503         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
20504         augmentation also for tests modules.
20505         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
20506         * modules/atexit-tests (Makefile.am): Likewise.
20507         * modules/binary-io-tests (Makefile.am): Likewise.
20508         * modules/c-strcase-tests (Makefile.am): Likewise.
20509         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
20510         * modules/canonicalize-tests (Makefile.am): Likewise.
20511         * modules/closein-tests (Makefile.am): Likewise.
20512         * modules/fprintf-posix-tests (Makefile.am): Likewise.
20513         * modules/freadahead-tests (Makefile.am): Likewise.
20514         * modules/fseek-tests (Makefile.am): Likewise.
20515         * modules/fseeko-tests (Makefile.am): Likewise.
20516         * modules/ftell-tests (Makefile.am): Likewise.
20517         * modules/ftello-tests (Makefile.am): Likewise.
20518         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
20519         * modules/isnanl-tests (Makefile.am): Likewise.
20520         * modules/lseek-tests (Makefile.am): Likewise.
20521         * modules/mbscasecmp-tests (Makefile.am): Likewise.
20522         * modules/mbscasestr-tests (Makefile.am): Likewise.
20523         * modules/mbschr-tests (Makefile.am): Likewise.
20524         * modules/mbscspn-tests (Makefile.am): Likewise.
20525         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
20526         * modules/mbspbrk-tests (Makefile.am): Likewise.
20527         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
20528         * modules/mbsrchr-tests (Makefile.am): Likewise.
20529         * modules/mbsspn-tests (Makefile.am): Likewise.
20530         * modules/mbsstr-tests (Makefile.am): Likewise.
20531         * modules/printf-posix-tests (Makefile.am): Likewise.
20532         * modules/snprintf-posix-tests (Makefile.am): Likewise.
20533         * modules/sprintf-posix-tests (Makefile.am): Likewise.
20534         * modules/tsearch-tests (Makefile.am): Likewise.
20535         * modules/uniname/uniname-tests (Makefile.am): Likewise.
20536         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
20537         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
20538         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
20539         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
20540         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
20541         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
20542         * modules/vprintf-posix-tests (Makefile.am): Likewise.
20543         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
20544         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
20545         * modules/xstrtoimax-tests (Makefile.am): Likewise.
20546         * modules/xstrtol-tests (Makefile.am): Likewise.
20547         * modules/xstrtoumax-tests (Makefile.am): Likewise.
20548         * modules/yesno-tests (Makefile.am): Likewise.
20549
20550 2007-10-03  Bruno Haible  <bruno@clisp.org>
20551
20552         * modules/trunc-tests: New file.
20553         * tests/test-trunc.c: New file.
20554
20555         * modules/trunc: New file.
20556         * lib/trunc.c: New file.
20557         * m4/trunc.m4: New file.
20558         * lib/math.in.h (trunc): New declaration.
20559         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
20560         HAVE_DECL_TRUNC.
20561         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
20562         HAVE_DECL_TRUNC.
20563         * doc/functions/trunc.texi: Mention the 'trunc' module.
20564
20565 2007-10-03  Bruno Haible  <bruno@clisp.org>
20566
20567         * tests/test-fpending.c: New file, mostly copied
20568         from coreutils/lib/t-fpending.c.
20569         * modules/fpending-tests: New file.
20570
20571 2007-10-03  Bruno Haible  <bruno@clisp.org>
20572
20573         Port the stdio extensions to QNX (untested).
20574         * lib/fseterr.c (fseterr): Add support for QNX.
20575         * lib/fbufmode.c (fbufmode): Likewise.
20576         * lib/freadable.c (freadable): Likewise.
20577         * lib/fwritable.c (fwritable): Likewise.
20578         * lib/freading.c (freading): Likewise.
20579         * lib/fwriting.c (fwriting): Likewise.
20580         * lib/freadahead.c (freadahed): Likewise.
20581         * lib/fpurge.c (fpurge): Likewise.
20582         * lib/fseeko.c (rpl_fseeko): Likewise.
20583
20584 2007-10-03  Bruno Haible  <bruno@clisp.org>
20585             Jim Meyering  <jim@meyering.net>
20586             Eric Blake  <ebb9@byu.net>
20587
20588         * doc/relocatable.texi: Use @command instead of @program.
20589
20590 2007-10-02  Jim Meyering  <jim@meyering.net>
20591
20592         Perform one more "_.h" -> ".in.h" substitution.
20593         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
20594         instead of unistd_.h here, too.
20595
20596 2007-10-01  Bruno Haible  <bruno@clisp.org>
20597
20598         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
20599         Needed for the alloca-opt module.
20600
20601 2007-09-30  Bruno Haible  <bruno@clisp.org>
20602
20603         * lib/alloca.in.h: Renamed from lib/alloca_.h.
20604         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
20605         alloca_.h.
20606         * lib/argz.in.h: Renamed from lib/argz_.h.
20607         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
20608         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
20609         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
20610         byteswap_.h.
20611         * lib/dirent.in.h: Renamed from lib/dirent_.h.
20612         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
20613         dirent_.h.
20614         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
20615         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
20616         fcntl_.h.
20617         * lib/float.in.h: Renamed from lib/float_.h.
20618         * modules/float (Files, Makefile.am): Use float.in.h instead of
20619         float_.h.
20620         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
20621         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
20622         fnmatch_.h.
20623         * lib/getopt.in.h: Renamed from lib/getopt_.h.
20624         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
20625         getopt_.h.
20626         * lib/glob.in.h: Renamed from lib/glob_.h.
20627         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
20628         * lib/iconv.in.h: Renamed from lib/iconv_.h.
20629         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
20630         iconv_.h.
20631         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
20632         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
20633         inttypes_.h.
20634         * lib/locale.in.h: Renamed from lib/locale_.h.
20635         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
20636         locale_.h.
20637         * lib/math.in.h: Renamed from lib/math_.h.
20638         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
20639         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
20640         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
20641         of netinet_in_.h. Add dependency.
20642         * lib/poll.in.h: Renamed from lib/poll_.h.
20643         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
20644         * lib/search.in.h: Renamed from lib/search_.h.
20645         * modules/search (Files, Makefile.am): Use search.in.h instead of
20646         search_.h.
20647         * lib/signal.in.h: Renamed from lib/signal_.h.
20648         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
20649         _signal.h.
20650         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
20651         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
20652         stdbool_.h.
20653         * lib/stdint.in.h: Renamed from lib/stdint_.h.
20654         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
20655         stdint_.h.
20656         * lib/stdio.in.h: Renamed from lib/stdio_.h.
20657         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
20658         stdio_.h.
20659         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
20660         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
20661         stdlib_.h.
20662         * lib/string.in.h: Renamed from lib/string_.h.
20663         * modules/string (Files, Makefile.am): Use string.in.h instead of
20664         string_.h.
20665         * doc/gnulib-tool.texi (Initial import): Update.
20666         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
20667         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
20668         of sys_select_.h. Add dependency.
20669         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
20670         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
20671         of sys_socket_.h.
20672         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
20673         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
20674         sys_stat_.h.
20675         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
20676         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
20677         sys_time_.h.
20678         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
20679         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
20680         sysexits_.h.
20681         * lib/time.in.h: Renamed from lib/time_.h.
20682         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
20683         * lib/unistd.in.h: Renamed from lib/unistd_.h.
20684         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
20685         unistd_.h.
20686         * lib/wchar.in.h: Renamed from lib/wchar_.h.
20687         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
20688         wchar_.h.
20689         * lib/wctype.in.h: Renamed from lib/wctype_.h.
20690         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
20691         wctype_.h.
20692         * build-aux/bootstrap (slurp): Update.
20693         * lib/.cppi-disable: Update.
20694
20695 2007-09-30  Bruno Haible  <bruno@clisp.org>
20696
20697         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
20698         Needed on BeOS.
20699
20700 2007-09-30  Bruno Haible  <bruno@clisp.org>
20701
20702         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
20703
20704 2007-09-29  Bruno Haible  <bruno@clisp.org>
20705
20706         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
20707
20708 2007-09-29  Bruno Haible  <bruno@clisp.org>
20709
20710         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
20711         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
20712         * build-aux/install-reloc: Compile also areadlink.c.
20713         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
20714
20715 2007-09-29  Bruno Haible  <bruno@clisp.org>
20716
20717         * gnulib-tool (func_emit_initmacro_done): Indentation.
20718
20719 2007-09-29  Bruno Haible  <bruno@clisp.org>
20720
20721         * README: Add CVS checkout update instructions.
20722         Info from Bob Proulx <bob@proulx.com>.
20723
20724 2007-09-28  Eric Blake  <ebb9@byu.net>
20725
20726         Provide move-if-change.
20727         * build-aux/move-if-change: New file, based on best practice
20728         rather than any canonical upstream location.
20729
20730 2007-09-28  Jim Meyering  <jim@meyering.net>
20731
20732         Fix canonicalize loop-detection corner case.
20733         Do not attempt to stat the symlink values stored via seen_triple.
20734         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
20735         on linux-2.6.18, (but not 2.6.22).
20736         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
20737         triple_compare.  The former compares dev,ino,filename, while the latter
20738         would actually stat dirname(filename) when dev and ino were equal.
20739         * lib/hash-triple.c: Install <string.h>.
20740         (STREQ): Define.
20741         (triple_compare_ino_str): New function.
20742         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
20743
20744 2007-09-28  Eric Blake  <ebb9@byu.net>
20745
20746         Enforce that AC_REPLACE_FUNCS files exist.
20747         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
20748         override check for typos.
20749
20750         Fix test-closein on Solaris 10.
20751         * tests/test-closein.c (main): Don't assume stdin can be inherited
20752         closed on all systems.
20753         * tests/test-closein.sh: Likewise.
20754         Reported by Piotr Tarnowski.
20755
20756 2007-09-28  Jim Meyering  <jim@meyering.net>
20757
20758         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
20759
20760 2007-09-27  Jim Meyering  <jim@meyering.net>
20761
20762         canonicalize: Avoid a false-positive cycle failure.
20763         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
20764         Sort.  Remove cycle-check.
20765         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
20766         not cycle-check.h.
20767         (seen_triple): New function.
20768         (canonicalize_filename_mode): Use it instead of cycle-check.
20769         * tests/test-canonicalize.c: Add a test for this bug.
20770         * tests/test-canonicalize.sh: Set up and run the test.
20771
20772         New module, file-set, from coreutils.
20773         * modules/file-set: Define it.
20774         * lib/file-set.c, lib/file-set.h: Implement.
20775
20776         New module, hash-triple, from coreutils.
20777         * modules/hash-triple: Define it.
20778         * lib/hash-triple.c, lib/hash-triple.h: Implement.
20779
20780 2007-09-25  Eric Blake  <ebb9@byu.net>
20781
20782         Fix strerror on Interix.
20783         * lib/string_.h (strerror): Declare replacement.
20784         * doc/functions/strerror.texi (strerror): Document the Interix
20785         shortcoming.
20786         * modules/string (Makefile.am): Support new hooks.
20787         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
20788         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
20789         gl_FUNC_STRERROR_SEPARATE.
20790         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
20791         * lib/strerror.c (rpl_strerror): Provide replacement.
20792         * modules/strerror (Depends-on): Add string.
20793         (configure.ac): Detect use of module.
20794         * tests/test-strerror.c: New file.
20795         * modules/strerror-tests: New test module.
20796         * modules/argp (Depends-on): Add strerror.
20797         * modules/error (Depends-on): Likewise.
20798         Reported by Martin Koeppe.
20799
20800 2007-09-24  Bruno Haible  <bruno@clisp.org>
20801
20802         * README: Update git instructions.
20803
20804 2007-09-24  Eric Blake  <ebb9@byu.net>
20805
20806         Revert fpending breakage from 2007-09-08.
20807         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
20808         __fpending.c.
20809
20810 2007-09-24  Jim Meyering  <jim@meyering.net>
20811
20812         filenamecat.c: Add a test.
20813         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
20814         showing how the function works when DIR is the empty string.
20815
20816 2007-09-21  Simon Josefsson  <simon@josefsson.org>
20817
20818         * tests/test-canonicalize.sh: Turn on executable bit.
20819
20820 2007-09-19  Eric Blake  <ebb9@byu.net>
20821
20822         * README: Update CVS instructions.
20823
20824 2007-09-18  Bruno Haible  <bruno@clisp.org>
20825
20826         * modules/areadlink: New file.
20827         * lib/areadlink.h (areadlink): New declaration.
20828         * lib/areadlink.c: New file, based on lib/xreadlink.c.
20829
20830 2007-09-17  Jim Meyering  <jim@meyering.net>
20831
20832         * lib/savewd.c (ESTALE) [!defined]: Define.
20833         Reported to be required on Interix by Martin Koeppe.
20834
20835 2007-09-17  Bruno Haible  <bruno@clisp.org>
20836
20837         * gnulib-tool (func_version): Use $version.
20838
20839 2007-09-16  Bruno Haible  <bruno@clisp.org>
20840
20841         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
20842         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
20843         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
20844         Reported by Greg Schafer <gschafer@zip.com.au>.
20845
20846 2007-09-15  Bruno Haible  <bruno@clisp.org>
20847
20848         * gnulib-tool (sed): Try a little harder to make bash understand the
20849         alias.
20850         Reported by Bruce Korb <bruce.korb@gmail.com>.
20851
20852 2007-09-13  Eric Blake  <ebb9@byu.net>
20853
20854         * ChangeLog: Remove conflict markers.
20855
20856 2007-09-13  Simon Josefsson  <simon@josefsson.org>
20857
20858         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
20859         Reported by Bruno Haible <bruno@clisp.org>.
20860
20861 2007-09-12  Bruno Haible  <bruno@clisp.org>
20862
20863         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
20864         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
20865         is not defined.
20866
20867 2007-09-12  Eric Blake  <ebb9@byu.net>
20868
20869         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
20870         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
20871         Autoconf definition.
20872         * modules/euidaccess (Depends-on): Add extensions, for
20873         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
20874         * modules/fnmatch (Depends-on): Likewise.
20875         * modules/getaddrinfo (Depends-on): Likewise.
20876         * modules/getdelim (Depends-on): Likewise.
20877         * modules/getline (Depends-on): Likewise.
20878         * modules/getsubopt (Depends-on): Likewise.
20879         * modules/gettext (Depends-on): Likewise.
20880         * modules/group-member (Depends-on): Likewise.
20881         * modules/mbchar (Depends-on): Likewise.
20882         * modules/memmem (Depends-on): Likewise.
20883         * modules/mempcpy (Depends-on): Likewise.
20884         * modules/memrchr (Depends-on): Likewise.
20885         * modules/pagealign_alloc (Depends-on): Likewise.
20886         * modules/readutmp (Depends-on): Likewise.
20887         * modules/stpcpy (Depends-on): Likewise.
20888         * modules/stpncpy (Depends-on): Likewise.
20889         * modules/strchrnul (Depends-on): Likewise.
20890         * modules/strndup (Depends-on): Likewise.
20891         * modules/strsep (Depends-on): Likewise.
20892         * modules/strverscmp (Depends-on): Likewise.
20893         * modules/vasprintf (Depends-on): Likewise.
20894         * modules/wcwidth (Depends-on): Likewise.
20895         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
20896         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
20897         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
20898         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
20899         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
20900         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
20901         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
20902         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
20903         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
20904         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
20905         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
20906         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
20907         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
20908         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
20909         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
20910         * m4/readutmp.m4 (gl_READUTMP): Likewise.
20911         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
20912         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
20913         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
20914         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
20915         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
20916         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
20917         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
20918         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
20919         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
20920         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
20921         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
20922         so that lock.m4 can be used in gettext without extensions module.
20923
20924 2007-09-11  Bruno Haible  <bruno@clisp.org>
20925
20926         * m4/isc-posix.m4: Remove file.
20927         Suggested by Eric Blake.
20928
20929 2007-09-11  Eric Blake  <ebb9@byu.net>
20930
20931         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
20932
20933 2007-09-10  Bruno Haible  <bruno@clisp.org>
20934
20935         * posix-modules: Fix typo in error message.
20936         Reported by Matt <mkraai@beckman.com>.
20937
20938 2007-09-09  Bruno Haible  <bruno@clisp.org>
20939
20940         * doc/functions/getdelim.texi: Update list of platforms lacking the
20941         function.
20942         * doc/functions/getline.texi: Likewise.
20943
20944 2007-09-09  Jim Meyering  <jim@meyering.net>
20945
20946         * lib/hash.c (hash_initialize): Detect calloc failure.
20947         Reported by Bruno Haible.
20948
20949 2007-09-09  Bruno Haible  <bruno@clisp.org>
20950
20951         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
20952         malloc or realloc fails.
20953
20954 2007-09-09  Bruno Haible  <bruno@clisp.org>
20955
20956         * modules/getcwd (Depends-on): Add malloc-posix.
20957         * modules/glob (Depends-on): Likewise.
20958         * modules/putenv (Depends-on): Likewise.
20959         * modules/strdup (Depends-on): Likewise.
20960         * modules/getdelim (Depends-on): Add realloc-posix.
20961         * modules/read-file (Depends-on): Likewise.
20962
20963 2007-09-09  Bruno Haible  <bruno@clisp.org>
20964
20965         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
20966         (gl_FUNC_MALLOC_POSIX): Require it.
20967         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
20968         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
20969         * modules/realloc (Files): Add m4/malloc.m4.
20970         * modules/calloc (Files): Likewise.
20971
20972 2007-09-09  Bruno Haible  <bruno@clisp.org>
20973
20974         * modules/malloc-posix: New file.
20975         * modules/malloc (Depends-on): Add malloc-posix.
20976         * lib/malloc.c: Include errno.h.
20977         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
20978         and a POSIX-compatible malloc into a single function. Set ENOMEM
20979         when returning NULL.
20980         * m4/malloc.m4: New file.
20981         * doc/functions/malloc.texi: Mention the malloc-posix module.
20982         * lib/stdlib_.h (malloc): New declaration.
20983         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
20984         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
20985         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
20986         and HAVE_MALLOC_POSIX.
20987
20988 2007-09-09  Bruno Haible  <bruno@clisp.org>
20989
20990         * modules/realloc-posix: New file.
20991         * modules/realloc (Depends-on): Add realloc-posix.
20992         * lib/realloc.c: Include errno.h.
20993         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
20994         and a POSIX-compatible realloc into a single function. Set ENOMEM
20995         when returning NULL.
20996         * m4/realloc.m4: New file.
20997         * doc/functions/realloc.texi: Mention the realloc-posix module.
20998         * lib/stdlib_.h (realloc): New declaration.
20999         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
21000         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
21001         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
21002         and HAVE_REALLOC_POSIX.
21003
21004 2007-09-09  Bruno Haible  <bruno@clisp.org>
21005
21006         * modules/calloc-posix: New file.
21007         * modules/calloc (Depends-on): Add calloc-posix.
21008         * lib/calloc.c: Include errno.h.
21009         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
21010         and a POSIX-compatible calloc into a single function. Set ENOMEM
21011         when returning NULL.
21012         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
21013         * doc/functions/calloc.texi: Mention the calloc-posix module.
21014         * lib/stdlib_.h (calloc): New declaration.
21015         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
21016         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
21017         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
21018         and HAVE_CALLOC_POSIX.
21019
21020 2007-09-09  Bruno Haible  <bruno@clisp.org>
21021
21022         Allow for modules to show an arbitrary notice.
21023         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
21024         * gnulib-tool: New option --extract-notice.
21025         (func_usage): Document it.
21026         (sed_extract_prog): Update.
21027         (func_get_notice): New function.
21028         (func_modules_notice): New function.
21029         (func_import, func_create_testdir): Invoke it.
21030         Suggested by Jim Meyering.
21031
21032 2007-09-09  Bruno Haible  <bruno@clisp.org>
21033
21034         * gnulib-tool: New options --verbose, --quiet.
21035         (func_usage): Document them.
21036         (verbose): New variable.
21037         (func_execute_command): New function.
21038         (func_import): Don't show the module list and the file list if
21039         $verbose < 0.
21040         (func_create_testdir): Likewise. Use func_execute_command.
21041         (func_create_megatestdir): Use func_execute_command.
21042
21043 2007-09-08  Bruno Haible  <bruno@clisp.org>
21044
21045         * gnulib-tool (func_import): Prefer rsync over wget when available,
21046         for fetching the PO files.
21047
21048 2007-09-08  Bruno Haible  <bruno@clisp.org>
21049
21050         * posix-modules: New file. Portions copied from gnulib-tool.
21051         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
21052
21053 2007-09-08  Jim Meyering  <jim@meyering.net>
21054
21055         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
21056         * lib/fpending.h: Rename from __fpending.h.
21057         * lib/fpending.c: Rename from __fpending.c.
21058         Include "fpending.h", not "__fpending.h".
21059         * lib/__fpending.h, lib/__fpending.c: Remove files.
21060         * modules/fpending (Files): Reflect new file names.
21061         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
21062
21063 2007-09-08  Bruno Haible  <bruno@clisp.org>
21064
21065         * m4/inttypes-h.m4: Remove stub file.
21066
21067 2007-09-07  Simon Josefsson  <simon@josefsson.org>
21068
21069         * doc/headers/stdint.texi: Discuss #include_next issue.
21070
21071 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
21072
21073         * build-aux/bootstrap: Remove obsolete comment about wget --help.
21074
21075 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21076
21077         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
21078         in variable name.
21079
21080 2007-09-03  Jim Meyering  <jim@meyering.net>
21081
21082         New module: git-version-gen.
21083         * modules/git-version-gen: New file.
21084
21085         Import changes from coreutils for bootstrap script.
21086
21087         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
21088
21089         bootstrap: uses rsync to download the .po files
21090         * build-aux/bootstrap (po_download_command_format): New global.
21091         (download_po_files): Use rsync.
21092         (update_po_files): Don't remove .po files after download,
21093         so future rsync runs can take advantage of the copies.
21094
21095         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
21096
21097         Solve the unnecessary-.po-file-regeneration problem once and for all.
21098         * build-aux/bootstrap (download_po_files): New function, renamed from
21099         get_translations.  Now, downloads, but doesn't update LINGUAS.
21100         (update_po_files): New function.
21101
21102         bootstrap: Ignore more.
21103         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
21104         uniwidth to e.g., lib/.gitignore.
21105         (slurp): Handle the sys_stat_.h -> sys mapping, too.
21106
21107         * build-aux/bootstrap: New setting: vc_ignore.
21108         (insert_sorted_if_absent): Create $file if absent.
21109         Adapt to new, possibly empty, list: $vc_ignore.
21110
21111         bootstrap: generate more ignorable names
21112         * build-aux/bootstrap (slurp): When generating ignorable names,
21113         also map .sin to .sed, .gperf to .c, and .y to .c.
21114
21115 2007-09-03  Jim Meyering  <jim@meyering.net>
21116
21117         * build-aux/git-version-gen: New file, from coreutils.  For details, see
21118         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
21119
21120 2007-09-02  Bruno Haible  <bruno@clisp.org>
21121
21122         Fix mis-recognition of 'mcs' on QNX 6.
21123         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
21124         output contains the string "Mono".
21125         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
21126         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
21127
21128 2007-09-01  Bruno Haible  <bruno@clisp.org>
21129
21130         Fix collision between uniwidth/* and linebreak modules.
21131         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
21132         u32_width): Remove declarations.
21133         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
21134         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
21135         streq3, streq2, streq1, streq0): Remove functions.
21136         (STREQ): Remove macro.
21137         (is_cjk_encoding): Remove function.
21138         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
21139         (uc_width, u8_width, u16_width, u32_width): Remove functions.
21140         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
21141         * NEWS: Document the change.
21142
21143 2007-09-01  Bruno Haible  <bruno@clisp.org>
21144
21145         * lib/streq.h: Add double-inclusion guard.
21146
21147 2007-09-01  Karl Berry  <karl@gnu.org>
21148
21149         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
21150
21151 2007-08-28  Jim Meyering  <jim@meyering.net>
21152
21153         Rename mreadlink_with_size to areadlink_with_size.
21154         * NEWS: Document the change.
21155         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
21156         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
21157         * lib/mreadlink.h: Rename this to...
21158         * lib/areadlink.h: ...this.
21159         * modules/mreadlink-with-size: Rename this to...
21160         * modules/areadlink-with-size: ...this.
21161         * lib/canonicalize.c: Reflect the renaming.
21162         * modules/canonicalize: Likewise.
21163
21164 2007-08-26  Bruno Haible  <bruno@clisp.org>
21165
21166         * gnulib-tool (func_import): When deciding which files to remove,
21167         consider also dangling symbolic links.
21168         Reported by Eric Blake.
21169
21170 2007-08-26  Bruno Haible  <bruno@clisp.org>
21171
21172         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
21173
21174 2007-08-23  Simon Josefsson  <simon@josefsson.org>
21175
21176         * lib/readline.c: Don't include getline.h, the prototype is now
21177         found in stdio.h.
21178
21179 2007-08-23  Jim Meyering  <jim@meyering.net>
21180
21181         Getdelim touchup.
21182         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
21183         around the funlockfile call, since funlockfile never sets errno.
21184         Don't set errno upon failed realloc.
21185
21186 2007-08-22  Eric Blake  <ebb9@byu.net>
21187
21188         Getline touchups.
21189         * lib/getdelim.c (getdelim): Revert regression that required *n to
21190         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
21191         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
21192         getdelim, rather than whether implementation is missing.
21193         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
21194         * lib/stdio_.h (getline): Also declare if replacement is
21195         required.
21196         * doc/functions/getdelim.texi: New file.
21197         * doc/functions/getline.texi: Likewise.
21198         * doc/gnulib.texi (Function Substitutes): Add new files.
21199         Reported by Bruno Haible.
21200
21201 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
21202
21203         * users.txt: Add Guile.
21204
21205 2007-08-22  Eric Blake  <ebb9@byu.net>
21206
21207         * tests/test-getdelim.c (main): Use remove, not unlink.
21208         * tests/test-getline.c (main): Likewise.
21209
21210         Move getline and getdelim into stdio.h, per POSIX 200x.
21211         * modules/getline (Files): Remove getline.h.
21212         (Depends-on): Add stdio.
21213         (configure.ac): Add module indicator.
21214         * modules/getdelim (Files): Remove getdelim.h.
21215         (Depends-on): Add stdio.
21216         (configure.ac): Add module indicator.
21217         * modules/stdio (Makefile.am): Work with new indicators.
21218         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
21219         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
21220         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
21221         * lib/getdelim.h: Delete.
21222         * lib/getline.h: Delete.
21223         * lib/stdio_.h (getdelim, getline): Declare.
21224         * modules/getdelim-tests: New module.
21225         * modules/getline-tests: Likewise.
21226         * tests/test-getdelim.c: New file.
21227         * tests/test-getline.c: Likewise.
21228         * NEWS: Document the change.
21229         * lib/getline.c: Update choice of header.
21230         * lib/csharpcomp.c: Likewise.
21231         * lib/getpass.c: Likewise.
21232         * lib/javacomp.c: Likewise.
21233         * lib/javaversion.c: Likewise.
21234         * lib/yesno.c: Likewise.
21235         * lib/getdelim.c: Likewise.
21236         (getdelim): Set errno on failure, and avoid memory leak.
21237
21238 2007-08-19  Bruno Haible  <bruno@clisp.org>
21239
21240         * modules/closein (Depends-on): Add freadahead.
21241         * lib/closein.c: Include freadahead.h.
21242         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
21243         is zero.
21244
21245 2007-08-19  Bruno Haible  <bruno@clisp.org>
21246
21247         * modules/freadahead-tests: New file.
21248         * tests/test-freadahead.sh: New file.
21249         * tests/test-freadahead.c: New file.
21250
21251         * modules/freadahead: New file.
21252         * lib/freadahead.h: New file.
21253         * lib/freadahead.c: New file.
21254         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
21255         fbufmode, fpurge, freadable, fwritable.
21256
21257 2007-08-19  Eric Blake  <ebb9@byu.net>
21258
21259         Test yesno in combination with closein.
21260         * lib/yesno.c (yesno): Document use of stdin.
21261         * modules/yesno-tests (Files): New module.
21262         * tests/test-yesno.c (main): New file.
21263         * tests/test-yesno.sh: Likewise.
21264
21265 2007-08-19  Bruno Haible  <bruno@clisp.org>
21266
21267         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
21268         * lib/fseeko.c (rpl_fseeko): Likewise.
21269         * lib/fseterr.c (fseterr): Likewise.
21270
21271 2007-08-19  Bruno Haible  <bruno@clisp.org>
21272
21273         * tests/test-lseek.c (main): Disable a test for BeOS.
21274         * doc/functions/lseek.texi: Document the BeOS bug.
21275
21276 2007-08-19  Bruno Haible  <bruno@clisp.org>
21277             Eric Blake  <ebb9@byu.net>
21278
21279         * lib/lseek.c: Include <sys/stat.h>.
21280         (rpl_lseek): Add workaround code also for Unix platforms.
21281         Needed for BeOS.
21282         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
21283         * doc/functions/lseek.texi: Document BeOS definiency.
21284
21285 2007-08-18  Bruno Haible  <bruno@clisp.org>
21286
21287         * modules/fstrcmp-tests: New file.
21288         * tests/test-fstrcmp.c: New file.
21289
21290 2007-08-18  Bruno Haible  <bruno@clisp.org>
21291
21292         * modules/fstrcmp: New file, from GNU gettext with modifications.
21293         * lib/fstrcmp.h: New file, from GNU gettext.
21294         * lib/fstrcmp.c: New file, from GNU gettext.
21295         * MODULES.html.sh (String handling): Add fstrcmp.
21296
21297 2007-08-18  Bruno Haible  <bruno@clisp.org>
21298
21299         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
21300         'bool'.
21301         (diag, compareseq): Remove const from the ctxt argument.
21302         (USE_HEURISTIC): Undefine at the end.
21303
21304 2007-08-18  Jim Meyering  <jim@meyering.net>
21305
21306         New file: lib/idcache.h
21307         * NEWS: Mention the addition.
21308         * modules/idcache (Files): Add lib/idcache.h
21309         * lib/idcache.c: Include "idcache.h".
21310         Don't include <sys/types.h>.
21311         Add a FIXME comment.
21312         Move file-scoped "static" declarations to the top.
21313         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
21314
21315 2007-08-17  Bruno Haible  <bruno@clisp.org>
21316         and Paul Eggert  <eggert@cs.ucla.edu>
21317
21318         * MODULES.html.sh: Add diffseq.
21319         * modules/diffseq: New file.
21320         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
21321         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
21322
21323 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
21324
21325         Import changes from coreutils for bootstrap script.
21326
21327         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
21328
21329         * build-aux/bootstrap (slurp): Work even in environments where
21330         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
21331         current code does not slurp files whose names start with ".", and
21332         this looks like it might be a troublesome area.
21333
21334         2007-07-11  Jim Meyering  <jim@meyering.net>
21335
21336         If there's a GPL vN copyright comment, require that N == 3.
21337
21338         2007-07-08  Jim Meyering  <jim@meyering.net>
21339
21340         Run the coreutils-specific code only if tests/Makefile.am.in exists.
21341         * build-aux/bootstrap (mam_template): Move definition out of loop.
21342
21343         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
21344
21345         * build-aux/bootstrap (symlink_to_dir): Rename function from
21346         symlink_to_gnulib.  Add a directory parameter.  Update all
21347         callers.
21348         (cp_mark_as_generated): Also check for -- and link to -- files in
21349         gl/.
21350
21351         2007-07-08  Jim Meyering  <jim@meyering.net>
21352
21353         Adapt to deeper hierarchy in gnulib.
21354         * build-aux/bootstrap (symlink_to_dir): If the destination
21355         directory doesn't exist, create it. This is required at least for
21356         "lib/uniwidth/cjk.h".
21357
21358         2007-05-15  Jim Meyering  <jim@meyering.net>
21359
21360         * build-aux/bootstrap: Now that generated Makefile.am files
21361         are no longer under version control, they must be created at
21362         bootstrap time.
21363
21364 2007-08-14  Ben Pfaff  <blp@gnu.org>
21365
21366         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
21367
21368 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
21369
21370         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
21371         given the changes below.
21372         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
21373         even on hosts that have padding bits beyond the supported 64.
21374
21375 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
21376
21377         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
21378         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
21379         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
21380         depends on it.
21381         (xstrtol_error): Remove.
21382         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
21383         but with a different signature.
21384         (ATTRIBUTE_NORETURN, __attribute__): New macros.
21385         * lib/xstrtol-error.c: Include exitfail.h.
21386         (xstrtol_fatal): New function, with a different signature from the
21387         old xstrtol_error, so that the caller need not worry about passing
21388         in an exit status, or about storage management of the option argument.
21389         (xstrtol_error): Now a static function.  Redo signature to
21390         implement xstrtol_fatal.  Output the correct number of hyphens in
21391         front of the option so that the caller need not worry about
21392         storage management.
21393         (N_): New macro.
21394         (_): Remove; not used now.
21395         * modules/xstrtol: Depend on getopt.
21396         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
21397         of old STRTOL_FATAL_ERROR macro.
21398         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
21399         of test program.
21400         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
21401         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
21402
21403 2007-08-08  Eric Blake  <ebb9@byu.net>
21404
21405         * lib/xstrtol-error.c: Add missing include.
21406
21407         Move xstrtol messages into gnulib domain, when --pobase is used.
21408         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
21409         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
21410         * modules/xstrtol (Files): Distribute new file.
21411         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
21412         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
21413         * tests/test-xstrtol.c: ...into new file.
21414         * tests/test-xstrtoul.c: Also test xstrtoul.
21415         * tests/test-xstrtoimax.c: Also test xstrtoimax.
21416         * tests/test-xstrtoumax.c: Also test xstrtoumax.
21417         * tests/test-xstrtol.sh: Drive the tests.
21418         * tests/test-xstrtoimax.sh: Likewise.
21419         * tests/test-xstrtoumax.sh: Likewise.
21420         * modules/xstrtol-tests: New module.
21421         * modules/xstrtoimax-tests: Likewise.
21422         * modules/xstrtoumax-tests: Likewise.
21423
21424 2007-08-08  Jim Meyering  <jim@meyering.net>
21425
21426         New function: mfile_name_concat.
21427         * lib/filenamecat.c (mfile_name_concat): New function, just like
21428         file_name_concat, but return NULL upon failure rather than exiting
21429         with a diagnostic.
21430         * lib/filenamecat.h: Declare it.
21431
21432 2007-08-07  Bruno Haible  <bruno@clisp.org>
21433
21434         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
21435         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
21436         warning from gcc.
21437         Reported by Eric Blake.
21438
21439 2007-08-07  Simon Josefsson  <simon@josefsson.org>
21440
21441         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
21442         * modules/crypto/arcfour (License): Likewise.
21443         * modules/crypto/des-tests (License): Likewise.
21444         * modules/crypto/gc-arctwo-tests (License): Likewise.
21445         * modules/crypto/gc-des-tests (License): Likewise.
21446         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
21447         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
21448         * modules/crypto/gc-md2-tests (License): Likewise.
21449         * modules/crypto/gc-md4-tests (License): Likewise.
21450         * modules/crypto/gc-md5-tests (License): Likewise.
21451         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
21452         * modules/crypto/gc-rijndael-tests (License): Likewise.
21453         * modules/crypto/gc-sha1-tests (License): Likewise.
21454         * modules/crypto/gc-tests (License): Likewise.
21455         * modules/crypto/hmac-md5 (License): Likewise.
21456         * modules/crypto/hmac-sha1 (License): Likewise.
21457         * modules/crypto/md2-tests (License): Likewise.
21458         * modules/crypto/md4-tests (License): Likewise.
21459         * modules/crypto/md5 (License): Likewise.
21460         * modules/crypto/rijndael (License): Likewise.
21461         * modules/crypto/sha1 (License): Likewise.
21462         * modules/memxor (License): Likewise.
21463
21464 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
21465         and Bruno Haible  <bruno@clisp.org>
21466
21467         * NEWS: Describe interface changes to human, xstrtol.
21468         * lib/human.h: Include <xstrtol.h>.
21469         (human_options): Return enum strtol_error, not int.  Remove
21470         bool arg; take int * instead.
21471         * lib/human.c: Don't include "gettext.h".
21472         (_): Remove; no longer used.
21473         Don't include <xstrtol.h>, since human.h does it.
21474         (human_options): Adjust to abovementioned interface changes.
21475         Do not report error to stderr; that's now the caller's
21476         responsibility.
21477         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
21478         interface change.
21479         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
21480         Str, Argument_type_string.  All uses changed.  Put " argument"
21481         in diagnostics to make them clearer.  Change wording of suffix
21482         message for clarity.
21483         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
21484         Argument_type_string.
21485         (STRTOL_FATAL_WARN): Remove; no longer used.
21486         * modules/human (Depends-on): Remove gettext-h.
21487
21488 2007-08-06  Simon Josefsson  <simon@josefsson.org>
21489
21490         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
21491
21492 2007-07-31  Bruno Haible  <bruno@clisp.org>
21493
21494         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
21495         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
21496         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
21497
21498 2007-07-31  Bruno Haible  <bruno@clisp.org>
21499
21500         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
21501         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
21502
21503 2007-07-30  Bruno Haible  <bruno@clisp.org>
21504
21505         * modules/base64 (License): Use the synonymous term "LGPLv2+".
21506         * modules/c-ctype (License): Likewise.
21507         * modules/c-strcase (License): Likewise.
21508         * modules/check-version (License): Likewise.
21509         * modules/iconv (License): Likewise.
21510         * modules/iconv_open (License): Likewise.
21511         * modules/read-file (License): Likewise.
21512         * modules/striconv (License): Likewise.
21513         * modules/strverscmp (License): Likewise.
21514         * modules/vasprintf (License): Likewise.
21515         * modules/crypto/des (License): Likewise.
21516         * modules/crypto/gc (License): Likewise.
21517         * modules/crypto/gc-arcfour (License): Likewise.
21518         * modules/crypto/gc-arctwo (License): Likewise.
21519         * modules/crypto/gc-des (License): Likewise.
21520         * modules/crypto/gc-hmac-md5 (License): Likewise.
21521         * modules/crypto/gc-hmac-sha1 (License): Likewise.
21522         * modules/crypto/gc-md2 (License): Likewise.
21523         * modules/crypto/gc-md4 (License): Likewise.
21524         * modules/crypto/gc-md5 (License): Likewise.
21525         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
21526         * modules/crypto/gc-random (License): Likewise.
21527         * modules/crypto/gc-rijndael (License): Likewise.
21528         * modules/crypto/gc-sha1 (License): Likewise.
21529         * modules/crypto/md2 (License): Likewise.
21530         * modules/crypto/md4 (License): Likewise.
21531
21532 2007-07-30  Jim Meyering  <jim@meyering.net>
21533
21534         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
21535         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
21536         it has valid stat data.  This bug would cause du not to count the
21537         sizes of inaccessible directories.
21538         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
21539         in <http://bugzilla.redhat.com/250077>.
21540
21541 2007-07-25  Peter O'Gorman  <peter@pogma.com>
21542             Bruno Haible  <bruno@clisp.org>
21543
21544         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
21545         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
21546         #include_next, gives a diagnostic about it, but reports no error in
21547         the exit code.
21548         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
21549
21550 2007-07-24  Ben Pfaff  <blp@gnu.org>
21551
21552         Improve name: "count-one-bits" is better than "popcount".
21553         * MODULES.html.sh: Update name.
21554         * lib/popcount.h: Renamed lib/count-one-bits.h.
21555         (popcount): Renamed count_one_bits.
21556         (popcountl): Renamed count_one_bits_l.
21557         (popcountll): Renamed count_one_bits_ll.
21558         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
21559         * modules/popcount: Renamed module/count-one-bits.
21560         * modules/popcount-tests: Renamed module/count-one-bits-tests.
21561         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
21562
21563 2007-07-23  Ben Pfaff  <blp@gnu.org>
21564
21565         * lib/popcount.h (popcount32): Reduce size of constants, to allow
21566         better code generation, and add U to large constants to avoid
21567         warnings, in non-GCC case.
21568         Suggested by Bruno Haible.
21569
21570 2007-07-23  Ben Pfaff  <blp@gnu.org>
21571
21572         * lib/popcount.h: Use verify_true instead of if...abort.
21573         * modules/popcount: Depend on verify module.
21574         Suggested by Jim Meyering.
21575
21576 2007-07-23  Bruno Haible  <bruno@clisp.org>
21577
21578         * gnulib-tool (func_import): Create a .cvsignore file also when the
21579         directory is not yet in CVS but the toplevel directory is. When
21580         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
21581         Reported by Karl Berry.
21582
21583 2007-07-22  Ben Pfaff  <blp@gnu.org>
21584
21585         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
21586         case.
21587         Suggested by Eric Blake.
21588
21589 2007-07-22  Ben Pfaff  <blp@gnu.org>
21590
21591         New module: popcount.
21592         * MODULES.html.sh: Add popcount.
21593         * modules/popcount: New file.
21594         * modules/popcount-tests: New file.
21595         * tests/test-popcount.c: New file.
21596         * lib/popcount.h: New file.
21597         * m4/popcount.m4: New file.
21598
21599 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
21600
21601         * build-aux/announce-gen: Update to GPLv3.
21602
21603         * build-aux/config.guess: Update from config.
21604
21605 2007-07-21  Bruno Haible  <bruno@clisp.org>
21606
21607         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
21608         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
21609
21610 2007-07-20  Jim Meyering  <jim@meyering.net>
21611
21612         * check-module: Diagnose a self-dependency.
21613
21614 2007-07-19  Bruno Haible  <bruno@clisp.org>
21615
21616         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
21617         empty.
21618         Reported by Eric Blake.
21619
21620 2007-07-18  Bruno Haible  <bruno@clisp.org>
21621
21622         * gnulib-tool: New options --po-base, --po-domain.
21623         (func_usage): Document them.
21624         (pobase, po_domain): New variables.
21625         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
21626         DEFAULT_TEXT_DOMAIN.
21627         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
21628         (func_import): Consider pobase and po_domain. Create a po/ directory.
21629         (func_create_testdir): Set pobase and po_domain to empty.
21630         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
21631         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
21632
21633 2007-07-18  Bruno Haible  <bruno@clisp.org>
21634
21635         * gnulib-tool (func_get_automake_snippet): Synthesize also an
21636         EXTRA_DIST augmentation for files in build-aux/.
21637
21638 2007-07-16  Bruno Haible  <bruno@clisp.org>
21639
21640         * modules/lseek (License): Use the synonymous term "LGPLv2+".
21641         * modules/getdelim (License): Likewise.
21642
21643 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
21644
21645         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
21646         * modules/d-type (License): Likewise.
21647         * modules/extensions (License): Likewise.
21648         * modules/fnmatch (License): Likewise.
21649         * modules/fseeko (License): Likewise.
21650         * modules/getaddrinfo (License): Likewise.
21651         * modules/getline (License): Likewise.
21652         * modules/getlogin_r (License): Likewise.
21653         * modules/getpass (License): Likewise.
21654         * modules/gettimeofday (License): Likewise.
21655         * modules/glob (License): Likewise.
21656         * modules/inet_ntop (License): Likewise.
21657         * modules/malloc (License): Likewise.
21658         * modules/malloca (License): Likewise.
21659         * modules/memmem (License): Likewise.
21660         * modules/mempcpy (License): Likewise.
21661         * modules/memset (License): Likewise.
21662         * modules/minmax (License): Likewise.
21663         * modules/mktime (License): Likewise.
21664         * modules/netinet_in (License): Likewise.
21665         * modules/pathmax (License): Likewise.
21666         * modules/poll (License): Likewise.
21667         * modules/regex (License): Likewise.
21668         * modules/snprintf (License): Likewise.
21669         * modules/stdbool (License): Likewise.
21670         * modules/stdint (License): Likewise.
21671         * modules/stdio (License): Likewise.
21672         * modules/strcase (License): Likewise.
21673         * modules/strcasestr (License): Likewise.
21674         * modules/strdup (License): Likewise.
21675         * modules/string (License): Likewise.
21676         * modules/strndup (License): Likewise.
21677         * modules/strnlen (License): Likewise.
21678         * modules/strpbrk (License): Likewise.
21679         * modules/strptime (License): Likewise.
21680         * modules/strsep (License): Likewise.
21681         * modules/sys_select (License): Likewise.
21682         * modules/sys_socket (License): Likewise.
21683         * modules/sys_stat (License): Likewise.
21684         * modules/sys_time (License): Likewise.
21685         * modules/time (License): Likewise.
21686         * modules/time_r (License): Likewise.
21687         * modules/timegm (License): Likewise.
21688         * modules/unistd (License): Likewise.
21689         * modules/vsnprintf (License): Likewise.
21690         * modules/wctype (License): Likewise.
21691
21692 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21693
21694         * modules/argz (License): LGPLv2+.
21695
21696 2007-07-15  Karl Berry  <karl@gnu.org>
21697
21698         * doc/gnulib.texi: revise node structure per new fdl.texi.
21699
21700 2007-07-14  Bruno Haible  <bruno@clisp.org>
21701
21702         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
21703         the output file.
21704         * lib/uniname/uninames.h: Regenerated.
21705
21706 2007-07-14  Karl Berry  <karl@gnu.org>
21707
21708         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
21709         omitting sectioning and index commands.
21710
21711 2007-07-13  Bruno Haible  <bruno@clisp.org>
21712
21713         New gnulib-tool option --more-symlinks.
21714         * gnulib-tool (func_usage): Document --more-symlinks.
21715         (do_copyrights): New variable.
21716         Recognize option --more-symlinks.
21717         (func_import): Don't add a copyright notice transform to
21718         sed_transform_lib_file if do_copyrights is empty.
21719
21720 2007-07-13  Bruno Haible  <bruno@clisp.org>
21721
21722         * lib/vasnprintf.c (decimal_point_char): Define also if
21723         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
21724         && !NEED_PRINTF_DIRECTIVE_A.
21725         Reported by Clemens Koller <clemens.koller@anagramm.de> via
21726         Gary V. Vaughan <gary@gnu.org>.
21727
21728 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
21729
21730         * lib/inttypes_.h: Undo previous change, since it was fixed
21731         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
21732
21733 2007-07-13  Bruno Haible  <bruno@clisp.org>
21734
21735         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
21736         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
21737
21738 2007-07-13  Jim Meyering  <jim@meyering.net>
21739
21740         df: Don't fail for Tru64's "file-on-file mount".
21741         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
21742         so we fall through and use statfs instead.  Details here:
21743         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
21744         Reported by Albert Chin.
21745
21746 2007-07-13  Bruno Haible  <bruno@clisp.org>
21747
21748         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
21749         * modules/configmake (License): Likewise.
21750         * modules/gettext (License): Likewise.
21751         * modules/gettext-h (License): Likewise.
21752         * modules/include_next (License): Likewise.
21753         * modules/link-warning (License): Likewise.
21754         * modules/localcharset (License): Likewise.
21755         * modules/localename (License): Likewise.
21756         * modules/lock (License): Likewise.
21757         * modules/relocatable-lib-lgpl (License): Likewise.
21758         * modules/size_max (License): Likewise.
21759         * modules/vasnprintf (License): Likewise.
21760         * modules/wchar (License): Likewise.
21761         * modules/xsize (License): Likewise.
21762
21763 2007-07-13  Bruno Haible  <bruno@clisp.org>
21764
21765         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
21766         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
21767
21768 2007-07-12  Bruno Haible  <bruno@clisp.org>
21769
21770         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
21771         in the modules files.
21772
21773 2007-07-11  Karl Berry  <karl@gnu.org>
21774
21775         * MODULES.html.sh (func_module): use
21776          sed -e '\|^'"${includefile}"'$|d'
21777          instead of /.../d, to avoid errors on $includefile's containing /.
21778
21779 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
21780
21781         * gnulib-tool (func_import): Avoid duplication of --avoid
21782         statements
21783         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
21784         names to `_' in variable names.
21785
21786 2007-07-10  Eric Blake  <ebb9@byu.net>
21787
21788         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
21789         * NEWS: Document this change.
21790
21791 2007-07-08  Bruno Haible  <bruno@clisp.org>
21792
21793         Update to Unicode 5.0.
21794         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
21795         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
21796         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
21797         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
21798         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
21799         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
21800         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
21801         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
21802         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
21803         U+10A3F, U+1D242..U+1D244.
21804         (nonspacing_table_ind): Update.
21805         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
21806         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
21807
21808 2007-07-08  Bruno Haible  <bruno@clisp.org>
21809
21810         Update to Unicode 5.0.
21811         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
21812         code transform. Extend the name index field of unicode_name_to_code and
21813         unicode_code_to_name from 16 to 24 bits.
21814         * lib/uniname/uniname.c (unicode_character_name,
21815         unicode_name_character): Add the range 0x12xxx to the code transform.
21816         * lib/uniname/uninames.h: Regenerated.
21817         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
21818
21819 2007-07-07  Bruno Haible  <bruno@clisp.org>
21820
21821         * modules/wcwidth-tests: New file.
21822         * tests/test-wcwidth.c: New file.
21823
21824         Work around MacOS X wcwidth() bug.
21825         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
21826         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
21827         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
21828         original wcwidth in non-UTF-8 locales.
21829         * modules/wcwidth (Depends-on): Add localcharset, streq,
21830         uniwidth/width.
21831         * doc/functions/wcwidth.texi: Update.
21832
21833 2007-07-07  Bruno Haible  <bruno@clisp.org>
21834
21835         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
21836         (wcwidth): New declaration.
21837         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
21838         macros.
21839         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
21840         here. Prepare for creating <wchar.h> unconditionally.
21841         * modules/wchar (Depends-on): Add link-warning.
21842         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
21843         REPLACE_WCWIDTH, and GL_LINK_WARNING.
21844         * lib/wcwidth.h: Remove file.
21845         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
21846         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
21847         * modules/wcwidth (Files): Remove lib/wcwidth.h.
21848         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
21849         (Include): Replace wcwidth.h with <wchar.h>.
21850         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
21851         * lib/mbchar.h: Don't include wcwidth.h.
21852         * lib/mbswidth.c: Likewise.
21853         * NEWS: Mention the change.
21854
21855 2007-07-07  Bruno Haible  <bruno@clisp.org>
21856
21857         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
21858         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
21859         definition with an external declaration.
21860         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
21861         defined as a function. Remove AC_C_INLINE requirement.
21862         * modules/wcwidth (Files): Add lib/wcwidth.c.
21863         (Makefile.am): Remove redundant statement.
21864
21865 2007-07-07  Bruno Haible  <bruno@clisp.org>
21866
21867         * MODULES.html.sh (Unicode string functions): Add the new modules.
21868
21869         * tests/uniwidth/test-u32-strwidth.c: New file.
21870         * modules/uniwidth/u32-strwidth-tests: New file.
21871
21872         * lib/uniwidth/u32-strwidth.c: New file.
21873         * modules/uniwidth/u32-strwidth: New file.
21874
21875         * tests/uniwidth/test-u16-strwidth.c: New file.
21876         * modules/uniwidth/u16-strwidth-tests: New file.
21877
21878         * lib/uniwidth/u16-strwidth.c: New file.
21879         * modules/uniwidth/u16-strwidth: New file.
21880
21881         * tests/uniwidth/test-u8-strwidth.c: New file.
21882         * modules/uniwidth/u8-strwidth-tests: New file.
21883
21884         * lib/uniwidth/u8-strwidth.c: New file.
21885         * modules/uniwidth/u8-strwidth: New file.
21886
21887         * tests/uniwidth/test-u32-width.c: New file.
21888         * modules/uniwidth/u32-width-tests: New file.
21889
21890         * lib/uniwidth/u32-width.c: New file.
21891         * modules/uniwidth/u32-width: New file.
21892
21893         * tests/uniwidth/test-u16-width.c: New file.
21894         * modules/uniwidth/u16-width-tests: New file.
21895
21896         * lib/uniwidth/u16-width.c: New file.
21897         * modules/uniwidth/u16-width: New file.
21898
21899         * tests/uniwidth/test-u8-width.c: New file.
21900         * modules/uniwidth/u8-width-tests: New file.
21901
21902         * lib/uniwidth/u8-width.c: New file.
21903         * modules/uniwidth/u8-width: New file.
21904
21905         * tests/uniwidth/test-uc_width.c: New file.
21906         * modules/uniwidth/width-tests: New file.
21907
21908         * lib/uniwidth/width.c: New file, from GNU libiconv.
21909         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
21910         * modules/uniwidth/width: New file.
21911
21912         * lib/uniwidth.h: New file, from GNU libiconv.
21913         * modules/uniwidth/base: New file.
21914
21915 2007-07-07  Bruno Haible  <bruno@clisp.org>
21916
21917         * lib/uniname.h: New file, from GNU gettext.
21918         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
21919         * lib/uniname/uninames.h: New file, from GNU gettext.
21920         * lib/uniname/uniname.c: New file, from GNU gettext.
21921         * tests/uniname/test-uninames.sh: New file.
21922         * tests/uniname/test-uninames.c: New file, from GNU gettext.
21923         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
21924         * modules/uniname/base: New file.
21925         * modules/uniname/uniname: New file.
21926         * modules/uniname/uniname-tests: New file.
21927         * MODULES.html.sh (Unicode string functions): Add the new modules.
21928
21929 2007-07-06  Bruno Haible  <bruno@clisp.org>
21930
21931         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
21932
21933 2007-07-06  Bruno Haible  <bruno@clisp.org>
21934
21935         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
21936         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
21937         includes <cygwin/sys_time.h> which includes <sys/select.h> which
21938         include <sys/time.h>.
21939         Reported by Eric Blake.
21940
21941 2007-07-06  Eric Blake  <ebb9@byu.net>
21942
21943         Fix testing canonicalize on cygwin.
21944         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
21945         Revert patch from 2007-06-19.
21946         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
21947         canonicalize module is also in use.
21948         * tests/test-canonicalize.c: New file.
21949         * tests/test-canonicalize.sh: Likewise.
21950         * modules/canonicalize-tests: Likewise.
21951
21952 2007-07-06  Jim Meyering  <jim@meyering.net>
21953
21954         * lib/getugroups.c (getugroups): Detect getgrent failure.
21955         Adjust comment to reflect reality: this function may return -1.
21956
21957 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
21958
21959         * build-aux/bootstrap (TP_URL,get_translations): Update to use
21960         the new TP address.
21961         (usage): Fix typo
21962         (gnulib_mk): New variable.
21963
21964 2007-07-05  Jim Meyering  <jim@meyering.net>
21965
21966         Don't let endgrent clobber errno, no matter how improbable.
21967         * lib/getugroups.c (getugroups): Save and restore errno around
21968         endgrent call.
21969
21970         Close the group DB even when failing with 2^31 or more members.
21971         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
21972
21973 2007-07-04  Jim Meyering  <jim@meyering.net>
21974
21975         * lib/getugroups.h: New file.
21976         * lib/getugroups.c: Include "getugroups.h".
21977         Remove uses of "register" keyword.
21978         Move local variable, "cp", down into scope where used.
21979         Give "username" parameter the "const" attribute.
21980         * modules/getugroups (Files): Add lib/getugroups.h
21981
21982 2007-07-04  Karl Berry  <karl@gnu.org>
21983
21984         * MODULES.html.sh (func_all_modules): Complete rename of
21985         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
21986
21987 2007-07-02  Bruno Haible  <bruno@clisp.org>
21988
21989         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
21990         mode, when inttypes.h comes from gnulib.
21991         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
21992
21993 2007-07-02  Simon Josefsson  <simon@josefsson.org>
21994
21995         * NEWS: Mention lgpl module name change.
21996
21997         * modules/lgpl-2.1: Renamed from lgpl.
21998
21999         * NEWS: Mention gpl module name change.
22000
22001         * modules/gpl-3.0: New file, based on gpl-2.0.
22002
22003         * modules/gpl-2.0: Renamed from gpl.
22004
22005         * modules/gpl: Fix filename, doc/gpl.texi is now found at
22006         doc/gpl-2.0.texi.
22007
22008 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
22009
22010         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
22011         #define __STDC_LIMIT_MACROS temporarily while including
22012         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
22013         Problem reported by Joel E. Denny in
22014         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
22015
22016 2007-07-01  Bruno Haible  <bruno@clisp.org>
22017
22018         * lib/unistdio.h: New file.
22019         * lib/unistdio/u-asnprintf.h: New file.
22020         * lib/unistdio/u-asprintf.h: New file.
22021         * lib/unistdio/u-printf-args.c: New file.
22022         * lib/unistdio/u-printf-args.h: New file.
22023         * lib/unistdio/u-printf-parse.h: New file.
22024         * lib/unistdio/u-snprintf.h: New file.
22025         * lib/unistdio/u-sprintf.h: New file.
22026         * lib/unistdio/u-vasprintf.h: New file.
22027         * lib/unistdio/u-vsnprintf.h: New file.
22028         * lib/unistdio/u-vsprintf.h: New file.
22029         * lib/unistdio/ulc-asnprintf.c: New file.
22030         * lib/unistdio/ulc-asprintf.c: New file.
22031         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
22032         * lib/unistdio/ulc-printf-parse.c: New file.
22033         * lib/unistdio/ulc-snprintf.c: New file.
22034         * lib/unistdio/ulc-sprintf.c: New file.
22035         * lib/unistdio/ulc-vasnprintf.c: New file.
22036         * lib/unistdio/ulc-vasprintf.c: New file.
22037         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
22038         * lib/unistdio/ulc-vsnprintf.c: New file.
22039         * lib/unistdio/ulc-vsprintf.c: New file.
22040         * lib/unistdio/u8-asnprintf.c: New file.
22041         * lib/unistdio/u8-asprintf.c: New file.
22042         * lib/unistdio/u8-printf-parse.c: New file.
22043         * lib/unistdio/u8-snprintf.c: New file.
22044         * lib/unistdio/u8-sprintf.c: New file.
22045         * lib/unistdio/u8-vasnprintf.c: New file.
22046         * lib/unistdio/u8-vasprintf.c: New file.
22047         * lib/unistdio/u8-vsnprintf.c: New file.
22048         * lib/unistdio/u8-vsprintf.c: New file.
22049         * lib/unistdio/u8-u8-asnprintf.c: New file.
22050         * lib/unistdio/u8-u8-asprintf.c: New file.
22051         * lib/unistdio/u8-u8-snprintf.c: New file.
22052         * lib/unistdio/u8-u8-sprintf.c: New file.
22053         * lib/unistdio/u8-u8-vasnprintf.c: New file.
22054         * lib/unistdio/u8-u8-vasprintf.c: New file.
22055         * lib/unistdio/u8-u8-vsnprintf.c: New file.
22056         * lib/unistdio/u8-u8-vsprintf.c: New file.
22057         * lib/unistdio/u16-asnprintf.c: New file.
22058         * lib/unistdio/u16-asprintf.c: New file.
22059         * lib/unistdio/u16-printf-parse.c: New file.
22060         * lib/unistdio/u16-snprintf.c: New file.
22061         * lib/unistdio/u16-sprintf.c: New file.
22062         * lib/unistdio/u16-vasnprintf.c: New file.
22063         * lib/unistdio/u16-vasprintf.c: New file.
22064         * lib/unistdio/u16-vsnprintf.c: New file.
22065         * lib/unistdio/u16-vsprintf.c: New file.
22066         * lib/unistdio/u16-u16-asnprintf.c: New file.
22067         * lib/unistdio/u16-u16-asprintf.c: New file.
22068         * lib/unistdio/u16-u16-snprintf.c: New file.
22069         * lib/unistdio/u16-u16-sprintf.c: New file.
22070         * lib/unistdio/u16-u16-vasnprintf.c: New file.
22071         * lib/unistdio/u16-u16-vasprintf.c: New file.
22072         * lib/unistdio/u16-u16-vsnprintf.c: New file.
22073         * lib/unistdio/u16-u16-vsprintf.c: New file.
22074         * lib/unistdio/u32-asnprintf.c: New file.
22075         * lib/unistdio/u32-asprintf.c: New file.
22076         * lib/unistdio/u32-printf-parse.c: New file.
22077         * lib/unistdio/u32-snprintf.c: New file.
22078         * lib/unistdio/u32-sprintf.c: New file.
22079         * lib/unistdio/u32-vasnprintf.c: New file.
22080         * lib/unistdio/u32-vasprintf.c: New file.
22081         * lib/unistdio/u32-vsnprintf.c: New file.
22082         * lib/unistdio/u32-vsprintf.c: New file.
22083         * lib/unistdio/u32-u32-asnprintf.c: New file.
22084         * lib/unistdio/u32-u32-asprintf.c: New file.
22085         * lib/unistdio/u32-u32-snprintf.c: New file.
22086         * lib/unistdio/u32-u32-sprintf.c: New file.
22087         * lib/unistdio/u32-u32-vasnprintf.c: New file.
22088         * lib/unistdio/u32-u32-vasprintf.c: New file.
22089         * lib/unistdio/u32-u32-vsnprintf.c: New file.
22090         * lib/unistdio/u32-u32-vsprintf.c: New file.
22091         * tests/unistdio/test-ulc-asnprintf1.c: New file.
22092         * tests/unistdio/test-ulc-asnprintf1.h: New file.
22093         * tests/unistdio/test-ulc-printf1.h: New file.
22094         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
22095         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
22096         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
22097         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
22098         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
22099         * tests/unistdio/test-ulc-vasprintf1.c: New file.
22100         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
22101         * tests/unistdio/test-ulc-vsprintf1.c: New file.
22102         * tests/unistdio/test-u8-asnprintf1.c: New file.
22103         * tests/unistdio/test-u8-asnprintf1.h: New file.
22104         * tests/unistdio/test-u8-printf1.h: New file.
22105         * tests/unistdio/test-u8-vasnprintf1.c: New file.
22106         * tests/unistdio/test-u8-vasnprintf2.c: New file.
22107         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
22108         * tests/unistdio/test-u8-vasnprintf3.c: New file.
22109         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
22110         * tests/unistdio/test-u8-vasprintf1.c: New file.
22111         * tests/unistdio/test-u8-vsnprintf1.c: New file.
22112         * tests/unistdio/test-u8-vsprintf1.c: New file.
22113         * tests/unistdio/test-u16-asnprintf1.c: New file.
22114         * tests/unistdio/test-u16-asnprintf1.h: New file.
22115         * tests/unistdio/test-u16-printf1.h: New file.
22116         * tests/unistdio/test-u16-vasnprintf1.c: New file.
22117         * tests/unistdio/test-u16-vasnprintf2.c: New file.
22118         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
22119         * tests/unistdio/test-u16-vasnprintf3.c: New file.
22120         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
22121         * tests/unistdio/test-u16-vasprintf1.c: New file.
22122         * tests/unistdio/test-u16-vsnprintf1.c: New file.
22123         * tests/unistdio/test-u16-vsprintf1.c: New file.
22124         * tests/unistdio/test-u32-asnprintf1.c: New file.
22125         * tests/unistdio/test-u32-asnprintf1.h: New file.
22126         * tests/unistdio/test-u32-printf1.h: New file.
22127         * tests/unistdio/test-u32-vasnprintf1.c: New file.
22128         * tests/unistdio/test-u32-vasnprintf2.c: New file.
22129         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
22130         * tests/unistdio/test-u32-vasnprintf3.c: New file.
22131         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
22132         * tests/unistdio/test-u32-vasprintf1.c: New file.
22133         * tests/unistdio/test-u32-vsnprintf1.c: New file.
22134         * tests/unistdio/test-u32-vsprintf1.c: New file.
22135         * modules/unistdio/base: New file.
22136         * modules/unistdio/u-printf-args: New file.
22137         * modules/unistdio/ulc-asnprintf: New file.
22138         * modules/unistdio/ulc-asprintf: New file.
22139         * modules/unistdio/ulc-fprintf: New file.
22140         * modules/unistdio/ulc-printf-parse: New file.
22141         * modules/unistdio/ulc-snprintf: New file.
22142         * modules/unistdio/ulc-sprintf: New file.
22143         * modules/unistdio/ulc-vasnprintf: New file.
22144         * modules/unistdio/ulc-vasprintf: New file.
22145         * modules/unistdio/ulc-vfprintf: New file.
22146         * modules/unistdio/ulc-vsnprintf: New file.
22147         * modules/unistdio/ulc-vsprintf: New file.
22148         * modules/unistdio/u8-asnprintf: New file.
22149         * modules/unistdio/u8-asprintf: New file.
22150         * modules/unistdio/u8-printf-parse: New file.
22151         * modules/unistdio/u8-snprintf: New file.
22152         * modules/unistdio/u8-sprintf: New file.
22153         * modules/unistdio/u8-vasnprintf: New file.
22154         * modules/unistdio/u8-vasprintf: New file.
22155         * modules/unistdio/u8-vsnprintf: New file.
22156         * modules/unistdio/u8-vsprintf: New file.
22157         * modules/unistdio/u8-u8-asnprintf: New file.
22158         * modules/unistdio/u8-u8-asprintf: New file.
22159         * modules/unistdio/u8-u8-snprintf: New file.
22160         * modules/unistdio/u8-u8-sprintf: New file.
22161         * modules/unistdio/u8-u8-vasnprintf: New file.
22162         * modules/unistdio/u8-u8-vasprintf: New file.
22163         * modules/unistdio/u8-u8-vsnprintf: New file.
22164         * modules/unistdio/u8-u8-vsprintf: New file.
22165         * modules/unistdio/u16-asnprintf: New file.
22166         * modules/unistdio/u16-asprintf: New file.
22167         * modules/unistdio/u16-printf-parse: New file.
22168         * modules/unistdio/u16-snprintf: New file.
22169         * modules/unistdio/u16-sprintf: New file.
22170         * modules/unistdio/u16-vasnprintf: New file.
22171         * modules/unistdio/u16-vasprintf: New file.
22172         * modules/unistdio/u16-vsnprintf: New file.
22173         * modules/unistdio/u16-vsprintf: New file.
22174         * modules/unistdio/u16-u16-asnprintf: New file.
22175         * modules/unistdio/u16-u16-asprintf: New file.
22176         * modules/unistdio/u16-u16-snprintf: New file.
22177         * modules/unistdio/u16-u16-sprintf: New file.
22178         * modules/unistdio/u16-u16-vasnprintf: New file.
22179         * modules/unistdio/u16-u16-vasprintf: New file.
22180         * modules/unistdio/u16-u16-vsnprintf: New file.
22181         * modules/unistdio/u16-u16-vsprintf: New file.
22182         * modules/unistdio/u32-asnprintf: New file.
22183         * modules/unistdio/u32-asprintf: New file.
22184         * modules/unistdio/u32-printf-parse: New file.
22185         * modules/unistdio/u32-snprintf: New file.
22186         * modules/unistdio/u32-sprintf: New file.
22187         * modules/unistdio/u32-vasnprintf: New file.
22188         * modules/unistdio/u32-vasprintf: New file.
22189         * modules/unistdio/u32-vsnprintf: New file.
22190         * modules/unistdio/u32-vsprintf: New file.
22191         * modules/unistdio/u32-u32-asnprintf: New file.
22192         * modules/unistdio/u32-u32-asprintf: New file.
22193         * modules/unistdio/u32-u32-snprintf: New file.
22194         * modules/unistdio/u32-u32-sprintf: New file.
22195         * modules/unistdio/u32-u32-vasnprintf: New file.
22196         * modules/unistdio/u32-u32-vasprintf: New file.
22197         * modules/unistdio/u32-u32-vsnprintf: New file.
22198         * modules/unistdio/u32-u32-vsprintf: New file.
22199         * modules/unistdio/ulc-asnprintf-tests: New file.
22200         * modules/unistdio/ulc-vasnprintf-tests: New file.
22201         * modules/unistdio/ulc-vasprintf-tests: New file.
22202         * modules/unistdio/ulc-vsnprintf-tests: New file.
22203         * modules/unistdio/ulc-vsprintf-tests: New file.
22204         * modules/unistdio/u8-asnprintf-tests: New file.
22205         * modules/unistdio/u8-vasnprintf-tests: New file.
22206         * modules/unistdio/u8-vasprintf-tests: New file.
22207         * modules/unistdio/u8-vsnprintf-tests: New file.
22208         * modules/unistdio/u8-vsprintf-tests: New file.
22209         * modules/unistdio/u16-asnprintf-tests: New file.
22210         * modules/unistdio/u16-vasnprintf-tests: New file.
22211         * modules/unistdio/u16-vasprintf-tests: New file.
22212         * modules/unistdio/u16-vsnprintf-tests: New file.
22213         * modules/unistdio/u16-vsprintf-tests: New file.
22214         * modules/unistdio/u32-asnprintf-tests: New file.
22215         * modules/unistdio/u32-vasnprintf-tests: New file.
22216         * modules/unistdio/u32-vasprintf-tests: New file.
22217         * modules/unistdio/u32-vsnprintf-tests: New file.
22218         * modules/unistdio/u32-vsprintf-tests: New file.
22219         * MODULES.html.sh (Unicode string functions): Add the new modules.
22220
22221 2007-07-01  Bruno Haible  <bruno@clisp.org>
22222
22223         * lib/sprintf.c (sprintf): Limit the available length estimation,
22224         to avoid address wraparound.
22225         * lib/vsprintf.c (vsprintf): Likewise.
22226         * modules/sprintf-posix (Dependencies): Add stdint.
22227         * modules/vsprintf-posix (Dependencies): Likewise.
22228
22229 2007-07-01  Bruno Haible  <bruno@clisp.org>
22230
22231         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
22232         Windows PATH as well. Conservative double-quoting. Comments.
22233
22234 2007-07-01  Bruno Haible  <bruno@clisp.org>
22235             Eric Blake  <ebb9@byu.net>
22236             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22237
22238         * gnulib-tool (self_abspathname): Fix algorithm to cope with
22239         empty components in $PATH, denoting '.'.
22240
22241 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22242
22243         * gnulib-tool: Fix indentation.
22244         (func_create_megatestdir): Likewise.
22245         Report by Bruno Haible.
22246
22247 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22248
22249         Sync from Automake.
22250         * build-aux/gnupload: Fix shell portability issues with for loops.
22251         Report by Karl Berry.
22252
22253 2007-06-29  Simon Josefsson  <simon@josefsson.org>
22254
22255         * build-aux/maint.mk (POURL): Use translationproject.org.
22256
22257 2007-06-27  Simon Josefsson  <simon@josefsson.org>
22258             Bruno Haible  <bruno@clisp.org>
22259
22260         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
22261         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
22262         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
22263         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
22264         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
22265
22266 2007-06-27  Bruno Haible  <bruno@clisp.org>
22267
22268         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
22269         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
22270
22271 2007-06-26  Karl Berry  <karl@gnu.org>
22272
22273         * MODULES.html.sh: remove xreadlink-with-size.
22274
22275 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
22276
22277         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
22278         method that I hope also handles the double-include problem noted
22279         by Bruno Haible in
22280         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
22281
22282 2007-06-23  Bruno Haible  <bruno@clisp.org>
22283
22284         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
22285         Don't let the 'mostlyclean' target fail if the last subdirectory could
22286         not be removed.
22287         Reported by Karl Berry.
22288
22289 2007-06-23  Bruno Haible  <bruno@clisp.org>
22290
22291         * gnulib-tool (echo): Add a speedier workaround for ksh.
22292         * tests/test-echo.sh: Likewise.
22293
22294 2007-06-23  Bruno Haible  <bruno@clisp.org>
22295
22296         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
22297         * tests/test-echo.sh: Likewise.
22298
22299 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22300
22301         * gnulib-tool (IFS): Initialize early, so we don't set it to
22302         empty later.
22303         (self_abspathname): Rewrite algorithm to set it, reindent.
22304         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
22305         (func_create_megatestdir): Merge some sed scripts.
22306
22307 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
22308
22309         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
22310         exposed by Sun Studio 11 cc on Solaris 8.
22311
22312 2007-06-22  Bruno Haible  <bruno@clisp.org>
22313
22314         * gnulib-tool (echo): Ensure the echo primitive does not interpret
22315         backslashes.
22316         * tests/test-echo.sh: New file.
22317
22318 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22319
22320         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
22321         simplify `sed_replace_build_aux' scripts, they are portable but
22322         echoing them with `echo' is not.
22323         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
22324
22325 2007-06-21  Karl Berry  <karl@gnu.org>
22326
22327         * config/srclist.txt: guess we can't handle the licenses via
22328         srclist at the moment.
22329
22330 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
22331
22332         * MODULES.html.sh: Add include_next.
22333         * modules/include_next: New file.
22334
22335 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
22336
22337         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
22338         INCLUDE_NEXT.
22339         (gl_CHECK_NEXT_HEADERS): New macro.
22340         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
22341         the obsolescent gl_ABSOLUTE_HEADER.
22342         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
22343         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
22344         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
22345         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
22346         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
22347         * m4/math_h.m4 (gl_MATH_H): Likewise.
22348         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
22349         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
22350         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
22351         * m4/stdint.m4 (gl_STDINT_H): Likewise.
22352         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
22353         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
22354         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
22355         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
22356         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
22357         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
22358         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
22359         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
22360         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
22361         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
22362         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
22363         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
22364         * m4/inttypes.m4 (gl_INTTYPES_H): Define
22365         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
22366         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
22367         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
22368         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
22369         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
22370         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
22371         * lib/float_.h: Likewise.
22372         * lib/inttypes_.h: Likewise.
22373         * lib/math_.h: Likewise.
22374         * lib/search_.h: Likewise.
22375         * lib/signal_.h: Likewise.
22376         * lib/stdint_.h: Likewise.
22377         * lib/stdio_.h: Likewise.
22378         * lib/stdlib_.h: Likewise.
22379         * lib/string_.h: Likewise.
22380         * lib/sys_stat_.h: Likewise.
22381         * lib/sys_time_.h: Likewise.
22382         * lib/time_.h: Likewise.
22383         * lib/unistd_.h: Likewise.
22384         * lib/wchar_.h: Likewise.
22385         * lib/wctype_.h: Likewise.
22386         * lib/dirent_.h: Likewise.
22387         * lib/iconv_.h: Likewise.
22388         * lib/locale_.h: Likewise.
22389         * lib/netinet_in_.h: Likewise.
22390         * lib/sys_select_.h: Likewise.
22391         * lib/sys_socket_.h: Likewise.
22392         * lib/sysexits_.h: Likewise.
22393         * modules/fcntl (Depends-on): Depend on include_next, not
22394         absolute_header.
22395         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
22396         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
22397         * modules/fchdir: Likewise.
22398         * modules/float: Likewise.
22399         * modules/iconv_open: Likewise.
22400         * modules/inttypes: Likewise.
22401         * modules/locale: Likewise.
22402         * modules/math: Likewise.
22403         * modules/netinet_in: Likewise.
22404         * modules/search: Likewise.
22405         * modules/signal: Likewise.
22406         * modules/stdint: Likewise.
22407         * modules/stdio: Likewise.
22408         * modules/stdlib: Likewise.
22409         * modules/string: Likewise.
22410         * modules/sys_select: Likewise.
22411         * modules/sys_socket: Likewise.
22412         * modules/sys_stat: Likewise.
22413         * modules/sys_time: Likewise.
22414         * modules/sysexits: Likewise.
22415         * modules/time: Likewise.
22416         * modules/unistd: Likewise.
22417         * modules/wchar: Likewise.
22418         * modules/wctype: Likewise.
22419         * modules/sys_stat: Change maintainer to "all".
22420         * modules/unistd: Likewise.
22421
22422 2007-06-20  Karl Berry  <karl@gnu.org>
22423
22424         * config/srclist.txt: track www changes in license files.
22425
22426 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
22427
22428         * build-aux/bootstrap: Remove stray dot.
22429         Make sure build_aux settings are honored when linking
22430         gnulib_extra_files.
22431
22432 2007-06-19  Eric Blake  <ebb9@byu.net>
22433
22434         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
22435         Allow compilation on cygwin.
22436
22437 2007-06-19  Jim Meyering  <jim@meyering.net>
22438
22439         xreadlink-with-size: Remove module.  No longer used.
22440         Ex-callers now use xreadlink or mreadlink-with-size.
22441         * modules/xreadlink-with-size: Remove module.
22442         * lib/xreadlink-with-size.c: Remove file.
22443         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
22444         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
22445         just before the function definition *is* accurate.
22446
22447         Eliminate one way canonicalize_filename_mode could exit.
22448         * lib/canonicalize.c (canonicalize_filename_mode):
22449         Use mreadlink_with_size, not xreadlink_with_size.
22450
22451 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
22452
22453         Detect porting problems to FreeBSD/arm, which has time_t wider than
22454         long int.  Original problem reported for GNU diff by Xin Li in
22455         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
22456         * modules/getdate (Depends-on): Add intprops, verify.
22457         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
22458         is an integer type no wider than long int.
22459
22460 2007-06-18  Jim Meyering  <jim@meyering.net>
22461
22462         New module: mreadlink-with-size.
22463         * MODULES.html.sh: Add mreadlink-with-size.
22464         * modules/mreadlink-with-size: New module
22465         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
22466         not xreadlink-with-size.
22467         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
22468
22469 2007-06-16  Bruno Haible  <bruno@clisp.org>
22470
22471         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
22472         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
22473         Reported by Gary V. Vaughan <gary@gnu.org>.
22474
22475 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
22476
22477         Revamp lchown so that it lives in unistd.h where it belongs.
22478         * lib/lchown.h: Remove.
22479         * lib/dirchownmod.c: Don't include lib/lchown.h.
22480         * lib/fchownat.c: Likewise.
22481         * lib/openat.c: Likewise.
22482         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
22483         does not follow symlinks.
22484         (EOPNOTSUPP): Define if not defined.
22485         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
22486         is defined to 0.
22487         (lchown): New decl.
22488         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
22489         Do not check for lchown decl.
22490         Set REPLACE_LCHOWN.
22491         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
22492         REPLACE_LCHOWN.
22493         * modules/chown: Make it clear it follows symlinks.
22494         * modules/lchown: Make it clear it doesn't follow symlinks.
22495         (Files): Remove lib/lchown.h
22496         (Depends-on): Add unistd.
22497         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
22498         (Include): Include <unistd.h>, not "lchown.h".
22499         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
22500         REPLACE_LCHOWN.
22501
22502 2007-06-15  Jim Meyering  <jim@meyering.net>
22503
22504         Change license (GPL to LGPL) of fsusage and dependents.
22505         * modules/fsusage (License): Change to LGPL.
22506         * modules/full-read (License): Likewise.
22507         * modules/full-write (License): Likewise.
22508         * modules/safe-read (License): Likewise.
22509         * modules/safe-write (License): Likewise.
22510
22511 2007-06-14  Ben Pfaff  <blp@gnu.org>
22512
22513         Missing part of allocsa -> malloca transition.
22514         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
22515         gl_MALLOCA.
22516
22517 2007-06-12  Bruno Haible  <bruno@clisp.org>
22518
22519         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
22520         to ia64, x86_64, i386.
22521         Reported by Eric Blake.
22522
22523 2007-06-12  Bruno Haible  <bruno@clisp.org>
22524
22525         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
22526         cross-compiling to x86_64.
22527
22528 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
22529
22530         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
22531         glitch reported by Ralf Wildenhues in
22532         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
22533
22534         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
22535         Vin Shelton.
22536
22537 2007-06-11  Bruno Haible  <bruno@clisp.org>
22538
22539         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
22540         replacement string.
22541         Reported by Eric Blake.
22542
22543 2007-06-10  Bruno Haible  <bruno@clisp.org>
22544
22545         Prepare vasnprintf code for use with Unicode strings.
22546         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
22547         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
22548         TYPE_U32_STRING.
22549         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
22550         a_u32_string variants.
22551         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
22552         * lib/printf-args.c: Don't include config.h and the specification
22553         header if PRINTF_FETCHARGS is already defined.
22554         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
22555         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
22556         TYPE_U16_STRING, TYPE_U32_STRING.
22557         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
22558         u16_directive, u16_directives, u32_directive, u32_directives): New
22559         types.
22560         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
22561         New declarations.
22562         * lib/printf-parse.c: Don't include config.h and the specification
22563         header if PRINTF_PARSE is already defined. Eliminate the set of
22564         parameters for WIDE_CHAR_VERSION; the user of this file must provide
22565         them now. Include c-ctype.h.
22566         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
22567         directive and CHAR_T_ONLY_ASCII.
22568         * lib/vasnprintf.c: Don't include config.h and the specification header
22569         if VASNPRINTF is already defined.
22570         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
22571         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
22572         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
22573         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
22574         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
22575         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
22576         code accordingly.
22577         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
22578         pad_ourselves also in this case, with the 'c' and 's' directives, and
22579         with a different notion of "width".
22580         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
22581
22582 2007-06-10  Bruno Haible  <bruno@clisp.org>
22583
22584         * modules/unistr/u32-mbsnlen: New file.
22585         * lib/unistr/u32-mbsnlen.c: New file.
22586
22587         * modules/unistr/u16-mbsnlen: New file.
22588         * lib/unistr/u16-mbsnlen.c: New file.
22589
22590         * modules/unistr/u8-mbsnlen: New file.
22591         * lib/unistr/u8-mbsnlen.c: New file.
22592
22593         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
22594         declarations.
22595
22596 2007-06-10  Bruno Haible  <bruno@clisp.org>
22597
22598         * lib/string_.h (mbsnlen): New declaration.
22599         * lib/mbsnlen.c: New file.
22600         * m4/mbsnlen.m4: New file.
22601         * modules/mbsnlen: New file.
22602         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
22603         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
22604         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
22605
22606 2007-06-10  Bruno Haible  <bruno@clisp.org>
22607
22608         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
22609
22610 2007-06-10  Bruno Haible  <bruno@clisp.org>
22611
22612         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
22613         * lib/mbuiter.h: Likewise.
22614
22615 2007-06-10  Bruno Haible  <bruno@clisp.org>
22616
22617         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
22618         declaration.
22619
22620 2007-06-10  Karl Berry  <karl@gnu.org>
22621
22622         * config/srclist.txt: remove gettext entries, Bruno prefers
22623         to update individually.
22624
22625 2007-06-10  Bruno Haible  <bruno@clisp.org>
22626
22627         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
22628         'maxlen'. Ensure only length + width bytes are allocated, not
22629         length + 1 + width.
22630
22631 2007-06-09  Bruno Haible  <bruno@clisp.org>
22632
22633         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
22634         (CHAR_T): Remove macro.
22635         (VASNPRINTF): Update.
22636
22637 2007-06-09  Bruno Haible  <bruno@clisp.org>
22638
22639         * MODULES.html.sh (Unicode string functions): Add the new modules.
22640
22641         * modules/uniconv/u32-conv-to-enc: New file.
22642         * lib/uniconv/u32-conv-to-enc.c: New file.
22643         * modules/uniconv/u32-conv-to-enc-tests: New file.
22644         * tests/uniconv/test-u32-conv-to-enc.c: New file.
22645
22646         * modules/uniconv/u16-conv-to-enc: New file.
22647         * lib/uniconv/u16-conv-to-enc.c: New file.
22648         * lib/uniconv/u-conv-to-enc.h: New file.
22649         * modules/uniconv/u16-conv-to-enc-tests: New file.
22650         * tests/uniconv/test-u16-conv-to-enc.c: New file.
22651
22652         * modules/uniconv/u8-conv-to-enc: New file.
22653         * lib/uniconv/u8-conv-to-enc.c: New file.
22654         * modules/uniconv/u8-conv-to-enc-tests: New file.
22655         * tests/uniconv/test-u8-conv-to-enc.c: New file.
22656
22657         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
22658         u32_conv_to_encoding): New declarations.
22659
22660 2007-06-09  Bruno Haible  <bruno@clisp.org>
22661
22662         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
22663
22664 2007-06-09  Bruno Haible  <bruno@clisp.org>
22665
22666         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
22667         * modules/malloca: Renamed from modules/allocsa, updated.
22668         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
22669         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
22670         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
22671         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
22672         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
22673         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
22674         * modules/xmalloca: Renamed from modules/xallocsa, updated.
22675         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
22676         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
22677         * modules/c-strcasestr (Depends-on): Update.
22678         * lib/c-strcasestr.c: Update.
22679         * modules/c-strstr (Depends-on): Update.
22680         * lib/c-strstr.c: Update.
22681         * modules/canonicalize-lgpl (Depends-on): Update.
22682         * lib/canonicalize-lgpl.c: Update.
22683         * modules/clean-temp (Depends-on): Update.
22684         * lib/clean-temp.c: Update.
22685         * modules/csharpcomp (Depends-on): Update.
22686         * lib/csharpcomp.c: Update.
22687         * modules/csharpexec (Depends-on): Update.
22688         * lib/csharpexec.c: Update.
22689         * modules/javacomp (Depends-on): Update.
22690         * lib/javacomp.c: Update.
22691         * modules/javaexec (Depends-on): Update.
22692         * lib/javaexec.c: Update.
22693         * modules/mbscasestr (Depends-on): Update.
22694         * lib/mbscasestr.c: Update.
22695         * modules/mbsstr (Depends-on): Update.
22696         * lib/mbsstr.c: Update.
22697         * modules/setenv (Depends-on): Update.
22698         * lib/setenv.c: Update.
22699         * modules/strcasestr (Depends-on): Update.
22700         * lib/strcasestr.c: Update.
22701         * modules/striconveha (Depends-on): Update.
22702         * lib/striconveha.c: Update.
22703         * modules/relocatable-prog-wrapper (Files): Update.
22704         * lib/relocwrapper.c: Update.
22705         * build-aux/install-reloc: Update.
22706         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
22707
22708 2007-06-08  Bruno Haible  <bruno@clisp.org>
22709
22710         Port to uClibc.
22711         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
22712         * lib/fpurge.c (fpurge): Likewise.
22713         * lib/freading.c (freading): Likewise.
22714         * lib/fseeko.c (rpl_fseeko): Likewise.
22715         * lib/fseterr.c (fseterr): Likewise.
22716         * lib/fwriting.c (fwriting): Likewise.
22717         * tests/test-fflush.c (main): Avoid a failure on uClibc.
22718
22719 2007-06-08  Bruno Haible  <bruno@clisp.org>
22720
22721         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
22722         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
22723         * modules/gettext (Files): Add m4/intlmacosx.m4.
22724
22725 2007-06-07  Bruno Haible  <bruno@clisp.org>
22726
22727         * modules/localename-tests: New file.
22728         * tests/test-localename.c: New file.
22729
22730         New module 'localename'.
22731         * lib/localename.h: New file.
22732         * lib/localename.c: New file, from GNU gettext.
22733         * m4/localename.m4: New file.
22734         * modules/localename: New file.
22735
22736 2007-06-07  Bruno Haible  <bruno@clisp.org>
22737
22738         Work around the lack of <wchar.h> on some builds of uClibc.
22739         * doc/headers/wchar.texi: Update.
22740         * lib/wchar_.h: Include <wchar.h> only if it exists.
22741         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
22742         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
22743         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
22744         doesn't exist.
22745         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
22746         * modules/mbfile (Depends-on): Add wchar.
22747         * modules/mbiter (Depends-on): Likewise.
22748         * modules/mbuiter (Depends-on): Likewise.
22749         Reported by Simon Josefsson.
22750
22751 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
22752
22753         Work around problem reported by Steven M. Schweda in
22754         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
22755         Tru64 5.1B with the Compaq compiler environment installed declares
22756         an 'isblank' function but does not define it in the C library.
22757         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
22758         * lib/regex_internal.h (isblank): Likewise.
22759         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
22760         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
22761
22762 2007-06-05  Bruno Haible  <bruno@clisp.org>
22763
22764         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
22765         ia64.
22766         * modules/printf-safe: New file.
22767         * modules/fprintf-posix (Depends-on): Add printf-safe.
22768         * modules/printf-posix (Depends-on): Likewise.
22769         * modules/snprintf-posix (Depends-on): Likewise.
22770         * modules/sprintf-posix (Depends-on): Likewise.
22771         * modules/vasnprintf-posix (Depends-on): Likewise.
22772         * modules/vasprintf-posix (Depends-on): Likewise.
22773         * modules/vfprintf-posix (Depends-on): Likewise.
22774         * modules/vprintf-posix (Depends-on): Likewise.
22775         * modules/vsnprintf-posix (Depends-on): Likewise.
22776         * modules/vsprintf-posix (Depends-on): Likewise.
22777         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
22778         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
22779         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
22780         "no" on i386, x86_64, ia64.
22781         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
22782         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
22783         on i386, x86_64, ia64.
22784         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
22785         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
22786         on i386, x86_64, ia64.
22787         * tests/test-vasnprintf-posix.c: Include float.h.
22788         (LDBL80_WORDS): New macro.
22789         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
22790         on i386, x86_64, ia64.
22791         * tests/test-vasprintf-posix.c: Include float.h.
22792         (LDBL80_WORDS): New macro.
22793         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
22794         on i386, x86_64, ia64.
22795         * tests/test-snprintf-posix.c: Include float.h.
22796         * tests/test-sprintf-posix.c: Likewise.
22797         * tests/test-vsnprintf-posix.c: Likewise.
22798         * tests/test-vsprintf-posix.c: Likewise.
22799
22800 2007-06-05  Bruno Haible  <bruno@clisp.org>
22801
22802         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
22803         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
22804         non-IEEE numbers on i386, x86_64, ia64.
22805         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
22806         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
22807         * tests/test-isnanl.h: Include float.h.
22808         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
22809
22810 2007-06-05  Bruno Haible  <bruno@clisp.org>
22811
22812         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
22813         also the %a / %A. Handle the %a / %A code before this extra handling.
22814
22815 2007-06-05  Bruno Haible  <bruno@clisp.org>
22816
22817         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
22818         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
22819
22820 2007-06-05  Bruno Haible  <bruno@clisp.org>
22821
22822         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
22823         typo in variable name.
22824
22825 2007-06-05  Eric Blake  <ebb9@byu.net>
22826
22827         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
22828         Reported by Simon Josefsson.
22829
22830 2007-06-04  Bruno Haible  <bruno@clisp.org>
22831
22832         Avoid test failures on some PowerPC platforms.
22833         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
22834         Define differently for PowerPC.
22835         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
22836         Reported by Gary V. Vaughan <gary@gnu.org>.
22837
22838 2007-06-02  Bruno Haible  <bruno@clisp.org>
22839
22840         Fix test-stdint failure on FreeBSD/ia64.
22841         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
22842         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
22843         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
22844         * doc/headers/stdint.texi: Update.
22845
22846 2007-06-01  Bruno Haible  <bruno@clisp.org>
22847
22848         * tests/test-binary-io.c (main): Pass a third argument to open().
22849         Reported by Gary V. Vaughan <gary@gnu.org>.
22850
22851 2007-06-01  Bruno Haible  <bruno@clisp.org>
22852
22853         * doc/functions/frexpl.texi: Update for mingw.
22854
22855 2007-06-01  Bruno Haible  <bruno@clisp.org>
22856
22857         * tests/test-lseek.c (main): Disable test of errno for invalid third
22858         argument.
22859         * doc/functions/lseek.texi: Update.
22860         Reported by Gary V. Vaughan <gary@gnu.org>.
22861
22862 2007-05-28  Bruno Haible  <bruno@clisp.org>
22863
22864         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
22865
22866 2007-05-31  Eric Blake  <ebb9@byu.net>
22867
22868         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
22869         cross compiling.
22870
22871 2007-05-30  Eric Blake  <ebb9@byu.net>
22872         and Bruno Haible  <bruno@clisp.org>
22873
22874         Work around mingw test failures exposed by m4-1.4.9b.
22875         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
22876         * tests/test-unistd.c: Disable uid_t and git_t tests for the
22877         moment.
22878
22879 2007-05-30  Bruno Haible  <bruno@clisp.org>
22880
22881         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
22882         assuming that they are closed. Needed on HP-UX 11.
22883
22884 2007-05-29  Bruno Haible  <bruno@clisp.org>
22885
22886         Fix a problem with #include_next.
22887         * lib/dirent_.h: Split the double-inclusion guard.
22888         * lib/fcntl_.h: Likewise.
22889         * lib/float_.h: Likewise.
22890         * lib/iconv_.h: Likewise.
22891         * lib/inttypes_.h: Likewise.
22892         * lib/locale_.h: Likewise.
22893         * lib/math_.h: Likewise.
22894         * lib/netinet_in_.h: Likewise.
22895         * lib/search_.h: Likewise.
22896         * lib/signal_.h: Likewise.
22897         * lib/stdint_.h: Likewise.
22898         * lib/stdio_.h: Likewise.
22899         * lib/stdlib_.h: Likewise.
22900         * lib/string_.h: Likewise.
22901         * lib/sys_select_.h: Likewise.
22902         * lib/sys_socket_.h: Likewise.
22903         * lib/sys_stat_.h: Likewise.
22904         * lib/sys_time_.h: Likewise.
22905         * lib/sysexits_.h: Likewise.
22906         * lib/time_.h: Likewise.
22907         * lib/unistd_.h: Likewise.
22908         * lib/wchar_.h: Likewise.
22909         * lib/wctype_.h: Likewise.
22910
22911 2007-05-29  Bruno Haible  <bruno@clisp.org>
22912
22913         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
22914         for the moment.
22915
22916 2007-05-29  Bruno Haible  <bruno@clisp.org>
22917
22918         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
22919         invocation.
22920         Reported by Eric Blake.
22921
22922 2007-05-29  Bruno Haible  <bruno@clisp.org>
22923
22924         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
22925         compiling case.
22926
22927 2007-05-29  Eric Blake  <ebb9@byu.net>
22928             Bruno Haible  <bruno@clisp.org>
22929
22930         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
22931         cross compiles.
22932
22933 2007-05-28  Eric Blake  <ebb9@byu.net>
22934
22935         * modules/closein-tests (test_closein_LDADD): Support test on
22936         cygwin with libtool.
22937
22938 2007-05-28  Bruno Haible  <bruno@clisp.org>
22939
22940         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
22941         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
22942         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
22943         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
22944         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
22945         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
22946         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
22947         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
22948         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
22949
22950 2007-05-28  Eric Blake  <ebb9@byu.net>
22951
22952         Unconditionally include <config.h> in unit tests.
22953         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
22954         * tests/test-allocsa.c, tests/test-arcfour.c,
22955         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
22956         tests/test-array_list.c, tests/test-array_oset.c,
22957         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
22958         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
22959         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
22960         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
22961         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
22962         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
22963         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
22964         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
22965         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
22966         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
22967         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
22968         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
22969         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
22970         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
22971         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
22972         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
22973         test-md5.c, test-memmem.c, test-printf-posix.c,
22974         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
22975         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
22976         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
22977         test-strcasestr.c, test-striconv.c, test-striconveh.c,
22978         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
22979         test-vasnprintf-posix2.c, test-vasnprintf.c,
22980         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
22981         test-vfprintf-posix.c, test-vprintf-posix.c,
22982         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
22983         test-xvasprintf.c: Likewise.
22984
22985 2007-05-28  Bruno Haible  <bruno@clisp.org>
22986
22987         * gnulib-tool (func_import): Remember the --with-tests command-line
22988         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
22989         Reported by Eric Blake.
22990
22991 2007-05-28  Bruno Haible  <bruno@clisp.org>
22992
22993         * modules/ftell-tests: New file.
22994         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
22995         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
22996
22997         * lib/ftell.c: New file.
22998         * modules/ftell: New file.
22999         * m4/ftell.m4: New file.
23000         * doc/functions/ftell.texi: Update.
23001         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
23002         REPLACE_FTELL.
23003         * lib/stdio_.h (rpl_ftell): New declaration.
23004         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
23005         REPLACE_FTELL.
23006
23007 2007-05-28  Eric Blake  <ebb9@byu.net>
23008
23009         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
23010
23011 2007-05-28  Bruno Haible  <bruno@clisp.org>
23012
23013         * modules/fseek-tests: New file.
23014         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
23015         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
23016
23017         * lib/fseek.c: New file.
23018         * modules/fseek: New file.
23019         * m4/fseek.m4: New file.
23020         * doc/functions/fseek.texi: Update.
23021         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
23022         REPLACE_FSEEK.
23023         * lib/stdio_.h (rpl_fseek): New declaration.
23024         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
23025         REPLACE_FSEEK.
23026
23027 2007-05-28  Bruno Haible  <bruno@clisp.org>
23028
23029         * lib/stdio_.h (fflush): More comments.
23030
23031 2007-05-28  Bruno Haible  <bruno@clisp.org>
23032
23033         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
23034         runtime test.
23035
23036 2007-05-28  Eric Blake  <ebb9@byu.net>
23037
23038         Improve lseek module.
23039         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
23040         * lib/unistd_.h (lseek): Scale back link warning message.
23041         * tests/test-lseek.c: Beef up test.
23042         * tests/test-lseek.sh: Exercise more facets of lseek.
23043         Reported by Bruno Haible.
23044
23045 2007-05-28  Bruno Haible  <bruno@clisp.org>
23046
23047         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
23048         to define.
23049
23050 2007-05-27  Bruno Haible  <bruno@clisp.org>
23051
23052         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
23053
23054 2007-05-27  Bruno Haible  <bruno@clisp.org>
23055
23056         * modules/openmp: New file.
23057         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
23058         Noah Misch.
23059
23060 2007-05-26  Bruno Haible  <bruno@clisp.org>
23061
23062         * modules/chdir-long (Depends-on): Add fchdir.
23063         * modules/chdir-safer (Depends-on): Likewise.
23064         * modules/fts (Depends-on): Likewise.
23065         * modules/fts-lgpl (Depends-on): Likewise.
23066         * modules/openat (Depends-on): Likewise.
23067         * modules/savewd (Depends-on): Likewise.
23068
23069 2007-05-24  Eric Blake  <ebb9@byu.net>
23070
23071         Fix lseek on mingw.
23072         * modules/lseek: New module.
23073         * m4/lseek.m4: New file.
23074         * lib/lseek.c: New file.
23075         * modules/lseek-tests: New file.
23076         * tests/test-lseek.c: New file.
23077         * tests/test-lseek.sh: New file.
23078         * MODULES.html.sh: Document lseek module.
23079         * modules/fflush (Depends-on): Add lseek, fseeko.
23080         * modules/fseeko (Depends-on): Likewise.
23081         * modules/ftello (Depends-on): Likewise.
23082         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
23083         broken.
23084         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
23085         broken.
23086         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
23087         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
23088         * lib/ftello.c (rpl_ftello): Likewise.
23089         * tests/test-fseeko.c (main): Test this.
23090         * tests/test-fseeko.sh: Likewise.
23091         * tests/test-ftello.c (main): Likewise.
23092         * tests/test-ftello.sh: Likewise.
23093         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
23094         implies replacing fseek.
23095         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
23096         HAVE_FTELLO.
23097         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
23098         * modules/unistd (Makefile.am): Likewise.
23099         * lib/unistd_.h (lseek): Declare a replacement.
23100         * doc/functions/lseek.texi (lseek): Document this fix.
23101         * doc/functions/fseek.texi (fseek): Likewise.
23102         * doc/functions/ftell.texi (ftell): Likewise.
23103
23104 2007-05-24  Bruno Haible  <bruno@clisp.org>
23105
23106         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
23107         in the printed representation of a NaN.
23108         * tests/test-vasprintf-posix.c (test_function): Likewise.
23109         * tests/test-snprintf-posix.h (test_function): Likewise.
23110         * tests/test-sprintf-posix.h (test_function): Likewise.
23111         Reported by Eric Blake.
23112
23113 2007-05-23  Eric Blake  <ebb9@byu.net>
23114
23115         Fix fseeko/ftello on cygwin 1.5.24.
23116         * doc/functions/fseeko.texi (fseeko): Document the fix.
23117         * doc/functions/ftello.texi (ftello): Document the fix.
23118         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
23119         * doc/functions/stdout.text (stdout): New file.
23120         * doc/functions/stderr.text (stderr): New file.
23121         * doc/gnulib.texi (Function Substitutes): Use new files.
23122         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
23123         prior to 1.7.0.
23124         * tests/test-ftello.c (main): Likewise for ftello.
23125         * tests/test-fseeko.sh: New file.
23126         * tests/test-ftello.sh: New file.
23127         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
23128         with seekable stdin.
23129         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
23130         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
23131         (gl_REPLACE_FSEEKO): New macro.
23132         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
23133         * modules/fseeko (Files): Distribute fseeko.c.
23134         * modules/ftello (Files): Distribute ftello.c.
23135         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
23136         mode.
23137         * lib/ftello.c (rpl_ftello): New file.
23138         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
23139         fseeko, ftello.
23140         (gl_STDIN_LARGE_OFFSET): New macro.
23141         * modules/stdio (Makefile.am): Perform the replacement.
23142         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
23143
23144 2007-05-23  Bruno Haible  <bruno@clisp.org>
23145
23146         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
23147         GNULIB_POSIXCHECK is defined.
23148
23149 2007-05-21  Bruno Haible  <bruno@clisp.org>
23150
23151         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
23152         Check also the output for NaN arguments. When cross-compiling, guess
23153         no on IRIX.
23154         * lib/vasnprintf.c: Update comments.
23155         * tests/test-vasnprintf-posix.c (strisnan): New function.
23156         (test_function): Use it.
23157         * tests/test-vasprintf-posix.c (strisnan): New function.
23158         (test_function): Use it.
23159         * tests/test-snprintf-posix.h (strisnan): New function.
23160         (test_function): Use it.
23161         * tests/test-sprintf-posix.h (strisnan): New function.
23162         (test_function): Use it.
23163         Reported by Eric Blake.
23164
23165 2007-05-20  Bruno Haible  <bruno@clisp.org>
23166
23167         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
23168         numbers that fails on BeOS.
23169         * doc/functions/frexpl.texi: Update.
23170
23171 2007-05-20  Jim Meyering  <jim@meyering.net>
23172
23173         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
23174         forced upon us by glibc-2.6.
23175
23176 2007-05-20  Bruno Haible  <bruno@clisp.org>
23177
23178         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
23179         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
23180         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
23181         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
23182         NEED_PRINTF_INFINITE.
23183         (is_infinitel): New function.
23184         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
23185         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
23186         gl_PREREQ_VASNPRINTF_INFINITE.
23187         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
23188         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
23189         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
23190         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
23191         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
23192         gl_PREREQ_VASNPRINTF_INFINITE.
23193         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
23194         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23195         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23196         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23197         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23198         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23199         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23200         * doc/functions/fprintf.texi: Update.
23201         * doc/functions/printf.texi: Update.
23202         * doc/functions/snprintf.texi: Update.
23203         * doc/functions/sprintf.texi: Update.
23204         * doc/functions/vfprintf.texi: Update.
23205         * doc/functions/vprintf.texi: Update.
23206         * doc/functions/vsnprintf.texi: Update.
23207         * doc/functions/vsprintf.texi: Update.
23208
23209 2007-05-20  Bruno Haible  <bruno@clisp.org>
23210
23211         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
23212         was not found in libc.
23213         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
23214
23215 2007-05-20  Bruno Haible  <bruno@clisp.org>
23216
23217         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
23218         printed as "-nan" instead of "nan".
23219         * tests/test-vasprintf-posix.c (test_function): Likewise.
23220         * tests/test-snprintf-posix.h (test_function): Likewise.
23221         * tests/test-sprintf-posix.h (test_function): Likewise.
23222         Needed for HP-UX 11.
23223
23224 2007-05-20  Jim Meyering  <jim@meyering.net>
23225
23226         Fix buggy test for the fchownat-deref bug.
23227         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
23228         symlink required for the run-test.  Without it, this test would
23229         always declare that fchownat doesn't work, and client code would
23230         unnecessarily use the replacement function with fixed libc.
23231         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
23232         Reported by Greg Schafer.
23233
23234 2007-05-19  Bruno Haible  <bruno@clisp.org>
23235
23236         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
23237         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
23238         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
23239         Needed for IRIX 6.5 and Solaris 2.5.1.
23240
23241 2007-05-19  Bruno Haible  <bruno@clisp.org>
23242
23243         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
23244         (test_function): Skip tests involving -0.0 on platforms where
23245         -0.0 = 0.0.
23246         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
23247         (test_function): Skip tests involving -0.0 on platforms where
23248         -0.0 = 0.0.
23249         * tests/test-snprintf-posix.h (have_minus_zero): New function.
23250         (test_function): Skip tests involving -0.0 on platforms where
23251         -0.0 = 0.0.
23252         * tests/test-sprintf-posix.h (have_minus_zero): New function.
23253         (test_function): Skip tests involving -0.0 on platforms where
23254         -0.0 = 0.0.
23255         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
23256         tests.
23257         * tests/test-printf-posix.h (test_function): Likewise.
23258         * tests/test-printf-posix.output: Remove all -0.0 related results.
23259         Needed for IRIX 6.5.
23260
23261 2007-05-19  Bruno Haible  <bruno@clisp.org>
23262
23263         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
23264         printed as "nan0x7fffffff" instead of "nan".
23265         * tests/test-vasprintf-posix.c (test_function): Likewise.
23266         * tests/test-snprintf-posix.h (test_function): Likewise.
23267         * tests/test-sprintf-posix.h (test_function): Likewise.
23268         * tests/test-fprintf-posix.h (NaN): Remove macro.
23269         (test_function): Remove all NaN related tests.
23270         * tests/test-printf-posix.h (NaN): Remove macro.
23271         (test_function): Remove all NaN related tests.
23272         * tests/test-printf-posix.output: Remove all NaN related results.
23273         Needed for IRIX 6.5.
23274
23275 2007-05-19  Bruno Haible  <bruno@clisp.org>
23276
23277         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
23278         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
23279
23280 2007-05-19  Bruno Haible  <bruno@clisp.org>
23281
23282         * lib/float_.h: New file.
23283         * m4/float_h.m4: New file.
23284         * modules/float: New file.
23285         * modules/isnanl (Dependencies): Add float.
23286         * modules/isnanl-nolibm (Dependencies): Likewise.
23287         * modules/mathl (Dependencies): Likewise.
23288         * modules/printf-frexpl (Dependencies): Likewise.
23289         * modules/signbit (Dependencies): Likewise.
23290         * modules/vasnprintf (Dependencies): Likewise.
23291         * doc/headers/float.texi: Update.
23292
23293 2007-05-19  Jim Meyering  <jim@meyering.net>
23294
23295         * lib/utimens.c (gl_futimens): Rename from futimens,
23296         now that glibc-2.6 declares futimens.
23297         * lib/utimens.h: Likewise.
23298
23299 2007-05-19  Bruno Haible  <bruno@clisp.org>
23300
23301         Avoid test failures on mingw.
23302         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
23303         * tests/test-printf-posix.sh: Likewise.
23304         * tests/test-vfprintf-posix.sh: Likewise.
23305         * tests/test-vprintf-posix.sh: Likewise.
23306
23307 2007-05-19  Bruno Haible  <bruno@clisp.org>
23308
23309         Fix *printf result for NaN, Inf, -0.0 on mingw.
23310         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
23311         * lib/vasnprintf.c: Include math.h and isnan.h.
23312         (is_infinite_or_zero): New function.
23313         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
23314         values in the %f, %F, %e, %E, %g, %G directives.
23315         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
23316         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
23317         gl_PRINTF_INFINITE and test its result. Invoke
23318         gl_PREREQ_VASNPRINTF_INFINITE.
23319         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
23320         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23321         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23322         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23323         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23324         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23325         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23326         * doc/functions/fprintf.texi: Update.
23327         * doc/functions/printf.texi: Update.
23328         * doc/functions/snprintf.texi: Update.
23329         * doc/functions/sprintf.texi: Update.
23330         * doc/functions/vfprintf.texi: Update.
23331         * doc/functions/vprintf.texi: Update.
23332         * doc/functions/vsnprintf.texi: Update.
23333         * doc/functions/vsprintf.texi: Update.
23334
23335 2007-05-19  Bruno Haible  <bruno@clisp.org>
23336
23337         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
23338         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
23339         Instead of multiplying with 10^k, set extra_zeroes to k.
23340         (scale10_round_long_double): Remove function.
23341
23342 2007-05-18  Bruno Haible  <bruno@clisp.org>
23343
23344         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
23345         introduced on 2007-05-06.
23346
23347 2007-05-18  Bruno Haible  <bruno@clisp.org>
23348
23349         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
23350         %g directives.
23351         * tests/test-vasprintf-posix.c (test_function): Likewise.
23352         * tests/test-snprintf-posix.h (test_function): Likewise.
23353         * tests/test-sprintf-posix.h (test_function): Likewise.
23354
23355 2007-05-18  Bruno Haible  <bruno@clisp.org>
23356
23357         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
23358         (strmatch): New function.
23359         (test_function): Test the %f directive on numbers of various exponents.
23360         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
23361         (strmatch): New function.
23362         (test_function): Test the %f directive on numbers of various exponents.
23363         * tests/test-snprintf-posix.h (strmatch): New function.
23364         (test_function): Test the %f directive on numbers of various exponents.
23365         * tests/test-sprintf-posix.h (strmatch): New function.
23366         (test_function): Test the %f directive on numbers of various exponents.
23367         * tests/test-snprintf-posix.c (SIZEOF): New macro.
23368         * tests/test-sprintf-posix.c (SIZEOF): New macro.
23369         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
23370         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
23371
23372 2007-05-18  Bruno Haible  <bruno@clisp.org>
23373
23374         Add support for 'long double' number output.
23375         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
23376         * lib/vasnprintf.c: Include math.h and float+.h.
23377         (mp_limb_t): New type.
23378         (GMP_LIMB_BITS): New macro.
23379         (mp_twolimb_t): New type.
23380         (GMP_TWOLIMB_BITS): New macro.
23381         (mpn_t): New type.
23382         (multiply, divide, convert_to_decimal, decode_long_double,
23383         scale10_round_long_double, scale10_round_decimal_long_double,
23384         floorlog10l): New functions.
23385         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
23386         for the %f, %F, %e, %E, %g, %G directives.
23387         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
23388         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
23389         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
23390         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
23391         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
23392         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23393         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23394         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23395         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23396         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23397         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23398         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
23399         * modules/snprintf-posix (Depends-on): Likewise.
23400         * modules/sprintf-posix (Depends-on): Likewise.
23401         * modules/vasnprintf-posix (Depends-on): Likewise.
23402         * modules/vasprintf-posix (Depends-on): Likewise.
23403         * modules/vfprintf-posix (Depends-on): Likewise.
23404         * modules/vsnprintf-posix (Depends-on): Likewise.
23405         * modules/vsprintf-posix (Depends-on): Likewise.
23406         * modules/vasnprintf (Files): Add lib/float+.h.
23407         * doc/functions/fprintf.texi: Update.
23408         * doc/functions/printf.texi: Update.
23409         * doc/functions/snprintf.texi: Update.
23410         * doc/functions/sprintf.texi: Update.
23411         * doc/functions/vfprintf.texi: Update.
23412         * doc/functions/vprintf.texi: Update.
23413         * doc/functions/vsnprintf.texi: Update.
23414         * doc/functions/vsprintf.texi: Update.
23415
23416 2007-05-18  Bruno Haible  <bruno@clisp.org>
23417
23418         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
23419
23420 2007-05-18  Bruno Haible  <bruno@clisp.org>
23421
23422         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
23423         for printing 64-bit integers. Needed for mingw.
23424
23425 2007-05-18  Bruno Haible  <bruno@clisp.org>
23426
23427         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
23428         gl_FUNC_FREXPL_WORKS.
23429         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
23430
23431 2007-05-18  Bruno Haible  <bruno@clisp.org>
23432
23433         * modules/frexpl-nolibm-tests: New file.
23434
23435         * modules/frexpl-nolibm: New file.
23436         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
23437
23438 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
23439
23440         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
23441         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
23442         GCC 4.2, which otherwise issues a lot of warnings.
23443         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
23444         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
23445         Likewise.
23446         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
23447         * modules/iconv_open (iconv.h): Likewise.
23448         * modules/locale (locale.h): Likewise.
23449         * modules/netinet_in (netinet/in.h): Likewise.
23450         * modules/sys_select (sys_select.h): Likewise.
23451         * modules/sys_socket (sys/socket.h): Likewise.
23452         * modules/sys_stat (sys/stat.h): Likewise.
23453         * modules/sysexits (sysexits.h): Likewise.
23454         * modules/unistd (unistd.h): Likewise.
23455
23456 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23457
23458         * modules/closein-tests (Makefile.am): Distribute
23459         `test-closein.sh'.
23460
23461 2007-05-17  Bruno Haible  <bruno@clisp.org>
23462
23463         * tests/test-printf-posix.output: Renamed from
23464         tests/test-fprintf-posix.out.
23465         * modules/fprintf-posix-tests: Update.
23466         * modules/printf-posix-tests: Update.
23467         * modules/vfprintf-posix-tests: Update.
23468         * modules/vprintf-posix-tests: Update.
23469         * tests/test-fprintf-posix.sh: Update.
23470         * tests/test-printf-posix.sh: Update.
23471         * tests/test-vfprintf-posix.sh: Update.
23472         * tests/test-vprintf-posix.sh: Update.
23473         Reported by Ralf Wildenhues.
23474
23475 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
23476
23477         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
23478         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
23479         GCC 4.2, which otherwise issues a lot of warnings.
23480         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
23481         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
23482         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
23483         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
23484         it should no longer be needed.
23485         * lib/string_.h: Likewise.
23486         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
23487         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
23488         * modules/inttypes (inttypes.h): Likewise.
23489         * modules/math (math.h): Likewise.
23490         * modules/search (search.h): Likewise.
23491         * modules/signal (signal.h): Likewise.
23492         * modules/stdint (stdint.h): Likewise.
23493         * modules/stdio (stdio.h): Likewise.
23494         * modules/stdlib (stdlib.h): Likewise.
23495         * modules/string (string.h): Likewise.
23496         * modules/sys_time (sys/time.h): Likewise.
23497         * modules/time (time.h): Likewise.
23498         * modules/wchar (wchar.h): Likewise.
23499         * modules/wctype (wtype.h): Likewise.
23500
23501 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
23502
23503         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
23504
23505 2007-05-13  Bruno Haible  <bruno@clisp.org>
23506
23507         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
23508         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
23509         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
23510         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
23511         (gl_PREREQ_STRTOK_R): Don't require it here.
23512
23513 2007-05-13  Bruno Haible  <bruno@clisp.org>
23514
23515         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
23516         when used in C++ mode.
23517
23518 2007-05-12  Bruno Haible  <bruno@clisp.org>
23519
23520         * lib/linebuffer.h: Tweak doc.
23521         * lib/linebuffer.c: Likewise.
23522
23523 2007-05-12  James Youngman  <jay@gnu.org>
23524
23525         * lib/linebuffer.c (readlinebuffer_delim): New function,
23526         like readlinebuffer, but use a caller-specified delimiter.
23527         (readlinebuffer): Just call readlinebuffer_delim with '\n'
23528         as the delimiter.
23529         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
23530
23531 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
23532
23533         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
23534         * modules/openat (Files): Remove openat-die.c.
23535         (Depends-on): Add openat-die.
23536         * modules/openat-die: New module.
23537
23538 2007-05-06  Bruno Haible  <bruno@clisp.org>
23539
23540         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
23541         Update with info about Cygwin.
23542         * doc/functions/fprintf.texi: Update.
23543         * doc/functions/printf.texi: Update.
23544         * doc/functions/snprintf.texi: Update.
23545         * doc/functions/sprintf.texi: Update.
23546         * doc/functions/vfprintf.texi: Update.
23547         * doc/functions/vprintf.texi: Update.
23548         * doc/functions/vsnprintf.texi: Update.
23549         * doc/functions/vsprintf.texi: Update.
23550         Reported by Eric Blake.
23551
23552 2007-05-06  Bruno Haible  <bruno@clisp.org>
23553
23554         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
23555         padding ourselves for the floating-point directives.
23556         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
23557         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
23558         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
23559         gl_PRINTF_FLAG_ZERO and test its result. Invoke
23560         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
23561         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23562         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
23563         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23564         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23565         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23566         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23567         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23568         * tests/test-snprintf-posix.h (test_function): Also check the width
23569         and some flags in the %f directive.
23570         * tests/test-sprintf-posix.h (test_function): Likewise.
23571         * tests/test-vasnprintf-posix.c (test_function): Likewise.
23572         * tests/test-vasprintf-posix.c (test_function): Likewise.
23573         * doc/functions/fprintf.texi: Update.
23574         * doc/functions/printf.texi: Update.
23575         * doc/functions/snprintf.texi: Update.
23576         * doc/functions/sprintf.texi: Update.
23577         * doc/functions/vfprintf.texi: Update.
23578         * doc/functions/vprintf.texi: Update.
23579         * doc/functions/vsnprintf.texi: Update.
23580         * doc/functions/vsprintf.texi: Update.
23581
23582 2007-05-06  Bruno Haible  <bruno@clisp.org>
23583
23584         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
23585         pass the ' flag character to sprintf or snprintf.
23586         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
23587         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
23588         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
23589         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
23590         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
23591         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23592         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
23593         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23594         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23595         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23596         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23597         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23598         * tests/test-snprintf-posix.h (test_function): Also check the grouping
23599         flag.
23600         * tests/test-sprintf-posix.h (test_function): Likewise.
23601         * tests/test-vasnprintf-posix.c (test_function): Likewise.
23602         * tests/test-vasprintf-posix.c (test_function): Likewise.
23603         * doc/functions/fprintf.texi: Update.
23604         * doc/functions/printf.texi: Update.
23605         * doc/functions/snprintf.texi: Update.
23606         * doc/functions/sprintf.texi: Update.
23607         * doc/functions/vfprintf.texi: Update.
23608         * doc/functions/vprintf.texi: Update.
23609         * doc/functions/vsnprintf.texi: Update.
23610         * doc/functions/vsprintf.texi: Update.
23611
23612 2007-05-01  Bruno Haible  <bruno@clisp.org>
23613
23614         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
23615
23616 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
23617
23618         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
23619         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
23620
23621 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
23622
23623         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
23624         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
23625         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
23626
23627 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
23628
23629         * lib/argp-help.c (struct hol_entry): New member `ord'.
23630         (HOL_ENTRY_PTRCMP): Use ord for comparison
23631         (hol_sort): Initialize ord.
23632
23633 2007-05-01  Bruno Haible  <bruno@clisp.org>
23634
23635         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
23636         Reported by Eric Blake.
23637         * doc/gnulib.texi (Function Substitutes): Update.
23638
23639 2007-05-01  Bruno Haible  <bruno@clisp.org>
23640
23641         * doc/functions.texi: Remove file, now redundant through
23642         doc/functions/*.texi.
23643
23644 2007-05-01  Bruno Haible  <bruno@clisp.org>
23645
23646         * modules/argp (Depends-on): Add sleep.
23647
23648 2007-05-01  Bruno Haible  <bruno@clisp.org>
23649
23650         * modules/sleep-tests: New file.
23651         * tests/test-sleep.c: New file.
23652
23653         * modules/sleep: New file.
23654         * lib/sleep.c: New file.
23655         * m4/sleep.m4: New file.
23656         * lib/unistd_.h (sleep): New declaration.
23657         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
23658         HAVE_SLEEP.
23659         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
23660         * doc/functions/sleep.texi: Document the sleep module.
23661
23662 2007-05-01  Bruno Haible  <bruno@clisp.org>
23663
23664         * lib/sigprocmask.h: Remove file.
23665         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
23666         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
23667         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
23668         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
23669         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
23670         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
23671         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
23672         HAVE_SIGSET_T as a shell variable.
23673         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
23674         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
23675         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
23676         (Depends-on): Add signal. Remove verify.
23677         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
23678         (Include): Mention <signal.h> instead of sigprocmask.h.
23679         * NEWS: Mention the change.
23680         * lib/fatal-signal.c: Don't include sigprocmask.h.
23681
23682 2007-05-01  Bruno Haible  <bruno@clisp.org>
23683
23684         * modules/signal: New file.
23685         * lib/signal_.h: New file.
23686         * m4/signal_h.m4: New file.
23687
23688 2007-05-01  Bruno Haible  <bruno@clisp.org>
23689
23690         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
23691         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
23692         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
23693         HAVE_WCTYPE_CTMP_BUG into wctype.h.
23694
23695 2007-05-01  Bruno Haible  <bruno@clisp.org>
23696
23697         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
23698         configure time.
23699         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
23700         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
23701         * modules/sys_stat (Makefile.am): Substitute their values into
23702         sys/stat.h.
23703
23704 2007-05-01  Bruno Haible  <bruno@clisp.org>
23705
23706         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
23707         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
23708         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
23709
23710 2007-05-01  Bruno Haible  <bruno@clisp.org>
23711
23712         * doc/header/assert.texi: Undo last change: don't mention the gnulib
23713         'assert' module here.
23714
23715 2007-05-01  Bruno Haible  <bruno@clisp.org>
23716
23717         * doc/functions/*.texi: New files.
23718         * doc/functions/google-ranking.txt: New file.
23719         * doc/gnulib.texi (Function Substitutes): New chapter.
23720         (ctime, inet_ntoa): Remove sections.
23721         * doc/ctime.texi: Remove file.
23722         * doc/inet_ntoa.texi: Remove file.
23723         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
23724         dependencies.
23725         (%.info): New rule, specifying a --reference-limit.
23726
23727 2007-05-01  Bruno Haible  <bruno@clisp.org>
23728
23729         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
23730
23731 2007-05-01  Bruno Haible  <bruno@clisp.org>
23732
23733         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
23734         the portability of 'mkdir' to mingw systems.
23735
23736 2007-05-01  Bruno Haible  <bruno@clisp.org>
23737
23738         * doc/headers/google-ranking.txt: New file.
23739
23740 2007-04-30  Eric Blake  <ebb9@byu.net>
23741
23742         Prefer fseeko to fseek.
23743         * modules/getpass (Depends-on): Add fseeko.
23744         * lib/getpass.c (getpass): Use fseeko, not fseek.
23745
23746 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
23747
23748         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
23749         assumes the sorting is stable, while most qsort implementations
23750         are not.  Use argument addresses to ensure they never compare as
23751         equal.
23752
23753         * tests/test-argp-2.sh (usage-indent test): Fix output
23754         (func_compare): Restore diff options
23755         * tests/test-argp.c: Restore #include "progname.h"
23756
23757 2007-04-29  Bruno Haible  <bruno@clisp.org>
23758
23759         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
23760         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
23761         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
23762         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
23763         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
23764         (configure.ac): Define CHECK_SNPRINTF_POSIX.
23765         (TESTS, check_PROGRAMS): Add test-snprintf.
23766         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
23767         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
23768         (TESTS, check_PROGRAMS): Add test-vsnprintf.
23769         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
23770         assertions that fail on HP-UX, OSF/1, or IRIX.
23771         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
23772
23773 2007-04-29  Bruno Haible  <bruno@clisp.org>
23774
23775         * MODULES.html.sh (posix_functions): Remove 'contents'.
23776
23777 2007-04-29  Karl Berry  <karl@gnu.org>
23778
23779         * config/srclist.txt (gendocs_template_min): new entry.
23780
23781 2007-04-29  Bruno Haible  <bruno@clisp.org>
23782
23783         Work around fpurge bug on BSD systems.
23784         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
23785         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
23786         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
23787         fpurge to rpl_fpurge if the system already has this function.
23788         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
23789         the case where the system already has this function. Correct invariants
23790         on BSD systems.
23791         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
23792         BSD systems.
23793
23794 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
23795
23796         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
23797         proposed by Sven Verdoolaege.
23798
23799         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
23800         options.
23801         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
23802         (usage and help tests): Update
23803
23804 2007-04-29  Bruno Haible  <bruno@clisp.org>
23805
23806         * tests/test-fflush.c (main): Use a file of size 17, not 10.
23807         Print more information in case of failure. Disable a test on BeOS.
23808
23809 2007-04-29  Bruno Haible  <bruno@clisp.org>
23810
23811         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
23812         This helps debugging on systems on which no gdb is available.
23813
23814 2007-04-29  Bruno Haible  <bruno@clisp.org>
23815
23816         * lib/freading.h: Improve comments.
23817         * lib/fwriting.h: Likewise.
23818         * tests/test-freading.c (main): Don't check freading immediately after
23819         repositioning. Needed for glibc.
23820
23821 2007-04-29  Bruno Haible  <bruno@clisp.org>
23822
23823         * lib/freading.c (freading): Trivial simplification.
23824
23825 2007-04-28  Bruno Haible  <bruno@clisp.org>
23826
23827         * tests/test-fwriting.c (main): Also test the interaction between
23828         fflush and fwriting.
23829         * modules/fwriting-tests (Depends-on): Add fflush.
23830
23831         * tests/test-freading.c (main): Also test the interaction between
23832         fflush and freading.
23833         * modules/freading-tests (Depends-on): Add fflush.
23834
23835 2007-04-28  Bruno Haible  <bruno@clisp.org>
23836
23837         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
23838         fseeko and ftello.
23839         Suggested by Eric Blake.
23840
23841 2007-04-28  Jim Meyering  <jim@meyering.net>
23842
23843         Avoid false-negative in gl_STDINT_H's C99 conformance test.
23844         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
23845         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
23846
23847 2007-04-27  Eric Blake  <ebb9@byu.net>
23848
23849         * doc/headers/assert.texi (assert.h): Document assert module use.
23850
23851 2007-04-27  Bruno Haible  <bruno@clisp.org>
23852
23853         * doc/headers/*.texi: New files.
23854         * doc/gnulib.texi (Header File Substitutes): New chapter.
23855         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
23856         dependencies.
23857         (standards.info ,standards.html, standards.dvi): Update dependencies.
23858         (mostlyclean, clean): New targets.
23859
23860 2007-04-27  Bruno Haible  <bruno@clisp.org>
23861
23862         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
23863         * modules/sysexits (Files, Makefile.am): Update.
23864
23865         * lib/sys_socket_.h: Renamed from lib/socket_.h.
23866         * modules/sys_socket (Files, Makefile.am): Update.
23867
23868         * lib/sys_stat_.h: Renamed from lib/stat_.h.
23869         * modules/sys_stat (Files, Makefile.am): Update.
23870
23871 2007-04-27  Eric Blake  <ebb9@byu.net>
23872
23873         * lib/freading.h: Improve comments.
23874         * lib/fwriting.h: Likewise.
23875         * lib/fflush.c: Likewise.
23876
23877         Fix closein for mingw.
23878         * modules/closein-tests: Add tests for closein.
23879         * tests/test-closein.c: New file.
23880         * tests/test-closein.sh: Likewise.
23881         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
23882         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
23883
23884 2007-04-27  Bruno Haible  <bruno@clisp.org>
23885
23886         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
23887         version is < 6.
23888         * lib/math_.h [__DECC]: Likewise.
23889         * lib/stdio_.h [__DECC]: Likewise.
23890         * lib/stdlib_.h [__DECC]: Likewise.
23891         * lib/string_.h [__DECC]: Likewise.
23892         * lib/time_.h [__DECC]: Likewise.
23893         * lib/wchar_.h [__DECC]: Likewise.
23894         * lib/wctype_.h [__DECC]: Likewise.
23895
23896 2007-04-27  Bruno Haible  <bruno@clisp.org>
23897
23898         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
23899
23900 2007-04-27  Bruno Haible  <bruno@clisp.org>
23901
23902         * lib/fflush.c: Add comments.
23903         * modules/fpurge-tests (Depends-on): Add fflush.
23904         * modules/freadable-tests (Depends-on): Likewise.
23905         * modules/fwritable-tests (Depends-on): Likewise.
23906
23907 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
23908
23909         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
23910         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
23911         Report by Bruno Haible <bruno@clisp.org>.
23912
23913 2007-04-26  Eric Blake  <ebb9@byu.net>
23914
23915         Fix fflush on mingw.
23916         * modules/fflush (Depends-on): Add freading.
23917         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
23918         but unread data.
23919
23920 2007-04-26  Eric Blake  <ebb9@byu.net>
23921         and Bruno Haible  <bruno@clisp.org>
23922
23923         Implement freading and fwriting.
23924         * lib/freading.c: New file.
23925         * lib/freading.h: Likewise.
23926         * m4/freading.m4: Likewise.
23927         * modules/freading: Likewise.
23928         * modules/freading-tests: Likewise.
23929         * tests/test-freading.c: Likewise.
23930         * lib/fwriting.c: New file.
23931         * lib/fwriting.h: Likewise.
23932         * m4/fwriting.m4: Likewise.
23933         * modules/fwriting: Likewise.
23934         * modules/fwriting-tests: Likewise.
23935         * tests/test-fwriting.c: Likewise.
23936         * MODULES.html.sh (File stream based Input/Output): Mention them.
23937
23938 2007-04-26  Bruno Haible  <bruno@clisp.org>
23939
23940         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
23941         'long' when we assume it.
23942         Suggested by Eric Blake.
23943
23944 2007-04-26  Bruno Haible  <bruno@clisp.org>
23945
23946         Ensure fseeko, ftello are declared on glibc systems.
23947         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
23948         * modules/fseeko (configure.ac-early): Likewise.
23949         * modules/ftello (configure.ac-early): Likewise.
23950         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
23951         AC_FUNC_FSEEKO for this.
23952         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
23953         (gl_CHECK_FSEEKO): Remove macro.
23954
23955 2007-04-26  Bruno Haible  <bruno@clisp.org>
23956
23957         * tests/test-fflush.c (main): Also check the ftell result after
23958         fflush and fseek/fseeko.
23959         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
23960         file descriptor position cache in the stream.
23961         * lib/fseeko.c (rpl_fseeko): Likewise.
23962
23963 2007-04-26  Bruno Haible  <bruno@clisp.org>
23964
23965         * modules/fflush-tests (Depends-on): Add fseeko.
23966
23967 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
23968             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23969
23970         * lib/argz_.h: ensure error_t definition is obtained in same
23971         mechanism system argz.h would have.
23972         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
23973         argz facilities are known bad.  Err on the side of caution if
23974         cross-compiling.
23975
23976 2007-04-25  Eric Blake  <ebb9@byu.net>
23977
23978         * lib/fpurge.c (includes): Use stdlib.h for free.
23979         * tests/test-fflush.c (main): Also test fflush-fseeko.
23980
23981 2007-04-25  Bruno Haible  <bruno@clisp.org>
23982
23983         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
23984         * lib/fseeko.c: New file.
23985         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
23986         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
23987         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
23988         gl_FUNC_FSEEKO.
23989         (gl_FUNC_FSEEKO): Invoke it.
23990         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
23991         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
23992         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
23993
23994 2007-04-25  Bruno Haible  <bruno@clisp.org>
23995
23996         * modules/fflush (Depends-on): Add ftello.
23997
23998 2007-04-25  Bruno Haible  <bruno@clisp.org>
23999
24000         * modules/ftello-tests: New file.
24001         * tests/test-ftello.c: New file.
24002
24003         * modules/ftello: New file.
24004         * m4/ftello.m4: New file.
24005         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
24006         HAVE_FTELLO.
24007         * lib/stdio_.h (ftello): New declaration.
24008         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
24009         HAVE_FTELLO.
24010
24011 2007-04-25  Bruno Haible  <bruno@clisp.org>
24012
24013         * modules/fseeko-tests: New file.
24014         * tests/test-fseeko.c: New file.
24015
24016         * modules/fseeko: New file.
24017         * m4/fseeko.m4: New file.
24018         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
24019         HAVE_FSEEKO.
24020         * lib/stdio_.h (fseeko): New declaration.
24021         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
24022         HAVE_FSEEKO.
24023
24024 2007-04-25  Bruno Haible  <bruno@clisp.org>
24025
24026         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
24027
24028 2007-04-25  Bruno Haible  <bruno@clisp.org>
24029
24030         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
24031         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
24032         * tests/test-unistd.c: Likewise.
24033         * tests/test-fcntl.c: Likewise.
24034
24035 2007-04-23  Eric Blake  <ebb9@byu.net>
24036
24037         * lib/fflush.c: Fix missing include.
24038         Reported by Bruno Haible.
24039
24040 2007-04-23  Bruno Haible  <bruno@clisp.org>
24041
24042         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
24043         Reported by Eric Blake.
24044
24045 2007-04-23  Bruno Haible  <bruno@clisp.org>
24046
24047         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
24048
24049 2007-04-23  Bruno Haible  <bruno@clisp.org>
24050
24051         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
24052
24053 2007-04-23  Bruno Haible  <bruno@clisp.org>
24054
24055         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
24056         Needed on HP-UX 11.
24057
24058 2007-04-16  Eric Blake  <ebb9@byu.net>
24059
24060         Make fflush rely on fpurge.
24061         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
24062         open coding all variants.
24063         * modules/fflush (Depends-on): Add fpurge and unistd.
24064         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
24065         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
24066
24067         Fix --with-tests compilation on cygwin.
24068         * modules/argmatch-tests (Makefile.am): List gnulib library first
24069         in LDADD.
24070         * modules/argp-tests (Makefile.am): Likewise.
24071         * modules/array-list-tests (Makefile.am): Likewise.
24072         * modules/array-oset-tests (Makefile.am): Likewise.
24073         * modules/avltree-list-tests (Makefile.am): Likewise.
24074         * modules/avltree-oset-tests (Makefile.am): Likewise.
24075         * modules/avltreehash-list-tests (Makefile.am): Likewise.
24076         * modules/carray-list-tests (Makefile.am): Likewise.
24077         * modules/dirname-tests (Makefile.am): Likewise.
24078         * modules/frexp-tests (Makefile.am): Likewise.
24079         * modules/isnanl-tests (Makefile.am): Likewise.
24080         * modules/linked-list-tests (Makefile.am): Likewise.
24081         * modules/linkedhash-list-tests (Makefile.am): Likewise.
24082         * modules/lock-tests (Makefile.am): Likewise.
24083         * modules/rbtree-list-tests (Makefile.am): Likewise.
24084         * modules/rbtree-oset-tests (Makefile.am): Likewise.
24085         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
24086         * modules/tls-tests (Makefile.am): Likewise.
24087         * modules/tsearch-tests (Makefile.am): Likewise.
24088         * modules/xvasprintf-tests (Makefile.am): Likewise.
24089
24090         Fix fpurge for cygwin.
24091         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
24092         value.
24093         * modules/fpurge-tests (Depends-on): Clean up trash.
24094
24095 2007-04-16  Simon Josefsson  <simon@josefsson.org>
24096
24097         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
24098
24099         * m4/autobuild.m4: Re-indent.
24100
24101 2007-04-13  Bruno Haible  <bruno@clisp.org>
24102
24103         * modules/fpurge-tests: New file.
24104         * tests/test-fpurge.c: New file.
24105
24106         * modules/fpurge: New file.
24107         * lib/fpurge.h: New file.
24108         * lib/fpurge.c: New file.
24109         * m4/fpurge.m4: New file.
24110
24111 2007-04-13  Bruno Haible  <bruno@clisp.org>
24112
24113         * modules/fbufmode-tests: New file.
24114         * tests/test-fbufmode.c: New file.
24115
24116         * modules/fbufmode: New file.
24117         * lib/fbufmode.h: New file.
24118         * lib/fbufmode.c: New file.
24119         * m4/fbufmode.m4: New file.
24120
24121 2007-04-13  Bruno Haible  <bruno@clisp.org>
24122
24123         * modules/fwritable-tests: New file.
24124         * tests/test-fwritable.c: New file.
24125
24126         * modules/fwritable: New file.
24127         * lib/fwritable.h: New file.
24128         * lib/fwritable.c: New file.
24129         * m4/fwritable.m4: New file.
24130
24131 2007-04-13  Bruno Haible  <bruno@clisp.org>
24132
24133         * modules/freadable-tests: New file.
24134         * tests/test-freadable.c: New file.
24135
24136         * modules/freadable: New file.
24137         * lib/freadable.h: New file.
24138         * lib/freadable.c: New file.
24139         * m4/freadable.m4: New file.
24140
24141 2007-04-13  Bruno Haible  <bruno@clisp.org>
24142
24143         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
24144         MOSTLYCLEANFILES.
24145
24146 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
24147
24148         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
24149         gzip bootstrap.conf to avoid dragging in i18n machinery.
24150         (gnulib_tool_option): Use it.
24151
24152 2007-04-13  Bruno Haible  <bruno@clisp.org>
24153
24154         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
24155         %F directives.
24156         * tests/test-vasprintf-posix.c (test_function): Likewise.
24157         * tests/test-snprintf-posix.h (test_function): Likewise.
24158         * tests/test-sprintf-posix.h (test_function): Likewise.
24159         * tests/test-fprintf-posix.h (test_function): Likewise.
24160         * tests/test-printf-posix.h (test_function): Likewise.
24161         * tests/test-fprintf-posix.out: Likewise.
24162
24163 2007-04-13  Bruno Haible  <bruno@clisp.org>
24164
24165         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
24166         * modules/tls-tests (configure.ac): Likewise.
24167         Reported by Arto C. Nirkko <anirkko@insel.ch>.
24168
24169 2007-04-13  Bruno Haible  <bruno@clisp.org>
24170
24171         * lib/tls.c (glthread_tls_get): Fix return type.
24172         Patch by Arto C. Nirkko <anirkko@insel.ch>.
24173
24174 2007-04-12  Eric Blake  <ebb9@byu.net>
24175
24176         * modules/gettime (Depends-on): Remove gettime.
24177         Reported by Dmitry V. Levin.
24178
24179 2007-04-12  Bruno Haible  <bruno@clisp.org>
24180
24181         * modules/fflush (Include): Mention <stdio.h>.
24182         * modules/strtoimax (Include): Mention <inttypes.h>.
24183         * modules/strtoumax (Include): Likewise.
24184
24185 2007-04-12  Eric Blake  <ebb9@byu.net>
24186
24187         * .cvsignore: New file.
24188         * .gitignore: Likewise.
24189
24190 2007-04-12  Bruno Haible  <bruno@clisp.org>
24191
24192         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
24193         not before, since $(LDADD) often contains libgnu.a.
24194         * modules/striconv-tests (test_striconv_LDADD): Likewise.
24195         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
24196         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
24197         Needed on Cygwin.
24198
24199 2007-04-12  Eric Blake  <ebb9@byu.net>
24200
24201         Work around glibc's failure to flush stdin on fclose.
24202         * lib/closein.c (close_stdin): Flush stdin before closing.
24203
24204         Work around glibc's failure to reset seekable stdin on exit.
24205         * modules/closein: New module.
24206         * lib/closein.c: New file.
24207         * lib/closein.h: Likewise.
24208         * m4/closein.m4: Likewise.
24209         * MODULES.html.sh (File stream based Input/Output): Document it.
24210
24211 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24212
24213         * gnulib-tool: Rename generated 'autobuild' script to
24214         'do-autobuild' in --create-megatestdir output.
24215
24216         * doc/gnulib.texi (Build robot for gnulib): Fix.
24217
24218 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24219
24220         * modules/sysexits (Depends-on): Add absolute-header.
24221
24222 2007-04-12  Eric Blake  <ebb9@byu.net>
24223
24224         No need to preserve errno on success.
24225         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
24226         Reported by Bruno Haible.
24227
24228 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24229
24230         * MODULES.html.sh (Support for maintaining and releasing
24231         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
24232
24233 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24234
24235         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
24236
24237 2007-04-12  Simon Josefsson  <simon@josefsson.org>
24238
24239         * modules/autobuild: New module.
24240
24241         * m4/autobuild.m4: New file.
24242
24243 2007-04-11  Bruno Haible  <bruno@clisp.org>
24244
24245         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
24246         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
24247         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
24248         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
24249         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
24250         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24251         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24252         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
24253         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24254         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24255         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
24256         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24257         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24258         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
24259         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24260         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24261         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
24262         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24263         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24264         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
24265         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24266         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24267         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
24268         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24269         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24270         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
24271         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
24272         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
24273         Reported by Eric Blake.
24274
24275 2007-04-11  Bruno Haible  <bruno@clisp.org>
24276
24277         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
24278
24279 2007-04-10  Bruno Haible  <bruno@clisp.org>
24280
24281         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
24282         for NaN and Infinity. Needed on FreeBSD 6.1.
24283         * tests/test-vasnprintf-posix.c (test_function): Undo last change
24284         regarding results for "%010a" of Infinity and NaN.
24285         * tests/test-vasprintf-posix.c (test_function): Likewise.
24286         * tests/test-snprintf-posix.h (test_function): Likewise.
24287         * tests/test-sprintf-posix.h (test_function): Likewise.
24288         * tests/test-fprintf-posix.h (test_function): Likewise.
24289         * tests/test-printf-posix.h (test_function): Likewise.
24290         * tests/test-fprintf-posix.out: Likewise.
24291
24292 2007-04-10  Bruno Haible  <bruno@clisp.org>
24293
24294         * modules/locale-tests: New file.
24295         * tests/test-locale.c: New file.
24296
24297         * modules/locale: New file.
24298         * lib/locale_.h: New file.
24299         * m4/locale_h.m4: New file.
24300
24301 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
24302             Bruno Haible  <bruno@clisp.org>
24303
24304         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
24305         be determined, test for availability of the copysignf, copysign,
24306         copysignl functions.
24307         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
24308         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
24309         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
24310
24311 2007-04-09  Eric Blake  <ebb9@byu.net>
24312
24313         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
24314         * modules/stdio (Makefile.am): Support fflush.
24315         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
24316         * modules/fflush: New file.
24317         * lib/fflush.c: Likewise.
24318         * m4/fflush.m4: Likewise.
24319         * modules/fflush-tests: New test.
24320         * tests/test-fflush.c: Likewise.
24321         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
24322
24323 2007-04-06  Bruno Haible  <bruno@clisp.org>
24324
24325         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
24326         (VASNPRINTF): Use signbit for faster determination whether to print a
24327         minus sign.
24328         * modules/vasnprintf (Files): Remove lib/float+.h.
24329         * modules/fprintf-posix (Depends-on): Add signbit.
24330         * modules/snprintf-posix (Depends-on): Likewise.
24331         * modules/sprintf-posix (Depends-on): Likewise.
24332         * modules/vasnprintf-posix (Depends-on): Likewise.
24333         * modules/vasprintf-posix (Depends-on): Likewise.
24334         * modules/vfprintf-posix (Depends-on): Likewise.
24335         * modules/vsnprintf-posix (Depends-on): Likewise.
24336         * modules/vsprintf-posix (Depends-on): Likewise.
24337
24338 2007-04-06  Bruno Haible  <bruno@clisp.org>
24339
24340         * tests/test-frexp.c (main): Test also the sign bit of zero results.
24341         * tests/test-frexpl.c (main): Likewise.
24342         * tests/test-ldexpl.c (main): Likewise.
24343         * modules/frexp-tests (Depends-on): Add signbit.
24344         * modules/frexpl-tests (Depdends-on): Likewise.
24345         * modules/ldexpl-tests (Depdends-on): Likewise.
24346
24347 2007-04-06  Bruno Haible  <bruno@clisp.org>
24348
24349         * modules/signbit-tests: New file.
24350         * tests/test-signbit.c: New file.
24351
24352         * modules/signbit: New file.
24353         * lib/signbitf.c: New file.
24354         * lib/signbitd.c: New file.
24355         * lib/signbitl.c: New file.
24356         * m4/signbit.m4: New file.
24357         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
24358         (signbit): New macro.
24359         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
24360         REPLACE_SIGNBIT.
24361         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
24362         REPLACE_FREXPL into math.h.
24363
24364 2007-04-06  Bruno Haible  <bruno@clisp.org>
24365
24366         * modules/isnanf-nolibm-tests: New file.
24367         * tests/test-isnanf.c: New file.
24368
24369         * modules/isnanf-nolibm: New file.
24370         * lib/isnanf.h: New file.
24371         * lib/isnanf.c: New file.
24372         * lib/isnan.c: Consider the USE_FLOAT macro.
24373         * m4/isnanf.m4: New file.
24374
24375 2007-04-06  Bruno Haible  <bruno@clisp.org>
24376
24377         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
24378         (Link): New section.
24379
24380         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
24381
24382 2007-04-06  Bruno Haible  <bruno@clisp.org>
24383
24384         Assume the 'long double' type.
24385         * m4/longdouble.m4: Remove file.
24386         * config/srclist.txt: Don't mention longdouble.m4.
24387         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
24388         * lib/float+.h: Likewise.
24389         * lib/frexp.c: Likewise.
24390         * lib/printf-args.h: Likewise.
24391         * lib/printf-args.c: Likewise.
24392         * lib/printf-frexp.c: Likewise.
24393         * lib/printf-parse.c: Likewise.
24394         * lib/vasnprintf.c: Likewise.
24395         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
24396         * m4/intl.m4: Likewise.
24397         * m4/isnanl.m4: Likewise.
24398         * m4/printf.m4: Likewise.
24399         * m4/printf-frexpl.m4: Likewise.
24400         * m4/vasnprintf.m4: Likewise.
24401         * modules/allocsa (Files): Remove m4/longdouble.m4.
24402         * modules/gettext (Files): Likewise.
24403         * modules/relocatable-prog-wrapper (Files): Likewise.
24404         * modules/vasnprintf (Files): Likewise.
24405         * modules/isnanl (Files): Likewise.
24406         (Include): Simplify.
24407         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
24408         (Include): Simplify.
24409         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
24410         (Include): Simplify.
24411         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
24412         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24413         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
24414         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24415         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
24416         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24417         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
24418         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24419         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
24420         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24421         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
24422         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
24423         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
24424         * tests/test-isnanl.c: Likewise.
24425         * tests/test-snprintf-posix.h: Likewise.
24426         * tests/test-sprintf-posix.h: Likewise.
24427         * tests/test-vasnprintf-posix.c: Likewise.
24428         * tests/test-vasnprintf-posix2.c: Likewise.
24429         * tests/test-vasprintf-posix.c: Likewise.
24430
24431 2007-04-06  Bruno Haible  <bruno@clisp.org>
24432
24433         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
24434         * lib/math_.h [__DECC]: Include the overridden include file through
24435         #include_next, outside the double-inclusion guard.
24436         * lib/stdio_.h [__DECC]: Likewise.
24437         * lib/stdlib_.h [__DECC]: Likewise.
24438         * lib/string_.h [__DECC]: Likewise.
24439         * lib/time_.h [__DECC]: Likewise.
24440         * lib/wchar_.h [__DECC]: Likewise.
24441         * lib/wctype_.h [__DECC]: Likewise.
24442         * lib/inttypes_.h [__DECC]: Likewise.
24443         Reported by Albert Chin <china@thewrittenword.com> in
24444         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
24445
24446 2007-04-04  Eric Blake  <ebb9@byu.net>
24447
24448         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
24449         1.5.x.
24450
24451 2007-04-04  Bruno Haible  <bruno@clisp.org>
24452
24453         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
24454         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
24455
24456 2007-04-04  Bruno Haible  <bruno@clisp.org>
24457
24458         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
24459         results for "%010a" of Infinity and NaN.
24460         * tests/test-vasprintf-posix.c (test_function): Likewise.
24461         * tests/test-snprintf-posix.h (test_function): Likewise.
24462         * tests/test-sprintf-posix.h (test_function): Likewise.
24463         * tests/test-fprintf-posix.h (test_function): Remove these tests.
24464         * tests/test-printf-posix.h (test_function): Likewise.
24465         * tests/test-fprintf-posix.out: Update.
24466         Needed for FreeBSD 6.1.
24467
24468 2007-04-04  Bruno Haible  <bruno@clisp.org>
24469
24470         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
24471         directly used by the gnulib modules nor by gnulib-tool.
24472
24473 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
24474
24475         * DEPENDENCIES: Give overall description of version dependency
24476         desirability.  Use more-typical names for apps.
24477         Add shell, coreutils, diffutils, grep, tar, gzip.
24478
24479 2007-04-04  Simon Josefsson  <simon@josefsson.org>
24480
24481         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
24482
24483 2007-04-04  Karl Berry  <karl@gnu.org>
24484
24485         * MODULES.html.sh (func_module): missing '.
24486
24487 2007-04-03  Bruno Haible  <bruno@clisp.org>
24488
24489         * modules/argmatch-tests (Makefile.am): New variable
24490         test_argmatch_LDADD.
24491         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
24492         * modules/array-list-tests (Makefile.am): New variable
24493         test_array_list_LDADD.
24494         * modules/array-oset-tests (Makefile.am): New variable
24495         test_array_oset_LDADD.
24496         * modules/avltree-list-tests (Makefile.am): New variable
24497         test_avltree_list_LDADD.
24498         * modules/avltree-oset-tests (Makefile.am): New variable
24499         test_avltree_oset_LDADD.
24500         * modules/avltreehash-list-tests (Makefile.am): New variable
24501         test_avltreehash_list_LDADD.
24502         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
24503         test_canonicalize_lgpl_LDADD.
24504         * modules/carray-list-tests (Makefile.am): New variable
24505         test_carray_list_LDADD.
24506         * modules/dirname-tests (Makefile.am): New variable
24507         test_dirname_LDADD.
24508         * modules/linked-list-tests (Makefile.am): New variable
24509         test_linked_list_LDADD.
24510         * modules/linkedhash-list-tests (Makefile.am): New variable
24511         test_linkedhash_list_LDADD.
24512         * modules/rbtree-list-tests (Makefile.am): New variable
24513         test_rbtree_list_LDADD.
24514         * modules/rbtree-oset-tests (Makefile.am): New variable
24515         test_rbtree_oset_LDADD.
24516         * modules/rbtreehash-list-tests (Makefile.am): New variable
24517         test_rbtreehash_list_LDADD.
24518         * modules/xvasprintf-tests (Makefile.am): New variable
24519         test_xvasprintf_LDADD.
24520         Reported by Eric Blake.
24521
24522 2007-04-03  Eric Blake  <ebb9@byu.net>
24523
24524         * DEPENDENCIES: Weaken m4 requirements.
24525
24526 2007-04-03  Bruno Haible  <bruno@clisp.org>
24527
24528         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
24529         * modules/isnanl-tests (configure.ac): Likewise.
24530
24531 2007-04-03  Ben Pfaff  <blp@gnu.org>
24532
24533         * modules/iconv_open: Add $(srcdir)/ to source directory
24534         references in Makefile fragments that call gperf, to fix VPATH
24535         builds.
24536
24537 2007-04-03  Bruno Haible  <bruno@clisp.org>
24538
24539         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
24540         * lib/ldexpl.c: Undo last change.
24541
24542 2007-04-03  Bruno Haible  <bruno@clisp.org>
24543
24544         * modules/printf-frexpl (Depends-on): Undo last change.
24545         (Files): Add m4/ldexpl.m4.
24546
24547 2007-04-03  Bruno Haible  <bruno@clisp.org>
24548
24549         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
24550         * modules/isnanl (Link): New section.
24551
24552         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
24553         * modules/frexp (Link): New section.
24554
24555         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
24556         * modules/frexpl (Link): New section.
24557
24558         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
24559         * modules/ldexpl (Link): New section.
24560
24561 2007-04-03  Bruno Haible  <bruno@clisp.org>
24562
24563         * modules/TEMPLATE-EXTENDED: New file.
24564         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
24565
24566 2007-04-03  Bruno Haible  <bruno@clisp.org>
24567
24568         * DEPENDENCIES: New file.
24569         Suggested by Simon Josefsson.
24570
24571 2007-04-03  Bruno Haible  <bruno@clisp.org>
24572
24573         * doc/gnulib.texi: Escape @.
24574
24575 2007-04-03  James Youngman  <jay@gnu.org>
24576         and Paul Eggert  <eggert@cs.ucla.edu>
24577
24578         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
24579         birthtime on all systems that have birthtime, not just those which
24580         use st_birthtimensec rather than st_birthtim.  Putting zero in
24581         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
24582         that the birth time is not available for files on an NFS mount.
24583
24584 2007-04-03  Simon Josefsson  <simon@josefsson.org>
24585
24586         * modules/memxor: Move back from crypto/, suggested by Bruno.
24587         * modules/crypto/hmac-sha1: Fix memxor dependency.
24588
24589         * modules/crypto/gc: Moved from ../.
24590
24591 2007-04-02  Eric Blake  <ebb9@byu.net>
24592
24593         * lib/ldexpl.c (includes): Avoid libm.
24594
24595         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
24596
24597 2007-04-02  Bruno Haible  <bruno@clisp.org>
24598
24599         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
24600         on IRIX.
24601
24602 2007-04-02  Bruno Haible  <bruno@clisp.org>
24603
24604         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
24605         x86 or x86_64 platforms running MacOS X.
24606         Reported by Ryan Schmidt <@ryandesign.com>.
24607
24608 2007-04-02  Bruno Haible  <bruno@clisp.org>
24609
24610         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
24611         i386.
24612
24613 2007-04-01  Simon Josefsson  <simon@josefsson.org>
24614
24615         * modules/crypto/arcfour: Moved from ../.
24616         * modules/crypto/arcfour-tests: Moved from ../.
24617         * modules/crypto/arctwo: Moved from ../.
24618         * modules/crypto/arctwo-tests: Moved from ../.
24619         * modules/crypto/des: Moved from ../.
24620         * modules/crypto/des-tests: Moved from ../.
24621         * modules/crypto/gc-arcfour: Moved from ../.
24622         * modules/crypto/gc-arcfour-tests: Moved from ../.
24623         * modules/crypto/gc-arctwo: Moved from ../.
24624         * modules/crypto/gc-arctwo-tests: Moved from ../.
24625         * modules/crypto/gc-des: Moved from ../.
24626         * modules/crypto/gc-des-tests: Moved from ../.
24627         * modules/crypto/gc-hmac-md5: Moved from ../.
24628         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
24629         * modules/crypto/gc-hmac-sha1: Moved from ../.
24630         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
24631         * modules/crypto/gc-md2: Moved from ../.
24632         * modules/crypto/gc-md2-tests: Moved from ../.
24633         * modules/crypto/gc-md4: Moved from ../.
24634         * modules/crypto/gc-md4-tests: Moved from ../.
24635         * modules/crypto/gc-md5: Moved from ../.
24636         * modules/crypto/gc-md5-tests: Moved from ../.
24637         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
24638         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
24639         * modules/crypto/gc-random: Moved from ../.
24640         * modules/crypto/gc-rijndael: Moved from ../.
24641         * modules/crypto/gc-rijndael-tests: Moved from ../.
24642         * modules/crypto/gc-sha1: Moved from ../.
24643         * modules/crypto/gc-sha1-tests: Moved from ../.
24644         * modules/crypto/gc-tests: Moved from ../.
24645         * modules/crypto/hmac-md5: Moved from ../.
24646         * modules/crypto/hmac-md5-tests: Moved from ../.
24647         * modules/crypto/hmac-sha1: Moved from ../.
24648         * modules/crypto/hmac-sha1-tests: Moved from ../.
24649         * modules/crypto/md2: Moved from ../.
24650         * modules/crypto/md2-tests: Moved from ../.
24651         * modules/crypto/md4: Moved from ../.
24652         * modules/crypto/md4-tests: Moved from ../.
24653         * modules/crypto/md5: Moved from ../.
24654         * modules/crypto/md5-tests: Moved from ../.
24655         * modules/crypto/memxor: Moved from ../.
24656         * modules/crypto/rijndael: Moved from ../.
24657         * modules/crypto/rijndael-tests: Moved from ../.
24658         * modules/crypto/sha1: Moved from ../.
24659
24660 2007-03-30  James Youngman  <jay@gnu.org>
24661
24662         * tests/test-stat-time.c (prepare_test): use chmod() rather than
24663         rename() to change the ctime of a file (because ctime is unaffected
24664         by rename on jfs2 on AIX 5.1).
24665         (main): Start by doing cleanup, in case a previous run failed leaving
24666         test files behind.
24667
24668 2007-03-31  Bruno Haible  <bruno@clisp.org>
24669
24670         Support old proprietary implementations of iconv.
24671         * modules/iconv_open: New file.
24672         * lib/iconv_.h: New file.
24673         * m4/iconv_h.m4: New file.
24674         * lib/iconv_open.c: New file.
24675         * lib/iconv_open-aix.gperf: New file.
24676         * lib/iconv_open-hpux.gperf: New file.
24677         * lib/iconv_open-irix.gperf: New file.
24678         * lib/iconv_open-osf.gperf: New file.
24679         * m4/iconv_open.m4: New file.
24680         * modules/linebreak (Depends-on): Add iconv_open.
24681         * modules/striconv (Depends-on): Likewise.
24682         * modules/striconveh (Depends-on): Likewise.
24683         * modules/unicodeio (Depends-on): Likewise.
24684         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
24685         (iconv_t)(-1).
24686         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
24687         conversion if cd is (iconv_t)(-1).
24688         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
24689         is not possible.
24690
24691 2007-03-31  Bruno Haible  <bruno@clisp.org>
24692
24693         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
24694         work on Solaris either. Protect also second use of "autodetect_jp".
24695
24696 2007-03-31  Bruno Haible  <bruno@clisp.org>
24697
24698         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
24699         the function is not present.
24700
24701 2007-03-31  Bruno Haible  <bruno@clisp.org>
24702
24703         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
24704         the function is not present.
24705
24706 2007-03-31  Bruno Haible  <bruno@clisp.org>
24707
24708         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
24709         a bug in HP-UX iconv_open().
24710
24711 2007-03-31  Bruno Haible  <bruno@clisp.org>
24712
24713         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
24714         (Mathematics <math.h>): New section, add fpieee.
24715         (Input/output <stdio.h>): Add fseterr.
24716         (Mathematics <math.h>): New section, add printf-frexp.
24717         (Container data structures): Add sublist.
24718         (Core language properties): Add fpucw, inline.
24719         (Functions for greatest-width integer types <inttypes.h>): Add
24720         imaxabs, imaxdiv, inttypes.
24721         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
24722         isnanl-nolibm, ldexp.
24723         (Mathematics <math.h>): New section, add printf-frexpl.
24724         (Support for systems lacking POSIX:2001): Add fprintf-posix,
24725         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
24726         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
24727         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
24728         (Unicode string functions): Add unistr/u*-mbtoucr.
24729         (Java): Add javacomp-script, javaexec-script.
24730         (C#): Add csharpcomp-script, csharpexec-script.
24731         (Support for building libraries and executables): Add havelib,
24732         relocatable-*.
24733         (Support for maintaining and releasing projects): Renamed from
24734         'Support for maintaining and release projects'. Add announce-gen.
24735
24736 2007-03-31  Bruno Haible  <bruno@clisp.org>
24737
24738         * README: Talk primarily about git.
24739         (git and CVS): Renamed from CVS.
24740         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
24741         gnulib is available through git.
24742         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
24743
24744 2007-03-30  Bruno Haible  <bruno@clisp.org>
24745
24746         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
24747         * lib/poll_.h: Likewise.
24748         * lib/stat_.h: Likewise.
24749         * lib/sys_time_.h: Likewise.
24750         * lib/sysexit_.h: Likewise.
24751         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
24752         * lib/stdbool_.h: Likewise.
24753         * lib/byteswap_.h: Add double-inclusion guard.
24754
24755 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
24756
24757         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
24758
24759 2007-03-30  Karl Berry  <karl@gnu.org>
24760
24761         * config/srclist-update: double space after USA in the license
24762         substitution, since that's how it's usually (?) written.
24763
24764 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
24765
24766         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
24767         reported by Bruno Haible.
24768
24769 2007-03-29  Bruno Haible  <bruno@clisp.org>
24770
24771         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
24772         a bug in AIX iconv().
24773
24774 2007-03-29  Bruno Haible  <bruno@clisp.org>
24775
24776         * modules/ldexpl-tests: New file.
24777         * tests/test-ldexpl.c: New file.
24778
24779 2007-03-29  Bruno Haible  <bruno@clisp.org>
24780
24781         * lib/ldexpl.c: Include fpucw.h.
24782         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
24783         multiplication.
24784         * modules/ldexpl (Depends-on): Add fpucw.
24785
24786 2007-03-29  Bruno Haible  <bruno@clisp.org>
24787
24788         * modules/ldexpl: New file.
24789         * m4/ldexpl.m4: New file.
24790         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
24791         set.
24792         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
24793         REPLACE_LDEXPL.
24794         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
24795         REPLACE_LDEXPL.
24796         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
24797         gl_FUNC_LDEXPL_WORKS.
24798         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
24799         * modules/mathl (Files): Remove lib/ldexpl.c.
24800         (Depends-on): Add ldexpl.
24801
24802 2007-03-29  Bruno Haible  <bruno@clisp.org>
24803
24804         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
24805
24806 2007-03-29  Bruno Haible  <bruno@clisp.org>
24807
24808         * tests/test-striconveh.c (main): Don't assume that a direct conversion
24809         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
24810         and possibly also HP-UX.
24811         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
24812         work on AIX, IRIX, HP-UX, OSF/1.
24813         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
24814         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
24815         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
24816         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
24817         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
24818         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
24819
24820 2007-03-29  Bruno Haible  <bruno@clisp.org>
24821
24822         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
24823
24824 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
24825
24826         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
24827         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
24828
24829 2007-03-29  Eric Blake  <ebb9@byu.net>
24830
24831         * lib/acl-internal.h: Remove redundant include.
24832         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
24833         Cygwin when a file is locked.
24834
24835 2007-03-29  Bruno Haible  <bruno@clisp.org>
24836
24837         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
24838         file.
24839         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
24840
24841 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
24842
24843         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
24844         try to remove a parent directory if the child couldn't be removed
24845         (except for the first rmdir, which could fail because the child
24846         doesn't exist).  Problem reported by Jeff Blaine in
24847         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
24848
24849 2007-03-28  Bruno Haible  <bruno@clisp.org>
24850
24851         * lib/striconveh.c (utf8conv_carefully): New function.
24852         (mem_cd_iconveh_internal): Invoke it.
24853
24854 2007-03-28  Bruno Haible  <bruno@clisp.org>
24855
24856         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
24857         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
24858         input.
24859         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
24860         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
24861         unistr/u8-uctomb.
24862
24863 2007-03-28  Bruno Haible  <bruno@clisp.org>
24864
24865         * modules/unistr/u8-mbtoucr: New file.
24866         * lib/unistr/u8-mbtoucr.c: New file.
24867         * modules/unistr/u16-mbtoucr: New file.
24868         * lib/unistr/u16-mbtoucr.c: New file.
24869         * modules/unistr/u16-mbtoucr: New file.
24870         * lib/unistr/u16-mbtoucr.c: New file.
24871         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
24872
24873 2007-03-27  Simon Josefsson  <simon@josefsson.org>
24874             Bruno Haible  <bruno@clisp.org>
24875
24876         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
24877         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
24878         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
24879
24880         * m4/stdio_h.m4: Add stubs for vasprintf too.
24881
24882         * modules/stdio: Support vasprintf in sed command.
24883
24884         * modules/vasprintf: Depend on stdio for prototypes.  Remove
24885         vasprintf.h.  Add stdio module indicator.
24886
24887         * lib/stdio_.h: Declare asprintf and vasprintf, based on
24888         vasprintf.h.
24889
24890         * lib/vasprintf.h: File removed.
24891
24892         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
24893         * lib/vasprintf.c: Ditto.
24894         * lib/xvasprintf.c: Ditto.
24895         * tests/test-vasprintf-posix.c: Ditto.
24896         * tests/test-vasprintf.c: Ditto.
24897
24898 2007-03-27  Bruno Haible  <bruno@clisp.org>
24899
24900         Make vasnprintf multithread-safe.
24901         * lib/vasnprintf.c (decimal_point_char): New function.
24902         (VASNPRINTF): Use it.
24903         Suggested by Simon Josefsson.
24904
24905 2007-03-27  Eric Blake  <ebb9@byu.net>
24906
24907         Support sub-second birthtime on cygwin.
24908         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
24909         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
24910         (get_stat_birthtime): Also work with st_birthtim.
24911
24912 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
24913
24914         * lib/stat-time.h (USE_BIRTHTIME): Remove.
24915         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
24916         (get_stat_birthtime_ns): Do not try to use "spare" fields.
24917         (get_stat_birthtime_ns): Simplify compile-time tests.
24918         (get_stat_birthtime): Change the API to look like
24919         get_stat_mtime etc., except return a negative tv_nsec on error.
24920         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
24921         Don't check for "spare" fields.
24922         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
24923         or for struct stat.st_birthtime, as these tests aren't used.
24924         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
24925
24926 2007-03-27  Bruno Haible  <bruno@clisp.org>
24927
24928         * lib/stat-time.h: Include <sys/stat.h>.
24929
24930 2007-03-27  James Youngman  <jay@gnu.org>
24931
24932         * lib/stat-time.h (get_stat_birthtime): New function for
24933           retrieving st_birthtime as provided by UFS2 (hence *BSD).
24934         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
24935           and its variants.
24936         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
24937         * modules/stat-time-test: New file.
24938         * tests/test-stat-time.c: New test, devised by Bruno Haible.
24939
24940 2007-03-26  Bruno Haible  <bruno@clisp.org>
24941
24942         Better support of signalling NaNs.
24943         * lib/atanl.c: Include isnanl.h.
24944         (atanl): Perform test for NaN at the beginning of the function and
24945         through a call to isnanl.
24946         * lib/cosl.c: Include isnanl.h.
24947         (cosl): Perform test for NaN at the beginning of the function and
24948         through a call to isnanl.
24949         * lib/ldexpl.c: Include isnanl.h.
24950         (ldexpl): Perform test for NaN through a call to isnanl.
24951         * lib/logl.c: Include isnanl.h.
24952         (logl): Perform test for NaN at the beginning of the function and
24953         through a call to isnanl.
24954         * lib/sinl.c: Include isnanl.h.
24955         (sinl): Perform test for NaN at the beginning of the function and
24956         through a call to isnanl.
24957         * lib/sqrtl.c: Include isnanl.h.
24958         (sqrtl): Perform test for NaN at the beginning of the function and
24959         through a call to isnanl.
24960         * lib/tanl.c: Include isnanl.h.
24961         (tanl): Perform test for NaN at the beginning of the function and
24962         through a call to isnanl.
24963         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
24964         * modules/mathl (Depends-on): Add isnanl.
24965
24966 2007-03-26  Eric Blake  <ebb9@byu.net>
24967
24968         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
24969         regression in logic sense of previous patch.
24970
24971 2007-03-26  Bruno Haible  <bruno@clisp.org>
24972
24973         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
24974         unportable shell command "if ! ...".
24975         Reported by Ralf Wildenhues.
24976
24977 2007-03-25  Bruno Haible  <bruno@clisp.org>
24978
24979         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
24980         <sysexits.h> file, and only add EX_CONFIG.
24981         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
24982         absolute file name and whether it is sufficient. Substitute also
24983         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
24984         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
24985         ABSOLUTE_SYSEXITS_H into sysexits.h.
24986
24987 2007-03-25  Bruno Haible  <bruno@clisp.org>
24988
24989         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
24990         hints is NULL.
24991
24992 2007-03-25  Bruno Haible  <bruno@clisp.org>
24993
24994         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
24995         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
24996
24997 2007-03-25  Bruno Haible  <bruno@clisp.org>
24998
24999         * lib/vasnprintf.c: Include langinfo.h.
25000         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
25001         multithread-safe.
25002         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
25003         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
25004         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
25005         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
25006         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
25007         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
25008         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
25009         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
25010         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
25011         Reported by Simon Josefsson.
25012
25013 2007-03-25  Bruno Haible  <bruno@clisp.org>
25014
25015         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
25016         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
25017         * modules/vasnprintf (Depends-on): Add stdint.
25018
25019 2007-03-25  Bruno Haible  <bruno@clisp.org>
25020
25021         * modules/fpieee: New file.
25022         * m4/fpieee.m4: New file.
25023         * modules/isnan-nolibm (Depends-on): Add fpieee.
25024         * modules/isnanl-nolibm (Depends-on): Add fpieee.
25025         * modules/isnanl (Depends-on): Add fpieee.
25026
25027 2007-03-25  Bruno Haible  <bruno@clisp.org>
25028
25029         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
25030
25031 2007-03-25  Bruno Haible  <bruno@clisp.org>
25032
25033         Avoid test failures on IRIX 6.5.
25034         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
25035         (main): Use it.
25036         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
25037         macros.
25038         (main): Use them.
25039
25040 2007-03-25  Bruno Haible  <bruno@clisp.org>
25041
25042         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
25043         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
25044         exists but doesn't work.
25045         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
25046         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
25047         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
25048         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
25049
25050 2007-03-25  Bruno Haible  <bruno@clisp.org>
25051
25052         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
25053         returns inf. Needed on IRIX 6.5.
25054
25055 2007-03-25  Bruno Haible  <bruno@clisp.org>
25056
25057         * tests/test-frexpl.c: Include isnanl-nolibm.h.
25058         (main): Use isnanl instead of x != x idiom.
25059         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
25060
25061         * tests/test-frexp.c: Include isnan.h.
25062         (main): Use isnan instead of x != x idiom.
25063         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
25064
25065 2007-03-25  Bruno Haible  <bruno@clisp.org>
25066
25067         * tests/test-frexp.c (NaN): New function/macro.
25068         (main): Use it instead of 0.0 / 0.0.
25069         * tests/test-isnan.c (NaN): New function/macro.
25070         (main): Use it instead of 0.0 / 0.0.
25071         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
25072         (test_function): Use it instead of 0.0 / 0.0.
25073         * tests/test-vasprintf-posix.c (NaN): New function/macro.
25074         (test_function): Use it instead of 0.0 / 0.0.
25075         * tests/test-snprintf-posix.h (NaN): New function/macro.
25076         (test_function): Use it instead of 0.0 / 0.0.
25077         * tests/test-sprintf-posix.h (NaN): New function/macro.
25078         (test_function): Use it instead of 0.0 / 0.0.
25079         * tests/test-fprintf-posix.h (NaN): New function/macro.
25080         (test_function): Use it instead of 0.0 / 0.0.
25081         * tests/test-printf-posix.h (NaN): New function/macro.
25082         (test_function): Use it instead of 0.0 / 0.0.
25083
25084         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
25085
25086 2007-03-25  Bruno Haible  <bruno@clisp.org>
25087
25088         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
25089
25090 2007-03-25  Bruno Haible  <bruno@clisp.org>
25091
25092         * lib/regexec.c (merge_state_with_log): Make static.
25093
25094 2007-03-25  Bruno Haible  <bruno@clisp.org>
25095
25096         * lib/trigl.c (kernel_rem_pio2): Make static.
25097
25098 2007-03-25  Bruno Haible  <bruno@clisp.org>
25099
25100         * lib/sincosl.c (sincosl_table): Make static.
25101
25102 2007-03-25  Bruno Haible  <bruno@clisp.org>
25103
25104         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
25105         if the compiler does not support C99.
25106
25107 2007-03-25  Bruno Haible  <bruno@clisp.org>
25108
25109         * modules/time (Makefile.am): Ensure all rule action lines start with a
25110         tab.
25111
25112 2007-03-24  Bruno Haible  <bruno@clisp.org>
25113
25114         * modules/tsearch-tests: New file.
25115         * tests/test-tsearch.sh: New file.
25116         * tests/test-tsearch.c: New file, mostly copied from glibc.
25117
25118         * modules/search-tests: New file.
25119         * tests/test-search.c: New file.
25120
25121         * modules/search: New file.
25122         * lib/search_.h: New file, incorporating lib/tsearch.h.
25123         * m4/search_h.m4: New file.
25124         * lib/tsearch.h: Remove file.
25125         * lib/tsearch.c: Include search.h instead of tsearch.h.
25126         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
25127         HAVE_TSEARCH.
25128         * modules/tsearch (Files): Remove lib/tsearch.h.
25129         (Depends-on): Add search.
25130         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
25131         (Include): Change tsearch.h into search.h.
25132
25133 2007-03-24  Bruno Haible  <bruno@clisp.org>
25134
25135         * modules/fpucw: New file.
25136         * lib/fpucw.h: New file.
25137         * lib/frexp.c: Include fpucw.h.
25138         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
25139         (FUNC): Use them.
25140         * lib/printf-frexp.c: Include fpucw.h.
25141         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
25142         (FUNC): Use them.
25143         * lib/vasnprintf.c: Include fpucw.h.
25144         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
25145         'long double' calculations.
25146         * tests/test-frexpl.c: Include fpucw.h.
25147         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
25148         * tests/test-printf-frexpl.c: Include fpucw.h.
25149         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
25150         * modules/frexpl (Depends-on): Add fpucw.
25151         * modules/printf-frexpl (Depends-on): Likewise.
25152         * modules/fprintf-posix (Depends-on): Likewise.
25153         * modules/snprintf-posix (Depends-on): Likewise.
25154         * modules/sprintf-posix (Depends-on): Likewise.
25155         * modules/vasnprintf-posix (Depends-on): Likewise.
25156         * modules/vasprintf-posix (Depends-on): Likewise.
25157         * modules/vfprintf-posix (Depends-on): Likewise.
25158         * modules/vsnprintf-posix (Depends-on): Likewise.
25159         * modules/vsprintf-posix (Depends-on): Likewise.
25160         * modules/frexpl-tests (Depends-on): Likewise.
25161         * modules/printf-frexpl-tests (Depends-on): Likewise.
25162
25163 2007-03-24  Bruno Haible  <bruno@clisp.org>
25164
25165         * lib/float+.h: New file.
25166         * lib/isnan.c: Include float+.h.
25167         (SIZE): New macro.
25168         (FUNC): Compare only SIZE bytes of the value.
25169         * lib/vasnprintf.c: Include float+.h.
25170         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
25171         SIZEOF_LDBL or SIZEOF_DBL bytes.
25172         * modules/isnan-nolibm (Files): Add lib/float+.h.
25173         * modules/isnanl-nolibm (Files): Add lib/float+.h.
25174         * modules/isnanl (Files): Add lib/float+.h.
25175         * modules/vasnprintf (Files): Add lib/float+.h.
25176
25177 2007-03-24  Bruno Haible  <bruno@clisp.org>
25178
25179         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
25180         include isnanl-nolibm.h.
25181
25182 2007-03-24  Bruno Haible  <bruno@clisp.org>
25183
25184         * tests/test-read-file.c (main): Don't produce spurious output for
25185         expected situations. Make the test fail if it encountered unexpected
25186         results.
25187
25188 2007-03-24  Bruno Haible  <bruno@clisp.org>
25189
25190         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
25191         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
25192
25193 2007-03-24  Bruno Haible  <bruno@clisp.org>
25194
25195         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
25196
25197 2007-03-24  Bruno Haible  <bruno@clisp.org>
25198
25199         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
25200         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
25201
25202         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
25203         * modules/utf8-ucs4: Turn into a symbolic link to module
25204         unistr/u8-mbtouc.
25205
25206         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
25207         utf8-ucs4-unsafe.
25208         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
25209         unistr/u8-mbtouc-unsafe.
25210
25211         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
25212         * modules/utf16-ucs4: Turn into a symbolic link to module
25213         unistr/u16-mbtouc.
25214
25215         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
25216         utf16-ucs4-unsafe.
25217         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
25218         unistr/u16-mbtouc-unsafe.
25219
25220         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
25221         * modules/ucs4-utf8: Turn into a symbolic link to module
25222         unistr/u8-ubtomb.
25223
25224         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
25225         * modules/ucs4-utf16: Turn into a symbolic link to module
25226         unistr/u16-ubtomb.
25227
25228 2007-03-24  Bruno Haible  <bruno@clisp.org>
25229
25230         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
25231         Enable the function only if HAVE_INLINE.
25232         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
25233         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
25234         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
25235         Enable the function only if HAVE_INLINE.
25236         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
25237         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
25238         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
25239         Enable the function only if HAVE_INLINE.
25240         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
25241         Enable the function only if HAVE_INLINE.
25242         * modules/utf8-ucs4: Update.
25243         * modules/utf8-ucs4-unsafe: Update.
25244         * modules/utf16-ucs4: Update.
25245         * modules/utf16-ucs4-unsafe: Update.
25246         * modules/ucs4-utf8: Update.
25247         * modules/ucs4-utf16: Update.
25248
25249 2007-03-24  Bruno Haible  <bruno@clisp.org>
25250
25251         * lib/utf8-ucs4.h: Remove file.
25252         * lib/utf8-ucs4-unsafe.h: Remove file.
25253         * lib/utf16-ucs4.h: Remove file.
25254         * lib/utf16-ucs4-unsafe.h: Remove file.
25255         * lib/ucs4-utf8.h: Remove file.
25256         * lib/ucs4-utf16.h: Remove file.
25257         * lib/unistr.h: Include their previous contents.
25258         * m4/utf-ucs4.m4: Remove file.
25259         * m4/ucs4-utf.m4: Remove file.
25260         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
25261         (Depends-on): Add unistr/base.
25262         (configure.ac): Remove gl_UTF_UCS4.
25263         (Makefile.am): Update.
25264         (Include): Change to unistr.h.
25265         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
25266         (Depends-on): Add unistr/base.
25267         (configure.ac): Remove gl_UTF_UCS4.
25268         (Makefile.am): Update.
25269         (Include): Change to unistr.h.
25270         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
25271         (Depends-on): Add unistr/base.
25272         (configure.ac): Remove gl_UTF_UCS4.
25273         (Makefile.am): Update.
25274         (Include): Change to unistr.h.
25275         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
25276         (Depends-on): Add unistr/base.
25277         (configure.ac): Remove gl_UTF_UCS4.
25278         (Makefile.am): Update.
25279         (Include): Change to unistr.h.
25280         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
25281         (Depends-on): Add unistr/base.
25282         (configure.ac): Remove gl_UCS4_UTF.
25283         (Makefile.am): Update.
25284         (Include): Change to unistr.h.
25285         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
25286         (Depends-on): Add unistr/base.
25287         (configure.ac): Remove gl_UCS4_UTF.
25288         (Makefile.am): Update.
25289         (Include): Change to unistr.h.
25290         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
25291         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
25292         utf8-ucs4-unsafe.h.
25293         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
25294         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
25295         utf16-ucs4-unsafe.h.
25296         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
25297         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
25298         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
25299         * lib/unistr/u8-strchr.c: Likewise.
25300         * lib/unistr/u8-strrchr.c: Likewise.
25301         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
25302         * lib/unistr/u16-strchr.c: Likewise.
25303         * lib/unistr/u16-strrchr.c: Likewise.
25304         * lib/striconveh.c: Update.
25305         * lib/linebreak.c: Update.
25306
25307 2007-03-24  Bruno Haible  <bruno@clisp.org>
25308
25309         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
25310         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
25311
25312 2007-03-22  Bruno Haible  <bruno@clisp.org>
25313
25314         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
25315
25316 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
25317
25318         * MODULES.html.sh (File system functions): New module write-any-file.
25319         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
25320         * m4/write-any-file.m4: New files.
25321
25322 2007-03-23  Eric Blake  <ebb9@byu.net>
25323
25324         * gnulib-tool: Rearrange space-tab sequences, since some editors
25325         like to eat them.
25326
25327 2007-03-23  Eric Blake  <ebb9@byu.net>
25328
25329         * lib/version-etc.c (version_etc_va): Update license wording to
25330         be more concise.  Recommended by Richard Stallman.
25331
25332 2007-03-22  Bruno Haible  <bruno@clisp.org>
25333
25334         * lib/poll.c (MSG_PEEK): New fallback definition.
25335
25336 2007-03-22  Bruno Haible  <bruno@clisp.org>
25337
25338         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
25339         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
25340         (main): Update.
25341         Fixes a compilation error on BeOS.
25342
25343 2007-03-22  Bruno Haible  <bruno@clisp.org>
25344
25345         * modules/frexpl-tests: New file.
25346         * tests/test-frexpl.c: New file.
25347
25348         * modules/frexpl: New file.
25349         * m4/frexpl.m4: New file.
25350         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
25351         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
25352         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
25353         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
25354         (Depends-on): Add frexpl. Remove isnanl-nolibm.
25355         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
25356
25357 2007-03-22  Bruno Haible  <bruno@clisp.org>
25358
25359         * lib/frexpl.c: Share code with lib/frexp.c.
25360         * modules/mathl (Files): Add lib/frexp.c.
25361         (Depends-on): Add isnanl-nolibm.
25362
25363 2007-03-22  Bruno Haible  <bruno@clisp.org>
25364
25365         * modules/printf-frexp (Files): Add m4/frexp.m4.
25366         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
25367         only if the found frexp function actually works.
25368
25369 2007-03-22  Bruno Haible  <bruno@clisp.org>
25370
25371         * lib/frexp.c: Remove older implementation that uses divisions.
25372
25373 2007-03-21  Bruno Haible  <bruno@clisp.org>
25374
25375         * modules/frexp-tests: New file.
25376         * tests/test-frexp.c: New file.
25377
25378         * modules/frexp: New file.
25379         * lib/frexp.c: New file.
25380         * m4/frexp.m4: New file.
25381         * lib/math_.h (frexp): New declaration.
25382         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
25383         REPLACE_FREXP.
25384         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
25385
25386 2007-03-21  Bruno Haible  <bruno@clisp.org>
25387
25388         * modules/isnanl-tests: New file.
25389         * tests/test-isnanl.c: New file.
25390
25391         * modules/isnanl: New file.
25392         * lib/isnanl.h: New file.
25393         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
25394         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
25395         gl_FUNC_ISNANL_WORKS.
25396         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
25397         New macros.
25398
25399 2007-03-21  Bruno Haible  <bruno@clisp.org>
25400
25401         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
25402         lib/isnanl.h.
25403         (Include): Update.
25404         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
25405         * lib/vasnprintf.c: Update.
25406         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
25407         tests/test-isnanl.h, remove tests/test-isnanl.c.
25408         (Makefile.am): Update.
25409         * tests/test-isnanl-nolibm.c: New file.
25410         * tests/test-isnanl.h: New file.
25411         * tests/test-isnanl.c: Remove file.
25412
25413 2007-03-21  Jim Meyering  <jim@meyering.net>
25414
25415         When trying to open ".", treat ESTALE like EACCES.
25416         * lib/savewd.c (savewd_save): Resort to forking not just upon
25417         failure with EACCES, but also when errno is ESTALE.
25418
25419 2007-03-20  Bruno Haible  <bruno@clisp.org>
25420
25421         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
25422         Needed on AIX 5.1. Reported by Matthew Woehlke.
25423
25424 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
25425
25426         Suggestions by Bruno Haible:
25427         * lib/acl-internal.h: Include "gettext.h" rather than rolling
25428         our own.
25429         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
25430         * modules/acl (Depends-on): Add gettext.
25431
25432 2007-03-19  Bruno Haible  <bruno@clisp.org>
25433
25434         * modules/iconvme: Remove file.
25435         * lib/iconvme.h: Remove file.
25436         * lib/iconvme.c: Remove file.
25437         * m4/iconvme.m4: Remove file.
25438
25439 2007-03-19  Bruno Haible  <bruno@clisp.org>
25440
25441         * doc/relocatable-maint.texi: Break long shell script line.
25442         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
25443
25444 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
25445
25446         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
25447         handle file_has_acl.
25448         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
25449         * lib/acl.c: Move header inclusions and related macro defns into
25450         lib/acl-internal.h.
25451         (S_ISLNK): Remove defn, since that's now done for us.
25452         (file_has_acl): Move to lib/file-has-acl.c.
25453         Call acl_trivial if available.  This is the crucial part of the fix.
25454         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
25455         shared within the library.  Rewrite a bit, partly to make it compatible
25456         with the GNU coding style.
25457         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
25458         Remove unnecessary double-quotes.
25459         Don't test for acl_to_text; the build will catch that.
25460         Replace acl_entries if it doesn't exist and it is needed.
25461         Check for -lsec and acl_trivial (as used on Solaris 10).
25462         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
25463         lib/file-has-acl.c.
25464         (Depends-on): Add sys_stat, for S_ISLNK.
25465
25466 2007-03-19  Ben Pfaff  <blp@gnu.org>
25467
25468         * doc/gnulib.texi: Fix typos.
25469         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
25470
25471 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
25472
25473         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
25474         If size is zero here, buf must be zero.
25475
25476 2007-03-19  Simon Josefsson  <simon@josefsson.org>
25477
25478         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
25479         <bruno@clisp.org>.
25480
25481 2007-03-18  Bruno Haible  <bruno@clisp.org>
25482
25483         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
25484         Suggested by Eric Blake.
25485
25486 2007-03-18  Ben Pfaff  <blp@gnu.org>
25487
25488         * doc/relocatable.texi: Recommend using as prefix a directory
25489         that does not exist and will never be created.  Based on
25490         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
25491         and others.
25492
25493 2007-03-17  Bruno Haible  <bruno@clisp.org>
25494
25495         * lib/fchownat.c: Include lchown.h.
25496
25497 2007-03-17  Bruno Haible  <bruno@clisp.org>
25498
25499         Fix endless loop when the given allocated size was > INT_MAX.
25500         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
25501         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
25502         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
25503         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
25504         * lib/sprintf.c (sprintf): Likewise.
25505
25506 2007-03-17  Bruno Haible  <bruno@clisp.org>
25507
25508         * tests/test-argp-2.sh (func_compare): Output a context diff.
25509
25510 2007-03-17  Bruno Haible  <bruno@clisp.org>
25511
25512         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
25513         locale's decimal-point character.
25514
25515 2007-03-17  Bruno Haible  <bruno@clisp.org>
25516
25517         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
25518         before comparing it. Needed because on some platforms (e.g. x86) a
25519         'long double' occupies less bytes than sizeof (long double).
25520
25521 2007-03-17  Bruno Haible  <bruno@clisp.org>
25522
25523         * tests/test-crc.c (main): Make printf statements 64-bit clean.
25524         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
25525         * tests/test-getaddrinfo.c (simple): Likewise.
25526         * tests/test-read-file.c (main): Likewise.
25527
25528 2007-03-17  Bruno Haible  <bruno@clisp.org>
25529
25530         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
25531
25532 2007-03-17  Bruno Haible  <bruno@clisp.org>
25533
25534         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
25535         unused variable.
25536
25537 2007-03-17  Bruno Haible  <bruno@clisp.org>
25538
25539         * tests/test-c-strcasecmp.c: Include c-strcase.h.
25540         * tests/test-c-strncasecmp.c: Likewise.
25541
25542 2007-03-17  Bruno Haible  <bruno@clisp.org>
25543
25544         * modules/stdlib (Depends-on): Add unistd.
25545         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
25546         Needed for MacOS X 10.3.
25547
25548 2007-03-17  Bruno Haible  <bruno@clisp.org>
25549
25550         * lib/unistr/u-strdup.h: Include <stdlib.h>.
25551
25552 2007-03-17  Bruno Haible  <bruno@clisp.org>
25553
25554         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
25555
25556 2007-03-17  Bruno Haible  <bruno@clisp.org>
25557
25558         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
25559         to reflect files copied from gnulib (with or without modifications).
25560         Suggested by Jim Meyering.
25561
25562 2007-03-17  Eric Blake  <ebb9@byu.net>
25563
25564         * NEWS: Document stdlib change from 2007-02-18.
25565
25566 2007-03-17  Jim Meyering  <jim@meyering.net>
25567
25568         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
25569         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
25570         someone uses a name containing shell meta-characters.
25571         Reported by Alfred M. Szmidt.
25572
25573         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
25574
25575 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
25576
25577         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
25578         and copy gettext configuration files only if configure.ac contains
25579         a use of AM_GNU_GETTEXT_VERSION.
25580
25581 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
25582
25583         * build-aux/bootstrap (gnulib_name): New variable.
25584         (gnulib_tool_options): Use it.
25585
25586 2007-03-13  Simon Josefsson  <simon@josefsson.org>
25587
25588         * tests/test-des.c: Use new namespace.
25589
25590 2007-03-15  Bruno Haible  <bruno@clisp.org>
25591
25592         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
25593         Reported by James Youngman <jay@gnu.org>.
25594
25595 2007-03-15  Bruno Haible  <bruno@clisp.org>
25596
25597         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
25598         declared prototype. Needed with cc on OSF/1 5.1.
25599
25600 2007-03-15  Bruno Haible  <bruno@clisp.org>
25601
25602         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
25603         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
25604         (struct gl_list_implementation): Add dispose_fn argument to the
25605         'create_empty', 'create' methods.
25606         (struct gl_list_impl_base): Add field 'dispose_fn'.
25607         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
25608         argument.
25609         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
25610         dispose_fn argument.
25611         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
25612         dispose_fn on the dropped values.
25613         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
25614         dispose_fn argument.
25615         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
25616         dropped values.
25617         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
25618         (gl_tree_remove_node): Call dispose_fn on the dropped value.
25619         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
25620         (gl_tree_remove_node): Call dispose_fn on the dropped value.
25621         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
25622         argument.
25623         (gl_tree_list_free): Call dispose_fn on the dropped values.
25624         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
25625         the dropped values.
25626         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
25627         Add dispose_fn argument.
25628         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
25629         Call dispose_fn on the dropped values.
25630         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
25631         Add dispose_fn argument.
25632         (gl_sublist_create): Initialize the 'dispose_fn' field.
25633         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
25634         * tests/test-array_list.c (main): Update.
25635         * tests/test-carray_list.c (main): Update.
25636         * tests/test-avltree_list.c (main): Update.
25637         * tests/test-rbtree_list.c (main): Update.
25638         * tests/test-avltreehash_list.c (main): Update.
25639         * tests/test-rbtreehash_list.c (main): Update.
25640         * tests/test-linked_list.c (main): Update.
25641         * tests/test-linkedhash_list.c (main): Update.
25642         * tests/test-array_oset.c (main): Update.
25643
25644 2007-03-15  Bruno Haible  <bruno@clisp.org>
25645
25646         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
25647         (gl_oset_create_empty): Add dispose_fn argument.
25648         (struct gl_oset_implementation): Add dispose_fn argument to
25649         'create_empty' method.
25650         (struct gl_oset_impl_base): Add dispose_fn field.
25651         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
25652         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
25653         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
25654         values.
25655         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
25656         (gl_tree_oset_free): Call dispose_fn on the dropped values.
25657         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
25658         dropped value.
25659         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
25660         dropped value.
25661         * tests/test-array_oset.c (main): Update.
25662         * tests/test-avltree_oset.c (main): Update.
25663         * tests/test-rbtree_oset.c (main): Update.
25664         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
25665
25666 2007-03-13  Bruno Haible  <bruno@clisp.org>
25667
25668         * tests/test-stdbool.c (i): Update after last patch.
25669
25670 2007-03-12  Bruno Haible  <bruno@clisp.org>
25671
25672         * lib/quotearg.c: Include <wctype.h> early, before the definition of
25673         the iswprint macro. Needed on Solaris 2.5.1.
25674
25675 2007-03-12  Bruno Haible  <bruno@clisp.org>
25676
25677         * tests/test-printf-frexp.c (main): Declare x as volatile.
25678
25679 2007-03-12  Simon Josefsson  <simon@josefsson.org>
25680
25681         * doc/gnulib.texi (Build robot for gnulib): New section.
25682
25683 2007-03-12  Jim Meyering  <jim@meyering.net>
25684
25685         * build-aux/bootstrap: New file.
25686         * build-aux/bootstrap.conf: New file, from coreutils.
25687
25688 2007-03-11  Bruno Haible  <bruno@clisp.org>
25689
25690         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
25691
25692 2007-03-12  Simon Josefsson  <simon@josefsson.org>
25693
25694         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
25695         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
25696         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
25697
25698 2007-03-11  Bruno Haible  <bruno@clisp.org>
25699
25700         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
25701         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
25702
25703 2007-03-11  Bruno Haible  <bruno@clisp.org>
25704
25705         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
25706         formula. Needed for SunPRO C 5.0.
25707
25708 2007-03-11  Bruno Haible  <bruno@clisp.org>
25709
25710         * modules/long-options (Depends-on): Add getopt.
25711
25712 2007-03-11  Bruno Haible  <bruno@clisp.org>
25713
25714         * modules/modechange (Depends-on): Add stdbool.
25715
25716 2007-03-11  Bruno Haible  <bruno@clisp.org>
25717
25718         * modules/i-ring (Depends-on): Add stdbool.
25719
25720 2007-03-11  Bruno Haible  <bruno@clisp.org>
25721
25722         * modules/gc-des (Depends-on): Add stdbool.
25723
25724 2007-03-11  Bruno Haible  <bruno@clisp.org>
25725
25726         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
25727
25728 2007-03-11  Bruno Haible  <bruno@clisp.org>
25729
25730         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
25731
25732 2007-03-11  Bruno Haible  <bruno@clisp.org>
25733
25734         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
25735
25736 2007-03-11  Bruno Haible  <bruno@clisp.org>
25737
25738         * lib/vasnprintf.c (sprintf): Undefine.
25739
25740 2007-03-11  Bruno Haible  <bruno@clisp.org>
25741
25742         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
25743         initializers in SunPRO C and Compaq C compilers.
25744
25745 2007-03-11  Bruno Haible  <bruno@clisp.org>
25746
25747         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
25748         decrementing code ANSI C compliant.
25749
25750 2007-03-11  Bruno Haible  <bruno@clisp.org>
25751
25752         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
25753         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
25754
25755 2007-03-11  Bruno Haible  <bruno@clisp.org>
25756
25757         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
25758         <stdbool.h> substitute doesn't pass.
25759
25760 2007-03-11  Bruno Haible  <bruno@clisp.org>
25761
25762         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
25763
25764 2007-03-11  Bruno Haible  <bruno@clisp.org>
25765
25766         * gnulib-tool (func_create_megatestdir): Create also an autobuild
25767         script, for submission to autobuild.josefsson.org.
25768
25769 2007-03-10  Bruno Haible  <bruno@clisp.org>
25770
25771         * modules/canonicalize-lgpl-tests: New file.
25772         * tests/test-canonicalize-lgpl.sh: New file.
25773         * tests/test-canonicalize-lgpl.c: New file.
25774
25775         * modules/c-strcase-tests: New file.
25776         * tests/test-c-strcase.sh: New file.
25777         * tests/test-c-strcasecmp.c: New file.
25778         * tests/test-c-strncasecmp.c: New file.
25779
25780         * modules/atexit-tests: New file.
25781         * tests/test-atexit.sh: New file.
25782         * tests/test-atexit.c: New file.
25783
25784 2007-03-10  Bruno Haible  <bruno@clisp.org>
25785
25786         * tests/test-binary-io.sh: Use temporary filenames that are not so
25787         likely to clash with those of other tests (in a parallel make).
25788         * tests/test-binary-io.c: Likewise.
25789
25790 2007-03-10  Bruno Haible  <bruno@clisp.org>
25791
25792         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
25793         fallback; use #error instead.
25794         Suggested by Simon Josefsson.
25795
25796 2007-03-10  Bruno Haible  <bruno@clisp.org>
25797
25798         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
25799         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
25800         first and the last.
25801
25802 2007-03-10  Bruno Haible  <bruno@clisp.org>
25803
25804         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
25805
25806 2007-03-10  Bruno Haible  <bruno@clisp.org>
25807
25808         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
25809         "make distcheck".
25810         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
25811         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
25812         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
25813
25814 2007-03-10  Bruno Haible  <bruno@clisp.org>
25815
25816         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
25817         variable.
25818         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
25819         variable.
25820
25821 2007-03-09  Eric Blake  <ebb9@byu.net>
25822         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
25823
25824         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
25825         types are not being provided by gnulib.
25826         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
25827         types are supported.
25828
25829 2007-03-10  Bruno Haible  <bruno@clisp.org>
25830
25831         * lib/stdio_.h (__attribute__): New macro.
25832         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
25833         vsprintf): Specify __attribute__ __format__ for GCC.
25834         Suggested by Eric Blake.
25835
25836 2007-03-09  Bruno Haible  <bruno@clisp.org>
25837
25838         * modules/printf-posix-tests: New file.
25839         * tests/test-printf-posix.sh: New file.
25840         * tests/test-printf-posix.c: New file.
25841
25842         * modules/printf-posix: New file.
25843         * lib/printf.c: New file.
25844         * m4/printf-posix-rpl.m4: New file.
25845         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
25846         REPLACE_PRINTF.
25847         * lib/stdio_.h (printf): New declaration.
25848         (format, __format__, ____printf____, ____scanf____, ____strftime____,
25849         ____strfmon____): New macros.
25850         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
25851         REPLACE_PRINTF.
25852
25853 2007-03-09  Bruno Haible  <bruno@clisp.org>
25854
25855         * tests/test-vasnprintf-posix2.sh: New file.
25856         * tests/test-vasnprintf-posix2.c: New file.
25857         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
25858         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
25859         (Makefile.am): Activate test-vasnprintf-posix2.sh.
25860
25861         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
25862         a locale dependent decimal point, rather than always '.'.
25863
25864 2007-03-09  Eric Blake  <ebb9@byu.net>
25865
25866         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
25867         spite of platforms like Tandem/NSK that define it to -1.
25868
25869 2007-03-08  Bruno Haible  <bruno@clisp.org>
25870
25871         * modules/vprintf-posix-tests: New file.
25872         * tests/test-vprintf-posix.sh: New file.
25873         * tests/test-vprintf-posix.c: New file.
25874         * tests/test-printf-posix.h: New file.
25875
25876         * modules/vprintf-posix: New file.
25877         * lib/vprintf.c: New file.
25878         * m4/vprintf-posix.m4: New file.
25879         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
25880         REPLACE_VPRINTF.
25881         * lib/stdio_.h (vprintf): New declaration.
25882         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
25883         REPLACE_VPRINTF.
25884
25885 2007-03-08  Bruno Haible  <bruno@clisp.org>
25886
25887         * modules/fprintf-posix-tests: New file.
25888         * tests/test-fprintf-posix.sh: New file.
25889         * tests/test-fprintf-posix.c: New file.
25890
25891         * modules/fprintf-posix: New file.
25892         * lib/fprintf.c: New file.
25893         * m4/fprintf-posix.m4: New file.
25894         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
25895         REPLACE_FPRINTF.
25896         * lib/stdio_.h (fprintf): New declaration.
25897         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
25898         REPLACE_FPRINTF.
25899
25900 2007-03-08  Bruno Haible  <bruno@clisp.org>
25901
25902         * modules/vfprintf-posix-tests: New file.
25903         * tests/test-vfprintf-posix.sh: New file.
25904         * tests/test-vfprintf-posix.c: New file.
25905         * tests/test-fprintf-posix.h: New file.
25906         * tests/test-fprintf-posix.out: New file.
25907
25908         * modules/vfprintf-posix: New file.
25909         * lib/vfprintf.c: New file.
25910         * m4/vfprintf-posix.m4: New file.
25911         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
25912         REPLACE_VFPRINTF.
25913         * lib/stdio_.h (vfprintf): New declaration.
25914         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
25915         REPLACE_VFPRINTF.
25916
25917 2007-03-08  Bruno Haible  <bruno@clisp.org>
25918
25919         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
25920
25921 2007-03-08  Bruno Haible  <bruno@clisp.org>
25922
25923         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
25924         instead of 'expr' invocations.
25925         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
25926         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
25927         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
25928         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
25929         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
25930         Suggested by Paul Eggert.
25931
25932 2007-03-08  Bruno Haible  <bruno@clisp.org>
25933
25934         * modules/fseterr-tests: New file.
25935         * tests/test-fseterr.c: New file.
25936
25937         * modules/fseterr: New file.
25938         * lib/fseterr.h: New file.
25939         * lib/fseterr.c: New file.
25940
25941 2007-03-08  Bruno Haible  <bruno@clisp.org>
25942
25943         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
25944         * lib/getopt_.h: Likewise.
25945         * lib/mbswidth.h: Likewise.
25946         * lib/setenv.h: Likewise.
25947         * lib/vasnprintf.h: Likewise.
25948         * lib/vasprintf.h: Likewise.
25949         * lib/verror.h: Likewise.
25950         * lib/xsetenv.h: Likewise.
25951         * lib/xvasprintf.h: Likewise.
25952
25953 2007-03-08  Jim Meyering  <jim@meyering.net>
25954
25955         * users.txt: Add parted.
25956
25957         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
25958
25959 2007-03-07  Bruno Haible  <bruno@clisp.org>
25960
25961         * m4/printf.m4: Make the shell script snippets copy&pastable.
25962
25963 2007-03-02  Bruno Haible  <bruno@clisp.org>
25964
25965         * lib/netinet_in_.h: New file.
25966         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
25967         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
25968         * modules/netinet_in (Files): Add lib/netinet_in_.h.
25969         (Depends-on): Add absolute-header.
25970         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
25971         into netinet/in.h.
25972
25973 2007-03-03  Bruno Haible  <bruno@clisp.org>
25974
25975         * lib/sys_select_.h: New file.
25976         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
25977         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
25978         * modules/sys_select (Files): Add lib/sys_select_.h.
25979         (Depends-on): Add absolute-header.
25980         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
25981         into sys/select.h.
25982
25983 2007-03-02  Bruno Haible  <bruno@clisp.org>
25984
25985         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
25986         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
25987         values.
25988         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
25989         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
25990         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
25991         * modules/sys_socket (Depends-on): Add absolute-header.
25992         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
25993         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
25994         (Include): Remove requirement of inclusion of <sys/types.h>.
25995
25996 2007-03-02  Bruno Haible  <bruno@clisp.org>
25997
25998         * lib/byteswap_.h (bswap_32): Fix formula.
25999
26000 2007-03-06  Bruno Haible  <bruno@clisp.org>
26001
26002         * modules/sprintf-posix-tests: New file.
26003         * tests/test-sprintf-posix.c: New file.
26004
26005         * modules/sprintf-posix: New file.
26006         * lib/sprintf.c: New file.
26007         * m4/sprintf-posix.m4: New file.
26008         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
26009         REPLACE_SPRINTF.
26010         * lib/stdio_.h (sprintf): New declaration.
26011         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
26012         REPLACE_SPRINTF.
26013
26014 2007-03-06  Bruno Haible  <bruno@clisp.org>
26015
26016         * modules/vsprintf-posix-tests: New file.
26017         * tests/test-vsprintf-posix.c: New file.
26018         * tests/test-sprintf-posix.h: New file.
26019
26020         * modules/vsprintf-posix: New file.
26021         * lib/vsprintf.c: New file.
26022         * m4/vsprintf-posix.m4: New file.
26023         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
26024         REPLACE_VSPRINTF.
26025         * lib/stdio_.h (vsprintf): New declaration.
26026         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
26027         REPLACE_VSPRINTF.
26028
26029 2007-03-06  Bruno Haible  <bruno@clisp.org>
26030
26031         * modules/vsnprintf (Depend-on): Remove minmax.
26032
26033 2007-03-06  Bruno Haible  <bruno@clisp.org>
26034
26035         * modules/snprintf-posix-tests: New file.
26036         * tests/test-snprintf-posix.c: New file.
26037
26038         * modules/snprintf-posix: New file.
26039         * m4/snprintf-posix.m4: New file.
26040         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
26041         gl_FUNC_SNPRINTF.
26042         (gl_FUNC_SNPRINTF): Invoke it.
26043         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
26044         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
26045         is set.
26046         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
26047
26048 2007-03-06  Bruno Haible  <bruno@clisp.org>
26049
26050         * modules/vsnprintf-posix-tests: New file.
26051         * tests/test-vsnprintf-posix.c: New file.
26052         * tests/test-snprintf-posix.h: New file.
26053
26054         * modules/vsnprintf-posix: New file.
26055         * m4/vsnprintf-posix.m4: New file.
26056         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
26057         gl_FUNC_VSNPRINTF.
26058         (gl_FUNC_VSNPRINTF): Invoke it.
26059         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
26060         * lib/stdio_.h (vsnprintf): Define as a replacement if
26061         REPLACE_VSNPRINTF is set.
26062         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
26063
26064 2007-03-06  Bruno Haible  <bruno@clisp.org>
26065
26066         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
26067         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
26068
26069 2007-03-06  Bruno Haible  <bruno@clisp.org>
26070
26071         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
26072         (asinl): Declare also if HAVE_DECL_ASINL is set.
26073         (atanl): Declare also if HAVE_DECL_ATANL is set.
26074         (ceill): Declare also if HAVE_DECL_CEILL is set.
26075         (cosl): Declare also if HAVE_DECL_COSL is set.
26076         (expl): Declare also if HAVE_DECL_EXPL is set.
26077         (floorl): Declare also if HAVE_DECL_FLOORL is set.
26078         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
26079         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
26080         (logl): Declare also if HAVE_DECL_LOGL is set.
26081         (sinl): Declare also if HAVE_DECL_SINL is set.
26082         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
26083         (tanl): Declare also if HAVE_DECL_TANL is set.
26084         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
26085         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
26086         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
26087         declaration of frexpl, ldexpl.
26088         * modules/printf-frexpl (Depends-on): Add math.
26089         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
26090
26091 2007-03-05  Bruno Haible  <bruno@clisp.org>
26092
26093         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
26094         frexpl and ldexpl are declared.
26095         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
26096
26097 2007-03-05  Bruno Haible  <bruno@clisp.org>
26098
26099         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
26100         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
26101
26102 2007-03-05  Bruno Haible  <bruno@clisp.org>
26103
26104         * lib/stdio_.h: Include <stddef.h>.
26105
26106 2007-03-05  Bruno Haible  <bruno@clisp.org>
26107
26108         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
26109
26110 2007-03-05  Bruno Haible  <bruno@clisp.org>
26111
26112         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
26113         NetBSD 4, from Ralf Wildenhues.
26114
26115 2007-03-04  Bruno Haible  <bruno@clisp.org>
26116
26117         * lib/vasprintf.h: Update #if logic for the case when the functions
26118         exist but are overridden.
26119
26120 2007-03-04  Bruno Haible  <bruno@clisp.org>
26121
26122         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
26123         implementations: glibc-2.4 and MacOS X 10.3.
26124         * tests/test-vasnprintf-posix.c (test_function): Test also the case
26125         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
26126         * tests/test-vasprintf-posix.c (test_function): Likewise.
26127
26128 2007-03-04  Bruno Haible  <bruno@clisp.org>
26129
26130         * modules/vasprintf-posix-tests: New file.
26131         * tests/test-vasprintf-posix.c: New file.
26132
26133         * modules/vasprintf-posix: New file.
26134         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
26135         defined.
26136         * m4/vasprintf-posix.m4: New file.
26137         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
26138         gl_FUNC_VASPRINTF.
26139         (gl_FUNC_VASPRINTF): Invoke it.
26140         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
26141         here.
26142         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
26143
26144 2007-03-04  Bruno Haible  <bruno@clisp.org>
26145
26146         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
26147         REPLACE_GETTIMEOFDAY.
26148         * modules/sys_time (Makefile.am): Likewise.
26149         * m4/sys_time_h.m4: Likewise.
26150         * m4/gettimeofday.m4: Likewise.
26151
26152 2007-03-04  Bruno Haible  <bruno@clisp.org>
26153
26154         * modules/vasnprintf-posix-tests: New file.
26155         * tests/test-vasnprintf-posix.c: New file.
26156
26157         * modules/vasnprintf-posix: New file.
26158         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
26159         printf-frexpl.h.
26160         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
26161         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
26162         REPLACE_VASNPRINTF is defined.
26163         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
26164         gl_FUNC_VASNPRINTF.
26165         (gl_FUNC_VASNPRINTF): Invoke it.
26166         * m4/vasnprintf-posix.m4: New file.
26167         * m4/printf.m4: New file.
26168
26169 2007-03-04  Bruno Haible  <bruno@clisp.org>
26170
26171         Compile progreloc.c only if --enable-relocatable is specified.
26172         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
26173         if --enable-relocatable was specified.
26174         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
26175         lib_SOURCES.
26176
26177 2007-03-04  Jim Meyering  <jim@meyering.net>
26178
26179         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
26180         Use it consistently, rather than enumerating errno constants.
26181
26182 2007-03-04  Bruno Haible  <bruno@clisp.org>
26183
26184         * modules/xvasprintf-tests: New file.
26185         * tests/test-xvasprintf.c: New file.
26186
26187         * modules/vasprintf-tests: New file.
26188         * tests/test-vasprintf.c: New file.
26189
26190         * modules/vasnprintf-tests: New file.
26191         * tests/test-vasnprintf.c: New file.
26192
26193         * modules/vsnprintf-tests: New file.
26194         * tests/test-vsnprintf.c: New file.
26195
26196         * modules/snprintf-tests: New file.
26197         * tests/test-snprintf.c: New file.
26198
26199 2007-03-04  Bruno Haible  <bruno@clisp.org>
26200
26201         Compile relocatable.c only if --enable-relocatable is specified.
26202         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
26203         gl_RELOCATABLE_LIBRARY.
26204         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
26205         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
26206         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
26207         gl_RELOCATABLE_LIBRARY.
26208         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
26209         (Makefile.am): Remove lib_SOURCES.
26210         * modules/relocatable-lib-lgpl (configure.ac): Invoke
26211         gl_RELOCATABLE_LIBRARY.
26212         (Makefile.am): Remove lib_SOURCES.
26213         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
26214         always.
26215         * modules/relocatable-prog-wrapper (configure.ac): Invoke
26216         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
26217
26218 2007-03-04  Bruno Haible  <bruno@clisp.org>
26219
26220         * modules/argmatch-tests: New file.
26221         * tests/test-argmatch.c: New file.
26222
26223         * tests/test-allocsa.c (main): Halve the number of loop runs.
26224
26225         * modules/alloca-opt-tests: New file.
26226         * tests/test-alloca-opt.c: New file.
26227
26228 2007-03-04  Jim Meyering  <jim@meyering.net>
26229
26230         Work around difference between Linux ACLs and Solaris 10 ZFS.
26231         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
26232         for EINVAL.
26233
26234 2007-03-03  Bruno Haible  <bruno@clisp.org>
26235
26236         * modules/relocatable-prog (Depends-on): Add back progreloc's
26237         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
26238
26239 2007-03-03  Bruno Haible  <bruno@clisp.org>
26240
26241         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
26242         * modules/relocatable-lib: New file.
26243
26244 2007-03-03  Bruno Haible  <bruno@clisp.org>
26245
26246         * modules/relocatable-prog: Renamed from modules/relocatable.
26247         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
26248
26249 2007-03-03  Bruno Haible  <bruno@clisp.org>
26250
26251         * modules/relocatable-script (Files): Add doc/relocatable.texi,
26252         m4/relocatable-lib.m4.
26253         (Depends-on): Remove 'relocatable'.
26254         (configure.ac): Add gl_RELOCATABLE_NOP.
26255
26256 2007-03-03  Bruno Haible  <bruno@clisp.org>
26257
26258         * modules/relocatable-prog-wrapper: New file.
26259         * modules/relocatable (Depends-on): Add it. Remove all other
26260         dependencies except progname.
26261         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
26262
26263         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
26264         (gl_FUNC_STRERROR): Nop.
26265         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
26266
26267         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
26268         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
26269
26270         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
26271         (gl_FUNC_READLINK): Update.
26272
26273         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
26274
26275 2007-03-03  Bruno Haible  <bruno@clisp.org>
26276
26277         * lib/xreadlink.c: Include <unistd.h> unconditionally.
26278         * modules/xreadlink (Depends-on): Add unistd.
26279         * modules/xreadlink-with-size (Depends-on): Likewise.
26280
26281 2007-03-03  Bruno Haible  <bruno@clisp.org>
26282
26283         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
26284         extracted from gt_FUNC_SETENV.
26285         (gt_FUNC_SETENV): Remove macro.
26286         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
26287         remove gt_FUNC_SETENV.
26288
26289 2007-03-03  Bruno Haible  <bruno@clisp.org>
26290
26291         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
26292         ENABLE_RELOCATABLE here.
26293         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
26294
26295 2007-03-03  Bruno Haible  <bruno@clisp.org>
26296
26297         * modules/rbtreehash-list-tests (Depends-on): Add progname.
26298         * tests/test-rbtreehash_list.c: Include progname.h.
26299         (main): Call set_program_name.
26300
26301         * modules/rbtree-oset-tests (Depends-on): Add progname.
26302         * tests/test-rbtree_oset.c: Include progname.h.
26303         (main): Call set_program_name.
26304
26305         * modules/rbtree-list-tests (Depends-on): Add progname.
26306         * tests/test-rbtree_list.c: Include progname.h.
26307         (main): Call set_program_name.
26308
26309         * modules/linked-list-tests (Depends-on): Add progname.
26310         * tests/test-linked_list.c: Include progname.h.
26311         (main): Call set_program_name.
26312
26313 2007-03-03  Bruno Haible  <bruno@clisp.org>
26314
26315         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
26316         All uses of __restrict changed to _Restrict_.
26317         * lib/glob_.h (__restrict): Remove macro.
26318
26319 2007-03-02  Bruno Haible  <bruno@clisp.org>
26320
26321         * modules/gettext (configure.ac): Require gettext infrastructure
26322         from version 0.16.1.
26323
26324 2007-03-02  Bruno Haible  <bruno@clisp.org>
26325
26326         * modules/linkedhash-list-tests (Depends-on): Add progname.
26327         * tests/test-linkedhash_list.c: Include progname.h.
26328         (main): Call set_program_name.
26329
26330         * modules/carray-list-tests (Depends-on): Add progname.
26331         * tests/test-carray_list.c: Include progname.h.
26332         (main): Call set_program_name.
26333
26334         * modules/avltreehash-list-tests (Depends-on): Add progname.
26335         * tests/test-avltreehash_list.c: Include progname.h.
26336         (main): Call set_program_name.
26337
26338         * modules/avltree-oset-tests (Depends-on): Add progname.
26339         * tests/test-avltree_oset.c: Include progname.h.
26340         (main): Call set_program_name.
26341
26342         * modules/avltree-list-tests (Depends-on): Add progname.
26343         * tests/test-avltree_list.c: Include progname.h.
26344         (main): Call set_program_name.
26345
26346         * modules/array-oset-tests (Depends-on): Add progname.
26347         * tests/test-array_oset.c: Include progname.h.
26348         (main): Call set_program_name.
26349
26350         * modules/array-list-tests (Depends-on): Add progname.
26351         * tests/test-array_list.c: Include progname.h.
26352         (main): Call set_program_name.
26353
26354         * modules/argp-tests (Depends-on): Add progname.
26355         * tests/test-argp.c: Include argp.h first. Include progname.h.
26356         (main): Call set_program_name.
26357
26358 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
26359
26360         * doc/gnulib-tool.texi (Initial import): Reword description of
26361         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
26362         limited effect even if defined after the first system include.
26363
26364 2007-03-01  Bruno Haible  <bruno@clisp.org>
26365
26366         * build-aux/config.libpath: Update to libtool-1.5.22.
26367         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
26368
26369 2007-03-01  Bruno Haible  <bruno@clisp.org>
26370
26371         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
26372         foo_CFLAGS.
26373         Reported by Ralf Wildenhues.
26374
26375 2007-03-01  Bruno Haible  <bruno@clisp.org>
26376
26377         * build-aux/install-reloc: Remove object files left over by some
26378         compilers.
26379         Reported by Ralf Wildenhues.
26380
26381 2007-03-01  Bruno Haible  <bruno@clisp.org>
26382
26383         * build-aux/install-reloc: Break long lines.
26384
26385 2007-03-01  Bruno Haible  <bruno@clisp.org>
26386
26387         * doc/relocatable.texi: Document that it may not work on OpenBSD.
26388         Reported by Ralf Wildenhues.
26389
26390 2007-03-01  Bruno Haible  <bruno@clisp.org>
26391
26392         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
26393         include ordering constraints.
26394
26395 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
26396
26397         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
26398         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
26399         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
26400         as another example.
26401         * lib/time_.h: Fix misspelling.
26402         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
26403         Require gl_HEADER_TIME_H_DEFAULTS.
26404         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
26405         * m4/time_r.m4 (gl_TIME_R): Likewise.
26406         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
26407
26408 2007-03-01  Bruno Haible  <bruno@clisp.org>
26409
26410         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
26411         * m4/utimens.m4 (gl_UTIMENS): Likewise.
26412
26413 2007-03-01  Jim Meyering  <jim@meyering.net>
26414
26415         * modules/xreadlink (Maintainer): Add my name.
26416         * modules/xreadlink-with-size (Depends-on): Alphabetize.
26417
26418 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
26419             Bruno Haible  <bruno@clisp.org>
26420
26421         * build-aux/install-reloc: Compile also c-ctype.c.
26422         * build-aux/relocatable.sh.in: New file.
26423         * doc/relocatable.texi: New file.
26424         * doc/relocatable-maint.texi: New file.
26425         * doc/gnulib.texi: Include relocatable-maint.texi.
26426         * lib/progreloc.c: Include unistd.h unconditionally.
26427         * lib/relocwrapper.c: Include unistd.h unconditionally.
26428         Include c-ctype.h.
26429         (add_dotbin): Use c_tolower.
26430         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
26431         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
26432         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
26433         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
26434         to m4/relocatable-lib.m4.
26435         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
26436         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
26437         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
26438         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
26439         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
26440         * modules/relocatable: New file.
26441         * modules/relocatable-lib: New file.
26442         * modules/relocatable-script: New file.
26443
26444 2007-02-28  Bruno Haible  <bruno@clisp.org>
26445
26446         Import --enable-relocatable infrastructure.
26447         * build-aux/config.libpath: New file, from GNU gettext.
26448         * build-aux/install-reloc: New file, from GNU gettext.
26449         * build-aux/reloc-ldflags: New file, from GNU gettext.
26450         * lib/relocatable.h: New file, from GNU gettext.
26451         * lib/relocatable.c: New file, from GNU gettext.
26452         * lib/relocwrapper.c: New file, from GNU gettext.
26453         * m4/relocatable.m4: New file, from GNU gettext.
26454
26455 2007-02-28  Bruno Haible  <bruno@clisp.org>
26456
26457         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
26458
26459         * modules/xreadlink: New file, from GNU gettext with modifications.
26460         * lib/xreadlink.c: New file, from GNU gettext.
26461         * lib/xreadlink.h: Add comments.
26462         (xreadlink): New declaration.
26463
26464         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
26465         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
26466         lib/xreadlink-with-size.c.
26467         (configure.ac): Remove gl_XREADLINK invocation.
26468         (Makefile.am): Augment lib_SOURCES.
26469         * m4/xreadlink.m4: Remove file.
26470         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
26471         (xreadlink_with_size): Renamed from xreadink.
26472         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
26473         * modules/canonicalize (Depends-on): Replace xreadlink with
26474         xreadlink-with-size.
26475         * lib/canonicalize.c (canonicalize_filename_mode): Update.
26476
26477 2007-02-25  Jim Meyering  <jim@meyering.net>
26478
26479         * build-aux/announce-gen: When complaining about excess arguments,
26480         list them.
26481
26482 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
26483
26484         * README: Document signed integer overflow situation more
26485         accurately.
26486
26487 2007-02-25  Bruno Haible  <bruno@clisp.org>
26488
26489         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
26490         'a' or 'A' conversion.
26491
26492 2007-02-25  Bruno Haible  <bruno@clisp.org>
26493
26494         * modules/filename: Renamed from modules/pathname.
26495         (Files): Replace lib/pathname.h with lib/filename.h. Replace
26496         lib/concatpath.c with lib/concat-filename.c.
26497         (Makefile.am): Update.
26498         (Include): Replace pathname.h with filename.h.
26499         * lib/filename.h: Renamed from lib/pathname.h.
26500         (concatenated_filename): Renamed from concatenated_pathname.
26501         * lib/concat-filename.c: Renamed from lib/concatpath.c.
26502         (concatenated_filename): Renamed from concatenated_pathname.
26503         * lib/findprog.c: Include filename.h instead of pathname.h.
26504         (find_in_path): Update.
26505         * lib/javacomp.c: Include filename.h instead of pathname.h.
26506         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
26507         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
26508         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
26509         is_oldgcj_14_13_usable, is_javac_usable): Update.
26510         * lib/javaexec.c: Include filename.h instead of pathname.h.
26511         (execute_java_class): Update.
26512         * modules/findprog: Update.
26513         * modules/javacomp: Update.
26514         * modules/javaexec: Update.
26515         * MODULES.html.sh (File system functions): Add 'filename', remove
26516         'pathname'.
26517
26518 2007-02-25  Bruno Haible  <bruno@clisp.org>
26519
26520         * modules/printf-frexpl-tests: New file.
26521         * tests/test-printf-frexpl.c: New file.
26522
26523         * modules/printf-frexpl: New file.
26524         * lib/printf-frexpl.h: New file.
26525         * lib/printf-frexpl.c: New file.
26526         * m4/printf-frexpl.m4: New file.
26527
26528 2007-02-25  Bruno Haible  <bruno@clisp.org>
26529
26530         * modules/printf-frexp-tests: New file.
26531         * tests/test-printf-frexp.c: New file.
26532
26533         * modules/printf-frexp: New file.
26534         * lib/printf-frexp.h: New file.
26535         * lib/printf-frexp.c: New file.
26536         * m4/printf-frexp.m4: New file.
26537
26538 2007-02-25  Bruno Haible  <bruno@clisp.org>
26539
26540         Assume automake >= 1.10 for the tests.
26541         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
26542         * modules/arctwo-tests: Likewise.
26543         * modules/argp-tests: Likewise.
26544         * modules/avltree-list-tests: Likewise.
26545         * modules/avltree-oset-tests: Likewise.
26546         * modules/avltreehash-list-tests: Likewise.
26547         * modules/carray-list-tests: Likewise.
26548         * modules/crc-tests: Likewise.
26549         * modules/des-tests: Likewise.
26550         * modules/gc-arcfour-tests: Likewise.
26551         * modules/gc-arctwo-tests: Likewise.
26552         * modules/gc-des-tests: Likewise.
26553         * modules/gc-hmac-md5-tests: Likewise.
26554         * modules/gc-hmac-sha1-tests: Likewise.
26555         * modules/gc-md2-tests: Likewise.
26556         * modules/gc-md4-tests: Likewise.
26557         * modules/gc-md5-tests: Likewise.
26558         * modules/gc-pbkdf2-sha1-tests: Likewise.
26559         * modules/gc-rijndael-tests: Likewise.
26560         * modules/gc-sha1-tests: Likewise.
26561         * modules/gc-tests: Likewise.
26562         * modules/getaddrinfo-tests: Likewise.
26563         * modules/hmac-md5-tests: Likewise.
26564         * modules/hmac-sha1-tests: Likewise.
26565         * modules/linked-list-tests: Likewise.
26566         * modules/linkedhash-list-tests: Likewise.
26567         * modules/lock-tests: Likewise.
26568         * modules/md2-tests: Likewise.
26569         * modules/md4-tests: Likewise.
26570         * modules/md5-tests: Likewise.
26571         * modules/rbtree-list-tests: Likewise.
26572         * modules/rbtree-oset-tests: Likewise.
26573         * modules/rbtreehash-list-tests: Likewise.
26574         * modules/read-file-tests: Likewise.
26575         * modules/rijndael-tests: Likewise.
26576         * modules/stdint-tests: Likewise.
26577         * modules/tls-tests: Likewise.
26578
26579 2007-02-24  Bruno Haible  <bruno@clisp.org>
26580
26581         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
26582         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
26583         function; instead check whether isnan with a double argument links.
26584         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
26585         function; instead check whether isnan with a 'long double' argument
26586         links.
26587         Reported by Eric Blake <ebb9@byu.net>.
26588
26589 2007-02-24  Bruno Haible  <bruno@clisp.org>
26590
26591         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
26592         defined.
26593         * lib/isnanl.c: Remove all code. Just include isnan.c.
26594         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
26595
26596 2007-02-25  Jim Meyering  <jim@meyering.net>
26597
26598         Avoid conflicting types for 'unsetenv' on FreeBSD.
26599         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
26600         conflicting with FreeBSD's (5.0 and 6.1) function declaration
26601         in stdlib.h.
26602
26603 2007-02-24  Bruno Haible  <bruno@clisp.org>
26604
26605         * modules/isnanl-nolibm-tests: New file.
26606         * tests/test-isnanl.c: New file.
26607
26608         * modules/isnanl-nolibm: New file.
26609         * lib/isnanl.h: New file.
26610         * lib/isnanl.c: New file.
26611         * m4/isnanl.m4: New file.
26612
26613 2007-02-24  Bruno Haible  <bruno@clisp.org>
26614
26615         * modules/isnan-nolibm-tests: New file.
26616         * tests/test-isnan.c: New file.
26617
26618         * modules/isnan-nolibm: New file.
26619         * lib/isnan.h: New file.
26620         * lib/isnan.c: New file.
26621         * m4/isnan.m4: New file.
26622
26623 2007-02-24  Bruno Haible  <bruno@clisp.org>
26624
26625         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
26626         assume that an exponent fits in 20 bits.
26627
26628 2007-02-24  Jim Meyering  <jim@meyering.net>
26629
26630         * m4/regex.m4: Update the description of the configure-time option,
26631         --without-included-regex, to state accurately what the defaults are,
26632         and perhaps to give people an idea why using this option is risky.
26633
26634 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
26635
26636         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
26637         loops on small arguments.  This attempts to avoid the problem
26638         Bruno Haible reported for AIX 4.3.2 in
26639         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
26640
26641 2007-02-23  Bruno Haible  <bruno@clisp.org>
26642
26643         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
26644         Needed for help2man.
26645
26646 2007-02-23  Karl Berry  <karl@gnu.org>
26647
26648         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
26649         exists, foo.h should be cvs-ignored, not committed.
26650
26651 2007-02-23  Eric Blake  <ebb9@byu.net>
26652
26653         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
26654         * lib/stat-time.h (includes): Likewise.
26655         * lib/utimecmp.c (includes): Likewise.
26656         * lib/utimens.h (includes): Likewise.
26657         * lib/getdate.y (includes): Also include "timespec.h" for use
26658         internal to the module.
26659         * modules/utimens (Depends-on): Revert yesterday's patch.
26660         * modules/nanosleep (Depends-on): Add missing dependency.
26661
26662 2007-02-22  Bruno Haible  <bruno@clisp.org>
26663
26664         * lib/glob.c: Don't include getlogin_r.h.
26665
26666 2007-02-22  Jim Meyering  <jim@meyering.net>
26667
26668         * modules/utimens (Depends-on): Add timespec, required for
26669         utimens.h's inclusion of timespec.h.
26670
26671 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
26672
26673         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
26674         long unreadable paths in GNU/Linux.  Problem reported by Andreas
26675         Schwab in
26676         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
26677         I'll try to think of a better way to fix the Solaris problem.
26678
26679         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
26680         like glibc; on Solaris 10, it fails with errno == EINVAL.
26681         POSIX says the behavior is unspecified if the first argument is NULL,
26682         so play it safe and never pass NULL to the system getcwd.
26683
26684 2007-02-21  Jim Meyering  <jim@meyering.net>
26685
26686         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
26687         of gettimeofday.  It would conflict with the one now always
26688         provided via sys_time_.h.  Reported by Matthew Woehlke, as
26689         an IRIX 6.5 build failure.
26690
26691 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
26692
26693         Minor fixups to port to Solaris 10 with Sun C 5.8.
26694         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
26695         * modules/getcwd (Depends-on): Add dirfd.
26696         * lib/putenv.c (putenv): #undef it.
26697         (rpl_putenv): New decl.
26698         (malloc, free): Include <stdlib.h> rather than prototyping separately.
26699
26700 2007-02-20  Bruno Haible  <bruno@clisp.org>
26701
26702         * modules/stdio-tests: New file.
26703         * tests/test-stdio.c: New file.
26704
26705         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
26706         (Depends-on): Add stdio.
26707         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
26708         (Include): Use <stdio.h> instead of vsnprintf.h.
26709         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
26710         HAVE_DECL_VSNPRINTF.
26711         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
26712
26713         * modules/snprintf (Files): Remove lib/snprintf.h.
26714         (Depends-on): Add stdio.
26715         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
26716         (Include): Use <stdio.h> instead of snprintf.h.
26717         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
26718         HAVE_DECL_SNPRINTF.
26719         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
26720         * lib/getaddrinfo.c: Likewise.
26721
26722         * modules/stdio: New file.
26723         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
26724         * lib/snprintf.h: Remove file.
26725         * lib/vsnprintf.h: Remove file.
26726         * lib/.cppi-disable: Remove snprintf.h.
26727         * m4/stdio_h.m4: New file.
26728         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
26729
26730 2007-02-20  Jim Meyering  <jim@meyering.net>
26731
26732         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
26733         used by e.g., mingw.  From Bruno Haible.
26734
26735 2007-02-19  Bruno Haible  <bruno@clisp.org>
26736
26737         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
26738         warnings.
26739         Reported by Ben Pfaff <blp@cs.stanford.edu>.
26740
26741 2007-02-19  Bruno Haible  <bruno@clisp.org>
26742
26743         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
26744         from mingw users.
26745
26746 2007-02-19  Bruno Haible  <bruno@clisp.org>
26747
26748         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
26749         warnings.
26750         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
26751
26752 2007-02-19  Jim Meyering  <jim@meyering.net>
26753
26754         Don't use FD after a successful "fdopendir (fd)".
26755         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
26756         Reset it by calling dirfd on the just-obtained DIR*.
26757
26758         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
26759         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
26760
26761 2007-02-18  Bruno Haible  <bruno@clisp.org>
26762
26763         * lib/readlink.c: Include <unistd.h>.
26764         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
26765         HAVE_READLINK.
26766         * modules/readlink (Depends-on): Add unistd.
26767         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
26768         (Include): Add <unistd.h>.
26769
26770         * lib/getlogin_r.h: Remove file.
26771         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
26772         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
26773         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
26774         HAVE_DECL_GETLOGIN_R.
26775         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
26776         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
26777         (Include): Use <unistd.h> instead of getlogin_r.h.
26778
26779         * lib/getcwd.h: Remove file.
26780         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
26781         * lib/xgetcwd.c: Likewise.
26782         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
26783         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
26784         * modules/getcwd (Files): Remove lib/getcwd.h.
26785         (Depends-on): Add unistd.
26786         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
26787         (Include): Use <unistd.h> instad of getcwd.h.
26788
26789         * lib/ftruncate.c: Include <unistd.h> first.
26790         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
26791         Set HAVE_FTRUNCATE.
26792         * modules/ftruncate (Depends-on): Add unistd.
26793         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
26794
26795         * lib/fchdir.c: Include <unistd.h> first.
26796         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
26797         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
26798         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
26799         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
26800         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
26801
26802         * lib/dup2.c: Include <unistd.h> first.
26803         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
26804         HAVE_DUP2.
26805         * modules/dup2 (Depends-on): Add unistd.
26806         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
26807
26808         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
26809         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
26810         REPLACE_CHOWN. Don't define chown as a macro here.
26811         * modules/chown (Depends-on): Add unistd.
26812         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
26813
26814         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
26815         Add definition for GL_LINK_WARNING.
26816         (chown, dup2): New declarations.
26817         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
26818         link warning.
26819         (ftruncate): New declaration.
26820         (getcwd): New declaration, taken from old getcwd.h.
26821         (getlogin_r): New declaration, taken from old getlogin_r.h.
26822         (readlink): New declaration.
26823         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
26824         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
26825         (gl_PREREQ_UNISTD): Remove macro.
26826         (gl_UNISTD_MODULE_INDICATOR): New macro.
26827         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
26828         many new variables. Don't set UNISTD_H.
26829         * modules/unistd (Description): Change.
26830         (Depends-on): Add link-warning.
26831         (configure.ac): Update.
26832         (Makefile.am): Create unistd.h always. Substitute many new variables
26833         into it.
26834
26835 2007-02-18  Bruno Haible  <bruno@clisp.org>
26836
26837         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
26838         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
26839         HAVE_GETSUBOPT.
26840         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
26841         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
26842         * lib/getsubopt.h: Remove file.
26843         * modules/getsubopt (Files): Remove lib/getsubopt.h.
26844         (Depends-on): Add stdlib.
26845         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
26846         (Includes): Use <stdlib.h> instead of getsubopt.h.
26847         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
26848         Set HAVE_GETSUBOPT.
26849         * lib/getsubopt.c: Don't include getsubopt.h.
26850
26851 2007-02-18  Bruno Haible  <bruno@clisp.org>
26852
26853         * modules/fchdir (Depends-on): Add dup2.
26854
26855 2007-02-18  Bruno Haible  <bruno@clisp.org>
26856
26857         * lib/stdlib_.h: Handle glibc's special invocation convention
26858         specially.
26859
26860 2007-02-18  Bruno Haible  <bruno@clisp.org>
26861
26862         * modules/stdlib-tests: New file.
26863         * tests/test-stdlib.c: New file.
26864
26865         * modules/mkstemp (Files): Remove lib/mkstemp.h.
26866         (Depends-on): Add stdlib.
26867         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
26868         (Includes): Use <stdlib.h> instead of mkstemp.h.
26869         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
26870         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
26871         * lib/mkstemp.c: Don't include mkstemp.h.
26872         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
26873         * lib/stdlib--.h: Don't include mkstemp.h.
26874
26875         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
26876         (Depends-on): Add stdlib.
26877         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
26878         (Includes): Use <stdlib.h> instead of mkdtemp.h.
26879         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
26880         HAVE_MKDTEMP.
26881         * lib/mkdtemp.c: Don't include mkdtemp.h.
26882         * lib/clean-temp.c: Don't include mkdtemp.h.
26883
26884         * modules/exit (Files): Remove lib/exit.h.
26885         (Depends-on): Add stdlib.
26886         (Makefile.am): Remove lib_SOURCES.
26887         (Include): Use <stdlib.h> instead of exit.h.
26888         * lib/argmatch.c: Don't include exit.h.
26889         * lib/execute.c: Likewise.
26890         * lib/pagealign_alloc.c: Likewise.
26891         * lib/pipe.c: Likewise.
26892         * lib/wait-process.c: Likewise.
26893         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
26894         * lib/exitfail.c: Likewise.
26895         * lib/savewd.c: Likewise.
26896         * lib/xsetenv.c: Likewise.
26897
26898         * modules/stdlib: New file.
26899         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
26900         and extra comments about mkstemp().
26901         * lib/exit.h: Remove file.
26902         * lib/mkdtemp.h: Remove file.
26903         * lib/mkstemp.h: Remove file.
26904         * m4/stdlib_h.m4: New file.
26905         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
26906
26907 2007-02-18  Bruno Haible  <bruno@clisp.org>
26908
26909         * modules/math-tests: New file.
26910         * tests/test-math.c: New file.
26911
26912         * modules/math: New file.
26913         * modules/mathl (Files): Remove lib/mathl.h.
26914         (Depends-on): Add math.
26915         (Makefile.am): Don't mention mathl.h.
26916         (Include): Use <math.h> instead of mathl.h.
26917         * lib/math_.h: New file.
26918         * lib/mathl.h: Remove file.
26919         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
26920         mathl.h.
26921         * lib/asinl.c: Likewise.
26922         * lib/atanl.c: Likewise.
26923         * lib/ceill.c: Likewise.
26924         * lib/cosl.c: Likewise.
26925         * lib/expl.c: Likewise.
26926         * lib/floorl.c: Likewise.
26927         * lib/frexpl.c: Likewise.
26928         * lib/ldexpl.c: Likewise.
26929         * lib/logl.c: Likewise.
26930         * lib/sincosl.c: Likewise.
26931         * lib/sinl.c: Likewise.
26932         * lib/sqrtl.c: Likewise.
26933         * lib/tanl.c: Likewise.
26934         * lib/trigl.c: Likewise.
26935         * m4/math_h.m4: New file.
26936         * MODULES.html.sh (Mathematics): Add math.
26937
26938 2007-02-17  Bruno Haible  <bruno@clisp.org>
26939
26940         * modules/wctype-tests: New file.
26941         * tests/test-wctype.c: New file.
26942
26943         * modules/wchar-tests: New file.
26944         * tests/test-wchar.c: New file.
26945
26946         * modules/unistd-tests: New file.
26947         * tests/test-unistd.c: New file.
26948
26949         * modules/time-tests: New file.
26950         * tests/test-time.c: New file.
26951
26952         * modules/sysexits-tests: New file.
26953         * tests/test-sysexits.c: New file.
26954
26955         * modules/sys_time-tests: New file.
26956         * tests/test-sys_time.c: New file.
26957
26958         * modules/sys_stat-tests: New file.
26959         * tests/test-sys_stat.c: New file.
26960
26961         * modules/sys_socket-tests: New file.
26962         * tests/test-sys_socket.c: New file.
26963
26964         * modules/sys_select-tests: New file.
26965         * tests/test-sys_select.c: New file.
26966
26967         * modules/string-tests: New file.
26968         * tests/test-string.c: New file.
26969
26970         * modules/stdbool-tests: New file.
26971         * tests/test-stdbool.c: New file.
26972
26973         * modules/netinet_in-tests: New file.
26974         * tests/test-netinet_in.c: New file.
26975
26976         * modules/inttypes-tests: New file.
26977         * tests/test-inttypes.c: New file.
26978
26979         * modules/fcntl-tests: New file.
26980         * tests/test-fcntl.c: New file.
26981
26982         * modules/byteswap-tests: New file.
26983         * tests/test-byteswap.c: New file.
26984
26985         * modules/arpa_inet-tests: New file.
26986         * tests/test-arpa_inet.c: New file.
26987
26988 2007-02-17  Bruno Haible  <bruno@clisp.org>
26989
26990         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
26991         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
26992         if the corresponding module is not enabled. Emit link warnings if
26993         the function is used nevertheless.
26994         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
26995         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
26996         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
26997         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
26998         * modules/inttypes (Depends-on): Add link-warning.
26999         (Makefile.am): Copy the contents of build-aux/link-warning.h into
27000         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
27001         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
27002         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
27003         * modules/imaxdiv (configure.ac): Likewise.
27004         * modules/strtoimax (configure.ac): Likewise.
27005         * modules/strtoumax (configure.ac): Likewise.
27006
27007 2007-02-17  Bruno Haible  <bruno@clisp.org>
27008
27009         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
27010         gl_STRING_MODULE_INDICATOR_DEFAULTS.
27011         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
27012         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
27013
27014 2007-02-17  Bruno Haible  <bruno@clisp.org>
27015
27016         * modules/link-warning: New file.
27017         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
27018         * lib/string_.h (GL_LINK_WARNING): Remove definition.
27019         * modules/string (Depends-on): Add link-warning.
27020         (Makefile.am): Copy the contents of build-aux/link-warning.h into
27021         string.h.
27022         * MODULES.html.sh (Support for building libraries and executables): Add
27023         link-warning.
27024
27025 2007-02-17  Bruno Haible  <bruno@clisp.org>
27026
27027         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
27028         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
27029         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
27030         long lines.
27031
27032 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
27033             Bruno Haible  <bruno@clisp.org>
27034
27035         * modules/tmpfile: New file.
27036         * lib/tmpfile.c: New file.
27037         * m4/tmpfile.m4: New file.
27038         * MODULES.html.sh (func_all_modules): New section "Input/output".
27039
27040 2007-02-15  Bruno Haible  <bruno@clisp.org>
27041
27042         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
27043         (supports_delete_on_close): New function.
27044         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
27045
27046 2007-02-14  Bruno Haible  <bruno@clisp.org>
27047
27048         * modules/mbspcasecmp-tests: New file.
27049         * tests/test-mbspcasecmp.sh: New file.
27050         * tests/test-mbspcasecmp.c: New file.
27051
27052         New module mbspcasecmp.
27053         * modules/mbspcasecmp: New file.
27054         * lib/mbspcasecmp.c: New file.
27055         * lib/string_.h (strncasecmp): Change warning message.
27056         (mbspcasecmp): New declaration.
27057         * m4/mbspcasecmp.m4: New file.
27058         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27059         GNULIB_MBSPCASECMP.
27060         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
27061         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
27062
27063 2007-02-14  Bruno Haible  <bruno@clisp.org>
27064
27065         * modules/mbsncasecmp-tests: New file.
27066         * tests/test-mbsncasecmp.sh: New file.
27067         * tests/test-mbsncasecmp.c: New file.
27068
27069         New module mbsncasecmp.
27070         * modules/mbsncasecmp: New file.
27071         * lib/mbsncasecmp.c: New file.
27072         * lib/string_.h (mbsncasecmp): New declaration.
27073         * m4/mbsncasecmp.m4: New file.
27074         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27075         GNULIB_MBSNCASECMP.
27076         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
27077         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
27078
27079 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
27080
27081         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
27082         Verify that it doesn't overlap with our flags.
27083         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
27084         do not have the desired effect in multibyte locales; instead, use
27085         mbscasecmp.
27086         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
27087         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
27088         we don't require GNU fnmatch ourselves (if our users require it, they
27089         should do so explicitly).
27090
27091         Fix regex code so it doesn't rely on strcasecmp.
27092         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
27093         Otherwise, include gnulib's langinfo.h.
27094         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
27095         undesirable behavior in non-C locales.  Instead, rely on localecharset.
27096         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
27097         * modules/regex (FILES): Remove m4/codeset.m4.
27098         (Depends-on): Add localcharset.  Remove strcase.
27099
27100 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27101
27102         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
27103         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
27104
27105 2007-02-13  Bruno Haible  <bruno@clisp.org>
27106
27107         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
27108         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27109
27110 2007-02-12  Bruno Haible  <bruno@clisp.org>
27111
27112         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
27113         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
27114         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
27115         time warning rather than a link error.
27116
27117 2007-02-12  Bruno Haible  <bruno@clisp.org>
27118
27119         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
27120         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
27121         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27122
27123 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
27124
27125         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
27126         args, not 2.
27127
27128 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
27129
27130         New module 'time', so that apps can include <time.h> as per
27131         POSIX and GNU instead of separate include files like time_r.h
27132         and timegm.h.  This implementation tries out a simpler approach
27133         for replacing decls in standard include files (as compared to
27134         the string module), somewhat as an experiment.
27135
27136         * config/srclist.txt: Comment out mktime.c for now.
27137         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
27138         since it doesn't apply any more.  Use generic wording instead.
27139         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
27140         'time'.
27141         * lib/time_.h, m4/time_h.m4, modules/time: New files.
27142         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
27143         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
27144         Don't include <sys/types.h>; no longer needed since we assume C89.
27145         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
27146         * lib/strftime.c: Likewise.
27147         * lib/time_r.c: Likewise.
27148         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
27149         * lib/nanosleep.c: Include <time.h> first, to check interface.
27150         * lib/strptime.c: Likewise.
27151         * lib/time_r.c: Likewise.
27152         * lib/timegm.c: Likewise.
27153         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
27154         needed.
27155         * lib/timegm.c: Don't include timegm.h; no longer needed.
27156         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
27157         time.h now handles any problems in that area.
27158         (struct timespec, nanosleep): Remove; time.h now arranges for these.
27159         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
27160         that time.h defines struct timespec.
27161         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
27162         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
27163         handles that.
27164         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
27165         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
27166         needed.  Set REPLACE_LOCALTIME.
27167         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
27168         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
27169         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
27170         nanosleep; time_h.m4 now does that.  Don't require
27171         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
27172         module handles this now.
27173         * modules/getdate (Depends-on): Remove timespec.  Add time.
27174         * modules/nanosleep (Depends-on): Likewise.
27175         * modules/stat-time (Depends-on): Likewise.
27176         * modules/nanosleep (Include): Include time.h, not timespec.h.
27177         * modules/strptime (Files): Remove lib/strptime.h.
27178         (Depends-on): Add extensions, time.
27179         (Include): Include time.h, not strptime.h.
27180         * modules/time_r (Files): Remove lib/time_r.h.
27181         (Depends-on): Add time.
27182         (Include): Include time.h, not time_r.h.
27183         * modules/timegm: Likewise.
27184         * modules/timespec (Description): Now does timespec-related decls
27185         of our own, instead of struct timespec itself.
27186         (Depends-on): Add time; remove extensions.
27187         (Maintainer): Add self.
27188         * modules/utimecmp (Depends-on): Add time; remove timespec.
27189         * modules/utimens (Depends-on): Likewise.
27190         * modules/xnanosleep (Depends-on): Likewise.
27191
27192 2007-02-11  Bruno Haible  <bruno@clisp.org>
27193
27194         * lib/c-strstr.c: Include allocsa.h.
27195         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
27196         * lib/c-strcasestr.c: Include allocsa.h.
27197         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
27198         * lib/strcasestr.c: Include allocsa.h.
27199         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
27200         * lib/mbsstr.c: Include allocsa.h.
27201         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
27202         allocsa/freesa instead of malloc/free.
27203         * lib/mbscasestr.c: Include allocsa.h.
27204         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
27205         allocsa/freesa instead of malloc/free.
27206         * modules/c-strstr (Depends-on): Add allocsa.
27207         * modules/c-strcasestr (Depends-on): Likewise.
27208         * modules/strcasestr (Depends-on): Likewise.
27209         * modules/mbsstr (Depends-on): Likewise.
27210         * modules/mbscasestr (Depends-on): Likewise.
27211
27212 2007-02-11  Bruno Haible  <bruno@clisp.org>
27213
27214         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
27215
27216         * modules/mbsspn-tests: New file.
27217         * tests/test-mbsspn.sh: New file.
27218         * tests/test-mbsspn.c: New file.
27219
27220 2007-02-11  Bruno Haible  <bruno@clisp.org>
27221
27222         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
27223
27224         * modules/mbspbrk-tests: New file.
27225         * tests/test-mbspbrk.sh: New file.
27226         * tests/test-mbspbrk.c: New file.
27227
27228 2007-02-11  Bruno Haible  <bruno@clisp.org>
27229
27230         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
27231         unneeded cast.
27232
27233         * modules/mbscspn-tests: New file.
27234         * tests/test-mbscspn.sh: New file.
27235         * tests/test-mbscspn.c: New file.
27236
27237 2007-02-11  Bruno Haible  <bruno@clisp.org>
27238
27239         * modules/mbscasecmp-tests: New file.
27240         * tests/test-mbscasecmp.sh: New file.
27241         * tests/test-mbscasecmp.c: New file.
27242
27243 2007-02-11  Bruno Haible  <bruno@clisp.org>
27244
27245         Ensure O(n) worst-case complexity of mbscasestr.
27246         * lib/mbscasestr.c: Include stdbool.h.
27247         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
27248         functions.
27249         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
27250         the bookkeeping indicates that it's worth it.
27251         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
27252
27253         * modules/mbscasestr-tests: New file.
27254         * tests/test-mbscasestr1.c: New file.
27255         * tests/test-mbscasestr2.sh: New file.
27256         * tests/test-mbscasestr2.c: New file.
27257         * tests/test-mbscasestr3.sh: New file.
27258         * tests/test-mbscasestr3.c: New file.
27259         * tests/test-mbscasestr4.sh: New file.
27260         * tests/test-mbscasestr4.c: New file.
27261         * m4/locale-tr.m4: New file.
27262
27263 2007-02-11  Bruno Haible  <bruno@clisp.org>
27264
27265         Ensure O(n) worst-case complexity of mbsstr.
27266         * lib/mbsstr.c: Include stdbool.h.
27267         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
27268         functions.
27269         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
27270         bookkeeping indicates that it's worth it.
27271         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
27272
27273         * modules/mbsstr-tests: New file.
27274         * tests/test-mbsstr1.c: New file.
27275         * tests/test-mbsstr2.sh: New file.
27276         * tests/test-mbsstr2.c: New file.
27277         * tests/test-mbsstr3.sh: New file.
27278         * tests/test-mbsstr3.c: New file.
27279         * m4/locale-fr.m4: New file.
27280
27281 2007-02-11  Bruno Haible  <bruno@clisp.org>
27282
27283         * lib/mbsrchr.c (mbsrchr): Fix bug.
27284
27285         * modules/mbsrchr-tests: New file.
27286         * tests/test-mbsrchr.sh: New file.
27287         * tests/test-mbsrchr.c: New file.
27288
27289 2007-02-11  Bruno Haible  <bruno@clisp.org>
27290
27291         * lib/mbschr.c (mbschr): Fix bug.
27292
27293         * modules/mbschr-tests: New file.
27294         * tests/test-mbschr.sh: New file.
27295         * tests/test-mbschr.c: New file.
27296         * m4/locale-zh.m4: New file.
27297
27298 2007-02-11  Bruno Haible  <bruno@clisp.org>
27299
27300         Support for copying multibyte string iterators.
27301         * lib/mbiter.h: Include <string.h>.
27302         (mbiter_multi_copy): New function.
27303         (mbi_copy): New macro.
27304         * lib/mbuiter.h: Include <string.h>.
27305         (mbuiter_multi_copy): New function.
27306         (mbui_copy): New macro.
27307
27308 2007-02-11  Bruno Haible  <bruno@clisp.org>
27309
27310         New module mbslen.
27311         * modules/mbslen: New file.
27312         * lib/mbslen.c: New file.
27313         * lib/string_.h (mbslen): New declaration.
27314         * m4/mbslen.m4: New file.
27315         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27316         GNULIB_MBSLEN.
27317         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
27318         * MODULES.html.sh (Internationalization functions): Add mbslen.
27319
27320 2007-02-11  Bruno Haible  <bruno@clisp.org>
27321
27322         Ensure O(n) worst-case complexity of strcasestr substitute.
27323         * lib/strcasestr.c: Include stdbool.h.
27324         (knuth_morris_pratt): New function.
27325         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
27326         bookkeeping indicates that it's worth it.
27327         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
27328
27329         * modules/strcasestr-tests: New file.
27330         * tests/test-strcasestr.c: New file.
27331
27332 2007-02-11  Bruno Haible  <bruno@clisp.org>
27333
27334         Ensure O(n) worst-case complexity of c_strcasestr.
27335         * lib/c-strcasestr.c: Include stdbool.h, string.h.
27336         (knuth_morris_pratt): New function.
27337         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
27338         the bookkeeping indicates that it's worth it.
27339         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
27340
27341         * modules/c-strcasestr-tests: New file.
27342         * tests/test-c-strcasestr.c: New file.
27343
27344 2007-02-11  Bruno Haible  <bruno@clisp.org>
27345
27346         Ensure O(n) worst-case complexity of c_strstr.
27347         * lib/c-strstr.c: Include stdbool.h, string.h.
27348         (knuth_morris_pratt): New function.
27349         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
27350         bookkeeping indicates that it's worth it.
27351         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
27352
27353         * lib/c-strstr.c: Complete rewrite for maintainability.
27354
27355         * modules/c-strstr-tests: New file.
27356         * tests/test-c-strstr.c: New file.
27357
27358 2007-02-11  Bruno Haible  <bruno@clisp.org>
27359
27360         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
27361         5.2.1 and earlier, whereby \055 was treated just like the range
27362         delimiter '-'.
27363         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
27364
27365 2007-02-08  Bruno Haible  <bruno@clisp.org>
27366
27367         * modules/regex (Depends-on): Add stdbool.
27368         Reported by Dalibor Topic <robilad@kaffe.org>.
27369
27370 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
27371
27372         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
27373         Prefer returning from main to exiting from it.
27374         Remove unnecessary parens after sizeof.
27375
27376 2007-02-05  Bruno Haible  <bruno@clisp.org>
27377
27378         New module mbssep.
27379         * modules/mbssep: New file.
27380         * lib/mbssep.c: New file.
27381         * lib/string_.h (strsep): Add a conditional link warning.
27382         (mbssep): New declaration.
27383         * m4/mbssep.m4: New file.
27384         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27385         GNULIB_MBSSEP.
27386         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
27387         * MODULES.html.sh (Internationalization functions): Add mbssep.
27388
27389 2007-02-05  Bruno Haible  <bruno@clisp.org>
27390
27391         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
27392         Optimize search in case of 1 delimiter.
27393
27394 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
27395
27396         * lib/acl.h: Include sys/types.h before sys/acl.h.
27397
27398 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
27399
27400         Merge upstream fix for glibc bugzilla #3957:
27401
27402         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
27403
27404         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
27405         bit for RE_HAT_LISTS_NOT_NEWLINE.
27406         (build_charclass_op): Remove bogus comment.
27407
27408 2007-02-05  Simon Josefsson  <simon@josefsson.org>
27409
27410         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
27411
27412 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
27413
27414         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
27415         * lib/memmem.c [!defined _LIBC]: Include config.h.
27416
27417 2007-02-04  Bruno Haible  <bruno@clisp.org>
27418
27419         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
27420         warning message.
27421
27422 2007-02-04  Bruno Haible  <bruno@clisp.org>
27423
27424         New module mbstok_r.
27425         * modules/mbstok_r: New file.
27426         * lib/mbstok_r.c: New file.
27427         * lib/string_.h (strtok_r): Change argument names to match the
27428         comments. Add a conditional link warning.
27429         (mbstok_r): New declaration.
27430         * m4/mbstok_r.m4: New file.
27431         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27432         GNULIB_MBSTOK_R.
27433         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
27434         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
27435
27436 2007-02-04  Bruno Haible  <bruno@clisp.org>
27437
27438         New module mbsspn.
27439         * modules/mbsspn: New file.
27440         * lib/mbsspn.c: New file.
27441         * lib/string_.h (strspn): Add a conditional link warning.
27442         (mbsspn): New declaration.
27443         * m4/mbsspn.m4: New file.
27444         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27445         GNULIB_MBSSPN.
27446         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
27447         * MODULES.html.sh (Internationalization functions): Add mbsspn.
27448
27449 2007-02-04  Bruno Haible  <bruno@clisp.org>
27450
27451         New module mbspbrk.
27452         * modules/mbspbrk: New file.
27453         * lib/mbspbrk.c: New file.
27454         * lib/string_.h (strpbrk): Add a conditional link warning.
27455         (mbspbrk): New declaration.
27456         * m4/mbspbrk.m4: New file.
27457         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27458         GNULIB_MBSPBRK.
27459         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
27460         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
27461
27462 2007-02-04  Bruno Haible  <bruno@clisp.org>
27463
27464         New module mbscspn.
27465         * modules/mbscspn: New file.
27466         * lib/mbscspn.c: New file.
27467         * lib/string_.h (strcspn): Add a conditional link warning.
27468         (mbscspn): New declaration.
27469         * m4/mbscspn.m4: New file.
27470         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27471         GNULIB_MBSCSPN.
27472         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
27473         * MODULES.html.sh (Internationalization functions): Add mbscspn.
27474
27475 2007-02-04  Bruno Haible  <bruno@clisp.org>
27476
27477         New module mbscasestr, reduced goal of strcasestr.
27478         * modules/mbscasestr: New file.
27479         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
27480         (mbscasestr): Renamed from strcasestr.
27481         * lib/strcasestr.c: Don't include mbuiter.h.
27482         (strcasestr): Remove support for multibyte locales.
27483         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
27484         Change the conditional link warning.
27485         (mbscasestr): New declaration.
27486         * m4/mbscasestr.m4: New file.
27487         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
27488         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
27489         REPLACE_STRCASESTR.
27490         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
27491         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
27492         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
27493         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
27494         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
27495         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
27496         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
27497         (Depends-on): Remove mbuiter.
27498         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
27499
27500 2007-02-04  Bruno Haible  <bruno@clisp.org>
27501
27502         Simplify handling of strncasecmp.
27503         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
27504         the conditional link warning.
27505         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
27506         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
27507         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
27508         * modules/strcase (configure.ac): Don't invoke
27509         gl_STRING_MODULE_INDICATOR.
27510         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
27511
27512 2007-02-04  Bruno Haible  <bruno@clisp.org>
27513
27514         New module mbscasecmp, reduced goal of strcasecmp.
27515         * modules/mbscasecmp: New file.
27516         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
27517         (mbscasecmp): Renamed from strcasecmp.
27518         * lib/strcasecmp.c: Don't include mbuiter.h.
27519         (strcasecmp): Remove support for multibyte locales.
27520         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
27521         Change the conditional link warning.
27522         (mbscasecmp): New declaration.
27523         * m4/mbscasecmp.m4: New file.
27524         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
27525         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
27526         REPLACE_STRCASECMP.
27527         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
27528         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27529         GNULIB_MBSCASECMP.
27530         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
27531         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
27532         * modules/strcase (Files): Remove m4/mbrtowc.m4.
27533         (Depends-on): Remove mbuiter.
27534         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
27535
27536 2007-02-04  Bruno Haible  <bruno@clisp.org>
27537
27538         New module mbsstr. Remove module strstr.
27539         * modules/mbsstr: New file.
27540         * modules/strstr: Remove file.
27541         * lib/mbsstr.c: Renamed from lib/strstr.c.
27542         (mbsstr): Renamed from strstr.
27543         * lib/string_.h (strstr): Remove declaration. Change the conditional
27544         link warning.
27545         (mbsstr): New declaration.
27546         * m4/mbsstr.m4: New file.
27547         * m4/strstr.m4: Remove file.
27548         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
27549         REPLACE_STRSTR.
27550         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
27551         Don't initialize GNULIB_STRSTR.
27552         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
27553         substitute GNULIB_STRSTR and REPLACE_STRSTR.
27554         * MODULES.html.sh (Internationalization functions): Add mbsstr.
27555         (Support for systems lacking ANSI C 89): Remove strstr.
27556
27557 2007-02-04  Bruno Haible  <bruno@clisp.org>
27558
27559         New module mbsrchr.
27560         * modules/mbsrchr: New file.
27561         * lib/mbsrchr.c: New file.
27562         * lib/string_.h (strrchr): Add a conditional link warning.
27563         (mbsrchr): New declaration.
27564         * m4/mbsrchr.m4: New file.
27565         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27566         GNULIB_MBSRCHR.
27567         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
27568         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
27569
27570 2007-02-04  Bruno Haible  <bruno@clisp.org>
27571
27572         New module mbschr.
27573         * modules/mbschr: New file.
27574         * lib/mbschr.c: New file.
27575         * lib/string_.h (strchr): Add a conditional link warning.
27576         (mbschr): New declaration.
27577         * m4/mbschr.m4: New file.
27578         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
27579         GNULIB_MBSCHR.
27580         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
27581         * MODULES.html.sh (Internationalization functions): Add mbschr.
27582
27583 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
27584
27585         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
27586
27587         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
27588
27589 2007-02-04  Bruno Haible  <bruno@clisp.org>
27590
27591         New module description section 'configure.ac-early'.
27592         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
27593         (func_get_autoconf_early_snippet): New function.
27594         (func_import, func_create_testdir): Use it. Remove special cases for
27595         modules 'extensions' and 'lock'.
27596         * modules/extensions (configure.ac-early): Require
27597         gl_USE_SYSTEM_EXTENSIONS.
27598         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
27599
27600 2007-02-04  Bruno Haible  <bruno@clisp.org>
27601
27602         Make use of gcj-4.3's -fsource and -ftarget option.
27603         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
27604         and if so try the options -fsource and -ftarget.
27605         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
27606         source_version, ftarget_option, target_version arguments.
27607         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
27608         (is_envjavac_oldgcj_14_14_usable): Renamed from
27609         is_envjavac_gcj_14_14_usable.
27610         (is_envjavac_oldgcj_14_13_usable): Renamed from
27611         is_envjavac_gcj_14_13_usable.
27612         (is_gcj_present): Update.
27613         (is_gcj_43, is_gcj43_usable): New functions.
27614         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
27615         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
27616         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
27617         try the options -fsource and -ftarget.
27618
27619 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
27620
27621         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
27622         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
27623         larger value.
27624
27625 2007-02-03  Jim Meyering  <jim@meyering.net>
27626
27627         Give tools a better chance to allocate space for very large buffers.
27628         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
27629
27630         Make pwd and readlink work also when run with an unreadable parent dir
27631         on systems with openat support.
27632         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
27633         provided getcwd function, even when we have openat support.
27634         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
27635
27636 2007-02-02  Bruno Haible  <bruno@clisp.org>
27637
27638         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
27639         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
27640         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
27641         portability problems if one of these functions is only used on specific
27642         platforms.
27643         Reported by Paul Eggert.
27644
27645 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
27646
27647         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
27648         is causing more trouble than it's curing.
27649         * lib/regex_internal.h (__mempcpy): Remove.
27650         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
27651         (and make the code a tad smaller to boot).
27652         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
27653
27654 2007-02-02  Jim Meyering  <jim@meyering.net>
27655
27656         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
27657         section, not in the Makefile.am: one.
27658
27659 2007-02-02  Eric Blake  <ebb9@byu.net>
27660
27661         * lib/strchrnul.c: Always include config.h first.
27662
27663         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
27664         gnulib strstr is not necessary here.
27665
27666 2007-02-02  Simon Josefsson  <simon@josefsson.org>
27667
27668         * m4/socklen.m4: Fix typo.
27669
27670 2007-02-02  Eric Blake  <ebb9@byu.net>
27671
27672         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
27673         * modules/netinet_in (Makefile.am): Likewise.
27674
27675 2007-02-01  Bruno Haible  <bruno@clisp.org>
27676
27677         * lib/string_.h (GL_LINK_WARNING): New macro.
27678         (strcasecmp, strstr, strcasestr): If provided by the system,
27679         conditionally define as a macro that leads to a warning instead of to
27680         an error.
27681         (strncasecmp): Conditionally define as a macro that leads to a warning.
27682
27683 2007-02-01  Karl Berry  <karl@gnu.org>
27684
27685         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
27686
27687 2007-02-01  Bruno Haible  <bruno@clisp.org>
27688
27689         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
27690         renamings.
27691
27692 2007-02-01  Eric Blake  <ebb9@byu.net>
27693
27694         * modules/regex (Depends-on): Revert dependence on mempcpy.
27695         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
27696         module's definition of mempcpy.
27697         Reported by Paul Eggert.
27698
27699 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
27700
27701         * lib/string_.h: If the gnulib module XYZ is not present, undefine
27702         the symbol XYZ before redefining it.  This fixes a problem with
27703         programs that don't use XYZ, when compiled on systems that define
27704         XYZ to something else.
27705
27706 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
27707
27708         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
27709         occurs when "mkdir -m foo" creates a setgid directory that is (1)
27710         writeable to group or other and (2) is intended to have a special
27711         mode bit that is set or cleared.  In such a case, the directory
27712         should be neither group- nor other-writeable until the special
27713         mode bits are right.
27714
27715 2007-01-31  Eric Blake  <ebb9@byu.net>
27716
27717         * modules/mountlist (Depends-on): Add strstr.
27718
27719         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
27720         bug.
27721         * modules/string (Makefile.am): Remove redundant replacement.
27722         * modules/regex (Depends-on): Add mempcpy.
27723
27724 2007-01-31  Bruno Haible  <bruno@clisp.org>
27725
27726         New module description field 'Link'.
27727         * gnulib-tool (func_usage): Document --extract-link-directive.
27728         (sed_extract_prog): Recognize 'Link' directive.
27729         (func_get_link_directive): New function.
27730         (func_import): Show summary of link directives.
27731         Handle --extract-link-directive option.
27732         * modules/acl (Link): New section.
27733         * modules/clock-time (Link): New section.
27734         * modules/euidaccess (Link): New section.
27735         * modules/gettext (Link): New section.
27736         * modules/iconv (Link): New section.
27737         * modules/lock (Link): New section.
27738         * modules/nanosleep (Link): New section.
27739         * modules/readline (Link): New section.
27740
27741 2007-01-27  Bruno Haible  <bruno@clisp.org>
27742
27743         Enforce the use of gnulib modules for unportable <string.h> functions.
27744         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
27745         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
27746         (gl_HEADER_STRING_H_BODY): Require it.
27747         * lib/string_.h: If the gnulib module XYZ is not present, redefine
27748         the symbol XYZ to one that gives a link error.
27749         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
27750         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
27751         * modules/mempcpy (configure.ac): Likewise.
27752         * modules/memrchr (configure.ac): Likewise.
27753         * modules/stpcpy (configure.ac): Likewise.
27754         * modules/stpncpy (configure.ac): Likewise.
27755         * modules/strcase (configure.ac): Likewise.
27756         * modules/strcasestr (configure.ac): Likewise.
27757         * modules/strchrnul (configure.ac): Likewise.
27758         * modules/strdup (configure.ac): Likewise.
27759         * modules/strndup (configure.ac): Likewise.
27760         * modules/strnlen (configure.ac): Likewise.
27761         * modules/strpbrk (configure.ac): Likewise.
27762         * modules/strsep (configure.ac): Likewise.
27763         * modules/strstr (configure.ac): Likewise.
27764         * modules/strtok_r (configure.ac): Likewise.
27765
27766 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
27767
27768         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
27769
27770 2007-01-30  Jim Meyering  <jim@meyering.net>
27771
27772         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
27773
27774 2007-01-29  Bruno Haible  <bruno@clisp.org>
27775
27776         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
27777         * lib/execute.c: Likewise.
27778         * lib/pipe.c: Likewise.
27779         * lib/printf-args.h: Likewise.
27780         * lib/printf-args.c: Likewise.
27781         * lib/printf-parse.c: Likewise.
27782         * lib/vasnprintf.c: Likewise.
27783
27784 2007-01-29  Eric Blake  <ebb9@byu.net>
27785
27786         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
27787         declaration.
27788
27789 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
27790
27791         * lib/strptime.h (strptime): Use 'restrict' for args where
27792         POSIX requires this.
27793         * lib/strptime.c (strptime): Likewise.
27794         Change license notice from LGPL to GPL, since gnulib-tool will
27795         change this as needed.
27796         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
27797         defined.
27798         Include "strptime.h" first, to check interface.
27799         Do not #undef _LIBC and _NL_CURRENT.
27800         Do not include <stdlib.h>; no longer needed.
27801         Include "time_r.h" and declare ptime_locale_status
27802         only if _LIBC is not defined.
27803         (__P): Remove unused macro.
27804         (match_string): Bring back glibc version, but use it only if _LIBC
27805         is defined.
27806         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
27807         Remove unnecessary assertion and abort() call.
27808         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
27809         * m4/strptime.m4: Fix serial number comment.
27810         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
27811         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
27812         (Depends-on): Add time_r.
27813
27814 2007-01-29  Bruno Haible  <bruno@clisp.org>
27815
27816         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
27817         strptime.
27818         * modules/strptime (Depends-on): Add stdbool.
27819         * lib/strptime.h: Include <time.h> always. Add comments.
27820
27821 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
27822
27823         * modules/strptime: New file.
27824         * lib/strptime.h: New file.
27825         * lib/strptime.c: New file.
27826         * m4/strptime.m4: New file.
27827
27828 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
27829
27830         * MODULES.html.sh: New module mpsort.
27831         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
27832
27833         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
27834         a circularity problem with HP-UX ia64 reported by Bob Proulx in
27835         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
27836         All uses changed.
27837         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
27838         All uses changed.
27839         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
27840         to _Restrict_.
27841         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
27842         the parameter matches the prototype.
27843
27844 2007-01-28  Jim Meyering  <jim@meyering.net>
27845
27846         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
27847         sys/time.h here, reverting that part of the previous patch:
27848         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
27849
27850 2007-01-28  Bruno Haible  <bruno@clisp.org>
27851
27852         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
27853         value of $(SYS_TIME_H).
27854         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
27855         remove it conditionally, too. [added by Jim Meyering]
27856         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
27857         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
27858         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
27859         GETTIMEOFDAY_REPLACEMENT to 1.
27860
27861 2007-01-28  Bruno Haible  <bruno@clisp.org>
27862
27863         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
27864         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
27865         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
27866         Set UNISTD_H instead of UNISTD_H2.
27867         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
27868
27869 2007-01-28  Bruno Haible  <bruno@clisp.org>
27870
27871         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
27872         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
27873
27874 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27875
27876         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
27877         (func_create_testdir): Ensure C locale for `grep' and `tr'
27878         character ranges.
27879         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
27880         ACLOCAL_AMFLAGS parsing state machine.
27881
27882 2007-01-27  Bruno Haible  <bruno@clisp.org>
27883
27884         * modules/unistr/base: Update.
27885
27886 2007-01-27  Bruno Haible  <bruno@clisp.org>
27887
27888         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
27889         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
27890         * modules/unistr/u32-mbtouc-unsafe: Renamed from
27891         modules/unistr/u32-mbtouc.
27892         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
27893         * lib/unistr.h: Update.
27894         * lib/linebreak.c: Update.
27895         * modules/unistr/u32-mbtouc: Renamed from
27896         modules/unistr/u32-mbtouc-safe.
27897         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
27898         * lib/unistr.h: Update.
27899         * lib/unistr/u32-to-u8.c: Update.
27900         * lib/unistr/u32-to-u16.c: Update.
27901
27902 2007-01-27  Bruno Haible  <bruno@clisp.org>
27903
27904         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
27905         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
27906         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
27907         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
27908         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
27909         * modules/unistr/u16-mbtouc-unsafe: Renamed from
27910         modules/unistr/u16-mbtouc.
27911         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
27912         * lib/unistr.h: Update.
27913         * lib/linebreak.c: Update.
27914         * modules/linebreak: Update.
27915         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
27916         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
27917         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
27918         * modules/unistr/u16-mbtouc: Renamed from
27919         modules/unistr/u16-mbtouc-safe.
27920         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
27921         * lib/unistr.h: Update.
27922         * lib/unistr/u16-to-u8.c: Update.
27923         * modules/unistr/u16-to-u8: Update.
27924         * lib/unistr/u16-to-u32.c: Update.
27925         * modules/unistr/u16-to-u32: Update.
27926
27927 2007-01-27  Bruno Haible  <bruno@clisp.org>
27928
27929         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
27930         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
27931         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
27932         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
27933         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
27934         * modules/unistr/u8-mbtouc-unsafe: Renamed from
27935         modules/unistr/u8-mbtouc.
27936         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
27937         * lib/unistr.h: Update.
27938         * lib/striconveh.c: Update.
27939         * modules/striconveh: Update.
27940         * lib/linebreak.c: Update.
27941         * modules/linebreak: Update.
27942         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
27943         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
27944         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
27945         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
27946         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
27947         * lib/unistr.h: Update.
27948         * lib/striconveh.c: Update.
27949         * modules/striconveh: Update.
27950         * lib/unistr/u8-to-u16.c: Update.
27951         * modules/unistr/u8-to-u16: Update.
27952         * lib/unistr/u8-to-u32.c: Update.
27953         * modules/unistr/u8-to-u32: Update.
27954
27955 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27956
27957         Sync from Libtool.
27958         * lib/argz.c: Do not include strings.h nor memory.h, include
27959         string.h unconditionally.  Patch by Simon Josefsson.
27960
27961 2007-01-27  Bruno Haible  <bruno@clisp.org>
27962
27963         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
27964         from gl_HEADER_STRING_H_BODY.
27965         (gl_HEADER_STRING_H_BODY): Require it.
27966         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
27967         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
27968         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
27969         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
27970         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
27971         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
27972         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
27973         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
27974         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
27975         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
27976         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
27977         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
27978         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
27979         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
27980         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
27981
27982 2007-01-27  Bruno Haible  <bruno@clisp.org>
27983
27984         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
27985         check_PROGRAMS into noinst_PROGRAMS.
27986         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
27987         check_PROGRAMS in this case.
27988         (func_import): Set for_test to false.
27989         (func_create_testdir): Set for_test to true.
27990
27991 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
27992             Bruno Haible  <bruno@clisp.org>
27993
27994         * modules/strcasestr (Files): Remove lib/strcasestr.h.
27995         (Depends-on): Add string.
27996         (Includes): Use <string.h> instead of strcasestr.h.
27997         * modules/string (Makefile.am): Also substitute the value of
27998         REPLACE_STRCASESTR.
27999         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
28000         assume strcasestr is declared in <string.h> not <strings.h>. Also
28001         set REPLACE_STRCASESTR.
28002         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
28003         REPLACE_STRCASESTR.
28004         * lib/strcasestr.h: Remove file.
28005         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
28006         * lib/string_.h (strcasestr): New declaration.
28007
28008 2007-01-27  Bruno Haible  <bruno@clisp.org>
28009
28010         * lib/string_.h: Use 'extern'.
28011
28012 2007-01-27  Jim Meyering  <jim@meyering.net>
28013
28014         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
28015         of set-but-not-used local, "q".
28016
28017         * lib/mempcpy.c: Include <config.h> before <string.h>.
28018         This fixes a compilation error on HP-UX, due to the system's
28019         "restrict"-using mempcpy prototype.
28020
28021 2007-01-26  Bruno Haible  <bruno@clisp.org>
28022
28023         Small optimization.
28024         * lib/javacomp.c: Include c-strstr.h.
28025          (is_envjavac_gcj): Use c_strstr instead of strstr.
28026         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
28027
28028 2007-01-26  Bruno Haible  <bruno@clisp.org>
28029
28030         * MODULES.html.sh (Unicode string functions): Add the new modules.
28031
28032         * modules/uniconv/u32-strconv-to-locale: New file.
28033         * lib/uniconv/u32-strconv-to-locale.c: New file.
28034
28035         * modules/uniconv/u16-strconv-to-locale: New file.
28036         * lib/uniconv/u16-strconv-to-locale.c: New file.
28037
28038         * modules/uniconv/u8-strconv-to-locale: New file.
28039         * lib/uniconv/u8-strconv-to-locale.c: New file.
28040
28041         * modules/uniconv/u32-strconv-from-locale: New file.
28042         * lib/uniconv/u32-strconv-from-locale.c: New file.
28043
28044         * modules/uniconv/u16-strconv-from-locale: New file.
28045         * lib/uniconv/u16-strconv-from-locale.c: New file.
28046
28047         * modules/uniconv/u8-strconv-from-locale: New file.
28048         * lib/uniconv/u8-strconv-from-locale.c: New file.
28049
28050         * modules/uniconv/u32-strconv-to-enc: New file.
28051         * lib/uniconv/u32-strconv-to-enc.c: New file.
28052         * modules/uniconv/u32-strconv-to-enc-tests: New file.
28053         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
28054
28055         * modules/uniconv/u16-strconv-to-enc: New file.
28056         * lib/uniconv/u16-strconv-to-enc.c: New file.
28057         * lib/uniconv/u-strconv-to-enc.h: New file.
28058         * modules/uniconv/u16-strconv-to-enc-tests: New file.
28059         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
28060
28061         * modules/uniconv/u8-strconv-to-enc: New file.
28062         * lib/uniconv/u8-strconv-to-enc.c: New file.
28063         * modules/uniconv/u8-strconv-to-enc-tests: New file.
28064         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
28065
28066         * modules/uniconv/u32-strconv-from-enc: New file.
28067         * lib/uniconv/u32-strconv-from-enc.c: New file.
28068         * modules/uniconv/u32-strconv-from-enc-tests: New file.
28069         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
28070
28071         * modules/uniconv/u16-strconv-from-enc: New file.
28072         * lib/uniconv/u16-strconv-from-enc.c: New file.
28073         * modules/uniconv/u16-strconv-from-enc-tests: New file.
28074         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
28075
28076         * modules/uniconv/u8-strconv-from-enc: New file.
28077         * lib/uniconv/u8-strconv-from-enc.c: New file.
28078         * lib/uniconv/u-strconv-from-enc.h: New file.
28079         * modules/uniconv/u8-strconv-from-enc-tests: New file.
28080         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
28081
28082         * modules/uniconv/u32-conv-from-enc: New file.
28083         * lib/uniconv/u32-conv-from-enc.c: New file.
28084         * modules/uniconv/u32-conv-from-enc-tests: New file.
28085         * tests/uniconv/test-u32-conv-from-enc.c: New file.
28086
28087         * modules/uniconv/u16-conv-from-enc: New file.
28088         * lib/uniconv/u16-conv-from-enc.c: New file.
28089         * lib/uniconv/u-conv-from-enc.h: New file.
28090         * modules/uniconv/u16-conv-from-enc-tests: New file.
28091         * tests/uniconv/test-u16-conv-from-enc.c: New file.
28092
28093         * modules/uniconv/u8-conv-from-enc: New file.
28094         * lib/uniconv/u8-conv-from-enc.c: New file.
28095         * modules/uniconv/u8-conv-from-enc-tests: New file.
28096         * tests/uniconv/test-u8-conv-from-enc.c: New file.
28097
28098         * modules/uniconv/base: New file.
28099         * lib/uniconv.h: New file.
28100
28101 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
28102
28103         * doc/gnulib-tool.texi (Initial import): Update to match current
28104         behavior with strdup module.
28105         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
28106         * lib/memmem.h: Remove; all uses removed.  This is now done
28107         by <string.h>.
28108         * lib/mempcpy.h: Likewise.
28109         * lib/memrchr.h: Likewise.
28110         * lib/stpcpy.h: Likewise.
28111         * lib/stpncpy.h: Likewise.
28112         * lib/strcase.h: Likewise.
28113         * lib/strchrnul.h: Likewise.
28114         * lib/strdup.h: Likewise.
28115         * lib/strndup.h: Likewise.
28116         * lib/strnlen.h: Likewise.
28117         * lib/strpbrk.h: Likewise.
28118         * lib/strsep.h: Likewise.
28119         * lib/strstr.h: Likewise.
28120         * lib/strtok_r.h: Likewise.
28121         * lib/string_.h: New file.
28122         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
28123         Rely on <string.h> instead.
28124         * lib/canon-host.c: Likewise.
28125         * lib/chdir-long.c: Likewise.
28126         * lib/concatpath.c: Likewise.
28127         * lib/exclude.c: Likewise.
28128         * lib/fchdir.c: Likewise.
28129         * lib/getaddrinfo.c: Likewise.
28130         * lib/getcwd.c: Likewise.
28131         * lib/getsubopt.c: Likewise.
28132         * lib/glob.c: Likewise.
28133         * lib/hard-locale.c: Likewise.
28134         * lib/iconvme.c: Likewise.
28135         * lib/javacomp.c: Likewise.
28136         * lib/mempcpy.c: Likewise.
28137         * lib/memrchr.c: Likewise.
28138         * lib/regex_internal.h: Likewise.
28139         * lib/stpncpy.c: Likewise.
28140         * lib/strcasecmp.c: Likewise.
28141         * lib/strchrnul.c: Likewise.
28142         * lib/strdup.c: Likewise.
28143         * lib/striconv.c: Likewise.
28144         * lib/striconveh.c: Likewise.
28145         * lib/striconveha.c: Likewise.
28146         * lib/strncasecmp.c: Likewise.
28147         * lib/strndup.c: Likewise.
28148         * lib/strnlen.c: Likewise.
28149         * lib/strsep.c: Likewise.
28150         * lib/strstr.c: Likewise.
28151         * lib/strtok_r.c: Likewise.
28152         * lib/userspec.c: Likewise.
28153         * lib/w32spawn.h: Likewise.
28154         * lib/xstrndup.c: Likewise.
28155         * lib/mountlist.c (strstr): Remove decl.
28156         * m4/string_h.m4: New file.
28157         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
28158         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
28159         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
28160         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
28161         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
28162         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
28163         Set REPLACE_STRCASECMP if necessary.
28164         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
28165         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
28166         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
28167         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
28168         HAVE_DECL_STRDUP if necessary.
28169         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
28170         since gl_FUNC_STRNDUP does that now.
28171         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
28172         Check for decl here...
28173         (gl_PREREQ_STRNLEN): ... not here.
28174         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
28175         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
28176         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
28177         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
28178         necessary.
28179         * modules/string: New file.
28180         * modules/memmem (Files): Remove special-purpose include file.
28181         (Depends-on): Add string.
28182         (Include): Include <string.h>, not the removed file.
28183         * modules/mempcpy: Likewise.
28184         * modules/memrchr: Likewise.
28185         * modules/stpcpy: Likewise.
28186         * modules/stpncpy: Likewise.
28187         * modules/strcase: Likewise.
28188         * modules/strchrnul: Likewise.
28189         * modules/strdup: Likewise.
28190         * modules/strndup: Likewise.
28191         * modules/strnlen: Likewise.
28192         * modules/strpbrk: Likewise.
28193         * modules/strsep: Likewise.
28194         * modules/strstr: Likewise.
28195         * modules/strtok_r: Likewise.
28196         * tests/test-dirname.c: Don't include "strdup.h", since
28197         <string.h> now suffices.
28198         * tests/test-memmem.c: Don't include "memmem.h", since
28199         <string.h> now suffices.
28200
28201 2007-01-25  Bruno Haible  <bruno@clisp.org>
28202
28203         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
28204         *resultp is 0.
28205
28206         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
28207         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
28208         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
28209         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
28210
28211         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
28212         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
28213         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
28214         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
28215         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
28216         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
28217
28218 2007-01-24  Bruno Haible  <bruno@clisp.org>
28219
28220         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
28221         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
28222         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
28223         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
28224         gl_FUNC_FTS_CORE.
28225         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
28226         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
28227         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
28228         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
28229         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
28230         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
28231         gl_FUNC_FCHOWNAT.
28232         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
28233         gl_FUNC_STRFTIME.
28234         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
28235         Reported by Ralf Wildenhues.
28236
28237 2007-01-24  Bruno Haible  <bruno@clisp.org>
28238
28239         Drop AC_REQUIRE calls that are redundant with the module dependencies.
28240         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
28241         gl_GETADDRINFO.
28242         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
28243         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
28244         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
28245
28246 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
28247
28248         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
28249         Don't use 'exit'; just return from 'main'.
28250         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
28251
28252         * lib/fnmatch_.h: Readjust white space and comments to match
28253         glibc, to avoid spurious diffs.
28254
28255 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
28256
28257         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
28258         2004-12-01 change by Jakub Jelinek, since this code won't compile
28259         if !LIBC.  Problem reported by Bob Proulx.
28260
28261 2007-01-23  Bruno Haible  <bruno@clisp.org>
28262
28263         * lib/striconveh.c: Include c-strcaseeq.h.
28264         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
28265         * modules/striconveh (Depends-on): Add c-strcaseeq.
28266
28267 2007-01-23  Bruno Haible  <bruno@clisp.org>
28268
28269         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
28270
28271         * modules/c-strcaseeq: New file.
28272         * lib/c-strcaseeq.h: New file.
28273
28274         * modules/streq: New file.
28275         * lib/streq.h: New file.
28276
28277 2007-01-23  Bruno Haible  <bruno@clisp.org>
28278
28279         * modules/striconveha-tests: New file.
28280         * tests/test-striconveha.c: New file.
28281
28282         * lib/striconveha.h: Include <stdbool.h>.
28283         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
28284         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
28285         (mem_iconveha_notranslit): Renamed from mem_iconveha.
28286         (mem_iconveha): New function.
28287         (str_iconveha_notranslit): Renamed from str_iconveha.
28288         (str_iconveha): New function.
28289         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
28290         c-strcase.
28291
28292 2007-01-23  Bruno Haible  <bruno@clisp.org>
28293
28294         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
28295         encodings without forgiving before trying any encoding with handler.
28296         (str_iconveha): Try all encodings without forgiving before trying any
28297         encoding with handler.
28298
28299 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
28300
28301         Import the following changes from libc.
28302
28303         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
28304
28305         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
28306
28307         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
28308
28309         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
28310         normal_bracket label.
28311
28312         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
28313
28314         [BZ #361]
28315         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
28316         to normal_bracket after fetching the next character.
28317
28318 2007-01-22  Bruno Haible  <bruno@clisp.org>
28319
28320         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
28321         argument.
28322         * lib/striconveh.c (iconv_carefully_1): New function.
28323         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
28324         argument.
28325         (str_cd_iconveh): Update.
28326         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
28327         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
28328         * tests/test-striconveh.c (MAGIC): New macro.
28329         (new_offsets): New function.
28330         (main): Test call with and without offsets.
28331
28332 2007-01-22  Bruno Haible  <bruno@clisp.org>
28333
28334         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
28335         * modules/sys_select (Makefile.am): Likewise.
28336         * modules/sys_socket (Makefile.am): Likewise.
28337         * modules/sys_time (Makefile.am): Likewise.
28338
28339 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
28340
28341         * modules/gettimeofday (License): Change from GPL to LGPL, since
28342         gettimeofday is a library function.
28343
28344 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28345
28346         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
28347
28348 2007-01-21  Bruno Haible  <bruno@clisp.org>
28349
28350         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
28351
28352 2007-01-21  Bruno Haible  <bruno@clisp.org>
28353
28354         * modules/striconveha: New file.
28355         * lib/striconveha.h: New file.
28356         * lib/striconveha.c: New file.
28357         * MODULES.html.sh (Internationalization functions): Add striconveha.
28358         * lib/striconv.c (str_iconv): Optimize the case of an empty input
28359         string.
28360         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
28361
28362 2007-01-21  Bruno Haible  <bruno@clisp.org>
28363
28364         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
28365         * lib/striconveh.c (str_iconveh): Likewise.
28366
28367 2007-01-21  Bruno Haible  <bruno@clisp.org>
28368
28369         * lib/striconveh.h (mem_iconveh): New declaration.
28370         * lib/striconveh.c (mem_iconveh): New function.
28371         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
28372
28373 2007-01-21  Bruno Haible  <bruno@clisp.org>
28374
28375         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
28376
28377         * lib/striconveh.h (mem_cd_iconveh): Change specification.
28378         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
28379         original result buffer.
28380         (str_cd_iconveh): Update.
28381         * tests/test-striconveh.c (main): Update.
28382
28383         * lib/striconv.h (mem_cd_iconv): Change specification.
28384         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
28385         result buffer.
28386         (str_cd_iconv): Update.
28387         * tests/test-striconv.c (main): Update.
28388
28389 2007-01-21  Bruno Haible  <bruno@clisp.org>
28390
28391         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
28392
28393 2007-01-20  Jim Meyering  <jim@meyering.net>
28394
28395         * lib/userspec.c (parse_with_separator): If a user or group string
28396         starts with "+", skip the corresponding name-to-ID look-up, since
28397         such a look-up must fail: user and group names may not include "+".
28398
28399 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
28400
28401         * lib/poll.c: Include sys/time.h and time.h unconditionally,
28402         since we now assume the sys_time module.
28403         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
28404         check for sys/time.h; no longer needed.
28405         * modules/poll (Depends-on): Depend on sys_time.
28406
28407 2007-01-18  Bruno Haible  <bruno@clisp.org>
28408
28409         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
28410         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
28411
28412         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
28413         gettimeofday.
28414
28415         * tests/test-gettimeofday.c: Include <time.h>.
28416         (dummy): Remove variable.
28417
28418         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
28419         gl_HEADER_SYS_TIME_H.
28420         (gl_HEADER_SYS_TIME_H): New macro.
28421
28422         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
28423         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28424         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
28425         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
28426         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28427         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
28428         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
28429         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28430         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
28431         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
28432         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28433
28434         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
28435         last change; it caused a compilation error when cross-compiling to
28436         Cygwin.
28437
28438 2007-01-18  Jim Meyering  <jim@meyering.net>
28439
28440         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
28441         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
28442         than the race-prone "test -d sys || mkdir sys".
28443         (configure.ac): Use AC_PROG_MKDIR_P.
28444         * modules/sys_select: Likewise.
28445         * modules/sys_socket: Likewise.
28446         * modules/sys_time: Likewise.
28447
28448 2007-01-18  Eric Blake  <ebb9@byu.net>
28449
28450         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
28451         replace gettimeofday.
28452         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
28453         name, to avoid infinite recursion.
28454
28455 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
28456
28457         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
28458         module sys_time.
28459         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
28460         assume timespec.h defines struct timeval.
28461         * lib/settime.c: Likewise.
28462         * lib/utimens.c: Likewise.
28463         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
28464         since we now assume the gettimeofday module.
28465         * lib/tempname.c (__gen_tempname): Likewise.
28466         * lib/gettimeofday.h: Remove.
28467         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
28468         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
28469         Include <time.h>, for 'time()'.
28470         (localtime_buffer_addr): Also use this workaround if
28471         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
28472         to simplify the uses.  All uses changed.
28473         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
28474         that #undef is inside {}, and 'const' follows type name consistently.
28475         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
28476         (gettimeofday): Do not use the maximum possible value for
28477         tv->tv_usec, since that might break usages other than ls.c.
28478         Instead, we'll leave ls.c alone.  This undoes today's patch
28479         by Bruno.  Add a compile-time warning for 1s-clock resolution;
28480         we've never observed the problem but might as well keep the
28481         canary.
28482         * lib/nanosleep.c: Include timespec.h first, for interface check.
28483         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
28484         now assume the sys_time module.
28485         * lib/tempname.c: Likewise.
28486         * lib/timespec.h: Likewise.
28487         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
28488         needed.
28489         * lib/strftime.c: Likewise.
28490         * lib/timespec.h: Likewise.
28491         * lib/posixtm.c: Include posixtm.h first, for interface check.
28492         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
28493         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
28494         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
28495         * lib/sys_time_.h: New file.
28496         * lib/timespec.h (struct timespec): Use long int, not long.
28497         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
28498         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
28499         Remove obsolescent call to AC_HEADER_TIME.
28500         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
28501         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
28502         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
28503         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
28504         Likewise.
28505         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
28506         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
28507         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
28508         into the sys_time module.  Check for gettimeofday just once.
28509         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
28510         for gettimeofday signature to just check the signature.  Merely
28511         compile it, since linking doesn't test signature.  Improve test for
28512         whether gettimeofday.o is actually needed.
28513         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
28514         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
28515         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
28516         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28517         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
28518         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
28519         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
28520         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
28521         than worrying about sys/time.h.
28522         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
28523         Don't bother worrying about TIME_WITH_SYS_TIME.
28524         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
28525         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
28526         * m4/sys_time_h.m4: New file.
28527         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
28528         Don't include sys/time.h.  Return from main rather than exiting.
28529         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
28530         all uses changed.
28531         * modules/gethrxtime (Depends-on): Add sys_time.
28532         * modules/gettime (Depends-on): Likewise.
28533         * modules/gettimeofday (Depends-on): Likewise.
28534         * modules/nanosleep (Depends-on): Likewise.
28535         * modules/settime (Depends-on): Likewise.
28536         * modules/tempname (Depends-on): Likewise.
28537         * modules/utimens (Depends-on): Likewise.
28538         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
28539         (Include:) Change back to <sys/time.h>.
28540         (Maintainer:) Add self.
28541         * modules/sys_time: New file.
28542         * modules/tempname (Depends-on): Add gettimeofday.
28543         * tests/test-gettimeofday.c: Include <sys/time.h>
28544         rather than gettimeofday.h.
28545
28546 2007-01-17  Bruno Haible  <bruno@clisp.org>
28547
28548         * gnulib-tool (func_get_license): Revert last patch. Instead, let
28549         the license default to GPL.
28550         (func_create_testdir): Don't complain if a module is LGPL and its
28551         tests module depends on GPLed modules.
28552
28553 2007-01-17  Bruno Haible  <bruno@clisp.org>
28554
28555         * lib/gettimeofday.c (gettimeofday): Add code for the case
28556         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
28557         maximum possible value for tv->tv_usec, rather than the minimum one.
28558
28559 2005-10-08  Martin Lambers  <marlam@marlam.de>
28560 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
28561 2007-01-16  Bruno Haible  <bruno@clisp.org>
28562
28563         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
28564         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
28565         gl_FUNC_GETTIMEOFDAY.
28566         (Include): Add gettimeofday.h.
28567         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
28568         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
28569         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
28570         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
28571         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
28572         * lib/gettimeofday.h: New file.
28573         * lib/gettimeofday.c: Include <sys/timeb.h>.
28574         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
28575         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
28576         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
28577         fall back on time().
28578
28579         * tests/test-gettimeofday.c: New file.
28580         * modules/gettimeofday-tests: New file.
28581
28582 2007-01-16  Eric Blake  <ebb9@byu.net>
28583
28584         * modules/fnmatch (Depends-on): Depend on wchar.
28585         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
28586         * m4/fnmatch.m4: Likewise.
28587         * modules/mbchar (Makefile.am): Assume <wchar.h>.
28588         * m4/mbchar.m4: Likewise.
28589         * modules/mbswidth (Depends-on): Depend on wchar.
28590         * lib/mbswidth.c: Assume <wchar.h>.
28591         * m4/mbswidth.m4: Likewise.
28592         * modules/quotearg (Depends-on): Depend on wchar.
28593         * lib/quotearg.c: Assume <wchar.h>.
28594         * m4/quotearg.m4: Likewise.
28595         * modules/regex (Depends-on): Depend on wchar.
28596         * lib/regex_internal.h: Assume <wchar.h>.
28597         * m4/regex.m4: Likewise.
28598         * modules/stdint (Depends-on): Depend on wchar.
28599         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
28600         * m4/stdint.m4: Likewise.
28601         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
28602         * modules/strftime (Depends-on): Depend on wchar.
28603         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
28604         * modules/strtol (Depends-on): Depend on wchar.
28605         * lib/strtol.c: Assume <wchar.h>.
28606         * modules/wcwidth (Depends-on): Depend on wchar.
28607         * lib/wcwidth.h: Assume <wchar.h>.
28608         * m4/wcwidth.m4: Likewise.
28609
28610 2007-01-16  Bruno Haible  <bruno@clisp.org>
28611
28612         * modules/csharpexec-script: New, created from...
28613         * modules/csharpexec: ... this.
28614
28615 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
28616
28617         * modules/javaexec-script: New, created from...
28618         * modules/javaexec: ... this.
28619
28620 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28621
28622         * modules/poll (Dependencies): Add sys_select.
28623
28624 2007-01-15  Jim Meyering  <jim@meyering.net>
28625
28626         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
28627         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
28628         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
28629         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
28630
28631 2007-01-15  Bruno Haible  <bruno@clisp.org>
28632
28633         * modules/striconveh: New file.
28634         * lib/striconveh.h: New file.
28635         * lib/striconveh.c: New file.
28636         * MODULES.html.sh (Internationalization functions): Add striconveh.
28637
28638         * modules/striconveh-tests: New file.
28639         * tests/test-striconveh.c: New file.
28640
28641 2007-01-15  Bruno Haible  <bruno@clisp.org>
28642
28643         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
28644         not from GNU libiconv or GNU libc.
28645
28646 2007-01-15  Bruno Haible  <bruno@clisp.org>
28647
28648         * doc/gnulib-intro.texi (Copyright): Explain the different license
28649         terms for module descriptions, autoconf macros, tests, documentation.
28650
28651 2007-01-14  Bruno Haible  <bruno@clisp.org>
28652
28653         * modules/striconv-tests: New file.
28654         * tests/test-striconv.c: New file.
28655
28656 2007-01-14  Bruno Haible  <bruno@clisp.org>
28657
28658         * modules/iconv-tests: New file.
28659         * tests/test-iconv.c: New file.
28660
28661 2007-01-14  Bruno Haible  <bruno@clisp.org>
28662
28663         * gnulib-tool (func_get_license): For test modules, use the license of
28664         the main module.
28665
28666 2007-01-14  Bruno Haible  <bruno@clisp.org>
28667
28668         * modules/iconv (Include): Clarify that <iconv.h> can only be included
28669         if iconv is found to exist.
28670
28671 2007-01-14  Bruno Haible  <bruno@clisp.org>
28672
28673         * modules/c-ctype-tests: New file.
28674         * tests/test-c-ctype.c: New file.
28675
28676 2007-01-14  Bruno Haible  <bruno@clisp.org>
28677
28678         * modules/binary-io-tests: New file.
28679         * tests/test-binary-io.sh: New file.
28680         * tests/test-binary-io.c: New file.
28681
28682 2007-01-14  Bruno Haible  <bruno@clisp.org>
28683
28684         * modules/array-oset-tests: New file.
28685         * tests/test-array_oset.c: New file.
28686
28687 2007-01-14  Bruno Haible  <bruno@clisp.org>
28688
28689         * modules/array-list-tests: New file.
28690         * tests/test-array_list.c: New file.
28691
28692 2007-01-14  Bruno Haible  <bruno@clisp.org>
28693
28694         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
28695         and make.
28696         Reported by Simon Josefsson in
28697         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
28698
28699 2007-01-14  Bruno Haible  <bruno@clisp.org>
28700
28701         * modules/allocsa-tests: New file.
28702         * tests/test-allocsa.c: New file.
28703
28704 2007-01-14  Bruno Haible  <bruno@clisp.org>
28705
28706         * modules/fchdir (Depends-on): Add absolute-header.
28707         * modules/unistd (Depends-on): Likewise.
28708
28709 2006-12-30  Bruno Haible  <bruno@clisp.org>
28710
28711         * modules/fchdir: New file.
28712         * modules/unistd (Files): Add lib/unistd_.h.
28713         (Makefile.am): Generate unistd.h from unistd_.h.
28714         * lib/fchdir.c: New file.
28715         * lib/dirent_.h: New file.
28716         * lib/unistd_.h: New file.
28717         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
28718         * m4/fchdir.m4: New file.
28719         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
28720         (gl_HEADER_UNISTD): Invoke it.
28721         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
28722         function.
28723         * lib/backupfile.c (opendir, closedir): Undefine.
28724         * lib/chown.c (open, close): Undefine.
28725         * lib/clean-temp.c (open, close): Undefine.
28726         * lib/copy-file.c (open, close): Undefine.
28727         * lib/execute.c (open, close): Undefine.
28728         * lib/fsusage.c (open, close): Undefine.
28729         * lib/gc-gnulib.c (open, close): Undefine.
28730         * lib/getcwd.c (opendir, closedir): Undefine.
28731         * lib/glob.c (opendir, closedir): Undefine.
28732         * lib/javacomp.c (open, close): Undefine.
28733         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
28734         * lib/openat-proc.c (open, close): Undefine.
28735         * lib/pagealign_alloc.c (open, close): Undefine.
28736         * lib/pipe.c (open, close): Undefine.
28737         * lib/progreloc.c (open, close): Undefine.
28738         * lib/savedir.c (opendir, closedir): Undefine.
28739         * lib/utime.c (open, close): Undefine.
28740         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
28741
28742 2007-01-10  Bruno Haible  <bruno@clisp.org>
28743
28744         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
28745
28746 2007-01-12  Eric Blake  <ebb9@byu.net>
28747
28748         Provide a robust <wchar.h>.  Further simplifications are now
28749         possible in other modules, but not included here.
28750         * modules/wchar: New module.
28751         * m4/wchar.m4: New file.
28752         * lib/wchar_.h: Likewise.
28753         * modules/mbchar (Depends-on): Depend on wchar, as the first use
28754         of the new module.
28755         * MODULES.html.sh (Extended multibyte and wide character utilities):
28756         New section.
28757
28758 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
28759
28760         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
28761         to a reasonable default for memory allocation.
28762         (xreadlink): Don't allocate a huge buffer, to work around a buggy
28763         file system that reports garbage st_size values for symlinks.
28764         Problem reported by Liyang Hu.
28765
28766 2007-01-11  Simon Josefsson  <simon@josefsson.org>
28767
28768         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
28769         Emacs .#* auto-save files).
28770
28771 2007-01-11  Bruno Haible  <bruno@clisp.org>
28772
28773         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
28774         directory.
28775
28776 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
28777
28778         Use @...@ consistently in lib/wctype_.h.
28779         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
28780         on it being set to 1 or 0.
28781         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
28782         go back to AC_SUBSTing it.
28783         * modules/wctype (Makefile.am): Undo previous change.
28784
28785 2007-01-10  Eric Blake  <ebb9@byu.net>
28786
28787         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
28788         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
28789         * modules/wctype (Makefile.am): Likewise.
28790         Reported by Chris McGuire.
28791
28792 2007-01-10  Jim Meyering  <jim@meyering.net>
28793
28794         fts.c: a small readability/maintainability improvement
28795         * lib/fts.c (fts_read): Make this code slightly more readable and
28796         maintainable by hoisting the "sp->fts_cur = p" assignments to
28797         immediately follow the statements that set P.  Derived from
28798         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
28799
28800 2007-01-10  Eric Blake  <ebb9@byu.net>
28801
28802         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
28803         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
28804         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
28805         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
28806         Reported by Chris McGuire.
28807
28808 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28809
28810         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
28811         in sed script.
28812
28813 2007-01-09  Bruno Haible  <bruno@clisp.org>
28814
28815         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
28816         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
28817         variables.
28818         (func_module): Use them.
28819
28820 2007-01-09  Bruno Haible  <bruno@clisp.org>
28821
28822         * modules/unistr/base: New file.
28823         * lib/unistr.h: New file.
28824
28825         * modules/unistr/u8-to-u16: New file.
28826         * lib/unistr/u8-to-u16.c: New file.
28827
28828         * modules/unistr/u8-to-u32: New file.
28829         * lib/unistr/u8-to-u32.c: New file.
28830
28831         * modules/unistr/u16-to-u8: New file.
28832         * lib/unistr/u16-to-u8.c: New file.
28833
28834         * modules/unistr/u16-to-u32: New file.
28835         * lib/unistr/u16-to-u32.c: New file.
28836
28837         * modules/unistr/u32-to-u8: New file.
28838         * lib/unistr/u32-to-u8.c: New file.
28839
28840         * modules/unistr/u32-to-u16: New file.
28841         * lib/unistr/u32-to-u16.c: New file.
28842
28843         * modules/unistr/u8-check: New file.
28844         * modules/unistr/u16-check: New file.
28845         * modules/unistr/u32-check: New file.
28846         * lib/unistr/u8-check.c: New file.
28847         * lib/unistr/u16-check.c: New file.
28848         * lib/unistr/u32-check.c: New file.
28849
28850         * modules/unistr/u8-chr: New file.
28851         * modules/unistr/u16-chr: New file.
28852         * modules/unistr/u32-chr: New file.
28853         * lib/unistr/u8-chr.c: New file.
28854         * lib/unistr/u16-chr.c: New file.
28855         * lib/unistr/u32-chr.c: New file.
28856
28857         * modules/unistr/u8-cmp: New file.
28858         * modules/unistr/u16-cmp: New file.
28859         * modules/unistr/u32-cmp: New file.
28860         * lib/unistr/u8-cmp.c: New file.
28861         * lib/unistr/u16-cmp.c: New file.
28862         * lib/unistr/u32-cmp.c: New file.
28863
28864         * modules/unistr/u8-cpy: New file.
28865         * modules/unistr/u16-cpy: New file.
28866         * modules/unistr/u32-cpy: New file.
28867         * lib/unistr/u8-cpy.c: New file.
28868         * lib/unistr/u16-cpy.c: New file.
28869         * lib/unistr/u32-cpy.c: New file.
28870         * lib/unistr/u-cpy.h: New file.
28871
28872         * modules/unistr/u8-cpy-alloc: New file.
28873         * modules/unistr/u16-cpy-alloc: New file.
28874         * modules/unistr/u32-cpy-alloc: New file.
28875         * lib/unistr/u8-cpy-alloc.c: New file.
28876         * lib/unistr/u16-cpy-alloc.c: New file.
28877         * lib/unistr/u32-cpy-alloc.c: New file.
28878         * lib/unistr/u-cpy-alloc.h: New file.
28879
28880         * modules/unistr/u8-endswith: New file.
28881         * modules/unistr/u16-endswith: New file.
28882         * modules/unistr/u32-endswith: New file.
28883         * lib/unistr/u8-endswith.c: New file.
28884         * lib/unistr/u16-endswith.c: New file.
28885         * lib/unistr/u32-endswith.c: New file.
28886         * lib/unistr/u-endswith.h: New file.
28887
28888         * modules/unistr/u8-mblen: New file.
28889         * modules/unistr/u16-mblen: New file.
28890         * modules/unistr/u32-mblen: New file.
28891         * lib/unistr/u8-mblen.c: New file.
28892         * lib/unistr/u16-mblen.c: New file.
28893         * lib/unistr/u32-mblen.c: New file.
28894
28895         * modules/unistr/u8-mbtouc: New file.
28896         * modules/unistr/u16-mbtouc: New file.
28897         * modules/unistr/u32-mbtouc: New file.
28898         * lib/unistr/u8-mbtouc.c: New file.
28899         * lib/unistr/u16-mbtouc.c: New file.
28900         * lib/unistr/u32-mbtouc.c: New file.
28901
28902         * modules/unistr/u8-mbtouc-safe: New file.
28903         * modules/unistr/u16-mbtouc-safe: New file.
28904         * modules/unistr/u32-mbtouc-safe: New file.
28905         * lib/unistr/u8-mbtouc-safe.c: New file.
28906         * lib/unistr/u16-mbtouc-safe.c: New file.
28907         * lib/unistr/u32-mbtouc-safe.c: New file.
28908
28909         * modules/unistr/u8-move: New file.
28910         * modules/unistr/u16-move: New file.
28911         * modules/unistr/u32-move: New file.
28912         * lib/unistr/u8-move.c: New file.
28913         * lib/unistr/u16-move.c: New file.
28914         * lib/unistr/u32-move.c: New file.
28915         * lib/unistr/u-move.h: New file.
28916
28917         * modules/unistr/u8-next: New file.
28918         * modules/unistr/u16-next: New file.
28919         * modules/unistr/u32-next: New file.
28920         * lib/unistr/u8-next.c: New file.
28921         * lib/unistr/u16-next.c: New file.
28922         * lib/unistr/u32-next.c: New file.
28923
28924         * modules/unistr/u8-prev: New file.
28925         * modules/unistr/u16-prev: New file.
28926         * modules/unistr/u32-prev: New file.
28927         * lib/unistr/u8-prev.c: New file.
28928         * lib/unistr/u16-prev.c: New file.
28929         * lib/unistr/u32-prev.c: New file.
28930
28931         * modules/unistr/u8-set: New file.
28932         * modules/unistr/u16-set: New file.
28933         * modules/unistr/u32-set: New file.
28934         * lib/unistr/u8-set.c: New file.
28935         * lib/unistr/u16-set.c: New file.
28936         * lib/unistr/u32-set.c: New file.
28937         * lib/unistr/u-set.h: New file.
28938
28939         * modules/unistr/u8-startswith: New file.
28940         * modules/unistr/u16-startswith: New file.
28941         * modules/unistr/u32-startswith: New file.
28942         * lib/unistr/u8-startswith.c: New file.
28943         * lib/unistr/u16-startswith.c: New file.
28944         * lib/unistr/u32-startswith.c: New file.
28945         * lib/unistr/u-startswith.h: New file.
28946
28947         * modules/unistr/u8-stpcpy: New file.
28948         * modules/unistr/u16-stpcpy: New file.
28949         * modules/unistr/u32-stpcpy: New file.
28950         * lib/unistr/u8-stpcpy.c: New file.
28951         * lib/unistr/u16-stpcpy.c: New file.
28952         * lib/unistr/u32-stpcpy.c: New file.
28953         * lib/unistr/u-stpcpy.h: New file.
28954
28955         * modules/unistr/u8-stpncpy: New file.
28956         * modules/unistr/u16-stpncpy: New file.
28957         * modules/unistr/u32-stpncpy: New file.
28958         * lib/unistr/u8-stpncpy.c: New file.
28959         * lib/unistr/u16-stpncpy.c: New file.
28960         * lib/unistr/u32-stpncpy.c: New file.
28961         * lib/unistr/u-stpncpy.h: New file.
28962
28963         * modules/unistr/u8-strcat: New file.
28964         * modules/unistr/u16-strcat: New file.
28965         * modules/unistr/u32-strcat: New file.
28966         * lib/unistr/u8-strcat.c: New file.
28967         * lib/unistr/u16-strcat.c: New file.
28968         * lib/unistr/u32-strcat.c: New file.
28969         * lib/unistr/u-strcat.h: New file.
28970
28971         * modules/unistr/u8-strchr: New file.
28972         * modules/unistr/u16-strchr: New file.
28973         * modules/unistr/u32-strchr: New file.
28974         * lib/unistr/u8-strchr.c: New file.
28975         * lib/unistr/u16-strchr.c: New file.
28976         * lib/unistr/u32-strchr.c: New file.
28977
28978         * modules/unistr/u8-strcmp: New file.
28979         * modules/unistr/u16-strcmp: New file.
28980         * modules/unistr/u32-strcmp: New file.
28981         * lib/unistr/u8-strcmp.c: New file.
28982         * lib/unistr/u16-strcmp.c: New file.
28983         * lib/unistr/u32-strcmp.c: New file.
28984
28985         * modules/unistr/u8-strcpy: New file.
28986         * modules/unistr/u16-strcpy: New file.
28987         * modules/unistr/u32-strcpy: New file.
28988         * lib/unistr/u8-strcpy.c: New file.
28989         * lib/unistr/u16-strcpy.c: New file.
28990         * lib/unistr/u32-strcpy.c: New file.
28991         * lib/unistr/u-strcpy.h: New file.
28992
28993         * modules/unistr/u8-strcspn: New file.
28994         * modules/unistr/u16-strcspn: New file.
28995         * modules/unistr/u32-strcspn: New file.
28996         * lib/unistr/u8-strcspn.c: New file.
28997         * lib/unistr/u16-strcspn.c: New file.
28998         * lib/unistr/u32-strcspn.c: New file.
28999         * lib/unistr/u-strcspn.h: New file.
29000
29001         * modules/unistr/u8-strdup: New file.
29002         * modules/unistr/u16-strdup: New file.
29003         * modules/unistr/u32-strdup: New file.
29004         * lib/unistr/u8-strdup.c: New file.
29005         * lib/unistr/u16-strdup.c: New file.
29006         * lib/unistr/u32-strdup.c: New file.
29007         * lib/unistr/u-strdup.h: New file.
29008
29009         * modules/unistr/u8-strlen: New file.
29010         * modules/unistr/u16-strlen: New file.
29011         * modules/unistr/u32-strlen: New file.
29012         * lib/unistr/u8-strlen.c: New file.
29013         * lib/unistr/u16-strlen.c: New file.
29014         * lib/unistr/u32-strlen.c: New file.
29015         * lib/unistr/u-strlen.h: New file.
29016
29017         * modules/unistr/u8-strmblen: New file.
29018         * modules/unistr/u16-strmblen: New file.
29019         * modules/unistr/u32-strmblen: New file.
29020         * lib/unistr/u8-strmblen.c: New file.
29021         * lib/unistr/u16-strmblen.c: New file.
29022         * lib/unistr/u32-strmblen.c: New file.
29023
29024         * modules/unistr/u8-strmbtouc: New file.
29025         * modules/unistr/u16-strmbtouc: New file.
29026         * modules/unistr/u32-strmbtouc: New file.
29027         * lib/unistr/u8-strmbtouc.c: New file.
29028         * lib/unistr/u16-strmbtouc.c: New file.
29029         * lib/unistr/u32-strmbtouc.c: New file.
29030
29031         * modules/unistr/u8-strncat: New file.
29032         * modules/unistr/u16-strncat: New file.
29033         * modules/unistr/u32-strncat: New file.
29034         * lib/unistr/u8-strncat.c: New file.
29035         * lib/unistr/u16-strncat.c: New file.
29036         * lib/unistr/u32-strncat.c: New file.
29037         * lib/unistr/u-strncat.h: New file.
29038
29039         * modules/unistr/u8-strncmp: New file.
29040         * modules/unistr/u16-strncmp: New file.
29041         * modules/unistr/u32-strncmp: New file.
29042         * lib/unistr/u8-strncmp.c: New file.
29043         * lib/unistr/u16-strncmp.c: New file.
29044         * lib/unistr/u32-strncmp.c: New file.
29045
29046         * modules/unistr/u8-strncpy: New file.
29047         * modules/unistr/u16-strncpy: New file.
29048         * modules/unistr/u32-strncpy: New file.
29049         * lib/unistr/u8-strncpy.c: New file.
29050         * lib/unistr/u16-strncpy.c: New file.
29051         * lib/unistr/u32-strncpy.c: New file.
29052         * lib/unistr/u-strncpy.h: New file.
29053
29054         * modules/unistr/u8-strnlen: New file.
29055         * modules/unistr/u16-strnlen: New file.
29056         * modules/unistr/u32-strnlen: New file.
29057         * lib/unistr/u8-strnlen.c: New file.
29058         * lib/unistr/u16-strnlen.c: New file.
29059         * lib/unistr/u32-strnlen.c: New file.
29060         * lib/unistr/u-strnlen.h: New file.
29061
29062         * modules/unistr/u8-strpbrk: New file.
29063         * modules/unistr/u16-strpbrk: New file.
29064         * modules/unistr/u32-strpbrk: New file.
29065         * lib/unistr/u8-strpbrk.c: New file.
29066         * lib/unistr/u16-strpbrk.c: New file.
29067         * lib/unistr/u32-strpbrk.c: New file.
29068         * lib/unistr/u-strpbrk.h: New file.
29069
29070         * modules/unistr/u8-strrchr: New file.
29071         * modules/unistr/u16-strrchr: New file.
29072         * modules/unistr/u32-strrchr: New file.
29073         * lib/unistr/u8-strrchr.c: New file.
29074         * lib/unistr/u16-strrchr.c: New file.
29075         * lib/unistr/u32-strrchr.c: New file.
29076
29077         * modules/unistr/u8-strspn: New file.
29078         * modules/unistr/u16-strspn: New file.
29079         * modules/unistr/u32-strspn: New file.
29080         * lib/unistr/u8-strspn.c: New file.
29081         * lib/unistr/u16-strspn.c: New file.
29082         * lib/unistr/u32-strspn.c: New file.
29083         * lib/unistr/u-strspn.h: New file.
29084
29085         * modules/unistr/u8-strstr: New file.
29086         * modules/unistr/u16-strstr: New file.
29087         * modules/unistr/u32-strstr: New file.
29088         * lib/unistr/u8-strstr.c: New file.
29089         * lib/unistr/u16-strstr.c: New file.
29090         * lib/unistr/u32-strstr.c: New file.
29091         * lib/unistr/u-strstr.h: New file.
29092
29093         * modules/unistr/u8-strtok: New file.
29094         * modules/unistr/u16-strtok: New file.
29095         * modules/unistr/u32-strtok: New file.
29096         * lib/unistr/u8-strtok.c: New file.
29097         * lib/unistr/u16-strtok.c: New file.
29098         * lib/unistr/u32-strtok.c: New file.
29099         * lib/unistr/u-strtok.h: New file.
29100
29101         * modules/unistr/u8-uctomb: New file.
29102         * modules/unistr/u16-uctomb: New file.
29103         * modules/unistr/u32-uctomb: New file.
29104         * lib/unistr/u8-uctomb.c: New file.
29105         * lib/unistr/u16-uctomb.c: New file.
29106         * lib/unistr/u32-uctomb.c: New file.
29107
29108         * MODULES.html.sh (Unicode string functions): Add the new modules.
29109
29110 2007-01-08  Bruno Haible  <bruno@clisp.org>
29111
29112         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
29113         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
29114         subdirectories.
29115
29116 2007-01-08  Karl Berry  <karl@gnu.org>
29117
29118         * doc/error.texi: mention that main() fns must set program_name
29119         when progname is used.
29120
29121 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
29122
29123         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
29124         WCTYPE_H is empty, for the benefit of builds from non-distclean
29125         directories.  Problem reported by Eric Blake in
29126         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
29127
29128 2007-01-08  Bruno Haible  <bruno@clisp.org>
29129
29130         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
29131         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
29132         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
29133         PROVIDE_CANONICALIZE_FILENAME_MODE.
29134         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
29135
29136 2007-01-08  Bruno Haible  <bruno@clisp.org>
29137
29138         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
29139         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
29140         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
29141         * lib/fts.c: Likewise.
29142         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
29143
29144 2006-12-25  Bruno Haible  <bruno@clisp.org>
29145
29146         * modules/utf8-ucs4-safe: New file.
29147         * lib/utf8-ucs4-safe.h: New file.
29148         * lib/unistr/utf8-ucs4-safe.c: New file.
29149
29150         * modules/utf16-ucs4-safe: New file.
29151         * lib/utf16-ucs4-safe.h: New file.
29152         * lib/unistr/utf16-ucs4-safe.c: New file.
29153
29154         * MODULES.html.sh (Unicode string functions): Add the new modules.
29155
29156 2007-01-08  Bruno Haible  <bruno@clisp.org>
29157
29158         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
29159         (Depends-on): Add unitypes.
29160         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
29161         (u8_mbtouc_aux): Move out to separate file.
29162         (u8_mbtouc): Use ucs4_t, uint8_t types.
29163         * lib/unistr/utf8-ucs4.c: New file.
29164
29165         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
29166         (Depends-on): Add unitypes.
29167         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
29168         (u16_mbtouc_aux): Move out to separate file.
29169         (u16_mbtouc): Use ucs4_t, uint16_t types.
29170         * lib/unistr/utf16-ucs4.c: New file.
29171
29172         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
29173         (Depends-on): Add unitypes.
29174         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
29175         (u8_uctomb_aux): Move out to separate file.
29176         (u8_uctomb): Use ucs4_t, uint8_t types.
29177         * lib/unistr/ucs4-utf8.c: New file.
29178
29179         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
29180         (Depends-on): Add unitypes.
29181         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
29182         (u16_uctomb_aux): Move out to separate file.
29183         (u16_uctomb): Use ucs4_t, uint16_t types.
29184         * lib/unistr/ucs4-utf16.c: New file.
29185
29186 2006-12-25  Bruno Haible  <bruno@clisp.org>
29187
29188         * modules/unitypes: New file.
29189         * lib/unitypes.h: New file.
29190         * MODULES.html.sh (func_all_modules): New section "Unicode string
29191         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
29192         this section. Add unitypes.
29193
29194 2007-01-08  Bruno Haible  <bruno@clisp.org>
29195
29196         Avoid variable names that conflict with those from libtool.
29197         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
29198         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
29199         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
29200         library_names_spec to acl_library_names_spec, hardcode_* to
29201         acl_hardcode_*.
29202         Reported by Ralf Wildenhues.
29203
29204 2007-01-08  Bruno Haible  <bruno@clisp.org>
29205
29206         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
29207         definition.
29208         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
29209         definition.
29210         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
29211         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
29212         definition.
29213         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
29214         definition.
29215         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
29216         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
29217         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
29218         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
29219         definition.
29220         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
29221         definition.
29222         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
29223         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
29224         GC_USE_<algorithm>.
29225         * lib/gc-libgcrypt.c: Likewise.
29226         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
29227         * modules/gc-arctwo (configure.ac): Likewise.
29228         * modules/gc-des (configure.ac): Likewise.
29229         * modules/gc-hmac-md5 (configure.ac): Likewise.
29230         * modules/gc-hmac-sha1 (configure.ac): Likewise.
29231         * modules/gc-md2 (configure.ac): Likewise.
29232         * modules/gc-md4 (configure.ac): Likewise.
29233         * modules/gc-md5 (configure.ac): Likewise.
29234         * modules/gc-random (configure.ac): Likewise.
29235         * modules/gc-rijndael (configure.ac): Likewise.
29236         * modules/gc-sha1 (configure.ac): Likewise.
29237
29238 2007-01-08  Bruno Haible  <bruno@clisp.org>
29239
29240         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
29241         macro definition.
29242         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
29243         definition.
29244         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
29245         definition.
29246         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
29247         * modules/fcntl-safer (configure.ac): Likewise.
29248         * modules/fopen-safer (configure.ac): Likewise.
29249         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
29250         GNULIB_FWRITEERROR macro definition.
29251
29252 2007-01-08  Bruno Haible  <bruno@clisp.org>
29253
29254         * m4/gnulib-common.m4: New file.
29255         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
29256         (func_get_filelist): Add m4/gnulib-common.m4.
29257
29258 2007-01-08  Bruno Haible  <bruno@clisp.org>
29259
29260         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
29261         command.
29262
29263 2007-01-08  Jim Meyering  <jim@meyering.net>
29264
29265         Use a more robust test for a "can't happen" condition.
29266         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
29267         narrowed the st_size value.  Presuming the "can't happen" condition
29268         is true, that narrowing could conceivably convert an invalid st_size
29269         value into a valid one.  Instead, use a change based on Matthew
29270         Woehlke's original patch.
29271
29272         Slight readability improvement: use an assert-like macro
29273         in place of literal "abort ()" uses.
29274         * lib/fts.c (fts_assert): Define.
29275         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
29276         Use this macro instead of a bare 'abort'.
29277
29278 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
29279
29280         Don't worry about using IRIX 5.3's wctype.h broken definitions;
29281         simply work around them.
29282         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
29283         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
29284         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
29285         declaring.
29286         Don't bother to define as macros, since the standard doesn't require it.
29287         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
29288         longer worry about IRIX 5.3.
29289         (HAVE_WCTYPE_CTMP_BUG): Remove.
29290
29291 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
29292
29293         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
29294         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
29295         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
29296         Problems reported by Georg Schwarz for IRIX 5.3.
29297
29298         * gnulib-tool (autoconf_minversion): Take the maximum version number
29299         found, not the minimum.  Problem reported by James Youngman.
29300
29301 2007-01-03  Karl Berry  <karl@gnu.org>
29302
29303         * doc/error.texi: new file, explaining interaction with progname.
29304         * doc/gnulib.texi: include it.  Update copyright.
29305
29306 2007-01-03  Simon Josefsson  <simon@josefsson.org>
29307
29308         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
29309         AC_CANONICAL_HOST, to improve autobuild outputs.
29310
29311 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
29312             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
29313
29314         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
29315         sockets, server sockets, and other file descriptors.  Count errors
29316         to compute the return value.  Reorder the code a bit to be easier
29317         to follow.  Don't set event bits that were not requested (except
29318         POLLERR and POLLHUP).
29319
29320 2007-01-01  Bruno Haible  <bruno@clisp.org>
29321
29322         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
29323
29324 2007-01-03  Jim Meyering  <jim@meyering.net>
29325
29326         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
29327
29328 2007-01-02  Bruno Haible  <bruno@clisp.org>
29329
29330         * modules/settime (Include): Require timespec.h.
29331         * modules/nanosleep (Include): Likewise.
29332
29333 2007-01-01  Bruno Haible  <bruno@clisp.org>
29334
29335         * gnulib-tool (func_emit_copyright_notice): Bump year.
29336         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
29337
29338 2007-01-01  Bruno Haible  <bruno@clisp.org>
29339
29340         Improve support for OpenBSD.
29341         * build-aux/config.rpath (libname_spec): Export.
29342         (library_names_spec): New variable. Export.
29343         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
29344         library_names_spec from the config.rpath output. Locate shared library
29345         through the name pattern in library_names_spec.
29346
29347 2007-01-01  Eric Blake  <ebb9@byu.net>
29348
29349         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
29350
29351 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
29352
29353         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
29354         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
29355         assume the C locale, and avoid an "eval" that could cause trouble.
29356         Problem with SORT reported by Bob Proulx.
29357
29358         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
29359         Define.  Trivial patch from Henning Nielsen Lund, originally
29360         sent to bug-grep@gnu.org today.
29361
29362 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
29363
29364         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
29365         struct stat.  Problem reported by Henning Nielsen Lund.
29366         * lib/acl.c: Include acl.h first, to check interface.  Don't
29367         bother to include sys/types.h and sys/stat.h again.
29368
29369 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
29370
29371         Import the following change from libc; problem reported by
29372         Sven Verdoolaege.
29373
29374         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
29375
29376         [BZ #1373]
29377         * lib/argp.h: Remove __NTH for __argp_usage inline function.
29378
29379 2006-12-28  Jim Meyering  <jim@meyering.net>
29380
29381         * build-aux/announce-gen: Do not assume that the package
29382         builds any of tar.gz, tar.bz2, and .xdelta files.
29383         Suggestion from Simon Josefsson.
29384
29385 2006-12-28  Simon Josefsson  <simon@josefsson.org>
29386
29387         * modules/announce-gen: New file.
29388
29389 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
29390
29391         * lib/mbchar.h: Just include <wctype.h>; the wctype module
29392         handles its gotchas now.
29393         * lib/mbswidth.c: Likewise.
29394         * lib/wcwidth.h: Likewise.
29395         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
29396         and iswcntrl; the wctype module does this stuff now.
29397         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
29398         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
29399         * modules/mbchar (Depends-on): Add wctype.
29400         * modules/mbswidth (Depends-on): Likewise.
29401         * modules/wcwidth (Depends-on): Likewise.
29402
29403 2006-12-27  Eric Blake  <ebb9@byu.net>
29404
29405         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
29406         module uses more than what <wctype.h> is required to provide.
29407
29408 2006-12-26  Eric Blake  <ebb9@byu.net>
29409
29410         * gnulib-tool (sed_extract_prog): Avoid space-tab.
29411
29412 2006-12-26  Eric Blake  <ebb9@byu.net>
29413
29414         * modules/absolute-header: New module.
29415         * modules/fcntl (Depends-on): Depend on it.
29416         * modules/inttypes (Depends-on): Likewise.
29417         * modules/stdint (Depends-on): Likewise.
29418         * modules/sys_stat (Depends-on): Likewise.
29419         * modules/wctype (Depends-on): Likewise.
29420         * MODULES.html.sh (Support for building libraries and
29421         executables): Document it.
29422
29423 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
29424
29425         * gnulib-tool (SED): Remove, undoing previous change.
29426         The problem was that it broke coreutils on Solaris, because
29427         "sed --posix" leaked into a makefile.
29428         (sed): New alias, if 'alias' and GNU sed.
29429
29430 2006-12-24  Jim Meyering  <jim@meyering.net>
29431
29432         Work around an fchownat bug in glibc-2.4:
29433         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
29434         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
29435         in spite of the -P option.
29436         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
29437         New macros.
29438         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
29439         * modules/openat (Files): Add lib/fchownat.c.
29440         * lib/openat.c (fchownat): Don't define here.  Move to...
29441         * lib/fchownat.c: ...this new file.
29442
29443 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
29444
29445         Fix bug reported by Bruno Haible in
29446         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
29447         where quotearg.c didn't compile on Mac OS X 10.2 because it
29448         lacks <wchar.h> and wint_t.
29449         * lib/wctype_.h (__wctype_wint_t): New type.
29450         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
29451         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
29452         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
29453         Arg is now of type __wctype_wint_t, not wint_t.
29454         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
29455         substitute HAVE_WINT_T.
29456         * modules/wctype (Files): Add m4/wint_t.m4.
29457         (wctype.h): Substitute HAVE_WINT_T.
29458
29459 2006-12-23  Bruno Haible  <bruno@clisp.org>
29460
29461         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
29462
29463 2006-12-23  Bruno Haible  <bruno@clisp.org>
29464
29465         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
29466         S_ISLNK.
29467         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
29468         mingw.
29469
29470 2006-12-22  Bruno Haible  <bruno@clisp.org>
29471
29472         * lib/copy-file.c: Include acl.h.
29473         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
29474         Close the file descriptors only after being done with copy_acl.
29475         * modules/copy-file (Depends-on): Add acl.
29476
29477 2006-12-22  Bruno Haible  <bruno@clisp.org>
29478
29479         * gnulib-tool (SED): New variable.
29480         Use $SED instead of sed everywhere.
29481
29482 2006-12-22  Bruno Haible  <bruno@clisp.org>
29483
29484         * modules/no-c++: New file.
29485         * m4/no-c++.m4: New file.
29486         * MODULES.html.sh (Support for building libraries and executables):
29487         Add no-c++.
29488
29489 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
29490
29491         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
29492         Include <limits.h>, and use its INT_MAX to rewrite the
29493         j loop so that it does not overflow 'int'.  Problem reported by
29494         Ralf Wildenhues in
29495         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
29496         Play it safe by shifting left by 1 rather than multiplying by 2,
29497         as GCC is less likely to optimize this away when the value
29498         is signed (when it assumes overflow leads to undefined behavior).
29499         Also, don't assume time_t uses two's complement.
29500
29501 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
29502
29503         * MODULES.html.sh: New module wctype.
29504         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
29505         * lib/fnmatch.c: Don't bother to include <wchar.h> before
29506         <wctype.h>, since the new wctype module should fix this.
29507         * lib/quotearg.c: Include <wctype.h> unconditionally, since
29508         the wctype module should arrange for it.
29509         * lib/regex_internal.h: Likewise.
29510         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
29511         since the wctype module should handle this now.
29512         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
29513         * modules/fnmatch (Depends-on): Add wctype.
29514         * modules/quotearg (Depends-on): Likewise.
29515         * modules/regex (Depends-on): Likewise.
29516
29517 2006-12-19  Bruno Haible  <bruno@clisp.org>
29518
29519         * lib/strdup.h [C++]: Wrap definitions in extern "C".
29520         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
29521
29522 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29523
29524         * modules/savewd (Depends-on): Fix dependency on fcntl.
29525
29526 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
29527
29528         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
29529         conforms to C99, rather than relying on the user's environment
29530         setting of STDINT_H.
29531
29532 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
29533         and Eric Blake  <ebb9@byu.net>
29534
29535         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
29536         This is more consistent with the other defines here.
29537         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
29538         Port to z/OS.  Problem reported by Paul Gilmartin.
29539         Change local vars to use gl_ prefix rather than ac_.
29540         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
29541         with other defines.
29542         * modules/double-slash-root: New module.
29543         * modules/dirname (Files): Remove m4/double-slash-root.m4.
29544         (Depends-on): Add double-slash-root.
29545         * MODULES.html.sh (File system functions): Mention new module.
29546
29547 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
29548
29549         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
29550         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
29551         This is for the benefit of gzip, which doesn't do i18n.
29552
29553 2006-12-12  Jim Meyering  <jim@meyering.net>
29554
29555         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
29556         Reported by Andreas Schwab <schwab@suse.de>.
29557
29558 2006-12-12  Bruno Haible  <bruno@clisp.org>
29559
29560         Merge these changes.
29561         2006-09-05  Bruno Haible  <bruno@clisp.org>
29562         * lib/iconvme.c (iconv_string): No need to save and restore errno when
29563         iconv_alloc succeeded.
29564         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
29565         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
29566         test for " && dest " at the end - dest is always != NULL there. Call
29567         iconv with 4xNULL arguments initially, to reset the state. Call iconv
29568         with 2xNULL arguments, also to flush the state storage. Handle the
29569         IRIX iconv behaviour. Realloc the final result, to throw away unused
29570         memory.
29571
29572 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
29573
29574         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
29575         and fchmodat unconditionally, since glibc 2.4 has them.
29576         Problem reported by Arkadiusz Miskiewicz.
29577
29578 2006-12-10  Bruno Haible  <bruno@clisp.org>
29579
29580         * gnulib-tool (func_import): Show the include files only for those
29581         modules that are copied and specified.
29582         Reported by Karl Berry.
29583
29584 2006-12-08  Jim Meyering  <jim@meyering.net>
29585
29586         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
29587         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
29588
29589         * build-aux/announce-gen: Add two new options, both optional:
29590         --bootstrap-tools=TOOL_LIST
29591               a comma-separated list of tools, e.g.,
29592               autoconf,automake,bison,gnulib
29593         --gnulib-snapshot-date=DATE
29594               if gnulib is in the bootstrap tool list,
29595               then report this as the snapshot date.
29596               If not specified, use the current date/time.
29597               If you specify a date here, be sure it's UTC.
29598
29599 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29600
29601         * tests/test-argp-2.sh: Fix test to match actual output.
29602         (func_compare): Fix sed script to be portable.
29603
29604 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
29605
29606         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
29607         workaround for this case.  It is not autoconfigured now; offhand
29608         it's hard to see how to autoconfigure it.
29609
29610 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
29611
29612         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
29613         a directory that is about to be chowned.  Such a directory's
29614         initial file permissions should permit the owner only and this
29615         should not be changed until after the chown, since the group and
29616         other bits would be incorrect if they granted permission before
29617         the chown.
29618
29619         Fix porting problem for iswctype reported by Georg Schwarz in:
29620         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
29621         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
29622         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
29623         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
29624         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
29625
29626 2006-12-03  Jim Meyering  <jim@meyering.net>
29627
29628         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
29629         p->fts_statp may not yet be defined.
29630         (fts_read): Instead, set it in the caller, once p->fts_statp is
29631         sure to be defined, and corresponds to a top-level directory.
29632         This bug made du -x fail.  Here's the coreutils test case:
29633         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
29634         Reported by Mike Frysinger.
29635
29636 2006-12-01  Jim Meyering  <jim@meyering.net>
29637
29638         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
29639         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
29640         Reported by Simon Josefsson.
29641
29642 2006-11-30  Jim Meyering  <jim@meyering.net>
29643
29644         * m4/warning.m4: Use the all-permissive copyright notice
29645         recommended by RMS (rather than LGPL).
29646         * m4/vararrays.m4: Likewise.
29647         * m4/flexmember.m4: Likewise.
29648
29649 2006-11-29  Bruno Haible  <bruno@clisp.org>
29650
29651         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
29652         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
29653         using +=.
29654         Reported by Simon Josefsson <simon@josefsson.org>.
29655
29656 2006-11-28  James Youngman <jay@gnu.org>
29657
29658         * README: Advise users that they might find the bug-gnulib@gnu.org
29659         and autotools-announce@gnu.org mailing lists useful.
29660
29661 2006-11-28  Bruno Haible  <bruno@clisp.org>
29662
29663         * m4/ptrdiff_max.m4: Remove file.
29664
29665 2006-11-21  Bruno Haible  <bruno@clisp.org>
29666
29667         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
29668         _AC_COMPUTE_INT.
29669         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
29670         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
29671         _AC_COMPUTE_INT.
29672         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
29673         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
29674         _AC_COMPUTE_INT.
29675         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
29676
29677 2006-11-28  Jim Meyering  <jim@meyering.net>
29678
29679         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
29680         warning from "gcc -Wshadow" about shadowing the builtin.
29681
29682 2006-11-27  Bruno Haible  <bruno@clisp.org>
29683
29684         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
29685         _AC_COMPUTE_INT.
29686         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
29687
29688 2006-11-27  Bruno Haible  <bruno@clisp.org>
29689             Paul Eggert  <eggert@cs.ucla.edu>
29690
29691         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
29692
29693 2006-11-26  Bruno Haible  <bruno@clisp.org>
29694
29695         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
29696         noinst_LTLIBRARIES.
29697
29698 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
29699             Bruno Haible  <bruno@clisp.org>
29700
29701         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
29702         if compiling with "gcc -ansi".
29703
29704 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
29705
29706         Fix some incompatibilities with gcc -ansi -pedantic.
29707         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
29708         if compiling pedantically with GCC, unless it's C99 or later.
29709         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
29710         it mishandles gcc -ansi -pedantic as well.
29711         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
29712         if gcc -pedantic.
29713         * lib/regexec.c (check_node_accept_bytes): Don't use auto
29714         initializers for struct if -pedantic, unless it's C99 or later.
29715
29716 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
29717
29718         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
29719         Don't close an fd more than once. Identical atimes indicate
29720         success, not failure.
29721
29722 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
29723
29724         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
29725
29726 2006-11-23  Jim Meyering  <jim@meyering.net>
29727
29728         * build-aux/announce-gen: New file.  From coreutils.
29729
29730 2006-11-22  Jim Meyering  <jim@meyering.net>
29731
29732         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
29733         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
29734         (fts_read): Use a temporary to narrow the overused st_size member
29735         before using it in a switch statement.  Reported by Matthew Woehlke.
29736
29737         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
29738         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
29739
29740 2006-11-20  Bruno Haible  <bruno@clisp.org>
29741
29742         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
29743         changequote instead of pairs of brackets.
29744         Reported by Andreas Schwab <schwab@suse.de>.
29745
29746 2006-11-21  Jim Meyering  <jim@meyering.net>
29747
29748         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
29749         so as to remain compatible with older compilers.
29750         Patch from Michael Deutschmann.
29751
29752 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
29753
29754         * MODULES.html.sh (File system functions): Add openat.
29755
29756         * lib/openat.h (rpl_fstatat): New macro, if
29757         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
29758         (fstatat): Define to rpl_fstatat under the same conditions,
29759         unless COMPILING_FSTATAT.
29760         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
29761         seems to have the bug.
29762         * lib/fstatat.c: New file.
29763         * modules/openat (Files): Add it.
29764
29765 2006-11-20  Bruno Haible  <bruno@clisp.org>
29766
29767         * Makefile: New file.
29768
29769 2006-11-20  Jim Meyering  <jim@meyering.net>
29770
29771         The beginnings of syntax-related checks for gnulib.
29772         * lib/Makefile: New file.
29773         * lib/t-idcache: New script.  Ensure that the two halves of
29774         idcache.c stay in sync.
29775
29776         * lib/idcache.c: Adjust comments in user- and group- portions to
29777         be more accurate, and to be consistent with one another.
29778
29779 2006-11-20  Jim Meyering  <jim@meyering.net>
29780
29781         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
29782         continue using the flexible array member (thus, this module performs
29783         half as many malloc calls), with the addition that...
29784         (getgroup, getuser): Consistently record a non-match via an empty
29785         "name" string, and map an empty string match to a NULL return value.
29786         * modules/idcache (Depends-on): Re-add flexmember.
29787
29788         * lib/idcache.c (getuser): Remove all uses of the register keyword.
29789         (getuidbyname, getgroup, getgidbyname): Likewise.
29790
29791         Use cleaner syntax: NULL rather than 0.
29792         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
29793
29794 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
29795
29796         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
29797         It mishandled the case where the group was missing.
29798         Problem reported by Greg Schafer.
29799         * modules/idcache: Likewise.
29800
29801 2006-11-18  Jim Meyering  <jim@meyering.net>
29802
29803         * check-module (%exempt_header): Add exception for some
29804         conditionally-included headers.
29805
29806         * modules/i-ring (Depends-on): Add verify.
29807         (License): Change to LGPL.
29808
29809 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
29810
29811         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
29812         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
29813         and inttostr.h.  Use snprintf rather than uinttostr, so that
29814         LGPLed code doesn't depend on GPLed.
29815
29816 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
29817
29818         * modules/inline (License): Change from GPL to LGPL.
29819
29820 2006-11-17  Jim Meyering  <jim@meyering.net>
29821
29822         * modules/d-type (License): Switch to LGPL.
29823
29824 2006-11-15  Bruno Haible  <bruno@clisp.org>
29825
29826         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
29827
29828 2006-11-15  Eric Blake  <ebb9@byu.net>
29829
29830         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
29831         the module dependency.
29832
29833 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
29834             Bruno Haible  <bruno@clisp.org>
29835
29836         * gnulib-tool (func_create_testdir): Add license consistency check.
29837
29838 2006-11-15  Eric Blake  <ebb9@byu.net>
29839
29840         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
29841         random "(cached)" in configure output.
29842
29843 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29844
29845         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
29846         test for conforming inttypes.h is both announced and cached.
29847
29848         * MODULES.html.sh (seen_modules, seen_files): New variables.
29849         (func_module): Rewrite to use a few less gnulib-tool and sed
29850         invocations.  Avoid a couple of quadratic algorithms for ...
29851         (missed_modules, missed_files): ... these, with ...
29852         (func_append, func_tmpdir): ... these new functions, from
29853         gnulib-tool.  Analogously, install traps for cleanup.
29854
29855         * tests/test-gc.c (main): Remove unused variables.
29856         * tests/test-read-file.c: Include stdlib.h, for 'free'.
29857
29858 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
29859
29860         * modules/inttostr (License): Change to LGPL.
29861
29862 2006-11-14  Eric Blake  <ebb9@byu.net>
29863
29864         * modules/tempname (License): Change to LGPL.
29865
29866 2006-11-14  Eric Blake  <ebb9@byu.net>
29867
29868         * doc/functions.texi (Function Portability): *printf functions on
29869         Cygwin now understand all POSIX size specifiers.
29870
29871 2006-11-14  Bruno Haible  <bruno@clisp.org>
29872
29873         * modules/c-ctype (License): Change to LGPL.
29874
29875 2006-11-12  Bruno Haible  <bruno@clisp.org>
29876
29877         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
29878         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
29879         for GNOME libraries, for which the include files are installed in
29880         subdirectories of $prefix/include.
29881
29882 2006-11-12  Bruno Haible  <bruno@clisp.org>
29883
29884         * m4/lib-link.m4: Require at least autoconf-2.54.
29885         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
29886         name to underscores for the --with option.
29887
29888 2006-11-13  Bruno Haible  <bruno@clisp.org>
29889
29890         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
29891         the tests directory.
29892         Reported by Ralf Wildenhues.
29893
29894 2006-11-13  Bruno Haible  <bruno@clisp.org>
29895
29896         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
29897         (func_emit_initmacro_end): Undo the override here.
29898         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
29899         Works around the famous automake error in coreutils.
29900
29901 2006-11-13  Eric Blake  <ebb9@byu.net>
29902
29903         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
29904         element, not its node.
29905
29906 2006-11-12  Bruno Haible  <bruno@clisp.org>
29907
29908         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
29909         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
29910
29911 2006-11-12  Bruno Haible  <bruno@clisp.org>
29912
29913         * gnulib-tool: New option --local-symlink.
29914         (func_usage): Document it.
29915         (lsymbolic): New variable.
29916         (func_import, func_create_testdir): If --symlink was not specified,
29917         test whether --local-symlink was specified and the file comes from
29918         the local_gnulib_dir.
29919
29920 2006-11-12  Bruno Haible  <bruno@clisp.org>
29921
29922         * gnulib-tool (func_ln): New function.
29923         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
29924
29925 2006-11-12  Bruno Haible  <bruno@clisp.org>
29926
29927         Finish support for source files in subdirectories.
29928         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
29929         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
29930         AUTOMAKE_OPTIONS.
29931         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
29932
29933 2006-11-12  Bruno Haible  <bruno@clisp.org>
29934
29935         * gnulib-tool (func_get_automake_snippet): Synthesize also an
29936         EXTRA_lib_SOURCES augmentation.
29937         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
29938
29939 2006-11-12  Jim Meyering  <jim@meyering.net>
29940
29941         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
29942         file descriptors.  This also averts a failure on systems with
29943         native openat support when a traversed directory lacks "x" access.
29944         * lib/fts_.h: Include "i-ring.h"
29945         (struct FTS) [fts_fd_ring]: New member.
29946         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
29947         (FCHDIR): Add parentheses.
29948         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
29949         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
29950         When descending, rather than simply closing the previous
29951         fts_cwd_fd value, push that file descriptor onto the ring.
29952         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
29953         (fts_open): Initialize the new fd_ring member.
29954         (fts_close): Clear the ring.
29955         (fts_safe_changedir): When possible, use our new fd_ring to skip
29956         the diropen and fstat and dev/ino comparison that would normally
29957         accompany a virtual `chdir ("..")'.
29958
29959         * modules/fts (Depends-on): Add i-ring.
29960         * modules/i-ring: New module.
29961         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
29962         * m4/i-ring.m4: New file.
29963
29964 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29965
29966         * gnulib-tool (func_create_testdir): Fix replacement of
29967         `build-aux' in configure.ac.  Run autotools in gltests
29968         subdirectory.
29969         (func_create_testdir, func_create_megatestdir, test): There is
29970         no need for '--force' in most autotool invocations in a new
29971         tree.  Actually fail the whole test if any of the tools, or the
29972         configure or make stages fail.
29973
29974         Sync from Automake.
29975         * build-aux/gnupload: Revert last change.  Add pointer to upload
29976         instructions of the GNU Maintenance Instructions.
29977         Suggestion by Karl Berry.
29978
29979 2006-11-10  Jim Meyering  <jim@meyering.net>
29980
29981         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
29982
29983 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
29984
29985         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
29986         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
29987         (bind_textdomain_codeset) [! ENABLE_NLS]:
29988         Evaluate all the arguments.  That way, callers get compatible behavior
29989         if the arguments have side effects.  Also, it avoids some GCC
29990         diagnostics in some cases; Joel E. Denny reported problems when Bison
29991         was configured with --enable-gcc-warnigs.
29992
29993 2006-11-10  Jim Meyering  <jim@meyering.net>
29994
29995         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
29996         relevant options in CFLAGS (like -O, -fno-inline) are taken into
29997         account.
29998
29999 2006-11-10  Jim Meyering  <jim@meyering.net>
30000
30001         * modules/inline: New file/module.
30002         * modules/xalloc (Files): Remove m4/inline.m4.
30003         (Depends-on): Add inline, instead.
30004         * modules/oset: Likewise.
30005         * modules/list: Likewise.
30006
30007 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
30008
30009         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
30010         Problem reported by Matthew Woehlke.
30011
30012 2006-11-09  Bruno Haible  <bruno@clisp.org>
30013
30014         * lib/tempname.c (gen_tempname): Remove variant that invokes
30015         __gen_tempname.
30016         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
30017         __gen_tempname.
30018
30019 2006-11-08  Bruno Haible  <bruno@clisp.org>
30020
30021         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
30022         to 'yes' instead of 'cross-compiling'.
30023
30024 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
30025
30026         * lib/quotearg.h (quotearg_free): New decl.
30027         * lib/quotearg.c (quotearg_free): New function.
30028         (slot0, nslots, slotvec0, slotvec):
30029         Now file-scope so that quotearg_free can get at them.
30030
30031 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30032
30033         Sync from Automake.
30034         * build-aux/gnupload: Add missing 'gnu' to example URL.
30035         Report by Karl Berry.
30036
30037 2006-11-08  Bruno Haible  <bruno@clisp.org>
30038
30039         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
30040         Suggested by Paul Eggert.
30041
30042 2006-11-08  Jim Meyering  <jim@meyering.net>
30043
30044         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
30045         It's already included if !_LIBC.
30046         (fts_safe_changedir): Add a comment.
30047
30048 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
30049
30050         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
30051         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
30052         Matthew Woehlke.
30053
30054         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
30055         definitions up, to avoid colliding with change below.
30056         (static_inline) [HAVE_INLINE]: New macro.
30057         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
30058         Provide extern decls when !HAVE_INLINE.  Do not define unless
30059         static_inline is defined, either by us or by xmalloc.c.  Use
30060         static_inline rather than static inline.
30061         (XCALLOC): Optimize sizeof(T) = 1 case.
30062         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
30063
30064 2006-11-07  Bruno Haible  <bruno@clisp.org>
30065
30066         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
30067         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
30068         AC_C_INLINE.
30069         * modules/xalloc (Files): Add m4/inline.m4.
30070
30071 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30072
30073         * README: Fix typo.
30074         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
30075         (Miscellanous Notes): ...from this.
30076
30077 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
30078
30079         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
30080         Mention that offsetof should be used instead of sizeof.
30081         From Bruno Haible.
30082
30083 2006-11-07  Bruno Haible  <bruno@clisp.org>
30084
30085         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
30086
30087 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
30088
30089         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
30090         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
30091         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
30092         (gl_tree_add_before, gl_tree_add_after):
30093         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
30094         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
30095         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
30096         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
30097         (gl_linked_add_after, gl_linked_add_at): Likewise.
30098         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
30099         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
30100         (gl_tree_add_before, gl_tree_add_after): Likewise.
30101         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
30102         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
30103         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
30104
30105 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30106
30107         * lib/gl_oset.h: Use C comment style, not C++ comment style.
30108
30109 2006-11-06  Bruno Haible  <bruno@clisp.org>
30110
30111         * m4/inline.m4: New file.
30112         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
30113         * modules/list (Files): Add m4/inline.m4.
30114         * modules/oset (Files): Likewise.
30115
30116 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
30117
30118         * lib/idcache.c: Include <stddef.h>, for offsetof.
30119         (struct userid.name): Change from char * to a flexible array member.
30120         All uses changed.
30121         * modules/idcache (Depends-on): Add flexmember.
30122
30123         * MODULES.html.sh (Core language properties): New module flexmember.
30124         * modules/flexmember, m4/flexmember.m4: New files.
30125
30126         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
30127         inline functions that are identical with the old xnmalloc_inline,
30128         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
30129         that we can avoid some unnecessary integer multiplications and
30130         divisions in the common case where the element size is known at
30131         compile time.
30132         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
30133         needed.
30134         (xnboundedmalloc): Remove.
30135         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
30136         arguments, for consistency with rest of this header.
30137         (xcharalloc): Rewrite using XNMALLOC.
30138         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
30139         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
30140         versions have been moved to lib/xalloc.h and renamed to be the
30141         non-*_inline versions.
30142         (xmalloc, xrealloc): Implement without reference to the xnmalloc
30143         and xnrealloc functions, since those functions are now inline and
30144         now call us.
30145         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
30146         renaming described above.
30147         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
30148         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
30149         captures the dependency in AC_C_INLINE.
30150
30151         New module canonicalize-lgpl, proposed by Charles Wilson in
30152         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
30153         with a few small changes afterwards.
30154         * MODULES.html.sh (File system functions): New module
30155         canonicalize-lgpl.
30156         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
30157         and canonicalize_file_name.
30158         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
30159         * modules/canonicalize-lgpl: New files.
30160
30161 2006-11-05  Bruno Haible  <bruno@clisp.org>
30162
30163         * gnulib-tool (func_import, func_create_testdir): Create directories
30164         also for files in subdirectories of lib/.
30165
30166 2006-11-05  Bruno Haible  <bruno@clisp.org>
30167
30168         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
30169         ANSI C compliant.
30170
30171 2006-11-03  Bruno Haible  <bruno@clisp.org>
30172
30173         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
30174         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
30175         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
30176         (xnboundedmalloc): New inline function.
30177         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
30178         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
30179         xmalloc.
30180         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
30181         xmalloc.
30182         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
30183         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
30184         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
30185         xmalloc.
30186         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
30187         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
30188         xmalloc.
30189         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
30190         gl_tree_add_after): Use XMALLOC instead of xmalloc.
30191         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
30192         xmalloc.
30193         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
30194         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
30195         gl_tree_add_after): Use XMALLOC instead of xmalloc.
30196         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
30197         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
30198         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
30199         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
30200
30201 2006-11-03  Bruno Haible  <bruno@clisp.org>
30202
30203         * lib/c-ctype.h [C++]: Define functions without name mangling.
30204         * lib/fwriteerror.h [C++]: Likewise.
30205         * lib/gcd.h [C++]: Likewise.
30206         * lib/linebreak.h [C++]: Likewise.
30207
30208 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
30209
30210         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
30211         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
30212         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
30213         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
30214         Check for functions and headers just once.
30215         Check for declaration of canonicalize_file_name.
30216         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
30217
30218 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
30219
30220         * gnulib-tool (func_import): Fix typo in actioncmd.
30221
30222 2006-11-02  Bruno Haible  <bruno@clisp.org>
30223
30224         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
30225         newline sequence in the Makefile.am snippet as a space, like "make"
30226         does.
30227         Reported by Roger Persson <perrog@gmail.com>.
30228
30229 2006-11-01  Bruno Haible  <bruno@clisp.org>
30230
30231         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
30232         already declared in <string.h>.
30233         * lib/strcase.h (strncasecmp): Don't declare it if yes.
30234
30235 2006-11-01  Bruno Haible  <bruno@clisp.org>
30236
30237         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
30238         * lib/strcase.h: Include <string.h>.
30239         (strcasecmp): Define to rpl_strcasecmp here.
30240
30241 2006-11-01  Bruno Haible  <bruno@clisp.org>
30242
30243         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
30244
30245 2006-11-01  Eric Blake  <ebb9@byu.net>
30246
30247         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
30248
30249         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
30250
30251 2006-10-29  Bruno Haible  <bruno@clisp.org>
30252
30253         Make it compile in C++ mode.
30254         * lib/full-write.c (full_rw): Add a cast.
30255
30256 2006-11-01  Bruno Haible  <bruno@clisp.org>
30257
30258         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
30259         be POSIX compliant.
30260         Reported by Roger Persson <perrog@gmail.com>.
30261
30262 2006-11-01  Eric Blake  <ebb9@byu.net>
30263
30264         * lib/getopt_.h: Fix comments.
30265
30266 2006-10-31  Eric Blake  <ebb9@byu.net>
30267
30268         * modules/tmpdir (Depends-on): Add sys_stat.
30269         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
30270         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
30271         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
30272         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
30273         tempname.
30274
30275 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
30276
30277         Avoid some C++ diagnostics reported by Bruno Haible.
30278         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
30279         xmalloc.
30280         (quotearg_alloc): Use xcharalloc rather than xmalloc.
30281         (struct slotvec): Move to top level.
30282         (quotearg_n_options): Rewrite to avoid xmalloc.
30283         * lib/xalloc.h (xcharalloc): New function.
30284         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
30285         [defined __cplusplus]: Add function template that provides result
30286         type propagation.  This part of the change is from Bruno Haible.
30287
30288 2006-10-29  Bruno Haible  <bruno@clisp.org>
30289
30290         Make it compile in C++ mode.
30291         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
30292         * lib/strnlen1.c (strnlen1): Cast memchr result.
30293         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
30294         * lib/clean-temp.c (string_equals, string_hash): Add casts.
30295         (create_temp_dir): Rename local variable 'template'.
30296         (compile_csharp_using_sscli): Add cast.
30297         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
30298         * lib/findprog.c (find_in_path): Likewise.
30299         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
30300         * lib/wait-process.c (register_slave_subprocess): Likewise.
30301
30302 2006-10-22  Bruno Haible  <bruno@clisp.org>
30303
30304         * modules/tsearch: New file.
30305         * lib/tsearch.h: New file.
30306         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
30307         * m4/tsearch.m4: New file.
30308         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
30309
30310 2006-10-29  Eric Blake  <ebb9@byu.net>
30311
30312         * lib/arcfour.c: Assume config.h.
30313         * lib/arctwo.c: Likewise.
30314         * lib/base64.c: Likewise.
30315         * lib/check-version.c: Likewise.
30316         * lib/crc.c: Likewise.
30317         * lib/des.c: Likewise.
30318         * lib/gc-gnulib.c: Likewise.
30319         * lib/gc-libgcrypt.c: Likewise.
30320         * lib/gc-pbkdf2-sha1.c: Likewise.
30321         * lib/getaddrinfo.c: Likewise.
30322         * lib/getdelim.c: Likewise.
30323         * lib/getline.c: Likewise.
30324         * lib/hmac-md5.c: Likewise.
30325         * lib/hmac-sha1.c: Likewise.
30326         * lib/iconvme.c: Likewise.
30327         * lib/md2.c: Likewise.
30328         * lib/md4.c: Likewise.
30329         * lib/memxor.c: Likewise.
30330         * lib/read-file.c: Likewise.
30331         * lib/readline.c: Likewise.
30332         * lib/rijndael-alg-fst.c: Likewise.
30333         * lib/rijndael-api-fst.c: Likewise.
30334         * lib/xgetdomainname.c: Likewise.
30335
30336 2006-10-28  Eric Blake  <ebb9@byu.net>
30337
30338         * lib/xstrndup.c: Assume config.h.
30339
30340 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
30341
30342         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
30343         stat-macros.h is now for our own macros, whereas stat_h is for
30344         macros in the <sys/stat.h> name space.
30345         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
30346         (STAT_MACROS_H): Remove.
30347         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
30348         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
30349         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
30350         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
30351         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
30352         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
30353         Move these macros to ...
30354         * lib/stat_.h: here.  Don't include stat-macros.h.
30355         * lib/canonicalize.c: Don't include stat-macros.h.
30356         * lib/chown.c: Likewise.
30357         * lib/euidaccess.c: Likewise.
30358         * lib/file-type.c: Likewise.
30359         * lib/filemode.c: Likewise.
30360         * lib/glob.c: Likewise.
30361         * lib/isapipe.c: Likewise.
30362         * lib/lchown.c: Likewise.
30363         * lib/lstat.c: Likewise.
30364         * lib/mkdir-p.c: Likewise.
30365         * lib/rmdir.c: Likewise.
30366         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
30367         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
30368         unless mkdir isn't declared, to speed up 'configure'.
30369         Always create sys/stat.h, since it's unlikely any real sys/stat.h
30370         would define all the S_* symbols.
30371         * modules/canonicalize (Depends-on):
30372         Depend on sys_stat, not stat-macros.
30373         * modules/chown: Likewise.
30374         * modules/euidaccess: Likewise.
30375         * modules/filemode: Likewise.
30376         * modules/file-type: Likewise.
30377         * modules/glob: Likewise.
30378         * modules/isapipe: Likewise.
30379         * modules/lchown: Likewise.
30380         * modules/lstat: Likewise.
30381         * modules/mkancesdirs: Likewise.
30382         * modules/rmdir: Likewise.
30383         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
30384         * modules/modechange: Likewise.
30385         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
30386         (configure.ac): Remove gl_STAT_MACROS.
30387         * modules/sys_stat (Depends-on): Remove stat-macros.
30388
30389 2006-10-27  Bruno Haible  <bruno@clisp.org>
30390
30391         * m4/signed.m4: Remove file.
30392         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
30393         invocation.
30394         * modules/vasnprintf (Files): Remove m4/signed.m4.
30395
30396 2006-10-27  Bruno Haible  <bruno@clisp.org>
30397
30398         Update to GNU gettext 0.16.
30399         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
30400         m4/inttypes-h.m4, m4/signed.m4.
30401         * m4/gettext.m4: Update to GNU gettext 0.16.
30402         * m4/intl.m4: New file, from GNU gettext.
30403         * m4/intldir.m4: New file, from GNU gettext.
30404         * config/srclist.txt: Update
30405
30406 2006-10-27  Eric Blake  <ebb9@byu.net>
30407
30408         * MODULES.html.sh: Document tempname.
30409         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
30410         dependencies.
30411         (Files): Move lib/tempname.c...
30412         * modules/tempname: ...to this new module.
30413         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
30414         (gl_PREREQ_TEMPNAME): Move...
30415         * m4/tempname.m4: ...to this new file.
30416         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
30417         * modules/sys_stat (Depends-on): Add stat-macros.
30418         * lib/stat_.h (includes): Pick up stat macros.
30419         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
30420         if stat macros are broken.
30421         * lib/tempname.c (includes): No need to include "stat-macros.h".
30422         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
30423         (direxists, __path_search) [!_LIBC]: Don't compile these in
30424         gnulib; the tmpdir module covers that.
30425         * lib/tempname.h: New file.
30426
30427 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
30428
30429         * COPYING: Explain how gnulib-tool converts licence headers.
30430         Almost all wording by Eric Blake.
30431
30432 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
30433
30434         * lib/mbchar.h (is_basic_table): Make read-only.
30435         * lib/mbchar.c (is_basic_table): Likewise.
30436         Reported by John Darrington.
30437
30438 2006-10-25  Bruno Haible  <bruno@clisp.org>
30439
30440         * lib/progname.h (set_program_name): Undefine before defining.
30441
30442 2006-10-25  Bruno Haible  <bruno@clisp.org>
30443
30444         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
30445         false for non-gcc C++ compilers.
30446         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
30447
30448 2006-10-24  Bruno Haible  <bruno@clisp.org>
30449
30450         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
30451         iconv implementations like Irix iconv.
30452
30453 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
30454
30455         * modules/vararrays: New file.
30456         * m4/vararrays.m4: New file, taken from diffutils.
30457         * MODULES.html.sh: New module vararrays.
30458
30459 2006-10-24  Karl Berry  <karl@gnu.org>
30460
30461         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
30462         Don't call GNU Unix.
30463
30464 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30465
30466         * users.txt: Add Libtool.
30467
30468         Sync from Libtool:
30469
30470         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
30471
30472         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
30473         to gnulib's policy of including config.h unconditionally.
30474
30475 2006-10-24  Bruno Haible  <bruno@clisp.org>
30476
30477         * modules/wcwidth (Files): Add m4/wint_t.m4.
30478         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
30479         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
30480
30481 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
30482
30483         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
30484         to pacify GCC with some -W flags enabled.  Problem reported by
30485         Bruno Haible.
30486
30487 2006-10-24  Jim Meyering  <jim@meyering.net>
30488
30489         * MODULES.html.sh: Remove uinttostr.  It's not a module.
30490         Reported by Karl Berry.
30491
30492 2006-10-23  Bruno Haible  <bruno@clisp.org>
30493
30494         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
30495
30496 2006-10-24  Bruno Haible  <bruno@clisp.org>
30497
30498         * lib/gl_list.h: Use C comment style, not C++ comment style.
30499
30500 2006-10-23  Eric Blake  <ebb9@byu.net>
30501
30502         * lib/getaddrinfo.c (includes): Add missing include.
30503
30504 2006-10-23  Bruno Haible  <bruno@clisp.org>
30505             Paul Eggert  <eggert@cs.ucla.edu>
30506
30507         Ability to rename obstack_free.
30508         * lib/obstack.h (__obstack_free): New macro. Declare instead of
30509         obstack_free.
30510         (obstack_free): Invoke the __obstack_free macro.
30511         * lib/obstack.c (obstack_free): Use __obstack_free macro.
30512
30513 2006-10-23  Bruno Haible  <bruno@clisp.org>
30514             Paul Eggert  <eggert@cs.ucla.edu>
30515
30516         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
30517         __argc, __argv from the declaration. (They are defined as macros on
30518         mingw.)
30519
30520 2006-10-22  Bruno Haible  <bruno@clisp.org>
30521
30522         * doc/gnulib-intro.texi: New file.
30523         * doc/gnulib.texi: Include it.
30524
30525 2006-10-21  Bruno Haible  <bruno@clisp.org>
30526
30527         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
30528         "Introduction", "Miscellanous Notes", "Particular Modules".
30529
30530 2006-10-21  Bruno Haible  <bruno@clisp.org>
30531
30532         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
30533         Change mostlyclean-local rule to avoid sh syntax error from bash
30534         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
30535
30536 2006-10-23  Jim Meyering  <jim@meyering.net>
30537
30538         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
30539         in place of snprintf.
30540
30541         * modules/inttostr (Files): Add lib/uinttostr.c.
30542         * lib/uinttostr.c (inttostr): New file/function.
30543         * lib/inttostr.h (uinttostr): Declare.
30544         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
30545         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
30546         Add uinttostr.
30547         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
30548
30549 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
30550
30551         * lib/canonicalize.c (ELOOP): Define if not already defined.
30552         Problem reported by Bruno Haible in
30553         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
30554
30555 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
30556
30557         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
30558         Problem reported by Perry Smith and Ville Laurikari.
30559
30560         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
30561         uses.
30562
30563 2006-10-19  Bruno Haible  <bruno@clisp.org>
30564
30565         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
30566         for mingw.
30567
30568 2006-10-19  Bruno Haible  <bruno@clisp.org>
30569
30570         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
30571         Needed for mingw.
30572
30573 2006-10-19  Bruno Haible  <bruno@clisp.org>
30574
30575         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
30576
30577 2006-10-19  Bruno Haible  <bruno@clisp.org>
30578
30579         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
30580         it.
30581
30582 2006-10-19  Bruno Haible  <bruno@clisp.org>
30583
30584         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
30585         invocation.
30586
30587 2006-10-19  Bruno Haible  <bruno@clisp.org>
30588
30589         * gnulib-tool (func_create_testdir): Don't include ftruncate and
30590         mountlist by default.
30591
30592 2006-10-16  Bruno Haible  <bruno@clisp.org>
30593
30594         * lib/c-strstr.c: Include c-strstr.h.
30595
30596 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
30597
30598         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
30599         in a slash.
30600
30601 2006-10-18  Bruno Haible  <bruno@clisp.org>
30602
30603         * lib/lock.h [C++]: Wrap definitions in extern "C".
30604
30605 2006-10-18  Bruno Haible  <bruno@clisp.org>
30606
30607         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
30608         gl_LIBOBJS list.
30609
30610 2006-10-18  Bruno Haible  <bruno@clisp.org>
30611
30612         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
30613
30614 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
30615
30616         * lib/xstrtol.h: Include gettext.h.
30617         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
30618         Problem reported by Eric Blake.
30619         * modules/xstrtol (Depends-on): Add gettext-h.
30620
30621 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
30622
30623         * lib/strftime.c (advance): New macro.
30624         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
30625         incomplete type, so you can't add 0 to it.  Problem and patch
30626         reported by Eelco Dolstra for dietlibc.
30627
30628 2006-10-18  Jim Meyering  <jim@meyering.net>
30629
30630         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
30631         type for a local, and rename it: s/up/user_proc/.
30632
30633 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
30634
30635         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
30636         READ_UTMP_USER_PROCESS.
30637         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
30638
30639 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
30640
30641         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
30642         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
30643
30644 2006-10-17  Eric Blake  <ebb9@byu.net>
30645
30646         * lib/sigprocmask.c (sigprocmask): Fix typo.
30647
30648         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
30649
30650         * modules/clean-temp (Makefile.am): Don't add to make output...
30651         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
30652         config.h.
30653
30654 2006-10-17  Bruno Haible  <bruno@clisp.org>
30655
30656         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
30657         differently if DEFAULT_TEXT_DOMAIN is set.
30658
30659 2006-10-16  Bruno Haible  <bruno@clisp.org>
30660
30661         * lib/clean-temp.c: Include fwriteerror.h.
30662
30663 2006-10-16  Bruno Haible  <bruno@clisp.org>
30664
30665         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
30666
30667 2006-10-16  Bruno Haible  <bruno@clisp.org>
30668
30669         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
30670         * lib/sigprocmask.h: Include <sys/types.h>.
30671         (sigset_t): Use the system's definition if present.
30672
30673 2006-10-17  Eric Blake  <ebb9@byu.net>
30674
30675         * lib/xvasprintf.c (includes): Assume config.h.
30676         * lib/xasprintf.c (includes): Likewise.
30677
30678 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
30679
30680         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
30681         at least as wide as intmax_t.
30682
30683 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
30684
30685         (Imported from Automake.)
30686         * build-aux/gnupload: Update to version 1.1 of directive file.
30687
30688 2006-10-16  Eric Blake  <ebb9@byu.net>
30689
30690         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
30691         match Automake 1.10a.
30692
30693 2006-10-14  Bruno Haible  <bruno@clisp.org>
30694
30695         * modules/sigprocmask: New file.
30696         * lib/sigprocmask.h: New file.
30697         * lib/sigprocmask.c: New file.
30698         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
30699         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
30700         request sigprocmask.o.
30701         (gl_PREREQ_SIGPROCMASK): New macro.
30702         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
30703         (Depends-on): Add sigprocmask.
30704         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
30705         gt_SIGNALBLOCKING. Test for 'raise' only once.
30706         * lib/fatal-signal.c: Include sigprocmask.h.
30707         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
30708         unblock_fatal_signals): Define always.
30709         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
30710         sigprocmask.
30711
30712 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
30713
30714         Sync from Automake.
30715         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
30716         which incorrectly sets the mode of an existing destination
30717         directory.  In some cases the unpatched install-sh could do the
30718         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
30719         system.  We hope this is rare in practice, but it's clearly worth
30720         fixing.  Problem reported by Alex Unleashed in
30721         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
30722         Also, don't bother to check for -m bugs unless we're using -m;
30723         suggested by Stepan Kasal.
30724
30725 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30726
30727         Sync from Automake.
30728         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
30729         `-c' flag, so they appear at the same position as in %FASTDEP%
30730         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
30731         which ignores unknown options only after the first non-option.
30732         Bug report against M4 by Nelson H. F. Beebe.
30733
30734 2006-10-13  Jim Meyering  <jim@meyering.net>
30735
30736         Fix a bug in yesterday's change.
30737         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
30738         p->fts_statp->st_dev would be used uninitialized.
30739         Ensures that we always call fts_stat on the very first entry.
30740         Miklos Szeredi reported that find -xdev stopped working.
30741
30742 2006-10-12  Bruno Haible  <bruno@clisp.org>
30743
30744         * gnulib-tool (func_get_automake_snippet): Append an automatically
30745         computed EXTRA_DIST augmentation.
30746         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
30747         * modules/alloca-opt (Makefile.am): Likewise.
30748         * modules/allocsa (Makefile.am): Likewise.
30749         * modules/arcfour (Makefile.am): Likewise.
30750         * modules/arctwo (Makefile.am): Likewise.
30751         * modules/argmatch (Makefile.am): Likewise.
30752         * modules/argz (Makefile.am): Likewise.
30753         * modules/atexit (Makefile.am): Likewise.
30754         * modules/backupfile (Makefile.am): Likewise.
30755         * modules/byteswap (Makefile.am): Likewise.
30756         * modules/c-strtod (Makefile.am): Likewise.
30757         * modules/c-strtold (Makefile.am): Likewise.
30758         * modules/calloc (Makefile.am): Likewise.
30759         * modules/canon-host (Makefile.am): Likewise.
30760         * modules/canonicalize (Makefile.am): Likewise.
30761         * modules/chdir-long (Makefile.am): Likewise.
30762         * modules/chdir-safer (Makefile.am): Likewise.
30763         * modules/check-version (Makefile.am): Likewise.
30764         * modules/chown (Makefile.am): Likewise.
30765         * modules/cloexec (Makefile.am): Likewise.
30766         * modules/close-stream (Makefile.am): Likewise.
30767         * modules/closeout (Makefile.am): Likewise.
30768         * modules/crc (Makefile.am): Likewise.
30769         * modules/csharpexec (Makefile.am): Likewise.
30770         * modules/cycle-check (Makefile.am): Likewise.
30771         * modules/des (Makefile.am): Likewise.
30772         * modules/dev-ino (Makefile.am): Likewise.
30773         * modules/dirfd (Makefile.am): Likewise.
30774         * modules/dirname (Makefile.am): Likewise.
30775         * modules/dup2 (Makefile.am): Likewise.
30776         * modules/eealloc (Makefile.am): Likewise.
30777         * modules/error (Makefile.am): Likewise.
30778         * modules/euidaccess (Makefile.am): Likewise.
30779         * modules/exclude (Makefile.am): Likewise.
30780         * modules/exitfail (Makefile.am): Likewise.
30781         * modules/fcntl-safer (Makefile.am): Likewise.
30782         * modules/fcntl (Makefile.am): Likewise.
30783         * modules/file-type (Makefile.am): Likewise.
30784         * modules/fileblocks (Makefile.am): Likewise.
30785         * modules/filemode (Makefile.am): Likewise.
30786         * modules/filenamecat (Makefile.am): Likewise.
30787         * modules/fnmatch (Makefile.am): Likewise.
30788         * modules/fopen-safer (Makefile.am): Likewise.
30789         * modules/fpending (Makefile.am): Likewise.
30790         * modules/fprintftime (Makefile.am): Likewise.
30791         * modules/free (Makefile.am): Likewise.
30792         * modules/fsusage (Makefile.am): Likewise.
30793         * modules/ftruncate (Makefile.am): Likewise.
30794         * modules/fts (Makefile.am): Likewise.
30795         * modules/gc-arcfour (Makefile.am): Likewise.
30796         * modules/gc-des (Makefile.am): Likewise.
30797         * modules/gc-hmac-md5 (Makefile.am): Likewise.
30798         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
30799         * modules/gc-md4 (Makefile.am): Likewise.
30800         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
30801         * modules/gc-sha1 (Makefile.am): Likewise.
30802         * modules/gc (Makefile.am): Likewise.
30803         * modules/getaddrinfo (Makefile.am): Likewise.
30804         * modules/getcwd (Makefile.am): Likewise.
30805         * modules/getdelim (Makefile.am): Likewise.
30806         * modules/getdomainname (Makefile.am): Likewise.
30807         * modules/getgroups (Makefile.am): Likewise.
30808         * modules/gethostname (Makefile.am): Likewise.
30809         * modules/gethrxtime (Makefile.am): Likewise.
30810         * modules/getline (Makefile.am): Likewise.
30811         * modules/getloadavg (Makefile.am): Likewise.
30812         * modules/getlogin_r (Makefile.am): Likewise.
30813         * modules/getndelim2 (Makefile.am): Likewise.
30814         * modules/getopt (Makefile.am): Likewise.
30815         * modules/getpagesize (Makefile.am): Likewise.
30816         * modules/getpass-gnu (Makefile.am): Likewise.
30817         * modules/getpass (Makefile.am): Likewise.
30818         * modules/getsubopt (Makefile.am): Likewise.
30819         * modules/gettime (Makefile.am): Likewise.
30820         * modules/gettimeofday (Makefile.am): Likewise.
30821         * modules/getugroups (Makefile.am): Likewise.
30822         * modules/getusershell (Makefile.am): Likewise.
30823         * modules/glob (Makefile.am): Likewise.
30824         * modules/group-member (Makefile.am): Likewise.
30825         * modules/hard-locale (Makefile.am): Likewise.
30826         * modules/hash (Makefile.am): Likewise.
30827         * modules/hmac-md5 (Makefile.am): Likewise.
30828         * modules/hmac-sha1 (Makefile.am): Likewise.
30829         * modules/human (Makefile.am): Likewise.
30830         * modules/idcache (Makefile.am): Likewise.
30831         * modules/imaxabs (Makefile.am): Likewise.
30832         * modules/imaxdiv (Makefile.am): Likewise.
30833         * modules/inet_ntop (Makefile.am): Likewise.
30834         * modules/inet_pton (Makefile.am): Likewise.
30835         * modules/intprops (Makefile.am): Likewise.
30836         * modules/inttostr (Makefile.am): Likewise.
30837         * modules/inttypes (Makefile.am): Likewise.
30838         * modules/isapipe (Makefile.am): Likewise.
30839         * modules/javaversion (Makefile.am): Likewise.
30840         * modules/lchmod (Makefile.am): Likewise.
30841         * modules/lchown (Makefile.am): Likewise.
30842         * modules/localcharset (Makefile.am): Likewise.
30843         * modules/long-options (Makefile.am): Likewise.
30844         * modules/lstat (Makefile.am): Likewise.
30845         * modules/malloc (Makefile.am): Likewise.
30846         * modules/mathl (Makefile.am): Likewise.
30847         * modules/mbchar (Makefile.am): Likewise.
30848         * modules/md2 (Makefile.am): Likewise.
30849         * modules/md4 (Makefile.am): Likewise.
30850         * modules/md5 (Makefile.am): Likewise.
30851         * modules/memcasecmp (Makefile.am): Likewise.
30852         * modules/memchr (Makefile.am): Likewise.
30853         * modules/memcmp (Makefile.am): Likewise.
30854         * modules/memcoll (Makefile.am): Likewise.
30855         * modules/memcpy (Makefile.am): Likewise.
30856         * modules/memmem (Makefile.am): Likewise.
30857         * modules/memmove (Makefile.am): Likewise.
30858         * modules/mempcpy (Makefile.am): Likewise.
30859         * modules/memrchr (Makefile.am): Likewise.
30860         * modules/memset (Makefile.am): Likewise.
30861         * modules/memxor (Makefile.am): Likewise.
30862         * modules/mkancesdirs (Makefile.am): Likewise.
30863         * modules/mkdir-p (Makefile.am): Likewise.
30864         * modules/mkdir (Makefile.am): Likewise.
30865         * modules/mkdtemp (Makefile.am): Likewise.
30866         * modules/mkstemp (Makefile.am): Likewise.
30867         * modules/mktime (Makefile.am): Likewise.
30868         * modules/modechange (Makefile.am): Likewise.
30869         * modules/mountlist (Makefile.am): Likewise.
30870         * modules/nanosleep (Makefile.am): Likewise.
30871         * modules/obstack (Makefile.am): Likewise.
30872         * modules/openat (Makefile.am): Likewise.
30873         * modules/pagealign_alloc (Makefile.am): Likewise.
30874         * modules/pathmax (Makefile.am): Likewise.
30875         * modules/physmem (Makefile.am): Likewise.
30876         * modules/poll (Makefile.am): Likewise.
30877         * modules/posixtm (Makefile.am): Likewise.
30878         * modules/posixver (Makefile.am): Likewise.
30879         * modules/putenv (Makefile.am): Likewise.
30880         * modules/quote (Makefile.am): Likewise.
30881         * modules/quotearg (Makefile.am): Likewise.
30882         * modules/raise (Makefile.am): Likewise.
30883         * modules/read-file (Makefile.am): Likewise.
30884         * modules/readline (Makefile.am): Likewise.
30885         * modules/readlink (Makefile.am): Likewise.
30886         * modules/readtokens (Makefile.am): Likewise.
30887         * modules/readutmp (Makefile.am): Likewise.
30888         * modules/realloc (Makefile.am): Likewise.
30889         * modules/regex (Makefile.am): Likewise.
30890         * modules/rename-dest-slash (Makefile.am): Likewise.
30891         * modules/rename (Makefile.am): Likewise.
30892         * modules/rijndael (Makefile.am): Likewise.
30893         * modules/rmdir (Makefile.am): Likewise.
30894         * modules/rpmatch (Makefile.am): Likewise.
30895         * modules/safe-read (Makefile.am): Likewise.
30896         * modules/safe-write (Makefile.am): Likewise.
30897         * modules/same-inode (Makefile.am): Likewise.
30898         * modules/same (Makefile.am): Likewise.
30899         * modules/save-cwd (Makefile.am): Likewise.
30900         * modules/savedir (Makefile.am): Likewise.
30901         * modules/setenv (Makefile.am): Likewise.
30902         * modules/settime (Makefile.am): Likewise.
30903         * modules/sha1 (Makefile.am): Likewise.
30904         * modules/sig2str (Makefile.am): Likewise.
30905         * modules/snprintf (Makefile.am): Likewise.
30906         * modules/stat-macros (Makefile.am): Likewise.
30907         * modules/stat-time (Makefile.am): Likewise.
30908         * modules/stdbool (Makefile.am): Likewise.
30909         * modules/stdint (Makefile.am): Likewise.
30910         * modules/stdlib-safer (Makefile.am): Likewise.
30911         * modules/stpcpy (Makefile.am): Likewise.
30912         * modules/stpncpy (Makefile.am): Likewise.
30913         * modules/strcase (Makefile.am): Likewise.
30914         * modules/strcasestr (Makefile.am): Likewise.
30915         * modules/strchrnul (Makefile.am): Likewise.
30916         * modules/strcspn (Makefile.am): Likewise.
30917         * modules/strdup (Makefile.am): Likewise.
30918         * modules/strerror (Makefile.am): Likewise.
30919         * modules/strftime (Makefile.am): Likewise.
30920         * modules/strndup (Makefile.am): Likewise.
30921         * modules/strnlen (Makefile.am): Likewise.
30922         * modules/strpbrk (Makefile.am): Likewise.
30923         * modules/strsep (Makefile.am): Likewise.
30924         * modules/strstr (Makefile.am): Likewise.
30925         * modules/strtod (Makefile.am): Likewise.
30926         * modules/strtoimax (Makefile.am): Likewise.
30927         * modules/strtok_r (Makefile.am): Likewise.
30928         * modules/strtol (Makefile.am): Likewise.
30929         * modules/strtoll (Makefile.am): Likewise.
30930         * modules/strtoul (Makefile.am): Likewise.
30931         * modules/strtoull (Makefile.am): Likewise.
30932         * modules/strtoumax (Makefile.am): Likewise.
30933         * modules/strverscmp (Makefile.am): Likewise.
30934         * modules/sys_socket (Makefile.am): Likewise.
30935         * modules/sys_stat (Makefile.am): Likewise.
30936         * modules/sysexits (Makefile.am): Likewise.
30937         * modules/time_r (Makefile.am): Likewise.
30938         * modules/timegm (Makefile.am): Likewise.
30939         * modules/timespec (Makefile.am): Likewise.
30940         * modules/tmpfile-safer (Makefile.am): Likewise.
30941         * modules/trim (Makefile.am): Likewise.
30942         * modules/unistd-safer (Makefile.am): Likewise.
30943         * modules/unlinkdir (Makefile.am): Likewise.
30944         * modules/unlocked-io (Makefile.am): Likewise.
30945         * modules/userspec (Makefile.am): Likewise.
30946         * modules/utime (Makefile.am): Likewise.
30947         * modules/utimecmp (Makefile.am): Likewise.
30948         * modules/utimens (Makefile.am): Likewise.
30949         * modules/vasnprintf (Makefile.am): Likewise.
30950         * modules/vasprintf (Makefile.am): Likewise.
30951         * modules/vsnprintf (Makefile.am): Likewise.
30952         * modules/xalloc (Makefile.am): Likewise.
30953         * modules/xgetcwd (Makefile.am): Likewise.
30954         * modules/xnanosleep (Makefile.am): Likewise.
30955         * modules/xreadlink (Makefile.am): Likewise.
30956         * modules/xstrtod (Makefile.am): Likewise.
30957         * modules/xstrtol (Makefile.am): Likewise.
30958         * modules/xstrtold (Makefile.am): Likewise.
30959         * modules/yesno (Makefile.am): Likewise.
30960         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
30961
30962 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
30963
30964         * modules/error (Makefile.am): Distribute files through
30965         EXTRA_DIST, not lib_SOURCES.
30966
30967 2006-10-12  Eric Blake  <ebb9@byu.net>
30968
30969         * modules/error (Makefile.am): Distribute files in /lib.
30970         * modules/obstack (Makefile.am): Likewise.
30971
30972 2006-10-12  Bruno Haible  <bruno@clisp.org>
30973
30974         * modules/acl (Makefile.am): Distribute all files in lib/ through
30975         EXTRA_DIST.
30976         * modules/arcfour (Makefile.am): Likewise.
30977         * modules/arctwo (Makefile.am): Likewise.
30978         * modules/argmatch (Makefile.am): Likewise.
30979         * modules/argz (Makefile.am): Likewise.
30980         * modules/atexit (Makefile.am): Likewise.
30981         * modules/backupfile (Makefile.am): Likewise.
30982         * modules/c-strtod (Makefile.am): Likewise.
30983         * modules/c-strtold (Makefile.am): Likewise.
30984         * modules/calloc (Makefile.am): Likewise.
30985         * modules/canon-host (Makefile.am): Likewise.
30986         * modules/canonicalize (Makefile.am): Likewise.
30987         * modules/chdir-long (Makefile.am): Likewise.
30988         * modules/chdir-safer (Makefile.am): Likewise.
30989         * modules/check-version (Makefile.am): Likewise.
30990         * modules/chown (Makefile.am): Likewise.
30991         * modules/cloexec (Makefile.am): Likewise.
30992         * modules/close-stream (Makefile.am): Likewise.
30993         * modules/closeout (Makefile.am): Likewise.
30994         * modules/crc (Makefile.am): Likewise.
30995         * modules/cycle-check (Makefile.am): Likewise.
30996         * modules/des (Makefile.am): Likewise.
30997         * modules/dirfd (Makefile.am): Likewise.
30998         * modules/dirname (Makefile.am): Likewise.
30999         * modules/dup2 (Makefile.am): Likewise.
31000         * modules/euidaccess (Makefile.am): Likewise.
31001         * modules/exclude (Makefile.am): Likewise.
31002         * modules/exitfail (Makefile.am): Likewise.
31003         * modules/fcntl-safer (Makefile.am): Likewise.
31004         * modules/file-type (Makefile.am): Likewise.
31005         * modules/fileblocks (Makefile.am): Likewise.
31006         * modules/filemode (Makefile.am): Likewise.
31007         * modules/filenamecat (Makefile.am): Likewise.
31008         * modules/fnmatch (Makefile.am): Likewise.
31009         * modules/fopen-safer (Makefile.am): Likewise.
31010         * modules/fpending (Makefile.am): Likewise.
31011         * modules/fprintftime (Makefile.am): Likewise.
31012         * modules/free (Makefile.am): Likewise.
31013         * modules/fsusage (Makefile.am): Likewise.
31014         * modules/ftruncate (Makefile.am): Likewise.
31015         * modules/fts (Makefile.am): Likewise.
31016         * modules/gc (Makefile.am): Likewise.
31017         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
31018         * modules/getaddrinfo (Makefile.am): Likewise.
31019         * modules/getcwd (Makefile.am): Likewise.
31020         * modules/getdelim (Makefile.am): Likewise.
31021         * modules/getdomainname (Makefile.am): Likewise.
31022         * modules/getgroups (Makefile.am): Likewise.
31023         * modules/gethostname (Makefile.am): Likewise.
31024         * modules/gethrxtime (Makefile.am): Likewise.
31025         * modules/getline (Makefile.am): Likewise.
31026         * modules/getloadavg (Makefile.am): Likewise.
31027         * modules/getlogin_r (Makefile.am): Likewise.
31028         * modules/getopt (Makefile.am): Likewise.
31029         * modules/getpass (Makefile.am): Likewise.
31030         * modules/getpass-gnu (Makefile.am): Likewise.
31031         * modules/getsubopt (Makefile.am): Likewise.
31032         * modules/gettime (Makefile.am): Likewise.
31033         * modules/gettimeofday (Makefile.am): Likewise.
31034         * modules/getugroups (Makefile.am): Likewise.
31035         * modules/getusershell (Makefile.am): Likewise.
31036         * modules/glob (Makefile.am): Likewise.
31037         * modules/group-member (Makefile.am): Likewise.
31038         * modules/hard-locale (Makefile.am): Likewise.
31039         * modules/hash (Makefile.am): Likewise.
31040         * modules/hmac-md5 (Makefile.am): Likewise.
31041         * modules/hmac-sha1 (Makefile.am): Likewise.
31042         * modules/human (Makefile.am): Likewise.
31043         * modules/idcache (Makefile.am): Likewise.
31044         * modules/imaxabs (Makefile.am): Likewise.
31045         * modules/imaxdiv (Makefile.am): Likewise.
31046         * modules/inet_ntop (Makefile.am): Likewise.
31047         * modules/inet_pton (Makefile.am): Likewise.
31048         * modules/inttostr (Makefile.am): Likewise.
31049         * modules/isapipe (Makefile.am): Likewise.
31050         * modules/lchown (Makefile.am): Likewise.
31051         * modules/long-options (Makefile.am): Likewise.
31052         * modules/lstat (Makefile.am): Likewise.
31053         * modules/malloc (Makefile.am): Likewise.
31054         * modules/mathl (Makefile.am): Likewise.
31055         * modules/mbchar (Makefile.am): Likewise.
31056         * modules/md2 (Makefile.am): Likewise.
31057         * modules/md4 (Makefile.am): Likewise.
31058         * modules/md5 (Makefile.am): Likewise.
31059         * modules/memcasecmp (Makefile.am): Likewise.
31060         * modules/memchr (Makefile.am): Likewise.
31061         * modules/memcmp (Makefile.am): Likewise.
31062         * modules/memcoll (Makefile.am): Likewise.
31063         * modules/memcpy (Makefile.am): Likewise.
31064         * modules/memmem (Makefile.am): Likewise.
31065         * modules/memmove (Makefile.am): Likewise.
31066         * modules/mempcpy (Makefile.am): Likewise.
31067         * modules/memrchr (Makefile.am): Likewise.
31068         * modules/memset (Makefile.am): Likewise.
31069         * modules/memxor (Makefile.am): Likewise.
31070         * modules/mkancesdirs (Makefile.am): Likewise.
31071         * modules/mkdir (Makefile.am): Likewise.
31072         * modules/mkdir-p (Makefile.am): Likewise.
31073         * modules/mkdtemp (Makefile.am): Likewise.
31074         * modules/mkstemp (Makefile.am): Likewise.
31075         * modules/mktime (Makefile.am): Likewise.
31076         * modules/modechange (Makefile.am): Likewise.
31077         * modules/mountlist (Makefile.am): Likewise.
31078         * modules/nanosleep (Makefile.am): Likewise.
31079         * modules/openat (Makefile.am): Likewise.
31080         * modules/pagealign_alloc (Makefile.am): Likewise.
31081         * modules/physmem (Makefile.am): Likewise.
31082         * modules/poll (Makefile.am): Likewise.
31083         * modules/posixtm (Makefile.am): Likewise.
31084         * modules/posixver (Makefile.am): Likewise.
31085         * modules/putenv (Makefile.am): Likewise.
31086         * modules/quote (Makefile.am): Likewise.
31087         * modules/quotearg (Makefile.am): Likewise.
31088         * modules/raise (Makefile.am): Likewise.
31089         * modules/read-file (Makefile.am): Likewise.
31090         * modules/readline (Makefile.am): Likewise.
31091         * modules/readlink (Makefile.am): Likewise.
31092         * modules/readtokens (Makefile.am): Likewise.
31093         * modules/readutmp (Makefile.am): Likewise.
31094         * modules/realloc (Makefile.am): Likewise.
31095         * modules/regex (Makefile.am): Likewise.
31096         * modules/rename (Makefile.am): Likewise.
31097         * modules/rename-dest-slash (Makefile.am): Likewise.
31098         * modules/rijndael (Makefile.am): Likewise.
31099         * modules/rmdir (Makefile.am): Likewise.
31100         * modules/rpmatch (Makefile.am): Likewise.
31101         * modules/safe-read (Makefile.am): Likewise.
31102         * modules/safe-write (Makefile.am): Likewise.
31103         * modules/same (Makefile.am): Likewise.
31104         * modules/save-cwd (Makefile.am): Likewise.
31105         * modules/savedir (Makefile.am): Likewise.
31106         * modules/setenv (Makefile.am): Likewise.
31107         * modules/settime (Makefile.am): Likewise.
31108         * modules/sha1 (Makefile.am): Likewise.
31109         * modules/sig2str (Makefile.am): Likewise.
31110         * modules/snprintf (Makefile.am): Likewise.
31111         * modules/stdlib-safer (Makefile.am): Likewise.
31112         * modules/stpcpy (Makefile.am): Likewise.
31113         * modules/stpncpy (Makefile.am): Likewise.
31114         * modules/strcase (Makefile.am): Likewise.
31115         * modules/strcasestr (Makefile.am): Likewise.
31116         * modules/strchrnul (Makefile.am): Likewise.
31117         * modules/strcspn (Makefile.am): Likewise.
31118         * modules/strdup (Makefile.am): Likewise.
31119         * modules/strerror (Makefile.am): Likewise.
31120         * modules/strftime (Makefile.am): Likewise.
31121         * modules/strndup (Makefile.am): Likewise.
31122         * modules/strnlen (Makefile.am): Likewise.
31123         * modules/strpbrk (Makefile.am): Likewise.
31124         * modules/strsep (Makefile.am): Likewise.
31125         * modules/strstr (Makefile.am): Likewise.
31126         * modules/strtod (Makefile.am): Likewise.
31127         * modules/strtoimax (Makefile.am): Likewise.
31128         * modules/strtok_r (Makefile.am): Likewise.
31129         * modules/strtol (Makefile.am): Likewise.
31130         * modules/strtoll (Makefile.am): Likewise.
31131         * modules/strtoul (Makefile.am): Likewise.
31132         * modules/strtoull (Makefile.am): Likewise.
31133         * modules/strtoumax (Makefile.am): Likewise.
31134         * modules/strverscmp (Makefile.am): Likewise.
31135         * modules/time_r (Makefile.am): Likewise.
31136         * modules/timegm (Makefile.am): Likewise.
31137         * modules/tmpfile-safer (Makefile.am): Likewise.
31138         * modules/unistd-safer (Makefile.am): Likewise.
31139         * modules/unlinkdir (Makefile.am): Likewise.
31140         * modules/userspec (Makefile.am): Likewise.
31141         * modules/utime (Makefile.am): Likewise.
31142         * modules/utimecmp (Makefile.am): Likewise.
31143         * modules/utimens (Makefile.am): Likewise.
31144         * modules/vasnprintf (Makefile.am): Likewise.
31145         * modules/vasprintf (Makefile.am): Likewise.
31146         * modules/vsnprintf (Makefile.am): Likewise.
31147         * modules/xalloc (Makefile.am): Likewise.
31148         * modules/xgetcwd (Makefile.am): Likewise.
31149         * modules/xnanosleep (Makefile.am): Likewise.
31150         * modules/xreadlink (Makefile.am): Likewise.
31151         * modules/xstrtod (Makefile.am): Likewise.
31152         * modules/xstrtol (Makefile.am): Likewise.
31153         * modules/xstrtold (Makefile.am): Likewise.
31154         * modules/yesno (Makefile.am): Likewise.
31155
31156 2006-10-12  Jim Meyering  <jim@meyering.net>
31157
31158         * m4/getloadavg.m4: Revert the change below.
31159
31160         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
31161         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
31162         fail with a symlink, which is what coreutils' ./bootstrap now
31163         creates by default.
31164
31165 2006-10-12  Bruno Haible  <bruno@clisp.org>
31166
31167         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
31168         mingw.
31169         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
31170         MSVC and mingw explicitly.
31171
31172 2006-10-11  Simon Josefsson  <jas@extundo.com>
31173             Bruno Haible  <bruno@clisp.org>
31174
31175         Add support for multiple gnulib-tool invocations in the scope of a
31176         single configure.ac file.
31177         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
31178         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
31179         with the same contents as the _LIBADD variable.
31180         (func_emit_initmacro_start, func_emit_initmacro_end,
31181         func_emit_initmacro_done): New functions.
31182         (func_import, func_create_testdir): Invoke them. Allow the identifiers
31183         gl_LIBOBJS and gl_LTLIBOBJS.
31184
31185 2006-10-11  Bruno Haible  <bruno@clisp.org>
31186
31187         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
31188         (func_create_testdir): Don't create po/Makefile.am, don't invoke
31189         autoreconf. Instead, invoke autopoint explicitly but move back the
31190         *.m4 files from gnulib.
31191
31192 2006-10-11  Bruno Haible  <bruno@clisp.org>
31193
31194         * gnulib-tool (func_usage): Make module names after --create-testdir
31195         optional.
31196         (func_create_testdir): If no module was specified, use nearly all
31197         modules.
31198
31199 2006-10-12  Jim Meyering  <jim@meyering.net>
31200
31201         Big performance improvement for fts-based tools that use FTS_NOSTAT.
31202         Avoid spurious inode-mismatch problems on non-POSIX file systems.
31203         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
31204         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
31205         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
31206         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
31207         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
31208         (fts_set_stat_required): New function.
31209         (fts_open): Defer the calls to fts_stat, if possible or requested.
31210         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
31211         into fts_stat itself.
31212         (fts_read): Perform any required (deferred) fts_stat call.
31213         (fts_build): Likewise, for the directory we're about to open and read.
31214         In the readdir loop, carefully decide whether each entry will require
31215         an eventual call to fts_stat, using dirent.d_type info if available.
31216         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
31217         a command line argument into this function.  Update all callers.
31218         Map a return value of FTS_DOT to FTS_D for a command line argument.
31219         * modules/fts (Depends-on): Add d-type.  Alphabetize.
31220         Thanks to Miklos Szeredi for his tenacity and for the initial
31221         bug report about "find" failing on a FUSE-based file system.
31222
31223         * lib/fts.c (fts_open): Use consistent indentation.
31224
31225 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
31226
31227         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
31228         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
31229         reported by Jim Meyering.  All uses of cache variables renamed
31230         to match Autoconf's.
31231         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
31232         the other one.
31233
31234         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
31235         Fix misspelling in diagnostic.
31236
31237 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
31238
31239         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
31240         defined.  Problem reported by Matthew Woehlke.
31241
31242         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
31243         Add support for Tandem NonStop R series.
31244         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
31245         Use new macro.
31246
31247         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
31248         (has_trailing_slash): Omit size arg; all callers changed.
31249         Omit 'inline', since it doesn't help performance and we'd
31250         need to configure it.
31251         Don't count //, ///, etc. as having a trailing slash.
31252         As a side effect, this removes a C99ism reported by Matthew Woehlke.
31253         (rpl_rename_dest_slash): On failure, use rename's errno rather
31254         than (in some cases) an incorrect or junk errno.
31255         Simplify code by removing need to compute length; this does
31256         cause it to make two passes instead of one over the file name,
31257         but it's worth it.
31258
31259         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
31260         change, since Autoconf's version may no longer be appropriate now
31261         that we are using CVS Autoconf's version.  Add support for Tandem.
31262
31263 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
31264             Bruno Haible  <bruno@clisp.org>
31265
31266         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
31267         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
31268         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
31269         gl_AC_TYPE_LONG_LONG.
31270
31271         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
31272         instead of HAVE_LONG_LONG.
31273         * lib/printf-args.c (printf_fetchargs): Likewise.
31274         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
31275         * lib/vasnprintf.c (VASNPRINTF): Likewise.
31276         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
31277         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
31278         gl_AC_TYPE_LONG_LONG.
31279
31280 2006-10-11  Bruno Haible  <bruno@clisp.org>
31281
31282         * m4/longlong.m4: Add comments.
31283         * m4/ulonglong.m4: Likewise.
31284
31285 2006-10-10  Bruno Haible  <bruno@clisp.org>
31286
31287         Make it possible to #define stpcpy, strdup to aliases.
31288         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
31289         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
31290
31291 2006-10-10  Bruno Haible  <bruno@clisp.org>
31292
31293         Make it possible to #define gcd to an alias.
31294         * lib/gcd.c: Include config.h.
31295
31296 2006-10-10  Bruno Haible  <bruno@clisp.org>
31297
31298         Make it possible to #define c_isascii to an alias.
31299         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
31300         defined. Undefine the macros before defining them, to avoid gcc
31301         warnings.
31302         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
31303         define NO_C_CTYPE_MACROS early.
31304
31305 2006-10-10  Bruno Haible  <bruno@clisp.org>
31306
31307         Make it possible to #define set_program_name to an alias.
31308         * lib/progname.c: Don't undefine set_program_name; instead, undefine
31309         ENABLE_RELOCATABLE early.
31310
31311 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
31312
31313         Port to Tandem NSK OSS, which has 64-bit signed int but at most
31314         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
31315         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
31316         More generally, don't assume that 64-bit signed int is available
31317         if unsigned int is, and vice versa.
31318         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
31319         unsigned symbols, not on their signed counterparts.
31320         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
31321         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
31322         (UINT64_C, UINTMAX_C):
31323         Likewise.
31324         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
31325         unsigned counterparts.
31326         (Have_long_long, Unsigned): New macros.
31327         (Int): Renamed from INT.
31328         (strtoimax): Use the new macros.
31329         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
31330         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
31331         * modules/inttypes (inttypes.h): Substitute
31332         HAVE_UNSIGNED_LONG_LONG_INT.
31333         * modules/stdint (stdint.h): Likewise.
31334         (Files): Add m4/ulonglong.m4.
31335
31336 2006-10-10  Bruno Haible  <bruno@clisp.org>
31337
31338         Fix a gcc -Wshadow warning.
31339         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
31340         to 'bucket'.
31341         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
31342         gl_linked_indexof_from_to): Likewise.
31343         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
31344         Likewise.
31345         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
31346         Likewise.
31347         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
31348         Reported by Eric Blake.
31349
31350 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
31351
31352         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
31353         for NetBSD.  Problem reported by Bruno Haible.
31354
31355 2006-10-09  Jim Meyering  <jim@meyering.net>
31356
31357         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
31358         Patch from Bruno Haible.
31359
31360 2006-10-09  Jim Meyering  <jim@meyering.net>
31361
31362         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
31363         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
31364         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
31365
31366 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
31367
31368         Don't include <config.h> twice; this doesn't work in some cases,
31369         e.g., when config.h has "#define intmax_t long long int" and
31370         we include <config.h>, <inttypes.h>, <config.h> in that order.
31371         Problem reported by Matthew Woehlke in:
31372         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
31373         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
31374         * lib/fts-cycle.c: Don't include config.h.
31375         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
31376         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
31377         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
31378         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
31379         inttypes.h.
31380         * lib/xstrtoumax.c: Likewise.
31381         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
31382         __strtol and the like, so that this module is more like its siblings.
31383         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
31384         Remove; no longer needed now that we assume gnulib inttypes.h.
31385
31386 2006-10-08  Bruno Haible  <bruno@clisp.org>
31387
31388         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
31389         option.
31390
31391 2006-10-07  Jim Meyering  <jim@meyering.net>
31392
31393         * modules/inttypes (inttypes.h): Revert what seems to have been
31394         an inadvertent part of today's change: use "|", not "/" in the
31395         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
31396
31397 2006-10-07  Bruno Haible  <bruno@clisp.org>
31398
31399         * modules/sublist: New file.
31400
31401 2006-10-07  Bruno Haible  <bruno@clisp.org>
31402
31403         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
31404         * modules/argz (argz.h): Likewise.
31405         * modules/arpa_inet (arpa/inet.h): Likewise.
31406         * modules/byteswap (byteswap.h): Likewise.
31407         * modules/configmake (configmake.h): Likewise.
31408         * modules/fcntl (fcntl.h): Likewise.
31409         * modules/fnmatch (fnmatch.h): Likewise.
31410         * modules/getopt (getopt.h): Likewise.
31411         * modules/glob (glob.h): Likewise.
31412         * modules/inttypes (inttypes.h): Likewise.
31413         * modules/netinet_in (netinet/in.h): Likewise.
31414         * modules/poll (poll.h): Likewise.
31415         * modules/stdbool (stdbool.h): Likewise.
31416         * modules/stdint (stdint.h): Likewise.
31417         * modules/sys_select (sys/select.h): Likewise.
31418         * modules/sys_socket (sys/socket.h): Likewise.
31419         * modules/sys_stat (sys/stat.h): Likewise.
31420         * modules/sysexits (sysexits.h): Likewise.
31421         * modules/unistd (unistd.h): Likewise.
31422         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
31423         Add a "DO NOT EDIT" comment to the generated file.
31424         (func_import): Likewise for gnulib-comp.m4.
31425
31426 2006-10-07  Bruno Haible  <bruno@clisp.org>
31427
31428         * lib/gl_sublist.h: New file.
31429         * lib/gl_sublist.c: New file.
31430
31431 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
31432
31433         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
31434         name (relative to the original working directory) and the file
31435         name component (relative to the temporary working directory).  All
31436         callers changed.
31437         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
31438         * lib/mkdir-p.c (make_dir_parents): Likewise.
31439         * lib/mkdir-p.h (make_dir_parents): Likewise.
31440
31441 2006-10-06  Eric Blake  <ebb9@byu.net>
31442
31443         Define several macros for use by the clean-temp module.
31444         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
31445         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
31446         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
31447
31448         * lib/clean-temp.h (close_stream_temp): New declaration.
31449         * lib/clean-temp.c (includes): Pull in headers according to what
31450         other modules are in use.
31451         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
31452
31453 2006-10-06  Bruno Haible  <bruno@clisp.org>
31454
31455         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
31456         instead of fopen, fwriteerror.
31457
31458 2006-10-06  Bruno Haible  <bruno@clisp.org>
31459
31460         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
31461         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
31462         int.
31463         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
31464         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
31465         Return an error indicator.
31466         Suggested by Eric Blake.
31467
31468 2006-10-06  Bruno Haible  <bruno@clisp.org>
31469
31470         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
31471         Reported by Eric Blake.
31472
31473 2006-10-06  Bruno Haible  <bruno@clisp.org>
31474
31475         * modules/closeout (Description): Mention stderr too.
31476
31477 2006-10-06  Bruno Haible  <bruno@clisp.org>
31478         and Paul Eggert  <eggert@cs.ucla.edu>
31479
31480         * lib/closeout.c (close_stdout): Also close stderr.
31481         * lib/closeout.h: Update comment.
31482
31483 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
31484
31485         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
31486         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
31487         * lib/dirchownmod.c: Include lchown.h.
31488         * lib/lchown.c: Don't include files that lchown.h now includes.
31489         Don't declare chown, since lchown.h now does that.
31490         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
31491         (lchown): Define to rpl_chown if lchown is declared but
31492         does not exist.  Declare using a prototype if lchown is not
31493         declared.  Add a copyright notice.
31494         * lib/mkstemp.h: Include <unistd.h>.
31495         * lib/openat.c: Include lchown.h.
31496
31497         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
31498         we now test for that separately.
31499         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
31500         rather than O_NOFOLLOW, when testing whether it's possible to
31501         avoid a race condition reliably.
31502         * lib/savewd.c (savewd_chdir): Likewise.
31503
31504         Remove macros that are no longer needed now that stdint.h is
31505         reliable.
31506         * lib/fsusage.c (UINTMAX_MAX): Remove.
31507         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
31508         * lib/utimecmp.c (SIZE_MAX): Remove.
31509
31510         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
31511
31512         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
31513         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
31514         O_NOATIME works.
31515
31516 2006-10-05  Bruno Haible  <bruno@clisp.org>
31517
31518         * lib/gl_list.h (gl_sortedlist_search_from_to,
31519         gl_sortedlist_indexof_from_to): New declarations.
31520         (gl_list_implementation): New fields sortedlist_search_from_to,
31521         sortedlist_indexof_from_to.
31522         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
31523         inline functions.
31524         * lib/gl_list.c (gl_sortedlist_search_from_to,
31525         gl_sortedlist_indexof_from_to): New functions.
31526         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
31527         function.
31528         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
31529         (gl_array_sortedlist_search_from_to): New function.
31530         (gl_array_list_implementation): Update.
31531         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
31532         function.
31533         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
31534         (gl_carray_sortedlist_search_from_to): New function.
31535         (gl_carray_list_implementation): Update.
31536         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
31537         gl_linked_sortedlist_indexof_from_to): New functions.
31538         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
31539         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
31540         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
31541         gl_tree_sortedlist_indexof_from_to): New functions.
31542         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
31543         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
31544         Update.
31545         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
31546         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
31547         Update.
31548
31549 2006-10-05  Bruno Haible  <bruno@clisp.org>
31550
31551         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
31552         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
31553         (struct gl_list_implementation): Add fields search_from_to,
31554         indexof_from_to. Remove fields search, indexof.
31555         (gl_list_search): Use the search_from_to method.
31556         (gl_list_search_from, gl_list_search_from_to): New functions.
31557         (gl_list_indexof): Use the indexof_from_to method.
31558         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
31559         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
31560         (gl_list_search_from, gl_list_search_from_to): New functions.
31561         (gl_list_indexof): Use the indexof_from_to method.
31562         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
31563         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
31564         gl_array_indexof. Add start_index, end_index arguments.
31565         (gl_array_search_from_to): Renamed from gl_array_search. Add
31566         start_index, end_index arguments.
31567         (gl_array_remove, gl_array_list_implementation): Update.
31568         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
31569         gl_carray_indexof. Add start_index, end_index arguments.
31570         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
31571         start_index, end_index arguments.
31572         (gl_carray_remove, gl_carray_list_implementation): Update.
31573         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
31574         gl_linked_search. Add start_index, end_index arguments.
31575         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
31576         start_index, end_index arguments.
31577         (gl_linked_remove): Update.
31578         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
31579         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
31580         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
31581         field to 'size_t'.
31582         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
31583         gl_tree_search. Add start_index, end_index arguments.
31584         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
31585         start_index, end_index arguments.
31586         (gl_tree_remove): Update.
31587         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
31588         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
31589         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
31590         function.
31591         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
31592         gl_tree_search. Add start_index, end_index arguments.
31593         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
31594         start_index, end_index arguments.
31595         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
31596         Update.
31597         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
31598
31599 2006-10-05  Bruno Haible  <bruno@clisp.org>
31600
31601         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
31602
31603         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
31604         fwriteerror_temp): New declarations.
31605         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
31606         (descriptors): New variable.
31607         (cleanup): First, close the descriptors.
31608         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
31609         fclose_temp, fwriteerror_temp): New functions.
31610
31611 2006-10-04  Jim Meyering  <jim@meyering.net>
31612
31613         * lib/fts.c (fts_open): Tiny comment change.
31614
31615 2006-10-04  Bruno Haible  <bruno@clisp.org>
31616
31617         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
31618         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
31619         gl_LOCK_BODY.
31620         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
31621         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
31622         gl_LOCK_EARLY_BODY.
31623         (gl_LOCK): Require gl_LOCK_BODY.
31624
31625 2006-10-04  Bruno Haible  <bruno@clisp.org>
31626
31627         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
31628         (gl_oset_search_atleast): New declaration.
31629         (struct gl_oset_implementation): Add field 'search_atleast'.
31630         (gl_oset_search_atleast): New inline function.
31631         * lib/gl_oset.c (gl_oset_search_atleast): New function.
31632         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
31633         (gl_array_oset_implementation): Update.
31634         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
31635         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
31636         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
31637
31638 2006-10-04  Bruno Haible  <bruno@clisp.org>
31639
31640         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
31641
31642 2006-10-03  Bruno Haible  <bruno@clisp.org>
31643
31644         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
31645         from gl_avltreehash_list_implementation.
31646
31647 2006-10-03  Bruno Haible  <bruno@clisp.org>
31648
31649         * lib/gl_oset.c (gl_oset_add): Fix return type.
31650
31651 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
31652
31653         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
31654
31655 2006-10-02  Eric Blake  <ebb9@byu.net>
31656
31657         * modules/strnlen (Depends-on): Add extensions.
31658
31659 2006-10-02  Eric Blake  <ebb9@byu.net>
31660
31661         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
31662         definition in 2.60+.
31663
31664 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
31665
31666         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
31667         checks.
31668
31669 2006-10-02  Bruno Haible  <bruno@clisp.org>
31670
31671         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
31672         to the AUTOMAKE_OPTIONS.
31673         Reported by Jim Meyering.
31674
31675 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
31676
31677         Work around bug in Solaris 10 /proc file system:
31678         /proc/self/fd/NNN/.. isn't the parent directory of
31679         the directory whose file descriptor is NNN.  This needs to
31680         be worked around at run time, not compile time, since a
31681         program might be built on Solaris 8, where things work, and
31682         run on Solaris 10.
31683         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
31684         to use the following interface instead:
31685         (OPENAT_BUFFER_SIZE): New macro.
31686         (openat_proc_name): New function.
31687         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
31688         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
31689         Likewise.
31690         * lib/openat-proc.c: New file.
31691         * modules/openat (Files): Add lib/openat-proc.c.
31692         (Depends-on): Add same-inode, stdbool.
31693         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
31694
31695 2006-09-29  Bruno Haible  <bruno@clisp.org>
31696
31697         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
31698         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
31699         argument. Set stdout_closed before testing for ferror, not after.
31700         (fwriteerror, fwriteerror_no_ebadf): New functions.
31701
31702 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31703
31704         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
31705
31706 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
31707
31708         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
31709         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
31710
31711 2006-09-28  Jim Meyering  <jim@meyering.net>
31712
31713         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
31714         Include <unistd.h>.
31715
31716 2006-09-28  Bruno Haible  <bruno@clisp.org>
31717
31718         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
31719         * modules/linkedhash-list (Depends-on): Likewise.
31720         * modules/rbtreehash-list (Depends-on): Likewise.
31721
31722 2006-09-28  Bruno Haible  <bruno@clisp.org>
31723
31724         * lib/strndup.h: Simplify the redefinition of strndup.
31725         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
31726         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
31727
31728 2006-09-28  Bruno Haible  <bruno@clisp.org>
31729
31730         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
31731         * lib/gl_linkedhash_list.c: Likewise.
31732         * lib/gl_rbtreehash_list.c: Likewise.
31733
31734 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
31735
31736         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
31737         getaddrinfo.
31738
31739         * lib/__fpending.h: Don't include <stdio_ext.h> unless
31740         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
31741         it causes <stdio_ext.h> to cause a compile-time error.
31742         Problem reported by Nelson H. F. Beebe.
31743         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
31744         of HAVE_DECL___PENDING.
31745
31746         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
31747         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
31748         declaration.
31749
31750 2006-09-27  Jim Meyering  <jim@meyering.net>
31751
31752         This file could end up with a definition for a function
31753         named __strndup, rather than rpl_strndup on a system with
31754         incomplete weak_alias support.
31755         * lib/strndup.c (strndup): Rename from __strndup.
31756         Remove #defines that used to map __strndup to strndup.
31757         Don't use K&R prototypes.
31758         Remove LIBC-related code, since this file is not sync'd with glibc.
31759         * lib/strndup.h: Revamp, accordingly.
31760         * m4/strndup.m4: Modernize.
31761
31762 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
31763
31764         * modules/savewd (Depends-on): Add 'raise'.
31765         * lib/savewd.c: Include <signal.h>, for 'raise'.
31766
31767 2006-09-26  Jim Meyering  <jim@meyering.net>
31768
31769         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
31770         when we detect Darwin 8.7.0's acl_get_file bug.
31771         Rearrange to perform the new (below) run-test while $LIBS
31772         contains any acl-related library.  Set USE_ACL at the end.
31773         (gl_ACL_GET_FILE): New function.
31774
31775 2006-09-26  Eric Blake  <ebb9@byu.net>
31776
31777         * lib/verror.c: Include <config.h> unconditionally.
31778
31779 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
31780
31781         * modules/clock-time (Maintainer): Add self.
31782         * modules/getlogin_r (Depends-on): Add extensions.
31783
31784 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31785
31786         * modules/clock-time: New module.
31787         * modules/nanosleep (Depends-on): Add clock-time.
31788         * modules/gethrxtime (Depends-on): Likewise.
31789         * modules/gettime (Depends-on): Likewise.
31790         * modules/settime (Depends-on): Likewise.
31791
31792         * modules/fts-lgpl: Depend on openat.
31793         * modules/mkancesdirs: Depend on savewd.
31794         * modules/mkdir-p: Likewise.
31795
31796 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31797
31798         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
31799
31800         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
31801         `gl_have_arbitrary_file_name_length_limit' to
31802         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
31803         actually works between configure runs.
31804
31805 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31806             Bruno Haible  <bruno@clisp.org>
31807
31808         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
31809
31810 2006-09-25  Jim Meyering  <jim@meyering.net>
31811
31812         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
31813         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
31814
31815 2006-09-25  Eric Blake  <ebb9@byu.net>
31816
31817         * gnulib-tool (func_import, func_create_testdir): Fix typos in
31818         exec's in 2006-09-18 patch when shuffling fds.
31819
31820 2006-09-25  Bruno Haible  <bruno@clisp.org>
31821
31822         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
31823         Reported by Jim Meyering.
31824
31825 2006-09-24  Jim Meyering  <jim@meyering.net>
31826
31827         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
31828         compare a pointer against a literal "0".  That caused failures with
31829         at least HP-UX's hpcc.
31830
31831 2006-09-22  Simon Josefsson  <jas@extundo.com>
31832
31833         * modules/gc-sha1:
31834         * modules/gc-md4:
31835         * modules/gc-hmac-sha1:
31836         * modules/gc-hmac-md5:
31837         * modules/gc-des:
31838         * modules/gc-arcfour: Distribute more files.
31839
31840 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31841
31842         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
31843         (gl_linked_iterator_from_to): Initialize struct completely.
31844         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
31845         (gl_tree_iterator_from_to): Likewise
31846         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
31847         * lib/gl_array_list.c [lint] (gl_array_iterator)
31848         (gl_array_iterator_from_to): Likewise.
31849         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
31850         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
31851         (gl_carray_iterator_from_to): Likewise.
31852
31853         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
31854         * lib/md4.c (md4_process_block): Remove unused variable.
31855         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
31856         parentheses for clarity.
31857
31858 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31859
31860         * modules/bison-i18n (Depends-on): Add gettext.
31861
31862 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31863
31864         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
31865         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
31866         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
31867         also add missing comma that caused broken test.
31868         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
31869         stdlib.h, for `abort'.
31870         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
31871         variables.
31872         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
31873         include unistd.h if present, for `rmdir'.
31874         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
31875         variables.
31876         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
31877         in the process include standard headers for prototypes.
31878         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
31879         gets declared on GNU/Linux.
31880         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
31881         unistd.h, for `rmdir'.
31882         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
31883
31884         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
31885         always true.
31886         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
31887
31888         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
31889
31890 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31891
31892         * gnulib-tool (func_version): Create output all at once.  This
31893         may help avoid triggering unnecessary SIGPIPEs, and at any
31894         rate it doesn't hurt.
31895
31896 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31897             Bruno Haible  <bruno@clisp.org>
31898
31899         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
31900         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
31901         * m4/signed.m4 (bh_C_SIGNED): Likewise.
31902
31903         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
31904         (gl_FUNC_VASPRINTF): Invoke it.
31905
31906 2006-09-22  Bruno Haible  <bruno@clisp.org>
31907
31908         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
31909         getloadavg.c as first argument.
31910
31911 2006-09-22  Bruno Haible  <bruno@clisp.org>
31912
31913         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
31914         at the beginning of the gl_INIT macro.
31915         * modules/getloadavg (configure.ac): Pass $gl_source_base to
31916         gl_GETLOADAVG.
31917
31918 2006-09-22  Bruno Haible  <bruno@clisp.org>
31919
31920         * gnulib-tool (func_create_megatestdir): Don't include the config-h
31921         module.
31922         Suggested by Ralf Wildenhues.
31923
31924 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
31925
31926         Import this patch from libc:
31927
31928         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
31929
31930         * lib/regex_internal.c (re_string_reconstruct): Handle
31931         offset < pstr->valid_raw_len && pstr->offsets_needed case.
31932         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
31933         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
31934         re_string_context_at.
31935
31936         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
31937         now requires it.
31938         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
31939         gl_REGEX now does it for us.
31940         (gl_REGEX): Add test taken from
31941         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
31942
31943         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
31944         Check that large offsets work.  Modernize Autoconf usages.
31945         Prefer "yes" to mean a good thing rather than a bad.
31946         Don't put "#define mkstemp" in config.h, as this might interfere
31947         with standard system headers that "#define mkstemp mkstemp64".
31948
31949         * modules/mkstemp (Depends-on): Add extensions, so that
31950         mkstemp is visible on some platforms.
31951         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
31952         (Include): Change to "mkstemp.h" from <stdlib.h>.
31953         (Files): Add mkstemp.h.
31954
31955         * lib/mkstemp.h: New file, since some standard headers
31956         #define mkstemp.
31957         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
31958         Include "mkstemp.h".
31959         Make the _LIBC code resemble glibc original more,
31960         e.g., use K&R style.
31961         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
31962         (mkstemp): Remove, since mkstemp.h does this for us.
31963         * lib/stdlib--.h: Include mkstemp.h.
31964
31965         Import this patch from libc:
31966
31967         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
31968
31969         * lib/tempname.c (__gen_tempname): Change attempts_min
31970         into a macro.  Use preprocessor to decide how to initialize
31971         attempts [Coverity CID 67].
31972
31973 2006-09-20  Bruno Haible  <bruno@clisp.org>
31974
31975         * lib/mkdtemp.c: Import from libc.
31976         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
31977                 * sysdeps/posix/tempname.c (__gen_tempname): Change
31978                 attempts_min into a macro.  Use preprocessor to decide how to
31979                 initialize attempts [Coverity CID 67].
31980         2001-11-27  Paul Eggert  <eggert@twinsun.com>
31981                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
31982                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
31983
31984 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31985
31986         * gnulib-tool (func_exit): New function, to allow to pass the
31987         exit status portably through the trap.  Use everywhere.
31988         (--help, --version): Signal a write error.
31989         (trap): catch SIGPIPE, for write errors.
31990         Exit at the end of the trap, with the correct exit status.
31991
31992 2006-09-19  Karl Berry  <karl@gnu.org>
31993
31994         * doc/gnulib.texi: note about the license texinfo files.
31995
31996 2006-09-19  Eric Blake  <ebb9@byu.net>
31997
31998         * gnulib-tool: Avoid space-tab.
31999
32000 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
32001
32002         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
32003         that prevented coreutils 6.1 from building.  Problem reported
32004         by Petter Reinholdtsen.
32005
32006 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
32007
32008         * gnulib-tool (avoidlist): Fix typo that broke options like
32009         --avoid=lock that are used by coreutils bootstrap.
32010
32011 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
32012
32013         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
32014         more systematically.
32015
32016 2006-09-18  Jim Meyering  <jim@meyering.net>
32017
32018         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
32019
32020 2006-09-18  Bruno Haible  <bruno@clisp.org>
32021
32022         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
32023
32024 2006-09-18  Bruno Haible  <bruno@clisp.org>
32025
32026         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
32027         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
32028         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
32029         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
32030         * m4/gettext.m4: Require autoconf >= 2.52.
32031         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
32032         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
32033         of gl_cv_header_inttypes_h.
32034
32035 2006-09-18  Bruno Haible  <bruno@clisp.org>
32036
32037         * lib/javaversion.c: Include configmake.h.
32038
32039 2006-09-18  Bruno Haible  <bruno@clisp.org>
32040
32041         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
32042         avoid that the while loops be executed in a subshell.
32043
32044 2006-09-18  Bruno Haible  <bruno@clisp.org>
32045
32046         * MODULES.html.sh (func_module): Break long lines.
32047         Suggested by Bruce Korb <bkorb@gnu.org>.
32048
32049 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32050
32051         Speed up by a factor of 1.12.
32052         * gnulib-tool (nl): New variable.
32053         (func_import): Rewrite include directive extraction to only read each
32054         directive once.
32055
32056 2006-09-17  Bruno Haible  <bruno@clisp.org>
32057
32058         * modules/javaversion (Makefile.am): Remove DEFS setting.
32059         (Depends-on): Add configmake, for PKGDATADIR definition.
32060
32061 2006-09-17  Bruno Haible  <bruno@clisp.org>
32062
32063         * gnulib-tool (func_create_testdir): Rewrite all files at once.
32064
32065 2006-09-17  Bruno Haible  <bruno@clisp.org>
32066
32067         * gnulib-tool (func_append): New function, stolen from libtool.m4.
32068         (func_modules_transitive_closure, func_modules_add_dummy,
32069         func_modules_to_filelist, func_import, func_create_testdir,
32070         func_create_megatestdir, ...): Use it wherever possible.
32071         Suggested by Ralf Wildenhues.
32072
32073 2006-09-16  Karl Berry  <karl@gnu.org>
32074
32075         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
32076         to avoid sectioning errors.
32077         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
32078         [ifinfo]: blank line after @center-ed titles.
32079         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
32080         Spell FSF address consistently with others.
32081         (These changes approved by rms.)
32082
32083 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32084
32085         Speed up by a factor of 1.61.
32086         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
32087         already checked module names again.
32088
32089 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32090
32091         Speed up by a factor of 1.13.
32092         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
32093         for new_files, and the input to func_add_or_update.
32094
32095 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32096
32097         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
32098         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
32099
32100 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
32101
32102         * modules/mkancesdirs (Depends-on): Add fcntl.
32103         * modules/savewd: New file.
32104         * MODULES.html.sh (File system functions): Add savewd.
32105
32106         * modules/configmake (Makefile.am): Add support for the
32107         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
32108
32109 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
32110
32111         * m4/savewd.m4: New file.
32112
32113 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
32114
32115         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
32116         (dirchownmod): New arg FD.  All callers changed.
32117         Use FD rather than opening the directory ourself, as opening is
32118         now the caller's responsibility.
32119         * lib/dirchownmod.h: Likewise.
32120         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
32121         hosts that require <sys/types.h> before <sys/stat.h>.  Include
32122         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
32123         (test_dir): Remove.
32124         (mkancesdirs): Return length of prefix of FILE that has already
32125         been made, or -2 if there is a child doing the work.  Redo
32126         algorithm so that it is O(N) rather than O(N**2).  Optimize away
32127         ".", and treat ".." specially since it might stray back into
32128         already-created areas.  Use a subprocess if necessary.  New arg
32129         WD; all users changed.  MAKE_DIR function should now return 1
32130         if it creates a directory that is not readable.  Return -2 if
32131         a child process is spun off.
32132         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
32133         Adjust signature to match code.
32134         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
32135         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
32136         all users changed.
32137         * lib/savewd.c, lib/savewd.h: New files.
32138
32139 2006-09-15  Jim Meyering  <jim@meyering.net>
32140
32141         * modules/rename-dest-slash: New module.
32142         * MODULES.html.sh (posix_compat): Add it here.
32143
32144         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
32145
32146 2006-09-15  Jim Meyering  <jim@meyering.net>
32147
32148         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
32149         file.
32150
32151         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
32152
32153 2006-09-15  Jim Meyering  <jim@meyering.net>
32154
32155         * lib/rename-dest-slash.c (has_trailing_slash): Use
32156         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
32157         (rpl_rename_dest_slash): Perform the cheaper trailing slash
32158         test before testing whether SRC is a directory.
32159         Suggestions from Bruno Haible.
32160
32161         Avoid a warning about an unused variable.
32162         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
32163         into the #ifdef block where it's used.
32164
32165         * lib/rename-dest-slash.c: New file.
32166
32167 2006-09-14  Bruno Haible  <bruno@clisp.org>
32168
32169         * lib/allocsa.c: Include <config.h> unconditionally.
32170         * lib/asnprintf.c: Likewise.
32171         * lib/asprintf.c: Likewise.
32172         * lib/c-strcasecmp.c: Likewise.
32173         * lib/c-strcasestr.c: Likewise.
32174         * lib/c-strncasecmp.c: Likewise.
32175         * lib/c-strstr.c: Likewise.
32176         * lib/classpath.c: Likewise.
32177         * lib/clean-temp.c: Likewise.
32178         * lib/concatpath.c: Likewise.
32179         * lib/copy-file.c: Likewise.
32180         * lib/csharpcomp.c: Likewise.
32181         * lib/csharpexec.c: Likewise.
32182         * lib/execute.c: Likewise.
32183         * lib/fatal-signal.c: Likewise.
32184         * lib/findprog.c: Likewise.
32185         * lib/fwriteerror.c: Likewise.
32186         * lib/gl_array_list.c: Likewise.
32187         * lib/gl_array_oset.c: Likewise.
32188         * lib/gl_avltree_list.c: Likewise.
32189         * lib/gl_avltree_oset.c: Likewise.
32190         * lib/gl_avltreehash_list.c: Likewise.
32191         * lib/gl_carray_list.c: Likewise.
32192         * lib/gl_linked_list.c: Likewise.
32193         * lib/gl_linkedhash_list.c: Likewise.
32194         * lib/gl_list.c: Likewise.
32195         * lib/gl_oset.c: Likewise.
32196         * lib/gl_rbtree_list.c: Likewise.
32197         * lib/gl_rbtree_oset.c: Likewise.
32198         * lib/gl_rbtreehash_list.c: Likewise.
32199         * lib/imaxabs.c: Likewise.
32200         * lib/imaxdiv.c: Likewise.
32201         * lib/javacomp.c: Likewise.
32202         * lib/javaexec.c: Likewise.
32203         * lib/javaversion.c: Likewise.
32204         * lib/linebreak.c: Likewise.
32205         * lib/localcharset.c: Likewise.
32206         * lib/lock.c: Likewise.
32207         * lib/mbchar.c: Likewise.
32208         * lib/mbswidth.c: Likewise.
32209         * lib/mkdtemp.c: Likewise.
32210         * lib/pipe.c: Likewise.
32211         * lib/printf-args.c: Likewise.
32212         * lib/printf-parse.c: Likewise.
32213         * lib/progname.c: Likewise.
32214         * lib/progreloc.c: Likewise.
32215         * lib/readlink.c: Likewise.
32216         * lib/sh-quote.c: Likewise.
32217         * lib/stpcpy.c: Likewise.
32218         * lib/stpncpy.c: Likewise.
32219         * lib/strcasecmp.c: Likewise.
32220         * lib/strcasestr.c: Likewise.
32221         * lib/strcspn.c: Likewise.
32222         * lib/striconv.c: Likewise.
32223         * lib/strncasecmp.c: Likewise.
32224         * lib/strnlen1.c: Likewise.
32225         * lib/strstr.c: Likewise.
32226         * lib/strtok_r.c: Likewise.
32227         * lib/tls.c: Likewise.
32228         * lib/tmpdir.c: Likewise.
32229         * lib/unicodeio.c: Likewise.
32230         * lib/unsetenv.c: Likewise.
32231         * lib/vasnprintf.c: Likewise.
32232         * lib/vasprintf.c: Likewise.
32233         * lib/wait-process.c: Likewise.
32234         * lib/xallocsa.c: Likewise.
32235         * lib/xsetenv.c: Likewise.
32236         * lib/xstriconv.c: Likewise.
32237
32238 2006-09-13  Simon Josefsson  <jas@extundo.com>
32239
32240         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
32241         that internally, suggested by Ralf Wildenhues
32242         <Ralf.Wildenhues@gmx.de>.
32243
32244 2006-09-13  Simon Josefsson  <jas@extundo.com>
32245
32246         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
32247         @LIBOBJS@.
32248         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
32249
32250 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
32251
32252         * lib/_fpending.c: Include <config.h> unconditionally, since we no
32253         longer worry about uses that don't define HAVE_CONFIG_H.
32254         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
32255         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
32256         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
32257         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
32258         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
32259         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
32260         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
32261         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
32262         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
32263         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
32264         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
32265         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
32266         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
32267         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
32268         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
32269         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
32270         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
32271         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
32272         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
32273         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
32274         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
32275         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
32276         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
32277         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
32278         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
32279         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
32280         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
32281         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
32282         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
32283         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
32284         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
32285         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
32286         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
32287         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
32288         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
32289         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
32290         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
32291         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
32292         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
32293         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
32294         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
32295         Likewise.
32296
32297 2006-09-13  Eric Blake  <ebb9@byu.net>
32298
32299         * lib/getopt.c: Fix typo in last commit.
32300
32301 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
32302
32303         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
32304         dgettext.
32305
32306 2006-09-12  Jim Meyering  <jim@meyering.net>
32307
32308         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
32309         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
32310         Reported by Nelson H. F. Beebe.
32311
32312 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
32313
32314         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
32315         program_invocation_name and program_invocation_short_name are
32316         initialized.
32317         * lib/argp-namefrob.h: Move declarations of program_invocation_name
32318         and program_invocation_short_name to argp.h, so they are visible
32319         to user programs.
32320         * lib/argp.h: Likewise
32321
32322 2006-09-10  Bruno Haible  <bruno@clisp.org>
32323
32324         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
32325         m4/inttypes_h.m4, m4/uintmax_t.m4.
32326
32327 2006-09-10  Bruno Haible  <bruno@clisp.org>
32328
32329         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
32330         gl_AC_TYPE_UINTMAX_T.
32331
32332 2006-09-10  Bruno Haible  <bruno@clisp.org>
32333
32334         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
32335
32336 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
32337
32338         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
32339         convention.  Text proposed by Bruno Haible.
32340         (struct argp_option): Document the use of N_() wrappers.
32341
32342         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
32343         '\v', and translate the two parts separately, instead of feeding
32344         the whole string to gettext.  This allows to exclude
32345         '\v' from the strings visible to the translator by writing doc
32346         strings as N_("..") "\v" N_("..").
32347
32348 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
32349
32350         * config/srclist.txt: Undo latest change; the bug was fixed.
32351
32352 2006-09-09  Bruno Haible  <bruno@clisp.org>
32353
32354         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
32355         assignments if building a library without libtool.
32356         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
32357         in func_emit_lib_Makefile_am.
32358         (func_import): When building a static library libfoo.a, arrange to
32359         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
32360         (func_create_testdir): Likewise.
32361         * modules/gc (configure.ac, Makefile.am): If building statically,
32362         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
32363         * modules/iconvme (configure.ac, Makefile.am): Likewise.
32364         * modules/striconv (configure.ac, Makefile.am): Likewise.
32365         Based on a suggestion by Ralf Wildenhues.
32366
32367 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32368
32369         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
32370         Check for unistd.h too, since Autoconf doesn't assume POSIX.
32371         Also:
32372
32373         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32374         Add year_2050_test to catch glibc bug 2821
32375         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
32376
32377         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
32378         Prefer #ifdef to #if.
32379
32380         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
32381         Return from 'main' instead of calling 'exit'.
32382
32383 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32384
32385         * lib/mktime.c (guess_time_tm): Fix bug where mktime
32386         returned the maximum time_t value rather than (time_t) -1.
32387         Problem originally reported by William Bardwell
32388         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
32389
32390         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
32391         Moved to here ...
32392         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
32393         ... from here.
32394
32395 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
32396
32397         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
32398         2821 is fixed.
32399
32400 2006-09-08  Jim Meyering  <jim@meyering.net>
32401
32402         Don't make generated files read-only.  That would bother too many
32403         people.  However, do retain the ability to work when targets are
32404         read-only: remove the destination and temporary files before writing
32405         them (when generated via sed or echo), or by using the -f option for
32406         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
32407         * modules/alloca-opt, modules/argz, modules/arpa_inet:
32408         * modules/byteswap, modules/configmake, modules/fcntl:
32409         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
32410         * modules/localcharset, modules/netinet_in, modules/poll:
32411         * modules/stdbool, modules/stdint, modules/sys_select:
32412         * modules/sys_socket, modules/sys_stat, modules/sysexits:
32413
32414 2006-09-08  Jim Meyering  <jim@meyering.net>
32415
32416         Avoid new build failure on FreeBSD 6.0.
32417         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
32418         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
32419         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
32420
32421 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32422
32423         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
32424
32425 2006-09-07  Jim Meyering  <jim@meyering.net>
32426
32427         Fix global typo in last change: use chmod u-w, not chmod u-x.
32428         Spotted by Paul Eggert and Bruce Korb.
32429         * modules/alloca-opt, modules/argz, modules/arpa_inet:
32430         * modules/byteswap, modules/configmake, modules/fcntl:
32431         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
32432         * modules/localcharset, modules/netinet_in, modules/poll:
32433         * modules/stdbool, modules/stdint, modules/sys_select:
32434         * modules/sys_socket, modules/sys_stat, modules/sysexits:
32435
32436 2006-09-06  Jim Meyering  <jim@meyering.net>
32437
32438         Make generated files be read-only.
32439         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
32440         Ensure that each generated file is now read-only.
32441         * modules/argz: Likewise.
32442         * modules/arpa_inet: Likewise.
32443         * modules/byteswap: Likewise.
32444         * modules/configmake: Likewise.
32445         * modules/fcntl: Likewise.
32446         * modules/fnmatch: Likewise.
32447         * modules/getopt: Likewise.
32448         * modules/glob: Likewise.
32449         * modules/inttypes: Likewise.
32450         * modules/netinet_in: Likewise.
32451         * modules/poll: Likewise.
32452         * modules/stdbool: Likewise.
32453         * modules/stdint: Likewise.
32454         * modules/sys_select: Likewise.
32455         * modules/sys_socket: Likewise.
32456         * modules/sys_stat: Likewise.
32457         * modules/sysexits: Likewise.
32458         * modules/localcharset: Same as above, but continue using temporary
32459         file named "t-$@" (why different?) rather than the "$@-t" used
32460         everywhere else.
32461
32462         * modules/sysexits (Makefile.am): Replace literal occurrences
32463         of "sysexit.h" more readable, and more consistent, "$@".
32464
32465 2006-09-06  Bruno Haible  <bruno@clisp.org>
32466
32467         * modules/striconv: New file.
32468         * modules/xstriconv: New file.
32469         * MODULES.html.sh (Internationalization functions): Add striconv,
32470         xstriconv.
32471
32472 2006-09-06  Bruno Haible  <bruno@clisp.org>
32473
32474         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
32475         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
32476         not using libtool correctly.
32477
32478 2006-09-06  Bruno Haible  <bruno@clisp.org>
32479
32480         * lib/striconv.h: New file.
32481         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
32482         iconvstring.c.
32483         * lib/xstriconv.h: New file.
32484         * lib/xstriconv.c: New file.
32485
32486 2006-09-06  Bruno Haible  <bruno@clisp.org>
32487
32488         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
32489         lib_..._LDFLAGS.
32490
32491 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32492
32493         * lib/argz_.h: Sync from Libtool.
32494
32495         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
32496                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
32497
32498         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
32499
32500 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
32501
32502         * modules/trim: New file.
32503
32504 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
32505
32506         * lib/trim.h: New file.
32507         * lib/trim.c: New file.
32508
32509 2006-09-05  Bruno Haible  <bruno@clisp.org>
32510
32511         * MODULES.html.sh (String handling): Add trim.
32512
32513 2006-09-04  Karl Berry  <karl@gnu.org>
32514
32515         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
32516         until next release.
32517
32518 2006-09-03  Bruno Haible  <bruno@clisp.org>
32519
32520         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
32521         correctly.
32522
32523 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
32524
32525         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
32526         not gl_GETLOADAVG.  Omit unneeded semicolons.
32527         Problems reported by Ralf Wildenhues in
32528         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
32529         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
32530         at the end, which is the usual gnulib style.
32531
32532         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
32533         of doing all the work ourselves.
32534         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
32535         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
32536
32537 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
32538
32539         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
32540         Problem reported by Ralf Wildenhues in
32541         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
32542
32543         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
32544         HAVE_STRUCT_STATFS_F_FSTYPENAME.
32545
32546 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
32547
32548         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
32549         yesterday's patch by changing test -n to test -z.
32550
32551 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
32552
32553         * modules/getloadavg (Files): Add m4/getloadavg.m4.
32554         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
32555         the former is now obsolescent.
32556
32557         * modules/chdir-long (Depends-on): Add fcntl.
32558
32559 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
32560
32561         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
32562         obsolescent, and programs should use gnulib instead.
32563         * m4/getloadavg.m4: New file, with contents taken from Autoconf
32564         but with prefixes changed.
32565
32566 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
32567
32568         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
32569         or stdbool.h, because they might not exist while configuring.
32570
32571         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
32572         Don't include unistd.h or limits.h; not needed, since chdir-long.h
32573         does that for us.
32574         (O_DIRECTORY): Remove.
32575
32576 2006-08-31  Eric Blake  <ebb9@byu.net>
32577
32578         * gnulib-tool: Don't let emacs change spaces to TAB.
32579
32580 2006-08-31  Bruno Haible  <bruno@clisp.org>
32581
32582         * gnulib-tool: When calling func_import more than once, do it in a
32583         subshell.
32584         Reported by Eric Blake <ebb9@byu.net>.
32585
32586 2006-08-31  Bruno Haible  <bruno@clisp.org>
32587
32588         * gnulib-tool (nl): Remove variable.
32589         (sed_transform_lib_file): Use more robust test for config-h module.
32590         (func_import): Fix typo in 2006-08-25 patch.
32591
32592 2006-08-31  Bruno Haible  <bruno@clisp.org>
32593
32594         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
32595         specified, augment Makefile.am variables instead of assigning them.
32596
32597 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
32598
32599         Work around a bug in both the Linux and SunOS 64-bit kernels:
32600         nanosleep mishandles sleeps for longer than 2**31 seconds.
32601         Problem reported by Frank v Waveren in
32602         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
32603         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
32604         Check for nanosleep bug.
32605         (LIB_NANOSLEEP): Append clock_gettime library if needed.
32606
32607 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
32608
32609         Work around a bug in both the Linux and SunOS 64-bit kernels:
32610         nanosleep mishandles sleeps for longer than 2**31 seconds.
32611         Problem reported by Frank v Waveren in
32612         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
32613         * lib/nanosleep.c (BILLION): New constant.
32614         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
32615         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
32616         implementation.
32617
32618 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
32619
32620         * modules/nanosleep (Depends-on): Add gettime.
32621
32622 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
32623         and Simon Josefsson  <jas@extundo.com>
32624         and Oskar Liljeblad  <oskar@osk.mine.nu>
32625
32626         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
32627         * gnulib-tool (func_import): New license type 'unmodifiable license
32628         text'.
32629         * modules/fdl: Use it.  Longer description.
32630         * module/gpl, module/lgpl: New files.
32631
32632 2006-08-30  Jim Meyering  <jim@meyering.net>
32633
32634         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
32635         shadowing the parameter.
32636
32637 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32638
32639         Sync from Libtool:
32640
32641         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32642
32643         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
32644         sharing with gnulib.  Report by Eric Blake.
32645
32646 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
32647
32648         * modules/isapipe: New file.
32649         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
32650
32651 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
32652
32653         * modules/configmake (Makefile.am): Add a comment, and omit
32654         the CONFIGMAKE_ prefix from generated macro names.  Suggested
32655         by Bruno Haible.
32656
32657 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
32658
32659         * m4/isapipe.m4: New file.
32660
32661 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
32662
32663         * lib/isapipe.c, lib/isapipe.h: New files.
32664
32665 2006-08-29  Jim Meyering  <jim@meyering.net>
32666
32667         * modules/configmake (Makefile.am): Make configmake.h depend on
32668         Makefile.  Otherwise, a stale configmake.h could hang around.
32669
32670 2006-08-29  Eric Blake  <ebb9@byu.net>
32671
32672         * lib/error.c (error_at_line, print_errno_message): Match libc, after
32673         resolution of upstream bug 3044.
32674
32675 2006-08-29  Bruno Haible  <bruno@clisp.org>
32676
32677         * modules/localcharset (Depends-on): Add configmake.
32678         (Makefile.am): Remove setting of LIBDIR through DEFS.
32679
32680 2006-08-29  Bruno Haible  <bruno@clisp.org>
32681
32682         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
32683         defined.
32684
32685 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
32686
32687         * modules/fcntl: New file.
32688         * modules/chdir-safer (Depends-on): Add fcntl.
32689         * modules/fts: Likewise.
32690         * modules/mkdir-p: Likewise.
32691
32692         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
32693         This undoes the most recent change, since we're now addressing the
32694         problem in a different way.
32695
32696         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
32697         into output, since the output might be called Makefile.am even
32698         if $makefile_name is something different.
32699         (func_import): Use $makefile_am rather than
32700         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
32701         empty.
32702
32703         * modules/inttypes (Files): Add m4/inttypes-h.m4.
32704
32705 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
32706
32707         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
32708         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
32709         recent change to stdint.m4, since we're now addressing the problem in a
32710         different way.
32711
32712 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
32713
32714         * m4/fcntl_h.m4: New file.
32715
32716 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
32717
32718         * lib/fcntl_.h: New file.
32719         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
32720         the fcntl module.
32721         * lib/dirchownmod.c: Likewise.
32722         * lib/fts.c: Likewise.
32723
32724         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
32725         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
32726         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
32727         just before including <inttypes.h>, to avoid circular inclusion.
32728
32729 2006-08-28  Jim Meyering  <jim@meyering.net>
32730
32731         * doc/visibility.texi: Actually read and correct the grammar of the
32732         sentence affected by yesterday's change.
32733
32734 2006-08-28  Eric Blake  <ebb9@byu.net>
32735
32736         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
32737         needs wrapper.
32738
32739 2006-08-28  Eric Blake  <ebb9@byu.net>
32740
32741         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
32742
32743 2006-08-28  Eric Blake  <ebb9@byu.net>
32744
32745         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
32746
32747 2006-08-28  Bruno Haible  <bruno@clisp.org>
32748
32749         * modules/c-strstr: New file, from GNU gettext.
32750         * MODULES.html.sh (String handling): Add c-strstr.
32751
32752 2006-08-28  Bruno Haible  <bruno@clisp.org>
32753
32754         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
32755         macros.
32756         Reported by Eric Blake.
32757
32758 2006-08-28  Bruno Haible  <bruno@clisp.org>
32759
32760         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
32761         (VASNPRINTF): Return a string of length > INT_MAX without failing.
32762         * lib/vasprintf.c: Include errno.h, limits.h.
32763         (EOVERFLOW): New fallback definition.
32764         (vasprintf): Test here whether the string length is > INT_MAX.
32765         * lib/vsnprintf.c: Include errno.h, limits.h.
32766         (EOVERFLOW): New fallback definition.
32767         (vsnprintf): Fix bug when generated string was too long for the buffer.
32768         Test here whether the string length is > INT_MAX.
32769
32770 2006-08-28  Bruno Haible  <bruno@clisp.org>
32771
32772         * lib/inttypes_.h (SCNX*): Remove definitions.
32773         Reported by Eric Blake.
32774
32775 2006-08-28  Bruno Haible  <bruno@clisp.org>
32776
32777         * lib/c-strstr.h: New file, from GNU gettext.
32778         * lib/c-strstr.c: New file, from GNU gettext.
32779
32780 2006-08-28  Bruno Haible  <bruno@clisp.org>
32781
32782         * gnulib-tool: Reorder some statements.
32783
32784 2006-08-28  Bruno Haible  <bruno@clisp.org>
32785
32786         * gnulib-tool: New option --makefile-name.
32787         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
32788         $makefile_name.
32789         (func_import): Write $makefile_name to the cache file, and read it from
32790         there unless explicitly specified. Use $makefile_name as file name
32791         instead of Makefile.am. Adjust the recommendations accordingly.
32792
32793 2006-08-28  Bruno Haible  <bruno@clisp.org>
32794
32795         * gnulib-tool (func_verify_module): Check against misapplying patch.
32796
32797 2006-08-28  Bruno Haible  <bruno@clisp.org>
32798
32799         * gnulib-tool (func_relativize, func_relconcat): New functions.
32800         Give an error if --local-dir is given with --update.
32801         Remove trailing slashes from $local_gnulib_dir.
32802         (func_import): Store the relativized $local_gnulib_dir in
32803         gnulib-cache.m4, and read it from there if not specified explicitly.
32804
32805 2006-08-28  Bruno Haible  <bruno@clisp.org>
32806
32807         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
32808         is the current directory. Respect also $local_gnulib_dir.
32809
32810 2006-08-28  Bruno Haible  <bruno@clisp.org>
32811             Simon Josefsson  <jas@extundo.com>
32812
32813         BeOS portability.
32814         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
32815
32816 2006-08-27  Jim Meyering  <jim@meyering.net>
32817
32818         * doc/visibility.texi: Remove duplicate word: "pointer".
32819
32820 2006-08-26  Bruno Haible  <bruno@clisp.org>
32821
32822         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
32823         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
32824         (Makefile.am): Create inttypes.h from inttypes_.h.
32825         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
32826
32827         * modules/imaxabs: New file.
32828
32829         * modules/imaxdiv: New file.
32830
32831 2006-08-26  Bruno Haible  <bruno@clisp.org>
32832
32833         * m4/inttypes.m4: New file.
32834         * m4/_inttypes_h.m4: Remove file.
32835         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
32836         PRI_MACROS_BROKEN.
32837         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
32838
32839         * m4/imaxabs.m4: New file.
32840
32841         * m4/imaxdiv.m4: New file.
32842
32843 2006-08-26  Bruno Haible  <bruno@clisp.org>
32844
32845         * lib/inttypes_.h: New file.
32846         * lib/inttypes.h: Remove file.
32847         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
32848
32849         * lib/imaxabs.c: New file.
32850
32851         * lib/imaxdiv.c: New file.
32852
32853 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
32854
32855         New config-h module, so that "make" output needn't be cluttered
32856         by -DHAVE_CONFIG_H.
32857         * MODULES.html.sh (Support for building libraries and executables):
32858         Add config-h.
32859         * modules/config-h: New file.
32860         * gnulib-tool (nl, sed_transform_lib_file): New vars.
32861         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
32862         the config-h module is used.
32863
32864         New configmake module, so that "make" output needn't be cluttered
32865         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
32866         * MODULES.html.sh (Support for building libraries and executables):
32867         Add configmake.
32868         * modules/configmake: New file.
32869
32870 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
32871
32872         * m4/config-h.m4: New file.
32873
32874 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
32875
32876         * config/srclist.txt: Add elisp-comp.
32877
32878 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
32879
32880         * MODULES.html.sh (Support for building libraries and executables):
32881         Add elisp-comp.
32882         * build-aux/elisp-comp: New file.
32883         * modules/elisp-comp: New file.
32884
32885 2006-08-24  Bruno Haible  <bruno@clisp.org>
32886
32887         * gnulib-tool (func_create_testdir): Use non-default values of
32888         sourcebase and m4base.
32889
32890 2006-08-24  Bruno Haible  <bruno@clisp.org>
32891
32892         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
32893         HTML structure.
32894
32895 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
32896
32897         * modules/openat (Depends-on): Add lchown.
32898
32899 2006-08-23  Bruno Haible  <bruno@clisp.org>
32900
32901         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
32902         of gl_LOCK_EARLY instead of gl_LOCK.
32903
32904 2006-08-23  Bruno Haible  <bruno@clisp.org>
32905
32906         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
32907         on OSF/1 to no.
32908         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
32909
32910 2006-08-23  Bruno Haible  <bruno@clisp.org>
32911
32912         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
32913         as unusable.
32914
32915         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
32916         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
32917         (gl_LOCK): New macro.
32918
32919 2006-08-22  Simon Josefsson  <jas@extundo.com>
32920
32921         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
32922         to md5 module.
32923
32924 2006-08-22  Simon Josefsson  <jas@extundo.com>
32925
32926         * MODULES.html.sh: Add "Support for maintaining and release
32927         projects".
32928
32929         * build-aux/gnupload: New file, from coreutils.
32930
32931 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
32932
32933         Avoid the need for AC_LIBSOURCES in m4 macros.
32934         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
32935         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
32936         * modules/check-version (EXTRA_DIST): Add check-version.h.
32937         * modules/crc (EXTRA_DIST): Add crc.h.
32938         * modules/des (EXTRA_DIST): Add des.h.
32939         * modules/gc (EXTRA_DIST): Add gc.h.
32940         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
32941         * modules/getline (EXTRA_DIST): Add getline.h.
32942         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
32943         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
32944         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
32945         * modules/md2 (EXTRA_DIST): Add md2.h.
32946         * modules/md4 (EXTRA_DIST): Add md4.h.
32947         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
32948         * modules/read-file (EXTRA_DIST): Add read-file.h.
32949         * modules/readline (EXTRA_DIST): Add readline.h.
32950         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
32951         rijndael-api-fst.h.
32952
32953 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
32954
32955         * m4/rijndael.m4 (gl_ARCFOUR):
32956         * m4/arctwo.m4 (gl_ARCTWO):
32957         * m4/check-version.m4 (gl_CHECK_VERSION):
32958         * m4/crc.m4 (gl_CRC):
32959         * m4/des.m4 (gl_DES):
32960         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
32961         * m4/gc.m4 (gl_GC):
32962         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
32963         * m4/getline.m4 (gl_FUNC_GETLINE):
32964         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
32965         * m4/hmac-md5.m4 (gl_HMAC_MD5):
32966         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
32967         * m4/md2.m4 (gl_MD2):
32968         * m4/md4.m4 (gl_MD4):
32969         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
32970         * m4/read-file.m4 (gl_FUNC_READ_FILE):
32971         * m4/readline.m4 (gl_FUNC_READLINE):
32972         * m4/rijndael.m4 (gl_RIJNDAEL):
32973         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
32974         to get the necessary .h files and whatnot.
32975
32976 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
32977
32978         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
32979         gnulib rather than the other way around.
32980         * config/srclistvars.sh (COREUTILS): Remove.
32981
32982 2006-08-22  Jim Meyering  <jim@meyering.net>
32983
32984         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
32985
32986         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
32987
32988 2006-08-22  Eric Blake  <ebb9@byu.net>
32989
32990         * modules/regexprops-generic: New file.
32991         * MODULES.html.sh (Support for building documentation): List it.
32992
32993 2006-08-22  Eric Blake  <ebb9@byu.net>
32994
32995         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
32996         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
32997         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
32998         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
32999
33000 2006-08-22  Bruno Haible  <bruno@clisp.org>
33001
33002         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
33003         and lib_LTLIBRARIES like the other lib_* variables.
33004
33005 2006-08-22  Bruno Haible  <bruno@clisp.org>
33006
33007         * build-aux/x-to-1.in: New file, from GNU gettext.
33008
33009 2006-08-22  Bruno Haible  <bruno@clisp.org>
33010
33011         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
33012         <utmpx.h> exists.
33013
33014 2006-08-22  Bruno Haible  <bruno@clisp.org>
33015
33016         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
33017         <utmpx.h> exists.
33018
33019 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
33020
33021         BeOS portability.
33022         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
33023         exist.
33024         Problem reported by Bruno Haible.
33025
33026 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
33027
33028         Avoid the need for AC_LIBSOURCES in m4 macros.
33029         * modules/acl (EXTRA_DIST): Add acl.h.
33030         * modules/argmatch (Files): Add m4/argmatch.m4.
33031         (configure.ac): Add gl_ARGMATCH.
33032         (EXTRA_DIST): Renamed from lib_SOURCES, for
33033         consistency with the other modules.  Remove argmatch.c.
33034         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
33035         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
33036         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
33037         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
33038         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
33039         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
33040         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
33041         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
33042         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
33043         * modules/closeout (EXTRA_DIST): Add closeout.h.
33044         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
33045         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
33046         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
33047         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
33048         dirname.h; remove basename.c and stripslash.c.
33049         * modules/exclude (EXTRA_DIST): Add exclude.h.
33050         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
33051         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
33052         * modules/file-type (EXTRA_DIST): Add file-type.h.
33053         * modules/filemode (EXTRA_DIST): Add filemode.h.
33054         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
33055         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
33056         * modules/fpending (EXTRA_DIST): Add __fpending.h.
33057         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
33058         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
33059         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
33060         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
33061         * modules/getdate (EXTRA_DIST): Add getdate.c.
33062         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
33063         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
33064         * modules/getpass (EXTRA_DIST): Add getpass.h.
33065         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
33066         * modules/group-member (EXTRA_DIST): Add group-member.h.
33067         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
33068         * modules/hash (EXTRA_DIST): Add hash.h.
33069         * modules/human (EXTRA_DIST): Add human.h.
33070         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
33071         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
33072         * modules/lchown (EXTRA_DIST): Add lchown.h.
33073         * modules/long-options (EXTRA_DIST): Add long-options.h.
33074         * modules/lstat (EXTRA_DIST): Add lstat.h.
33075         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
33076         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
33077         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
33078         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
33079         * modules/memxor (EXTRA_DIST): Add memxor.h.
33080         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
33081         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
33082         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
33083         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
33084         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
33085         * modules/physmem (EXTRA_DIST): Add physmem.h.
33086         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
33087         * modules/posixver (EXTRA_DIST): Add posixver.h.
33088         * modules/quote (EXTRA_DIST): Add quote.h.
33089         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
33090         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
33091         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
33092         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
33093         regex_internal.h regexec.c.
33094         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
33095         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
33096         * modules/same (EXTRA_DIST): Add same.h.
33097         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
33098         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
33099         * modules/savedir (EXTRA_DIST): Add savedir.h.
33100         * modules/sha1 (EXTRA_DIST): Add sha1.h.
33101         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
33102         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
33103         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
33104         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
33105         * modules/strdup (EXTRA_DIST): Add strdup.h.
33106         * modules/strftime (EXTRA_DIST): Add strftime.h.
33107         * modules/strndup (EXTRA_DIST): Add strndup.h.
33108         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
33109         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
33110         * modules/time_r (EXTRA_DIST): Add time_r.h.
33111         * modules/timespec (EXTRA_DIST): Add timespec.h.
33112         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
33113         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
33114         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
33115         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
33116         * modules/userspec (EXTRA_DIST): Add userspec.h.
33117         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
33118         * modules/utimens (EXTRA_DIST): Add utimens.h.
33119         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
33120         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
33121         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
33122         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
33123         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
33124         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
33125         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
33126         * modules/yesno (EXTRA_DIST): Add yesno.h.
33127
33128 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
33129
33130         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
33131
33132         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
33133         * m4/dev-ino.m4, same-inode.m4: Remove.
33134
33135         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
33136         * m4/acl.m4 (AC_FUNC_ACL):
33137         * m4/backupfile.m4 (gl_BACKUPFILE):
33138         * m4/c-strtod.m4 (gl_C99_STRTOLD):
33139         * m4/canon-host.m4 (gl_CANON_HOST):
33140         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
33141         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
33142         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
33143         * m4/cloexec.m4 (gl_CLOEXEC):
33144         * m4/close-stream.m4 (gl_CLOSE_STREAM):
33145         * m4/closeout.m4 (gl_CLOSEOUT):
33146         * m4/dirfd.m4 (gl_FUNC_DIRFD):
33147         * m4/dirname.m4 (gl_DIRNAME):
33148         * m4/exclude.m4 (gl_EXCLUDE):
33149         * m4/exitfail.m4 (gl_EXITFAIL):
33150         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
33151         * m4/file-type.m4 (gl_FILE_TYPE):
33152         * m4/filemode.m4 (gl_FILEMODE):
33153         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
33154         * m4/fpending.m4 (gl_FUNC_FPENDING):
33155         * m4/fprintftime.m4 (gl_FPRINTFTIME):
33156         * m4/fts.m4 (gl_FUNC_FTS):
33157         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
33158         * m4/getdate.m4 (gl_GETDATE):
33159         * m4/gethrxtime.m4 (gl_GETHRXTIME):
33160         * m4/getpagesize.m4 (gl_GETPAGESIZE):
33161         * m4/getpass.m4 (gl_FUNC_GETPASS):
33162         * m4/gettime.m4 (gl_GETTIME):
33163         * m4/getugroups.m4 (gl_GETUGROUPS):
33164         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
33165         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
33166         * m4/hard-locale.m4 (gl_HARD_LOCALE):
33167         * m4/hash.m4 (gl_HASH):
33168         * m4/idcache.m4 (gl_IDCACHE):
33169         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
33170         * m4/lchown.m4 (gl_FUNC_LCHOWN):
33171         * m4/long-options.m4 (gl_LONG_OPTIONS):
33172         * m4/lstat.m4 (gl_FUNC_LSTAT):
33173         * m4/md5.m4 (gl_MD5):
33174         * m4/memcasecmp.m4 (gl_MEMCASECMP):
33175         * m4/memcoll.m4 (gl_MEMCOLL):
33176         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
33177         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
33178         * m4/memxor.m4 (gl_MEMXOR):
33179         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
33180         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
33181         * m4/modechange.m4 (gl_MODECHANGE):
33182         * m4/mountlist.m4 (gl_MOUNTLIST):
33183         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
33184         * m4/openat.m4 (gl_FUNC_OPENAT):
33185         * m4/pathmax.m4 (gl_PATHMAX):
33186         * m4/physmem.m4 (gl_PHYSMEM):
33187         * m4/posixtm.m4 (gl_POSIXTM):
33188         * m4/posixver.m4 (gl_POSIXVER):
33189         * m4/quote.m4 (gl_QUOTE):
33190         * m4/quotearg.m4 (gl_QUOTEARG):
33191         * m4/readtokens.m4 (gl_READTOKENS):
33192         * m4/readutmp.m4 (gl_READUTMP):
33193         * m4/regex.m4 (gl_REGEX):
33194         * m4/safe-read.m4 (gl_SAFE_READ):
33195         * m4/safe-write.m4 (gl_SAFE_WRITE):
33196         * m4/same.m4 (gl_SAME):
33197         * m4/save-cwd.m4 (gl_SAVE_CWD):
33198         * m4/savedir.m4 (gl_SAVEDIR):
33199         * m4/settime.m4 (gl_SETTIME):
33200         * m4/sha1.m4 (gl_SHA1):
33201         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
33202         * m4/stat-macros.m4 (gl_STAT_MACROS):
33203         * m4/stat-time.m4 (gl_STAT_TIME):
33204         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
33205         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
33206         * m4/strdup.m4 (gl_FUNC_STRDUP):
33207         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
33208         * m4/strndup.m4 (gl_FUNC_STRNDUP):
33209         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
33210         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
33211         * m4/time_r.m4 (gl_TIME_R):
33212         * m4/timespec.m4 (gl_TIMESPEC):
33213         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
33214         * m4/unlinkdir.m4 (gl_UNLINKDIR):
33215         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
33216         * m4/userspec.m4 (gl_USERSPEC):
33217         * m4/utimecmp.m4 (gl_UTIMECMP):
33218         * m4/utimens.m4 (gl_UTIMENS):
33219         * m4/xalloc.m4 (gl_XALLOC):
33220         * m4/xgetcwd.m4 (gl_XGETCWD):
33221         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
33222         * m4/xreadlink.m4 (gl_XREADLINK):
33223         * m4/xstrtod.m4 (gl_XSTRTOD):
33224         * m4/yesno.m4 (gl_YESNO):
33225         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
33226         to get the necessary .h files and whatnot.
33227
33228 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
33229             Bruno Haible  <bruno@clisp.org>
33230
33231         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
33232         /bin/sh understanding of '!' conditional negation.
33233
33234 2006-08-21  Jim Meyering  <jim@meyering.net>
33235
33236         * modules/openat (Depends-on): Really alphabetize.
33237
33238         * modules/acl (Depends-on): Add error and quote.
33239
33240         * check-module (find_included_lib_files): Add at-func.c to the
33241         ok-to-include-more-than-once white list.
33242
33243         * modules/openat (Depends-on): Add lstat.  Alphabetize.
33244
33245 2006-08-21  Bruno Haible  <bruno@clisp.org>
33246
33247         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
33248         Emit a pkgdata_DATA variable only if some snippets add contents to it.
33249         Reported by Martin Lambers <marlam@marlam.de>.
33250
33251 2006-08-21  Bruno Haible  <bruno@clisp.org>
33252
33253         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
33254         specify an installation location, don't emit a noinst_LIBRARIES or
33255         noinst_LTLIBRARIES assignment.
33256
33257 2006-08-21  Bruno Haible  <bruno@clisp.org>
33258
33259         BeOS portability.
33260         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
33261         BeOS has mbrtowc() but no <wctype.h>.
33262
33263 2006-08-21  Bruno Haible  <bruno@clisp.org>
33264
33265         BeOS portability.
33266         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
33267         exist.
33268
33269 2006-08-21  Bruno Haible  <bruno@clisp.org>
33270
33271         BeOS portability.
33272         * lib/mbchar.h: Include <wctype.h> only if it exists.
33273
33274 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33275
33276         Remove files that are no longer needed by their respective modules.
33277         * m4/obstack.m4: Remove.
33278         * m4/strerror_r.m4: Remove.
33279         * m4/uint32_t.m4: Remove.
33280         * m4/uintptr_t.m4: Remove.
33281         * m4/ullong_max.m4: Remove.
33282         * m4/xstrtoimax.m4: Remove.
33283         * m4/xstrtoumax.m4: Remove.
33284
33285         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
33286         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
33287         dependencies now capture this.
33288
33289         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
33290         Do not use AC_LIBSOURCES, since gnulib modules now do this.
33291         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
33292         * m4/human.m4 (gl_HUMAN): Likewise.
33293         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
33294         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
33295
33296         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
33297
33298         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
33299         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
33300         stdint.
33301         * m4/human.m4 (gl_HUMAN): Likewise.
33302         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
33303         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
33304         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
33305         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
33306         * m4/xstrtol (gl_XSTRTOL): Likewise.
33307
33308         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
33309         AC_TYPE_LONG_LONG_INT.
33310         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
33311         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
33312         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
33313         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
33314
33315         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
33316         on stdbool.
33317
33318         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
33319         (gl_PREREQ_XSTRTOUL): Remove.
33320
33321         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
33322
33323         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
33324         mode.
33325
33326 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33327
33328         Add and change modules to make it easier for coreutils to use
33329         gnulib-tool.
33330         * modules/backupfile (Files): Remove m4/d-ino.m4.
33331         (Depends-on): Add d-ino.
33332         * modules/cycle-check (Depends-on): Add stdint.
33333         (lib_SOURCES): Add cycle-check.h.
33334         * modules/d-ino: New module.
33335         * modules/d-type: New module.
33336         * modules/error (Files): Remove m4/strerror_r.m4.
33337         * modules/filemode (Files): Add m4/st_dm_mode.m4.
33338         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
33339         m4/inttypes_h.m4, m4/uintmax_t.m4.
33340         (Depends-on): Add stdint.
33341         (lib_SOURCES): Add fsusage.h.
33342         * modules/getcwd (Files): Remove d-ino.m4.
33343         (Depends-on): Add d-ino.
33344         * modules/getndelim2 (Depends-on): Add stdint.
33345         * modules/glob (Files): Remove m4/d-type.m4.
33346         (Depends-on): Add d-type.
33347         * modules/host-os: New module.
33348         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
33349         m4/inttypes_h.m4, m4/uintmax_t.m4.
33350         * Depends-on: Add stdint.
33351         (lib_SOURCES): Add human.h.
33352         * modules/inttostr (Files): Remove m4/intmax_t.m4,
33353         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
33354         m4/uintmax_t.m4, m4/ulonglong.m4.
33355         (Depends-on): Add stdint.
33356         (EXTRA_DIST): Add inttostr.h.
33357         * modules/lchmod: New module.
33358         * modules/link-follow: New module.
33359         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
33360         (Depends-on): Add lchmod.
33361         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
33362         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
33363         (Depends-on): Add stdint.
33364         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
33365         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
33366         (Depends-on): Add stdint.
33367         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
33368         * modules/perl: New module.
33369         * modules/regex (Depends-on): Add stdint.
33370         * modules/rmdir-errno: New module.
33371         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
33372         m4/intmax_t.m4.
33373         (Depends-on): Add stdint.
33374         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
33375         m4/uintmax_t.m4.
33376         (Depends-on): Add stdint.
33377         * modules/unlink-busy: New module.
33378         * modules/utimecmp (Depends-on): Add stdint.
33379         * modules/uptime: New module.
33380         * modules/winsz-ioctl: New module.
33381         * modules/winsz-termios: New module.
33382         * modules/xnanosleep (Depends-on): Add nanosleep.
33383         * modules/ullong_max: Remove.
33384         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
33385         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
33386         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
33387         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
33388         (Depends-on): Add inttypes.
33389         (lib_SOURCES): Add xstrtol.h.
33390         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
33391         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
33392         * MODULES.html.sh: Move 'assert' into the assert section.
33393         Move 'dummy' into the linking section.
33394         Remove ullong_max.
33395         Add section for compatibility checks for POSIX:2001 functions,
33396         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
33397         winsz-ioctl, and winsz-termios into it.
33398         Add lchmod.
33399         Add top-level Misc section and put host-os, perl, and uptime
33400         into it.
33401
33402 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
33403
33404         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
33405         now assume the stdint module.  Do not include inttypes.h.
33406         * lib/fsusage.h: Likewise.
33407         * lib/getndelim2.c: Likewise.
33408         * lib/human.h: Likewise.
33409         * lib/inttostr.h: Likewise.
33410         * lib/obstack.c: Likewise.
33411         * lib/regex_internal.h: Likewise.
33412         * lib/tempname.c: Likewise.
33413         * lib/utimecmp.c: Likewise.
33414         * lib/xstrtol.h: Likewise.
33415
33416         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
33417
33418         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
33419         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
33420         * lib/xtime.h: Likewise.
33421
33422 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
33423
33424         * modules/openat (Files): Add lib/fchmodat.c.
33425         Fixes problem reported by Jay Youngman.
33426
33427 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
33428
33429         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
33430         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
33431
33432 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
33433             Bruno Haible  <bruno@clisp.org>
33434
33435         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
33436         and is a script that invokes bison. Tighten the code. Add comments.
33437
33438 2006-08-18  Jim Meyering  <jim@meyering.net>
33439
33440         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
33441         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
33442         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
33443         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
33444
33445 2006-08-18  Bruno Haible  <bruno@clisp.org>
33446
33447         * modules/bison-i18n: New file.
33448         * MODULES.html.sh (Internationalization functions): Add it.
33449
33450 2006-08-18  Bruno Haible  <bruno@clisp.org>
33451
33452         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
33453         sys/statvfs.h. When getmntinfo was found, check its declaration and
33454         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
33455
33456 2006-08-18  Bruno Haible  <bruno@clisp.org>
33457
33458         * m4/bison-i18n.m4: New file, from bison.
33459
33460 2006-08-18  Bruno Haible  <bruno@clisp.org>
33461
33462         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
33463         (ME_DUMMY): Treat "kernfs" as a dummy.
33464         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
33465
33466 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
33467
33468         Update from coreutils.
33469
33470         2006-08-15  Jim Meyering  <jim@meyering.net>
33471
33472         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
33473
33474         2006-01-17  Jim Meyering  <jim@meyering.net>
33475
33476         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
33477
33478         2006-01-11  Jim Meyering  <jim@meyering.net>
33479
33480         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
33481         Check for the lchmod function.
33482
33483 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
33484
33485         Update from coreutils.
33486
33487         * lib/__fpending.h: Add copyright notice.
33488         * lib/fprintftime.h: Likewise.
33489         * lib/savedir.c: Use (C) in copyright notice.
33490         * lib/savedir.h: Likewise.
33491
33492         2006-08-15  Jim Meyering  <jim@meyering.net>
33493
33494         * lib/at-func.c: New file, with the logic of all emulated at-functions.
33495         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
33496         in support of the EXPECTED_ERRNO macro.
33497         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
33498         definitions.  Instead, define the appropriate symbols and include
33499         "at-func.c".
33500         * lib/mkdirat.c (mkdirat): Likewise.
33501         * lib/fchmodat.c (fchmodat): Likewise.
33502         (ENOSYS): Remove definition.
33503         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
33504         it.  Don't include "unistd--.h" -- it wasn't ever used.
33505
33506         2006-01-17  Jim Meyering  <jim@meyering.net>
33507
33508         Rewrite fts.c not to change the current working directory,
33509         by using openat, fstatat, fdopendir, etc..
33510
33511         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
33512         (HAVE_OPENAT_SUPPORT): Define.
33513         [_LIBC] (fchdir): Don't undef or define; no longer used.
33514         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
33515         Now, this `function' always succeeds, and consumes its file descriptor
33516         parameter -- so callers must not close such FDs.  Update callers.
33517         (diropen_fd, opendirat, cwd_advance_fd): New functions.
33518         (diropen): Add parameter, SP.  Adjust all callers.
33519         Implement using diropen_fd, rather than open.
33520         (fts_open): Initialize new member, fts_cwd_fd.
33521         Remove fts_rft-setting code.
33522         (fts_close): Close fts_cwd_fd, if necessary.
33523         (__opendir2): Define in terms of opendir or opendirat,
33524         depending on whether the FST_NOCHDIR flag is set.
33525         (fts_build): Since fts_safe_changedir consumes its FD, and since
33526         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
33527         and close the dup'd file descriptor upon failure.
33528         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
33529         (fts_safe_changedir): Tweak semantics to reflect that this function
33530         now calls cwd_advance_fd and hence consumes its FD argument.
33531         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
33532         [struct FTS] (fts_rft): Remove now-unused member.
33533         [struct FTS] (fts_cycle.state): Improve comment.
33534
33535         * lib/openat.c (openat_needs_fchdir): New function.
33536         * lib/openat.h (openat_needs_fchdir): Declare it.
33537
33538 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
33539
33540         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
33541         Problem and fix reported by Pádraig Brady in
33542         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
33543
33544 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
33545
33546         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
33547
33548 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
33549
33550         * lib/memcoll.c (memcoll): Optimize for the common case where the
33551         arguments are bytewise equal.
33552
33553 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
33554
33555         * doc/regexprops-generic.texi: Add a copyright notice.
33556
33557 2006-08-15  Bruno Haible  <bruno@clisp.org>
33558
33559         * modules/tmpdir (License): Change to LGPL.
33560
33561 2006-08-15  Bruno Haible  <bruno@clisp.org>
33562
33563         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
33564         module.
33565
33566 2006-08-14  Simon Josefsson  <jas@extundo.com>
33567
33568         * config/srclist.txt: Add gnupload.
33569
33570 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
33571
33572         Change copyright notice from LGPL 2 to GPL 2, since that's the
33573         standard form used in the gnulib repository.
33574         * tests/test-lock.c: Likewise.
33575         * tests/test-stdint.c: Likewise.
33576         * tests/test-tls.c: Likewise.
33577
33578         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
33579         prelude-manager.  User shorter URLs for GNU projects, without '?'.
33580         Add copyright notice.
33581
33582         * check-module: Add copyright notice.  Output a copyright
33583         notice if "--version" is specified.
33584         * modules/COPYING: New file.
33585         * tests/test-getaddrinfo.c: Add copyright notice.
33586         * tests/test-verify.c: Likewise.
33587
33588 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
33589
33590         Change copyright notice from LGPL 2 to GPL 2, since that's the
33591         standard form used in the gnulib repository.
33592         * lib/lock.c: LGPL -> GPL.
33593         * lib/lock.h: Likewise.
33594         * lib/strnlen1.c: Likewise.
33595         * lib/strnlen1.h: Likewise.
33596         * lib/tls.c: Likewise.
33597         * lib/tls.h: Likewise.
33598         * lib/tmpdir.c: Likewise.
33599
33600         * lib/TODO: Remove; this belongs only in coreutils.
33601
33602 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
33603
33604         Add copyright notices to long-enough files that lack them, since
33605         otherwise the files aren't clearly free.  Use the same notice that
33606         getdate.texi already uses.
33607         * doc/alloca-opt.texi: Add copyright notice.
33608         * doc/alloca.texi: Likewise.
33609         * doc/ctime.texi: Likewise.
33610         * doc/functions.texi: Likewise.
33611         * doc/gcd.texi: Likewise.
33612         * doc/gnulib-tool.texi: Likewise.
33613         * doc/inet_ntoa.texi: Likewise.
33614         * doc/visibility.texi: Likewise.
33615
33616         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
33617         * doc/quote.texi: Add copyright notice.
33618
33619         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
33620         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
33621         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
33622         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
33623         is now obsolete, and give a pointer to the Sun list.
33624         Add copyright notice.
33625
33626 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
33627
33628         * config/srclistvars.sh: Add copyright notice.
33629
33630 2006-08-14  Eric Blake  <ebb9@byu.net>
33631
33632         Import the following change from libc:
33633
33634         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
33635
33636         Upstream bug 2997.
33637         * lib/misc/error.c: Add space between program name and message if file
33638         name is missing.
33639
33640 2006-08-12  Karl Berry  <karl@gnu.org>
33641
33642         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
33643         remove, these originate in gnulib now.
33644
33645 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33646
33647         * doc/Makefile (standards.info standards.html standards.dvi):
33648         Also depend on make-stds.texi.
33649
33650 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
33651
33652         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
33653         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
33654
33655         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
33656         in wchar_t.  Problem reported by Eric Blake.
33657
33658         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
33659         LEN is smaller than SIZE.  Suggested by Bruno Haible.
33660         Also, help the compiler to keep LEN in a register.
33661
33662 2006-08-11  Eric Blake  <ebb9@byu.net>
33663
33664         * users.txt: Sort.  Add tar.
33665
33666 2006-08-11  Bruno Haible  <bruno@clisp.org>
33667
33668         * users.txt: New file.
33669
33670 2006-08-11  Bruno Haible  <bruno@clisp.org>
33671
33672         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
33673         before <wchar.h>. Needed for OSF/1 and BSD/OS.
33674
33675 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
33676
33677         * modules/snprintf (Depends-on): Remove minmax.
33678         (Maintainer): Add self and Bruno.
33679
33680 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
33681
33682         * lib/.cppi-disable: Add snprintf.h, socket_.h.
33683         * lib/snprintf.c: Include <errno.h> and <limits.h>.
33684         (EOVERFLOW): Define if the system does not.
33685         Do not include "minmax.h"; it wasn't used.
33686         (snprintf): Don't assume size_t promotes to an unsigned type.
33687         Fix bug when generated string was too long for the buffer: the
33688         buffer's contents are supposed to be the initial prefix of the
33689         output.  Don't assume vasnprintf returns EOVERFLOW if the size
33690         exceeds INT_MAX; do the check ourselves.
33691
33692         Import the following changes from libc:
33693
33694         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
33695
33696         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
33697         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
33698         set wc to the byte which couldn't be converted.
33699         (re_string_reconstruct): Don't clear valid_raw_len before calling
33700         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
33701         tip_context using re_string_context_at.
33702
33703         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
33704
33705         * lib/posix/regex.h: g++ still cannot handled [restrict].
33706
33707         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
33708
33709         * lib/posix/regex.h: Remove special handling for VMS.
33710
33711 2006-08-10  Jim Meyering  <jim@meyering.net>
33712
33713         * modules/same-inode: New module.
33714         * modules/dev-ino: New module.
33715         * modules/cycle-check: Depend on these modules, rather than simply
33716         including their .h files.
33717         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
33718         required via m4/cycle-check.m4.
33719         * modules/same: Depend on new same-inode module, rather than
33720         including same-inode.h.
33721         * modules/chdir-safer: New file.
33722
33723         * modules/chown (Depends-on): Add stat-macros.
33724
33725 2006-08-10  Jim Meyering  <jim@meyering.net>
33726
33727         * m4/cycle-check.m4: New file.
33728         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
33729         * m4/dev-ino.m4, m4/same-inode.m4: New files.
33730
33731 2006-08-10  Eric Blake  <ebb9@byu.net>
33732
33733         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
33734         in from original proposal.
33735
33736 2006-08-10  Eric Blake  <ebb9@byu.net>
33737         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
33738
33739         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
33740         namespace.
33741
33742 2006-08-10  Bruno Haible  <bruno@clisp.org>
33743
33744         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
33745         as well.
33746
33747 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
33748
33749         Sync from coreutils.
33750
33751         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
33752
33753         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
33754         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
33755
33756 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
33757
33758         * modules/restrict: Remove; no longer needed now that we assume
33759         Autoconf 2.59 or later.
33760         * MODULES.html.sh: Remove 'restrict'.
33761         * modules/argp (Depends-on): Remove 'restrict'.
33762         * modules/base64 (Depends-on): Likewise.
33763         * modules/gc (Depends-on): Likewise.
33764         * modules/getaddrinfo (Depends-on): Likewise.
33765         * modules/glob (Depends-on): Likewise.
33766         * modules/inet_ntop (Depends-on): Likewise.
33767         * modules/inet_pton (Depends-on): Likewise.
33768         * modules/memxor (Depends-on): Likewise.
33769         * modules/regex (Depends-on): Likewise.
33770         * modules/strtok_r (Depends-on): Likewise.
33771         * modules/time_r (Depends-on): Likewise.
33772
33773 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
33774
33775         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
33776         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
33777         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
33778         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
33779         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
33780         * m4/memxor.m4 (gl_MEMXOR): Likewise.
33781         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
33782         gl_C_RESTRICT replaced by AC_C_RESTRICT.
33783
33784         Merge from coreutils.
33785         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
33786         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
33787         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
33788         * m4/time_r.m4 (gl_TIME_R): Likewise.
33789
33790 2006-08-09  Karl Berry  <karl@gnu.org>
33791
33792         * config/srclist.txt: no more gettext-tools, per Bruno.
33793
33794 2006-08-08  Eric Blake  <ebb9@byu.net>
33795
33796         * modules/verror: New module.
33797         * MODULES.html.sh: Document it.
33798
33799 2006-08-08  Eric Blake  <ebb9@byu.net>
33800
33801         * lib/verror.h, lib/verror.c: New files.
33802
33803 2006-08-08  Eric Blake  <ebb9@byu.net>
33804
33805         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
33806         verror_at_line output complies with GNU Coding Standards even when
33807         file is NULL.
33808
33809 2006-08-07  Bruno Haible  <bruno@clisp.org>
33810
33811         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
33812         versions of AIX.
33813         Reported by Ralf Wildenhues.
33814
33815 2006-08-07  Bruno Haible  <bruno@clisp.org>
33816
33817         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
33818         in an AC_DEFUN. Needed so that the autoconf snippets can use
33819         AC_REQUIRE.
33820
33821 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33822
33823         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
33824         Initialize pkgdata_DATA.
33825         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
33826         overriding it.
33827
33828 2006-08-06  Eric Blake  <ebb9@byu.net>
33829
33830         * lib/error.h: Fold in some upstream changes from glibc.
33831         * lib/error.c: Likewise.
33832
33833 2006-08-04  Bruno Haible  <bruno@clisp.org>
33834
33835         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
33836         Make the mostlyclean-local rule depend on mostlyclean-generic.
33837         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
33838
33839 2006-07-31  Bruno Haible  <bruno@clisp.org>
33840
33841         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
33842         <stdlib.h>, <string.h>.
33843
33844 2006-07-30  Bruno Haible  <bruno@clisp.org>
33845
33846         * modules/readlink (License): Change to LGPL.
33847
33848 2006-07-30  Bruno Haible  <bruno@clisp.org>
33849
33850         * modules/javaversion (Makefile.am): Distribute javaversion.java and
33851         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
33852         set PKGDATADIR to point to it.
33853
33854 2006-07-30  Bruno Haible  <bruno@clisp.org>
33855
33856         * modules/csharpexec (configure.ac): Comment out macro invocation.
33857         * modules/javaexec (configure.ac): Likewise.
33858         * modules/javacomp-script (configure.ac): Likewise.
33859
33860         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
33861
33862 2006-07-30  Bruno Haible  <bruno@clisp.org>
33863
33864         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
33865         linked-list.
33866
33867 2006-07-30  Bruno Haible  <bruno@clisp.org>
33868
33869         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
33870
33871 2006-07-30  Bruno Haible  <bruno@clisp.org>
33872
33873         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
33874         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
33875         get removed.
33876
33877 2006-07-29  Bruno Haible  <bruno@clisp.org>
33878
33879         Make it possible for gnulib-tool to work with locally modified or
33880         augmented gnulib repositories.
33881         * gnulib-tool (func_usage): Document --local-dir option.
33882         (local_gnulib_dir): New variable.
33883         Handle --local-dir option.
33884         (func_lookup_file): New function.
33885         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
33886         (func_get_description, func_get_filelist, func_get_description,
33887         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
33888         func_get_automake_snippet, func_get_include_directive,
33889         func_get_license, func_get_maintainer): Use func_lookup_file.
33890         (func_import, func_create_testdir): Use func_lookup_file.
33891
33892 2006-07-29  Bruno Haible  <bruno@clisp.org>
33893
33894         * modules/setenv (Depends-on): Add unistd.
33895
33896 2006-07-29  Bruno Haible  <bruno@clisp.org>
33897
33898         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
33899
33900 2006-07-29  Bruno Haible  <bruno@clisp.org>
33901
33902         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
33903
33904 2006-07-29  Bruno Haible  <bruno@clisp.org>
33905
33906         * gnulib-tool (import, update): If there is no Makefile.am, look at
33907         aclocal.m4, instead of bailing out.
33908
33909 2006-07-29  Bruno Haible  <bruno@clisp.org>
33910
33911         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
33912         Categorize the options by when they are useful.
33913
33914 2006-07-29  Bruno Haible  <bruno@clisp.org>
33915
33916         * gnulib-tool (func_usage): Document option --no-libtool.
33917         Handle option --no-libtool.
33918         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
33919         for changed semantics of $libtool variable.
33920         (func_import): Likewise. If libtool is not used, show this through
33921         an option --no-libtool.
33922         (func_create_testdir): Update.
33923
33924 2006-07-29  Bruno Haible  <bruno@clisp.org>
33925
33926         * gnulib-tool (func_import): Extend error message about missing
33927         --doc-base.
33928
33929 2006-07-29  Bruno Haible  <bruno@clisp.org>
33930
33931         * gnulib-tool (func_import): Don't create the $docbase directory if
33932         there is no file to store there.
33933
33934 2006-07-29  Bruno Haible  <bruno@clisp.org>
33935
33936         * gnulib-tool (autoconf_minversion): If a --dir option is given and
33937         relevant, look for configure.ac there, not in the current directory.
33938         Also use a simple search for AC_PREREQ, not "autoconf --trace".
33939
33940 2006-07-29  Bruno Haible  <bruno@clisp.org>
33941
33942         * gnulib-tool (SORT): New variable.
33943         (func_usage): Undocument --assume-autoconf option.
33944         Remove --assume-autoconf option handling.
33945         (autoconf_minversion): Determine from the contents of configure.ac.
33946         (func_import): Remove autoconf_minversion handling.
33947         Suggested by Eric Blake.
33948
33949 2006-07-29  Bruno Haible  <bruno@clisp.org>
33950
33951         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
33952
33953 2006-07-29  Bruno Haible  <bruno@clisp.org>
33954
33955         * config/srclist.txt (*setenv.[ch]): Remove rules.
33956
33957 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
33958
33959         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
33960
33961 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
33962
33963         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
33964         arpa/inet.h.
33965
33966 2006-07-28  Simon Josefsson  <jas@extundo.com>
33967
33968         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
33969         * modules/inet_pton (Depends-on): Likewise.
33970
33971 2006-07-28  Simon Josefsson  <jas@extundo.com>
33972
33973         * m4/netinet_in_h.m4: New file.
33974
33975 2006-07-28  Simon Josefsson  <jas@extundo.com>
33976
33977         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
33978         #include's.
33979
33980 2006-07-28  Simon Josefsson  <jas@extundo.com>
33981
33982         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
33983         #include's.
33984
33985 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
33986
33987         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
33988         setgid on directories only if they set these bits.
33989         * lib/modechange.h: Remove obsolete comment about masks.
33990
33991 2006-07-28  Eric Blake  <ebb9@byu.net>
33992
33993         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
33994         macro expansion.
33995
33996 2006-07-28  Bruno Haible  <bruno@clisp.org>
33997
33998         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
33999
34000 2006-07-28  Bruno Haible  <bruno@clisp.org>
34001
34002         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
34003
34004 2006-07-28  Bruno Haible  <bruno@clisp.org>
34005
34006         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
34007         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
34008         Define fallbacks.
34009         Avoids link error on FreeBSD 4.x.
34010         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
34011
34012         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
34013         encoding.
34014         * lib/mbswidth.c (iswcntrl): Likewise.
34015
34016 2006-07-27  Bruno Haible  <bruno@clisp.org>
34017
34018         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
34019         test.
34020
34021 2006-07-27  Bruno Haible  <bruno@clisp.org>
34022
34023         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
34024         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
34025         defined.
34026
34027 2006-07-26  Eric Blake  <ebb9@byu.net>
34028
34029         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
34030
34031 2006-07-26  Eric Blake  <ebb9@byu.net>
34032
34033         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
34034         like mingw that lack mkstemp.
34035         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
34036         avoid compilation warning on mingw.
34037
34038 2006-07-26  Bruno Haible  <bruno@clisp.org>
34039
34040         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
34041         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
34042         INT_FAST*_MIN, INTPTR_MIN.
34043
34044 2006-07-25  Bruno Haible  <bruno@clisp.org>
34045
34046         * modules/version-etc (Depends-on): Add stdarg.
34047
34048 2006-07-25  Bruno Haible  <bruno@clisp.org>
34049
34050         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
34051         complex commands.
34052
34053 2006-07-25  Bruno Haible  <bruno@clisp.org>
34054
34055         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
34056         defined in <stdarg.h> or config.h.
34057
34058 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
34059
34060         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
34061         (gl_STDIO_SAFER): Remove.
34062
34063 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
34064
34065         * MODULES.html.sh (File stream based Input/Output):
34066         Add fopen-safer, tmpfile-safer; remove stdio-safer.
34067         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
34068         * modules/fopen-safer, modules/tmpfile-safer: New files.
34069         * modules/stdio-safer: Remove.
34070
34071 2006-07-24  Bruno Haible  <bruno@clisp.org>
34072
34073         * modules/tmpdir: New file.
34074         * MODULES.html.sh (File system functions): Add it.
34075
34076 2006-07-24  Bruno Haible  <bruno@clisp.org>
34077
34078         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
34079         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
34080
34081 2006-07-24  Bruno Haible  <bruno@clisp.org>
34082
34083         * modules/clean-temp: New file.
34084
34085 2006-07-24  Bruno Haible  <bruno@clisp.org>
34086
34087         * m4/tmpdir.m4: New file, from GNU gettext.
34088
34089 2006-07-24  Bruno Haible  <bruno@clisp.org>
34090
34091         * lib/tmpdir.h: New file, from GNU gettext.
34092         * lib/tmpdir.c: New file, from GNU gettext.
34093
34094 2006-07-24  Bruno Haible  <bruno@clisp.org>
34095
34096         * lib/clean-temp.h: New file, from GNU gettext.
34097         * lib/clean-temp.c: New file, from GNU gettext.
34098
34099 2006-07-23  Eric Blake  <ebb9@byu.net>
34100
34101         * modules/stdio-safer (Files): Add tmpfile-safer.c.
34102         (Depends-on): Add binary-io.
34103
34104 2006-07-23  Eric Blake  <ebb9@byu.net>
34105
34106         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
34107
34108 2006-07-23  Eric Blake  <ebb9@byu.net>
34109
34110         * lib/tmpfile-safer.c: New file.
34111         * lib/stdio-safer.h (fopen_safer): Add prototype.
34112         * lib/stdio--.h (tmpfile): Make safer.
34113
34114 2006-07-23  Bruno Haible  <bruno@clisp.org>
34115
34116         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
34117         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
34118         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
34119         gl_linked_remove_at): Use it.
34120
34121 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
34122         and Simon Josefsson <jas@extundo.com>
34123
34124         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
34125
34126         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
34127
34128 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
34129
34130         * modules/close-stream: New file.
34131         * modules/closeout (Description): Make it clear that it exits
34132         with a diagnostic on error.
34133         (Depends-on): Add close-stream.  Remove fpending, stdbool.
34134         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
34135
34136 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
34137
34138         * m4/close-stream.m4: New file.
34139
34140 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
34141
34142         * lib/close-stream.c, lib/close-stream.h: New files.
34143
34144 2006-07-22  Bruno Haible  <bruno@clisp.org>
34145
34146         Merge from GNU gettext 0.15.
34147
34148         2006-05-01  Bruno Haible  <bruno@clisp.org>
34149
34150                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
34151
34152         2006-07-22  Bruno Haible  <bruno@clisp.org>
34153
34154                 * modules/javaversion: New file.
34155                 * MODULES.html.sh (Java): Add javaversion.
34156
34157         2006-03-12  Bruno Haible  <bruno@clisp.org>
34158
34159                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
34160
34161         2005-12-04  Bruno Haible  <bruno@clisp.org>
34162
34163                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
34164                 (untested).
34165
34166         2006-06-21  Bruno Haible  <bruno@clisp.org>
34167
34168                 Avoid warnings from recent versions of mcs.
34169                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
34170                 -o, -L, -r any more. Use options documented since mcs-1.0
34171                 instead. Similarly for -g.
34172
34173         2005-12-04  Bruno Haible  <bruno@clisp.org>
34174
34175                 * build-aux/csharpcomp.sh.in: Suffix for resources is
34176                 .resources, not .resource.
34177
34178         2005-07-09  Bruno Haible  <bruno@clisp.org>
34179
34180                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
34181                 add a .dll suffix.
34182                 Reported by Mark Junker <mjscod@gmx.de>.
34183
34184         2006-07-22  Bruno Haible  <bruno@clisp.org>
34185
34186                 * modules/gettext: Upgrade to gettext-0.15.
34187                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
34188                 m4/visibility.m4.
34189                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
34190
34191 2006-07-22  Bruno Haible  <bruno@clisp.org>
34192
34193         Merge from GNU gettext 0.15.
34194
34195         2006-03-25  Bruno Haible  <bruno@clisp.org>
34196
34197                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
34198
34199         2006-07-21  Bruno Haible  <bruno@clisp.org>
34200
34201                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
34202                 "1.1".
34203
34204         2006-05-09  Bruno Haible  <bruno@clisp.org>
34205
34206                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
34207                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
34208                 for the conftestver execution.
34209
34210         2006-05-01  Bruno Haible  <bruno@clisp.org>
34211
34212                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
34213                 optional target-version argument. Verify that the compiler
34214                 groks source of the specified source-version, or add -source
34215                 option as necessary. Verify that the compiler produces
34216                 bytecode in the specified target-version, or add -target and
34217                 -source options as necessary. Make the result of the test
34218                 available as variable CONF_JAVAC. Also log error output in
34219                 config.log.
34220
34221         2006-03-11  Bruno Haible  <bruno@clisp.org>
34222
34223                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
34224
34225         2006-05-09  Bruno Haible  <bruno@clisp.org>
34226
34227                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
34228                 CLASSPATH_SEPARATOR to a semicolon.
34229
34230         2006-03-12  Bruno Haible  <bruno@clisp.org>
34231
34232                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
34233                 available as variable CONF_JAVA, for subsequent autoconf
34234                 tests. Also log error output in config.log.
34235
34236         2006-07-19  Bruno Haible  <bruno@clisp.org>
34237
34238                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
34239                 that getline works on glibc2 systems. Needed to avoid trouble
34240                 in relocatable.c.
34241                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
34242
34243         2005-12-04  Bruno Haible  <bruno@clisp.org>
34244
34245                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
34246                 launcher (untested).
34247
34248         2005-12-04  Bruno Haible  <bruno@clisp.org>
34249
34250                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
34251
34252         2006-07-22  Bruno Haible  <bruno@clisp.org>
34253
34254                 * gettext.m4: Update from GNU gettext-0.15.
34255                 * nls.m4: Likewise.
34256                 * po.m4: Likewise.
34257                 * inttypes-pri.m4: Likewise.
34258                 * inttypes-h.m4: Renamed from inttypes.m4.
34259                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
34260
34261 2006-07-22  Bruno Haible  <bruno@clisp.org>
34262
34263         Merge from GNU gettext 0.15.
34264
34265         2005-07-05  Bruno Haible  <bruno@clisp.org>
34266
34267                 * printf-args.c (printf_fetchargs): Work around broken
34268                 definition of wint_t on mingw.
34269
34270         2005-02-12  Bruno Haible  <bruno@clisp.org>
34271
34272                 * xallocsa.h: Add extern "C" for C++.
34273
34274         2006-05-17  Bruno Haible  <bruno@clisp.org>
34275
34276                 Cygwin portability.
34277                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
34278
34279         2006-04-30  Bruno Haible  <bruno@clisp.org>
34280
34281                 * progreloc.c: Include <mach-o/dyld.h> if available.
34282                 (find_executable): Use _NSGetExecutablePath when possible.
34283
34284         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
34285
34286                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
34287                 function.
34288
34289         2005-12-29  Bruno Haible  <bruno@clisp.org>
34290
34291                 * progreloc.c (set_program_name_and_installdir): Fix
34292                 compilation error.
34293
34294         2005-12-04  Bruno Haible  <bruno@clisp.org>
34295
34296                 Cygwin portability.
34297                 * progreloc.c: Include <windows.h> also on Cygwin.
34298                 (find_executable): Add support for Cygwin.
34299                 (set_program_name_and_installdir): Handle also platforms with
34300                 nonempty EXEEXT.
34301
34302         2006-07-11  Bruno Haible  <bruno@clisp.org>
34303
34304                 * javacomp.c: Fix a comment.
34305                 Reported by Jim Meyering.
34306
34307         2006-04-30  Bruno Haible  <bruno@clisp.org>
34308
34309                 * javacomp.h (compile_java_class): Add source_version,
34310                 target_version arguments.
34311                 * javacomp.c: Rewritten to choose only a compiler that
34312                 respects the specified source_version and target_version.
34313
34314         2006-06-27  Bruno Haible  <bruno@clisp.org>
34315
34316                 Assume correct S_ISDIR macro.
34317                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
34318
34319         2006-07-22  Bruno Haible  <bruno@clisp.org>
34320
34321                 * javaversion.h: New file, from GNU gettext.
34322                 * javaversion.c: New file, from GNU gettext.
34323                 * javaversion.java: New file, from GNU gettext.
34324                 * javaversion.class: New file, from GNU gettext.
34325
34326         2006-05-17  Bruno Haible  <bruno@clisp.org>
34327
34328                 Cygwin portability.
34329                 * javaexec.c (execute_java_class): Test for jview program
34330                 also on Cygwin.
34331
34332         2006-04-09  Bruno Haible  <bruno@clisp.org>
34333
34334                 * fatal-signal.c: Don't include string.h.
34335                 (at_fatal_signal): Use a copying loop instead of memcpy.
34336
34337         2005-12-04  Bruno Haible  <bruno@clisp.org>
34338
34339                 * csharpexec.c: Add support for 'clix' launcher (untested).
34340                 (execute_csharp_using_sscli): New function.
34341                 (execute_csharp_program): Call it.
34342
34343         2006-06-21  Bruno Haible  <bruno@clisp.org>
34344
34345                 Avoid warnings from recent versions of mcs.
34346                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
34347                 -o, -L, -r any more. Use options documented since mcs-1.0
34348                 instead. Similarly for -g.
34349
34350         2005-07-09  Bruno Haible  <bruno@clisp.org>
34351
34352                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
34353                 add a .dll suffix.
34354                 Reported by Mark Junker <mjscod@gmx.de>.
34355
34356         2006-06-17  Bruno Haible  <bruno@clisp.org>
34357
34358                 * config.charset: Update for NetBSD 3.0.
34359
34360         2006-05-17  Bruno Haible  <bruno@clisp.org>
34361
34362                 Cygwin portability.
34363                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
34364
34365         2006-05-16  Bruno Haible  <bruno@clisp.org>
34366
34367                 * localcharset.c [CYGWIN]: Include <windows.h>.
34368                 (get_charset_aliases): For Cygwin, return the same CPxxx
34369                 aliases list as under WIN32.
34370                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
34371                 the environment variables. Fall back to GetACP().
34372
34373         2006-04-05  Bruno Haible  <bruno@clisp.org>
34374
34375                 * config.charset: Update Juan Manuel Guerrero's address.
34376
34377         2005-02-12  Bruno Haible  <bruno@clisp.org>
34378
34379                 * allocsa.h: Add extern "C" for C++.
34380
34381         2005-02-10  Bruno Haible  <bruno@clisp.org>
34382
34383                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
34384                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
34385
34386         2006-07-22  Bruno Haible  <bruno@clisp.org>
34387
34388                 * gettext.h: Update to GNU gettext-0.15.
34389
34390 2006-07-22  Bruno Haible  <bruno@clisp.org>
34391
34392         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
34393         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
34394         lib-prefix.m4, longdouble.m4, ssize_t.m4.
34395
34396 2006-07-21  Eric Blake  <ebb9@byu.net>
34397
34398         * modules/stdlib-safer: New file.
34399         * MODULES.html.sh (File stream based Input/Output): Add
34400         stdlib-safer.
34401
34402 2006-07-21  Eric Blake  <ebb9@byu.net>
34403
34404         * lib/stdlib-safer.h: New file from coreutils, required by
34405         stdlib--.h.
34406
34407 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
34408
34409         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
34410
34411 2006-07-20  Bruno Haible  <bruno@clisp.org>
34412
34413         * gnulib-tool: Recognize new option --assume-autoconf.
34414         (autoconf_minversion): New variable.
34415         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
34416
34417 2006-07-20  Bruno Haible  <bruno@clisp.org>
34418
34419         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
34420
34421 2006-07-19  Derek R. Price  <derek@ximbiot.com>
34422
34423         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
34424         Reindent and repaginate.
34425
34426 2006-07-19  Derek Price  <derek@ximbiot.com>
34427
34428         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
34429         Correct grammar.
34430
34431 2006-07-17  Bruno Haible  <bruno@clisp.org>
34432
34433         * modules/list: New file.
34434         * modules/array-list: New file.
34435         * modules/carray-list, modules/carray-list-tests: New files.
34436         * modules/linked-list, modules/linked-list-tests: New files.
34437         * modules/avltree-list, modules/avltree-list-tests: New files.
34438         * modules/rbtree-list, modules/rbtree-list-tests: New files.
34439         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
34440         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
34441         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
34442         * modules/oset: New file.
34443         * modules/array-oset: New file.
34444         * modules/avltree-oset, modules/avltree-oset-tests: New files.
34445         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
34446         * tests/test-carray_list.c: New file.
34447         * tests/test-linked_list.c: New file.
34448         * tests/test-avltree_list.c: New file.
34449         * tests/test-rbtree_list.c: New file.
34450         * tests/test-linkedhash_list.c: New file.
34451         * tests/test-avltreehash_list.c: New file.
34452         * tests/test-rbtreehash_list.c: New file.
34453         * tests/test-avltree_oset.c: New file.
34454         * tests/test-rbtree_oset.c: New file.
34455         * MODULES.html.sh (Container data structures): New section.
34456
34457 2006-07-17  Bruno Haible  <bruno@clisp.org>
34458
34459         * m4/gl_list.m4: New file.
34460
34461 2006-07-17  Bruno Haible  <bruno@clisp.org>
34462
34463         * lib/gl_list.h: New file.
34464         * lib/gl_list.c: New file.
34465         * lib/gl_array_list.h: New file.
34466         * lib/gl_array_list.c: New file.
34467         * lib/gl_carray_list.h: New file.
34468         * lib/gl_carray_list.c: New file.
34469         * lib/gl_linked_list.h: New file.
34470         * lib/gl_linked_list.c: New file.
34471         * lib/gl_anylinked_list1.h: New file.
34472         * lib/gl_anylinked_list2.h: New file.
34473         * lib/gl_avltree_list.h: New file.
34474         * lib/gl_avltree_list.c: New file.
34475         * lib/gl_anyavltree_list1.h: New file.
34476         * lib/gl_anyavltree_list2.h: New file.
34477         * lib/gl_rbtree_list.h: New file.
34478         * lib/gl_rbtree_list.c: New file.
34479         * lib/gl_anyrbtree_list1.h: New file.
34480         * lib/gl_anyrbtree_list2.h: New file.
34481         * lib/gl_anytree_list1.h: New file.
34482         * lib/gl_anytree_list2.h: New file.
34483         * lib/gl_linkedhash_list.h: New file.
34484         * lib/gl_linkedhash_list.c: New file.
34485         * lib/gl_anyhash_list1.h: New file.
34486         * lib/gl_anyhash_list2.h: New file.
34487         * lib/gl_avltreehash_list.h: New file.
34488         * lib/gl_avltreehash_list.c: New file.
34489         * lib/gl_rbtreehash_list.h: New file.
34490         * lib/gl_rbtreehash_list.c: New file.
34491         * lib/gl_anytreehash_list1.h: New file.
34492         * lib/gl_anytreehash_list2.h: New file.
34493
34494         * lib/gl_oset.h: New file.
34495         * lib/gl_oset.c: New file.
34496         * lib/gl_array_oset.h: New file.
34497         * lib/gl_array_oset.c: New file.
34498         * lib/gl_avltree_oset.h: New file.
34499         * lib/gl_avltree_oset.c: New file.
34500         * lib/gl_rbtree_oset.h: New file.
34501         * lib/gl_rbtree_oset.c: New file.
34502         * lib/gl_anytree_oset.h: New file.
34503
34504 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
34505
34506         * m4/mkancesdirs.m4: New file.
34507         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
34508         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
34509         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
34510         it.
34511
34512 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
34513
34514         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
34515         * lib/mkancesdirs.h: New files.
34516         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
34517         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
34518         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
34519         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
34520         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
34521         callers changed.  Revamp internals significantly, by not
34522         attempting to create directories that are temporarily more
34523         permissive than the final results.  Do not attempt to use
34524         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
34525         This removes some race conditions, fixes some bugs, and simplifies
34526         things.  Use new dirchownmod function to do owner and mode changes.
34527         * lib/mkdir-p.h: Likewise.
34528         * lib/modechange.c (octal_to_mode): New function.
34529         (struct mode_change): New member mentioned.
34530         (make_node_op_equals): New arg mentioned.  All callers changed.
34531         (mode_compile): Keep track of which mode bits the user has explicitly
34532         mentioned.
34533         (mode_adjust): New arg DIR, so that we implement the X op correctly.
34534         New arg PMODE_BITS, to keep track of which mode bits the user
34535         mentioned; it treats S_ISUID and S_ISGID speciall.
34536         All callers changed.
34537         * lib/modechange.h: Likewise.
34538
34539 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
34540
34541         * MODULES.html.sh: Add mkancestors.
34542         * modules/mkancesdirs: New module.
34543         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
34544         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
34545         The chdir-safer and afs files are now orphans; I'll remove them
34546         unless someone speaks up.
34547         Add lib/dirchownmod.c, lib/dirchownmod.h.
34548         (Depends-on): Remove alloca, chown, save-cwd, dirname.
34549         Add lchown, mkancesdirs.
34550         (Maintainer): Add self.
34551
34552 2006-07-15  Karl Berry  <karl@gnu.org>
34553
34554         * gnulib-tool: help message wording/arrangement.
34555
34556 2006-07-14  Simon Josefsson  <jas@extundo.com>
34557
34558         * doc/gnulib.texi (Libtool and Windows): New section.
34559
34560 2006-07-12  Simon Josefsson  <jas@extundo.com>
34561
34562         * modules/gendocs (License): Fix license, approved by Karl.
34563
34564 2006-07-12  Eric Blake  <ebb9@byu.net>
34565
34566         * MODULES.html.sh: Add gendocs.
34567
34568 2006-07-11  Eric Blake  <ebb9@byu.net>
34569
34570         * modules/fdl: New module, to install doc/fdl.texi.
34571         * MODULES.html.sh: Add new section for documentation modules.
34572         * gnulib-tool: Avoid space-tab.
34573         (--doc-base): New option, to manage files from doc.
34574
34575 2006-07-11  Eric Blake  <ebb9@byu.net>
34576
34577         * m4/absolute-header.m4: Fix comments to match recent change.
34578
34579 2006-07-11  Eric Blake  <ebb9@byu.net>
34580
34581         * gnulib-tool: List --doc-base before --tests-base.
34582
34583 2006-07-11  Derek R. Price  <derek@ximbiot.com>
34584
34585         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
34586
34587 2006-07-11  Bruno Haible  <bruno@clisp.org>
34588
34589         * README: Mention where to put documentation.
34590
34591 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34592
34593         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
34594
34595 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
34596
34597         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
34598         to stdint.m4.
34599
34600 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
34601
34602         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
34603         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
34604         "no/such/file/stdint.h" when there is no such file, so that
34605         the resulting C code can be parsed by dodgy compilers.
34606         Problems reported by Bob Proulx.
34607
34608 2006-07-10  Derek R. Price  <derek@ximbiot.com>
34609
34610         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
34611         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
34612         macros into the GNU _D_EXACT_NAMLEN.
34613         * lib/savedir.c:  Likewise.
34614         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
34615
34616 2006-07-10  Derek R. Price  <derek@ximbiot.com>
34617         and Paul Eggert  <eggert@cs.ucla.edu>
34618
34619         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
34620         * m4/savedir.m4:
34621         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
34622         macros into the GNU _D_EXACT_NAMLEN.
34623
34624 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
34625
34626         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
34627         around the absolute name, to work around a problem with the HP-UX
34628         11.23 native C compiler, reported by Bob Proulx.
34629
34630 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
34631
34632         * doc/maintain.texi, make-stds.texi: Sync from
34633         <http://savannah.gnu.org/projects/gnustandards>.
34634
34635 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
34636
34637         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
34638
34639 2006-07-09  Jim Meyering  <jim@meyering.net>
34640
34641         * m4/glob.m4: Remove a doubled word in a comment.
34642
34643 2006-07-09  Jim Meyering  <jim@meyering.net>
34644
34645         * lib/argp-pv.c: Remove a doubled word in a comment.
34646         * lib/check-version.c (check_version): Likewise.
34647         * lib/javacomp.c (compile_java_class): Likewise.
34648
34649 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
34650
34651         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
34652         for the benefit of people using Autoconf 2.60.  If you want to
34653         support older Autoconf versions you can copy m4/onceonly_2_57.m4
34654         (or m4/onceonly.m4, if pre-2.57) manually.
34655
34656 2006-07-08  Jim Meyering  <jim@meyering.net>
34657
34658         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
34659         comment.
34660         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
34661         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
34662         comment.
34663
34664 2006-07-08  Jim Meyering  <jim@meyering.net>
34665
34666         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
34667
34668 2006-07-07  Simon Josefsson  <jas@extundo.com>
34669
34670         * tests/test-crc.c: Change expected crc value, the test vector
34671         were probably computed using the old broken crc.c?
34672
34673 2006-07-06  Simon Josefsson  <jas@extundo.com>
34674
34675         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
34676         now the canonical place for the M4 file).
34677
34678         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
34679         from the sys_socket dependency now.
34680
34681         * modules/inet_pton (Files): Ditto.
34682
34683         * modules/inet_ntop (Files): Ditto.
34684
34685 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
34686
34687         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
34688         not gl_PREREQ_GETUSERSHELL.
34689
34690 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34691
34692         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
34693         with only one argument, for Autoconf 2.60.
34694         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
34695         expand to nothing, so add a shell command to avoid syntax error.
34696         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
34697
34698 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34699
34700         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
34701
34702 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
34703
34704         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
34705         no longer needed.  Check for isblank decl.
34706         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
34707         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
34708         of existence.
34709
34710 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
34711
34712         * lib/getloadavg.c: Use __VMS, not VMS.
34713         * lib/getopt.c: Likewise.
34714         * lib/getpagesize.h: Likewise.
34715         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
34716         and probably does not work.
34717
34718 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
34719
34720         * lib/.cppi-disable: Add wcwidth.
34721         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
34722         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
34723         (ISGRAPH): Remove.  All uses changed to isgraph.
34724         (FOLD) [!defined _LIBC]: Remove special case.
34725         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
34726         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
34727         HAVE_ISBLANK.
34728         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
34729         case.
34730
34731 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
34732
34733         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
34734         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
34735         brackets.  Other minor changes to suppress some compiler
34736         warnings.
34737
34738 2006-07-06  Derek R. Price  <derek@ximbiot.com>
34739         and Paul Eggert  <eggert@cs.ucla.edu>
34740
34741         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
34742         of invoking obsolescent AC_HEADER_DIRENT macro.
34743         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
34744         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
34745         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
34746         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
34747         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
34748         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
34749         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
34750         * m4/readdir.m4: Remove; no longer needed.
34751
34752 2006-07-06  Derek R. Price  <derek@ximbiot.com>
34753         and Paul Eggert  <eggert@cs.ucla.edu>
34754
34755         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
34756         Don't worry about this obsolete case any more.
34757         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
34758         directories.
34759         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
34760         worry about this obsolete case any more.
34761         * lib/fts.c: Likewise.
34762         * lib/getcwd.c: Likewise.
34763         * lib/glob.h: Likewise.
34764         * lib/savedir.c: Likewise.
34765
34766 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
34767
34768         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
34769         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
34770         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
34771         needed.
34772         All uses removed.
34773         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
34774         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
34775         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
34776         needed.
34777         * m4/getdate.m4 (gl_GETDATE): Likewise.
34778         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
34779         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
34780         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
34781         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
34782         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
34783         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
34784         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
34785         needed.
34786
34787 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
34788
34789         * lib/memcasecmp.c: Include <limits.h>.
34790         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
34791         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
34792         Don't assume isdigit succeeds only on '0' through '9'.
34793
34794 2006-07-05  Eric Blake  <ebb9@byu.net>
34795
34796         * modules/getaddrinfo (Depends-on): Add snprintf.
34797
34798 2006-07-05  Eric Blake  <ebb9@byu.net>
34799
34800         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
34801         to avoid 'header present but could not be compiled' on cygwin.
34802
34803 2006-07-05  Eric Blake  <ebb9@byu.net>
34804
34805         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
34806         missing from netdb.h.
34807         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
34808
34809 2006-07-05  Derek R. Price  <derek@ximbiot.com>
34810
34811         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
34812         no longer needed.
34813         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
34814         * m4/getdate.m4 (gl_GETDATE): Likewise.
34815         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
34816         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
34817         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
34818         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
34819         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
34820
34821 2006-07-05  Derek R. Price  <derek@ximbiot.com>
34822
34823         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
34824         All uses of is_space replaced by isspace.
34825         * lib/exit.h: Don't talk about STDC_HEADERS.
34826         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
34827         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
34828         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
34829         replaced by isprint etc.
34830         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
34831         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
34832         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
34833         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
34834         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
34835         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
34836
34837 2006-07-05  Bruno Haible  <bruno@clisp.org>
34838
34839         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
34840         the function exists, before testing against AIX.
34841         Reported by Martin Lambers <marlam@marlam.de>.
34842
34843 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
34844
34845         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
34846         From Mark D. Baushke.
34847
34848 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
34849
34850         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
34851         to the absolute name, not just one, to bypass Sun C 5.8's
34852         "warning: #include of /usr/include/... may be non-portable".
34853
34854 2006-07-04  Eric Blake  <ebb9@byu.net>
34855
34856         * modules/dirname-tests: New test module.
34857         * tests/test-dirname.c: New file, replacing dirname.c
34858         TEST_DIRNAME section that was recently deleted.
34859
34860 2006-07-04  Bruno Haible  <bruno@clisp.org>
34861
34862         Assume ANSI C header files and <ctype.h> functions.
34863         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
34864         (mbsnwidth): Use isprint, iscntrl instead.
34865
34866 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
34867
34868         Merge from coreutils.
34869         * MODULES.html.sh: Add xstrtold.
34870         * modules/xstrtold: New file.
34871         * modules/cycle-check (Files): Add lib/same-inode.h.
34872         * modules/dirname (Files): Add m4/double-slash-root.m4.
34873         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
34874         * modules/mkdir-p (Files): Add lib/same-inode.h.
34875         * modules/same (Files): Add lib/same-inode.h.
34876
34877 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
34878
34879         * m4/absolute-header.m4: Renamed from full-header-path.m4.
34880         This is to keep the terminology clean; POSIX talks about
34881         "absolute pathnames", not "full pathnames", but the GNU
34882         Coding Standards say to use "path" for something else;
34883         so use "absolute" to keep both sides happy.
34884         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
34885         Set gl_absolute_header, not gl_full_header_path.
34886         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
34887         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
34888         All uses changed.
34889
34890         Merge from coreutils.
34891
34892         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
34893
34894         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
34895         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
34896         want to require the building of c-strtod.o.
34897         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
34898         needs -lm directly.
34899         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
34900
34901         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
34902
34903         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
34904         --as-needed option if available.  Problem reported by Albert Chin in
34905         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
34906         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
34907         cc merely issues a bunch of annoying warnings for --as-needed
34908         (this problem was reported by Bob Proulx).  Also, try linking with
34909         -lm to detect a bug in binutils 2.16 (this problem was reported
34910         by Ralf Wildenhues).
34911
34912         2006-06-18  Jim Meyering  <jim@meyering.net>
34913
34914         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
34915         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
34916         macro.
34917         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
34918         also check for glibc-2.4's abort-inducing bug.
34919
34920         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
34921         Low-probability clean-up should be to use rmdir to get rid of
34922         the just-created directory, not unlink.
34923
34924         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
34925         configure fail, and request a bug report to inform us about it.
34926         Add a comment that, barring reports to the contrary, in 2007 we'll
34927         assume ftruncate is universally available.
34928
34929         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
34930
34931         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
34932
34933         2006-03-12  Jim Meyering  <jim@meyering.net>
34934
34935         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
34936         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
34937         * m4/same.m4 (gl_SAME): Likewise.
34938         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
34939
34940         2006-03-11  Eric Blake  <ebb9@byu.net>
34941
34942         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
34943         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
34944         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
34945         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
34946
34947 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
34948
34949         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
34950         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
34951         reported by Mark D. Baushke, one in
34952         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
34953
34954         Merge from coreutils.
34955
34956         * lib/.cppi-disable: Add stdint_.h.
34957         * lib/.cvsignore: Add stdint.h.
34958
34959         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
34960
34961         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
34962         both double and long double versions.
34963         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
34964         * lib/xstrtold.c: New file.
34965         * lib/xstrtod.h (xstrtold): New decl.
34966
34967         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
34968
34969         * lib/filemode.c (setst): Remove.
34970         (strmode): Rewrite to avoid setst.  This makes the code shorter,
34971         (arguably) clearer, and the generated code is a bit smaller on my
34972         Debian GNU/Linux stable x86 host.
34973
34974         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
34975
34976         * lib/filemode.c: Include "filemode.h" first, to test the interface.
34977         Assume that filemode.h includes sys/types.h and sys/stat.h.
34978         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
34979         (ftypelet): Reorder to put common cases first, for efficiency.
34980         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
34981         to do 'M'.
34982         (strmode): Renamed from mode_string, and now stores 12 bytes instead
34983         of 10, for compatibility with FreeBSD.  All callers changed.
34984         (filemodestring): Now stores 12 bytes instead of 10, and sets file
34985         types that can't be deduced solely from st_mode.  First arg is now a
34986         const pointer.
34987         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
34988         (strmode): Renamed from mode_string.
34989         (filemodestring): New decl.
34990         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
34991         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
34992         needed.
34993         (S_ISPORT, S_ISWHT): New macros, if not already defined.
34994
34995         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
34996
34997         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
34998         fsusage.h now does that.  Include fsusage.h first, to test interface.
34999         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
35000         at most one method (the old code could have generated decls that
35001         didn't conform to C89, not that this was ever exercised).
35002         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
35003
35004         2006-03-19  Jim Meyering  <jim@meyering.net>
35005
35006         Work even in a chroot where d_ino values for entries in "/"
35007         don't match the stat.st_ino values for the same names.
35008         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
35009         number, iterate through all entries again, using lstat instead.
35010         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
35011         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
35012
35013         * lib/getcwd.c (__getcwd): Clarify a comment.
35014         Use memcpy in place of a call to strcpy.
35015
35016         2006-03-12  Jim Meyering  <jim@meyering.net>
35017
35018         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
35019         matches that of the current directory (which we're about to chdir ".."
35020         out of), then save the dev-ino of the parent, instead.
35021
35022         * lib/same-inode.h (SAME_INODE): New file/macro.
35023         * lib/chdir-safer.c (SAME_INODE): Remove definition.
35024         Include "same-inode.h", instead.
35025         * lib/same.c: Likewise.
35026         * lib/cycle-check.h: Include "same-inode.h".
35027         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
35028         * lib/cycle-check.c (SAME_INODE): Remove definition.
35029         * lib/root-dev-ino.h: Include "same-inode.h".
35030
35031         2006-03-11  Eric Blake  <ebb9@byu.net>
35032
35033         * lib/same.c (same_name): s/base_name/last_component/
35034         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
35035         * lib/filenamecat.c (file_name_concat): Likewise.
35036
35037         2006-03-11  Eric Blake  <ebb9@byu.net>,
35038                     Paul Eggert  <eggert@cs.ucla.edu>
35039
35040         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
35041         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
35042         drive prefix.
35043         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
35044         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
35045         (last_component): New method.
35046         * lib/dirname.c (dir_len): Determine when drive letters need a
35047         subsequent slash.  Preserve // when it is special.
35048         (dir_name): Don't append dot when drive letter is absolute.
35049         [TEST_DIRNAME]: Move into a full-blown gnulib test.
35050         * lib/basename.c (base_name): New semantics - malloc the result.
35051         Preserve // when it is special.  Preserve relative files that look
35052         like drive letters.
35053         (base_len): Preserve // when it is special.
35054         (last_component): New method, similar to old base_name semantics.
35055         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
35056         base_name.  Strip redundant slashes from ///.
35057
35058 2006-07-03  Jim Meyering  <jim@meyering.net>
35059
35060         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
35061         macro is used before the first cycle_check call.
35062
35063 2006-07-03  Eric Blake  <ebb9@byu.net>
35064
35065         * modules/dirname (Depends-on): Add xstrndup.
35066
35067 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
35068
35069         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
35070         test cases, so that config.log is a bit easier to follow.
35071
35072 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
35073
35074         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
35075         both are 64 bits, since this seems to be the tradition, and this
35076         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
35077         we ever run into a host that prefers long long to long in this
35078         case, we'll need another configure-time test.  Problem reported by
35079         Jim Meyering.
35080
35081 2006-07-02  Eric Blake  <ebb9@byu.net>
35082
35083         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
35084
35085 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
35086
35087         * modules/inttypes (Depends-on): No longer depends on stdint.
35088         * modules/stdint (Description): Say more about assumptions.
35089         Say that the fast types might differ.  Say macros are used.
35090         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
35091         (Makefile.am): Revise list of substituted symbols to match
35092         new stdint.m4.
35093         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
35094         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
35095         * tests/test-stdint.c (verify_same_types)
35096         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
35097         the code conforms to C99/C89.
35098         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
35099         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
35100
35101 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
35102
35103         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
35104         but fix a bug, by requiring at least 64 bits.
35105         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
35106         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
35107         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
35108         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
35109
35110         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
35111         changes.  Make 2.59 a prerequisite.  Check and substitute for
35112         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
35113         inttypes.h.  Do not use special include files; just use the
35114         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
35115         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
35116         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
35117         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
35118         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
35119         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
35120         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
35121         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
35122         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
35123         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
35124         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
35125         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
35126         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
35127         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
35128         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
35129         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
35130         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
35131         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
35132         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
35133         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
35134         WINT_MAX.  Check for C99 conformance more strictly, by detecting
35135         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
35136         not check for things that C99 does not require, e.g., int8_t.  If
35137         a test isn't needed unless <stdint.h> isn't working, and is
35138         unlikely to be needed for any other reason, then don't do it
35139         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
35140         size_t, since we assume C89 freestanding at least.  Do not check
35141         for sig_atomic_t, wchar_t, or wint_t, since the code now does
35142         the right thing even if the types are not defined.  Instead use:
35143         (gl_STDINT_TYPE_PROPERTIES): New macro.
35144         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
35145         testing whether <sys/types.h> clashes, as Autoconf does this for
35146         us now.  All uses removed.
35147         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
35148         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
35149         (gl_CHECK_TYPE_SAME):
35150         Remove; no longer needed.
35151         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
35152         exists, since we'll return 0 anyway in that case.
35153         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
35154
35155 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
35156
35157         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
35158         possible collision with system files.
35159         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
35160         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
35161         WCHAR_MIN and WCHAR_MAX in this case.
35162         (<stddef.h>): Do not include; no longer needed.
35163         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
35164         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
35165         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
35166         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
35167         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
35168         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
35169         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
35170         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
35171         !defined(__c99))]: Include in this case too, since it's harmless
35172         now.
35173         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
35174         dangerous to do so.
35175         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
35176         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
35177         (_STDINT_MIN, _STDINT_MAX): New macros.
35178         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
35179         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
35180         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
35181         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
35182         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
35183         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
35184         macros, not typedefs; this simplifies things quite a bit.
35185         Use long int for all types narrower than int64_t.
35186         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
35187         Define in terms of long long int or int64_t or long int,
35188         not int64_t or int32_t.  This saves some compile-time testing.
35189         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
35190         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
35191         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
35192         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
35193         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
35194         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
35195         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
35196         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
35197         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
35198         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
35199         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
35200         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
35201         undef any previous version and define our own version, for
35202         simplicity and consistency with the new macros for types.
35203         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
35204         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
35205         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
35206         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
35207         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
35208         @WINT_T_SUFFIX@ to keep things simple here.
35209         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
35210         Simplify by assuming typical 8/16/32/64 host, since we're
35211         already doing that elsewhere anyway.
35212         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
35213         and assume long long int is 64 bits if available.  This
35214         speeds up 'configure'.
35215
35216 2006-07-01  Eric Blake  <ebb9@byu.net>
35217
35218         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
35219         Reported by Andreas Buening.
35220
35221 2006-07-01  Eric Blake  <ebb9@byu.net>
35222
35223         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
35224
35225 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
35226
35227         * lib/getaddrinfo.c: fixed typo
35228
35229 2006-06-29  Jim Meyering  <jim@meyering.net>
35230
35231         * modules/strftime (Maintainer): Add my name, since with the
35232         FPRINTFTIME changes strftime.c has forked from glibc.
35233
35234 2006-06-29  Eric Blake  <ebb9@byu.net>
35235
35236         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
35237
35238 2006-06-29  Eric Blake  <ebb9@byu.net>
35239
35240         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
35241
35242 2006-06-29  Eric Blake  <ebb9@byu.net>
35243
35244         * lib/stat_.h: New file.
35245
35246 2006-06-29  Eric Blake  <ebb9@byu.net>
35247
35248         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
35249         unused static function.
35250
35251 2006-06-29  Eric Blake  <ebb9@byu.net>
35252
35253         * doc/functions.texi (Function Portability): Document missing lstat
35254         on mingw.
35255
35256 2006-06-29  Eric Blake  <ebb9@byu.net>
35257
35258         * MODULES.html.sh: Add sys_stat.
35259         * modules/sys_stat: New module.
35260         * modules/mkstemp (Depends-on): Add sys_stat.
35261
35262 2006-06-29  Derek R. Price  <derek@ximbiot.com>
35263
35264         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
35265
35266 2006-06-29  Derek R. Price  <derek@ximbiot.com>
35267
35268         * m4/c-bs-a.m4: Removed.
35269
35270 2006-06-29  Derek R. Price  <derek@ximbiot.com>
35271
35272         * lib/strftime.c: Assume strftime() exists.
35273
35274 2006-06-29  Derek Price  <derek@ximbiot.com>
35275
35276         * modules/c-bs-a: Removed - \a is C89.
35277         * MODULES.html.sh: Remove c-bs-a.
35278
35279 2006-06-29  Bruno Haible  <bruno@clisp.org>
35280
35281         * modules/wcwidth (License): Change to LGPL.
35282
35283 2006-06-28  Simon Josefsson  <jas@extundo.com>
35284
35285         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
35286         on _WIN32.
35287
35288         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
35289         getnameinfo.
35290
35291 2006-06-28  Simon Josefsson  <jas@extundo.com>
35292
35293         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
35294
35295 2006-06-28  Simon Josefsson  <jas@extundo.com>
35296
35297         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
35298         functions there.  It will succeed on Windows XP, but on Windows
35299         2000 and (presumably) earlier, it will fail, and use the internal
35300         re-implementation.
35301         (use_win32_p): New function.
35302         (getaddrinfo): Use strtoul on servname, to support numeric ports.
35303         Support AI_NUMERICSERV to disable getservbyname.
35304         (getnameinfo): New function, only supports
35305         NI_NUMERICHOST|NI_NUMERICSERV for now.
35306
35307         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
35308         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
35309         getnameinfo.
35310
35311 2006-06-28  Eric Blake  <ebb9@byu.net>
35312
35313         * modules/wcwidth: New file.
35314         * modules/mbchar (Depends-on): Add wcwidth.
35315         * modules/mbswidth (Depends-on): Add wcwidth.
35316         * MODULES.html.sh: Add wcwidth.
35317
35318 2006-06-28  Eric Blake  <ebb9@byu.net>
35319
35320         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
35321         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
35322
35323 2006-06-28  Eric Blake  <ebb9@byu.net>
35324
35325         * lib/xvasprintf.h: Fix comments.
35326
35327 2006-06-28  Eric Blake  <ebb9@byu.net>
35328
35329         * lib/mbchar.h (wcwidth): Include wcwidth.h.
35330         * lib/mbswidth.c (wcwidth): Move from here...
35331         * lib/wcwidth.h: ...to this new file.
35332
35333 2006-06-28  Derek R. Price  <derek@ximbiot.com>
35334
35335         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
35336
35337         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
35338         it's obsolete.
35339         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
35340
35341 2006-06-28  Derek R. Price  <derek@ximbiot.com>
35342
35343         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
35344         Autoconf 2.60 says this stuff was obsolete.
35345
35346 2006-06-28  Bruno Haible  <bruno@clisp.org>
35347
35348         * modules/wcwidth (Files): Add m4/wchar_t.m4.
35349
35350 2006-06-28  Bruno Haible  <bruno@clisp.org>
35351
35352         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
35353         gt_TYPE_WCHAR_T.
35354
35355 2006-06-28  Bruno Haible  <bruno@clisp.org>
35356
35357         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
35358         declaration for wcwidth.
35359         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
35360
35361 2006-06-28  Bruno Haible  <bruno@clisp.org>
35362
35363         * lib/mkdtemp.c [MINGW]: Include <io.h>.
35364         (mkdir): Define using _mkdir.
35365
35366 2006-06-28  Bruno Haible  <bruno@clisp.org>
35367
35368         * lib/getaddrinfo.h: Fix POSIX URL.
35369         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
35370         _WIN32.
35371         (use_win32_p): Make static.
35372         (getaddrinfo): Reject service name if it is empty or does not consist
35373         solely of decimal digits, or if its value is > 65535.
35374         (getnameinfo): Remove useless casts.
35375
35376 2006-06-27  Simon Josefsson  <jas@extundo.com>
35377
35378         * modules/sys_select: New file, suggested by Bruno Haible, Paul
35379         Eggert and Martin Lambers.
35380
35381 2006-06-27  Simon Josefsson  <jas@extundo.com>
35382
35383         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
35384         Eggert and Martin Lambers.
35385
35386 2006-06-27  Bruno Haible  <bruno@clisp.org>
35387
35388         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
35389         result to 0, not to empty.
35390         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
35391
35392 2006-06-27  Bruno Haible  <bruno@clisp.org>
35393
35394         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
35395
35396 2006-06-26  Simon Josefsson  <jas@extundo.com>
35397
35398         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
35399         present.
35400
35401 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
35402
35403         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
35404         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
35405         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
35406
35407 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
35408
35409         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
35410
35411 2006-06-26  Bruno Haible  <bruno@clisp.org>
35412
35413         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
35414
35415 2006-06-26  Bruno Haible  <bruno@clisp.org>
35416
35417         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
35418
35419 2006-06-26  Bruno Haible  <bruno@clisp.org>
35420
35421         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
35422         SGI C compiler in pre-C99 mode.
35423         Suggested by Mark D. Baushke and Larry Jones.
35424
35425 2006-06-26  Bruno Haible  <bruno@clisp.org>
35426
35427         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
35428         WCHAR_MAX.
35429         Reported by Mark D. Baushke and Larry Jones.
35430
35431 2006-06-26  Bruno Haible  <bruno@clisp.org>
35432
35433         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
35434         in pre-C99 mode.
35435         Suggested by Mark D. Baushke and Larry Jones.
35436
35437 2006-06-23  Simon Josefsson  <jas@extundo.com>
35438             Bruno Haible  <bruno@clisp.org>
35439
35440         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
35441         Emit mostlyclean-local rule.
35442         (func_emit_tests_Makefile_am): Likewise.
35443         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
35444
35445 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
35446
35447         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
35448
35449 2006-06-23  Bruno Haible  <bruno@clisp.org>
35450
35451         * tests/test-stdint.c: Update to match ISO C 99 Technical
35452         Corrigendum 1.
35453
35454 2006-06-23  Bruno Haible  <bruno@clisp.org>
35455
35456         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
35457
35458 2006-06-23  Bruno Haible  <bruno@clisp.org>
35459
35460         * lib/stdint_.h: Treat IRIX like OpenBSD.
35461
35462 2006-06-23  Bruno Haible  <bruno@clisp.org>
35463
35464         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
35465         ISO C 99 Technical Corrigendum 1.
35466
35467 2006-06-22  Simon Josefsson  <jas@extundo.com>
35468
35469         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
35470         MinGW.
35471
35472 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
35473
35474         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
35475         needed.  Some compiler complained about some of them.  Problem reported
35476         by Larry Jones in
35477         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
35478
35479 2006-06-21  Simon Josefsson  <jas@extundo.com>
35480
35481         * tests/test-getaddrinfo.c: New file.
35482
35483         * modules/getaddrinfo-tests: New file.
35484
35485         * MODULES.html.sh: Add inet_pton.
35486
35487         * modules/inet_pton: New file.
35488
35489 2006-06-21  Simon Josefsson  <jas@extundo.com>
35490
35491         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
35492         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
35493         of using the (limited) gnulib implementation on Windows XP.
35494
35495         * m4/inet_pton.m4: New file.
35496
35497 2006-06-21  Simon Josefsson  <jas@extundo.com>
35498
35499         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
35500         variable.
35501
35502         * lib/socket_.h: Don't define WINVER.
35503
35504         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
35505         slightly modified to work in gnulib.
35506
35507 2006-06-21  Simon Josefsson  <jas@extundo.com>
35508
35509         * doc/gnulib.texi (Windows sockets): Add.
35510
35511 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
35512
35513         * lib/read-file.c (fread_file): Start with buffer allocation of
35514         0 bytes rather than 1 byte; this simplifies the code.
35515         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
35516         code to free buffer and save/restore errno.
35517         (internal_read_file): Remove unused local.
35518
35519 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
35520
35521         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
35522         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
35523         Problem reported by Denis Excoffier in
35524         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
35525
35526 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
35527
35528         * modules/sys_socket, modules/socklen: Include sys/types since
35529         FreeBSD 4.x's sys/socket.h needs it.
35530
35531 2006-06-19  Simon Josefsson  <jas@extundo.com>
35532
35533         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
35534
35535 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
35536
35537         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
35538
35539 2006-06-19  Bruno Haible  <bruno@clisp.org>
35540
35541         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
35542         and FULL_PATH_INTTYPES_H in angle brackets.
35543         Reported by Mark D. Baushke <mdb@gnu.org>.
35544
35545 2006-06-17  Eric Blake  <ebb9@byu.net>
35546
35547         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
35548         errno.
35549
35550 2006-06-17  Bruno Haible  <bruno@clisp.org>
35551
35552         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
35553         <sys/inttypes.h>.
35554
35555 2006-06-17  Bruno Haible  <bruno@clisp.org>
35556
35557         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
35558         whether errno is declared. Assume <errno.h> declares errno.
35559
35560 2006-06-17  Bruno Haible  <bruno@clisp.org>
35561
35562         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
35563
35564 2006-06-17  Bruno Haible  <bruno@clisp.org>
35565
35566         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
35567         problem on Solaris 2.5.1.
35568
35569 2006-06-16  Eric Blake  <ebb9@byu.net>
35570
35571         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
35572         * lib/unicodeio.c [!defined errno]: Likewise.
35573         * lib/strtol.c [!defined errno]: Likewise.
35574         * lib/strtod.c [!defined errno]: Likewise.
35575
35576 2006-06-15  Eric Blake  <ebb9@byu.net>
35577
35578         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
35579
35580 2006-06-15  Eric Blake  <ebb9@byu.net>
35581
35582         * config/srclist.txt (ssize_t.m4): Lose sync.
35583
35584 2006-06-15  Bruno Haible  <bruno@clisp.org>
35585
35586         * modules/stdint (Files): Include m4/full-header-path.m4,
35587         m4/size_max.m4, m4/wchar_t.m4.
35588         (Makefile.am): Many more substitutions.
35589         * modules/stdint-tests: New file.
35590         * tests/test-stdint.c: New file.
35591
35592 2006-06-15  Bruno Haible  <bruno@clisp.org>
35593
35594         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
35595         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
35596         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
35597         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
35598         gl_CHECK_TYPE_SAME): New macros.
35599
35600 2006-06-15  Bruno Haible  <bruno@clisp.org>
35601
35602         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
35603
35604 2006-06-15  Bruno Haible  <bruno@clisp.org>
35605
35606         * lib/stdint_.h: Rewritten to be fully auto-configured.
35607         Fixes bug on HP-UX/IA64.
35608
35609 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
35610
35611         * lib/getdate.y (__attribute__): Don't define if already defined.
35612         Problem reported by Larry Jones.
35613         * lib/utimens.c (__attribute__): Likewise.
35614
35615 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
35616
35617         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
35618         reported by Andreas Schwab.
35619
35620 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35621             Bruno Haible  <bruno@clisp.org>
35622
35623         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
35624         check for the declaration of strnlen and a run test that exposes the
35625         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
35626         rpl_strndup.
35627
35628 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35629             Bruno Haible  <bruno@clisp.org>
35630
35631         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
35632
35633 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35634
35635         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
35636         compile test, for Tru64 4.0D.
35637
35638 2006-05-28  Karl Berry  <karl@gnu.org>
35639
35640         * config/srclist.txt (printf-args.c): lose sync.
35641
35642 2006-05-26  Martin Lambers  <marlam@marlam.de>
35643
35644         * lib/getpass.c: Updates the test for the native W32 API, and adds
35645         missing includes, thus fixing compilation warnings.
35646
35647 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
35648
35649         * lib/exclude.c (exclude_fnmatch): New function.
35650         (excluded_file_name): Call exclude_fnmatch.
35651         * lib/exclude.h (excluded_file_name): New prototype
35652
35653 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
35654
35655         * lib/tempname.c (small_open, large_open): New macros.
35656         (__open, __open64) [!_LIBC]: Remove.
35657         (__gen_tempname): Use small_open and large_open instead of __open
35658         and __open64.  This fixes a portability bug on HP-UX 11.11i
35659         reported by Simon Wing-Tang in
35660         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
35661
35662 2006-05-24  Bruno Haible  <bruno@clisp.org>
35663
35664         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
35665         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
35666         Reported by Thorsten Maerz <torte@netztorte.de> via
35667         Aaron Stone <aaron@serendipity.cx>.
35668
35669 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
35670
35671         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
35672         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
35673         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
35674         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
35675         not really conditional on the cache.
35676         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
35677
35678 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
35679
35680         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
35681         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
35682         (my_usleep): Don't mishandle maximum value.
35683
35684 2006-05-19  Jim Meyering  <jim@meyering.net>
35685
35686         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
35687
35688 2006-05-17  Bruno Haible  <bruno@clisp.org>
35689
35690         Cygwin portability.
35691         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
35692
35693 2006-05-17  Bruno Haible  <bruno@clisp.org>
35694
35695         * lib/stdint_.h: Fix recognition of Cygwin.
35696
35697 2006-05-15  Bruno Haible  <bruno@clisp.org>
35698
35699         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
35700         on libtool patch by Ralf Wildenhues.
35701
35702 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
35703
35704         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
35705         test for C99 conformance; (bool) 0.5 is an integer constant
35706         expression, but (bool) -0.5 is not.  Problem reported by Fedor
35707         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
35708
35709 2006-05-11  Simon Josefsson  <jas@extundo.com>
35710
35711         * m4/xvasprintf.m4: Fix obvious typo.
35712
35713 2006-05-11  Jim Meyering  <jim@meyering.net>
35714
35715         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
35716         James Lemley.
35717
35718 2006-05-10  Simon Josefsson  <jas@extundo.com>
35719
35720         * lib/md4.c: Typo fix, update copyright years.
35721         (K1, K2): Don't use L because it turn computations into 64-bit on
35722         64-bit platforms.
35723
35724 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
35725
35726         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
35727         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
35728         unwanted sign propagation, e.g., on hosts with 64-bit int.
35729         There still are some problems with reeelly weird theoretical hosts
35730         (e.g., 33-bit int) but it's not worth worrying about now.
35731         * lib/sha1.c (rol): Likewise.
35732         (K1, K2, K3, K4): Remove unnecessary L suffix.
35733
35734 2006-05-10  Bruno Haible  <bruno@clisp.org>
35735
35736         * lib/des.c: Cast to avoid warnings.
35737
35738 2006-05-09  Bruno Haible  <bruno@clisp.org>
35739
35740         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
35741         (Depends-on): Depend also on xsize, stdarg.
35742         (configure.ac): Add gl_XVASPRINTF.
35743
35744 2006-05-09  Bruno Haible  <bruno@clisp.org>
35745
35746         * m4/xvasprintf.m4: New file.
35747
35748 2006-05-09  Bruno Haible  <bruno@clisp.org>
35749
35750         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
35751         (EOVERFLOW): Define fallback value.
35752         (xstrcat): New function.
35753         (xvasprintf): Recognize the special case of a string concatenation.
35754
35755 2006-05-08  Eric Blake  <ebb9@byu.net>
35756
35757         * gnulib-tool (func_version): Base copyright year on CVS date.
35758         (func_emit_copyright_notice): New function.
35759         (func_emit_lib_Makefile_am): Use it.
35760         (func_emit_tests_Makefile_am): Likewise.
35761         (func_import): Likewise.
35762
35763 2006-05-08  Bruno Haible  <bruno@clisp.org>
35764
35765         * modules/stdarg: New file.
35766         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
35767
35768 2006-05-08  Bruno Haible  <bruno@clisp.org>
35769
35770         * m4/stdarg.m4: New file, from GNU gettext.
35771
35772 2006-05-08  Bruno Haible  <bruno@clisp.org>
35773
35774         * config/srclist.txt (build-aux/config.rpath): different from latest
35775         release.
35776
35777 2006-05-08  Bruno Haible  <bruno@clisp.org>
35778
35779         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
35780
35781 2006-05-05  Jim Meyering  <jim@meyering.net>
35782
35783         * m4/warning.m4: New file, derived from bison's file by the same name.
35784
35785 2006-05-03  Bruno Haible  <bruno@clisp.org>
35786
35787         * lib/stdint_.h: Shorter URL.
35788         * lib/inttypes.h: Likewise.
35789
35790 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
35791
35792         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
35793
35794 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
35795
35796         * lib/verify.h: Document the internals better.  Most of this change
35797         was written by Bruno Haible.
35798
35799 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
35800
35801         * doc/verify.texi: New file, partly based on a proposal by
35802         Bruno Haible.
35803
35804 2006-05-02  Bruno Haible  <bruno@clisp.org>
35805
35806         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
35807         test from here...
35808         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
35809
35810 2006-04-29  Bruno Haible  <bruno@clisp.org>
35811
35812         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
35813         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
35814
35815 2006-04-29  Bruno Haible  <bruno@clisp.org>
35816
35817         * gnulib-tool: Make --update option actually work.
35818
35819 2006-04-29  Bruno Haible  <bruno@clisp.org>
35820
35821         * doc/gcd.texi: New file.
35822         * doc/gnulib.texi: Include it.
35823
35824 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
35825
35826         * lib/getdate.y (get_date): When adding relative date, start with the
35827         initial time, not with the result of the first mktime call.
35828
35829 2006-04-25  Bruno Haible  <bruno@clisp.org>
35830
35831         * gnulib-tool (func_import): Output the include directives in three
35832         blocks, sorted separately.
35833         Reported by Ben Pfaff <blp@cs.stanford.edu>.
35834
35835 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
35836
35837         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
35838         to define main with arguments, for C++.  Reported by Eric Blake.
35839         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
35840         Prefer 'int main ()' to 'int main (void)', for C++.
35841         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
35842         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
35843         for 'main', for C99 and C++.
35844
35845 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
35846
35847         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
35848         Don't assume that exit status -1 is valid.
35849         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
35850         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
35851         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
35852         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
35853         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
35854         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
35855         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
35856         functions can be used without declaring them, or that you can
35857         exit with status -1.
35858         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
35859
35860 2006-04-24  Karl Berry  <karl@gnu.org>
35861
35862         * config/srclist.txt (longdouble.m4): sync lost.
35863
35864 2006-04-24  Eric Blake  <ebb9@byu.net>
35865
35866         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
35867
35868 2006-04-24  Bruno Haible  <bruno@clisp.org>
35869
35870         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
35871         poll() implementation in AIX.
35872         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
35873
35874 2006-04-24  Bruno Haible  <bruno@clisp.org>
35875
35876         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
35877         assigned exactly once.
35878
35879 2006-04-23  Claudio Fontana  <claudio@gnu.org>
35880             Bruno Haible  <bruno@clisp.org>
35881
35882         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
35883         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
35884         for AM_CPPFLAGS.
35885
35886 2006-04-23  Bruno Haible  <bruno@clisp.org>
35887
35888         * modules/copy-file: Depend on unistd.
35889         * modules/execute: Likewise.
35890         * modules/fatal-signal: Likewise.
35891         * modules/findprog: Likewise.
35892         * modules/mkdtemp : Likewise.
35893         * modules/pipe: Likewise.
35894         * modules/wait-process: Likewise.
35895
35896 2006-04-23  Bruno Haible  <bruno@clisp.org>
35897
35898         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
35899         condition was already detected.
35900         Reported by Ben Pfaff <blp@cs.stanford.edu>.
35901
35902 2006-04-23  Bruno Haible  <bruno@clisp.org>
35903
35904         * lib/copy-file.c: Include <unistd.h> unconditionally.
35905         * lib/execute.c: Likewise.
35906         * lib/fatal-signal.c: Likewise.
35907         * lib/findprog.c: Likewise.
35908         * lib/mkdtemp.c: Likewise.
35909         * lib/pipe.h: Likewise.
35910         * lib/pipe.c: Likewise.
35911         * lib/wait-process.h: Likewise.
35912
35913 2006-04-23  Bruno Haible  <bruno@clisp.org>
35914
35915         * gnulib-tool (func_usage): Fix --import description. Document
35916         --update.
35917         (func_import): Create temporary file in a temporary directory, if
35918         --dry-run is specified. Silence errors from 'grep' when there are no
35919         m4 files in $m4dir.
35920         (func_create_testdir): Silence errors from 'grep' when there are no
35921         m4 files in $m4dir.
35922         Reported by Karl Berry <karl@freefriends.org>.
35923
35924 2006-04-20  Bruno Haible  <bruno@clisp.org>
35925
35926         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
35927         one argument, so that the code will be portable to Autoconf 2.60.
35928         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
35929         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
35930         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
35931
35932 2006-04-19  Derek Price  <derek@ximbiot.com>
35933             Eric Blake  <ebb9@byu.net>
35934
35935         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
35936         rather than "/full/path.h".  Update comment to match.  Shorten &
35937         generalize m4_translit call via AS_TR_CPP.
35938
35939 2006-04-19  Derek Price  <derek@ximbiot.com>
35940             Eric Blake  <ebb9@byu.net>
35941
35942         * lib/inttypes.h: Correct grammar in comment.
35943
35944 2006-04-18  Derek Price  <derek@ximbiot.com>
35945             Paul Eggert  <eggert@cs.ucla.edu>
35946
35947         * modules/inttypes: New file.
35948         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
35949
35950 2006-04-18  Derek Price  <derek@ximbiot.com>
35951             Paul Eggert  <eggert@cs.ucla.edu>
35952
35953         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
35954         New files.
35955
35956 2006-04-18  Derek Price  <derek@ximbiot.com>
35957             Paul Eggert  <eggert@cs.ucla.edu>
35958
35959         * lib/inttypes.h: New file.
35960         * lib/strtoimax.c: Assume <inttypes.h>.
35961
35962 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
35963
35964         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
35965         isn't mounted.  Problem reported by Kir Kolyshkin.
35966
35967 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
35968
35969         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
35970         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
35971         Derek R. Price.
35972         * lib/regex.h (RE_DUP_MAX): Update comment to match current
35973         implementation.
35974
35975 2006-04-12  Eric Blake  <ebb9@byu.net>
35976
35977         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
35978         is now done automatically by the corresponding Autoconf macro.
35979
35980 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
35981
35982         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
35983         time_r.h.
35984
35985 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
35986
35987         Merge regex changes from libc, removing some of our
35988         POSIX-conformance changes that were rejected and redoing them in a
35989         less-intrusive way.
35990
35991         * lib/regcomp.c (re_compile_internal, init_dfa):
35992         Length arg is now size_t, not Idx.  All uses changed.
35993         (peek_token): Forward decl now says internal_function.
35994         (__re_error_msgid, __re_error_msgid_idx):
35995         Now static rather than extern with attribute_hidden.
35996         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
35997         For some reason libc prefers K&R style defns for external functions.
35998         (regerror) [!defined _LIBC]: Likewise.
35999         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
36000         (seek_collating_symbol_entry, lookup_collation_sequence_value):
36001         (build_range_exp, build_collating_symbol):
36002         Use K&R-style defn.
36003         (re_compile_fastmap): Use '\0' to memset, not 0.
36004         (utf8_sb_map): Make the calculations more obvious.
36005         (init_dfa, parse_bracket_exp, build_charclass_op):
36006         Call calloc and cast result, as glibc does.
36007         (init_word_char, fetch_token, peek_token, peek_token_bracket):
36008         (build_range_exp, build_collating_symbol):
36009         Now internal functions.
36010
36011         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
36012
36013         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
36014         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
36015         Don't depend on VMS; depend on __VMS instead, for POSIX
36016         namespace cleanness.
36017         (regoff_t): Define to ssize_t, not long int.
36018
36019         Remove the REG_ macros named below.  Instead, make the old names
36020         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
36021         __USE_GNU_REGEX.
36022         (REG_BACKSLASH_ESCAPE_IN_LISTS):
36023         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
36024         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
36025         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
36026         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
36027         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
36028         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
36029         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
36030         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
36031         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
36032         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
36033         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
36034         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
36035         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
36036         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
36037         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
36038         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
36039         (REG_NREGS):
36040         Remove.  All uses replaced by the old RE_* names.
36041         (RE_BACKSLASH_ESCAPE_IN_LISTS):
36042         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
36043         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
36044         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
36045         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
36046         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
36047         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
36048         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
36049         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
36050         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
36051         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
36052         Don't bother having these macros be independent of each others'
36053         values, since they no longer exist in the POSIX name space.
36054
36055         Rename the following member names back to their old names,
36056         unless !__USE_GNU_REGEX.  All uses changed back.
36057         (buffer): Renamed from re_buffer.
36058         (allocated): Renamed from re_allocated.
36059         (used): Renamed from re_used.
36060         (syntax): Renamed from re_syntax.
36061         (fastmap): Renamed from re_fastmap.
36062         (translate): Renamed from re_translate.
36063         (can_be_null): Renamed from re_can_be_null.
36064         (regs_allocated): Renamed from re_regs_allocated.
36065         (fastmap_accurate): Renamed from re_fastmap_accurate.
36066         (no_sub): Renamed from re_no_sub.
36067         (not_bol): Renamed from re_not_bol.
36068         (not_eol): Renamed from re_not_eol.
36069         (newline_anchor): Renamed from re_newline_anchor.
36070         (num_regs): Renamed from rm_num_regs.
36071         (start): Renamed from rm_start.
36072         (end): Renamed from rm_end.
36073
36074         (free_state): Move up a bit.
36075
36076         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
36077         #define to be empty.
36078         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
36079         when that is what is intended.
36080         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
36081         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
36082         (MAX): New macro.
36083         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
36084         All uses changed back to re_malloc, etc.  It's now the caller's
36085         responsibility to check for overflow; all callers changed.
36086         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
36087         (re_x2nrealloc): Remove.
36088         (free_state): Remove decl.
36089
36090         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
36091         (re_set_registers, re_exec):
36092         Use K&R-style defn.
36093
36094         2006-01-31  Roland McGrath  <roland@redhat.com>
36095
36096         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
36097         Reported by Mike Frysinger <vapier@gentoo.org>.
36098
36099         2006-01-15  Andreas Jaeger  <aj@suse.de>
36100
36101         [BZ #1950]
36102         * lib/regex_internal.c (re_string_reconstruct): Adjust for
36103         build_wcs_upper_buffer change.
36104         (build_wcs_upper_buffer): Change return type.
36105
36106         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
36107
36108         * lib/regex_internal.h: Include <stdint.h> if available.
36109
36110         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
36111
36112         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
36113
36114         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
36115
36116         * lib/regcomp.c: Adjust for changed secondary hash function.
36117
36118         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
36119
36120         * lib/regex.h: Pretty printing.
36121         Clean up namespace a bit.
36122
36123         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
36124
36125         * lib/regexec.c (update_cur_sifted_state, check_arrival,
36126         check_arrival_add_next_nodes): Avoid using uninitialized variable.
36127
36128         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
36129                     Ulrich Drepper  <drepper@redhat.com>
36130
36131         [BZ #1302]
36132         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
36133         changed.
36134         (bitset_word_t): Renamed from bitset_word.  All uses changed.
36135
36136         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
36137
36138         [BZ #281]
36139         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
36140         * lib/regcomp.c: Remove unnecessary uses of
36141         unsigned RE_TRANSLATE_TYPE.
36142         * lib/regex_internal.h: Likewise.
36143         * lib/regex_internal.c: Likewise.
36144         * lib/regexec.c: Likewise.
36145         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
36146
36147         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
36148
36149         * lib/regexec.c (find_recover_state): Remove unnecessary
36150         initialization.
36151         (transit_state_bkref): Make DFA a const pointer.
36152         (get_subexp): Likewise.
36153         (check_arrival): Likewise.
36154         (update_cur_sifted_state): Likewise.
36155         (re_search_internal): Likewise.
36156         (prune_impossible_nodes): Likewise.
36157         (acquire_init_state_context): Likewise.
36158         (proceed_next_node): Likewise.
36159         (set_regs): Likewise.
36160         (free_fail_stack_return): Likewise.
36161         (check_arrival_expand_ecl): Mark DFA parameter as const.
36162         (check_arrival_expand_ecl_sub): Likewise.
36163         (check_subexp_limits): Likewise.
36164         (sub_epsilon_src_nodes):  Likewise.
36165         (add_epsilon_src_nodes):  Likewise.
36166         (merge_state_array): Likewise.
36167         (update_regs): Likewise.
36168         (build_trtable): Likewise.
36169         (sift_states_backward): Mark MCTX parameter as const.
36170         (build_sifted_states): Likewise.
36171         (update_cur_sifted_state): Likewise.
36172         (sift_states_mkref): Likewise.
36173         (check_arrival_expand_ecl): Mark eclosure as const.
36174         (check_dst_limits_calc_pos_1): Likewise.
36175         * lib/regex_internal.h (re_match_context_t): Make dfa a const
36176         pointer.
36177
36178         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
36179
36180         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
36181         (transit_state_sb): Likewise.
36182         (transit_state_mb): Likewise.
36183         (sift_states_iter_mb): Likewise.
36184         (check_arrival_add_next_nodes): Likewise.
36185         (check_node_accept_bytes): Change first parameter to pointer-to-const.
36186         [_LIBC] (re_search_2_stub): Use mempcpy.
36187
36188         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
36189         mbrtowc for very simple UTF-8 case.
36190
36191         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
36192         a pointer-to-const.
36193         (re_acquire_state_context): Likewise.
36194         * lib/regex_internal.h: Adjust prototypes.
36195
36196         * lib/regex.c: Prevent using C++ compilers.
36197
36198         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
36199         (re_acquire_state_context): Likewise.
36200
36201 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36202
36203         * modules/regex (Depends-on): Add ssize_t.
36204
36205 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36206
36207         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
36208         translation table.
36209
36210 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36211
36212         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
36213
36214 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
36215             Bruno Haible  <bruno@clisp.org>
36216
36217         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
36218         <sys/types.h> and <inttypes.h>.
36219
36220 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36221
36222         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
36223         `__error_t_defined', so argp.h will not typedef the former.
36224
36225 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
36226
36227         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
36228         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
36229         glibc names.  Even if glibc is changed to conform to POSIX, the
36230         traditional names will be available anyway, since regex depends on
36231         the extensions module.  Also, fix a longstanding typo in the
36232         implementation of Spencer ERE test #75 from grep 2.3.  Problems
36233         reported by Emanuele Giaquinta.  Also, change sense of cached
36234         variable, so that the message makes sense.
36235
36236 2006-03-24  Simon Josefsson  <jas@extundo.com>
36237
36238         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
36239         including some doc fixes.
36240         (base64_encode_alloc): Fix +1 bug on allocation failures.
36241
36242 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36243
36244         * lib/base64.c (base64_encode): Do not read past end of array with
36245         unsanitized input on systems with CHAR_BIT > 8.
36246
36247 2006-03-24  Eric Blake  <ebb9@byu.net>
36248
36249         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
36250
36251 2006-03-22  Karl Berry  <karl@gnu.org>
36252
36253         * config/srclist.txt (*setenv.[ch]): get from coreutils.
36254         * config/srclistvars.sh (COREUTILS): new var.
36255
36256 2006-03-17  Jim Meyering  <jim@meyering.net>
36257
36258         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
36259         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
36260
36261 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
36262
36263         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
36264         no longer needs it.  Instead, check that regoff_t is as least
36265         as wide as ptrdiff_t.
36266
36267         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
36268         so that our regex.h stays compatible with the installed regex.
36269         This is helpful for installers who configure --without-included-regex.
36270         Problem reported by Emanuele Giaquinta.
36271
36272 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
36273
36274         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
36275         Typedef to long int, not to off_, as POSIX will likely change
36276         in that direction.
36277
36278 2006-03-15  Eric Blake  <ebb9@byu.net>
36279
36280         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
36281
36282 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
36283
36284         * lib/argp-help.c (validate_uparams): Fix typo
36285         * lib/argp-parse.c (argp_default_options): Consistently begin help
36286         messages with a lowercase letter.
36287
36288 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
36289
36290         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
36291         overrun buffers and shouldn't be used (much as gets shouldn't be
36292         used).
36293         * lib/time_r.c (asctime_r, ctime_r): Likewise.
36294
36295 2006-03-08  Simon Josefsson  <jas@extundo.com>
36296
36297         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
36298         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36299
36300 2006-03-08  Simon Josefsson  <jas@extundo.com>
36301
36302         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
36303         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36304
36305 2006-03-08  Simon Josefsson  <jas@extundo.com>
36306
36307         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
36308         signal that configure disabled the device.
36309
36310 2006-03-08  Simon Josefsson  <jas@extundo.com>
36311
36312         * build-aux/maint.mk: Fix refresh-po, to handle no translated
36313         languages.
36314
36315 2006-03-07  Simon Josefsson  <jas@extundo.com>
36316
36317         * modules/getopt (Depends-on): Add unistd.
36318
36319         * modules/unistd: New file.
36320
36321 2006-03-07  Simon Josefsson  <jas@extundo.com>
36322
36323         * modules/gc-random: New file.
36324
36325 2006-03-07  Simon Josefsson  <jas@extundo.com>
36326
36327         * m4/unistd_h.m4: New file.
36328
36329 2006-03-07  Simon Josefsson  <jas@extundo.com>
36330
36331         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
36332         test to be side-effect free by storing the result in the cache
36333         variable gl_cv_lib_readline, and moving the assignment of
36334         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
36335         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36336
36337 2006-03-07  Simon Josefsson  <jas@extundo.com>
36338
36339         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
36340         error on missing devices (the functions will return an error).
36341
36342         * m4/gc.m4: Move random stuff to gc-random.m4
36343
36344 2006-03-07  Simon Josefsson  <jas@extundo.com>
36345
36346         * lib/unistd_.h: New file.
36347
36348 2006-03-07  Simon Josefsson  <jas@extundo.com>
36349
36350         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
36351
36352 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
36353
36354         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
36355         Problem reported by Juan Manuel Guerrero.
36356
36357 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
36358
36359         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
36360         the unistd module.
36361         * lib/getlogin_r.c: Likewise.
36362         * lib/getlogin_r.h: Likewise.
36363         * lib/glob.c: Likewise.
36364         * lib/pagealign_alloc.c: Likewise.
36365         * lib/unistd_.h: Remove; no longer needed.
36366
36367 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
36368
36369         * MODULES.html.sh (Support for systems lacking POSIX:2001):
36370         Add unistd.
36371         * modules/c-stack (Depends-on): Add unistd.
36372         * modules/getlogin_r: Likewise.
36373         * modules/glob: Likewise.
36374         * modules/pagealign_alloc: Likewise.
36375         * modules/unistd (Files): Remove lib/unistd_.h.
36376         (EXTRA_DIST): Remove.
36377         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
36378         need unistd_.h.
36379         (MOSTLYCLEANFILES): Remove unistd.h-t.
36380
36381 2006-03-03  Simon Josefsson  <jas@extundo.com>
36382
36383         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
36384
36385 2006-03-03  Simon Josefsson  <jas@extundo.com>
36386
36387         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
36388         libidn and bison.
36389
36390 2006-03-03  Simon Josefsson  <jas@extundo.com>
36391
36392         * build-aux/maint.mk: Add indent target.
36393
36394 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
36395
36396         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
36397         our replacement poll.h in any case, to avoid a differing
36398         declaration from a system header.  Seen on AIX.
36399
36400 2006-03-01  Simon Josefsson  <jas@extundo.com>
36401
36402         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
36403         <kasal@ucw.cz>.
36404
36405 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
36406
36407         * modules/gettime (Depends-on): Add extensions module.
36408         * modules/nanosleep (Depends-on): Likewise.
36409         * modules/settime (Depends-on): Likewise.
36410
36411 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
36412
36413         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
36414         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
36415         pedantically.
36416         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
36417         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
36418
36419         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
36420         not "==".  Reported by Ralf Wildenhues.
36421
36422 2006-03-01  Karl Berry  <karl@gnu.org>
36423
36424         * doc/Copyright/request-*: new files, synced from gnuorg.
36425
36426 2006-03-01  Karl Berry  <karl@gnu.org>
36427
36428         * config/srclist.txt (Copyright/*): new entries.
36429
36430 2006-02-28  Simon Josefsson  <jas@extundo.com>
36431
36432         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
36433
36434 2006-02-27  Simon Josefsson  <jas@extundo.com>
36435
36436         * lib/base64.h: Indent #define's.  From Jim Meyering
36437         <jim@meyering.net>.
36438
36439 2006-02-27  Jim Meyering  <jim@meyering.net>
36440
36441         Revert the change of 2006-02-24, so these files can continue
36442         to be sync'd from gettext.
36443         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
36444         of `config.h'.
36445
36446 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
36447
36448         * modules/intprops: New file.
36449         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
36450         Add intprops.
36451         * modules/getloadavg (Files): Remove lib/intprops.h.
36452         (Depends-on): Add intprops.
36453         * modules/human: Likewise.
36454         * modules/inttostr: Likewise.
36455         * modules/openat: Likewise.
36456         * modules/sig2str: Likewise.
36457         * modules/userspec: Likewise.
36458         * modules/utimecmp: Likewise.
36459         * modules/xnanosleep: Likewise.
36460         * modules/xstrtol: Likewise.
36461
36462 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
36463
36464         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
36465         * modules/lock-tests (TESTS): Use $(EXEEXT).
36466         * modules/tls-tests: Likewise.
36467         * modules/argp-tests: Likewise.
36468         (check_PROGRAMS): New var, replacing...
36469         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
36470
36471 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36472
36473         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
36474         `config.h'.
36475
36476 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
36477
36478         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
36479
36480 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
36481
36482         Sync from coreutils.
36483         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
36484         gl_CHDIR_SAFER.
36485
36486 2006-02-22  Jim Meyering  <jim@meyering.net>
36487
36488         Sync from coreutils.
36489         * m4/chdir-safer.m4: New file.
36490
36491 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
36492
36493         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
36494         AT_FDCWD exceeds INT_MAX.
36495         * lib/openat.h (AT_FDCWD): Likewise.
36496
36497 2006-02-17  Eric Blake  <address@hidden>
36498
36499         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
36500
36501 2006-02-16  Simon Josefsson  <jas@extundo.com>
36502
36503         * modules/getaddrinfo (Depends-on): Add sys_socket.
36504
36505 2006-02-15  Simon Josefsson  <jas@extundo.com>
36506
36507         * build-aux/maint.mk: Add dsyntax-check rule.
36508
36509 2006-02-15  Eric Blake  <ebb9@byu.net>
36510
36511         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
36512         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
36513         'present but cannot compile' warnings on cygwin.
36514         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
36515         use ws2tcpip.h if sys/socket.h works.
36516         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
36517         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
36518
36519 2006-02-14  Simon Josefsson  <jas@extundo.com>
36520
36521         * modules/maintainer-makefile (Files): Rename.
36522
36523         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
36524         and (the local) Makefile.cfg to maint-cfg.mk.
36525
36526         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
36527         to the latter.
36528
36529         * modules/maintainer-makefile: New module.
36530
36531         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
36532         severaly stripped to make it possible to build it up from scratch
36533         with reliable tests.
36534
36535         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
36536         fixes to permit overriding the default actions when configure and
36537         makefile are not available.
36538
36539 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
36540
36541         Sync from coreutils.
36542         * modules/lstat (Depends-on): Don't depend on xalloc.
36543         (License): Change from GPL to LGPL, since this is now simply a
36544         replacement for a libc function.
36545
36546 2006-02-14  Jim Meyering  <jim@meyering.net>
36547
36548         Sync from coreutils.
36549
36550         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
36551         failure on deficient systems, and simplify gnulib lgpl dependencies.
36552         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
36553         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
36554
36555         * lib/xalloc-die.c: Remove unused definition of N_.
36556
36557 2006-02-14  Jim Meyering  <jim@meyering.net>
36558
36559         Sync from coreutils.
36560         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
36561         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
36562         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
36563         double-quote uses of that variable, to accommodate the rare case in
36564         which getmntent is available in none of the libraries checked.  This
36565         happens at least on FreeBSD 5.0.
36566
36567 2006-02-13  Simon Josefsson  <jas@extundo.com>
36568
36569         * gnulib-tool (Usage): Fix --import, from
36570         karl@freefriends.org (Karl Berry).
36571
36572 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
36573
36574         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
36575
36576 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
36577
36578         * lib/argp-namefrob.h: Restore changes accidentally lost during the
36579         "autoupdate" on 2005-12-12.
36580
36581 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
36582
36583         * modules/closeout (Depends-on): Remove atexit.
36584
36585 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
36586
36587         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
36588         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
36589
36590 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
36591
36592         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
36593         __EXTENSIONS__ if this causes compilation to fail.  Problem
36594         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
36595         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
36596
36597 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
36598
36599         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
36600         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
36601         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
36602         All uses changed.
36603
36604 2006-01-26  Simon Josefsson  <jas@extundo.com>
36605
36606         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
36607         prototype is visible on mingw32.
36608
36609         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
36610         for mingw32.
36611
36612         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
36613         mingw32).
36614
36615 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
36616
36617         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
36618         attempt to open for write; this always fails, at least on POSIX
36619         hosts.  This reinstates the 2006-01-09 change, which was
36620         inadvertently removed.
36621
36622 2006-01-26  Bruno Haible  <bruno@clisp.org>
36623
36624         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
36625         Reported by Paul Eggert.
36626
36627 2006-01-26  Bruno Haible  <bruno@clisp.org>
36628             Paul Eggert  <eggert@cs.ucla.edu>
36629
36630         * lib/stdbool_.h (_Bool)
36631         [(! (defined __cplusplus || defined __BEOS__)
36632           && !defined __GNUC__
36633           && !(defined __HP_cc || defined __xlc__
36634                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
36635                || defined __sgi))]:
36636         #define to signed char in these cases too; this simplifies
36637         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
36638         etc., separately) and makes it more conservative.
36639
36640 2006-01-25  Simon Josefsson  <jas@extundo.com>
36641
36642         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
36643         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
36644         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
36645
36646 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
36647
36648         * lib/argp-namefrob.h: Bugfix. Remove stray #
36649
36650 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
36651
36652         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
36653         so that we test the test.
36654         Check for yet another HP-UX cc bug involving *bool |= bool.
36655
36656 2006-01-25  Karl Berry  <karl@gnu.org>
36657
36658         * config/srclist.txt (vasnprintf.c): sync lost.
36659
36660 2006-01-25  Jim Meyering  <jim@meyering.net>
36661
36662         Sync from the stable (b5) branch of coreutils:
36663
36664         * lib/fts.c (fts_children): Don't let close() clobber errno from
36665         failed fchdir().
36666
36667         * lib/fts.c (fts_stat): When following a symlink-to-directory,
36668         don't necessarily interpret stat-fails+lstat-succeeds as indicating
36669         a dangling symlink.  That can also happen at least for ELOOP.
36670         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
36671         FYI, this bug predates the inclusion of fts.c in coreutils.
36672
36673         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
36674         in their own block, so pre-c99 compilers don't object.
36675
36676         Avoid the double-free (first in fts_read, second in fts_close) that
36677         would occur when an `active' directory is made inaccessible (e.g.,
36678         via chmod a-x) during a traversal.
36679         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
36680         before returning.  Reproduce this failure by
36681         mkdir -p a/b; cd a; chmod a-x . b
36682         Reported by Stavros Passas.
36683
36684 2006-01-25  Jim Meyering  <jim@meyering.net>
36685
36686         * lib/fileblocks.c: Remove more useless parentheses.
36687         * lib/readutmp.h: Likewise.
36688
36689 2006-01-25  Bruno Haible  <bruno@clisp.org>
36690
36691         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
36692         warnings.
36693         Reported by Paul Eggert.
36694
36695 2006-01-25  Bruno Haible  <bruno@clisp.org>
36696
36697         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
36698         rid of a trap command. For Solaris sh.
36699         Reported by Mark D. Baushke <mdb@gnu.org>.
36700
36701 2006-01-24  Simon Josefsson  <jas@extundo.com>
36702
36703         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
36704         Bruno.
36705
36706 2006-01-24  Karl Berry  <karl@gnu.org>
36707
36708         * config/srclist.txt (argp-namefrob.h): sync lost.
36709
36710 2006-01-24  Jim Meyering  <jim@meyering.net>
36711
36712         * modules/openat (Files): Add lib/intprops.h.
36713         From Mark D. Baushke.
36714
36715 2006-01-24  Jim Meyering  <jim@meyering.net>
36716
36717         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
36718         Reported by Mark D. Baushke.
36719
36720 2006-01-24  Jim Meyering  <jim@meyering.net>
36721
36722         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
36723
36724 2006-01-24  Bruno Haible  <bruno@clisp.org>
36725
36726         * modules/strnlen (Maintainer): Change from glibc to all.
36727
36728 2006-01-24  Bruno Haible  <bruno@clisp.org>
36729
36730         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
36731         Patch by Paul Eggert.
36732
36733 2006-01-24  Bruno Haible  <bruno@clisp.org>
36734
36735         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
36736         already has it.
36737         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
36738         2005-11-26.
36739
36740         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
36741         'signed char' to avoid problems with the built-in _Bool type.
36742         Reported by Paul Eggert on 2005-11-26.
36743
36744 2006-01-24  Bruno Haible  <bruno@clisp.org>
36745
36746         * gnulib-tool (func_import): Avoid constructing complicated sed
36747         expressions inside backquote.
36748         Report and solution by Mark D. Baushke <mdb@gnu.org>.
36749
36750 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
36751
36752         These changes imported from libc.
36753         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
36754         test and two separate function calls.
36755         * lib/strndup.c (__strndup): Add libc_hidden_def.
36756
36757 2006-01-23  Simon Josefsson  <jas@extundo.com>
36758
36759         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
36760         Remove the test_*_SOURCES variable: automake infers it by default.
36761         * modules/tls-tests: Likewise.
36762
36763 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
36764
36765         Work around porting bugs reported by Dieter in
36766         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
36767         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
36768         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
36769         Include "getopt.h" first, to check interface.
36770         (getenv): Declare only if defined HAVE_DECL_GETENV &&
36771         !HAVE_DECL_GETENV.
36772         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
36773         (__strndup): Revert to K&R-style function dfns, the glibc style.
36774         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
36775         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
36776         Include strnlen.h first, to get prototype properly.
36777         (strnlen): Renamed from __strnlen.
36778         Remove weak alias.
36779
36780 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
36781
36782         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
36783
36784 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
36785
36786         * config/srclist.txt: Adjust to reflect glibc reorganization.
36787         This affects only comments.
36788
36789 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
36790
36791          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
36792          Reported by Bruce Korb <bkorb@gnu.org>.
36793
36794 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
36795
36796         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
36797         to pacify gcc -Wswitch-default.
36798
36799 2006-01-22  Bruno Haible  <bruno@clisp.org>
36800
36801         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
36802         temporary buffer for sprintf, take into account the precision also
36803         for 'd', 'i', 'u', 'o', 'x', 'X'.
36804
36805 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
36806
36807         * modules/argp-tests: New module
36808         * tests/test-argp.c: New file
36809         * tests/test-argp-2.sh: New file
36810
36811 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
36812
36813         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
36814         (__argp_base_name): Removed
36815         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
36816         typo.
36817         (__argp_base_name): Provide macro definition or extern declaration
36818         depending on the configuration
36819
36820 2006-01-20  Simon Josefsson  <jas@extundo.com>
36821
36822         * modules/inet_ntop (Depends-on): Depend on sys_socket.
36823
36824 2006-01-20  Simon Josefsson  <jas@extundo.com>
36825
36826         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
36827
36828 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
36829
36830         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
36831         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
36832         Suggested by Bruno Haible.
36833
36834 2006-01-20  Karl Berry  <karl@gnu.org>
36835
36836         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
36837         until changes propagate, I guess.
36838
36839 2006-01-19  Simon Josefsson  <jas@extundo.com>
36840
36841         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
36842
36843 2006-01-19  Simon Josefsson  <jas@extundo.com>
36844
36845         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
36846
36847 2006-01-19  Simon Josefsson  <jas@extundo.com>
36848
36849         * gnulib-tool: Set check_PROGRAMS.
36850
36851         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
36852         modules/des-tests, modules/gc-arcfour-tests,
36853         modules/gc-arctwo-tests, modules/gc-des-tests,
36854         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
36855         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
36856         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
36857         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
36858         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
36859         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
36860         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
36861         test_*_SOURCES.
36862
36863 2006-01-18  Simon Josefsson  <jas@extundo.com>
36864
36865         * modules/socklen (Depends-on): Depend on sys_socket.
36866
36867 2006-01-18  Simon Josefsson  <jas@extundo.com>
36868
36869         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
36870         modules/des-tests, modules/gc-arcfour-tests,
36871         modules/gc-arctwo-tests, modules/gc-des-tests,
36872         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
36873         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
36874         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
36875         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
36876         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
36877         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
36878         $(EXEEXT) to automake TESTS variable, for mingw32.
36879
36880 2006-01-17  Simon Josefsson  <jas@extundo.com>
36881
36882         * modules/socklen (Include): Need sys/socket.h.
36883
36884 2006-01-17  Bruno Haible  <bruno@clisp.org>
36885
36886         * modules/ssize_t (Include): Add <sys/types.h>.
36887
36888 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
36889
36890         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
36891         it's not portable and it doesn't work with cross-compiles.
36892         Problem reported by Bruno Haible.  Fix missing-$ typo in
36893         'test "gl_cv_ignore_unused_libraries" ...' that prevented
36894         -zignore from being used with Sun's C compiler.
36895
36896 2006-01-12  Simon Josefsson  <jas@extundo.com>
36897
36898         * lib/base64.c: Fix warning, reported by Bruno Haible
36899         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
36900
36901 2006-01-12  Bruno Haible  <bruno@clisp.org>
36902
36903         * modules/ldd: New file.
36904         * build-aux/ldd.sh.in: New file.
36905         * MODULES.html.sh (Support for building libraries and executables): Add
36906         ldd.
36907
36908 2006-01-12  Bruno Haible  <bruno@clisp.org>
36909
36910         * m4/ldd.m4: New file.
36911
36912 2006-01-12  Bruno Haible  <bruno@clisp.org>
36913
36914         * gnulib-tool (func_import, func_create_testdir): Don't go into an
36915         endless loop while replacing $auxdir with build-aux.
36916
36917 2006-01-11  Simon Josefsson  <jas@extundo.com>
36918
36919         * lib/stdint_.h (SIZE_MAX): Add missing (.
36920
36921 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
36922
36923         Sync from coreutils.
36924         * lib/md5.c: Fix commentary typos.
36925         (alignof, UNALIGNED_P): No need for a GCC-specific version.
36926         * lib/md5.h (__attribute__): Remove; unused.
36927         * lib/sha1.c: Fix commentary to match md5 better.
36928         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
36929         so that we don't need to worry about alignment.  All uses changed.
36930         This merges the 2005-10-28 md5 change into sha1.
36931
36932 2006-01-11  Jim Meyering  <jim@meyering.net>
36933
36934         Sync from coreutils.
36935         * lib/md5.c (OP): Fix spacing.
36936
36937 2006-01-11  Bruno Haible  <bruno@clisp.org>
36938
36939         Ensure automatic ordering between gl_LOCK and gl_ARGP.
36940         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
36941         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
36942
36943 2006-01-11  Bruno Haible  <bruno@clisp.org>
36944
36945         Ensure automatic ordering between gl_LOCK and gl_ARGP.
36946         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
36947         the "early" section as well.
36948
36949 2006-01-11  Bruno Haible  <bruno@clisp.org>
36950
36951         Avoid "ar: no archive members specified" error on MacOS X.
36952         * gnulib-tool (func_modules_add_dummy): New function.
36953         (func_import, func_create_testdir): Invoke it.
36954
36955 2006-01-11  Bruno Haible  <bruno@clisp.org>
36956
36957         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
36958         with $auxdir in AC_CONFIG_FILES statements.
36959
36960 2006-01-11  Bruno Haible  <bruno@clisp.org>
36961
36962         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
36963         Initialize also noinst_HEADERS to empty.
36964
36965 2006-01-11  Bruno Haible  <bruno@clisp.org>
36966
36967         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
36968         variables.
36969         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
36970         autoreconf.
36971
36972 2006-01-11  Bruno Haible  <bruno@clisp.org>
36973
36974         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
36975         overridable by the user.
36976         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36977
36978 2006-01-10  Simon Josefsson  <jas@extundo.com>
36979
36980         * modules/sys_socket: New file.
36981
36982 2006-01-10  Simon Josefsson  <jas@extundo.com>
36983
36984         * m4/sys_socket_h.m4: New file.
36985
36986 2006-01-10  Simon Josefsson  <jas@extundo.com>
36987
36988         * lib/socket_.h: New file.
36989
36990 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
36991
36992         * modules/readutmp (Maintainer): Add myself.
36993
36994 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
36995
36996         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
36997         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
36998         People who are still concerned with buggy memcmp implementations
36999         can invoke gl_FUNC_MEMCMP themselves.
37000
37001 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
37002
37003         * lib/regex_internal.h (BITSET_WORD_BITS):
37004         Work around a bug in 64-bit PGC (before version 6.1-2), where the
37005         preprocessor mishandles large unsigned values as if they were signed.
37006         Problem reported by Claudio Fontana in
37007         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
37008
37009 2006-01-10  Jim Meyering  <jim@meyering.net>
37010
37011         Avoid the double-free (first in fts_read, second in fts_close) that
37012         would occur when an `active' directory is made inaccessible (e.g.,
37013         via chmod a-x) during a traversal.
37014         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
37015         before returning.  Reproduce this failure by
37016         mkdir -p a/b; cd a; chmod a-x . b
37017         Reported by Stavros Passas.
37018
37019         Sync from coreutils.
37020         * lib/sha1.c: Tweak grammar in a comment.
37021
37022 2006-01-10  Jim Meyering  <jim@meyering.net>
37023
37024         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
37025         Patch by Joerg Sonnenberger.
37026
37027 2006-01-10  Bruno Haible  <bruno@clisp.org>
37028
37029         * modules/readutmp: Depend on module free.
37030         * modules/strtok_r: Depend on module restrict.
37031
37032 2006-01-10  Bruno Haible  <bruno@clisp.org>
37033
37034         * modules/gettext (configure.ac): Add an invocation of
37035         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
37036
37037 2006-01-10  Bruno Haible  <bruno@clisp.org>
37038
37039         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
37040         Reported by Werner Lemberg <wl@gnu.org>.
37041
37042 2006-01-10  Bruno Haible  <bruno@clisp.org>
37043
37044         * lib/localcharset.c: Update from GNU gettext.
37045
37046 2006-01-10  Bruno Haible  <bruno@clisp.org>
37047
37048         * lib/argp.h (__const): Remove macro. Use const instead.
37049         * lib/argp-fmtstream.h (__const): Likewise.
37050         * lib/glob_.h (__const): Remove macro.
37051         * lib/glob-libc.h: Use const instead of __const.
37052
37053 2006-01-10  Bruno Haible  <bruno@clisp.org>
37054
37055         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
37056         variable.
37057         Needed to avoid an automake error regarding the 'gettext' module.
37058
37059 2006-01-09  Simon Josefsson  <jas@extundo.com>
37060
37061         * modules/inet_ntop (Depends-on): Add restrict.
37062
37063 2006-01-09  Simon Josefsson  <jas@extundo.com>
37064
37065         * modules/gc-rijndael-tests (License): Put under LGPL.
37066
37067         * modules/gc-des-tests (License): Likewise.
37068
37069         * modules/gc-arcfour-tests (License): Likewise.
37070
37071         * modules/gc-arctwo-tests (License): Likewise.
37072
37073         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
37074
37075         * modules/gc-hmac-sha1-tests (Files): Likewise.
37076
37077         * modules/gc-hmac-md5-tests (License): Likewise.
37078
37079         * modules/gc-sha1-tests (License): Likewise.
37080
37081         * modules/gc-md5-tests (License): Likewise.
37082
37083         * modules/gc-md4-tests (License): Likewise.
37084
37085         * modules/gc-md2-tests (License): Likewise.
37086
37087         * modules/gc-tests (License): Likewise.
37088
37089         * modules/des-tests (License): Likewise.
37090
37091         * modules/md4-tests (License): Likewise.
37092
37093         * modules/md2-tests (License): Likewise.
37094
37095 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
37096
37097         Sync from coreutils:
37098
37099         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
37100         * modules/lib-ignore: New file.
37101         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
37102         chdir-safer.m4, lchmod.m4.
37103         * modules/openat: Add mkdirat.c, openat-priv.h.
37104
37105 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
37106
37107         Sync from coreutils.
37108         * m4/lib-ignore.m4: New file.
37109         * m4/lchmod.m4: New file.
37110
37111 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
37112
37113         Sync from coreutils.
37114         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
37115         for write access: POSIX says that must fail.
37116         * lib/fts.c (diropen): Likewise.
37117         * lib/save-cwd.c (save_cwd): Likewise.
37118         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
37119         well, for minor improvements on hosts that lack O_DIRECTORY.
37120         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
37121         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
37122         Fall back on chown if open failed with EACCES.
37123
37124         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
37125         Report an error at compile-time if only a 1-second nominal clock
37126         resolution is found.
37127
37128         * lib/lchmod.h: New file.
37129         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
37130         (make_dir_parents): Use lchown rather than chown, and
37131         lchmod rather than chmod.
37132
37133         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
37134         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
37135         "proc" reported by n0dalus.
37136
37137         * lib/mountlist.c: Include <limits.h>.
37138         (dev_from_mount_options)
37139         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
37140         New function.  It no longer assumes "dev=" has the System V meaning
37141         on Linux (since it doesn't).  It also parses "dev=" more carefully.
37142         (read_file_system_list)
37143         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
37144         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
37145         dev= in that case.
37146
37147         * lib/posixtm.h (PDS_PRE_2000): New macro.
37148         * lib/posixtm.c (year): Arg is now syntax_bits rather than
37149         allow_century.  All usages changed.  Reject dates outside the range
37150         1969-1999 if PDS_PRE_2000 is used.
37151
37152 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
37153
37154         Sync from coreutils.
37155         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
37156         (Time of day items): Mention the possibility of leap seconds.
37157         Problem reported by Dr. David Alan Gilbert.
37158
37159 2006-01-09  Jim Meyering  <jim@meyering.net>
37160
37161         Sync from coreutils.
37162
37163         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
37164
37165         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
37166
37167         * lib/modechange.c (mode_compile): Reject an invalid mode string
37168         that starts with an octal digit.  From Andreas Gruenbacher.
37169
37170         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
37171         and dup to open_safer and dup_safer, respectively.
37172         (openat_permissive): Fix typo in comment.
37173
37174         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
37175         "gettext.h"; either no longer needed or are guaranteed by openat.h.
37176         (_): Remove; no longer needed.
37177         (openat): Renamed from rpl_openat; no need for rpl_openat
37178         since openat.h renames openat for us.
37179         Replace most of the body with a call to openat_permissive,
37180         to avoid duplicate code.
37181         Port to (probably hypothetical) environments were mode_t is
37182         wider than int.
37183         (openat_permissive): Require mode arg, so that we can check
37184         types better.  Put it just after flags.  Change cwd failure
37185         indicator from pointer-to-bool to pointer-to-errno-value.
37186         All callers changed.
37187         Invoke openat_save_fail and/or openat_restore_fail if
37188         cwd_errno is null, so that openat can call us.
37189         (openat_permissive, fdopendir, fstatat, unlinkat):
37190         Simplify errno handling to avoid some duplicate code,
37191         as it's OK to set errno on success.
37192         * lib/openat.h: Revamp code so that function macros depend on
37193         __OPENAT_PREFIX only, not also on AT_FDCWD.
37194         (openat_ro): Remove.  Caller changed to use openat_permissive.
37195         (openat_permissive): Now a macro, if not a function.
37196         (openat_restore_fail, openat_save_fail): Now always functions,
37197         since mkdirat needs them even if __OPENAT_PREFIX is defined.
37198
37199         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
37200         and openat.c.
37201         * lib/mkdirat.c: Include openat-priv.h.
37202         Remove definitions of macros defined therein.
37203         * lib/openat.c: Likewise.
37204
37205         * lib/mkdirat.c (mkdirat): New file and function.
37206         * lib/openat.h (mkdirat): Declare.
37207
37208         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
37209
37210         * lib/openat.h (openat_permissive): Declare.
37211         (openat_ro): Define.
37212
37213         * lib/openat.c (EXPECTED_ERRNO): New macro.
37214         (openat_permissive): New function -- used in remove.c rewrite.
37215         (all functions): Set errno just before returning, only if there
37216         was an actual failure.
37217         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
37218
37219         Emulate openat-family functions using Linux's procfs, if possible.
37220         Idea and some code based on Ulrich Drepper's glibc changes.
37221
37222         * lib/openat.c: (BUILD_PROC_NAME): New macro.
37223         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
37224         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
37225         before falling back on save_cwd and restore_cwd.
37226         (fdopendir, fstatat, unlinkat): Likewise.
37227
37228         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
37229         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
37230
37231         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
37232         as second argument to va_arg.  Otherwise, some versions of gcc
37233         warn that `if this code is reached, the program will abort'.
37234
37235 2006-01-09  Jim Meyering  <jim@meyering.net>
37236
37237         Sync from coreutils.
37238         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
37239         Require openat-priv.h.
37240
37241 2006-01-09  Bruno Haible  <bruno@clisp.org>
37242
37243         * modules/strnlen (Include): Use strnlen.h.
37244
37245 2006-01-09  Bruno Haible  <bruno@clisp.org>
37246
37247         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
37248
37249 2006-01-09  Bruno Haible  <bruno@clisp.org>
37250
37251         * lib/sysexit_.h (EX_OK): New macro.
37252         Suggested by Martin Lambers <marlam@marlam.de>.
37253
37254 2006-01-09  Bruno Haible  <bruno@clisp.org>
37255
37256         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
37257         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
37258
37259 2006-01-09  Bruno Haible  <bruno@clisp.org>
37260
37261         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
37262         numbers.
37263
37264 2006-01-09  Bruno Haible  <bruno@clisp.org>
37265
37266         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
37267         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
37268         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
37269         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
37270
37271 2006-01-09  Bruno Haible  <bruno@clisp.org>
37272
37273         * build-aux/javacomp.sh.in: New file, moved from lib/.
37274         * modules/javacomp-script (Files): Update.
37275         (configure.ac): Add AC_CONFIG_FILES invocation.
37276         (EXTRA_DIST): Remove variable.
37277
37278         * build-aux/javaexec.sh.in: New file, moved from lib/.
37279         * modules/javaexec (Files): Update.
37280         (configure.ac): Add AC_CONFIG_FILES invocation.
37281         (EXTRA_DIST): Remove javaexec.sh.in.
37282
37283         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
37284         * modules/csharpcomp-script (Files): Update.
37285         (configure.ac): Add AC_CONFIG_FILES invocation.
37286         (EXTRA_DIST): Remove variable.
37287
37288         * build-aux/csharpexec.sh.in: New file, moved from lib/.
37289         * modules/csharpexec (Files): Update.
37290         (configure.ac): Add AC_CONFIG_FILES invocation.
37291         (EXTRA_DIST): Remove csharpexec.sh.in.
37292
37293 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
37294
37295         Sync from coreutils.
37296
37297         Add POSIX ACL support
37298         * lib/acl.h (copy_acl, set_acl): Add declarations.
37299         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
37300         systems other than Linux.
37301         (chmod_or_fchmod): New function: use fchmod when possible,
37302         and chmod otherwise.
37303         (file_has_acl): Add a POSIX ACL implementation, with a
37304         Linux-specific subcase.
37305         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
37306         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
37307         acls are unsupported.
37308         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
37309         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
37310         are unsupported.
37311
37312 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
37313
37314         Sync from coreutils.
37315         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
37316
37317 2006-01-07  Bruno Haible  <bruno@clisp.org>
37318
37319         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
37320         gl_EARLY.
37321
37322 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
37323
37324         * lib/strftime.c (tzname): Don't declare if it is already #defined.
37325         Problem reported for Mingw by Mark Junker.
37326
37327 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
37328
37329         * README: Gnulib normally doesn't generate a tarball.
37330
37331 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
37332
37333         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
37334         long int, not int, for nanosecond counts, so that people who are
37335         used to POSIX struct timespec won't be surprised.  Reported by Jim
37336         Meyering.
37337
37338 2005-12-28  Bruno Haible  <bruno@clisp.org>
37339
37340         * build-aux/config.rpath: Update from GNU gettext.
37341
37342 2005-12-16  Jim Meyering  <jim@meyering.net>
37343
37344         * modules/fprintftime: New module.
37345         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
37346
37347 2005-12-16  Jim Meyering  <jim@meyering.net>
37348
37349         * m4/fprintftime.m4: New file.
37350
37351 2005-12-16  Jim Meyering  <jim@meyering.net>
37352
37353         * lib/fprintftime.c, lib/fprintftime.h: New files.
37354
37355 2005-12-15  Simon Josefsson  <jas@extundo.com>
37356
37357         * modules/socklen (configure.ac): Fix M4 macro name, to align with
37358         new m4/socklen.m4.
37359
37360 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
37361
37362         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
37363         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
37364
37365 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
37366
37367         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
37368         * lib/argp-help.c (fill_in_uparams): Check if the constructed
37369         struct uparams is valid. Fall back to the default values if it is
37370         not.
37371
37372 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
37373
37374         * modules/argp (Files): Add argp-pin.c
37375         (Depends-on): dirname
37376         (lib_SOURCES): Add argp-pin.c
37377
37378 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
37379
37380         * m4/argp.m4:  Check if program_invocation_name and
37381         program_invocation_short_name are declared and define appropriate
37382         macros if they are not.
37383
37384 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
37385
37386         * lib/argp-help.c (__argp_base_name): New function
37387         (__argp_short_program_name): Rewrite using __argp_base_name
37388         * lib/argp-namefrob.h: Define program_invocation_name and
37389         program_invocation_short_name if requested
37390         (__argp_base_name): Add prototype
37391         * lib/argp-parse.c (argp_def): Use gettext wrappers
37392         (argp_default_parser): Use __argp_base_name
37393         * lib/argp-pin.c: New file. Defines program_invocation_name and
37394         program_invocation_short_name on systems that lack them.
37395
37396 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
37397
37398         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
37399         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
37400         porting problem reported by Georg Schwarz in
37401         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
37402
37403 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
37404
37405         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
37406         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
37407         porting problem reported by Georg Schwarz in
37408         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
37409
37410 2005-12-05  Bruno Haible  <bruno@clisp.org>
37411
37412         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
37413         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
37414         Reported by Mark Junker <mjscod@gmx.de>.
37415
37416 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
37417
37418         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
37419         Use implementation from Albert Chin, with some
37420         comments/corrections by Stepan Kasal and myself.
37421
37422 2005-12-02  Bruno Haible  <bruno@clisp.org>
37423
37424         * gnulib-tool (func_import): Accept GPLed build tool modules when
37425         --lgpl is given.
37426         * modules/csharpcomp-script: New file.
37427         * modules/csharpcomp: Depend on it.
37428         * modules/javacomp-script: New file.
37429         * modules/javacomp: Depend on it.
37430         Suggested by Simon Josefsson.
37431
37432 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
37433
37434         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
37435         statement, to work around an HP-UX 10.20 compiler bug reported by
37436         Peter O'Gorman.
37437
37438 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
37439
37440         * modules/savedir (Depends-on): Add openat.
37441
37442 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
37443
37444         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
37445         (uintmax_t) [defined uintmax_t]: Do not declare.
37446         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
37447         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
37448         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
37449         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
37450         sake of portability to weird hosts that C allows (though we don't
37451         know of any practical examples).
37452
37453         * lib/savedir.h (fdsavedir): New decl.
37454         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
37455         contains most of the former guts of savedir.
37456         (savedir): Use savedirstream.
37457         Include "openat.h".
37458
37459 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
37460
37461         * modules/obstack (Files): Add m4/ulonglong.m4.
37462         Problem reported by Davide Angelocola.
37463
37464 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
37465
37466         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
37467         coreutils no longer futzes with rounding modes.
37468
37469 2005-11-14  Jim Meyering  <jim@meyering.net>
37470
37471         * lib/mkstemp-safer.c: Include <config.h>, required for possible
37472         replacement of mkstemp.
37473
37474 2005-11-10  Simon Josefsson  <jas@extundo.com>
37475
37476         * lib/readline.c: Remove EOL.
37477
37478 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
37479
37480         * modules/gethrxtime (Depends-on): Add gettime.
37481
37482 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
37483
37484         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
37485         or gettimeofday; no longer needed.
37486
37487 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
37488
37489         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
37490         time business.
37491         (gethrxtime) [! (HAVE_NANOUPTIME
37492         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
37493         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
37494         our own approximation.
37495
37496 2005-11-08  Eric Blake  <ebb9@byu.net>
37497
37498         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
37499
37500 2005-11-08  Eric Blake  <ebb9@byu.net>
37501
37502         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
37503
37504 2005-11-04  Bruno Haible  <bruno@clisp.org>
37505
37506         * gnulib-tool: Implement --update mode.
37507
37508 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
37509
37510         Fix porting problem reported by Theodoros V. Kalamatianos.
37511         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
37512         Don't assume that futimes failing means we must fail.
37513
37514 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
37515
37516         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
37517         variables to suggest the intended function of the PATH_MAX check.
37518
37519 2005-10-30  Kean Johnston  <jkj@sco.com>
37520
37521         Trivial changes to support SCO systems.
37522         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
37523         as PATH_MAX.
37524         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
37525         where __ptr is null when no I/O is pending.
37526
37527 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
37528
37529         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
37530         leave errno alone.  Problem reported by Dmitry V. Levin.
37531
37532 2005-10-28  Simon Josefsson  <jas@extundo.com>
37533
37534         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
37535         Test more.
37536
37537         * tests/test-gc-md2.c, tests/test-md2.c: New files.
37538
37539         * modules/md2, modules/md2-tests: New files.
37540
37541 2005-10-28  Simon Josefsson  <jas@extundo.com>
37542
37543         * m4/inet_ntop.m4: More tests.
37544
37545         * m4/gc-md2.m4, md2.m4: New file.
37546
37547 2005-10-28  Simon Josefsson  <jas@extundo.com>
37548
37549         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
37550         "restrict" keywords, as per POSIX.  Protect the function
37551         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
37552         Don't use K&R prototypes.  Check the sprintf return values.
37553         Re-define EAFNOSUPPORT if not present.  Indent.
37554
37555         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
37556         suggested by Bruno Haible <bruno@clisp.org>.
37557
37558         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
37559
37560         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
37561
37562         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
37563         libgcrypt).
37564
37565         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
37566
37567         * lib/md2.h, lib/md2.c: New files.
37568
37569 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
37570
37571         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
37572         errno alone.  Problem reported by Frederic Jolliton.
37573
37574 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
37575
37576         * modules/verify (License): Change from GPL to LGPL.  This is a
37577         tiny module and there are apparently near-equivalents that are
37578         under the BSD license.
37579
37580 2005-10-24  Simon Josefsson  <jas@extundo.com>
37581
37582         * modules/sha1: Relicense to LGPL.
37583
37584 2005-10-24  Simon Josefsson  <jas@extundo.com>
37585
37586         * lib/md4.h: Shrink buffer size, now that we changed the type.
37587
37588 2005-10-23  Simon Josefsson  <jas@extundo.com>
37589
37590         * gnulib-tool (func_import): Fix --tests-base.
37591
37592 2005-10-22  Simon Josefsson  <jas@extundo.com>
37593
37594         * modules/arcfour (Depends-on): Need stdint.
37595
37596 2005-10-22  Simon Josefsson  <jas@extundo.com>
37597
37598         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
37599         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
37600
37601 2005-10-22  Simon Josefsson  <jas@extundo.com>
37602
37603         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
37604         suggested by Bruno Haible <bruno@clisp.org>.
37605
37606 2005-10-22  Simon Josefsson  <jas@extundo.com>
37607
37608         * lib/crc.h: Include stddef.h, for size_t.
37609
37610 2005-10-22  Simon Josefsson  <jas@extundo.com>
37611
37612         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
37613         arcfour_context struct (simplify test vector testing in GNU
37614         Shishi).
37615
37616 2005-10-21  Simon Josefsson  <jas@extundo.com>
37617
37618         * modules/des, modules/des-tests: New files.
37619
37620         * modules/gc-des, modules/gc-des-tests: New files.
37621
37622         * tests/test-des.c, tests/test-gc-des.c: New file.
37623
37624 2005-10-21  Simon Josefsson  <jas@extundo.com>
37625
37626         * modules/arctwo, modules/arctwo-tests: New files.
37627
37628         * tests/test-arctwo.c: New file.
37629
37630         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
37631
37632         * tests/test-gc-arctwo.c: New file.
37633
37634 2005-10-21  Simon Josefsson  <jas@extundo.com>
37635
37636         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
37637         Bruno Haible <bruno@clisp.org>.
37638
37639         * m4/gc-des.m4: New file.
37640
37641 2005-10-21  Simon Josefsson  <jas@extundo.com>
37642
37643         * m4/arctwo.m4: New file.
37644
37645         * m4/gc-arctwo.m4: New file.
37646
37647 2005-10-21  Simon Josefsson  <jas@extundo.com>
37648
37649         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
37650         block.
37651
37652 2005-10-21  Simon Josefsson  <jas@extundo.com>
37653
37654         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
37655         <bruno@clisp.org>.
37656
37657         * lib/hmac-sha1.c (hmac_sha1): Likewise.
37658
37659         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
37660         Bruno Haible <bruno@clisp.org>.
37661
37662         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
37663         <bruno@clisp.org>.
37664
37665 2005-10-21  Simon Josefsson  <jas@extundo.com>
37666
37667         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
37668
37669 2005-10-21  Simon Josefsson  <jas@extundo.com>
37670
37671         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
37672
37673 2005-10-21  Simon Josefsson  <jas@extundo.com>
37674
37675         * lib/des.h, lib/des.c: New files.
37676
37677         * lib/gc-gnulib.c: Support DES.c
37678
37679 2005-10-21  Simon Josefsson  <jas@extundo.com>
37680
37681         * lib/arctwo.h, lib/arctwo.c: New files.
37682
37683         * lib/gc-gnulib.c: Support ARCTWO.
37684
37685 2005-10-21  Simon Josefsson  <jas@extundo.com>
37686
37687         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
37688         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
37689
37690 2005-10-21  Simon Josefsson  <jas@extundo.com>
37691
37692         * gnulib-tool (func_import, func_create_testdir): Define automake
37693         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
37694         Makefile.am snippet),
37695         suggested by Bruno Haible <bruno@clisp.org>.
37696
37697         * modules/gc (Makefile.am): Use it.
37698
37699 2005-10-21  Bruno Haible  <bruno@clisp.org>
37700
37701         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
37702         patch.
37703
37704 2005-10-19  Simon Josefsson  <jas@extundo.com>
37705
37706         * tests/test-gc-rijndael.c: New file.
37707
37708         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
37709
37710 2005-10-19  Simon Josefsson  <jas@extundo.com>
37711
37712         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
37713         interface too.
37714
37715 2005-10-19  Simon Josefsson  <jas@extundo.com>
37716
37717         * tests/test-gc-arcfour.c: New file.
37718
37719         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
37720
37721 2005-10-19  Simon Josefsson  <jas@extundo.com>
37722
37723         * modules/gc-md4, modules/gc-md4-tests: New file.
37724
37725         * tests/test-gc-md4.c: New file.
37726
37727 2005-10-19  Simon Josefsson  <jas@extundo.com>
37728
37729         * m4/gc-md4.m4: New file.
37730
37731 2005-10-19  Simon Josefsson  <jas@extundo.com>
37732
37733         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
37734         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
37735         <kasal@ucw.cz>.
37736
37737 2005-10-19  Simon Josefsson  <jas@extundo.com>
37738
37739         * m4/gc-arcfour.m4: New file.
37740
37741         * m4/gc-rijndael.m4: New file.
37742
37743 2005-10-19  Simon Josefsson  <jas@extundo.com>
37744
37745         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
37746
37747 2005-10-19  Simon Josefsson  <jas@extundo.com>
37748
37749         * lib/gc-gnulib.c: Support ARCFOUR.
37750
37751 2005-10-19  Simon Josefsson  <jas@extundo.com>
37752
37753         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
37754         support.
37755
37756         * lib/gc.h: Add ECB enum type.
37757
37758         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
37759
37760 2005-10-18  Simon Josefsson  <jas@extundo.com>
37761
37762         * tests/test-md5.c: New file.
37763
37764         * modules/md5-tests: New file.
37765
37766 2005-10-18  Simon Josefsson  <jas@extundo.com>
37767
37768         * tests/test-md4.c: New file.
37769
37770         * modules/md4, modules/md4-tests: New files.
37771
37772 2005-10-18  Simon Josefsson  <jas@extundo.com>
37773
37774         * m4/md4.m4: New file.
37775
37776 2005-10-18  Simon Josefsson  <jas@extundo.com>
37777
37778         * lib/md4.h, lib/md4.c: New files, based on md5.?.
37779
37780 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
37781
37782         * gnulib-tool (func_create_testdir): Omit the second check whether
37783         BUILT_SOURCES in nonempty.
37784
37785 2005-10-17  Simon Josefsson  <jas@extundo.com>
37786
37787         * tests/test-rijndael.c: New file.
37788
37789 2005-10-17  Simon Josefsson  <jas@extundo.com>
37790
37791         * modules/sha1: Depend on stdint instead of md5.
37792
37793         * modules/md5: Depend on stdint, remove uint32_t.
37794
37795 2005-10-17  Simon Josefsson  <jas@extundo.com>
37796
37797         * modules/gc-sha1-tests: New file.
37798
37799         * tests/test-gc-sha1.c: New file.
37800
37801 2005-10-17  Simon Josefsson  <jas@extundo.com>
37802
37803         * m4/md5.m4: Remove call to uint32_t.m4.
37804
37805 2005-10-17  Simon Josefsson  <jas@extundo.com>
37806
37807         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
37808
37809         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
37810         md5.h.
37811
37812         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
37813
37814         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
37815
37816 2005-10-17  Simon Josefsson  <jas@extundo.com>
37817
37818         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
37819
37820 2005-10-17  Simon Josefsson  <jas@extundo.com>
37821
37822         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
37823
37824 2005-10-17  Simon Josefsson  <jas@extundo.com>
37825
37826         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
37827
37828         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
37829
37830 2005-10-17  Bruno Haible  <bruno@clisp.org>
37831
37832         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
37833         that it can also be used in a test.
37834
37835 2005-10-16  Bruno Haible  <bruno@clisp.org>
37836
37837         * gnulib-tool (func_emit_tests_Makefile_am): Also define
37838         TESTS_ENVIRONMENT, so that individual tests can augment it.
37839
37840         * gnulib-tool (func_create_testdir): Use an intermediate target for
37841         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
37842         macros, like $(ALLOCA_H), which cannot be passed through the command
37843         line.
37844
37845 2005-10-15  Simon Josefsson  <jas@extundo.com>
37846
37847         * modules/rijndael-tests: New file.
37848
37849         * modules/rijndael: New file.
37850
37851 2005-10-15  Simon Josefsson  <jas@extundo.com>
37852
37853         * m4/rijndael.m4: New file.
37854
37855 2005-10-15  Simon Josefsson  <jas@extundo.com>
37856
37857         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
37858
37859         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
37860
37861 2005-10-14  Simon Josefsson  <jas@extundo.com>
37862
37863         * tests/test-arcfour.c: New file.
37864
37865         * modules/arcfour, modules/arcfour-tests: New files.
37866
37867 2005-10-14  Simon Josefsson  <jas@extundo.com>
37868
37869         * m4/arcfour.m4: New file.
37870
37871 2005-10-14  Simon Josefsson  <jas@extundo.com>
37872
37873         * lib/arcfour.h, lib/arcfour.c: New files.
37874
37875 2005-10-14  Roland McGrath  <roland@redhat.com>
37876
37877         Import from libc.  [BZ #1331]
37878         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
37879         macro argument.
37880         Reported by Matej Vela <vela@debian.org>.
37881
37882 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
37883
37884         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
37885         include <wchar.h>; no longer needed.
37886
37887 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
37888
37889         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
37890
37891 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
37892         and  Ulrich Drepper  <drepper@redhat.com>
37893
37894         Import from libc.
37895         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
37896         instead of inline stream orientation test and two separate
37897         function calls.  Pay no attention to USE_IN_LIBIO.
37898
37899 2005-10-13  Simon Josefsson  <jas@extundo.com>
37900
37901         * modules/gc-hmac-md5-tests: New file.
37902
37903         * tests/test-gc-hmac-sha1.c: New file.
37904
37905         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
37906
37907         * modules/gc-hmac-md5-tests: New file.
37908
37909         * tests/test-gc-md5.c: New file.
37910
37911         * modules/gc-md5-tests: New file.
37912
37913 2005-10-13  Simon Josefsson  <jas@extundo.com>
37914
37915         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
37916         Move memory allocation outside of loop.
37917
37918 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
37919
37920         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
37921         intermediate directory is in a read-only file system.  Problem
37922         reported by Eric Blake.
37923
37924 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
37925
37926         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
37927
37928 2005-10-12  Simon Josefsson  <jas@extundo.com>
37929
37930         * tests/test-hmac-sha1.c: New file.
37931
37932         * modules/hmac-sha1-tests: New file.
37933
37934         * modules/hmac-sha1: New file.
37935
37936 2005-10-12  Simon Josefsson  <jas@extundo.com>
37937
37938         * modules/gc-sha1: New file.
37939
37940 2005-10-12  Simon Josefsson  <jas@extundo.com>
37941
37942         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
37943
37944         * tests/test-gc-pbkdf2-sha1.c: New file.
37945
37946 2005-10-12  Simon Josefsson  <jas@extundo.com>
37947
37948         * modules/gc-md5, modules/gc-hmac-md5: New files.
37949
37950         * modules/gc (Files): Remove md5, memxor and hmac files.
37951
37952 2005-10-12  Simon Josefsson  <jas@extundo.com>
37953
37954         * m4/gc-pbkdf2-sha1.m4: New file.
37955
37956         * m4/gc-hmac-sha1.m4: New file.
37957
37958         * m4/gc-sha1: New file.
37959
37960         * m4/hmac-sha1.m4: New file.
37961
37962 2005-10-12  Simon Josefsson  <jas@extundo.com>
37963
37964         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
37965
37966         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
37967
37968 2005-10-12  Simon Josefsson  <jas@extundo.com>
37969
37970         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
37971         suggested by Bruno Haible <bruno@clisp.org>.
37972
37973 2005-10-12  Simon Josefsson  <jas@extundo.com>
37974
37975         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
37976
37977 2005-10-12  Simon Josefsson  <jas@extundo.com>
37978
37979         * lib/gc-pbkdf2-sha1.c: New file.
37980
37981         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
37982
37983 2005-10-12  Simon Josefsson  <jas@extundo.com>
37984
37985         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
37986
37987         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
37988
37989 2005-10-12  Simon Josefsson  <jas@extundo.com>
37990
37991         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
37992         GC_USE_HMAC_MD5, respectively.
37993
37994         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
37995         (gc_md5): Fix typo.
37996
37997         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
37998
37999         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
38000
38001         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
38002
38003 2005-10-12  Bruno Haible  <bruno@clisp.org>
38004
38005         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
38006         Reported by Stepan Kasal <kasal@ucw.cz>.
38007
38008 2005-10-11  Simon Josefsson  <jas@extundo.com>
38009
38010         * tests/test-crc.c: New file.
38011
38012         * modules/crc, modules/crc-tests: New files.
38013
38014 2005-10-11  Simon Josefsson  <jas@extundo.com>
38015
38016         * m4/crc.m4: New file.
38017
38018 2005-10-11  Simon Josefsson  <jas@extundo.com>
38019
38020         * lib/gc.h: Add gc_hash and gc_hash_buffer.
38021
38022         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
38023
38024         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
38025
38026 2005-10-11  Simon Josefsson  <jas@extundo.com>
38027
38028         * lib/crc.h, lib/crc.c: New files.
38029
38030         * lib/gc.h (gc_hash_buffer): Add doc.
38031
38032 2005-10-11  Bruno Haible  <bruno@clisp.org>
38033
38034         * modules/c-strcasestr: New file.
38035         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
38036
38037 2005-10-11  Bruno Haible  <bruno@clisp.org>
38038
38039         * modules/c-strcase: New file.
38040         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
38041
38042 2005-10-11  Bruno Haible  <bruno@clisp.org>
38043
38044         * lib/strcasecmp.c: Include limits.h.
38045         (strcasecmp): Avoid integer overflow on exotic platforms.
38046         * lib/strncasecmp.c: Include limits.h.
38047         (strncasecmp): Avoid integer overflow on exotic platforms.
38048         Reported by Paul Eggert.
38049
38050 2005-10-11  Bruno Haible  <bruno@clisp.org>
38051
38052         * lib/c-strcasestr.h: New file, from GNU gettext.
38053         * lib/c-strcasestr.c: New file, from GNU gettext.
38054
38055 2005-10-11  Bruno Haible  <bruno@clisp.org>
38056
38057         * lib/c-strcase.h: New file, from GNU gettext.
38058         * lib/c-strcasecmp.c: New file, from GNU gettext.
38059         * lib/c-strncasecmp.c: New file, from GNU gettext.
38060
38061 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
38062
38063         * modules/mempcpy (License): GPL -> LGPL.
38064         * modules/strchrnul (License): Likewise.
38065         * modules/sysexits (License): Likewise.
38066
38067 2005-10-08  Simon Josefsson  <jas@extundo.com>
38068
38069         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
38070
38071 2005-10-07  Simon Josefsson  <jas@extundo.com>
38072
38073         * m4/memxor.m4: Remove gl_C_RESTRICT call.
38074
38075 2005-10-06  Simon Josefsson  <jas@extundo.com>
38076
38077         * tests/test-hmac-md5.c: New file.
38078
38079         * modules/hmac-md5-tests: New file.
38080
38081         * modules/hmac-md5: New file.
38082
38083 2005-10-06  Simon Josefsson  <jas@extundo.com>
38084
38085         * m4/hmac-md5.m4: New file.
38086
38087         * m4/memxor.m4: Require gl_C_RESTRICT.
38088
38089 2005-10-06  Simon Josefsson  <jas@extundo.com>
38090
38091         * lib/memxor.c (memxor): Avoid casts and warnings.
38092
38093 2005-10-06  Simon Josefsson  <jas@extundo.com>
38094
38095         * lib/hmac-md5.c: New file.
38096
38097         * lib/hmac.h: New file.
38098
38099 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
38100
38101         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
38102         promotes to int, not unsigned int, to catch the AIX 5.3
38103         compiler bug.
38104
38105 2005-10-05  Simon Josefsson  <jas@extundo.com>
38106
38107         * modules/memxor: New file.
38108
38109         * modules/iconv (Files): Move config.rpath to havelib, it is used
38110         there.
38111
38112         * modules/havelib (Files): Add config.rpath.
38113
38114 2005-10-05  Simon Josefsson  <jas@extundo.com>
38115
38116         * m4/memxor.m4: New file.
38117
38118 2005-10-05  Simon Josefsson  <jas@extundo.com>
38119
38120         * lib/memxor.c (memxor): Fix compiler error.
38121
38122         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
38123         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
38124
38125         * lib/memxor.h, lib/memxor.c: New files.
38126
38127         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
38128         we assume all systems have it, suggested by Jim Meyering
38129         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
38130         any systems lack sys/socket.h; mingw32 is known to lack it, but we
38131         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
38132         same reasons.
38133
38134 2005-10-05  Simon Josefsson  <jas@extundo.com>
38135
38136         * config/srclist.txt: Add glibc bug 1423 for md5.h.
38137
38138 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
38139
38140         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
38141         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
38142         needed, since the source code now assumes these .h files.
38143
38144 2005-10-05  Derek Price  <derek@ximbiot.com>
38145
38146         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
38147
38148 2005-10-05  Bruno Haible  <bruno@clisp.org>
38149
38150         * modules/stdint (License): Change to LGPL.
38151
38152 2005-10-04  Simon Josefsson  <jas@extundo.com>
38153
38154         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
38155         D. Baushke" <mdb@gnu.org>.
38156
38157 2005-10-04  Bruno Haible  <bruno@clisp.org>
38158
38159         * lib/verify.h (verify_true): Provide alternative definition for C++.
38160
38161 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
38162
38163         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
38164         (SSIZE_MAX): New macro, if not already defined.
38165         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
38166         than 2 GiB.
38167
38168 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
38169
38170         Sync from coreutils.
38171         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
38172         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
38173         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
38174         ULLONG_MAX doesn't work with 2.7.2.1.
38175
38176 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
38177
38178         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
38179         From Ben Pfaff.
38180
38181         * modules/exclude (Depends-on): Depend on verify.
38182         * modules/strtoimax (Depends-on): Likewise.
38183         * modules/utimecmp (Depends-on): Likewise.
38184
38185 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
38186
38187         * lib/exclude.c: Include verify.h.
38188         (verify): Remove.  All callers changed to use verify.h's version.
38189         * lib/strtoimax.c: Likewise.
38190         * lib/utimecmp.c: Likewis.e
38191
38192         Sync from coreutils.
38193         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
38194         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
38195         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
38196         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
38197         bother returning ENOSYS if settimeofday or stime fails; just let
38198         them return whatever errno they want to return.
38199         * lib/utimens.c: Include unistd.h, for dup2.
38200         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
38201         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
38202
38203 2005-10-02  Jim Meyering  <jim@meyering.net>
38204
38205         Sync from coreutils.
38206         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
38207         from glibc-2.2.5 that fails for read-only files.
38208
38209 2005-10-02  Jim Meyering  <jim@meyering.net>
38210
38211         Sync from coreutils.
38212         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
38213         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
38214         `#if HAVE_CONFIG_H'.
38215         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
38216         Remove AT_FDCWD test.
38217         Do not consume the fd unless successful.
38218         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
38219         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
38220         block, so that we don't even try to compile it if settimeofday is
38221         available.  This works around a compilation failure on OSF1 V5.1,
38222         due to stime requiring a `long int*' while tv_sec is `int'.
38223
38224 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
38225
38226         Sync from coreutils.
38227         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
38228         against `yes', rather than just testing for nonempty.
38229
38230 2005-10-01  Simon Josefsson  <jas@extundo.com>
38231
38232         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
38233         and Darwin.
38234
38235         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
38236         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
38237         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
38238         freeaddrinfo and gai_strerror are declared by the POSIX headers.
38239         Check if struct addrinfo is declared.
38240
38241 2005-10-01  Simon Josefsson  <jas@extundo.com>
38242
38243         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
38244         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
38245         AI_* and EAI_* definitions.  Protect function declarations.
38246
38247 2005-10-01  Jim Meyering  <jim@meyering.net>
38248
38249         Sync from coreutils.
38250
38251         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
38252         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
38253         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
38254         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
38255         in the inet and nsl libraries.  Required on Solaris 5.7.
38256
38257 2005-10-01  Jim Meyering  <jim@meyering.net>
38258
38259         Sync from coreutils.
38260         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
38261         in the inet and nsl libraries.  Required on Solaris 5.7.
38262
38263 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
38264
38265         * lib/getdelim.c (getdelim): Remove unused variables.
38266
38267 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
38268
38269         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
38270         so that the code works even with ancient cpp.  Portability problem
38271         with GCC 2.7.2.1 reported by Thomas M.Ott.
38272
38273 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
38274
38275         * modules/regex (Depends-on): Add strcase.
38276
38277         * modules/gethostname (Licence): Change from GPL to LGPL, since
38278         gethostname.c is a trivial implementation of a standard library
38279         function.
38280         * modules/poll (License): Change from GPL to LGPL, since it's
38281         derived from LGPL code.
38282
38283 2005-09-27  Jim Meyering  <jim@meyering.net>
38284
38285         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
38286         HAVE_CONFIG_H.
38287
38288         * lib/intprops.h (signed_type_or_expr__): Define.
38289         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
38290         for unsigned types.
38291
38292 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
38293
38294         * lib/verify.h (verify_expr): Remove, replacing with:
38295         (verify_true): New macro that returns true instead of void.
38296         (verify_type__): Remove.
38297         (verify): Use verify_true rather than verify_type__.
38298
38299 2005-09-26  Bruno Haible  <bruno@clisp.org>
38300
38301         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
38302         is necessary.
38303         (lib_SOURCES): Remove mbchar.c.
38304         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
38305         (Files): Add m4/mbrtowc.m4.
38306         * modules/mbiter: Likewise.
38307         * modules/mbuiter: Likewise.
38308
38309 2005-09-26  Bruno Haible  <bruno@clisp.org>
38310
38311         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
38312         compile mbchar.c if they are not both present.
38313         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
38314         * m4/mbiter.m4 (gl_MBITER): Likewise.
38315         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
38316         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
38317         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
38318
38319 2005-09-25  Jim Meyering  <jim@meyering.net>
38320
38321         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
38322         also uses socklen_t.
38323
38324 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
38325
38326         * lib/utimens.c (ENOSYS): Define if not already defined.
38327         (futimens): Support having a null PATH if the file descriptor
38328         is nonnegative.
38329
38330         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
38331         Remove.
38332         (__attribute): Define to empty unless GCC 3.1 or later.
38333         This works around a core dump on OpenBSD 3.4, which has GCC
38334         2.95.3, which dumps core when given __attribute__(()).  It also
38335         simplifies other tests, since we really don't want to bother with
38336         worrying about which ancient version of GCC supported what.
38337         Original problem reported by Yoann Vandoorselaere, with part of
38338         the fix suggested by Derek Price.
38339
38340 2005-09-24  Jim Meyering  <jim@meyering.net>
38341
38342         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
38343         so we can once again use a positive bitfield width of 1 -- now we
38344         don't have to explain why we were using a bitfield width of 2.
38345
38346 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
38347
38348         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
38349         and similarly for the other external symbols.  Problem reported
38350         by James Gallager.
38351
38352         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
38353         bug reported by Jim Meyering.
38354
38355         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
38356         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
38357         not needed, since socklen is a prerequisite module.
38358
38359 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
38360
38361         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
38362         Problem reported by Eric Blake.
38363         (getaddrinfo): Initialize se so that it's not garbage.
38364         Redo internal storage allocation so that it doesn't make unportable
38365         assumptions about alignment.
38366         Fix a memory leak.
38367
38368         * lib/utimens.c (futimens): Use futimesat if available.
38369         Prefer it to futimes since it doesn't have the futimes bug.
38370
38371         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
38372         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
38373         Instead, declare a function that returns a pointer to an array,
38374         and use verify_type__ to declare the size of the array.
38375         Problem and germ of a solution reported by Bruno Haible.
38376         (verify_type__): Use 2, not 1, for bitfield size, to avoid
38377         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
38378
38379 2005-09-23  Jim Meyering  <jim@meyering.net>
38380
38381         Sync from coreutils.
38382         Correct build failure (socklen_t not defined) on at least
38383         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
38384         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
38385
38386 2005-09-23  Jim Meyering  <jim@meyering.net>
38387
38388         * modules/getaddrinfo (Depends-on): Add socklen.
38389
38390 2005-09-23  Bruno Haible  <bruno@clisp.org>
38391
38392         * tests/test-verify.c: New file.
38393
38394 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
38395
38396         Sync from coreutils.
38397
38398         * modules/argmatch (Depends-on): Add verify.
38399         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
38400         unistd-safer.
38401         * modules/save-cwd (Depends-on): Likewise.
38402
38403         * modules/openat (Files): Add lib/openat-die.c.
38404         (Depends-on): Remove error, exitfail.
38405         Add dirname.
38406
38407         * modules/verify: New file.
38408         * MODULES.html.sh (Diagnostics <assert.h>): New section,
38409         with "verify" module.
38410
38411 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
38412
38413         Sync from coreutils.
38414
38415         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
38416         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
38417         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
38418         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
38419         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
38420         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
38421         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
38422         Don't bother checking for string.h, stdlib.h, unistd.h.
38423         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
38424         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
38425         module's job.
38426         * m4/jm-macros.m4 (gl_MACROS): Likewise.
38427         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
38428
38429         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
38430         (gl_GETDATE): Use it.
38431
38432         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
38433
38434 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
38435
38436         Sync from coreutils.
38437
38438         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
38439         stat-time.h.
38440         * lib/argmatch.h: Include verify.h
38441         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
38442         (ARGMATCH_ASSERT): Remove; unused.
38443         * lib/canonicalize.c: Assume STDC_HEADERS.
38444         * lib/exclude.c: Include "strcase.h".
38445         * lib/regex_internal.h [!defined _LIBC]: Likewise.
38446         * lib/getusershell.c: Include stdio--.h rather than stdio.h
38447         and stdio-safer.h.
38448         (getusershell): Call fopen, not fopen_safer.
38449         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
38450         Do not include unistd-safer.h.
38451         (save_cwd): Don't call fd_safer; no longer needed
38452         now that we include fcntl--.h.
38453
38454         * lib/getdate.y (relative_time): New type.
38455         (RELATIVE_TIME_0): New constant.
38456         (parser_control): Use relative_time instead of doing it ourselves.
38457         (%union): Add new relative_time rel member.
38458         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
38459         Now typeless.
38460         (relunit, relunit_snumber): Now of type rel.
38461         (zone, rel, relunit, get_date): Adjust to above changes.
38462
38463         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
38464         Do not include unistd-safer.h.
38465         (getloadavg): Don't call fd_safer; no longer needed
38466         now that we include fcntl--.h.
38467
38468         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
38469         (make_dir_parents): Treat ENOSYS like EEXIST.
38470
38471         Improve quality of diagnostics on restore_cwd failure.
38472         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
38473         (make_dir_parents): Last arg is now int * (for errno), not bool *.
38474         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
38475         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
38476         each time through the loop.  Do not diagnose restore_cwd failure;
38477         that is the caller's job (and perhaps the caller does not care).
38478
38479         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
38480         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
38481         If the file already exists but is not a directory, don't bother
38482         to try to make its parents.
38483         Close potential file descriptor leak if we can't chdir("/") (!).
38484         Don't always return true if chdir($PWD) fails; return true only
38485         if the requested action was done successfully (except for the
38486         chdir($PWD)).
38487         Don't log final directory unless we actually made it.
38488         Refactor to avoid duplicate code to fix up permissions.
38489         Don't attempt to fix up parent permissions if chdir($PWD) fails.
38490
38491         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
38492         to make it a bit faster and (I hope) clearer.
38493         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
38494         Fix bug in formats like %2N.
38495
38496         * lib/verify.h: New file.
38497
38498 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
38499
38500         Sync from coreutils.
38501         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
38502
38503 2005-09-22  Jim Meyering  <jim@meyering.net>
38504
38505         Sync from coreutils.
38506
38507         * m4/lstat.m4 (gl_FUNC_LSTAT):
38508         Use AC_LIBSOURCES to require lstat.c and lstat.h.
38509         Remove obsolete comment.
38510         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
38511         * m4/xstrtod.m4: Likewise.
38512
38513         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
38514
38515 2005-09-22  Jim Meyering  <jim@meyering.net>
38516
38517         Sync from coreutils.
38518
38519         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
38520
38521         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
38522         the .tm_year member, since otherwise gcc-4.0 would now warn about
38523         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
38524
38525         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
38526         order to avoid an unsuppressible warning from gcc on 64-bit systems.
38527
38528         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
38529         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
38530         when run in a time zone for which daylight savings time is in effect
38531         for the starting date.
38532
38533         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
38534         stop us from restricting permissions of just-created absolute-named
38535         directories.
38536         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
38537         to restore initial working directory.
38538         * lib/mkdir-p.c (make_dir_parents): New parameter:
38539         different_working_dir, to tell caller if/when we change the working
38540         directory and are unable to return to the initial one.
38541         * lib/mkdir-p.h (make_dir_parents): Update prototype.
38542         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
38543         `return false'.  This fixes a bug introduced on 2004-07-30.
38544
38545         * lib/openat.c (fdopendir): Be sure to close the supplied
38546         file descriptor before returning.  This makes our replacement
38547         implementation a little closer to Solaris's, where fdopendir
38548         ties the file descriptor to the returned DIR* pointer.
38549         * lib/openat.c (unlinkat): New function.
38550         * lib/openat.h (unlinkat): Add prototype.
38551         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
38552         (openat_restore_fail): Rename from openat_restore_die.
38553         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
38554
38555         Provide an alternative to exiting immediately upon save_cwd or
38556         restore_cwd failure.  Now, an application can arrange e.g.,
38557         to perform a longjump in that case.
38558         * lib/openat.c: Include dirname.h.
38559         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
38560         (rpl_openat, fdopendir, fstatat): Call openat_save_die
38561         and openat_restore_die rather than calling error directly.
38562         Don't include "error.h" or "exitfail.h"; they're no longer needed.
38563
38564         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
38565         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
38566         define.
38567
38568         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
38569         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
38570                             int utc, int nanoseconds);
38571         Background:
38572         date should not have to allocate a megabyte of virtual memory to
38573         handle a format argument like +%1048575T.  When implemented with
38574         strftime, it must allocate such a buffer, use strftime to fill it
38575         in, print it, then free it.
38576         With fprintftime, it simply prints everything and exits.
38577         With no need for memory allocation, that's one fewer way to fail.
38578         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
38579         optional field width, not before, so we accept %9:z, not %:9z.
38580         (my_strftime): Be sure to use L_('x') for literals.
38581
38582         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
38583         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
38584         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
38585         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
38586         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
38587         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
38588         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
38589         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
38590         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
38591         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
38592         * lib/xgethostname.c, lib/xreadlink.c:
38593         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
38594
38595         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
38596         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
38597         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
38598         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
38599         and don't include <sys/file.h>).
38600
38601 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
38602
38603         Sync from coreutils.
38604
38605         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
38606         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
38607         [!LDAV_DONE]: Avoid unused variable warning.
38608
38609 2005-09-21  Bruno Haible  <bruno@clisp.org>
38610
38611         * lib/unicodeio.h (unicode_to_mb): New declaration.
38612
38613 2005-09-20  Derek Price  <derek@ximbiot.com>
38614
38615         * lib/getaddrinfo.c: Don't include <netdb.h> included from
38616         getaddrinfo.h.
38617
38618 2005-09-20  Bruno Haible  <bruno@clisp.org>
38619
38620         * gnulib-tool: Remove trailing slashes from the values specified for
38621         --source-base, --m4-base, --tests-base, --aux-dir.
38622         Suggested by Simon Josefsson <jas@extundo.com>.
38623
38624 2005-09-20  Bruno Haible  <bruno@clisp.org>
38625
38626         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
38627         func_modules_to_filelist, func_import, func_create_testdir): Make all
38628         sorting results locale-independent, so that gnulib-cache.m4 doesn't
38629         change when gnulib-tool is invoked in a different locale.
38630
38631 2005-09-19  Simon Josefsson  <jas@extundo.com>
38632
38633         * m4/socklen.m4: Fix typo.
38634
38635 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
38636
38637         Use a consistent style for including <config.h>.
38638         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
38639         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
38640         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
38641         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
38642         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
38643         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
38644         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
38645         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
38646         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
38647         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
38648         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
38649         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
38650         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
38651         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
38652         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
38653         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
38654         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
38655         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
38656         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
38657         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
38658         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
38659         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
38660         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
38661         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
38662         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
38663         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
38664         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
38665         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
38666         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
38667         lib/xstrtoumax.c, lib/yesno.c:
38668         Standardize inclusion of config.h.
38669         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
38670         lib/inttostr.h:  Removed inclusion of config.h from header files.
38671         * lib/inttostr.c:  Adjusted in-tree users.
38672         * lib/timespec.h: Remove superfluous warning to include config.h.
38673         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
38674         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
38675         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
38676         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
38677         config.h with HAVE_CONFIG_H.
38678
38679 2005-09-19  Jim Meyering  <jim@meyering.net>
38680
38681         * modules/pathmax (License): Change to LGPL.
38682
38683 2005-09-19  Derek Price  <derek@ximbiot.com>
38684
38685         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
38686
38687 2005-09-19  Bruno Haible  <bruno@clisp.org>
38688
38689         * gnulib-tool (import): Provide default for --tests-base.
38690
38691 2005-09-19  Bruno Haible  <bruno@clisp.org>
38692
38693         * doc/quote.texi: New file, extracted from gnulib.texi.
38694         * doc/ctime.texi: New file, extracted from gnulib.texi.
38695         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
38696         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
38697         * doc/gnulib.texi: Include them.
38698
38699 2005-09-18  Bruno Haible  <bruno@clisp.org>
38700
38701         Portability fix.
38702         * gnulib-tool (func_readlink): New function.
38703         (func_ln_if_changed): Use it.
38704
38705 2005-09-18  Bruno Haible  <bruno@clisp.org>
38706
38707         * gnulib-tool: Support --with-tests also with --import.
38708         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
38709         (func_import): Use variables $testsbase and $inctests. Emit a
38710         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
38711         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
38712         SUBDIRS += $testsdir.
38713         (func_create_testdir): Update.
38714
38715 2005-09-18  Bruno Haible  <bruno@clisp.org>
38716
38717         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
38718         instead of $dry_run.
38719         (func_cp_if_changed, func_mv_if_changed): Remove functions.
38720         (func_ln_if_changed): Don't handle dry-run here.
38721         (func_import): In dry-run mode, detect more precisely which actions
38722         would be performed, and don't use "...ing" verbs.
38723
38724 2005-09-18  Bruno Haible  <bruno@clisp.org>
38725
38726         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
38727         (func_import): Use join on two temporary files instead of three nested
38728         loops, in order to determine which files are new or old.
38729
38730 2005-09-18  Bruno Haible  <bruno@clisp.org>
38731
38732         * gnulib-tool (func_import): Comment out code that spits out the
38733         new files with --dry-run.
38734
38735 2005-09-18  Bruno Haible  <bruno@clisp.org>
38736
38737         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
38738
38739 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
38740
38741         * lib/stat-time.h: New file.
38742         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
38743         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
38744         in a different way.
38745         (timespec_cmp): New function.
38746         * lib/utimecmp.c: Include stat-time.h.
38747         (SYSCALL_RESOLUTION): Depend on whether various struct stat
38748         members exist, not on the obsolescent ST_MTIM_NSEC.
38749         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
38750
38751 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
38752
38753         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
38754
38755 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
38756
38757         * MODULES.html.sh (File system functions): Add stat-time.
38758         * modules/stat-time: New file.
38759         * modules/timespec (Files): Remove m4/st_mtim.m4; this
38760         is now done in a different way, by the stat-time module.
38761         * modules/utimecmp (Depends-on): Add stat-time.
38762
38763 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
38764
38765         * m4/st_mtim.m4: Remove.  Superseded by...
38766         * m4/stat-time.m4: New file.
38767         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
38768         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
38769
38770 2005-09-15  Derek Price  <derek@ximbiot.com>
38771
38772         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
38773
38774 2005-09-15  Derek Price  <derek@ximbiot.com>
38775
38776         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
38777         * lib/regex_internal.c: Ditto, using this...
38778         (__GNUC_PREREQ): ...new macro.
38779         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
38780         using...
38781         (__GNUC_PREREQ): ...this new macro.
38782
38783         * lib/strstr.h: Include string.h. Define strstr as a macro here.
38784
38785 2005-09-15  Derek Price  <derek@ximbiot.com>
38786             Paul Eggert  <eggert@cs.ucla.edu>
38787
38788         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
38789         changes, consolidating in...
38790         * lib/regex_internal.h: ...this file.
38791
38792 2005-09-13  Jim Meyering  <jim@meyering.net>
38793
38794         * lib/canon-host.c: Filter through gnu indent and reword comments
38795         slightly.
38796         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
38797
38798 2005-09-13  Derek Price  <derek@ximbiot.com>
38799
38800         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
38801         failure.
38802         Reported by Jim Meyering  <jim@meyering.net>.
38803
38804 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
38805
38806         * lib/base64.c: Typo.
38807         (base64_encode): Put b64str in initialized data section.
38808
38809 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
38810
38811         Merge glibc and coreutils changes into gnulib, plus a few
38812         extra fixes.
38813         * lib/md5.c: Use #error rather than a string.
38814         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
38815         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
38816         (__attribute__): Define to empty for non recent-GCC.
38817         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
38818         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
38819         Renamed from their non-__ counterparts, with new macros replacing
38820         them if not _LIBC.  Add __THROW attribute.
38821         (rol): Remove.
38822         (struct md5_ctx): Align buffer if using GCC.
38823         * lib/sha1.h (struct sha1_ctx): Likewise.
38824         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
38825         The old name was backwards.
38826         (NOTSWAP): Remove; not used.
38827         (rol): New macro, moved here from md5.h.
38828         (sha1_process_block): Remove a FIXME that doesn't make sense.
38829
38830 2005-09-12  Derek Price  <derek@ximbiot.com>
38831
38832         Return usable errors from canon-host.
38833         * lib/canon-host.h: New file.
38834         * lib/canon-host.c (canon_host): Wrap...
38835         (canon_host_r): ...this new function, which now relies exclusively on
38836         getaddrinfo.
38837         (ch_strerror): New function.
38838         (last_cherror): New global.
38839         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
38840         interface.
38841         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
38842         void *.
38843         (freeaddrinfo): Free ai->ai_canonname when set.
38844
38845 2005-09-12  Derek Price  <derek@ximbiot.com>
38846
38847         Make canon-host require getaddrinfo.
38848         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
38849         AC_LIBSOURCE canon-host.h.  Call...
38850         (gl_PREREQ_CANON_HOST): ...this new function, which requires
38851         gl_GETADDRINFO.
38852         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
38853
38854 2005-09-12  Derek Price  <derek@ximbiot.com>
38855
38856         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
38857         LGPL.
38858         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
38859
38860 2005-09-12  Derek Price  <derek@ximbiot.com>
38861
38862         * lib/gai_strerror.c: Include config.h when available.  Include
38863         getaddrinfo.h before other headers to test interface.
38864         Reported by Larry Jones <lawrence.jones@ugs.com>.
38865
38866 2005-09-12  Derek Price  <derek@ximbiot.com>
38867             Paul Eggert  <eggert@cs.ucla.edu>
38868
38869         * modules/glob (Files): Add glob-libc.h.
38870
38871 2005-09-12  Derek Price  <derek@ximbiot.com>
38872             Paul Eggert  <eggert@cs.ucla.edu>
38873
38874         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
38875         glob_.h, glob-libc.h.
38876         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
38877
38878 2005-09-12  Derek Price  <derek@ximbiot.com>
38879             Paul Eggert  <eggert@cs.ucla.edu>
38880
38881         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
38882         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
38883         protecting things that should be done only in gnulib contexts.
38884         * lib/glob_.h: New file, containing only the glob things needed for
38885         gnulib.
38886         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
38887         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
38888         (glob, globfree, glob_pattern_p): Now defined simply in terms of
38889         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
38890         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
38891         and to respect the namespace rules better.
38892
38893 2005-09-08  Simon Josefsson  <jas@extundo.com>
38894
38895         * modules/socklen: New file.
38896
38897 2005-09-08  Simon Josefsson  <jas@extundo.com>
38898
38899         * m4/socklen.m4: New file.
38900
38901 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
38902
38903         * modules/utimens (Files): Add m4/utimbuf.m4, since
38904         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
38905         Reported by Sergey Poznyakoff.
38906
38907 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
38908
38909         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
38910         definitions, since that's the preferred style in glibc.
38911         Fix a minor spacing issue, and update copyright notice to match
38912         glibc's.
38913
38914 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
38915
38916         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
38917
38918 2005-09-06  Simon Josefsson  <jas@extundo.com>
38919
38920         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
38921         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
38922
38923 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
38924
38925         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
38926         warning.
38927
38928 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
38929
38930         * config/srclist.txt: Add glibc bug 1302.
38931
38932 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
38933
38934         Change bitset word type from unsigned int to unsigned long int,
38935         as this has better performance on typical 64-bit hosts.
38936         Port bitset code to hosts with unusual word sizes.
38937         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
38938         (build_collating_symbol):
38939         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
38940         argument is a bitset.  This is merely a style issue, but it makes
38941         it clearer that an entire array is expected.
38942         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
38943         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
38944         Port to the case where bitset_word is not the same as unsigned int.
38945         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
38946         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
38947         Likewise.
38948         * lib/regexec.c (check_dst_limits_calc_pos_1,
38949         check_subexp_matching_top):
38950         (build_trtable, group_nodes_into_DFAstates):
38951         Likewise.
38952         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
38953         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
38954         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
38955         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
38956         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
38957         * lib/regcomp.c (optimize_subexps, lower_subexp):
38958         Work even if bitset_word has holes in its bitwise representation.
38959         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
38960         * lib/regexec.c (check_dst_limits_calc_pos_1,
38961         check_subexp_matching_top):
38962         Likewise.
38963         * lib/regex_internal.c (re_string_reconstruct):
38964         Don't assume UCHAR_MAX == 255.
38965         * lib/regex_internal.h (bitset_set_all): Likewise.
38966         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
38967         All uses changed.
38968         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
38969         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
38970         All uses changed.
38971         (BITSET_WORD_MAX): New macro.
38972         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
38973         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
38974         (bitset_empty, bitset_copy):
38975         Prefer sizeof (bitset) to multiplying it out ourselves.
38976         (bitset_not_merge): Remove; unused.
38977         (bitset_contain): Return bool, not unsigned int with one bit on.
38978         All callers changed.
38979         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
38980         alignment than re_node_set; do this by defining a new internal
38981         type struct dests_alloc and using it to allocate memory.
38982
38983 2005-09-05  Bruno Haible  <bruno@clisp.org>
38984
38985         * gnulib-tool (func_import): Fix comparison in handling of symbolic
38986         links.
38987
38988 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
38989
38990         * modules/size_max (Makefile.am): Add size_max.h
38991
38992 2005-09-04  Derek Price  <derek@ximbiot.com>
38993
38994         * gnulib-tool (func_import): Fix reversed $symbolic logic.
38995
38996 2005-09-03  Simon Josefsson  <jas@extundo.com>
38997
38998         * gnulib-tool: Fix typo.
38999
39000 2005-09-03  Simon Josefsson  <jas@extundo.com>
39001
39002         * config/srclist.txt: Add glibc bug 1293.
39003
39004 2005-09-03  Derek Price  <derek@ximbiot.com>
39005
39006         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
39007         From Larry Jones <lawrence.jones@ugs.com>.
39008
39009 2005-09-02  Simon Josefsson  <jas@extundo.com>
39010
39011         * modules/socklen: New file.
39012
39013 2005-09-02  Simon Josefsson  <jas@extundo.com>
39014
39015         * modules/havelib: New module.
39016
39017         * modules/gettext, modules/iconv, modules/lock, modules/readline:
39018         Use havelib.
39019
39020 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
39021
39022         Check for arithmetic overflow when calculating sizes, to prevent
39023         some buffer-overflow issues.  These patches are conservative, in the
39024         sense that when I couldn't determine whether an overflow was possible,
39025         I inserted a run-time check.
39026         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
39027         macros.
39028         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
39029         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
39030         (re_xnrealloc, re_x2nrealloc): New inline functions.
39031         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
39032         parse_bracket_exp):
39033         (build_equiv_class, build_charclass): Check for arithmetic overflow
39034         in size expression calculations.
39035         * lib/regex_internal.c (re_string_realloc_buffers):
39036         (build_wcs_upper_buffer, re_node_set_add_intersect):
39037         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
39038         (re_dfa_add_node, register_state): Likewise.
39039         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
39040         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
39041         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
39042         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
39043
39044 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
39045
39046         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
39047         m4/ulonglong.m4.  Problem reported by Martin Lambers.
39048
39049 2005-09-02  Bruno Haible  <bruno@clisp.org>
39050
39051         Support for lib vs. lib64 distinction on biarch platforms.
39052         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
39053         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
39054         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
39055
39056 2005-09-02  Bruno Haible  <bruno@clisp.org>
39057
39058         * gnulib-tool (import): In the other first-use case, provide defaults
39059         as well.
39060
39061 2005-09-02  Bruno Haible  <bruno@clisp.org>
39062
39063         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
39064         patches not yet found in the latest gettext release.
39065
39066 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
39067
39068         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
39069         to avoid a collision with bits/local_lim.h in glibc.
39070         All uses changed.  Problem reported by Dmitry V. Levin in
39071         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
39072
39073         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
39074         bugs in int versus size_t comparisons.
39075         (re_string_context_at): Fix bug where the code assumed that
39076         Idx is signed.
39077
39078         Use bool where appropriate.
39079         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
39080         All callers changed.
39081         (calc_eclosure_iter): Likewise, for ROOT arg.
39082         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
39083         (build_charclass_op): Likewise, for NON_MATCH arg.
39084         * lib/regex_internal.c (re_string_allocate, re_string_construct):
39085         (re_string_construct_common): Likewise, for ICASE arg.
39086         * lib/regexec.c (re_search_2_stub, re_search_stub):
39087         Likewise, for RET_LEN arg.
39088         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
39089         (set_regs): Likewise, for FL_BACKTRACK arg.
39090         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
39091         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
39092         (calc_eclosure_iter, parse_bracket_exp):
39093         Use bool for internal variables that are booleans.
39094         * lib/regexec.c (re_search_internal, check_matching,
39095         proceed_next_node):
39096         (set_regs, build_sifted_states, sift_states_bkref):
39097         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
39098         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
39099         (find_collation_sequence_value):
39100         Likewise.
39101         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
39102         (re_node_set_compare):
39103         Return bool, not int. All callers changed.
39104         * lib/regexec.c (check_halt_node_context, check_dst_limits):
39105         (build_trtable, check_node_accept): Likewise.
39106         * lib/regex_internal.h: Include stdbool.h.
39107
39108         Fix bugs uncovered when converting to bool.
39109         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
39110         failure instead of charging ahead blindly.
39111         * lib/regex_internal.c (register_state): Likewise.
39112         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
39113         for freeing internal storage.
39114         (group_nodes_into_DFA_states): Use unsigned int, not int, for
39115         bitset pieces used as boolean, to avoid undefined behavior
39116         on hosts that do int overflow checking.
39117
39118 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
39119
39120         * config/srclist.txt: Add glibc bugs 1285-1287.
39121
39122 2005-09-01  Jim Meyering  <jim@meyering.net>
39123
39124         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
39125         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
39126         Require gl_STAT_MACROS, too.
39127
39128 2005-09-01  Bruno Haible  <bruno@clisp.org>
39129
39130         * gnulib-tool (import): In the first-use case, provide defaults.
39131
39132 2005-09-01  Bruno Haible  <bruno@clisp.org>
39133
39134         * gnulib-tool (func_import): Remove the .tmp files.
39135
39136 2005-09-01  Bruno Haible  <bruno@clisp.org>
39137
39138         * gnulib-tool (func_import): Fix handling of symbolic links.
39139
39140 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
39141
39142         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
39143         old glibc regex code mishandles strings longer than 2**31 bytes.
39144         This patch fixes this when the regex code is used in gnulib
39145         (i.e., outside glibc).
39146
39147         This patch should not affect the use of the regex code inside
39148         glibc.  No doubt this problem also needs to be handled for glibc
39149         as well, but the result will be an incompatible change to the
39150         glibc ABI, and the old ABI will have to be supported too.  That
39151         can be the the subject for another patch.
39152
39153         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
39154         governing whether the rest of this patch is active.  By default,
39155         the macro is disabled and the patch has no effect.
39156         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
39157         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
39158         (struct re_pattern_buffer, re_search, re_search_2, re_match):
39159         (re_match_2, re_set_registers): Use the new types.
39160         * lib/regex_internal.h (Idx, re_hashval_t): New types.
39161         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
39162         New macros.
39163         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
39164         (re_string_context_at, bin_tree_t, re_dfastate_t):
39165         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
39166         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
39167         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
39168         (re_string_char_size_at, re_string_wchar_at):
39169         (re_string_elem_size_at):
39170         Use the new types and macros to port to 64-bit hosts.
39171         Use unsigned types for internal values, so that the code
39172         mostly works even for arrays larger than SSIZE_MAX.
39173         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
39174         (search_duplicated_node, calc_eclosure_iter, fetch_number):
39175         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
39176         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
39177         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
39178         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
39179         (calc_inveclosure, parse_dup_op, build_range_exp):
39180         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
39181         (fetch_number, create_token_tree, mark_opt_subexp):
39182         Likewise.
39183         * lib/regex_internal.c (re_string_construct_common,
39184         create_ci_newstate):
39185         (create_cd_newstate, re_string_allocate, re_string_construct):
39186         (re_string_realloc_buffers, build_wcs_upper_buffer):
39187         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
39188         (re_string_reconstruct, re_string_peek_byte_case):
39189         (re_string_fetch_byte_case, re_string_context_at):
39190         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
39191         (re_node_set_init_copy, re_node_set_add_intersect):
39192         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
39193         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
39194         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
39195         (re_acquire_state, re_acquire_state_context, register_state):
39196         Likewise.
39197         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
39198         search_cur_bkref_entry):
39199         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
39200         (re_search_internal, re_search_2_stub, re_search_stub)
39201         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
39202         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
39203         (update_cur_sifted_state, check_dst_limits):
39204         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
39205         (check_subexp_limits, sift_states_bkref, merge_state_array):
39206         (check_subexp_matching_top, get_subexp, get_subexp_sub):
39207         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
39208         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
39209         (expand_bkref_cache, check_node_accept_bytes):
39210         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
39211         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
39212         (acquire_init_state_context, check_halt_node_context):
39213         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
39214         (sift_states_backward, clean_state_log_if_needed):
39215         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
39216         (find_recover_state, transit_state_sb, transit_state_mb):
39217         (transit_state_bkref, build_trtable, match_ctx_clean):
39218         Likewise.
39219         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
39220         to work around an assumption that REG_MISSING is negative.
39221
39222         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
39223         (seek_collating_symbol_entry) [defined _LIBC]:
39224         (lookup_collation_sequence_value) [defined _LIBC]:
39225         (build_range_exp, build_collating_symbol) [defined _LIBC]:
39226         Use prototypes rather than old-style function definitions.
39227         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
39228         (transit_state_sb) [0]:
39229         (find_collation_sequence_value) [defined _LIBC]: Likewise.
39230
39231         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
39232         rm_eo.
39233
39234         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
39235         (optimize_subexps, lower_subexp):
39236         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
39237         since the signed shift might overflow.  Use 1u<<31 instead.
39238         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
39239         Likewise.
39240         * lib/regexec.c (check_dst_limits_calc_pos_1,
39241         check_subexp_matching_top): Likewise.
39242
39243         * lib/regcomp.c (optimize_subexps, lower_subexp):
39244         Use CHAR_BIT rather than 8, for clarity.
39245         * lib/regexec.c (check_dst_limits_calc_pos_1):
39246         (check_subexp_matching_top): Likewise.
39247         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
39248         have to worry about portability issues when shifting it left.
39249         Remove no-longer-needed test for table_size > 0.
39250         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
39251         in a word, as the resulting behavior is undefined.
39252         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
39253         in one case, a <= should have been an <, and in another case the
39254         whole test was missing.
39255         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
39256         the standard name CHAR_BIT.
39257         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
39258         this is not true on one's complement and signed-magnitude hosts.
39259
39260         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
39261         next_last_offset.
39262         (struct re_dfa_t): Remove unused member states_alloc.
39263         * lib/regcomp.c (init_dfa): Don't initialize unused members.
39264
39265 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
39266
39267         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
39268         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
39269         and large-file glibc and in 32-bit large-file Solaris.
39270
39271 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
39272
39273         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
39274         lengths fit in regoff_t; this isn't true if regoff_t is the same
39275         width as size_t.
39276         * lib/regex.c (re_search_internal): 5th arg is LAST_START
39277         (= START + RANGE) instead of RANGE.  This avoids overflow
39278         problems when regoff_t is the same width as size_t.
39279         All callers changed.
39280         (re_search_2_stub): Check for overflow when adding the
39281         sizes of the two strings.
39282         (re_search_stub): Check for overflow when adding START
39283         to RANGE; if it occurs, substitute the extreme value.
39284
39285 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
39286
39287         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
39288
39289 2005-08-31  Jim Meyering  <jim@meyering.net>
39290
39291         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
39292         a pointer-to-const.
39293         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
39294         (register_state): Likewise.
39295         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
39296         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
39297         (group_nodes_into_DFAstates): Likewise.
39298
39299 2005-08-31  Jim Meyering  <jim@meyering.net>
39300
39301         * check-module: Add a FIXME comment.
39302
39303 2005-08-31  Eric Blake  <ebb9@byu.net>
39304
39305         * modules/unistd-safer (Files): Add unistd--.h.
39306         * modules/stdio-safer (Files): Add stdio--.h.
39307
39308 2005-08-31  Derek Price  <derek@ximbiot.com>
39309
39310         * lib/getdelim.c (getdelim): Return EOF on EOF.
39311         Reported by Larry Jones <lawrence.jones@ugs.com>.
39312
39313 2005-08-31  Bruno Haible  <bruno@clisp.org>
39314
39315         Avoid unnecessary diffs in the generated lib/Makefile.am.
39316         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
39317         the generated files.
39318         (func_import): Don't set cmd.
39319
39320 2005-08-31  Bruno Haible  <bruno@clisp.org>
39321
39322         * lib/strstr.c: Include <stddef.h>, for NULL.
39323         * lib/strcasestr.c: Likewise.
39324         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
39325
39326 2005-08-31  Bruno Haible  <bruno@clisp.org>
39327
39328         * gnulib-tool: New option --macro-prefix.
39329         (func_import): Use macro_prefix.
39330         (import): Handle option --macro-prefix.
39331
39332 2005-08-31  Bruno Haible  <bruno@clisp.org>
39333
39334         * gnulib-tool (import): Rename most ac_* variables to cached_*.
39335         Also use new variables cached_lgpl, cached_libtool.
39336
39337 2005-08-31  Bruno Haible  <bruno@clisp.org>
39338
39339         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
39340         always instantiating them.
39341
39342 2005-08-31  Bruno Haible  <bruno@clisp.org>
39343
39344         * gnulib-tool (func_import): Read the previous cached settings
39345         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
39346         earlier added by gnulib but are now dropped. Warn when a gnulib file
39347         overwrites a non-gnulib file.
39348
39349 2005-08-31  Bruno Haible  <bruno@clisp.org>
39350
39351         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
39352         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
39353         projects that don't keep autogenerated files in CVS. Put into
39354         actioncmd only the specified modules, not the transitive closure.
39355
39356 2005-08-31  Bruno Haible  <bruno@clisp.org>
39357
39358         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
39359         Create directories that shall be filled.
39360         (import): Don't look for gl_* macros in configure.ac. Recurse across
39361         all directories containing a gnulib-cache.m4 files, if meaningful.
39362
39363 2005-08-31  Bruno Haible  <bruno@clisp.org>
39364
39365         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
39366         (import): Set seen_libtool when we see gl_LIBTOOL.
39367
39368 2005-08-31  Bruno Haible  <bruno@clisp.org>
39369
39370         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
39371         declaration macro definitions from generated gnulib.m4.
39372
39373 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
39374
39375         * lib/iconvme.h: Add prototype for iconv_alloc.
39376
39377 2005-08-29  Simon Josefsson  <jas@extundo.com>
39378
39379         * lib/iconvme.c: Fix errno.
39380
39381 2005-08-29  Bruno Haible  <bruno@clisp.org>
39382
39383         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
39384         that it works when the directory contains spaces.
39385
39386 2005-08-29  Bruno Haible  <bruno@clisp.org>
39387
39388         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
39389
39390 2005-08-29  Bruno Haible  <bruno@clisp.org>
39391
39392         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
39393         Emit more advice.
39394
39395 2005-08-29  Bruno Haible  <bruno@clisp.org>
39396         and Stepan Kasal  <kasal@ucw.cz>
39397
39398         * check-module: If more parameters are given, check each of them
39399         separately; add more exceptions, as noted by Jim Meyering.
39400         (check_module): New procedure.
39401         (%exempt_header): Now contains all exceptions.
39402
39403 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
39404
39405         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
39406
39407 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
39408
39409         * lib/iconvme.c: Split iconv_string into iconv_alloc.
39410
39411 2005-08-28  Bruno Haible  <bruno@clisp.org>
39412
39413         * m4/gnulib-tool.m4: New file.
39414
39415 2005-08-27  Jim Meyering  <jim@meyering.net>
39416
39417         * modules/unistd-safer (Files): Add pipe-safer.c.
39418         * modules/fcntl-safer (Files): Add creat-safer.c.
39419
39420 2005-08-27  Jim Meyering  <jim@meyering.net>
39421
39422         * m4/stdlib-safer.m4: New file.  From coreutils.
39423         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
39424         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
39425         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
39426         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
39427         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
39428
39429 2005-08-27  Jim Meyering  <jim@meyering.net>
39430
39431         * lib/fopen-safer.c: Merge minor changes from coreutils.
39432         * lib/dup-safer.c: Likewise.
39433         * lib/fd-safer.c: Likewise.
39434
39435         Merge from coreutils.
39436         * lib/stdio--.h: New file.
39437         * lib/stdlib--.h: New file.
39438         * lib/mkstemp-safer.c: New file.
39439
39440         GNU tar needs these.
39441         * lib/pipe-safer.c: New file.
39442         * lib/creat-safer.c: New file.
39443         * lib/fcntl--.h (creat): Define to creat_safer.
39444         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
39445         * lib/unistd--.h (pipe): Define to pipe_safer.
39446         * lib/unistd-safer.h: Declare pipe_safer.
39447
39448 2005-08-26  Simon Josefsson  <jas@extundo.com>
39449
39450         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
39451         Haible <bruno@clisp.org>.
39452
39453 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
39454
39455         * lib/regex_internal.h: Remove all references to
39456         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
39457         or better.
39458         (bitset_not, bitset_merge, bitset_not_merge):
39459         (bitset_mask, re_string_allocate, re_string_construct):
39460         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
39461         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
39462         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
39463         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
39464         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
39465         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
39466         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
39467         (re_acquire_state_context):
39468         Remove unnecessary forward decls.
39469         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
39470         Put __attribute at function definition,
39471         now that the function decl has been removed.
39472         * lib/regex_internal.c (re_string_peek_byte_case):
39473         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
39474         Likewise.
39475
39476 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
39477
39478         * m4/regex.m4: Add AC_PREREQ(2.50).
39479         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
39480
39481 2005-08-25  Simon Josefsson  <jas@extundo.com>
39482
39483         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
39484         __fsetlocking.
39485
39486 2005-08-25  Simon Josefsson  <jas@extundo.com>
39487
39488         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
39489         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
39490         GLIBC specific code.
39491
39492 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
39493
39494         Make regex safe for g++.  This fixes one real bug (an "err"
39495         that should have been "*err").  g++ problem reported by
39496         Sam Steingold.
39497         * lib/regex_internal.h (re_calloc): New macro, consistent with
39498         re_malloc etc.  All callers of calloc changed to use re_calloc.
39499         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
39500         not int.  All callers changed.
39501         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
39502         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
39503         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
39504         (find_recover_state): Change "err" to "*err"; this fixes what
39505         appears to be a real bug.
39506         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
39507         versus int.
39508
39509 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
39510
39511         * modules/regex (Depends-on): Add malloc, since the code
39512         assumes that !malloc(0) means failure.
39513
39514 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
39515
39516         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
39517
39518         alloca modernization/simplification for regex.
39519         * lib/regex.c: Remove portability cruft for alloca.  This no longer
39520         needs to be at the start of the file, and can be moved into
39521         regex_internal.h and simplified.
39522         * lib/regex_internal.h: Include <alloca.h>.
39523         (__libc_use_alloca) [!defined _LIBC]: New macro.
39524         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
39525         now works outside glibc.
39526
39527 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
39528
39529         * config/srclist.txt: Add glibc bugs 1241, 1245.
39530
39531 2005-08-25  Jim Meyering  <jim@meyering.net>
39532
39533         * lib/open-safer.c: Include <config.h>.
39534         Otherwise, we'd lose LARGEFILE support in any file using
39535         e.g. "fcntl--.h"
39536
39537 2005-08-25  Bruno Haible  <bruno@clisp.org>
39538
39539         * m4/minmax.m4: Require autoconf 2.52.
39540         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
39541         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
39542         alternatives of translit over the alphabet.
39543         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
39544
39545 2005-08-24  Simon Josefsson  <jas@extundo.com>
39546
39547         * tests/test-getpass.c: New file.
39548
39549 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
39550
39551         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
39552         for GNU regex features.
39553
39554 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
39555
39556         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
39557         * lib/regex.h (regerror): Likewise.
39558
39559         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
39560         requires this.  (The code never needed it.)
39561
39562         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
39563         All uses of recently-renamed identifiers changed to use the new,
39564         POSIX-compliant names.  The code will build and run just fine
39565         without these changes, but it's better to eat our own dog food
39566         and use the standard-conforming names.
39567
39568         * lib/regex.h: Fix a multitude of POSIX name space violations.
39569         These changes have an effect only for programs that define
39570         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
39571         do not change anything for programs compiled in the normal way.
39572         Also, there is no effect on the ABI.
39573
39574         (_REGEX_SOURCE): New macro.
39575         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
39576         defined and _GNU_SOURCE is not; this fixes a name space violation.
39577
39578         Rename the following macros to obey POSIX requirements.
39579         The old names are still visible as macros if _REGEX_SOURCE is defined.
39580         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
39581         RE_BACKSLASH_ESCAPE_IN_LISTS.
39582         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
39583         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
39584         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
39585         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
39586         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
39587         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
39588         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
39589         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
39590         (REG_INTERVALS): renamed from RE_INTERVALS.
39591         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
39592         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
39593         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
39594         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
39595         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
39596         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
39597         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
39598         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
39599         RE_UNMATCHED_RIGHT_PAREN_ORD.
39600         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
39601         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
39602         (REG_DEBUG): renamed from RE_DEBUG.
39603         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
39604         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
39605         unusual, since we can't clash with the POSIX REG_ICASE.
39606         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
39607         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
39608         (REG_NO_SUB): renamed from RE_NO_SUB.
39609         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
39610         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
39611         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
39612         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
39613         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
39614         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
39615         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
39616         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
39617         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
39618         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
39619         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
39620         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
39621         RE_SYNTAX_POSIX_MINIMAL_BASIC.
39622         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
39623         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
39624         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
39625         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
39626         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
39627         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
39628         (REG_FIXED): Renamed from REGS_FIXED.
39629         (REG_NREGS): Renamed from RE_NREGS.
39630
39631         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
39632         of other REG_* macros, since POSIX says the user is allowed to
39633         #undef these macros selectively.
39634
39635         (reg_errcode_t): Update comment stating what other tables need
39636         to be consistent.
39637
39638         Rename the following enum values to obey POSIX requirements.
39639         The old names are still visible as macros.
39640         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
39641         is not defined, since GNU is supposed to be a superset of POSIX as
39642         much as possible, and since we want reg_errcode_t to be a signed
39643         type for implementation consistency.
39644         (_REG_NOERROR): Renamed from REG_NOERROR.
39645         (_REG_NOMATCH): Renamed from REG_NOMATCH.
39646         (_REG_BADPAT): Renamed from REG_BADPAT.
39647         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
39648         (_REG_ECTYPE): Renamed from REG_ECTYPE.
39649         (_REG_EESCAPE): Renamed from REG_EESCAPE.
39650         (_REG_ESUBREG): Renamed from REG_ESUBREG.
39651         (_REG_EBRACK): Renamed from REG_EBRACK.
39652         (_REG_EPAREN): Renamed from REG_EPAREN.
39653         (_REG_EBRACE): Renamed from REG_EBRACE.
39654         (_REG_BADBR): Renamed from REG_BADBR.
39655         (_REG_ERANGE): Renamed from REG_ERANGE.
39656         (_REG_ESPACE): Renamed from REG_ESPACE.
39657         (_REG_BADRPT): Renamed from REG_BADRPT.
39658         (_REG_EEND): Renamed from REG_EEND.
39659         (_REG_ESIZE): Renamed from REG_ESIZE.
39660         (_REG_ERPAREN): Renamed from REG_ERPAREN.
39661         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
39662         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
39663         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
39664         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
39665
39666         (_REG_RE_NAME, _REG_RM_NAME): New macros.
39667         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
39668         changed.  But support the old name if the new one is not defined
39669         and if _REGEX_SOURCE.
39670
39671         Change the following member names in struct re_pattern_buffer.
39672         The old names are still supported if !_REGEX_SOURCE.
39673         The new names are always supported, regardless of _REGEX_SOURCE.
39674         (re_buffer): Renamed from buffer.
39675         (re_allocated): Renamed from allocated.
39676         (re_used): Renamed from used.
39677         (re_syntax): Renamed from syntax.
39678         (re_fastmap): Renamed from fastmap.
39679         (re_translate): Renamed from translate.
39680         (re_can_be_null): Renamed from can_be_null.
39681         (re_regs_allocated): Renamed from regs_allocated.
39682         (re_fastmap_accurate): Renamed from fastmap_accurate.
39683         (re_no_sub): Renamed from no_sub.
39684         (re_not_bol): Renamed from not_bol.
39685         (re_not_eol): Renamed from not_eol.
39686         (re_newline_anchor): Renamed from newline_anchor.
39687
39688         Change the following member names in struct re_registers.
39689         The old names are still supported if !_REGEX_SOURCE.
39690         The new names are always supported, regardless of _REGEX_SOURCE.
39691         (rm_num_regs): Renamed from num_regs.
39692         (rm_start): Renamed from start.
39693         (rm_end): Renamed from end.
39694
39695         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
39696         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
39697         Prepend __ to parameter names.
39698
39699         Undo yesterday's changes.
39700
39701 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
39702
39703         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
39704         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
39705         lib/regex.c.
39706
39707 2005-08-24  Jim Meyering  <jim@meyering.net>
39708
39709         Sync from coreutils.
39710         * m4/fcntl-safer.m4: New file.
39711
39712         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
39713         and object files for this module.
39714
39715 2005-08-24  Jim Meyering  <jim@meyering.net>
39716
39717         Sync from coreutils.
39718         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
39719
39720 2005-08-24  Jim Meyering  <jim@meyering.net>
39721
39722         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
39723         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
39724
39725 2005-08-24  Jim Meyering  <jim@meyering.net>
39726
39727         * modules/fcntl-safer: New module.
39728         * modules/fts (Depends-on): Add fcntl-safer.
39729         * MODULES.html.sh (File descriptor based Input/Output):
39730         Add fcntl-safer.
39731
39732 2005-08-24  Bruno Haible  <bruno@clisp.org>
39733
39734         Support for unit test modules.
39735         * modules/README: Mention tests modules.
39736         * modules/TEMPLATE-TESTS: New file.
39737         * gnulib-tool: New options --extract-tests-module, --with-tests and
39738         --tests-base (unused for the moment).
39739         (testsbase, inctests): New variables.
39740         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
39741         (func_verify_module): Exclude TEMPLATE-TESTS.
39742         (func_verify_nontests_module, func_verify_tests_module): New functions.
39743         (func_get_dependencies): Add implicit dependency for tests modules.
39744         (func_get_tests_module): New function.
39745         (func_modules_transitive_closure): When --with-tests was specified,
39746         include the unit tests as well, unless explicitly avoided.
39747         (func_emit_lib_Makefile_am): Ignore the tests modules here.
39748         (func_emit_tests_Makefile_am): New function.
39749         (func_create_testdir): When --with-tests was specified, emit a
39750         tests/ directory.
39751         * MODULES.html.sh (Future developments): Update.
39752
39753 2005-08-24  Bruno Haible  <bruno@clisp.org>
39754
39755         * modules/tls-tests: New file.
39756         * tests/test-tls.c: New file, from GNU gettext.
39757
39758 2005-08-24  Bruno Haible  <bruno@clisp.org>
39759
39760         * modules/lock-tests: New file.
39761         * tests/test-lock.c: New file, from GNU gettext.
39762
39763 2005-08-24  Bruno Haible  <bruno@clisp.org>
39764
39765         * lib/lock.h: Add multiple inclusion guard.
39766         * lib/tls.h: Add multiple inclusion guard.
39767
39768 2005-08-24  Bruno Haible  <bruno@clisp.org>
39769
39770         * gnulib-tool: Add support for the --aux-dir option to
39771         --create-testdir, --create-megatestdir, --test, --megatest.
39772         (func_create_testdir, func_create_megatestdir): Optionally emit a
39773         AC_CONFIG_AUX_DIR directive.
39774         (create-testdir, create-megatestdir, test, megatest): Provide a
39775         default value for $auxdir.
39776
39777 2005-08-24  Bruno Haible  <bruno@clisp.org>
39778
39779         * gnulib-tool (import): Use compound statement instead of subshell
39780         where possible.
39781
39782 2005-08-24  Bruno Haible  <bruno@clisp.org>
39783
39784         * gnulib-tool (import): Change --aux-dir default to "build-aux".
39785
39786 2005-08-24  Bruno Haible  <bruno@clisp.org>
39787
39788         * gnulib-tool (func_version): Update.
39789
39790 2005-08-24  Bruno Haible  <bruno@clisp.org>
39791
39792         * gnulib-tool (func_import, func_create_testdir,
39793         func_create_megatestdir): Quote all autoconf macro arguments.
39794
39795 2005-08-24  Bruno Haible  <bruno@clisp.org>
39796
39797         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
39798         option --force, because --force causes the aclocal.m4 of each
39799         subdirectory to be newer than the corresponding config.h.in.
39800
39801 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
39802
39803         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
39804         All contents moved to gl_REGEX.
39805         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
39806         assume that it does.
39807
39808 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
39809
39810         * lib/regex.h (REG_NOSYS)
39811         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
39812         Define, since POSIX requires it as of 2001.
39813         (_REG_ENOSYS)
39814         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
39815         New private symbol, used to keep the enum signed in all cases.
39816         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
39817         Youngman in
39818         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
39819
39820         * lib/regex_internal.c (re_string_skip_chars, register_state):
39821         (calc_state_hash):
39822         Remove forward decls; no longer needed now that we use prototypes.
39823         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
39824         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
39825         (clean_state_log_if_needed): Likewise.
39826
39827 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
39828
39829         * config/srclist.txt: Add glibc bugs 1231-1233.
39830
39831 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
39832
39833         Fix problems reported by Sam Steingold in
39834         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
39835         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
39836         assumed that reg_errcode_t is a signed type, which is not
39837         necessarily true if _XOPEN_SOURCE is not defined.
39838         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
39839         since some compilers warn about it otherwise.
39840
39841 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
39842
39843         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
39844         (init_word_char, create_initial_state, duplicate_node_closure):
39845         (fetch_token, peek_token_bracket, build_range_exp):
39846         (build_collating_symbol): Remove forward decls; no longer needed
39847         now that we use prototypes.
39848
39849         * lib/regcomp.c:
39850         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
39851         (re_compile_fastmap_iter, regcomp, regerror, regfree):
39852         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
39853         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
39854         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
39855         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
39856         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
39857         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
39858         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
39859         (build_range_exp, build_collating_symbol, parse_bracket_exp):
39860         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
39861         (build_charclass, build_charclass_op, fetch_number, create_tree):
39862         (create_token_tree, mark_opt_subexp, duplicate_tree):
39863         Use prototypes rather than old-style definitions.
39864
39865         * lib/regex_internal.c:
39866         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
39867         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
39868         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
39869         (re_string_reconstruct, re_string_peek_byte_case):
39870         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
39871         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
39872         (re_node_set_init_copy, re_node_set_add_intersect):
39873         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
39874         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
39875         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
39876         (re_acquire_state, re_acquire_state_context, register_state):
39877         (create_ci_newstate, create_cd_newstate, free_state):
39878         Likewise.
39879         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
39880         re_search_2):
39881         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
39882         (re_search_internal, prune_impossible_nodes):
39883         (acquire_init_state_context, check_matching, static):
39884         (check_halt_node_context, check_halt_state_context, proceed_next_node):
39885         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
39886         (update_regs, sift_states_backward, build_sifted_states):
39887         (clean_state_log_if_needed, merge_state_array):
39888         (update_cur_sifted_state, add_epsilon_src_nodes):
39889         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
39890         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
39891         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
39892         (find_recover_state, check_subexp_matching_top, transit_state_mb):
39893         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
39894         (check_arrival, check_arrival_add_next_nodes):
39895         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
39896         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
39897         (check_node_accept_bytes, check_node_accept, extend_buffers):
39898         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
39899         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
39900         (sift_ctx_init):
39901         Likewise.
39902
39903         * lib/regex_internal.h:
39904         (re_string_allocate, re_string_construct, re_string_reconstruct):
39905         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
39906         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
39907         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
39908         (re_string_context_at, re_string_peek_byte_case):
39909         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
39910         is defined, since we now use prototypes always.
39911
39912         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
39913         C89 or better.  All uses removed.
39914
39915 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
39916
39917         * config/srclist.txt: Add glibc bugs 1220-1227.
39918
39919 2005-08-20  Jim Meyering  <jim@meyering.net>
39920
39921         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
39922         of unused local, dfa.
39923
39924 2005-08-20  Bruno Haible  <bruno@clisp.org>
39925
39926         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
39927
39928 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
39929
39930         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
39931         (re_node_set_insert_last, re_dfa_add_node):
39932         Rename local variables to avoid GCC shadowing warnings.
39933
39934 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
39935
39936         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
39937         [defined lint]: Suppress bogus uninitialized-variable warnings.
39938
39939         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
39940         and let the caller return REG_ESPACE if out of space.  This
39941         removes an uninitialied-variable warning with GCC 4.0.1, and also
39942         avoids taking the address of a local variable.  All callers
39943         changed.
39944
39945 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
39946
39947         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
39948         $LIBCSRC/posix/regexec.c.
39949         Add glibc bug 1217 for regcomp.c.
39950
39951 2005-08-19  Jim Meyering  <jim@meyering.net>
39952
39953         * lib/regexec.c (proceed_next_node): Redo local variables to
39954         avoid GCC shadowing warnings.
39955
39956 2005-08-18  Bruno Haible  <bruno@clisp.org>
39957
39958         * lib/strstr.c (strstr): Fix return value in multibyte case.
39959         * lib/strcasestr.c (strcasestr): Likewise.
39960
39961 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
39962
39963         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
39964
39965 2005-08-17  Jim Meyering  <jim@meyering.net>
39966
39967         Make the %s format (seconds since the epoch) work for a negative
39968         number and when used with a zero-padded field width, e.g. %015s.
39969
39970         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
39971         label so that it precedes the code to set `digits'.  Otherwise,
39972         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
39973         print `00-22'.  Now, it prints `-0022', as it should.
39974
39975 2005-08-17  Bruno Haible  <bruno@clisp.org>
39976
39977         * modules/strstr (Files): Add m4/mbrtowc.m4.
39978         (Depends-on): Add mbuiter.
39979
39980 2005-08-17  Bruno Haible  <bruno@clisp.org>
39981
39982         * modules/strcasestr: New file.
39983         * MODULES.html.sh (String handling, based on ANSI C 89): Add
39984         strcasestr.
39985
39986 2005-08-17  Bruno Haible  <bruno@clisp.org>
39987
39988         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
39989
39990 2005-08-17  Bruno Haible  <bruno@clisp.org>
39991
39992         * modules/mbuiter: New file.
39993         * MODULES.html.sh (Extended multibyte and wide character utilities):
39994         Add mbuiter.
39995
39996 2005-08-17  Bruno Haible  <bruno@clisp.org>
39997
39998         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
39999         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
40000
40001 2005-08-17  Bruno Haible  <bruno@clisp.org>
40002
40003         * m4/strcasestr.m4: New file.
40004
40005 2005-08-17  Bruno Haible  <bruno@clisp.org>
40006
40007         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
40008         * lib/strstr.c: Completely rewritten, with multibyte locale support.
40009
40010 2005-08-17  Bruno Haible  <bruno@clisp.org>
40011
40012         * lib/strcasestr.h: New file.
40013         * lib/strcasestr.c: New file.
40014
40015 2005-08-17  Bruno Haible  <bruno@clisp.org>
40016
40017         * lib/strcasecmp.c: Use mbuiter.h.
40018
40019 2005-08-17  Bruno Haible  <bruno@clisp.org>
40020
40021         * lib/mbuiter.h: New file.
40022
40023 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
40024
40025         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
40026         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
40027         and gl_GETOPT are both invoked via different paths (as happens
40028         with GNU tar CVS because it uses both argp and getopt), the former
40029         wins.
40030
40031 2005-08-16  Bruno Haible  <bruno@clisp.org>
40032
40033         * modules/tls: New file.
40034         * MODULES.html.sh (Multithreading): Add tls.
40035
40036 2005-08-16  Bruno Haible  <bruno@clisp.org>
40037
40038         * modules/strnlen1: New file.
40039         * MODULES.html.sh (String handling): Add strnlen1.
40040
40041 2005-08-16  Bruno Haible  <bruno@clisp.org>
40042
40043         * modules/strcase (Files): Add m4/mbrtowc.m4.
40044         (Depends-on): Add strnlen1, mbchar.
40045
40046 2005-08-16  Bruno Haible  <bruno@clisp.org>
40047
40048         * modules/mbiter: New file.
40049         * MODULES.html.sh (Extended multibyte and wide character utilities):
40050         Add mbiter.
40051
40052 2005-08-16  Bruno Haible  <bruno@clisp.org>
40053
40054         * modules/mbfile: New file.
40055         * MODULES.html.sh (Extended multibyte and wide character utilities):
40056         Add mbfile.
40057
40058 2005-08-16  Bruno Haible  <bruno@clisp.org>
40059
40060         * modules/mbchar: New file.
40061         * MODULES.html.sh (Extended multibyte and wide character utilities):
40062         New section.
40063
40064 2005-08-16  Bruno Haible  <bruno@clisp.org>
40065
40066         * m4/tls.m4: New file, from GNU gettext.
40067
40068 2005-08-16  Bruno Haible  <bruno@clisp.org>
40069
40070         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
40071         always.
40072         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
40073
40074 2005-08-16  Bruno Haible  <bruno@clisp.org>
40075
40076         * m4/mbiter.m4: New file.
40077
40078 2005-08-16  Bruno Haible  <bruno@clisp.org>
40079
40080         * m4/mbfile.m4: New file.
40081
40082 2005-08-16  Bruno Haible  <bruno@clisp.org>
40083
40084         * m4/mbchar.m4: New file.
40085
40086 2005-08-16  Bruno Haible  <bruno@clisp.org>
40087
40088         * lib/tls.h: New file, from GNU gettext.
40089         * lib/tls.c: New file, from GNU gettext.
40090
40091 2005-08-16  Bruno Haible  <bruno@clisp.org>
40092
40093         * lib/strnlen1.h: New file.
40094         * lib/strnlen1.c: New file.
40095
40096 2005-08-16  Bruno Haible  <bruno@clisp.org>
40097
40098         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
40099         (mbi_init): Update.
40100         (mbi_avail, mbi_advance): Let the iteration end before the terminating
40101         NUL byte, not after it.
40102
40103 2005-08-16  Bruno Haible  <bruno@clisp.org>
40104
40105         * lib/strcase.h (strcasecmp): Add note in comments.
40106         * lib/strncasecmp.c: Use code from strcasecmp.c.
40107         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
40108         (strcasecmp): Work correctly in multibyte locales.
40109
40110 2005-08-16  Bruno Haible  <bruno@clisp.org>
40111
40112         * lib/mbiter.h: New file.
40113
40114 2005-08-16  Bruno Haible  <bruno@clisp.org>
40115
40116         * lib/mbfile.h: New file.
40117
40118 2005-08-16  Bruno Haible  <bruno@clisp.org>
40119
40120         * lib/mbchar.h: New file.
40121         * lib/mbchar.c: New file.
40122
40123 2005-08-16  Bruno Haible  <bruno@clisp.org>
40124
40125         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
40126         the valid ones. Makes the comparison operations transitive:
40127         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
40128         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
40129
40130 2005-08-15  Simon Josefsson  <jas@extundo.com>
40131
40132         * modules/ssize_t (License): Change to 'unlimited'.
40133
40134         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
40135
40136 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
40137
40138         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
40139         Add comments for each pending glibc patch.
40140
40141 2005-08-15  Bruno Haible  <bruno@clisp.org>
40142
40143         * lib/regex.h (__restrict_arr): Don't define to __restrict if
40144         __cplusplus is defined.
40145
40146 2005-08-14  Jim Meyering  <jim@meyering.net>
40147
40148         Sync from coreutils.
40149
40150         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
40151         Use the hash-table-based cycle-detection code not just when
40152         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
40153         Reported by James Youngman in
40154         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
40155         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
40156         FTS_TIGHT_CYCLE_CHECK.
40157         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
40158         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
40159         once again.
40160         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
40161         * lib/fts.c (fd_safer): Remove decl.
40162         Include fcntl--.h rather than unistd-safer.h
40163         (fts_safe_changedir): Don't call fd_safer; no longer needed
40164         now that we include fcntl--.h.
40165
40166 2005-08-12  Simon Josefsson  <jas@extundo.com>
40167
40168         * modules/getndelim2: Use ssize_t module.
40169         * modules/getnline: Likewise.
40170         * modules/safe-read: Likewise.
40171         * modules/xreadlink: Likewise.
40172
40173         * modules/ssize_t: New file.
40174
40175 2005-08-12  Simon Josefsson  <jas@extundo.com>
40176
40177         * m4/readline.m4: Look for termcap, curses or ncurses if required.
40178
40179 2005-08-12  Simon Josefsson  <jas@extundo.com>
40180
40181         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
40182         ssize_t.
40183
40184 2005-08-12  Simon Josefsson  <jas@extundo.com>
40185
40186         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
40187         readline, getdelim and check_version.
40188         (Support for systems lacking ISO C 99: Sizes of integer types):
40189         Add size_max.
40190
40191 2005-08-12  Bruno Haible  <bruno@clisp.org>
40192
40193         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
40194
40195 2005-08-11  Simon Josefsson  <jas@extundo.com>
40196
40197         * modules/readline: New file.
40198
40199         * modules/strnlen (Files): Add strnlen.h.
40200
40201 2005-08-11  Simon Josefsson  <jas@extundo.com>
40202
40203         * m4/readline.m4: New file.
40204
40205 2005-08-11  Simon Josefsson  <jas@extundo.com>
40206
40207         * lib/readline.h, readline.c: New file.
40208
40209 2005-08-11  Simon Josefsson  <jas@extundo.com>
40210
40211         * doc/gnulib.texi (Initial import, Finishing touches): Mention
40212         gl_AVOID.
40213
40214 2005-08-11  Bruno Haible  <bruno@clisp.org>
40215
40216         * lib/strnlen.h (strnlen): Change parameter name to match comment.
40217
40218 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
40219
40220         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
40221
40222 2005-08-10  Simon Josefsson  <jas@extundo.com>
40223
40224         * tests/test-iconvme.c: New file.
40225
40226 2005-08-10  Simon Josefsson  <jas@extundo.com>
40227
40228         * m4/strnlen.m4: New file.
40229
40230         * m4/strndup.m4: Don't check for strnlen declaration, done in
40231         strnlen.m4.
40232
40233 2005-08-10  Simon Josefsson  <jas@extundo.com>
40234
40235         * lib/strndup.c: Use strnlen.h.
40236
40237         * lib/strnlen.h: New file.
40238
40239 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
40240
40241         * README: Typos.
40242
40243 2005-08-02  Simon Josefsson  <jas@extundo.com>
40244
40245         * modules/readline: New file.
40246
40247 2005-08-02  Simon Josefsson  <jas@extundo.com>
40248
40249         * modules/getdelim: New file.
40250
40251         * modules/getline: Rewrite, don't use getndelim2.
40252
40253 2005-08-02  Simon Josefsson  <jas@extundo.com>
40254
40255         * m4/getline.m4: Separate out getdelim stuff into separate module.
40256
40257         * m4/getdelim.m4: New file.
40258
40259 2005-08-02  Simon Josefsson  <jas@extundo.com>
40260
40261         * lib/getline.h, getline.c: Rewrite.
40262
40263         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
40264
40265 2005-07-31  Bruno Haible  <bruno@clisp.org>
40266
40267         * lib/lock.h (gl_lock_initializer): New macro.
40268         (gl_lock_define_initialized): Use it.
40269         (gl_rwlock_initializer): New macro.
40270         (gl_rwlock_define_initialized): Use it.
40271         (gl_recursive_lock_initializer): New macro.
40272         (gl_recursive_lock_define_initialized): Use it.
40273
40274 2005-07-30  Karl Berry  <karl@gnu.org>
40275
40276         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
40277         Report from Ben Pfaff, regarding getopt.
40278
40279 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
40280
40281         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
40282         normal way.
40283         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
40284         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
40285         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
40286         (gl_GETOPT): Use the new macros.  Most of the implementation
40287         is moved to the new macros.  This is for programs like Emacs
40288         that don't want all the functionality of gl_GETOPT.
40289
40290 2005-07-26  Bruno Haible  <bruno@clisp.org>
40291
40292         * m4/lock.m4: Update from GNU gettext.
40293
40294 2005-07-26  Bruno Haible  <bruno@clisp.org>
40295
40296         * lib/lock.h: Update from GNU gettext.
40297         * lib/lock.c: Update from GNU gettext.
40298
40299 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
40300
40301         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
40302         obsolescent AC_TRY_RUN.  Include the default includes files, for
40303         'exit'.
40304
40305 2005-07-24  Bruno Haible  <bruno@clisp.org>
40306
40307         * modules/visibility: New file.
40308         * MODULES.html.sh (Misc): Add visibility.
40309
40310 2005-07-24  Bruno Haible  <bruno@clisp.org>
40311
40312         * m4/visibility.m4: New file.
40313
40314 2005-07-24  Bruno Haible  <bruno@clisp.org>
40315
40316         * doc/visibility.texi: New file.
40317
40318 2005-07-22  Bruno Haible  <bruno@clisp.org>
40319
40320         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
40321         $(ALLOCA_H), redundant through BUILT_SOURCES.
40322         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
40323         redundant through BUILT_SOURCES.
40324         * modules/byteswap (Makefile.am): Remove explicit dependency on
40325         $(BYTESWAP_H), redundant through BUILT_SOURCES.
40326         * modules/fnmatch (Makefile.am): Remove explicit dependency on
40327         $(FNMATCH_H), redundant through BUILT_SOURCES.
40328         * modules/getopt (Makefile.am): Remove explicit dependency on
40329         $(GETOPT_H), redundant through BUILT_SOURCES.
40330         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
40331         redundant through BUILT_SOURCES.
40332         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
40333         redundant through BUILT_SOURCES.
40334         * modules/stdbool (Makefile.am): Remove explicit dependency on
40335         $(STDBOOL_H), redundant through BUILT_SOURCES.
40336         * modules/stdint (Makefile.am): Remove explicit dependency on
40337         $(STDINT_H), redundant through BUILT_SOURCES.
40338         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
40339         Remove explicit dependency on $(SYSEXITS_H).
40340         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
40341
40342 2005-07-18  Simon Josefsson  <jas@extundo.com>
40343
40344         * lib/check-version.c (check_version): Accept identical versions too.
40345
40346 2005-07-18  Bruno Haible  <bruno@clisp.org>
40347
40348         * modules/lock: New file.
40349         * MODULES.html.sh (Multithreading): New section.
40350
40351 2005-07-18  Bruno Haible  <bruno@clisp.org>
40352
40353         * m4/lock.m4: New file, from GNU gettext.
40354
40355 2005-07-18  Bruno Haible  <bruno@clisp.org>
40356
40357         * lib/lock.h: New file, from GNU gettext.
40358         * lib/lock.c: New file, from GNU gettext.
40359
40360 2005-07-18  Bruno Haible  <bruno@clisp.org>
40361
40362         * lib/lock.h (gl_once_t): New type.
40363         (gl_once_define, gl_once): New macros.
40364         * lib/lock.c (fresh_once): New variable.
40365         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
40366         functions.
40367
40368 2005-07-16  Simon Josefsson  <jas@extundo.com>
40369
40370         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
40371         workaround, suggested by Bruno.
40372
40373 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
40374
40375         * modules/xalloc (Depends-on): Add xalloc-die.
40376         * modules/xvasprintf (Depends-on): Add xalloc-die.
40377
40378 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
40379
40380         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
40381         with a minor change.
40382
40383 2005-07-15  Bruno Haible  <bruno@clisp.org>
40384
40385         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
40386         When using lib/poll.c, define poll as rpl_poll.
40387
40388 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
40389
40390         * modules/argp (Depends-on): Remove unlocked-io.
40391
40392 2005-07-14  Derek Price  <derek@ximbiot.com>
40393
40394         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
40395         for glob symlink bug.
40396
40397 2005-07-14  Bruno Haible  <bruno@clisp.org>
40398
40399         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
40400         Instead, test for *_unlocked function declarations directly.
40401
40402 2005-07-11  Simon Josefsson  <jas@extundo.com>
40403
40404         * modules/size_max: New file.
40405
40406         * modules/xsize: Depend on size_max module for size_max.m4.
40407
40408 2005-07-11  Simon Josefsson  <jas@extundo.com>
40409
40410         * lib/size_max.h: New file.
40411
40412 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
40413
40414         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
40415         copyright symbol and the year.
40416         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
40417         (version_etc_va): Use parameterized copyright notice.
40418         Reword to conform to the current GNU coding standards.
40419
40420 2005-07-11  Karl Berry  <karl@gnu.org>
40421
40422         * doc/gnulib.texi (Quoting): new node.
40423         (Initial import): more info, from Patrice.
40424
40425 2005-07-11  Bruno Haible  <bruno@clisp.org>
40426
40427         * gnulib-tool (func_usage): Document option --avoid.
40428         (Command line options): Handle --avoid.
40429         (func_acceptable): New function.
40430         (func_modules_transitive_closure): Use it.
40431
40432 2005-07-11  Bruno Haible  <bruno@clisp.org>
40433
40434         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
40435         Reported by Jim Meyering.
40436
40437 2005-07-10  Bruno Haible  <bruno@clisp.org>
40438
40439         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
40440         Needed when size_t is smaller than 'unsigned int'.
40441         Reported by Paul Eggert.
40442
40443 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
40444
40445         * modules/argp (Depends-on): Add unlocked-io
40446
40447 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
40448
40449         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
40450         block of defines.
40451
40452 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
40453
40454         * config/srclist.txt: Comment out regcomp.c, since we have a porting
40455         fix now.
40456
40457 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
40458         and Paul Eggert  <eggert@cs.ucla.edu>
40459
40460         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
40461         in wint_t, not wchar_t.  Remove now-unnecessary cast.
40462
40463 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
40464
40465         * modules/regex (Files): Add lib/regex_internal.c,
40466         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
40467         (Depends-on): Add extensions.
40468         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
40469
40470 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
40471
40472         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
40473         pathconf.
40474         * m4/same.m4 (gl_SAME): Likewise.
40475         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
40476
40477         * m4/regex.m4: Adjust to new libc regex implementation.
40478         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
40479         all the .c and .h parts of (the new) regex.
40480         Quote the m4 stuff better.
40481         Check for RE_ICASE bug of old gnulib.
40482         Check for REG_STARTEND of recent libc.
40483         Rename local variables from jm_* to gl_*.
40484         Quote operand of "test -f".
40485         Say "recent enough" version of libc, not "version 2".
40486         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
40487         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
40488         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
40489         Remove check for btowc, isascii.
40490         Require AM_LANGINFO_CODESET.
40491
40492 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
40493
40494         * lib/regex.c, regex.h: Sync from libc.
40495         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
40496         * lib/regexec.c:
40497         New files, synced from libc, except that regex_internal.h
40498         currently has a small porting fix.
40499
40500 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
40501
40502         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
40503         regex_internal.c, regexec.c.
40504         Add regex_internal.h too, but as a comment, since the libc version
40505         is currently broken in gnulib mode.
40506
40507 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
40508
40509         Support programs like Emacs that use gnulib but not gettext.
40510         * MODULES.html.sh (Internationalization functions): Add gettext-h.
40511         * modules/gettext-h: New file.
40512         * modules/gettext (Files): Remove lib/gettext.h.
40513         (Depends-on): Add gettext-h.
40514         (Makefile.am): Remove lib_SOURCES.
40515         * modules/argmatch, modules/c-stack, modules/closeout:
40516         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
40517         * modules/execute, modules/file-type, modules/getaddrinfo:
40518         * modules/getopt, modules/human, modules/javacomp:
40519         * modules/javaexec, modules/mkdir-p, modules/obstack:
40520         * modules/openat, modules/pagealign_alloc, modules/pipe:
40521         * modules/quotearg, modules/regex, modules/rpmatch:
40522         * modules/unicodeio, modules/userspec, modules/version-etc:
40523         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
40524         * modules/xsetenv:
40525         Depend on gettext-h, not gettext.
40526
40527 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
40528
40529         * gnulib-tool (func_import): Add support for 'public domain' license.
40530         * modules/alloca, modules/atexit, modules/memmove:
40531         Now public domain, not GPL.
40532         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
40533         * modules/realloc, modules/strerror, modules/strtod:
40534         Now LGPL, not GPL.
40535
40536 2005-07-05  Bruno Haible  <bruno@clisp.org>
40537
40538         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
40539         autoconf CVS. Needed for mingw.
40540
40541 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
40542
40543         Remove the dependency of the strftime module on the tzset module.
40544         * modules/strftime (Depends-on): Remove dependency on tzset.
40545
40546 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
40547
40548         Remove the dependency of the strftime module on the tzset module.
40549         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
40550         gl_FUNC_TZSET_CLOBBER.
40551
40552 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
40553
40554         Remove the dependency of the strftime module on the tzset module.
40555         * lib/strftime.c (my_strftime)
40556         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
40557         Copy the input structure, to work around some of the bug with
40558         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
40559         Solaris releases, you should also use the tzset module, but we won't
40560         require it as a dependency any more since we don't want LGPLed code
40561         to depend on GPLed code.
40562
40563 2005-07-02  Jim Meyering  <jim@meyering.net>
40564
40565         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
40566         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
40567         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
40568         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
40569
40570 2005-07-02  Jim Meyering  <jim@meyering.net>
40571
40572         * lib/backupfile.c (backup_args): Change a `0' to NULL.
40573
40574 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
40575
40576         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
40577         declares only 'struct timespec;' (!).
40578
40579 2005-07-01  Jim Meyering  <jim@meyering.net>
40580
40581         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
40582         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
40583         * lib/save-cwd.c, tempname.c:
40584         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
40585         and don't include <sys/file.h>).
40586
40587 2005-06-29  Jim Meyering  <jim@meyering.net>
40588
40589         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
40590         type name.  Use the variable name instead.
40591         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
40592         Likewise.
40593
40594 2005-06-28  Simon Josefsson  <jas@extundo.com>
40595
40596         * modules/check-version (Files): Add check-version.m4.
40597
40598 2005-06-28  Simon Josefsson  <jas@extundo.com>
40599
40600         * m4/check-version.m4: New file, suggested by Jim Meyering
40601         <jim@meyering.net>.
40602
40603 2005-06-28  Simon Josefsson  <jas@extundo.com>
40604
40605         * lib/check-version.h, lib/check-version.c: New files.
40606
40607 2005-06-28  Simon Josefsson  <jas@extundo.com>
40608
40609         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
40610         collision with global variable.  Better indentation.  Don't
40611         increment buffer pointer beyond buffer end.  Based on comments
40612         from Paul Eggert <eggert@cs.ucla.edu>.
40613
40614         * lib/base64.h: Indent.
40615
40616 2005-06-28  Simon Josefsson  <jas@extundo.com>
40617
40618         * doc/gnulib.texi (Library version handling): New section.
40619
40620 2005-06-28  Jim Meyering  <jim@meyering.net>
40621
40622         * check-module (find_included_lib_files): Hard-code another
40623         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
40624         but modules/fts-lgpl (correctly) does not list those files.
40625
40626         * modules/canonicalize (Files): Add lib/pathmax.h.
40627
40628 2005-06-25  Simon Josefsson  <jas@extundo.com>
40629
40630         * modules/check-version: New file.
40631
40632 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
40633
40634         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
40635         initializer of struct addrinfo, as an indication that we don't
40636         care how many members the structure has.
40637
40638 2005-06-24  Derek Price  <derek@ximbiot.com>
40639         and Bruno Haible  <bruno@clisp.org>
40640
40641         Remove stat module & update lstat.
40642         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
40643         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
40644         * m4/stat.m4: Remove this file.
40645
40646 2005-06-24  Derek Price  <derek@ximbiot.com>
40647         and Bruno Haible  <bruno@clisp.org>
40648
40649         Remove stat module & update lstat.
40650         * lib/stat.c: Remove this file...
40651         (slash_aware_lstat): ...moving this content and its support...
40652         * lib/lstat.c (rpl_lstat): ...into here.
40653         * lib/lstat.h: New file.
40654
40655 2005-06-24  Derek Price  <derek@ximbiot.com>
40656         and Bruno Haible  <bruno@clisp.org>
40657
40658         Remove stat module & update lstat.
40659         * config/srclist.txt (libc sources): Remove stat.
40660
40661 2005-06-24  Derek Price  <derek@ximbiot.com>
40662         and Bruno Haible  <bruno@clisp.org>
40663
40664         Remove stat module & update lstat.
40665         * MODULES.html.sh (stat): Remove.
40666         * MODULES.html: Regenerated.
40667         * modules/lstat (Description): Correct function name.
40668         (Files): Add "lstat.h".
40669         (Depends-on): Remove stat, add xalloc, stat-macros.
40670         * modules/stat: Remove this file.
40671         (Include): Add "lstat.h", remove <sys/stat.h>.
40672
40673 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
40674
40675         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
40676         (ranged_convert): Don't save conversion in a temporary struct.
40677         This causes a warning with GCC 4.0.0, and anyway in the typical
40678         case it's not worth the extra 100 bytes or so of code.
40679         (ranged_convert, __mktime_internal): When calling a function via a
40680         pointer P, use P () rather than (*P) (), as we now assume C89 or
40681         better.
40682
40683 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
40684
40685         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
40686         "who -r" failed to give output.  Problem reported by Tim Waugh.
40687
40688         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
40689         (xcalloc): Use it to avoid needless tests.
40690         Problem reported by Jim Meyering.
40691
40692 2005-06-20  Derek Price  <derek@ximbiot.com>
40693
40694         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
40695         unnecessary for Autoconfs > 2.59c.
40696
40697 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
40698
40699         * lib/argp.h (__option_is_short): Check upper limit of
40700         __key. Isprint() requires its argument to have the value
40701         of an unsigned char or EOF.
40702
40703 2005-06-16  Jim Meyering  <jim@meyering.net>
40704
40705         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
40706         when either N or S is zero.
40707
40708 2005-06-16  Derek Price  <derek@ximbiot.com>
40709
40710         * m4/bison.m4: Declare YACC & YFLAGS precious.
40711
40712 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
40713
40714         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
40715         multibyte string or pattern, fall back on unibyte matching.
40716         Problem reported by James Youngman.
40717
40718 2005-06-08  Bruno Haible  <bruno@clisp.org>
40719
40720         * modules/csharpcomp: New file.
40721         * MODULES.html.sh (C#): Add csharpcomp.
40722
40723 2005-06-08  Bruno Haible  <bruno@clisp.org>
40724
40725         * m4/csharpcomp.m4: New file, from GNU gettext.
40726
40727 2005-06-08  Bruno Haible  <bruno@clisp.org>
40728
40729         * lib/csharpcomp.h: New file, from GNU gettext.
40730         * lib/csharpcomp.c: New file, from GNU gettext.
40731         * lib/csharpcomp.sh.in: New file, from GNU gettext.
40732
40733 2005-06-08  Bruno Haible  <bruno@clisp.org>
40734
40735         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
40736         warning on mingw.
40737
40738 2005-06-07  Derek Price  <derek@ximbiot.com>
40739
40740         Sync from CVS.
40741         * lib/glob_.h: Indent nested #ifdef.
40742
40743 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
40744
40745         Sync from coreutils.
40746         Use "file name" when talking about file names, instead of "filename"
40747         or "path", as per the GNU coding standards.
40748         * lib/mkdir-p.c: Renamed from makepath.c.
40749         (make_dir_parents): Renamed from make_path.  All callers changed.
40750         * lib/mkdir-p.h: Likewise.  All includers changed.
40751         * lib/filenamecat.c: Renamed from path-concat.c.
40752         (file_name_concat): Renamed from path_concat.  All callers changed.
40753         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
40754         * lib/filenamecat.h: Likewise.  All includers changed.
40755         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
40756         in comments or local variable names.
40757         * lib/basename.c: Likewise.
40758         * lib/canonicalize.c, canonicalize.h: Likewise.
40759         * lib/dirname.c, dirname.h: Likewise.
40760         * lib/euidaccess.c: Likewise.
40761         * lib/exclude.c: Likewise
40762         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
40763         * lib/fsusage.c, fsuage.h: Likewise.
40764         * lib/fts.c, fts_.h: Likewise.
40765         * lib/getcwd.c: Likewise.
40766         * lib/getloadavg.c: Likewise.
40767         * lib/mkstemp.c: Likewise.
40768         * lib/mountlist.c, mountlist.h: Likewise.
40769         * lib/openat.c, openat.h: Likewise.
40770         * lib/readlink-stub.c: Likewise.
40771         * lib/readutmp.c, readutmp.h: Likewise.
40772         * lib/rename.c: Likewise.
40773         * lib/rmdir.c: Likewise.
40774         * lib/same.c: Likewise.
40775         * lib/savedir.c: Likewise.
40776         * lib/stripslash.c: Likewise.
40777         * lib/tempname.c: Likewise.
40778         * lib/xreadlink.c: Likewise.
40779         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
40780         All uses changed.
40781         * lib/exclude.h: Likewise.
40782
40783         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
40784         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
40785         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
40786         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
40787         * lib/pathmax.h: Include <limits.h> unconditionally, since other
40788         files have been getting away with it for years (MORE/BSD 4.3
40789         is extinct now).
40790         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
40791         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
40792
40793         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
40794         Define to 256, not 255, as per modern POSIX.
40795
40796 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
40797
40798         Sync from coreutils.
40799         Use "file name" when talking about file names, instead of "filename"
40800         or "path", as per the GNU coding standards.
40801         * MODULES.html.sh: mkdir-p renamed from makepath.
40802         filenamecat renamed from path-concat.
40803         * modules/filenamecat: Renamed from modules/path-concat.
40804         (Files): filenamecat.h and filenamecat.c renamed from
40805         path-concat.h and path-concat.c.
40806         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
40807         (Include): filenamecat.h, not path-concat.h.
40808         * modules/mkdir-p: Renamed from modules/makepath.
40809         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
40810         makepath.c.
40811         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
40812         (Include): mkdir-p.h, not makepath.h.
40813
40814 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
40815
40816         Sync from coreutils.
40817         * m4/mkdir-p.m4: Renamed from makepath.m4.
40818         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
40819         Rename files from makepath.c to mkdir-p.c, and from
40820         makepath.h to mkdir-p.h.
40821         * m4/filenamecat.m4: Renamed from path-concat.m4.
40822         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
40823         Rename files from path-concat.c to filenamecat.c,
40824         and from path-concat.h to filenamecat.h.
40825         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
40826         "file name" in local variables or comments.
40827         * m4/rename.m4: Likewise.
40828
40829 2005-06-01  Bruno Haible  <bruno@clisp.org>
40830
40831         * modules/csharpexec: New file.
40832         * MODULES.html.sh (C#): New section.
40833
40834 2005-06-01  Bruno Haible  <bruno@clisp.org>
40835
40836         * m4/csharp.m4: New file, from GNU gettext.
40837         * m4/csharpexec.m4: New file, from GNU gettext.
40838
40839 2005-06-01  Bruno Haible  <bruno@clisp.org>
40840
40841         * lib/csharpexec.h: New file, from GNU gettext.
40842         * lib/csharpexec.c: New file, from GNU gettext.
40843         * lib/csharpexec.sh.in: New file, from GNU gettext.
40844
40845 2005-05-31  Derek Price  <derek@ximbiot.com>
40846             Paul Eggert  <eggert@cs.ucla.edu>
40847
40848         Sync from cvs.
40849         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
40850
40851 2005-05-31  Derek Price  <derek@ximbiot.com>
40852             Paul Eggert  <eggert@cs.ucla.edu>
40853
40854         Sync from cvs.
40855         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
40856
40857 2005-05-29  Derek Price  <derek@ximbiot.com>
40858
40859         * config/srclist.txt (glob_.h, glob.c): Add these files.
40860
40861 2005-05-29  Derek Price  <derek@ximbiot.com>
40862
40863         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
40864         * modules/glob: New file.
40865         * modules/getlogin_r: Add link to POSIX spec in description.
40866
40867 2005-05-29  Derek Price  <derek@ximbiot.com>
40868             Paul Eggert  <eggert@cs.ucla.edu>
40869
40870         * m4/glob.m4: New file.
40871
40872 2005-05-29  Derek Price  <derek@ximbiot.com>
40873             Paul Eggert  <eggert@cs.ucla.edu>
40874
40875         * lib/glob_.h, lib/glob.c: New files.
40876
40877 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
40878
40879         * modules/fts (Files): Remove m4/inttypes-pri.m4.
40880         * modules/fts-lgpl (Depends-on): Remove gettext.
40881
40882 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
40883
40884         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
40885         and don't require gt_INTTYPES_PRI.
40886
40887 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
40888
40889         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
40890
40891         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
40892         the configuration hassle isn't worth it.
40893         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
40894         (LONGEST_MODIFIER, PRIuMAX): Remove.
40895
40896 2005-05-27  Bruno Haible  <bruno@clisp.org>
40897
40898         * lib/getlogin_r.h: Remove second include of <stddef.h>.
40899
40900 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
40901
40902         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
40903         _POSIX_PTHREAD_SEMANTICS for Solaris.
40904
40905 2005-05-25  Derek Price  <derek@ximbiot.com>
40906
40907         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
40908
40909 2005-05-25  Derek Price  <derek@ximbiot.com>
40910             Paul Eggert  <eggert@cs.ucla.edu>
40911
40912         * modules/getlogin_r, m4/getlogin_r.m4: New files.
40913         * lib/getlogin_r.c, getlogin_r.h: New files.
40914
40915 2005-05-25  Bruno Haible  <bruno@clisp.org>
40916             Derek Price  <derek@ximbiot.com>
40917
40918         * lib/getlogin_r.h: Simplify API documentation.
40919
40920 2005-05-23  Derek Price  <derek@ximbiot.com>
40921
40922         * modules/minmax (Files): Add m4/minmax.m4.
40923         (configure.ac): Add gl_MINMAX.
40924
40925 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
40926
40927         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
40928         so that unistd-safer.h (GPL'ed code) need not be included.
40929
40930 2005-05-22  Bruno Haible  <bruno@clisp.org>
40931
40932         * m4/minmax.m4: New file.
40933         Based on a patch by Derek Price <derek@ximbiot.com>.
40934
40935 2005-05-22  Bruno Haible  <bruno@clisp.org>
40936
40937         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
40938         (INT64_MIN): Fix definition.
40939         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
40940
40941         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
40942         NEED_SIGNED_INT_TYPES.
40943
40944         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
40945         HAVE_SYSTEM_INTTYPES.
40946
40947 2005-05-22  Bruno Haible  <bruno@clisp.org>
40948
40949         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
40950         Also include <sys/param.h> if it defines MIN, MAX.
40951         Based on a patch by Derek Price <derek@ximbiot.com>.
40952
40953 2005-05-21  Jim Meyering  <jim@meyering.net>
40954
40955         * modules/fts (Files): Add m4/inttypes-pri.m4.
40956         (Depends-on): Add lstat and remove gettext.  Alphabetize.
40957
40958 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
40959
40960         New fts module.
40961         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
40962         (setup_dir, free_dir): New functions.
40963         (enter_dir, leave_dir): Define trivial
40964         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
40965         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
40966         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
40967         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
40968         Move to fts-cycle.c.
40969         (fts_open): Use setup_dir.
40970         (fts_close): Use free_dir.
40971         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
40972         This adds a label and some gotos, but the alternatives were messier.
40973         Check for memory allocation failure when entering a dir.
40974         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
40975         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
40976         (FTS): New member fts_cycle, that is a union that contains the
40977         old active_dir_ht and cycle_state.  All uses changed to mention
40978         fts_cycle.ht and fts_cycle.state.
40979         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
40980         fts.c, with the following changes:
40981         (setup_dir, free_dir): New functions.
40982         (enter_dir): Now returns bool.  Return true if successful, false
40983         if memory exhausted.  All callers changed.
40984         Do not bother partly cleaning up on
40985         memory allocation failure; that is free_dir's job.
40986         However, free ad if hash_insert fails, to avoid memory leak.
40987         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
40988         fts->fts_options to see which union member to use.
40989
40990 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
40991
40992         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
40993         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
40994
40995 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
40996
40997         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
40998
40999 2005-05-20  Jim Meyering  <jim@meyering.net>
41000
41001         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
41002         Now a macro, to pacify GCC.
41003
41004 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
41005
41006         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
41007         of -1.
41008
41009 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
41010
41011         * lib/chown.c (rpl_chown): Return -1 on failure.
41012
41013 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
41014
41015         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
41016         Don't check for stddef.h.
41017         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
41018         don't use its results.
41019         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
41020         since we include them unconditionally.  Don't require
41021         AM_STDBOOL_H, since stdbool is a prerequisite.
41022         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
41023         since we assume C89 or better.
41024         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
41025         as we don't use their results.
41026         Don't check for fchdir, memmove, memset, strrchr, as we use
41027         them unconditionally.
41028         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
41029         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
41030
41031 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
41032
41033         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
41034         Include <stddef.h> unconditionally, since we assume C89 now.
41035         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
41036         * lib/fts.c: Include fts_.h first, to check interface.
41037         Do not include intprops.h; no longer needed.
41038         Include cycle-check.h and hash.h, since fts_.h no longer does.
41039         Remove unnecessary casts of closedir to void.
41040         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
41041         decide whether to decrement nlinks.
41042         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
41043         (FTS): Use struct hash_table * instead of Hash_table, so that
41044         we no longer need to include hash.h here.
41045
41046 2005-05-18  Jim Meyering  <jim@meyering.net>
41047
41048         * modules/dirfd (License): Change to LGPL.  Most of the code
41049         is already in the public domain.
41050
41051 2005-05-18  Jim Meyering  <jim@meyering.net>
41052
41053         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
41054         Reported by Yoann Vandoorselaere.
41055
41056 2005-05-17  Jim Meyering  <jim@meyering.net>
41057
41058         * m4/fts.m4: New file, from coreutils.
41059
41060 2005-05-17  Jim Meyering  <jim@meyering.net>
41061
41062         * lib/fts.c, lib/fts_.h: New files, from coreutils.
41063
41064 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
41065
41066         Sync from coreutils.
41067         * m4/unlinkdir.m4: New file.
41068
41069 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
41070
41071         Sync from coreutils.
41072         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
41073         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
41074         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
41075         White space changes only.
41076         * lib/makepath.c (make_path): Port to hosts where leading "//" is
41077         special.
41078         * lib/yesno.c: Include getline.h, not ctype.h.
41079         (yesno): Don't remove leading white space; POSIX doesn't allow it.
41080         Use getline to remove arbitrary restriction on response length.
41081
41082 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
41083
41084         * config/srclist-update: Spell out "Street" in FSF postal
41085         mail address; this is the style the FSF seems to prefer.
41086
41087         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
41088         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
41089         this updates FSF postal mail address.
41090
41091         Sync from coreutils.
41092         * modules/unlinkdir: New file.
41093         * modules/yesno (Depends-on): Add getline.
41094         * MODULES.html.sh (File system functions): Add unlinkdir.
41095
41096 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
41097
41098         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
41099         lib/strsep.h:
41100         Change the initial comment to refer to GPL, not LGPL.
41101         gnulib-tool will change it to LGPL as needed.
41102
41103         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
41104         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
41105         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
41106         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
41107         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
41108         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
41109         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
41110         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
41111         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
41112         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
41113         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
41114         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
41115         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
41116         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
41117         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
41118         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
41119         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
41120         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
41121         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
41122         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
41123         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
41124         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
41125         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
41126         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
41127         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
41128         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
41129         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
41130         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
41131         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
41132         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
41133         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
41134         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
41135         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
41136         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
41137         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
41138         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
41139         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
41140         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
41141         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
41142         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
41143         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
41144         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
41145         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
41146         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
41147         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
41148         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
41149         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
41150         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
41151         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
41152         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
41153         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
41154         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
41155         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
41156         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
41157         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
41158         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
41159         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
41160         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
41161         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
41162         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
41163         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
41164         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
41165         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
41166         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
41167         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
41168         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
41169         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
41170         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
41171         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
41172         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
41173         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
41174         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
41175         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
41176         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
41177         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
41178         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
41179         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
41180         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
41181         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
41182         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
41183         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
41184         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
41185         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
41186         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
41187         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
41188         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
41189         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
41190         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
41191         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
41192         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
41193         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
41194         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
41195         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
41196         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
41197         lib/yesno.c, lib/yesno.h:
41198         Update FSF postal mail address.
41199
41200 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
41201
41202         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
41203         tests/test-memmem.c, tests/test-stpncpy.c:
41204         Update FSF postal mail address.
41205
41206 2005-05-13  Bruno Haible  <bruno@clisp.org>
41207
41208         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
41209         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
41210         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
41211         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
41212         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
41213         Add support for 64-bit integers in the MSVC compiler.
41214
41215 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
41216
41217         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
41218
41219 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
41220
41221         * gnulib-tool (func_import): Sort and uniquify recommended includes.
41222
41223 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
41224
41225         * doc/getdate.texi (General date syntax): Don't say that date
41226         date --iso-8601=ns generates acceptable dates; it doesn't yet.
41227         Problem reported by Nic Ferrier.
41228
41229 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41230
41231         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
41232         specified in ai_socktype. Fix invalid ai_protocol
41233         check. ai_protocol is usually set to 0 or depending on
41234         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
41235         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
41236         ai_socktype / ai_protocol in the returned addrinfo structure.
41237
41238 2005-05-10  Simon Josefsson  <jas@extundo.com>
41239
41240         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
41241         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
41242
41243 2005-05-10  Karl Berry  <karl@gnu.org>
41244
41245         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
41246         (from http://www.gnu.org/licenses).
41247         * doc/COPYING.LIB: also rename to COPYING.LESSER.
41248         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
41249         fdl.texi suffices.
41250
41251 2005-05-10  Karl Berry  <karl@gnu.org>
41252
41253         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
41254         (COPYING.DOC): remove.
41255
41256         * config/srclist-update: new FSF address.
41257
41258 2005-05-10  Derek Price  <derek@ximbiot.com>
41259
41260         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
41261         possible.
41262
41263 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41264             Bruno Haible  <bruno@clisp.org>
41265
41266         * modules/inet_ntop: New file.
41267         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
41268         inet_ntop.
41269
41270 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41271             Bruno Haible  <bruno@clisp.org>
41272
41273         * m4/inet_ntop.m4: New file.
41274
41275 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41276             Bruno Haible  <bruno@clisp.org>
41277
41278         * lib/inet_ntop.h: New file.
41279         * lib/inet_ntop.c: New file, from glibc with modifications.
41280
41281 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
41282
41283         * modules/time_r (License): Change to LGPL.
41284         * modules/extensions (License): Change to LGPL.  Actually,
41285         the license is more permissive than that, but currently gnulib-tool
41286         doesn't know how to handle more-permissive licenses.
41287
41288         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
41289         Problem reported by Dave Love.
41290
41291 2005-05-08  Jim Meyering  <jim@meyering.net>
41292
41293         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
41294         blank.
41295
41296 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
41297
41298         * modules/argmatch (Depends-on): Add stdbool.
41299         * modules/backupfile (Depends-on): Likewise.
41300         * modules/chdir-long (Depends-on): Likewise.
41301         * modules/closeout (Depends-on): Likewise.
41302         * modules/cycle-check (Depends-on): Likewise.
41303         * modules/dirname (Depends-on): Likewise.
41304         * modules/fnmatch (Depends-on): Likewise.
41305         * modules/fsusage (Depends-on): Likewise.
41306         * modules/fwriteerror (Depends-on): Likewise.
41307         * modules/getcwd (Depends-on): Likewise.
41308         * modules/getloadavg (Depends-on): Likewise.
41309         * modules/hard-locale (Depends-on): Likewise.
41310         * modules/makepath (Depends-on): Likewise.
41311         * modules/mountlist (Depends-on): Likewise.
41312         * modules/nanosleep (Depends-on): Likewise.
41313         * modules/posixtm (Depends-on): Likewise.
41314         * modules/quotearg (Depends-on): Likewise.
41315         * modules/readtokens (Depends-on): Likewise.
41316         * modules/readtokens0 (Depends-on): Likewise.
41317         * modules/readutmp (Depends-on): Likewise.
41318         * modules/save-cwd (Depends-on): Likewise.
41319         * modules/strftime (Depends-on): Likewise.
41320         * modules/userspec (Depends-on): Likewise.
41321         * modules/utimecmp (Depends-on): Likewise.
41322         * modules/xgetcwd (Depends-on): Likewise.
41323         * modules/xnanosleep (Depends-on): Likewise.
41324         * modules/xstrtod (Depends-on): Likewise.
41325         * modules/yesno (Depends-on): Likewise.
41326
41327 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
41328
41329         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
41330         needless checks.
41331
41332 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
41333
41334         Merge from coreutils.  Among other things,
41335         add bulletproofing for cases where stdin, stdout, or stderr are closed.
41336         * lib/fd-safer.c: New file.
41337         * lib/fcntl-safer.h, open-safer.c: Remove.
41338         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
41339         * lib/dup-safer.c: Include unistd-safer.h first.
41340         Don't include errno.h.
41341         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
41342         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
41343         * lib/file-type.c: Rely on file-type.h change.
41344         * lib/getloadavg.c: Include unistd-safer.h.
41345         (getloadavg): Use safer open.
41346         * lib/getusershell.c: Include "stdio-safer.h".
41347         (getusershell): Use safer fopen.
41348         * lib/long-options.c (long_options): Use NULL rather than 0.
41349         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
41350         'free'.
41351         * lib/modechange.c: Likewise.
41352         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
41353         (MODE_DONE): New constant.
41354         (struct mode_change): Remove 'next' member.
41355         (make_node_op_equals): New function; like the old one of the
41356         same name, except it allocates an array.
41357         (mode_compile, mode_create_from_ref): Use it.
41358         (mode_compile): Allocate result as an array, not a linked list.
41359         Parse octal string ourself, so that we catch mistakes like "+0".
41360         (mode_adjust): Arg is an array, not a linked list.
41361         * lib/modechange.c: Include stat-macros.h, xalloc.h.
41362         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
41363         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
41364         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
41365         Remove.  This is now stat-macros.h's job.
41366         (talloc): Remove.  All callers replaced by xalloc, so that
41367         our invokers don't have to worry about reporting memory failures.
41368         (make_node_op_equals): Remove.
41369         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
41370         New constants.
41371         (struct mode_change): Moved here from modechange.h.
41372         (mode_append_entry): Remove.
41373         (mode_compile): Remove MASKED_OPS arg, since it encouraged
41374         apps to have incorrect behavior.  Use simpler algorithm for head
41375         and tail.  Don't futz with umask; that's now the job of mode_adjust.
41376         Detect more invalid usages rather than having somewhat-random behavior.
41377         Don't insert an "a=" action, as that leads to incorrect behavior.
41378         (mode_compile, mode_create_from_ref): Return NULL on error instead
41379         of an enum, since now there's only one way to have an error.  All
41380         callers changed.
41381         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
41382         at the correct time.  Simplify calculation of "+u" and its ilk.
41383         Don't mishandle "+X".
41384         (mode_free): Remove "register" and localize decls.
41385         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
41386         (struct mode_change): Move to modechange.c; callers don't
41387         need to see this stuff.
41388         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
41389         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
41390         (mode_change, mode_adjust): Reflect the new signatures noted above.
41391         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
41392         that might redefine system include files.
41393         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
41394         (my_usleep): Use NULL rather than (void *) 0.
41395         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
41396         Use siginterrupt to specify that system calls should be interrupted.
41397         (rpl_nanosleep): Move initialization of suspended closer to call of
41398         my_usleep.
41399         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
41400         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
41401         (desirable_utmp_entry): New function.
41402         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
41403         using x2nrealloc, to simplify logic.
41404         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
41405         size calculation.  Do not assume utmp file is a regular file.
41406         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
41407         (READ_UTMP_CHECK_PIDS): New constant.
41408         * lib/save-cwd.c: Include unistd-safer.h.
41409         (save_cwd): Use fd_safer.
41410         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
41411         [!_LIBC] Include "stat-macros.h" instead.
41412         * lib/unistd-safer.h (fd_safer): New decl.
41413
41414 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
41415
41416         * modules/getloadavg (Depends-on): Add unistd-safer.
41417         * modules/getusershell (Depends-on): Add stdio-safer.
41418         * modules/lstat (Depends-on): Remove xalloc.
41419         * modules/mkstemp (Depends-on): Add stat-macros.
41420         * modules/modechange (Depends-on): Remove xstrtol.
41421         Add stat-macros, xalloc.
41422         * modules/save-cwd (Depends-on): Add unistd-safer.
41423         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
41424         * modules/unistd-safer (Files): Add lib/fd-safer.c
41425         (Makefile.am): Remove lib_SOURCES.
41426
41427         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
41428         Remove fcntl-safer; unistd-safer supersedes it.
41429
41430 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
41431
41432         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
41433         AC_HEADER_STAT.
41434         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
41435         (gl_PREREQ_CHOWN): Remove.
41436         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
41437         it.  Don't require AC_HEADER_STAT.
41438         (gl_PREREQ_LSTAT): Remove.
41439         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
41440         Don't require AC_HEADER_STAT.
41441         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
41442         (gl_PREREQ_RMDIR): Remove.
41443         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
41444         mention stat-macros.h or AC_HEADER_STAT, since we'll make
41445         the stat-macros module a prerequisite.
41446         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
41447         * m4/filemode.m4 (gl_FILEMODE): Likewise.
41448         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
41449         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
41450         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
41451         variable names.
41452         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
41453         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
41454         variable prefixes.
41455         * m4/fcntl-safer.m4: Remove.
41456         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
41457         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
41458         Invoke gl_PREREQ_FD_SAFER.
41459         (gl_PREREQ_FD_SAFER): New macro.
41460         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
41461         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
41462         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
41463         Remove duplicate call to AC_LIBOBJ(readutmp).
41464         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
41465
41466         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
41467         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
41468
41469 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
41470
41471         * MODULES.html.sh (Misc): Add byteswap.
41472
41473 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
41474
41475         * modules/getcwd (Depends-on): Add extensions.
41476         * modules/openat (Depends-on): Likewise.
41477
41478 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
41479
41480         * modules/byteswap: New file.
41481
41482 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
41483
41484         * m4/byteswap.m4: New file.
41485
41486 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
41487
41488         * lib/byteswap_.h: New file.
41489
41490 2005-04-25  Karl Berry  <karl@gnu.org>
41491
41492         * m4/gettext.m4: Update from GNU gettext 0.14.4.
41493
41494 2005-04-25  Albert Chin  <china@thewrittenword.com>
41495
41496         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
41497         Toolkit C bug.
41498
41499 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
41500
41501         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
41502         (func_ln_if_changed) Remove forcibly for no error message
41503         in case file does not exist.
41504
41505 2005-04-19  Simon Josefsson  <jas@extundo.com>
41506
41507         * gnulib-tool (Options): Make --symlink mean --symbolic.
41508
41509 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
41510
41511         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
41512
41513 2005-04-16  Simon Josefsson  <jas@extundo.com>
41514
41515         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
41516
41517 2005-04-15  Simon Josefsson  <jas@extundo.com>
41518
41519         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
41520
41521 2005-04-15  Simon Josefsson  <jas@extundo.com>
41522
41523         * gnulib-tool: Rename --symlink to --symbolic.
41524
41525 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
41526
41527         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
41528         symbolic links to files instead of copying/moving.  Add --aux-dir,
41529         specifying directory relative --dir where auxiliary build tools
41530         are placed.
41531
41532 2005-04-14  Bruno Haible  <bruno@clisp.org>
41533
41534         * modules/allocsa (License): Change to LGPL.
41535         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
41536
41537 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
41538
41539         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
41540         that "UTC +1 second" continues to work.  Problem reported
41541         by Dmitry V. Levin.
41542         (relunit_snumber): New rule.
41543         (relunit): Use it.
41544
41545 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
41546
41547         * lib/getdate.y (universal_time_zone_table): New constant.
41548         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
41549         universal_time_zone_table.
41550         (lookup_zone): Prefer universal_time_zone_table to
41551         local_time_zone_table, so that "GMT" time stamps are allowed in
41552         London during the summer.  Problem reported by Ian Abbott.
41553
41554 2005-04-12  Jim Meyering  <jim@meyering.net>
41555
41556         * lib/human.c (humblock): Set *options even when returning due to
41557         xstrtoumax conversion failure.  Thanks to a used-uninitialized
41558         warning from gcc-4.
41559
41560 2005-04-09  Jim Meyering  <jim@meyering.net>
41561
41562         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
41563         -Wuninitialized: initialize tm0.tm_year.
41564
41565 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
41566
41567         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
41568         count, since there's no maximum.  All uses changed.
41569         Add member dsts_seen.
41570         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
41571         not being INT_MAX.
41572         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
41573         Use pc_rels_seen to decide whther a date is absolute.
41574
41575         * lib/getdate.y (number): Don't overwrite year.
41576         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
41577         check.
41578
41579 2005-04-02  Simon Josefsson  <jas@extundo.com>
41580
41581         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
41582         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
41583
41584 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
41585
41586         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
41587         where no absolute path name can be longer than PATH_MAX.
41588
41589 2005-03-27  Jim Meyering  <jim@meyering.net>
41590
41591         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
41592
41593 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
41594
41595         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
41596         "one's complement" -> "ones' complement" in comment, as per Knuth.
41597         "value of type" -> "type or expression" in comment.
41598         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
41599
41600 2005-03-26  Jim Meyering  <jim@meyering.net>
41601
41602         Comment nits.
41603         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
41604         Correct typos: s/or/of/.
41605
41606 2005-03-26  Jim Meyering  <jim@meyering.net>
41607
41608         * modules/check-include-files: Move to ../ and rename to...
41609         * check-module: ...this.
41610
41611 2005-03-25  Jim Meyering  <jim@meyering.net>
41612
41613         * modules/xvasprintf (Files): Add xalloc.h.
41614
41615 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
41616
41617         * modules/gettext (Files): config/config.rpath ->
41618         build-aux/config.rpath
41619         * modules/iconv (Files): Likewise.
41620         Problem reported by Oskar Liljeblad.
41621
41622 2005-03-23  Jim Meyering  <jim@meyering.net>
41623
41624         * modules/check-include-files: New script to check for
41625         missing dependencies, multiple includes, etc.
41626
41627         * modules/c-strtold (Depends-on): Add xalloc.
41628         * modules/c-strtod (Depends-on): Add xalloc.
41629         * modules/hash (Depends-on): Add xalloc.
41630         (Files): Remove lib/xalloc.h.
41631
41632         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
41633         * modules/userspec (Files): Add lib/inttostr.h.
41634
41635 2005-03-23  Jim Meyering  <jim@meyering.net>
41636
41637         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
41638
41639 2005-03-22  Jim Meyering  <jim@meyering.net>
41640
41641         * modules/stat-macros: New module.
41642         * modules/canonicalize, modules/euidaccess, modules/file-type,
41643         * modules/filemode, modules/lchown, modules/makepath,
41644         * modules/rmdir, modules/stat: Depend on new stat-macros module
41645         rather than listing lib/stat-macros.h manually.
41646         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
41647
41648 2005-03-22  Jim Meyering  <jim@meyering.net>
41649
41650         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
41651
41652 2005-03-22  Bruno Haible  <bruno@clisp.org>
41653
41654         * config/srclist.txt: Replace target directory 'config' with
41655         'build-aux'.
41656         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
41657         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
41658         ../build-aux/.
41659
41660 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
41661
41662         * modules/chdir-long (Depends-on): Add mempcpy.
41663
41664         * modules/acl, modules/backupfile, modules/c-strtod,
41665         modules/c-strtold, modules/canon-host, modules/canonicalize,
41666         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
41667         modules/exclude, modules/exitfail, modules/file-type,
41668         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
41669         modules/getdate, modules/getline, modules/getpagesize,
41670         modules/getpass, modules/getugroups, modules/group-member,
41671         modules/hard-locale, modules/hash, modules/human, modules/idcache,
41672         modules/inttostr, modules/long-options, modules/makepath,
41673         modules/md5, modules/memcasecmp, modules/memcoll,
41674         modules/modechange, modules/mountlist, modules/path-concat,
41675         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
41676         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
41677         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
41678         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
41679         modules/strftime, modules/strndup, modules/strverscmp,
41680         modules/timespec, modules/unlocked-io, modules/userspec,
41681         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
41682         modules/yesno:
41683         Remove lib_SOURCES line from Makefile.am section, as this is now
41684         done automatically by the corresponding Autoconf macro.
41685
41686 2005-03-21  Jim Meyering  <jim@meyering.net>
41687
41688         Changes imported from coreutils.
41689
41690         * lib/cycle-check.c: Don't include xalloc.h.
41691
41692         * lib/path-concat.c: Don't include assert.h.
41693         (path_concat): Remove assertion that would have triggered
41694         for ABASE starting with more than one slash.
41695         Reported by Andreas Schwab.
41696
41697         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
41698         properly when ABASE is an absolute file name.
41699         Correct the description of this function.
41700         Include <assert.h>.
41701         Add an assertion and a test driver.
41702         This fixes a bug introduced on 2004-07-02.
41703         Andreas Schwab reported the resulting failure of cp --parents:
41704         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
41705
41706 2005-03-21  Jim Meyering  <jim@meyering.net>
41707
41708         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
41709         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
41710
41711 2005-03-21  Jim Meyering  <jim@meyering.net>
41712         and  Paul Eggert  <eggert@cs.ucla.edu>
41713
41714         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
41715         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
41716         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
41717         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
41718         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
41719         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
41720         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
41721         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
41722         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
41723         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
41724         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
41725         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
41726         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
41727         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
41728         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
41729         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
41730         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
41731         for these modules.
41732
41733 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
41734
41735         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
41736         (which shouldn't happen), generate nothing instead of returning 0
41737         immediately, so that nstrftime (NULL, ...) doesn't return 0.
41738
41739 2005-03-16  Bruno Haible  <bruno@clisp.org>
41740
41741         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
41742         HAVE_LONGLONG_64BIT.
41743
41744 2005-03-16  Bruno Haible  <bruno@clisp.org>
41745
41746         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
41747         HAVE_LONGLONG_64BIT.
41748
41749 2005-03-16  Bruno Haible  <bruno@clisp.org>
41750
41751         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
41752         HAVE_LONGLONG_64BIT.
41753
41754 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
41755
41756         * lib/strftime.c (my_strftime): Prepend space to format so that we can
41757         reliably distinguish strftime failure from empty output on POSIX
41758         hosts.
41759
41760 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
41761
41762         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
41763         (iconv_string): Don't guess a size-zero buffer, as that might cause
41764         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
41765         result would be 'too large', where 'too large' is (heuristically)
41766         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
41767         overflow concerns.  This will prevent some unwanted malloc failures
41768         when the inputs are very large.
41769
41770 2005-03-15  Karl Berry  <karl@gnu.org>
41771
41772         * config/srclist.txt (config.rpath): from gettext.
41773         * config/config.rpath: update.
41774
41775 2005-03-15  Bruno Haible  <bruno@clisp.org>
41776
41777         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
41778         to 'negate'.
41779
41780         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
41781         variable.
41782
41783         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
41784         results.
41785
41786 2005-03-14  Simon Josefsson  <jas@extundo.com>
41787
41788         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
41789         <fx@gnu.org>.
41790
41791 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
41792
41793         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
41794         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
41795         intprops.h.
41796         * lib/strtol.c: Likewise.
41797
41798 2005-03-14  Jim Meyering  <jim@meyering.net>
41799
41800         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
41801         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
41802         to be nonzero so that we (and caller) can detect the difference
41803         between a valid zero-length expansion and an error return, even
41804         when the underlying strftime fails before writing anything into
41805         that location.
41806
41807 2005-03-14  Bruno Haible  <bruno@clisp.org>
41808
41809         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
41810         Update from GNU gettext 0.14.3.
41811
41812 2005-03-10  Jim Meyering  <jim@meyering.net>
41813
41814         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
41815
41816 2005-03-10  Jim Meyering  <jim@meyering.net>
41817
41818         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
41819         so that this module works on systems without fchdir.
41820
41821 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
41822
41823         Factor int-properties macros into a single file, except for
41824         glibc-related files.
41825         * lib/intprops.h: New file.
41826         * lib/getloadavg.c: Include it instead of limits.h.
41827         (INT_STRLEN_BOUND): Remove.
41828         * lib/human.c: Include intprops.h.
41829         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
41830         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
41831         302/1000.
41832         * lib/inttostr.h: Include intprops.h instead of limits.h.
41833         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
41834         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
41835         for consistency with intprops.h.
41836         (time_t_is_integer, twos_complement_arithmetic): Use them.
41837         * lib/sig2str.h: Include <signal.h>, intprops.h.
41838         (INT_STRLEN_BOUND): Remove.
41839         * lib/strftime.c (TYPE_SIGNED): Remove.
41840         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
41841         * lib/strtol.c: Adjust comments to match intprops.h.
41842         * lib/userspec.c: Include intprops.h.
41843         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
41844         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
41845         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
41846         instead of rolling our own expressions.
41847         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
41848
41849         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
41850         instead of int.
41851         (my_strftime): Do not mishandle years close to INT_MAX, by doing
41852         the right thing even if adding 1900 would overflow.  Similarly
41853         for tm_mon + 1 and tm_yday + 1.
41854         Make %Y always equivalent to %C%y, and similarly for %G and %g.
41855         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
41856         (DO_SIGNED_NUMBER): New macro.
41857         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
41858
41859 2005-03-07  Bruno Haible  <bruno@clisp.org>
41860
41861         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
41862
41863 2005-03-07  Bruno Haible  <bruno@clisp.org>
41864
41865         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
41866
41867 2005-03-04  Derek R. Price  <derek@ximbiot.com>
41868
41869         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
41870         (func_import): Only replace files via --import when they have actually
41871         changed.
41872
41873 2005-03-03  Derek R. Price  <derek@ximbiot.com>
41874
41875         * m4/mmap-anon.m4: New file.
41876         * m4/pagealign_alloc.m4: New file.
41877
41878 2005-03-03  Derek R. Price  <derek@ximbiot.com>
41879             Bruno Haible  <bruno@clisp.org>
41880
41881         * modules/pagealign_alloc: New file.
41882         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
41883
41884 2005-03-03  Derek R. Price  <derek@ximbiot.com>
41885             Bruno Haible  <bruno@clisp.org>
41886
41887         * lib/pagealign_alloc.h: New file.
41888         * lib/pagealign_alloc.c: New file.
41889
41890 2005-03-03  Bruno Haible  <bruno@clisp.org>
41891
41892         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
41893         Use an all-permissive copyright notice, recommended by RMS.
41894
41895 2005-03-02  Bruno Haible  <bruno@clisp.org>
41896
41897         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
41898         of AIX, the replacement has to be done only after <string.h> is
41899         included, therefore not in config.h. stpncpy.h does the replacement,
41900         and stpncpy.c uses it.
41901
41902 2005-03-02  Bruno Haible  <bruno@clisp.org>
41903
41904         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
41905         stpncpy.c uses it.
41906
41907 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
41908
41909         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
41910         The workaround isn't strictly needed for POSIX conformance, and
41911         it's too much of a pain to configure and maintain.  We'll ask
41912         people to fix their kernels instead.
41913         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
41914         (NANOSLEEP_BUG_WORKAROUND): Remove.
41915         (xnanosleep): Remove the workaround.
41916
41917 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
41918
41919         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
41920         Reported by Derek Price.
41921         (Include): Add "timespec.h".
41922
41923         * modules/xnanosleep (Depends-on): Remove gethrxtime.
41924
41925 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
41926
41927         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
41928         to detect nanosleep bug.
41929
41930 2005-03-01  Bruno Haible  <bruno@clisp.org>
41931
41932         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
41933
41934 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
41935
41936         * modules/gethrxtime: New file.
41937         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
41938         (Depends-on): Add gethrxtime.
41939         (configure.ac): Add gl_XNANOSLEEP.
41940         (Makefile.am): Remove lib_SOURCES line.
41941
41942 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
41943
41944         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
41945         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
41946
41947 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
41948
41949         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
41950         * lib/timespec.h (gettime): Return void, since it always
41951         succeeds now.  All uses changed.
41952         * lib/gettime.c (gettime) Likewise.
41953         [HAVE_NANOTIME]: Prefer nanotime.
41954         Assume gettimeofday succeeds, as POSIX requires.
41955         Assime time () succeeds, since other code already does.
41956         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
41957         (timespec_subtract): Remove.
41958         (NANOSLEEP_BUG_WORKAROUND): New constant.
41959         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
41960         things considerably.  Use it only on GNU/Linux hosts, since the
41961         workaround shouldn't be needed elsewhere.
41962
41963 2005-02-24  Bruno Haible  <bruno@clisp.org>
41964
41965         * modules/gettext (Files): Add m4/glibc2.m4.
41966
41967 2005-02-24  Bruno Haible  <bruno@clisp.org>
41968
41969         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
41970         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
41971         * m4/progtest.m4:
41972         Update from GNU gettext 0.14.2.
41973         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
41974
41975 2005-02-24  Bruno Haible  <bruno@clisp.org>
41976
41977         * lib/localcharset.c: Update from GNU gettext 0.14.2.
41978         * lib/config.charset: Update from GNU gettext 0.14.2.
41979
41980 2005-02-24  Bruno Haible  <bruno@clisp.org>
41981
41982         * lib/gettext.h: Update from GNU gettext 0.14.2.
41983
41984 2005-02-23  Simon Josefsson  <jas@extundo.com>
41985
41986         * m4/iconvme.m4: New file.
41987
41988 2005-02-23  Jim Meyering  <jim@meyering.net>
41989
41990         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
41991         change.
41992         Thanks to Bruno Haible for catching it.
41993
41994 2005-02-22  Simon Josefsson  <jas@extundo.com>
41995
41996         * modules/iconvme: New file.
41997
41998         * MODULES.html.sh: Add iconvme.
41999
42000 2005-02-22  Simon Josefsson  <jas@extundo.com>
42001
42002         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
42003
42004 2005-02-22  Simon Josefsson  <jas@extundo.com>
42005
42006         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
42007
42008 2005-02-22  Jim Meyering  <jim@meyering.net>
42009
42010         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
42011         s/ifndef/ifdef/.
42012
42013 2005-02-20  Neil Conway  <neilc@samurai.com>
42014
42015         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
42016         returned by OSX/Darwin if the specified buffer is not large
42017         enough for the hostname.
42018
42019 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42020
42021         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
42022         pass it to _help, otherwise the latter coredumps trying to
42023         dereference state.root_argp.
42024
42025 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
42026
42027         * modules/chdir-long (Depends-on): Add memrchr.
42028         * modules/memrchr (Files): Add lib/memrchr.h.
42029         (Include): "memrchr.h".
42030
42031 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
42032
42033         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
42034
42035 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
42036
42037         * lib/memrchr.h: New file.
42038         * lib/chdir-long.c: Include it.
42039         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
42040         Don't bother including stddef.h.
42041
42042 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
42043
42044         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
42045         inclusion.
42046         Include <sys/types.h>, for dev_t.
42047         (ME_DUMMY, ME_REMOTE): Move from here....
42048         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
42049         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
42050         Dmitry V. Levin.
42051         Include mountlist.h first, to test the interface.
42052
42053 2005-01-29  Bruno Haible  <bruno@clisp.org>
42054
42055         * lib/progname.c (program_name): Initialize.
42056         Needed when linking statically on MacOS X.
42057
42058 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
42059
42060         Sync from coreutils.
42061         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
42062         (Depends-on): Add c-strtod.
42063         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
42064
42065 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
42066
42067         Sync from coreutils.
42068         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
42069
42070         Remove files that are specific to coreutils.
42071         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
42072
42073 2005-01-28  Bruno Haible  <bruno@clisp.org>
42074
42075         * modules/javacomp: New file.
42076         * MODULES.html.sh (Java): Add javacomp.
42077
42078 2005-01-28  Bruno Haible  <bruno@clisp.org>
42079
42080         * m4/javacomp.m4: New file, from GNU gettext.
42081
42082 2005-01-28  Bruno Haible  <bruno@clisp.org>
42083
42084         * lib/javacomp.sh.in: New file, from GNU gettext.
42085         * lib/javacomp.h: New file, from GNU gettext.
42086         * lib/javacomp.c: New file, from GNU gettext.
42087
42088 2005-01-26  Simon Josefsson  <jas@extundo.com>
42089
42090         * lib/gai_strerror.c: Use GPL in header.
42091
42092 2005-01-26  Bruno Haible  <bruno@clisp.org>
42093
42094         * modules/javaexec: New file.
42095         * MODULES.html.sh (Java): Add javaexec.
42096
42097 2005-01-26  Bruno Haible  <bruno@clisp.org>
42098
42099         * m4/javaexec.m4: New file, from GNU gettext.
42100
42101 2005-01-26  Bruno Haible  <bruno@clisp.org>
42102
42103         * lib/javaexec.sh.in: New file, from GNU gettext.
42104         * lib/javaexec.h: New file, from GNU gettext.
42105         * lib/javaexec.c: New file, from GNU gettext.
42106
42107 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42108
42109         * modules/lchown (Depends-on): Remove lchown.h
42110
42111 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42112
42113         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
42114         must be defined if the header file was not found, in order
42115         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
42116
42117 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42118
42119         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
42120         initializers for struct pentry_state.
42121         (__argp_error): Check return value of __asprintf
42122         (__argp_failure): Translate error message
42123
42124         * lib/argp-parse.c: Removed braces around the expansion of N_()
42125
42126 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
42127
42128         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
42129         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
42130         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
42131         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
42132         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
42133         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
42134         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
42135         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
42136         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
42137         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
42138         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
42139         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
42140         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
42141         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
42142         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
42143         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
42144         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
42145         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
42146         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
42147         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
42148         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
42149         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
42150         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
42151         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
42152         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
42153         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
42154         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
42155         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
42156         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
42157         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
42158         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
42159         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
42160         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
42161         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
42162         xstrtol.m4, xstrtoumax.m4, yesno.m4:
42163         Use an all-permissive copyright notice, recommended by RMS.
42164
42165 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
42166
42167         * modules/chdir-long (Depends-on): Remove mempcpy.
42168
42169 2005-01-21  Jim Meyering  <jim@meyering.net>
42170
42171         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
42172         same value as for Solaris 9.
42173
42174         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
42175         component length.  This included changing the parameter to be
42176         of type `char *' rather than `char const *'.
42177         * lib/chdir-long.h (chdir_long): Update prototype.
42178
42179         * lib/openat.c (fdopendir, fstatat): New functions.
42180         * lib/openat.h: Include headers required for use of DIR and struct
42181         stat.
42182         [AT_SYMLINK_NOFOLLOW]: Define.
42183         (fdopendir, fstatat): Add prototypes.
42184
42185 2005-01-21  Bruno Haible  <bruno@clisp.org>
42186
42187         * modules/classpath: New file.
42188         * MODULES.html.sh (Java): Add classpath.
42189
42190 2005-01-21  Bruno Haible  <bruno@clisp.org>
42191
42192         * lib/classpath.h: New file, from GNU gettext.
42193         * lib/classpath.c: New file, from GNU gettext.
42194
42195 2005-01-20  Simon Josefsson  <jas@extundo.com>
42196
42197         * modules/version-etc-fsf: New file.
42198
42199 2005-01-20  Simon Josefsson  <jas@extundo.com>
42200
42201         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
42202         * lib/version-etc.c: Remove version_etc_copyright.
42203         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
42204         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
42205
42206 2005-01-20  Simon Josefsson  <jas@extundo.com>
42207
42208         * lib/base64.h (isbase64): Add.
42209
42210         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
42211         using a unsigned prototype, don't inline.
42212         (base64_decode): Use it.
42213
42214 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
42215
42216         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
42217         it.
42218
42219 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
42220
42221         * lib/save-cwd.c (save_cwd): Remove code to support the case
42222         where fchdir is missing or flaky.
42223
42224 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
42225
42226         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
42227
42228 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
42229
42230         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
42231         AC_LIBSOURCES now does this.
42232         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
42233         with new ullong_max module.
42234
42235 2005-01-19  Bruno Haible  <bruno@clisp.org>
42236
42237         * modules/sh-quote: New file.
42238         * MODULES.html.sh (Executing programs): Add sh-quote.
42239
42240 2005-01-19  Bruno Haible  <bruno@clisp.org>
42241
42242         * lib/sh-quote.h: New file, from GNU gettext.
42243         * lib/sh-quote.c: New file, from GNU gettext.
42244
42245 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
42246
42247         Merge from coreutils.
42248         * m4/ullong_max.m4: New file.
42249         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
42250         (gl_MACROS): Assume localeconv exists.
42251
42252 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
42253
42254         Merge changes from coreutils, as described below in several
42255         changelogs dated today.
42256
42257         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
42258         (O_DIRECTORY): Remove; not needed here, since "." must be
42259         a directory.  All uses removed.
42260         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
42261         universal on Suns, and we also need to test for IRIX.
42262         Revamp code to use 'if' rather than '#if'.
42263         Avoid unnecessary comparison of cwd->desc to 0.
42264
42265         * lib/utimens.c (futimens): Robustify the previous patch, by checking
42266         for known valid error numbers rather than observed invalid ones.
42267
42268 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
42269
42270         * modules/ullong_max: New file.
42271
42272         * modules/chdir-long, modules/openat: New files.
42273         * modules/save-cwd (Depends-on): Depend on chdir-long.
42274         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
42275
42276 2005-01-18  Jim Meyering  <jim@meyering.net>
42277
42278         Merge from coreutils.
42279         * m4/chdir-long.m4, m4/openat.m4: New files.
42280         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
42281         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
42282         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
42283         is sane and DOES follow symlinks.  Besides, testing 20 different
42284         systems found no broken chown implementations.
42285         Prompted by a change in rsync's copy of this macro.
42286         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
42287
42288         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
42289
42290         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
42291         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
42292         NULL-means-set-to-current-time semantics.
42293         Remove temporary file immediately, rather than waiting
42294         for configure's at-exit trap code to do it.
42295
42296 2005-01-18  Jim Meyering  <jim@meyering.net>
42297
42298         * lib/version-etc.c (version_etc_copyright): Update copyright date.
42299
42300         * lib/utimens.c (futimens): Account for the fact that futimes
42301         can also fail with errno == ENOSYS or errno == ENOENT.
42302         Patch from Dmitry V. Levin.
42303
42304         Change the name of the robust chdir function from chdir to chdir_long.
42305         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
42306         (restore_cwd): Use chdir_long, not chdir.
42307         * lib/chdir-long.c: Renamed from chdir.c.
42308         * lib/chdir-long.h: Renamed from chdir.h.
42309         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
42310         Hurd.
42311
42312 2005-01-18  Bruno Haible  <bruno@clisp.org>
42313
42314         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
42315         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
42316         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
42317         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
42318         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
42319         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
42320         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
42321         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
42322         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
42323         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
42324         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
42325         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
42326         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
42327         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
42328         Use an all-permissive copyright notice, recommended by RMS.
42329
42330 2005-01-18  Bob Proulx  <bob@proulx.com>
42331
42332         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
42333         simplify offsetof() macro construct to avoid compile failure with
42334         native HP-UX 11.0 ANSI C compiler.
42335
42336 2005-01-17  Bruno Haible  <bruno@clisp.org>
42337
42338         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
42339         redundant because stpncpy.m4 takes care of it.
42340
42341 2005-01-17  Bruno Haible  <bruno@clisp.org>
42342
42343         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
42344
42345 2005-01-17  Bruno Haible  <bruno@clisp.org>
42346
42347         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
42348         used.
42349
42350 2005-01-17  Bruno Haible  <bruno@clisp.org>
42351
42352         * lib/fwriteerror.h (fwriteerror): Change specification to include
42353         fclose.
42354         * lib/fwriteerror.c: Include <stdbool.h>.
42355         (fwriteerror): At the end, close the file stream. Record whether
42356         stdout was already closed.
42357
42358 2005-01-17  Bruno Haible  <bruno@clisp.org>
42359
42360         * lib/execute.c (environ): Declare if needed.
42361         * lib/pipe.c (environ): Likewise.
42362         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
42363
42364 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42365
42366         * modules/argp: Depend on vsnprintf
42367
42368 2005-01-10  Jim Meyering  <jim@meyering.net>
42369
42370         * modules/closeout (Depends-on): Add atexit.
42371
42372 2005-01-06  Bruno Haible  <bruno@clisp.org>
42373
42374         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
42375
42376 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
42377
42378         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
42379         definitions to be after all include files, to avoid collisions.
42380         Problem reported by Bob Proulx.
42381
42382 2005-01-04  Jim Meyering  <jim@meyering.net>
42383
42384         Changes imported from coreutils.
42385         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
42386         as the mkstemp template, use a temporary directory and an
42387         8.3-friendly template to avoid trouble on systems like DJGPP.
42388         Reported by Juan M. Guerrero via Stepan Kasal.
42389         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
42390         close. Remove the temporary directory right away, rather than waiting
42391         for configure's at-exit trap code to do it.
42392         Suggestion from Stepan Kasal.
42393
42394 2005-01-01  Simon Josefsson  <jas@extundo.com>
42395
42396         * gnulib-tool: Print #include directives when --import'ing.
42397
42398 2004-12-28  Simon Josefsson  <jas@extundo.com>
42399
42400         * tests/test-base64.c: Include required header files.  Remove
42401         unused variables.
42402
42403 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
42404
42405         * modules/error (Depends-on): Remove gettext.
42406
42407 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
42408
42409         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
42410         not needed.  This removes a dependency on the gettext module.
42411         [defined _LIBC]: Do not include <libintl.h>; not needed.
42412
42413 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
42414
42415         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
42416         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
42417
42418 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
42419
42420         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
42421         HAVE_DECL_STRTOLD.
42422
42423 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
42424
42425         * modules/getdate (Depends-on): Remove alloca-opt.
42426
42427 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
42428
42429         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
42430
42431 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
42432
42433         * lib/argp-parse.c: Include <stddef.h>.
42434         (alignof, alignto): New macros.
42435         (parser_init): Don't assume that void * is aligned sufficiently
42436         for struct option.
42437
42438         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
42439         need to extend the stack.
42440         (YYINITDEPTH): New macro, so that the initial stack isn't overly
42441         large.
42442
42443 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42444
42445         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
42446
42447 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
42448
42449         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
42450         (2004-10-24) change.  Apparently this was a false alarm.
42451
42452         * modules/getdate: Depend on alloca-opt, not alloca.
42453
42454 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
42455
42456         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
42457         Remove now-obsolete comment about AIX.
42458         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
42459         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
42460         (YYMAXDEPTH): New macro.
42461
42462 2004-12-18  Simon Josefsson  <jas@extundo.com>
42463
42464         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
42465
42466 2004-12-18  Bruno Haible  <bruno@clisp.org>
42467
42468         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
42469
42470 2004-12-18  Bruno Haible  <bruno@clisp.org>
42471
42472         * lib/fatal-signal.c (fatal_signals): Make non-const.
42473         (init_fatal_signals): New function.
42474         (uninstall_handlers, install_handlers): Ignore signals that were set to
42475         SIG_IGN.
42476         (at_fatal_signal): Call init_fatal_signals.
42477         (init_fatal_signal_set): Likewise. Ignore signals that were set to
42478         SIG_IGN.
42479         Reported by Paul Eggert.
42480
42481 2004-12-18  Bruno Haible  <bruno@clisp.org>
42482
42483         * doc/alloca.texi: New file.
42484         * doc/alloca-opt.texi: New file.
42485
42486 2004-12-17  Jim Meyering  <jim@meyering.net>
42487
42488         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
42489         Otherwise, install-sh could exit with improper exit status when
42490         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
42491
42492 2004-12-16  Simon Josefsson  <jas@extundo.com>
42493
42494         * tests/test-base64.c: Add license.
42495
42496 2004-12-15  Stepan Kasal  <address@hidden>
42497
42498         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
42499
42500 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
42501
42502         * modules/getcwd (Files): Add m4/d-ino.m4.
42503         Suggested by Mark D. Baushke.
42504
42505 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
42506
42507         * lib/getdate.y (textint): New member "negative".
42508         (time_zone_hhmm): New function.
42509         Expect 14 shift-reduce conflicts, not 13.
42510         (o_colon_minutes): New rule.
42511         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
42512         (yylex): Set the "negative" member of signed numbers.
42513
42514 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
42515
42516         * doc/getdate.texi (Time of day items, Time zone items):
42517         Describe new formats +00:00, UTC+00:00.
42518
42519 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
42520
42521         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
42522         spurious "-l"s.  Problem reported by Stepan Kasal.
42523
42524 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
42525
42526         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
42527         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
42528
42529 2004-12-04  Simon Josefsson  <jas@extundo.com>
42530
42531         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
42532         Vandoorselaere <yoann@prelude-ids.org>.
42533
42534 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
42535
42536         Changes imported from coreutils.
42537         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
42538         exist.
42539         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
42540
42541 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
42542
42543         Changes imported from coreutils.
42544         * lib/hard-locale.c: Assume <locale.h> exists.
42545         Include "strdup.h".
42546         (GLIBC_VERSION): New macro.
42547         (hard_locale): Assume setlocale exists.
42548         Rewrite to avoid #ifdef.
42549         Use strdup rather than malloc + strcpy.
42550         * lib/human.c: Assume <locale.h> exists.
42551         (human_readable): Assume localeconv exists.
42552
42553 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
42554
42555         * modules/hard-locale (Depends-on): Add strdup.
42556
42557 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
42558
42559         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
42560         convert T2, not T.  (Imported from libc.)
42561
42562 2004-11-30  Simon Josefsson  <jas@extundo.com>
42563
42564         * modules/restrict (License): Change to LGPL.
42565
42566 2004-11-30  Simon Josefsson  <jas@extundo.com>
42567
42568         * m4/restrict.m4: Add copyright and copying conditions.
42569
42570 2004-11-30  Simon Josefsson  <jas@extundo.com>
42571
42572         * m4/base64.m4: New file.
42573
42574 2004-11-30  Simon Josefsson  <jas@extundo.com>
42575
42576         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
42577         base64.
42578
42579         * tests/test-base64.c: New file.
42580
42581         * modules/base64: New file.
42582
42583 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
42584
42585         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
42586         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
42587
42588         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
42589
42590 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
42591
42592         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
42593         (__getcwd.c): Don't restore errno; glibc doesn't.
42594         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
42595         first, falling back to our code only if its results look suspicious.
42596         Ensure that the resulting buffer is only as large as necessary.
42597
42598         * lib/readutmp.c: Include readutmp.h first.
42599         Include <errno.h>, since readutmp.h no longer does that.
42600         * lib/readutmp.h: Don't include <errno.h>,
42601         <sys/param.h>, <time.h>; not needed to establish interface.
42602         (errno): Remove decl.
42603         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
42604         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
42605         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
42606
42607 2004-11-28  Simon Josefsson  <jas@extundo.com>
42608
42609         * lib/base64.h, base64.c: New file.
42610
42611 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
42612
42613         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
42614
42615 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
42616
42617         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
42618         (Depends-on): Remove pathmax, same.  Add mempcpy.
42619         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
42620         (Makefile.am): Append getcwd.h to lib_SOURCES.
42621         (Include): Add getcwd.h.
42622         (Maintainer): Change from Jim Meyering to "all, glibc",
42623         since getdate now uses intended-for-glibc code.
42624         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
42625         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
42626
42627 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
42628
42629         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
42630         HP's ANSI C compiler.
42631         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
42632         Declaring int functions causes warnings on some modern systems and
42633         shouldn't be needed to compile on ancient ones.
42634         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
42635         defined.
42636
42637         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
42638         with the following changes.
42639         (__set_errno): Parenthesize properly.
42640         Include <stdbool.h>.
42641         (MIN, MAX, MATCHING_INO): New macros.
42642         (__getcwd): Define with prototype, not K&R form.
42643         Use heuristics to allocate default buffer on stack if possible.
42644         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
42645         behavior, and to avoid the PATH_MAX limit when computing
42646         ../../../../...
42647         Use MATCHING_INO to compare inode number to file.
42648         Check for arithmetic overflow in size calculations.
42649         Fix bug in reallocation of dot array that caused getcwd to fail
42650         on directories nested deeper than 75.
42651         Be more careful about saving errno on error.
42652         Do not use realloc; use only free+malloc, as this is a bit
42653         more flexible and avoids a needless copy operation.
42654         Do not inspect st_dev and st_ino for symbolic links; POSIX
42655         doesn't specify the latter.
42656         Check for closedir errors.
42657         Avoid needless casts.
42658         Use "#ifdef weak_alias" around weak_alias, to be like other
42659         glibc code.
42660         The following changes to getcwd.c have effect only when used in
42661         gnulib; they have no effect inside glibc proper.
42662         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
42663         as alloca isn't used.
42664         (alloca, __alloca): Likewise.
42665         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
42666         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
42667         unconditionally, as gnulib assumes C89 or better.
42668         Do not include <sys/param.h>.
42669         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
42670         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
42671         better.
42672         (NULL) [!defined NULL]: Remove; we assume C89 or better.
42673         Include <dirent.h> in a way that is compatible with modern Autoconf.
42674         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
42675         New macros, if not already defined.
42676         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
42677         Use "_LIBC", not "defined _LIBC", for consistency.
42678         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
42679         a mempcpy module.
42680         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
42681         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
42682         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
42683         credit only to Jim Meyering and adjust the copyright dates.
42684         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
42685         <stdlib.h>, <unistd.h>, "pathmax.h".
42686         Instead, include "xgetcwd.h" (first) and "getcwd.h".
42687         (INITIAL_BUFFER_SIZE): Remove.
42688         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
42689
42690 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
42691
42692         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
42693         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
42694         Use the _ONCE methods, for efficiency.
42695         Check for fcntl.h.  In test program, include <errno.h>
42696         and <fcntl.h> if available.  Remove old K&R cruft from
42697         test program.  Check for common errors in GNU/Linux,
42698         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
42699         don't do AC_LIBOBJ, as that's getcwd.m4's job.
42700         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
42701         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
42702         name accordingly.
42703         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
42704         accommodate new getcwd.c.
42705         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
42706         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
42707         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
42708         that's all we need now.
42709
42710 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42711
42712         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
42713         argp-parse.c depends on getopt internals, that means we should
42714         always use our getopt, to be on the safe side.
42715         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
42716         order not to spoil the result of an eventual previous invocation
42717         of gl_GETOPT_SUBSTITUTE.
42718
42719 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42720
42721         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
42722         redefinition warnings. To avoid them, include the defines
42723         in `#if !defined __need_getopt ... #endif'. The only place
42724         where __getopt_argv_const is used is in definitions
42725         of getopt_long and getopt_long_only below, which are as well
42726         protected by `#ifndef __need_getopt'.
42727         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
42728         __need_getopt after including <stdio.h> and <unistd.h> These
42729         headers might have defined it.
42730
42731 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
42732
42733         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
42734
42735 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
42736
42737         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
42738         (futimens): New function, which uses futimes if available.
42739         (futimens, utimens): Support timespec==NULL, with same semantics
42740         as utime and utimens.
42741         * lib/utimens.h (futimens): New decl.
42742
42743 2004-11-23  Jim Meyering  <jim@meyering.net>
42744
42745         * lib/getopt_.h: Remove trailing blanks.
42746
42747 2004-11-23  Jim Meyering  <jim@meyering.net>
42748
42749         * lib/__fpending.c: Add comment.
42750
42751 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
42752
42753         * modules/canonicalize (Depends-on): Add xreadlink.
42754         Problem reported by James Youngman.
42755
42756 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
42757
42758         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
42759         New macros.
42760         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
42761         optopt): Use them instead of invoking ## directly; otherwise, the
42762         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
42763
42764 2004-11-19  Bruno Haible  <bruno@clisp.org>
42765
42766         * lib/strtok_r.c: Move comments from here...
42767         * lib/strtok_r.h: ... to here.
42768
42769 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
42770
42771         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
42772         implementations that mishandle size_t overflow.
42773
42774 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
42775
42776         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
42777         might fail.  Problem reported by Yoann Vandoorselaere.
42778         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
42779         implementations that mishandle size_t overflow.
42780
42781 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
42782
42783         * modules/canon-host (Depends-on): Add strdup.
42784
42785 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
42786
42787         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
42788
42789 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
42790
42791         * lib/canon-host.c: Include "strdup.h".
42792         (canon_host): Use getaddrinfo if available, so that IPv6 works.
42793         Use strdup instead of malloc/strcpy to duplicate strings.
42794
42795         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
42796         (human_space_before_unit): New constant.
42797         * lib/human.c (human_readable): Support it.
42798
42799         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
42800         (xgetcwd): Set errno correctly when failing.
42801         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
42802         the failure is actually due to a PATH_MAX problem.
42803
42804         Further getopt changes to make it more likely that glibc will
42805         buy the changes back.
42806         * lib/getopt.c (POSIXLY_CORRECT): New constant.
42807         (getopt): Use it, so to preserve glibc semantic
42808         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
42809         when compiling for libc.
42810         * lib/getopt_.h (__getopt_argv_const): Bring it back.
42811         (getopt_long, getopt_long_only): Use it.
42812
42813         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
42814         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
42815         (getopt): Argv is now char * const *, as per standard.
42816         (_getopt_internal_r, _getopt_internal): Argv is now char **,
42817         not char *__getopt_argv_const *.
42818         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
42819         _getopt_long_only_r): Likewise.
42820         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
42821         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
42822         _getopt_long_r, _getopt_long_only_r): Likewise.
42823         * lib/getopt_.h (__getopt_argv_const): Remove.
42824         (getopt): Argv is now char * const *, as per standard.
42825
42826         * lib/getdate.y (tORDINAL): New token.
42827         (day, relunit): Allow it for relative times.
42828         (relative_time_table): Use tORDINAL for ordinals.
42829
42830 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
42831
42832         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
42833         Document that "second" isn't allowed as an ordinal number.
42834
42835 2004-11-16  Jim Meyering  <jim@meyering.net>
42836
42837         * modules/closeout (Depends-on): Add fpending.
42838
42839 2004-11-15  Jim Meyering  <jim@meyering.net>
42840
42841         * lib/closeout.c: Include "__fpending.h" once again.
42842         Include <stdbool.h>.
42843         (close_stdout): Don't fail just because stdout was closed initially,
42844         since some programs don't write to stdout in the normal course of
42845         operation (other than --version and --help), and we don't want this
42846         function to make e.g. `touch file >&-' fail.
42847         But do fail if it was closed and someone has tried to write to it.
42848         E.g., `printf foo >&-' must fail.
42849
42850 2004-11-13  Jim Meyering  <jim@meyering.net>
42851
42852         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
42853
42854 2004-11-12  Simon Josefsson  <jas@extundo.com>
42855
42856         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
42857         small doc fix is still pending.
42858
42859 2004-11-11  Simon Josefsson  <jas@extundo.com>
42860
42861         * modules/strtok_r: New file.
42862
42863         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
42864         strtok_r.
42865
42866 2004-11-11  Simon Josefsson  <jas@extundo.com>
42867
42868         * m4/strtok_r.m4: New file.
42869
42870         * m4/getopt.m4: Replace opterr.
42871
42872 2004-11-11  Simon Josefsson  <jas@extundo.com>
42873
42874         * lib/strtok_r.h, strtok_r.c: New file.
42875
42876 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
42877
42878         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
42879         of replacing opterr, getopt, etc.  This should handle the
42880         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
42881
42882 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
42883
42884         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
42885         we can stop lying to compilers about the constness of argv when we
42886         are compiled outside glibc.
42887         (getopt, getopt_long, getopt_long_only): Use it.
42888         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
42889         _getopt_internal, getopt): Likewise.
42890         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
42891         _getopt_long_only_r): Likewise.
42892         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
42893         _getopt_long_r, _getopt_long_only_r): Likewise.
42894
42895         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
42896         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
42897         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
42898         the other external symbols.
42899         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
42900         declaration, since the above renaming now works around collisions.
42901
42902 2004-11-11  Jim Meyering  <jim@meyering.net>
42903
42904         * lib/linebreak.c: Remove trailing blanks.
42905         * lib/alloca_.h: Likewise.
42906         * lib/acosl.c: Likewise.
42907         * lib/euidaccess.c: Likewise.
42908         * lib/allocsa.h: Likewise.
42909
42910 2004-11-10  Simon Josefsson  <jas@extundo.com>
42911
42912         * m4/getaddrinfo.m4: New file.
42913
42914 2004-11-10  Simon Josefsson  <jas@extundo.com>
42915
42916         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
42917
42918 2004-11-10  Simon Josefsson  <jas@extundo.com>
42919
42920         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
42921         getaddrinfo.
42922
42923         * modules/getaddrinfo: New file.
42924
42925 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
42926
42927         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
42928
42929 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
42930
42931         * lib/mktime.c (SHR): New macro, which is a portable
42932         substitute for >> that should work even on Crays.
42933         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
42934         Problem reported by Mark D. Baushke in
42935         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
42936         * lib/getdate.y (SHR): Likewise.
42937         (tm_diff): Use it.
42938         * lib/strftime.c (SHR): Likewise.
42939         (tm_diff): Use it.
42940         * lib/quotearg.c (struct quoting_options): Use unsigned int for
42941         quote_these_too, so that right shifts are well defined.  All uses
42942         changed.
42943
42944 2004-11-10  Jim Meyering  <jim@meyering.net>
42945
42946         Ensure that no close failure goes unreported.
42947         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
42948         return early when it seems there's nothing to flush.
42949         Don't include __fpending.h.
42950
42951 2004-11-10  Jim Meyering  <jim@meyering.net>
42952
42953         * modules/closeout (Depends-on): Remove fpending.
42954
42955 2004-11-10  Jim Meyering  <jim@meyering.net>
42956
42957         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
42958
42959 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
42960
42961         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
42962         gl_FUNC_STRFTIME.
42963         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
42964         and AC_REQUIRE when possible, to avoid duplicate checks.
42965         Check for <wchar.h>.
42966
42967 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
42968
42969         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
42970
42971 2004-11-09  Bruno Haible  <bruno@clisp.org>
42972
42973         * m4/sockpfaf.m4: New file.
42974
42975 2004-11-05  Bruno Haible  <bruno@clisp.org>
42976
42977         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
42978         Reported by Mark D. Baushke <mdb@cvshome.org>.
42979
42980 2004-11-04  Bruno Haible  <bruno@clisp.org>
42981
42982         2004-09-11  Bruno Haible  <bruno@clisp.org>
42983                 * allocsa.valgrind: New file.
42984         2004-02-06  Bruno Haible  <bruno@clisp.org>
42985                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
42986                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
42987                 Reported by Christopher Seip <chris.seip@hp.com>.
42988
42989 2004-11-04  Bruno Haible  <bruno@clisp.org>
42990
42991         * modules/allocsa (Files): Add lib/allocsa.valgrind.
42992         (Makefile.am): Distribute it.
42993
42994 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
42995
42996         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
42997         with errno == ERANGE if the buffer is too small.
42998         Problem reported by Mark D. Baushke.
42999
43000 2004-11-03  Albert Chin  <china@thewrittenword.com>
43001             Paul Eggert  <eggert@cs.ucla.edu>
43002
43003         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
43004         equivalent, substitute $ac_type for equivalent type rather than
43005         blindly using uint32_t *always* which won't work if uint32_t is not
43006         available.  Define _UINT32_T to work around typedef of uint32_t if
43007         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
43008         2.5.1.
43009
43010 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
43011
43012         * m4/jm-macros.m4: Sync from coreutils.
43013         (gl_MACROS): Check for mbrlen, for pathchk.
43014         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
43015
43016 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
43017
43018         * lib/xreadlink.c (MAXSIZE): New macro.
43019         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
43020         size does not exceed MAXSIZE.  Avoid cast.
43021         As suggested by Mark D. Baushke in
43022         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
43023         if readlink fails with buffer size just under MAXSIZE, try again
43024         with MAXSIZE.
43025
43026 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
43027
43028         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
43029
43030 2004-11-02  Derek R. Price  <derek@ximbiot.com>
43031         and  Paul Eggert  <eggert@cs.ucla.edu>
43032
43033         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
43034         (get_date): Overparenthesize to avoid GCC warning.
43035
43036 2004-11-02  Bruno Haible  <bruno@clisp.org>
43037
43038         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
43039         returns void.
43040
43041 2004-11-02  Bruno Haible  <bruno@clisp.org>
43042
43043         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
43044         function returns void.
43045
43046 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
43047
43048         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
43049         fflush_unlocked, flockfile, funlockfile, funlockfile,
43050         fputs_unlocked, putc_unlocked.
43051
43052 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
43053
43054         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
43055         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
43056         already declared.
43057
43058 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
43059
43060         * modules/getdate (Files): Add doc/getdate.texi.
43061         (Depends-on): Add setenv, xalloc.
43062
43063 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
43064
43065         * lib/getdate.y: Add support for TZ="foo" within a date string.
43066         Fix some bugs near time_t boundaries.  Reject dates with
43067         out-of-range components, e.g., "Sept 31".
43068         Include <stdlib.h>, "setenv.h", "xalloc.h".
43069         (ISDIGIT_LOCALE): Remove; unused.
43070         Note that the TZ and time functions used here are not reentrant.
43071         (mktime_ok, get_tz): New functions.
43072         (TZBUFSIZE): New constant.
43073         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
43074         This requires that we sometimes generate our own TZ="XXX..." setting.
43075
43076 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
43077
43078         * doc/getdate.texi: New file, from coreutils with modifications for
43079         the new TZ parsing.
43080
43081 2004-10-27  Derek R. Price  <derek@ximbiot.com>
43082
43083         * lib/mktime.c (not_equal_tm): Remove redundant check.
43084
43085 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
43086
43087         * modules/regex (lib_SOURCES): Add regex.c.
43088         Reported by James Youngman in
43089         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
43090
43091 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
43092
43093         * lib/getdate.y: Use Bison 1.875 features, and some minor
43094         code cleanups.  This change does not affect semantics.
43095         Don't include <stdlib.h>; no longer needed.
43096         Don't include unlocked-io.h; only the "#if TEST" code uses
43097         stdio, and performance isn't crucial there.
43098         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
43099         Bison 1.875 features as described below.
43100         All uses of "PC." replaced by "pc->".
43101         (YYSTYPE): Add a forward declaration.
43102         (yylex, yyerror): Use full prototypes in forward decls.
43103         Use "%pure-parser" rather than obsolescent "%pure_parser".
43104         Use %parse-param and %lex-param instead of obsolescent
43105         YYPARSE_PARAM and YYLEX_PARAM.
43106         (meridian_table, month_and_day_table, time_units_table,
43107         relative_time_table, time_zone_table, military_table,
43108         lookup_zone, lookup_word, get_date):
43109         Use NULL instead of 0 where appropriate.
43110         (to_hour): Avoid abort (), to avoid a dependency on
43111         stdlib.h.
43112         (yyerror, yylex): Now accepts parser_control * arg.
43113         (main) [TEST]: Use '\0' rather than 0 for char.
43114
43115 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
43116
43117         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
43118
43119 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
43120
43121         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
43122         It's now the caller's responsibility to handle the case where
43123         !HAVE_GETPAGESIZE && !defined getpagesize.
43124
43125         * lib/mktime.c (leapyear): Arg is long int, not int.
43126
43127 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
43128
43129         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
43130
43131 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
43132
43133         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
43134         missing.  Problem reported by James Youngman.
43135
43136 2004-10-16  Simon Josefsson  <jas@extundo.com>
43137
43138         * gnulib-tool: Fix comments.  Fix parse problem.
43139         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
43140
43141 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
43142
43143         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
43144         implementation of getopt_long.  Problem reported by Alexander Taler in:
43145         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
43146
43147 2004-10-15  Bruno Haible  <bruno@clisp.org>
43148
43149         * gnulib-tool: Untabify. Initialize supplied_libname.
43150         (func_usage): More homogenous output.
43151         (func_modules_transitive_closure, func_modules_to_filelist,
43152         func_emit_lib_Makefile_am): New functions.
43153         (func_import): New function, extracted from big case statement. Use
43154         func_get_license, func_modules_transitive_closure,
43155         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
43156         opt_lgpl. Don't use test -a, as it's not portable.
43157         (func_create_testdir): Use func_modules_transitive_closure,
43158         func_modules_to_filelist, func_emit_lib_Makefile_am.
43159
43160 2004-10-15  Bruno Haible  <bruno@clisp.org>
43161
43162         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
43163
43164 2004-10-15  Bruno Haible  <bruno@clisp.org>
43165
43166         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
43167         the portions belonging to each module.
43168         Suggested by Derek Robert Price <derek@ximbiot.com>.
43169
43170 2004-10-12  Simon Josefsson  <jas@extundo.com>
43171
43172         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
43173         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
43174         to real functions.
43175
43176 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43177
43178         * modules/vsnprintf: New file.
43179
43180 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43181
43182         * m4/vsnprintf.m4: New file.
43183
43184 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43185
43186         * lib/vsnprintf.h: New file.
43187         * lib/vsnprintf.c: New file.
43188
43189 2004-10-11  Bruno Haible  <bruno@clisp.org>
43190
43191         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
43192         vsnprintf.
43193
43194 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
43195
43196         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
43197
43198 2004-10-07  Bruno Haible  <bruno@clisp.org>
43199
43200         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
43201         fits into the provided buffer.
43202
43203 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
43204
43205         * lib/diacrit.c, diacrit.h: Add GPL notice.
43206
43207         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
43208         notice.
43209         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
43210         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
43211         This avoids a potential constant-folding bug.
43212
43213 2004-10-05  Bruno Haible  <bruno@clisp.org>
43214
43215         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
43216         for the declaration of strsep.
43217
43218 2004-10-05  Bruno Haible  <bruno@clisp.org>
43219
43220         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
43221
43222 2004-10-04  Simon Josefsson  <jas@extundo.com>
43223
43224         * modules/memmem: New file.
43225         * tests/test-memmem.c: New file.
43226         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
43227
43228 2004-10-04  Simon Josefsson  <jas@extundo.com>
43229
43230         * m4/memmem.m4: New file.
43231
43232 2004-10-04  Simon Josefsson  <jas@extundo.com>
43233
43234         * lib/memmem.h: New file.
43235         * lib/memmem.c: New file, taken from glibc.
43236
43237 2004-10-04  Simon Josefsson  <jas@extundo.com>
43238
43239         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
43240         '#ifdef USE_UNLOCKED_IO'.
43241
43242 2004-10-04  Simon Josefsson  <jas@extundo.com>
43243
43244         * config/srclist.txt: Add memmem from glibc.
43245
43246 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
43247
43248         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
43249
43250         * modules/argmatch, modules/argp, modules/closeout, modules/error,
43251         modules/exclude, modules/getdate, modules/getline,
43252         modules/getndelim2, modules/getpass, modules/getpass-gnu,
43253         modules/getusershell, modules/linebuffer, modules/md5,
43254         modules/mountlist, modules/posixtm, modules/readtokens,
43255         modules/readutmp, modules/regex, modules/sha1,
43256         modules/version-etc, modules/yesno:
43257         Remove dependency on unlocked-io.
43258
43259 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
43260
43261         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
43262
43263         * m4/unlocked-io.m4: Add copyright notice.
43264         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
43265
43266 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
43267
43268         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
43269         * lib/xmalloc.c (xmemdup): Likewise.
43270         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
43271         XFREE): Remove these long-obsolescent macros.
43272         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
43273         * lib/xstrdup.c: Remove.
43274
43275         * lib/regex.c (re_comp): Cast gettext return value to char *,
43276         Problem reported by Martin Neitzel via Mark D. Baushke.
43277
43278 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
43279
43280         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
43281         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
43282         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
43283         regex.c, sha1.c, version-etc.c, yesno.c:
43284         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
43285         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
43286         the includer's responsibility.
43287
43288         Sync from coreutils.
43289
43290         * lib/modechange.c (mode_compile): Don't decrement a pointer that
43291         points to the start of a string, as the C Standard says the
43292         resulting behavior is undefined.
43293
43294         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
43295         simple -> simple_backups, numbered_existing ->
43296         numbered_existing_backups, numbered -> numbered_backups
43297         to avoid shadowing problems.  All uses changed.
43298         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
43299         * lib/backupfile.c (check_extension, numbered_backup):
43300         Rename locals to avoid shadowing 'basename'.
43301         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
43302         once.
43303
43304         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
43305         * lib/.cvsignore: Add getopt.h.
43306
43307 2004-10-04  Bruno Haible  <bruno@clisp.org>
43308
43309         * modules/README: New file.
43310         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
43311         not a module.
43312
43313 2004-10-02  Jim Meyering  <jim@meyering.net>
43314
43315         * lib/dirfd.h, getpagesize.h: Add copyright notice.
43316
43317 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43318
43319         * modules/strsep: New file.
43320
43321 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43322
43323         * m4/strsep.m4: New file.
43324
43325 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
43326
43327         * lib/strsep.h: New file.
43328         * lib/strsep.c: New file.
43329
43330 2004-10-01  Simon Josefsson  <jas@extundo.com>
43331
43332         * lib/snprintf.c (snprintf): Handle size==0.
43333
43334 2004-10-01  Simon Josefsson  <jas@extundo.com>
43335             Bruno Haible  <bruno@clisp.org>
43336
43337         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
43338         (snprintf): Declare 'args'.
43339
43340 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
43341
43342         * lib/snprintf.c: Remove comments as to why each header is needed.
43343
43344 2004-10-01  Bruno Haible  <bruno@clisp.org>
43345
43346         * MODULES.html.sh: Add strsep.
43347
43348 2004-09-30  Simon Josefsson  <jas@extundo.com>
43349
43350         * modules/snprintf: New file.
43351
43352 2004-09-30  Simon Josefsson  <jas@extundo.com>
43353
43354         * m4/snprintf.m4: New file.
43355
43356 2004-09-30  Simon Josefsson  <jas@extundo.com>
43357
43358         * lib/snprintf.h, lib/snprintf.c: New files.
43359
43360 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
43361
43362         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
43363         (hol_entry_help): Never translate an empty string.
43364         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
43365         * lib/argp.h (OPTION_NO_TRANS): New option.
43366
43367 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
43368
43369         * modules/argp (Maintainer): Replace Simon Josefsson
43370         by Sergey Poznyakoff.
43371
43372 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
43373
43374         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
43375         changes merged back into glibc.
43376
43377 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
43378
43379         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
43380
43381 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
43382
43383         * lib/xvasprintf.c: Include xalloc.h.
43384         (xvasprintf): Use xalloc_die, not xmalloc_die.
43385
43386 2004-09-29  Bruno Haible  <bruno@clisp.org>
43387
43388         * modules/alloca-opt: New file, derived from modules/alloca.
43389         * modules/allocsa: Depend on alloca-opt instead of alloca.
43390         * modules/setenv: Likewise.
43391         * modules/vasnprintf: Likewise.
43392         * MODULES.html.sh: Add alloca-opt.
43393
43394 2004-09-28  Simon Josefsson  <jas@extundo.com>
43395
43396         * gnulib-tool: New parameter --lgpl, to asseert that modules are
43397         LGPL, and to replace license template from GPL to LGPL.
43398
43399 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
43400
43401         * modules/dummy: Change license to LGPL.
43402
43403 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
43404
43405         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
43406
43407 2004-09-24  Simon Josefsson  <jas@extundo.com>
43408
43409         * modules/minmax (License): Change from GPL to LGPL.
43410
43411 2004-09-23  Simon Josefsson  <jas@extundo.com>
43412
43413         * gnulib-tool (--import): Typo.
43414
43415 2004-09-23  Simon Josefsson  <jas@extundo.com>
43416
43417         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
43418
43419 2004-09-22  Bruno Haible  <bruno@clisp.org>
43420
43421         * modules/*: Add 'License' field.
43422         * gnulib-tool: Accept --extract-license option.
43423         (func_get_license): New function.
43424
43425 2004-09-21  Bruno Haible  <bruno@clisp.org>
43426
43427         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
43428         Reported by Simon Josefsson.
43429
43430 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
43431
43432         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
43433         gl_AC_TYPE_LONG_LONG.
43434
43435 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
43436
43437         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
43438
43439 2004-09-18  Simon Josefsson  <jas@extundo.com>
43440         and  Paul Eggert  <eggert@cs.ucla.edu>
43441
43442         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
43443         calls with autoreconf.  Define GL_LIB.
43444
43445 2004-09-14  Karl Berry  <karl@gnu.org>
43446
43447         * config/srclist.txt: unsync setenv.c, sigh.
43448
43449 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
43450
43451         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
43452         Problem reported by Bruno Haible in:
43453         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
43454
43455 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
43456
43457         * config/srclist.txt: Comment out argp-pvh.c.
43458
43459 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
43460
43461         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
43462         in case some system header has #define'd it.  Problem reported by
43463         Soeren D. Schulze in
43464         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
43465
43466 2004-09-09  Karl Berry  <karl@gnu.org>
43467
43468         * regex.[ch]: delete from the root.  These were supposed to be
43469                 synced with emacs cvs, but this has not happened for about
43470                 a year, and anyway nothing else uses emacs regex.[ch].
43471                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
43472                 lib/regex[.ch] is untouched.
43473
43474 2004-09-09  Bruno Haible  <bruno@clisp.org>
43475
43476         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
43477
43478 2004-09-09  Bruno Haible  <bruno@clisp.org>
43479
43480         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
43481         modifications.
43482         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
43483
43484 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
43485
43486         * modules/xvasprintf: New file.
43487         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
43488
43489 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
43490
43491         * lib/xvasprintf.h: New file.
43492         * lib/xvasprintf.c: New file.
43493         * lib/xasprintf.c: New file.
43494
43495 2004-09-08  Bruno Haible  <bruno@clisp.org>
43496
43497         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
43498
43499 2004-09-08  Bruno Haible  <bruno@clisp.org>
43500
43501         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
43502         length is > INT_MAX.
43503         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
43504         more.
43505
43506 2004-09-08  Bruno Haible  <bruno@clisp.org>
43507
43508         * lib/stdint_.h: New file, taken from GNU clisp.
43509
43510 2004-09-08  Bruno Haible  <bruno@clisp.org>
43511             Oskar Liljeblad  <oskar@osk.mine.nu>
43512
43513         * modules/stdint: New file.
43514         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
43515
43516 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
43517
43518         Import from coreutils.
43519         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
43520         strings on unbounded length.  alloca's performance benefits aren't
43521         that important here.
43522         (V_STRDUP): Remove.
43523         (parse_with_separator): New function, with most of the internals
43524         of the old parse_user_spec.  Allow user to omit both user and group,
43525         for compatibility with FreeBSD.
43526         Clone only the user name, not the entire spec.
43527         Do not set *uid, *gid unless entirely successful.
43528         Avoid memory leak in some failing cases.
43529         Fix regression for USER.GROUP reported by Dmitry V. Levin in
43530         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
43531         (parse_user_spec): Rewrite to use parse_with_separator.
43532
43533 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
43534
43535         * modules/userspec: Don't depend on alloca.
43536
43537 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
43538
43539         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
43540
43541 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
43542
43543         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
43544         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
43545         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
43546
43547 2004-08-16  Simon Josefsson  <jas@extundo.com>
43548
43549         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
43550         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
43551         Add --dry-run for --import.
43552         Let user provided command line parameters override configure.ac
43553         settings.
43554
43555 2004-08-12  Simon Josefsson  <jas@extundo.com>
43556
43557         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
43558         as discussed with Paul Eggert in threads rooted at
43559         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
43560         and
43561         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
43562         Before, the test was empty, and relied on ELIDE_CODE in source
43563         code.)
43564         (gl_PREREQ_GETOPT): New macro.
43565         (gl_GETOPT): Use them.
43566
43567 2004-08-12  Simon Josefsson  <jas@extundo.com>
43568
43569         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
43570         * lib/getopt_.h: Renamed from getopt.h.
43571
43572 2004-08-12  Simon Josefsson  <jas@extundo.com>
43573
43574         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
43575         Change default library name from libfoo to libgnu.
43576         Now, if you have a configure.ac that says:
43577                 gl_SOURCE_BASE(gl)
43578                 gl_M4_BASE(gl/m4)
43579                 gl_MODULES(error getopt etcetera)
43580                 gl_INIT
43581         you can import all you need by running:
43582                 ../gnulib/gnulib-tool --import
43583
43584         * modules/getopt (Files): Rename getopt.h to getopt_.h.
43585         (Makefile.am): Rewrite, use logic from argz.
43586         (Include): Use <getopt.h> instead of "getopt.h".
43587
43588 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
43589
43590         * modules/argp (Files): Add m4/unlocked-io.m4.
43591         (Depends-on): Add extensions.
43592
43593 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
43594
43595         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
43596         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
43597         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
43598         Check for program_invocation_name, program_invocation_short_name,
43599         flockfile, funlockfile, features.h, _getopt_long_only_r.
43600
43601 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
43602
43603         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
43604         its complicated substitute.
43605         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
43606         and program_invocation_name.
43607         (__argp_basename) [!_LIBC]: Remove; the only use was
43608         replaced by its body.
43609         (__argp_short_program_name): Change condition from
43610         !defined __argp_short_program_name to
43611         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
43612         to match argp-namefrob.h.
43613         (__argp_failure): Don't assume strerror_r returns char *.
43614         * lib/argp-parse.c (N_): Define unconditionally.
43615         (argp_default_options): Fill out initializers with 0 to avoid
43616         gcc warnings.
43617
43618 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
43619
43620         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
43621         getopt1.c.
43622
43623 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
43624
43625         Merge from coreutils.
43626
43627         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
43628
43629         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
43630         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
43631
43632 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
43633
43634         Merge from coreutils.
43635
43636         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
43637         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
43638         for Reliant Unix 5.43.
43639
43640         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
43641         (union fooround): Use uintmax_t, not long int.
43642         The rest is a merge from libc:
43643         [defined _LIBC]: Include <shlib-compat.h>.
43644         (_obstack) [defined _LIBC]: Remove after 2.3.4.
43645
43646         * lib/settime.c (settime): Recode to avoid warning with
43647         Sun Forte C 6U2.
43648
43649         * lib/strverscmp.c: Convert to UTF-8.
43650
43651 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
43652
43653         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
43654         m4/uintmax_t.m4.
43655
43656 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
43657
43658         * modules/xalloc-die: New file.
43659         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
43660
43661         * modules/md5 (Files): Add m4/uint32_t.m4.
43662         * modules/sha1: Renamed from modules/sha.
43663         (Files):
43664         Rename lib/sha.h to lib/sha1.h.
43665         Rename lib/sha.c to lib/sha1.c.
43666         Rename m4/sha.m4 to m4/sha1.m4.
43667         (lib_SOURCES): Likewise.
43668         (configure.ac): Rename gl_SHA to gl_SHA1.
43669         (Include): sha.h -> sha1.h.
43670
43671 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
43672
43673         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
43674         * m4/sha1.m4: Renamed from sha.m4.
43675         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
43676
43677 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
43678
43679         * lib/obstack.h (obstack_empty_p):
43680         Don't assume that chunk->contents is suitably aligned.
43681         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
43682         Likewise. Problem reported by Benno in
43683         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
43684
43685         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
43686         readable.  This could be improved further but it'd take some work.
43687
43688 2004-08-08  Simon Josefsson  <jas@extundo.com>
43689
43690         * modules/xgethostname (Depends-on): Remove exit and error (not
43691         used).
43692
43693         * modules/getpass-gnu: Add getpass.h.
43694         (Depends-on): Add stdbool.
43695         * modules/getpass: Add getpass.h.
43696
43697 2004-08-08  Simon Josefsson  <jas@extundo.com>
43698
43699         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
43700         Check getpass declaration.
43701
43702 2004-08-08  Simon Josefsson  <jas@extundo.com>
43703
43704         * lib/xgethostname.c: Don't include error.h (not used).
43705
43706         * lib/getpass.h: Add.
43707         * lib/getpass.c: Include getpass.h first.
43708
43709 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
43710
43711         * lib/xalloc-die.c: New file.
43712         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
43713         All uses removed.
43714         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
43715         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
43716         xalloc-die.c.
43717         (_, N_, xalloc_die): Move to xalloc-die.c.
43718         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
43719         so that we needn't mess with xalloc_msg_memory_exhausted.
43720
43721         * lib/sha1.h: Renamed from sha.h.
43722         (SHA1_H): Renamed from _SHA_H.
43723         (sha1_ctx): Renamed from sha_ctx.
43724         (sha1_init_ctx): Renamed from sha_init_ctx.
43725         (sha1_process_block): Renamed from sha_process_block.
43726         (sha1_process_bytes): Renamed from sha_process_bytes.
43727         (sha1_finish_ctx): Renamed from sha_finish_ctx.
43728         (sha1_read_ctx): Renamed from sha_read_ctx.
43729         (sha1_stream): Renamed from sha_stream.
43730         (sha1_buffer): Renamed from sha_buffer.
43731         * lib/sha1.c: Likewise; renamed from sha.c.
43732         Do not include <sys/types.h>.
43733         Include <stddef.h> rather than <stdlib.h>.
43734
43735 2004-08-08  Bruno Haible  <bruno@clisp.org>
43736
43737         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
43738         FILESYSTEM_PREFIX_LEN.
43739         * lib/progreloc.c: Likewise.
43740         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
43741
43742 2004-08-06  Simon Josefsson  <jas@extundo.com>
43743
43744         * modules/progname (Depends-on): Don't depend on stdbool.
43745
43746 2004-08-06  Simon Josefsson  <jas@extundo.com>
43747
43748         * modules/getsubopt: New file.
43749         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
43750         getsubopt.
43751
43752 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
43753
43754         More merge from coreutils.
43755
43756         * m4/utimens.m4, m4/utimecmp.m4: New files.
43757         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
43758         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
43759         prereq.m4, sha.m4: Import changes from coreutils.
43760
43761 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
43762
43763         More merge from coreutils.
43764         * modules/raise, modules/readtokens0, modules/utimens:
43765         * modules/utimecmp, module/xnanosleep: New files.
43766         * modules/strftime: Add lib/strftime.h.
43767         Change include from <time.h> to "strftime.h".
43768         * modules/yesno: Add lib/yesno.h.
43769         * modules/backupfile: Remove lib/addext.c.
43770         * modules/euidaccess: Add stat-macros.h.
43771         * modules/canonicalize, modules/euidaccess,
43772         modules/filemode, modules/lchown, modules/makepath,
43773         modules/rmdir, modules/stat: Likewise.
43774
43775 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
43776
43777         Merge from tar.
43778         * lib/argp-help.c (make_hol, hol_append): Don't assume that
43779         SIZE_MAX is a valid preprocessor constant.
43780         (__argp_basename): Change from "#ifndef _LIBC"
43781         to "#ifndef __argp_short_program_name", so that
43782         we don't compile these functions for tar.
43783
43784         More merges from coreutils.
43785         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
43786         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
43787         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
43788         * lib/addext.c: Remove; no longer needed.
43789         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
43790         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
43791         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
43792         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
43793         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
43794         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
43795         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
43796         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
43797         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
43798         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
43799         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
43800         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
43801         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
43802         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
43803         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
43804         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
43805         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
43806         Import changes from coreutils.
43807
43808 2004-08-05  Simon Josefsson  <jas@extundo.com>
43809
43810         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
43811
43812 2004-08-05  Simon Josefsson  <jas@extundo.com>
43813
43814         * m4/getsubopt.m4: New file.
43815
43816 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
43817
43818         Merge from coreutils.
43819
43820         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
43821         * m4/getcwd-path-max.m4: New files.
43822
43823         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
43824         FILESYSTEM_PREFIX_LEN ->
43825         FILE_SYSTEM_PREFIX_LEN.
43826         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
43827         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
43828         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
43829         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
43830
43831         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
43832         prerequisite modules now handle the DOS stuff.
43833         Don't check for unistd.h.
43834
43835 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
43836
43837         Merge from coreutils.
43838
43839         * lib/.gdb-history: Remove; this doesn't belong here.
43840
43841         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
43842         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
43843         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
43844         * lib/getcwd.c: New files.
43845
43846         * lib/dirname.h: Include <stdbool.h>.
43847         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
43848         for consistency with POSIX terminology.  All uses changed.
43849         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
43850         (strip_trailing_slashes): Use bool for booleans.
43851         * lib/stripslash.c (strip_trailing_slashes): Likewise.
43852
43853         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
43854         sometimes returns a positive errno value even when it succeeds.
43855         (print_errno_message) [!LIBC]: Fall back on strerror if
43856         __strerror_r fails.
43857
43858         * lib/path-concat.c (mempcpy): Don't define if a system header defines
43859         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
43860         (longest_relative_suffix): New function.
43861         (path_concat): Use it.  Assume first argument is not NULL.
43862         Port to DOS.  Omit redundant separators.
43863         Report an error instead of returning NULL.
43864         Use mempcpy instead of memcpy.
43865         (xpath_concat): Remove: not declared or used.
43866
43867         * lib/same.h: Include <stdbool.h>
43868         (same_name): Return bool, not int.
43869         * lib/same.c (same_name): Likewise.
43870         (errno): Don't declare; we assume C89 or better now.
43871
43872         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
43873         if not already defined.
43874
43875         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
43876         * lib/dup-safer.c (errno): Likewise.
43877
43878 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
43879
43880         Merge from coreutils.
43881         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
43882         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
43883         * modules/path-concat: Don't depend on strdup.
43884
43885 2004-08-03  Simon Josefsson  <jas@extundo.com>
43886
43887         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
43888         * lib/progname.h: Don't include stdbool.h.
43889
43890 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
43891
43892         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
43893         * MODULES.html.sh (func_all_modules): Remove fatal.
43894
43895 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
43896
43897         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
43898
43899 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
43900
43901         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
43902         working.
43903
43904 2004-08-02  Simon Josefsson  <jas@extundo.com>
43905
43906         * lib/getsubopt.h: New file, with comments from Bruno Haible.
43907         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
43908         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
43909
43910 2004-08-01  Simon Josefsson  <jas@extundo.com>
43911
43912         * lib/xgetdomainname.c: Include stdlib.h, for free().
43913
43914 2004-07-19  Bruno Haible  <bruno@clisp.org>
43915
43916         * MODULES.html.sh (func_all_modules): Add dummy.
43917
43918 2004-07-16  Simon Josefsson  <jas@extundo.com>
43919
43920         * modules/dummy: New file.
43921
43922 2004-07-16  Simon Josefsson  <jas@extundo.com>
43923
43924         * lib/dummy.c: New file.
43925
43926 2004-07-16  Bruno Haible  <bruno@clisp.org>
43927
43928         * lib/backupfile.h: Add extern "C" for C++.
43929         * lib/closeout.h: Likewise.
43930         * lib/copy-file.h: Likewise.
43931         * lib/findprog.h: Likewise.
43932         * lib/full-write.h: Likewise.
43933         * lib/pathname.h: Likewise.
43934         * lib/progname.h: Likewise.
43935         * lib/stpcpy.h: Likewise.
43936         * lib/stpncpy.h: Likewise.
43937         * lib/strcase.h: Likewise.
43938         * lib/strstr.h: Likewise.
43939         * lib/xalloc.h: Likewise.
43940
43941         * lib/mbswidth.h: Add extern "C" for C++.
43942         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
43943
43944 2004-07-13  Robert Millan  <robertmh@gnu.org>
43945
43946         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
43947
43948 2004-07-09  Simon Josefsson  <jas@extundo.com>
43949
43950         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
43951         failed without this.)
43952
43953 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
43954
43955         * modules/chown (Files): Add lib/fchown-stub.c, since
43956         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
43957
43958 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
43959
43960         * lib/fchown-stub.c: New file.
43961
43962 2004-06-24  Jim Meyering  <jim@meyering.net>
43963
43964         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
43965
43966 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
43967
43968         * modules/argz: Omit "#include".
43969
43970         * MODULES.html.sh (func_all_modules): Add calloc, to match
43971         2004-06-01 addition of calloc module.
43972
43973 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
43974
43975         * m4/argz.m4: New file, which is autoupdated from libtool.
43976
43977 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
43978
43979         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
43980         libtool.
43981
43982 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
43983
43984         * config/srclist-update: Don't insist on "USA." before the
43985         close-comment, as libtool omits the period and puts the */ on a
43986         separate line.
43987         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
43988         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
43989
43990 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
43991
43992         * modules/argz: New file.
43993         * MODULES.html.sh (func_all_modules): Add argz.
43994
43995 2004-06-12  Jim Meyering  <jim@meyering.net>
43996         and  Paul Eggert  <eggert@cs.ucla.edu>
43997
43998         * modules/hash (Files): Add lib/xalloc.h.
43999         * modules/pipe (Depends-on): Add wait-process.
44000         * modules/stat (Depends-on): Add xalloc.
44001         * modules/userspec (Files): Add lib/userspec.h.
44002         * modules/xstrto
44003
44004         Upgrade from gettext-0.13.
44005         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
44006         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
44007         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
44008
44009 2004-06-10  Jim Meyering  <jim@meyering.net>
44010
44011         * lib/calloc.c: New file.
44012
44013 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
44014
44015         * lib/getdate.y (yylex): Allow space between sign and number.
44016         Problem reported by Dan Jacobson.
44017
44018 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
44019
44020         Merge from coreutils CVS.
44021
44022         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
44023         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
44024         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
44025         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
44026         xstrtol.m4: Fix copyright date and/or serial number.
44027
44028         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
44029         See if we need an fchown replacement.
44030         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
44031         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
44032         and use the replacement function if we detect either defect.
44033
44034         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
44035         gl_UTIMECMP.
44036
44037 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
44038         and  Jim Meyering  <jim@meyering.net>
44039
44040         Merge from coreutils CVS.
44041
44042         * lib/stat-macros.h: New file, with contents from file-type.h
44043         and coreutils' system.h.
44044         * lib/file-type.c: Include "stat-macros.h".
44045         * lib/file-type.h (file_type): Move all macro definitions to new file,
44046         stat-macros.h.
44047
44048         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
44049         Wrap old code with this conditional.
44050         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
44051         function that does not dereference symlinks.
44052         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
44053
44054         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
44055         dependency problems.
44056         (xreadlink): Accept new arg SIZE, for efficiency.
44057         All decls and uses changed.
44058         * lib/xreadlink.h: Include <stddef.h>, for size_t.
44059
44060         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
44061         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
44062
44063         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
44064         sysexits.h.
44065
44066 2004-06-01  Jim Meyering  <jim@meyering.net>
44067
44068         * m4/calloc.m4: New file.
44069
44070 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
44071
44072         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
44073         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
44074         Also, fix a typo in a diagnostic.
44075
44076 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
44077
44078         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
44079         or AC_FUNC_REALLOC.
44080
44081 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
44082
44083         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
44084         macros to be defined.
44085         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
44086         the allocator returns NULL because the requested size is zero.
44087
44088 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
44089
44090         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
44091         var.  Add comment explaining why libc still defines it.  This
44092         merges the following patch from glibc:
44093         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
44094
44095 2004-05-20  Andreas Schwab  <schwab@suse.de>
44096
44097         * m4/free.m4: Replace free if it not known to work, not the other
44098         way round.
44099
44100 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
44101
44102         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
44103         present in glibc since revision 1.1 of this file.
44104         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
44105         obstack_alignment_mask, obstack_alloc, obstack_base,
44106         obstack_blank, obstack_blank_fast, obstack_chunk_size,
44107         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
44108         obstack_grow0, obstack_init, obstack_int_grow,
44109         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
44110         obstack_next_free, obstack_object_size, obstack_ptr_grow,
44111         obstack_ptr_grow_fast, obstack_room): Remove declarations of
44112         nonexistent functions.
44113
44114 2004-05-18  Karl Berry  <karl@gnu.org>
44115
44116         * config/srclist.txt: break link for vasnprintf.c.
44117
44118 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
44119
44120         Port obstack to the AS/400, where pointers are 16 bytes wide and
44121         you cannot cast an integer to a valid pointer.  This patch is
44122         currently waiting to be integrated into glibc; see
44123         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
44124
44125         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
44126         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
44127         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
44128         (struct obstack): temp member is now a union of a pointer and
44129         an integer, instead of an integer.  All integer uses changed.
44130         This does not affect the physical layout of struct obstack,
44131         except on hosts (like the AS/400) where the size or alignment of
44132         void * is greater than that of ptrdiff_t.
44133         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
44134         __STDC__)]: Store temporary in pointer member of union, not
44135         integer member.
44136         * lib/obstack.c: Include <stddef.h>, for offsetof.
44137         (struct fooalign): Remove; it doesn't need a name.
44138         (union fooround): Change double to long double, and add void *.
44139         (DEFAULT_ALIGNMENT): Use offsetof to compute.
44140         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
44141         not a macro.  Hence the values are always int; so remove all
44142         casts-to-int in uses.
44143
44144 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
44145
44146         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
44147         we can get this patch merged into glibc.
44148
44149 2004-05-17  Derek R. Price  <derek@ximbiot.com>
44150             Paul Eggert  <eggert@cs.ucla.edu>
44151
44152         * m4/argp: Depend on alloca.
44153
44154 2004-05-17  Derek R. Price  <derek@ximbiot.com>
44155             Paul Eggert  <eggert@cs.ucla.edu>
44156
44157         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
44158         freecoding.
44159
44160 2004-05-17  Bruno Haible  <bruno@clisp.org>
44161
44162         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
44163         precision that consists of a '.' followed by an empty digit string.
44164         Patch by Tor Lillqvist <tml@iki.fi>.
44165
44166 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
44167
44168         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
44169         for backward compatibility with older code.  We need our own
44170         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
44171         it under some other name, and our alloca.h will define it.
44172
44173 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
44174             Derek Price  <derek@ximbiot.com>
44175
44176         * lib/alloca.c: Include <alloca.h>, to get our interface.
44177         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
44178         include <alloca.h> first.  Use C89 prototype for alloca; this
44179         requires including <stddef.h> for size_t.  Use extern "C" if C++.
44180         Use #elif for simplicity, since we can assume C89 now.
44181         Don't try to source the system alloca.h since it will not be found
44182         and to prevent recursively including its replacement.
44183         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
44184         * lib/regex.c: Likewise.
44185
44186 2004-05-16  Derek Price  <derek@ximbiot.com>
44187             Paul Eggert  <eggert@cs.ucla.edu>
44188
44189         getline cleanup.  This changes the getndelim2 API: both order of
44190         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
44191         no delimiter).
44192
44193         * lib/getline.c: Don't include stddef.h or stdio.h, since our
44194         interface does that.
44195         (getline): Always use getdelim, so that we don't have two
44196         copies of this code.
44197         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
44198         if available.
44199         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
44200         (GETNDELIM2_MAXIMUM): New macro.
44201         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
44202         instead of the old practice of delim2==0.  All callers changed.
44203         Return -1 on overflow, instead of returning junk.
44204         Do not set *linesize unless allocation succeeds.
44205         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
44206         that we include sys/types.h.
44207         * lib/getnline.h: Likewise.
44208         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
44209         (getndelim2): Reorder arguments.
44210         * lib/getnline.c (getnline, getndelim):
44211         Don't discard the NMAX argument.
44212         (getnline): Invoke getndelim, to avoid code duplication.
44213         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
44214         of (size_t) -1 by callers of the getnline family.
44215
44216 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
44217
44218         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
44219         Check for gettimeofday.
44220         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
44221         Check for settimeofday, stime.
44222
44223 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
44224
44225         * lib/nanosleep.c (suspended): Change its type from int to
44226         sig_atomic_t volatile.
44227         (first_call): Make it private to rpl_nanosleep, and have it
44228         be zero initially as that's a bit faster.
44229         (my_usleep): Round up fractional times instead of truncating them,
44230         as this is the usual meaning for 'sleep'.
44231
44232         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
44233         doesn't work.
44234         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
44235         (ENOSYS): Define if not defined.
44236         (settime): Fall back on stime if it exists and settimeofday fails.
44237         But don't bother with fallbacks if a method fails with errno == EPERM.
44238
44239 2004-05-11  Jim Meyering  <jim@meyering.net>
44240
44241         Prior to this change, the save_cwd caller required read access to the
44242         current directory on most systems (ones with the fchdir function).
44243
44244         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
44245         fails, try write-only, and finally, resort to using xgetcwd.
44246
44247 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
44248
44249         * lib/obstack.c, obstack.h: Import changes from libc.
44250
44251 2004-04-28  Bruno Haible  <bruno@clisp.org>
44252
44253         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
44254         also implicitly appends .exe to executables.
44255         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
44256         accepts Windows pathnames.
44257         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
44258         Treat Cygwin like Windows, since it now accepts Windows pathnames.
44259         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
44260         Treat Cygwin like Windows, since it now accepts Windows pathnames.
44261         Reported by Derek Robert Price <derek@ximbiot.com>.
44262
44263 2004-04-21  Karl Berry  <karl@gnu.org>
44264
44265         * config/srclist.txt (localcharset.c): break sync.
44266
44267 2004-04-20  Paul Eggert  <eggert@twinsun.com>
44268
44269         * m4/host-os.m4: Add a copyright notice.
44270
44271 2004-04-20  Jim Meyering  <jim@meyering.net>
44272
44273         Change UTILS_ to gl_ in AC_DEFINE'd names.
44274         Change utils_- and jm_-prefixed variables, too.
44275         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
44276         UTILS_FUNC_MKDIR_TRAILING_SLASH.
44277         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
44278
44279         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
44280         Don't emit trailing blanks.
44281         Also rename jm_-prefixed variables to have gl_ prefix.
44282
44283         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
44284         Also rename jm_-prefixed variables to have gl_ prefix.
44285
44286         * m4/jm-macros.m4: Reflect the renamings.
44287         * m4/prereq.m4: Likewise.
44288
44289 2004-04-20  Jim Meyering  <jim@meyering.net>
44290
44291         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
44292         memory.
44293
44294 2004-04-20  Jim Meyering  <jim@meyering.net>
44295             Bruno Haible  <bruno@clisp.org>
44296
44297         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
44298         memory when realloc fails.
44299
44300 2004-04-19  Jim Meyering  <jim@meyering.net>
44301
44302         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
44303         now that readutmp.c may call `free (0)'.
44304
44305 2004-04-19  Bruno Haible  <bruno@clisp.org>
44306
44307         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
44308         * m4/inttypes_h.m4: Likewise.
44309         * m4/stdint_h.m4: Likewise.
44310         * m4/intmax_t.m4: Likewise.
44311         * m4/uintmax_t.m4: Likewise.
44312
44313 2004-04-18  Jim Meyering  <jim@meyering.net>
44314
44315         * m4/prereq.m4: Don't forbid jm_ prefix.
44316
44317         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
44318         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
44319         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
44320         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
44321         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
44322         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
44323         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
44324         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
44325         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
44326         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
44327         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
44328         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
44329         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
44330         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
44331         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
44332         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
44333         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
44334         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
44335         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
44336
44337 2004-04-18  Jim Meyering  <jim@meyering.net>
44338
44339         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
44340         failure, don't leak memory and do call END_UTMP_ENT.
44341
44342 2004-04-16  Jim Meyering  <jim@meyering.net>
44343
44344         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
44345         coreutils' stat program.
44346         (gl_PREREQ): Don't require jm_PREREQ_STAT.
44347
44348 2004-04-11  Paul Eggert  <eggert@twinsun.com>
44349
44350         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
44351         C89.
44352         (CHAR_BIT): Remove, since we assume C89.
44353         Include <stdint.h> if available, as per current Autoconf CVS advice.
44354
44355 2004-03-31  Jim Meyering  <jim@meyering.net>
44356
44357         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
44358         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
44359         * m4/xalloc.m4: Likewise.
44360
44361 2004-03-30  Paul Eggert  <eggert@twinsun.com>
44362
44363         Merge from coreutils.
44364
44365         * m4/inttostr.m4: New file.
44366         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
44367         Require AM_STDBOOL_H and gl_TIMESPEC instead.
44368         Require gl_CLOCK_TIME.
44369         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
44370
44371 2004-03-30  Paul Eggert  <eggert@twinsun.com>
44372
44373         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
44374         not bool, to be more consistent with Unix conventions.
44375         Suggested by Bruno Haible.
44376
44377         Merge from coreutils.
44378
44379         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
44380         * lib/umaxtostr.c: New files.
44381
44382         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
44383         the usual <time.h> dance.
44384         (get_date): Change signature to support fractional time stamps.
44385         All callers changed.
44386         * lib/getdate.y: Include "getdate.h" first, as we can now
44387         assume C89 and don't need to worry about 'const'.
44388         Similarly, include "unlocked-io.h" near start, not in middle.
44389         Include <limits.h>.
44390         (textint.value): Use long int rather than int.
44391         (textint.digits): Use size_t rather than int.
44392         (BILLION, LOG10_BILLION): New constants.
44393         (parser_control): New member rel_ns.  Members day_ordinal,
44394         time_zone, month, day, hour, minutes, rel_year, rel_month,
44395         rel_day, rel_hour, rel_minutes, rel_seconds
44396         are now long int, not int.  Member seconds is now struct timespec,
44397         not int.  New member timespec_seen.  Members dates_seen, days_seen,
44398         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
44399         not int.
44400         (%union.intval): Now long int, not int.
44401         New member timespec.
44402         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
44403         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
44404         (spec): Now is a timespec or an item list.
44405         (timespec, items): New nonterminals.
44406         (time, rel, relunit, number, get_date):
44407         Add support for fractional seconds.
44408         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
44409         (gmtime, localtime, mktime): Remove decls; not needed with C89.
44410         (to_hour): First arg is now long int, not int.
44411         (to_year): Returns long int, not int.
44412         Don't treat year -70 like 70.
44413         (tm_diff): Returns long int, not int.
44414         (lookup_word): Use bool instead of int when appropriate.
44415         (yylex): Use size_t for count, not int.
44416         Detect overflow when parsing large integer constants.
44417         Add support for fractions.
44418         (get_date): Make pointers 'const' if possible.
44419         Use more-portable code to detect integer overflow.
44420         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
44421         Don't use ctime; it's not reliable if the year has >4 digits.
44422
44423         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
44424         This is for compatibility with BSD.
44425
44426         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
44427         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
44428         From coreutils' system.h.
44429
44430         * lib/userspec.c: Don't include "posixver.h".
44431         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
44432         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
44433         compatible extension.  Simplify code by removing a boolean int
44434         that was always nonzero if a string was nonnull.
44435
44436 2004-03-30  Jim Meyering  <jim@meyering.net>
44437
44438         Merge from coreutils.
44439
44440         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
44441         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
44442         on some systems one must include <grp.h> before it.
44443         Reported by Christian Krackowizer.
44444
44445 2004-03-30  Jim Meyering  <jim@meyering.net>
44446
44447         Merge from coreutils.
44448
44449         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
44450
44451         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
44452         an empty input stream.
44453
44454         * lib/readtokens.c: Include <stdbool.h>.
44455         (readtoken): Use `size_t' rather than int/long.
44456         All callers adjusted.
44457         Use `bool' rather than `int' where appropriate.
44458         Use memset rather than an explicit loop.
44459         Use x2nrealloc rather than xrealloc.
44460         Allow the use of `\0' as a delimiter.
44461         (readtokens): Likewise.
44462         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
44463
44464 2004-03-30  Jim Meyering  <jim@meyering.net>
44465
44466         * m4/realloc.m4: Remove file, since now it does no more than
44467         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
44468         the `configure.ac' section of module/realloc.
44469         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
44470
44471 2004-03-30  Bruno Haible  <bruno@clisp.org>
44472
44473         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
44474         nonnull.
44475
44476 2004-03-29  Paul Eggert  <eggert@twinsun.com>
44477
44478         Merge changes to getloadavg.c from coreutils and Emacs.
44479
44480         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
44481         Define to an expression, not to the empty string.
44482         Include cloexec.h and xalloc.h.
44483         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
44484         Use set_cloexec_flag rather than rolling our own.
44485         * lib/cloexec.c, lib/cloexec.h: New files.
44486
44487 2004-03-29  Paul Eggert  <eggert@twinsun.com>
44488
44489         * m4/cloexec.m4: New file.
44490
44491 2004-03-18  Paul Eggert  <eggert@twinsun.com>
44492
44493         * lib/getopt.h: Sync with libc CVS.
44494
44495 2004-03-18  Paul Eggert  <eggert@twinsun.com>
44496             Bruno Haible  <bruno@clisp.org>
44497
44498         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
44499         mbswidth.
44500
44501 2004-03-18  Paul Eggert  <eggert@twinsun.com>
44502             Bruno Haible  <bruno@clisp.org>
44503
44504         * lib/mbswidth.h: Include <wchar.h> only if
44505         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
44506         <wchar.h>.
44507         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
44508
44509 2004-03-09  Paul Eggert  <eggert@twinsun.com>
44510
44511         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
44512         Sync with libc CVS.
44513         * lib/getopt_int.h: New file, also synced from libc.
44514
44515 2004-03-09  Paul Eggert  <eggert@twinsun.com>
44516
44517         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
44518         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
44519         Bring back getopt.c, getopt.h, getopt1.c.
44520
44521 2004-03-07  Paul Eggert  <eggert@twinsun.com>
44522
44523         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
44524         All uses changed.  Check for sa_sigaction member; this fixes
44525         a bug first reported by Jason Andrade in
44526         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
44527
44528 2004-03-07  Paul Eggert  <eggert@twinsun.com>
44529
44530         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
44531         '#if' expressions.  Unlike the code it replaces, it does not
44532         depend on (defined _SC_PAGESIZE).  However, it does depend on
44533         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
44534         first reported by Jason Andrade in
44535         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
44536
44537 2004-02-25  Simon Josefsson  <jas@extundo.com>
44538
44539         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
44540
44541 2004-02-25  Simon Josefsson  <jas@extundo.com>
44542
44543         * lib/strdup.h: New file.
44544         * lib/strdup.c: Include it.
44545         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
44546         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
44547
44548 2004-02-23  Karl Berry  <karl@gnu.org>
44549
44550         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
44551         (from fencepost.gnu.org:/gd/gnuorg).
44552
44553 2004-02-23  Karl Berry  <karl@gnu.org>
44554
44555         * config/srclistvars.sh (GNUORG) [karl]: redefine.
44556         * config/srclist.txt: add maintain/standards documents.
44557
44558 2004-02-18  Bruno Haible  <bruno@clisp.org>
44559
44560         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
44561         Reported by Derek Robert Price <derek@ximbiot.com>.
44562
44563 2004-02-16  Karl Berry  <karl@gnu.org>
44564
44565         * config/mkinstalldirs, install-sh: update from automake.
44566
44567 2004-02-06  Karl Berry  <karl@gnu.org>
44568
44569         * m4/po.m4: update from gettext 0.14.1.
44570
44571 2004-02-06  Karl Berry  <karl@gnu.org>
44572
44573         * lib/config.charset: update from gettext 0.14.1.
44574
44575 2004-02-05  Paul Eggert  <eggert@twinsun.com>
44576
44577         Add comments and code, prompted by suggestions from Bruno Haible
44578         for sh-quote.
44579         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
44580         describing the enum quoting_style values.
44581         * lib/quotearg.c (quotearg_alloc): New function.
44582         (quotearg_buffer_restyled): Treat lone { and } as special.
44583         Treat = as special.  Work around bug with older shells
44584         that "see" a '\' that is really the 2nd byte of a multibyte char.
44585         Quote empty string with shell_quoting_style.
44586
44587 2004-02-03  Bruno Haible  <bruno@clisp.org>
44588
44589         * m4/pipe.m4: New file, from GNU gettext.
44590
44591 2004-02-03  Bruno Haible  <bruno@clisp.org>
44592
44593         * lib/pipe.h: New file, from GNU gettext.
44594         * lib/pipe.c: New file, from GNU gettext.
44595
44596 2004-01-27  Bruno Haible  <bruno@clisp.org>
44597
44598         * m4/execute.m4: New file, from GNU gettext.
44599
44600 2004-01-27  Bruno Haible  <bruno@clisp.org>
44601
44602         * lib/execute.h: New file, from GNU gettext.
44603         * lib/execute.c: New file, from GNU gettext.
44604         * lib/w32spawn.h: New file, from GNU gettext.
44605
44606 2004-01-24  Paul Eggert  <eggert@twinsun.com>
44607
44608         Merge from diffutils.
44609
44610         * lib/file-type.c (file_type): Add typed memory objects.
44611         * lib/file-type.h (S_TYPEISTMO): New macro.
44612
44613         * lib/c-stack.h (c_stack_action): Remove argv argument.
44614         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
44615         (die): Don't calculate message unless segv_action returns.
44616         (get_stack_location, min_address_from_argv, max_address_from_argv,
44617         volatile stack_base, volatile_stack_size): Remove.
44618         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
44619         that every segmentation violation is a stack overflow.  (Ouch!)
44620         See Debian bug 136249 (still outstanding) for more info about why
44621         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
44622
44623 2004-01-24  Paul Eggert  <eggert@twinsun.com>
44624
44625         Exit-status fix from coreutils.
44626
44627         Use exit_failure consistently in place of EXIT_FAILURE,
44628         so that program exit statuses are consistent on failure.
44629
44630         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
44631         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
44632         * lib/argmatch.h: Comment fix to match the above.
44633         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
44634         Now a macro referring to exit_failure, instead of a separate
44635         variable.  Include "exitfail.h" to get it.
44636         * lib/xstrtol.h: Include "exitfail.h".
44637         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
44638
44639         * lib/long-options.c (parse_long_options): Use prototype
44640         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
44641         for clarity.
44642
44643 2004-01-21  Jim Meyering  <jim@meyering.net>
44644
44645         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
44646         so as not to conflict with a different-sized __mktime_internal
44647         function in GNU libc.
44648         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
44649         Problem building statically-linked `ls' reported by Michael Brunnbauer.
44650
44651 2004-01-20  Karl Berry  <karl@gnu.org>
44652
44653         * config/config.guess: update from config.
44654
44655         * config/srclistvars.sh: GNUWWWLICENSES for karl.
44656
44657 2004-01-20  Bruno Haible  <bruno@clisp.org>
44658
44659         Safer stack allocation.
44660         * lib/setenv.c: Include allocsa.h.
44661         (alloca): Remove fallback definition.
44662         (freea): Remove macro.
44663         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
44664         instead of freea.
44665
44666 2004-01-20  Bruno Haible  <bruno@clisp.org>
44667
44668         * m4/eealloc.m4: New file, from GNU gettext.
44669
44670 2004-01-20  Bruno Haible  <bruno@clisp.org>
44671
44672         * m4/allocsa.m4: New file, from GNU gettext.
44673
44674 2004-01-20  Bruno Haible  <bruno@clisp.org>
44675
44676         * lib/xallocsa.h: New file, from GNU gettext.
44677         * lib/xallocsa.c: New file, from GNU gettext.
44678
44679 2004-01-20  Bruno Haible  <bruno@clisp.org>
44680
44681         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
44682
44683 2004-01-20  Bruno Haible  <bruno@clisp.org>
44684
44685         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
44686         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
44687         specially.
44688
44689 2004-01-20  Bruno Haible  <bruno@clisp.org>
44690
44691         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
44692         patch.
44693
44694 2004-01-20  Bruno Haible  <bruno@clisp.org>
44695
44696         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
44697
44698 2004-01-20  Bruno Haible  <bruno@clisp.org>
44699
44700         * lib/eealloc.h: New file.
44701
44702 2004-01-20  Bruno Haible  <bruno@clisp.org>
44703
44704         * lib/binary-io.h: Avoid warnings on Cygwin.
44705
44706 2004-01-20  Bruno Haible  <bruno@clisp.org>
44707
44708         * lib/allocsa.h: New file, from GNU gettext.
44709         * lib/allocsa.c: New file, from GNU gettext.
44710
44711 2004-01-18  Karl Berry  <karl@gnu.org>
44712
44713         * doc/gpl.texi, doc/lgpl.texi: new files.
44714
44715 2004-01-18  Karl Berry  <karl@gnu.org>
44716
44717         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
44718         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
44719
44720 2004-01-15  Paul Eggert  <eggert@twinsun.com>
44721
44722         Merge from coreutils.
44723
44724         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
44725         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
44726         (gl_DEFAULT_POSIX2_VERSION): Move
44727         the documentation from 'configure' into 'config.hin',
44728         so that 'configure --help' isn't burdened by it and
44729         we don't have to worry about its formatting there.
44730         Reword the documentation so that it's more succinct
44731         and can be run together into a single paragraph.
44732         * m4/same.m4 (gl_SAME): Check for pathconf.
44733
44734 2004-01-15  Paul Eggert  <eggert@twinsun.com>
44735
44736         Merge from coreutils.
44737
44738         * lib/posixver.c: Include posixver.h.
44739
44740         * lib/same.c: Include <stdbool.h>, <limits.h>.
44741         (_POSIX_NAME_MAX): Define if not defined.
44742         (MIN): New macro.
44743         (same_name): If file names are silently truncated, report
44744         that the file names are the same if they are the same after
44745         the silent truncation.
44746
44747         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
44748         conversion function.
44749         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
44750         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
44751         longer needed.
44752
44753 2004-01-15  Jim Meyering  <jim@meyering.net>
44754
44755         Merge from coreutils.
44756
44757         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
44758         if no library is required.
44759         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
44760         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
44761         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
44762         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
44763         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
44764         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
44765         value, $ac_cv_search_crypt, if it's "none required".
44766         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
44767         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
44768         not gl_FUNC_GETLOADAVG.
44769         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
44770         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
44771
44772 2004-01-15  Jim Meyering  <jim@meyering.net>
44773
44774         Merge from coreutils.
44775
44776         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
44777         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
44778         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
44779
44780         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
44781         optional configure-time default.
44782
44783         * lib/version-etc.c (version_etc_copyright): Update copyright date.
44784
44785         * lib/xreadlink.c (xreadlink): Correct outdated comment.
44786
44787 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
44788
44789         Merge from coreutils.
44790
44791         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
44792         value, $ac_cv_search_nanosleep, if it's "none required".
44793
44794 2004-01-14  Paul Eggert  <eggert@twinsun.com>
44795
44796         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
44797         with like-named macro in fnmatch.c.
44798         (EXT): Use an internal constant instead.
44799
44800         Merge fnmatch patches from glibc.
44801         * lib/fnmatch.c (mbsinit): Remove define.
44802         Add libc_hidden_ver (__fnmatch, fnmatch).
44803         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
44804         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
44805
44806 2004-01-14  Karl Berry  <karl@gnu.org>
44807
44808         * config/install-sh: update from automake.
44809
44810 2004-01-13  Karl Berry  <karl@gnu.org>
44811
44812         * config/install-sh: update from automake.
44813
44814 2004-01-09  Karl Berry  <karl@gnu.org>
44815
44816         * config/install-sh: update from automake.
44817
44818 2004-01-05  Karl Berry  <karl@gnu.org>
44819
44820         * config/config.{sub,guess}: update from config.
44821
44822 2003-12-31  Karl Berry  <karl@gnu.org>
44823
44824         * config/depcomp: update from automake.
44825
44826 2003-12-14  Karl Berry  <karl@gnu.org>
44827
44828         * lib/config.charset: update from gettext-runtime.
44829
44830 2003-12-03  Paul Eggert  <eggert@twinsun.com>
44831
44832         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
44833         Bug reported by Alfred M. Szmidt.
44834
44835 2003-12-03  Bruno Haible  <bruno@clisp.org>
44836
44837         * m4/gettext.m4: Upgrade from gettext-0.13.
44838         * m4/po.m4: Upgrade from gettext-0.13.
44839         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
44840         * m4/intmax.m4: New file, from gettext-0.13.
44841         * m4/printf-posix.m4: New file, from gettext-0.13.
44842
44843 2003-11-29  Karl Berry  <karl@gnu.org>
44844
44845         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
44846
44847 2003-11-25  Paul Eggert  <eggert@twinsun.com>
44848             Bruno Haible  <bruno@clisp.org>
44849
44850         * lib/printf-parse.h: Don't include sys/types.h.
44851         (ARG_NONE): New macro.
44852         (char_directive): Change type of *arg_index fields to size_t.
44853         * lib/printf-parse.c: Don't include sys/types.h.
44854         (SSIZE_MAX): Remove macro.
44855         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
44856         Remove unnecessary overflow check.
44857         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
44858         fields.
44859
44860 2003-11-25  Bruno Haible  <bruno@clisp.org>
44861
44862         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
44863
44864 2003-11-25  Bruno Haible  <bruno@clisp.org>
44865
44866         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
44867         gt_TYPE_SSIZE_T.
44868
44869 2003-11-24  Paul Eggert  <eggert@twinsun.com>
44870
44871         * modules/alloca: Remove dependency on xalloc.
44872
44873 2003-11-24  Paul Eggert  <eggert@twinsun.com>
44874
44875         * lib/alloca.c: Remove dependency on xalloc module.
44876         (xalloc_die): Remove.
44877         (memory_full) [!defined emacs]: New macro.
44878         [!defined emacs]: Don't include xalloc.h.
44879         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
44880         address arithmetic overflows.  Change datatypes a bit to avoid
44881         unnecessary casts.
44882
44883 2003-11-22  Jim Meyering  <jim@meyering.net>
44884
44885         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
44886         s/size/size_t/.
44887
44888 2003-11-21  Karl Berry  <karl@gnu.org>
44889
44890         * config/config.{sub,guess}: update from config.
44891
44892 2003-11-18  Karl Berry  <karl@gnu.org>
44893
44894         * config/config.{sub,guess}: update from config.
44895
44896         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
44897
44898 2003-11-17  Paul Eggert  <eggert@twinsun.com>
44899
44900         * README: Mention that S+T cannot overflow if S is the size of
44901         an existing object and T is sufficiently small.
44902
44903 2003-11-17  Jim Meyering  <jim@meyering.net>
44904
44905         On systems without utime and without a utimes function capable of
44906         dealing with a NULL struct utimbuf* argument, this utime replacement
44907         could -- in unusual circumstances -- leak a file descriptor.
44908         * lib/utime.c: Include <unistd.h> and <errno.h>.
44909         (utime_null): Be sure to close `fd' and to preserve errno.
44910         Reported by Geoff Collyer via Arnold Robbins.
44911
44912 2003-11-17  Bruno Haible  <bruno@clisp.org>
44913
44914         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
44915         (Depends-on): Add xsize.
44916
44917 2003-11-17  Bruno Haible  <bruno@clisp.org>
44918
44919         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
44920
44921 2003-11-17  Bruno Haible  <bruno@clisp.org>
44922
44923         * lib/vasnprintf.c (alloca): Remove fallback definition.
44924         (freea): Remove definition.
44925         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
44926         Reported by Paul Eggert.
44927
44928 2003-11-16  Paul Eggert  <eggert@twinsun.com>
44929             Bruno Haible  <bruno@clisp.org>
44930
44931         Protect against address arithmetic overflow.
44932         * lib/printf-args.h: Include stddef.h.
44933         (arguments): Change type of field 'count' to size_t.
44934         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
44935         'unsigned int' where appropriate.
44936         * lib/printf-parse.h: Include sys/types.h.
44937         (char_directive): Change type of *arg_index fields to ssize_t.
44938         (char_directives): Change type of fields 'count', max_*_length to
44939         size_t.
44940         * lib/printf-parse.c: Include sys/types.h and xsize.h.
44941         (SSIZE_MAX): Define fallback value.
44942         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
44943         instead of 'int' where appropriate. Check a_allocated, d_allocated
44944         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
44945         * lib/vasnprintf.c: Include xsize.h.
44946         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
44947         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
44948         overflow. Avoid wraparound when converting a width or precision from
44949         decimal to binary.
44950
44951 2003-11-16  Bruno Haible  <bruno@clisp.org>
44952
44953         Update from GNU gettext.
44954         * lib/printf-parse.c: Generalize to it can be compiled for wide
44955         strings.
44956         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
44957         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
44958         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
44959         SNPRINTF): New macros.
44960         Don't include <alloca.h> if the file is used inside libintl.
44961         (local_wcslen): New function, for Solaris 2.5.1.
44962         (VASNPRINTF): Use it instead of wcslen.
44963
44964 2003-11-16  Bruno Haible  <bruno@clisp.org>
44965
44966         * lib/xsize.h (xmax): New function.
44967         (xsum, xsum3, xsum4): Declare as "pure" functions.
44968
44969 2003-11-12  Paul Eggert  <eggert@twinsun.com>
44970
44971         * modules/xalloc (Files): Undo latest change, since xalloc.h
44972         no longer needs SIZE_MAX or PTRDIFF_MAX.
44973
44974 2003-11-12  Paul Eggert  <eggert@twinsun.com>
44975
44976         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
44977         gl_PTRDIFF_MAX.
44978
44979 2003-11-12  Paul Eggert  <eggert@twinsun.com>
44980
44981         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
44982         "return", to pacify some unknown compiler.  Problem reported
44983         by Joerg Schilling.
44984
44985 2003-11-12  Paul Eggert  <eggert@twinsun.com>
44986
44987         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
44988         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
44989         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
44990         heuristic is just as accurate as far as we know, and it removes a
44991         dependency on size_max.m4 and ptrdiff_max.m4.
44992
44993 2003-11-11  Bruno Haible  <bruno@clisp.org>
44994
44995         * modules/xsize (Files): Add m4/size_max.m4.
44996         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
44997
44998 2003-11-11  Bruno Haible  <bruno@clisp.org>
44999
45000         * m4/size_max.m4: New file.
45001         * m4/ptrdiff_max.m4: New file.
45002         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
45003         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
45004         (gl_XALLOC): Invoke it.
45005
45006 2003-11-11  Bruno Haible  <bruno@clisp.org>
45007
45008         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
45009         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
45010         defined.
45011
45012 2003-11-10  Paul Eggert  <eggert@twinsun.com>
45013
45014         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
45015         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
45016         rejected some allocations of exactly SIZE_MAX - 2 bytes.
45017         From Bruno Haible.
45018         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
45019         not (size_t) -1, since it's defined here.
45020
45021 2003-11-09  Karl Berry  <karl@gnu.org>
45022
45023         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
45024
45025 2003-11-06  Paul Eggert  <eggert@twinsun.com>
45026
45027         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
45028         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
45029         Reject sizes of exactly SIZE_MAX bytes.
45030         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
45031         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
45032
45033 2003-11-05  Bruno Haible  <bruno@clisp.org>
45034
45035         * lib/xsize.h: Include limits.h, to avoid a possible collision with
45036         SIZE_MAX defined in <limits.h> on Solaris.
45037
45038 2003-11-04  Jim Meyering  <jim@meyering.net>
45039
45040         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
45041         variable names, rather than @VAR@.
45042         * modules/poll: Likewise.
45043
45044 2003-11-04  Bruno Haible  <bruno@clisp.org>
45045
45046         * modules/xsize: New file.
45047         * modules/linebreak: Depend on xsize.
45048         * MODULES.html.sh (func_all_modules): Add xsize.
45049
45050 2003-11-04  Bruno Haible  <bruno@clisp.org>
45051
45052         * m4/xsize.m4: New file.
45053
45054 2003-11-04  Bruno Haible  <bruno@clisp.org>
45055
45056         * lib/xsize.h: New file.
45057         * lib/linebreak.c: Include xsize.h.
45058         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
45059         argument for overflow.
45060         Suggested by Paul Eggert.
45061
45062 2003-11-03  Karl Berry  <karl@gnu.org>
45063
45064         * config/config.{guess,sub}: update from config.
45065
45066 2003-11-03  Jim Meyering  <jim@meyering.net>
45067
45068         * modules/userspec (lib_SOURCES): Add userspec.h.
45069         (Include): Add "userspec.h".
45070         Improve description.
45071
45072 2003-11-03  Jim Meyering  <jim@meyering.net>
45073
45074         * lib/userspec.c: Include "userspec.h".
45075         * lib/userspec.h: New file.
45076
45077 2003-11-03  Bruno Haible  <bruno@clisp.org>
45078
45079         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
45080
45081 2003-11-03  Bruno Haible  <bruno@clisp.org>
45082
45083         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
45084         available, to avoid (extremely rare) race condition.
45085         Suggested by Paul Eggert.
45086
45087 2003-11-02  Karl Berry  <karl@gnu.org>
45088
45089         * config/srclist.txt (vasprintf.c): sync broken, sigh.
45090
45091 2003-10-31  Paul Eggert  <eggert@twinsun.com>
45092
45093         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
45094         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
45095         (read_filesystem_list): Set and use me_type_malloced.
45096         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
45097         whatever the type happens to be), for brevity and consistency.
45098         Check for size calculation overflow on Alphas running OSF/1.
45099
45100 2003-10-31  Jim Meyering  <jim@meyering.net>
45101
45102         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
45103
45104         * lib/linebuffer.c: Include <string.h> for declaration of memset.
45105
45106 2003-10-30  Paul Eggert  <eggert@twinsun.com>
45107             Bruno Haible  <bruno@clisp.org>
45108
45109         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
45110         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
45111
45112 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
45113
45114         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
45115         netbsd*-gnu*.  Suggested by Robert Millan.
45116
45117 2003-10-29  Paul Eggert  <eggert@twinsun.com>
45118
45119         * modules/group-member: Depend on stdbool.
45120
45121 2003-10-29  Paul Eggert  <eggert@twinsun.com>
45122
45123         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
45124
45125 2003-10-29  Paul Eggert  <eggert@twinsun.com>
45126
45127         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
45128         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
45129         after the 'gnu' in these cases.  This fixes some bugs in the
45130         previous change, and is based on suggestions by Robert Millan.
45131
45132 2003-10-29  Paul Eggert  <eggert@twinsun.com>
45133
45134         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
45135         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
45136         no longer needed.
45137         * lib/quotearg.c (quotearg_n_options): Use it.
45138         * lib/group-member.c: Include <stdbool.h>.
45139         (free_group_info): Arg is now const *; don't free arg.
45140         (get_group_info): Now returns bool and accepts struct group_info *,
45141         rather than returning a malloc'ed struct group_info *.
45142         All uses changed.  Check for overflow in internal size calculation.
45143
45144         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
45145         rather than xmalloc/xrealloc.
45146         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
45147         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
45148         conformance bug: the old code used a pointer after freeing the
45149         storage that it addressed.
45150         * lib/hash.c (hash_initialize): Simplify the code by using
45151         xalloc_oversized rather than doing it by hand.
45152         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
45153         the buffer preserved.  Use free and xmalloc instead.
45154         * lib/quotearg.c (quotearg_n_options): Likewise.
45155         Use a simpler test for size overflow.  Don't use xalloc_oversized
45156         because unsigned int might be wider than size_t (!); this suggests
45157         that we should switch from unsigned int to size_t for slot numbers.
45158
45159 2003-10-28  Paul Eggert  <eggert@twinsun.com>
45160
45161         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
45162         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
45163         NetBSD kernels.  Requested by Richard Stallman.
45164
45165 2003-10-27  Paul Eggert  <eggert@twinsun.com>
45166
45167         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
45168         to allocate the returned structure.  Do not allocate a subarray,
45169         as x2nrealloc will do that.
45170         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
45171         instead of xnrealloc.
45172         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
45173
45174 2003-10-27  Bruno Haible  <bruno@clisp.org>
45175
45176         * lib/stdbool_.h: Better support for BeOS.
45177
45178 2003-10-26  Paul Eggert  <eggert@twinsun.com>
45179
45180         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
45181         now uses inline.
45182
45183 2003-10-26  Paul Eggert  <eggert@twinsun.com>
45184
45185         * lib/xalloc.h (xalloc_oversized): New static inline function, for
45186         callers that want to do their own size-overflow checking.  Include
45187         <stdbool.h>, since xalloc_oversized returns bool.
45188         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
45189         to use xalloc_oversized.
45190
45191         Add two functions x2realloc, x2nrealloc, for programs that grow
45192         arrays dynamically by doubling their sizes.
45193         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
45194         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
45195         New functions.
45196
45197         Port to C99 semantics for 'inline' of external functions.
45198         Bug reported by Bruno Haible.
45199         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
45200         with the old contents of xnmalloc.
45201         (xnmalloc, xmalloc): Use it.
45202         (xnrealloc_inline): New static inline function,
45203         with the old contents of xnrealloc.
45204         (xnrealloc, xrealloc): Use it.
45205
45206         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
45207         that.
45208
45209 2003-10-26  Karl Berry  <karl@gnu.org>
45210
45211         * config/srclist.txt (COPYING.DOC): no longer available from
45212         /gd/gnuorg; don't know where the ultimate source is.
45213
45214 2003-10-25  Paul Eggert  <eggert@twinsun.com>
45215
45216         Fix several address-calculation bugs in the hash modules,
45217         plus some minor code cleanup.
45218
45219         * lib/hash.h: Include <stdbool.h>, for bool.
45220         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
45221         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
45222         hash_get_n_entries, hash_get_max_bucket_length,
45223         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
45224         hash_rehash): Use size_t rather than unsigned.
45225         * lib/hash.c (struct hash_table, hash_get_n_buckets,
45226         hash_get_n_buckets_used, hash_get_n_entries,
45227         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
45228         hash_get_entries, hash_do_for_each, hash_string, is_prime,
45229         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
45230         Likewise.
45231         (SIZE_MAX): Define if not defined.
45232         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
45233         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
45234         hash_print):
45235         Use const * when possible.
45236         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
45237         (check_tuning): Fix bug: if tuning parameters were very close to
45238         0 or 1, rounding errors could have caused subscript violations.
45239         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
45240         (hash_initialize): Add 'fail:' label
45241         to free table and return NULL, and use it to simplify code.
45242         Use calloc rather than clearing the storage ourself.
45243         (hash_initialize, hash_rehash): Check for arithmetic overflow in
45244         buffer size calculations.
45245         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
45246         Include <stddef.h>, for size_t.
45247         * lib/hash-pjw.c (hash_pjw): Likewise.
45248         Switch to method described by Bruno Haible.
45249         Include <limits.h>, for CHAR_BIT.
45250         (SIZE_BITS): New macro.
45251
45252 2003-10-23  Paul Eggert  <eggert@twinsun.com>
45253
45254         * m4/getline.m4 (AM_FUNC_GETLINE):
45255         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
45256         hosts.  Problem reported by Derek Robert Price in
45257         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
45258         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
45259         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
45260
45261 2003-10-21  Paul Eggert  <eggert@twinsun.com>
45262
45263         * lib/getndelim2.c (getndelim2): When size calculation overflows,
45264         ceiling the allocation at NMAX bytes rather than silently
45265         discarding input bytes before NMAX is reached.  This makes
45266         a difference only if NMAX exceeds SIZE_MAX / 2.
45267
45268         * lib/obstack.c: Merge from glibc.
45269         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
45270         Add libc_hidden_def (_obstack_newchunk).
45271         (_obstack_free) [! defined _LIBC]: Remove.
45272         [defined _LIBC]: Make a strong alias from obstack_free, rather than
45273         a clone of the function body.
45274         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
45275         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
45276
45277         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
45278         glibc.
45279         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
45280         arg to memcpy.
45281
45282         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
45283         (obstack_ptr_grow_fast, obstack_int_grow_fast):
45284         Don't use lvalue casts, as GCC plans to remove support for them
45285         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
45286         was also present in the non-GCC version, indicating that this
45287         code had always been buggy and had never been widely used.
45288         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
45289         Use the fast variant of each macro, rather than copying the
45290         definiens of the fast variant; that way, we'll be more likely to
45291         catch future bugs in the fast variants.
45292
45293 2003-10-20  Bruno Haible  <bruno@clisp.org>
45294
45295         * modules/wait-process: New file.
45296         * MODULES.html.sh (func_all_modules): Add wait-process.
45297
45298 2003-10-20  Bruno Haible  <bruno@clisp.org>
45299
45300         * m4/wait-process.m4: New file.
45301
45302 2003-10-20  Bruno Haible  <bruno@clisp.org>
45303
45304         * lib/wait-process.h: New file, from GNU gettext.
45305         * lib/wait-process.c: New file, from GNU gettext.
45306
45307 2003-10-19  Jim Meyering  <jim@meyering.net>
45308
45309         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
45310         HPUX 10.20.
45311
45312 2003-10-18  Karl Berry  <karl@gnu.org>
45313
45314         * config/config.guess: update from config.
45315
45316 2003-10-16  Paul Eggert  <eggert@twinsun.com>
45317
45318         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
45319         (getgroups): First arg is int, not size_t.
45320         Don't let 'free' mangle errno.
45321
45322 2003-10-16  Paul Eggert  <eggert@twinsun.com>
45323
45324         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
45325
45326 2003-10-16  Karl Berry  <karl@gnu.org>
45327
45328         * config/config.{guess,sub}: update from config.
45329
45330 2003-10-16  Jim Meyering  <jim@meyering.net>
45331
45332         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
45333         memcpy.
45334
45335 2003-10-15  Paul Eggert  <eggert@twinsun.com>
45336
45337         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
45338         (SIZE_MAX): Remove.
45339         (new_exclude, add_exclude_file): Initial size no longer needs to
45340         be a power of 2.
45341         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
45342         our own address arithmetic overflow checking.
45343
45344         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
45345         (fnmatch): Do not alloca more than 2000 wide characters;
45346         instead, use malloc for large buffers.
45347         Check for address arithmetic overflow, and return -1
45348         with errno set to ENOMEM in that case.
45349         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
45350         (NEW_PATTERN): Do not alloca more than 8000 bytes;
45351         instead, return -1.  Check for address arithmetic overflow.
45352
45353 2003-10-14  Paul Eggert  <eggert@twinsun.com>
45354
45355         Handle invalid suffixes and overflow independently, so that
45356         callers can treat them independently as needed.  Fix some bugs in
45357         suffix handling, e.g., "100k@" was not diagnosed as an invalid
45358         suffix for a human-readable blocksize.  The major caller-visible
45359         change is the addition of a new
45360         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
45361         that both overflow and suffix chars were found.
45362
45363         * lib/human.c (humblock): Don't check separately for invalid suffix
45364         char; that is xstrtoumax's job (now that its bug is fixed).
45365         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
45366         INTMAX_MAX]: New macros.
45367         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
45368         TYPE_MAXIMUM): New macros.
45369         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
45370         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
45371         if overflow occurs, as it's what __strtol does and it's more useful
45372         in practice.
45373         (__xstrtol): If __strtol reports some error other than ERANGE,
45374         reflect it to the caller as LONGINT_INVALID.  If it reports
45375         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
45376         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
45377         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
45378         value.
45379         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
45380         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
45381         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
45382         [defined UINTMAX_MAX]: New macros.
45383
45384 2003-10-14  Bruno Haible  <bruno@clisp.org>
45385
45386         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
45387
45388 2003-10-14  Bruno Haible  <bruno@clisp.org>
45389
45390         * m4/sig_atomic_t: New file, from GNU gettext.
45391         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
45392
45393 2003-10-14  Bruno Haible  <bruno@clisp.org>
45394
45395         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
45396         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
45397         Also use volatile where needed.
45398
45399 2003-10-12  Paul Eggert  <eggert@twinsun.com>
45400
45401         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
45402         Change maintainer from Bruno Haible to 'all'.
45403
45404 2003-10-12  Paul Eggert  <eggert@twinsun.com>
45405
45406         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
45407
45408 2003-10-12  Paul Eggert  <eggert@twinsun.com>
45409
45410         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
45411         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
45412         and define in terms of the other primitives.
45413         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
45414         (SIZE_MAX): Define if not already defined.
45415         (array_size_overflow): New function.
45416         (xalloc_die): Abort instead of exiting if 'error' returns.
45417         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
45418         (xmalloc, xrealloc): Use them.
45419         (xcalloc): Check for address arithmetic overflow.
45420         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
45421         a bit faster than strcpy.
45422
45423 2003-10-10  Simon Josefsson  <jas@extundo.com>
45424
45425         * modules/argp (Depends-on): Add restrict and strcase.
45426
45427 2003-10-10  Simon Josefsson  <jas@extundo.com>
45428
45429         * m4/argp.m4: Add AC_C_INLINE.
45430
45431 2003-10-08  Paul Eggert  <eggert@twinsun.com>
45432
45433         Merge getpass from libc, plus a few fixes.
45434
45435         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
45436         Include <stdbool.h>.
45437         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
45438         __fsetlocking to empty.
45439         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
45440         do include <bits/libc-lock.h>.
45441         Do not include <fcntl.h>; not needed.
45442         [_LIBC]: Include <wchar.h>.
45443         (NOTCANCEL_MODE): New macro.
45444         (flockfile, funlockfile) [_LIBC]: New macros.
45445         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
45446         [!_LIBC]: New macros.
45447         (call_fclose): New function.
45448         (getpass): Use it.  Save tty stream separately; this simplifies the
45449         code and makes it more reliable if stdin happens to equal stdout.
45450         Invoke __fsetlocking on tty.
45451         Handle thread cancellation if needed.
45452         Namespace cleanup (use __tcgetattr, __getline).
45453         Use bool for Booleans.
45454         [USE_IN_LIBIO]: Handle wide streams.
45455         [!_LIBC]: Unconditionally do the fseek, since we don't know what
45456         stream might go where.
45457
45458         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
45459         doesn't have to include <stdio.h> before us.
45460         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
45461         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
45462         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
45463         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
45464         if not declared, so that we can use getpass.c code from libc without
45465         rewriting it.
45466         (flockfile, ftrylockfile, funlockfile): New macros.
45467
45468 2003-10-08  Paul Eggert  <eggert@twinsun.com>
45469
45470         * modules/getpass: Depend on stdbool.
45471
45472 2003-10-08  Paul Eggert  <eggert@twinsun.com>
45473
45474         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
45475
45476 2003-10-07  Karl Berry  <karl@gnu.org>
45477
45478         * config/config.{guess,sub}: update from config.
45479
45480 2003-10-06  Jim Meyering  <jim@meyering.net>
45481             Bruno Haible  <bruno@clisp.org>
45482
45483         This lets translators provide better translations for the
45484         "Written by ..." part of --version output.
45485         * lib/version-etc.h: Include stdarg.h.
45486         (version_etc_copyright): Declare as readonly.
45487         (version_etc): Make this function variadic with a NULL-terminated list
45488         of author name strings.
45489         (version_etc_va): New declaration.
45490         * lib/version-etc.c: Include stdarg.h, stdlib.h.
45491         (version_etc_copyright): Declare as readonly.
45492         (version_etc_va): New function. Provide a different translatable string
45493         for each possible number of authors < 10. Abbreviate when there are 10
45494         authors or more.
45495         (version_etc): Make this function variadic. Call version_etc_va.
45496         Suggestion from Gary V. Vaughan.
45497
45498         * lib/long-options.h (parse_long_options): Change prototype: the
45499         authors string is moved to the end and becomes variadic.
45500         * lib/long-options.c: Include stdarg.h.
45501         (parse_long_options): Make this function variadic, too.
45502         Call version_etc_va, not version_etc.
45503
45504 2003-10-06  Bruno Haible  <bruno@clisp.org>
45505
45506         * modules/version-etc-2: Remove file.
45507         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
45508
45509 2003-10-06  Bruno Haible  <bruno@clisp.org>
45510
45511         * modules/fatal-signal: New file.
45512         * MODULES.html.sh (func_all_modules): Add fatal-signal.
45513
45514 2003-10-06  Bruno Haible  <bruno@clisp.org>
45515
45516         * m4/fatal-signal.m4: New file.
45517         * m4/signalblocking.m4: New file, from GNU gettext.
45518
45519 2003-10-06  Bruno Haible  <bruno@clisp.org>
45520
45521         * lib/version-etc-2.h: Remove file.
45522         * lib/version-etc-2.c: Remove file.
45523
45524 2003-10-06  Bruno Haible  <bruno@clisp.org>
45525
45526         * lib/fatal-signal.h: New file, from GNU gettext.
45527         * lib/fatal-signal.c: New file, from GNU gettext.
45528
45529 2003-10-05  Paul Eggert  <eggert@twinsun.com>
45530
45531         * README: Rework advice for preventing empty .o files.
45532         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
45533         not <sys/types.h>.
45534
45535 2003-10-04  Karl Berry  <karl@gnu.org>
45536
45537         * lib/argp*: update from libc.
45538
45539 2003-10-04  Karl Berry  <karl@gnu.org>
45540
45541         * config/config.{guess,sub}: update from config.
45542
45543 2003-10-02  Bruno Haible  <bruno@clisp.org>
45544
45545         * modules/lchown (Include): Add lchown.h.
45546         * modules/time_r (Include): Use "..." syntax.
45547         * modules/xgetdomainname (Include): Add xgetdomainname.h.
45548
45549 2003-10-01  Simon Josefsson  <jas@extundo.com>
45550
45551         * MODULES.html.sh (func_all_modules): Move gethostname from section
45552         'based on' to section 'lacking' POSIX:2001.
45553
45554 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
45555
45556         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
45557         to output mode on the same stream.
45558
45559 2003-09-29  Paul Eggert  <eggert@twinsun.com>
45560
45561         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
45562         Fix arg typo in previous patch.
45563
45564 2003-09-28  Jim Meyering  <jim@meyering.net>
45565
45566         * lib/error.c: Correct cpp indentation.
45567
45568 2003-09-27  Paul Eggert  <eggert@twinsun.com>
45569
45570         * modules/free: New file.
45571
45572 2003-09-27  Paul Eggert  <eggert@twinsun.com>
45573
45574         * m4/free.m4: New file.
45575
45576 2003-09-27  Paul Eggert  <eggert@twinsun.com>
45577
45578         * lib/minmax.h (MIN, MAX)
45579         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
45580         Omit the special code that used __typeof__, since we worry that
45581         it could be more trouble than it's worth.  See:
45582         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
45583         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
45584
45585         * lib/free.c: New file.
45586
45587 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
45588
45589         Trivial fixes to Makefile.am parts of module listings.
45590         * modules/strstr: Append strstr.h to lib_SOURCES.
45591         * modules/strcase: Likewise, for strcase.h.
45592
45593 2003-09-27  Karl Berry  <karl@gnu.org>
45594
45595         * config/mkinstalldirs: update from automake.
45596
45597 2003-09-26  Paul Eggert  <eggert@twinsun.com>
45598
45599         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
45600         (error_tail): Do not loop, reallocating temporary buffer, since
45601         the output cannot contain more wide characters than the input
45602         contains bytes, the size must be big enough already.  This avoids
45603         one potential size overflow calculation.  Check for size overflow
45604         when calculating temporary buffer size.  Free temporary buffer
45605         when done, if it was allocated with malloc; this plugs a memory
45606         leak.  Remove casts from void * to pointers, that are no longer
45607         needed now that we're assuming C89 or better.
45608
45609         Merge error changes from glibc.
45610
45611         * lib/error.c, error.h: Update copyright notice header to match glibc.
45612         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
45613         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
45614         Disable cancellation while printing error.
45615         * lib/error.h: Prepend __ to parameter names.
45616
45617 2003-09-26  Jim Meyering  <jim@meyering.net>
45618
45619         * lib/error.c (error_tail): Move some declarations
45620         into inner scope where the local variables are used.
45621
45622 2003-09-26  Bruno Haible  <bruno@clisp.org>
45623
45624         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
45625         stpncpy().
45626         Don't define stpncpy through config.h; it's now done through stpncpy.h.
45627
45628 2003-09-26  Bruno Haible  <bruno@clisp.org>
45629
45630         * lib/stpncpy.h (gnu_stpncpy): New declaration.
45631         (stpncpy): Define as alias for gnu_stpncpy.
45632         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
45633
45634 2003-09-25  Simon Josefsson  <jas@extundo.com>
45635
45636         * lib/xgetdomainname.h: New file.
45637         * lib/xgetdomainname.c: New file.
45638
45639 2003-09-25  Simon Josefsson  <jas@extundo.com>
45640             Bruno Haible  <bruno@clisp.org>
45641
45642         * modules/getdomainname: New file.
45643         * modules/xgetdomainname: New file.
45644         * MODULES.html.sh (func_all_modules): Add getdomainname,
45645         xgetdomainname.
45646
45647 2003-09-25  Simon Josefsson  <jas@extundo.com>
45648             Bruno Haible  <bruno@clisp.org>
45649
45650         * m4/getdomainname.m4: New file.
45651
45652 2003-09-25  Simon Josefsson  <jas@extundo.com>
45653             Bruno Haible  <bruno@clisp.org>
45654
45655         * lib/getdomainname.h: New file.
45656         * lib/getdomainname.c: New file.
45657
45658 2003-09-25  Karl Berry  <karl@gnu.org>
45659
45660         * lib/argp-fmtstream.c, argp-help.c: update from libc.
45661
45662 2003-09-25  Karl Berry  <karl@gnu.org>
45663
45664         * config/install-sh: update from automake.
45665
45666 2003-09-25  Bruno Haible  <bruno@clisp.org>
45667
45668         * modules/version-etc-2: New file, from modules/version-etc with
45669         modifications.
45670         * MODULES.html.sh (func_all_modules): Add version-etc-2.
45671
45672 2003-09-25  Bruno Haible  <bruno@clisp.org>
45673
45674         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
45675         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
45676
45677 2003-09-24  Simon Josefsson  <jas@extundo.com>
45678
45679         * modules/xgethostname: Add xgethostname.h.
45680
45681 2003-09-24  Paul Eggert  <eggert@twinsun.com>
45682
45683         * lib/linebuffer.c (freebuffer): Don't free the argument, just
45684         the buffer associated with the argument.  Bug reported by
45685         Simon Josefsson.
45686
45687 2003-09-24  Paul Eggert  <eggert@twinsun.com>
45688
45689         * README: Document assumptions that 'int' is at least 32 bits
45690         wide, that integer arithmetic is 2's complement without overflow,
45691         that there are no holes in integer values, that adding sizes of
45692         two nonoverlapping objects can't overflow, and that all-bits-zero
45693         yields scalar zero.  Fix spelling and capitalization typos.
45694
45695 2003-09-19  Karl Berry  <karl@gnu.org>
45696
45697         * lib/argp.h: update from libc.
45698
45699 2003-09-17  Paul Eggert  <eggert@twinsun.com>
45700
45701         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
45702         to avoid spurious warnings like "AC_RUN_IFELSE was called before
45703         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
45704
45705 2003-09-17  Paul Eggert  <eggert@twinsun.com>
45706
45707         * gnulib-tool: Use "test -h", not "test -L", for portability
45708         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
45709         (tags_regexp): Remove, since \| doesn't conform to POSIX.
45710         (sed_extract_prog): Issue s commands one-by-one, rather than
45711         using \| in one s command.
45712
45713 2003-09-16  Paul Eggert  <eggert@twinsun.com>
45714
45715         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
45716         input error, instead of returning NULL the next time we are called
45717         (and therefore losing track of errno).
45718
45719 2003-09-16  Bruno Haible  <bruno@clisp.org>
45720
45721         * gnulib-tool (func_create_testdir): Warn about duplicated
45722         dependencies.
45723
45724 2003-09-15  Paul Eggert  <eggert@twinsun.com>
45725
45726         * modules/argmatch, modules/fatal, modules/obstack,
45727         modules/xalloc, modules/xgethostname: Sort dependencies by
45728         importance, not alphabetically.
45729
45730 2003-09-15  Paul Eggert  <eggert@twinsun.com>
45731
45732         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
45733         fails, so that the caller gets the proper errno.
45734
45735         * lib/readutmp.c (read_utmp): Likewise.
45736         Check for fstat error.  Close stream and free storage
45737         when failing.
45738
45739 2003-09-14  Karl Berry  <karl@gnu.org>
45740
45741         * config/srclist.txt (strdup.c): disable for c89 changes.
45742
45743 2003-09-14  Jim Meyering  <jim@meyering.net>
45744
45745         * lib/getloadavg.c: Correct cpp indentation.
45746         * lib/strdup.c: Likewise.
45747         * lib/vasnprintf.c: Likewise.
45748
45749 2003-09-14  Bruno Haible  <bruno@clisp.org>
45750
45751         * modules/fwriteerror: New file.
45752         * MODULES.html.sh (func_all_modules): Add fwriteerror.
45753
45754 2003-09-14  Bruno Haible  <bruno@clisp.org>
45755
45756         * lib/fwriteerror.h: New file.
45757         * lib/fwriteerror.c: New file.
45758
45759 2003-09-12  Paul Eggert  <eggert@twinsun.com>
45760
45761         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
45762         modules/xgethostname, modules/xalloc: Depend on exit.
45763
45764 2003-09-12  Paul Eggert  <eggert@twinsun.com>
45765
45766         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
45767
45768         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
45769         and AC_MINIX, too, so that their extensions are available.
45770
45771         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
45772         This macro has been superseded by gl_BACKUPFILE.
45773
45774         More patches to assume C89 or better.
45775
45776         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
45777
45778         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
45779         unconditionally.
45780         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
45781         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
45782         Include <string.h>, <stdlib.h> unconditionally.
45783         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
45784         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
45785         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
45786         headers or for string.h.
45787         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
45788         or strtoul.
45789
45790         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
45791         headers.
45792         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
45793         * m4/userspec.m4 (gl_USERSPEC): Likewise.
45794         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
45795         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
45796         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
45797         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
45798         memcpy, memset.
45799         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
45800         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
45801         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
45802         strtol.
45803         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
45804         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
45805         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
45806         strtoul.
45807
45808 2003-09-12  Paul Eggert  <eggert@twinsun.com>
45809
45810         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
45811         * lib/obstack.c [!defined _LIBC]: Likewise.
45812         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
45813         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
45814         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
45815
45816         More changes to assume C89 or better.
45817
45818         * lib/error.c (error_tail): Assume vprintf.
45819
45820         * lib/argmatch.c (getenv): Remove decl.
45821         * lib/progreloc.c (get_full_program_name): Define via prototype.
45822         * lib/setenv.c (clearenv): Likewise.
45823         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
45824         needed.
45825         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
45826         (malloc, memcpy): Remove decls.
45827         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
45828         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
45829         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
45830         (memcpy): Remove macro.
45831         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
45832         (__P): Remove.  All uses removed.
45833         (PTR): Remove.  All uses changed to void *.
45834         (CHAR_BIT, NULL): Remove.
45835         (spaces, zeros, memset_space, memset_zero)
45836         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
45837         Remove.
45838         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
45839         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
45840         Define with prototype.
45841         Remove now-unnecessary prototype decl.
45842         (extra_args_spec): Assume ANSI C.  All uses changed.
45843         (extra_args_spec_iso): Remove.
45844         (my_strftime, emacs_strftimeu): Define via prototype.
45845         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
45846         unconditionally.
45847         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
45848         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
45849         (strtoul, strtol): Remove decls.
45850         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
45851         LONG_MAX): Remove.
45852         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
45853         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
45854         (LOCALE_PARAM_PROTO): New macro.
45855         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
45856         (INTERNAL (strtol), strtol): Define with a prototype.
45857         (PARAMS): Remove.  All uses removed.
45858         * lib/tempname.c: Include <string.h> unconditionally.
45859         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
45860         * lib/xgethostname.c (main): Define with a prototype.
45861         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
45862         Include <stdlib.h> unconditionally.
45863         (calloc, malloc, realloc, free): Remove decls.
45864         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
45865         Include <stdlib.h> unconditionally.  Sort include file names.
45866         (strtod): Remove.
45867         (xstrtod): Define with a prototype.
45868         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
45869         (strtol, strtoul): Remove decls.
45870
45871 2003-09-11  Paul Eggert  <eggert@twinsun.com>
45872
45873         More patches to assume C89 or better.
45874         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
45875         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
45876         string.h, memchr, STDC_HEADERS.
45877
45878 2003-09-11  Paul Eggert  <eggert@twinsun.com>
45879
45880         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
45881         Include <stdlib.h>, <string.h> unconditionally.
45882         Remove now-unnecessary cast to char *.
45883         * lib/strnlen.c: Include <string.h> unconditionally.
45884         * lib/yesno.c (yesno): Define with a prototype.
45885
45886 2003-09-11  Bruno Haible  <bruno@clisp.org>
45887
45888         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
45889
45890 2003-09-10  Jim Meyering  <jim@meyering.net>
45891
45892         * lib/error.c: Correct indentation of cpp directives.
45893
45894 2003-09-10  Bruno Haible  <bruno@clisp.org>
45895
45896         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
45897         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
45898         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
45899         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
45900         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
45901         <stdlib.h> and <string.h> checks.
45902         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
45903         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
45904
45905 2003-09-10  Bruno Haible  <bruno@clisp.org>
45906
45907         * lib/strcspn.c: Include <string.h> unconditionally.
45908         * lib/strpbrk.c: Include <string.h> unconditionally.
45909         * lib/strstr.c: Include <string.h> unconditionally.
45910         * lib/unicodeio.c: Include <string.h> unconditionally.
45911         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
45912         * lib/unsetenv.c: Likewise.
45913         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
45914         * lib/yesno.c: Include <stdlib.h> unconditionally.
45915         (rpmatch): Add prototype.
45916
45917 2003-09-09  Paul Eggert  <eggert@twinsun.com>
45918
45919         More patches to assume C89 or better.
45920         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
45921         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
45922         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
45923         or for string.h.
45924         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
45925         stdlib.h.
45926         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
45927         C headers.
45928         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
45929         string.h.
45930         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
45931         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
45932         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
45933         or for string.h.
45934         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
45935         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
45936         C headers.
45937         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
45938         memcpy.
45939         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
45940         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
45941         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
45942         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
45943         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
45944         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
45945         string.h, free.
45946         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
45947         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
45948         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
45949         C headers, or for string.h.
45950         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
45951         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
45952         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
45953         headers, memory.h, stdlib.h, string.h, strings.h.
45954         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
45955         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
45956         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
45957         strchr.
45958         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
45959         headers, memory.h, string.h.
45960         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
45961         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
45962         free.
45963         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
45964         headers.
45965         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
45966         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
45967         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
45968         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
45969         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
45970
45971 2003-09-09  Paul Eggert  <eggert@twinsun.com>
45972
45973         More K&R removal.
45974
45975         * lib/acosl.c (main): Use a prototype.
45976         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
45977         tanl.c: Likewise.
45978
45979         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
45980
45981         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
45982         (getopt, etopt_long, getopt_long_only, _getopt_internal)
45983         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
45984         with a prototype.
45985         * lib/getopt.c (const): Remove macro.
45986         Include <string.h> unconditionally.
45987         (my_index): Remove; all uses changed to strchr.
45988         (strlen): Remove decl.
45989         (exchange): Remove forward decl; no longer needed.
45990         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
45991         Define with prototype.
45992         * lib/getopt1.c (const): Remove macro.
45993         (getopt_long, getopt_long_only, main): Define with prototype.
45994
45995         * lib/getugroups.c: Include <string.h> unconditionally.
45996
45997         * lib/getusershell.c: Include <stdlib.h> unconditionally.
45998         (getusershell, setusershell, endusershell, readname, main):
45999         Define with prototypes.
46000
46001         * lib/group-member.c: Include group-member.h first.
46002         Include <stdlib.h> unconditionally.
46003
46004         * lib/hard-locale.c: Include hard-locale.h first.
46005         Include <stdlib.h>, <string.h> unconditionally.
46006
46007         * lib/hash.c (free, malloc): Remove decls.
46008         Include <stdlib.h> unconditionally.
46009
46010         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
46011         (getenv): Do not declare.
46012
46013         * lib/idcache.c: Include <string.h> unconditionally.
46014
46015         * lib/long-options.c: Include long-options.h first, to test interface.
46016         Include <stdlib.h> unconditionally.
46017
46018         * lib/makepath.c: Include makepath.h first, to test interface.
46019         Include <stdlib.h> and <string.h> unconditionally.
46020
46021         * lib/linebuffer.c: Include <stdlib.h>.
46022         (free): Remove decl.
46023
46024         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
46025         stddef.h. rpl_malloc returns void *, not char *.
46026         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
46027         prototype.
46028
46029         * lib/md5.h: Include <limits.h> unconditionally.
46030         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
46031         (__P): Remove; all uses removed.
46032         * lib/md5.c: Include "md5.h" first.
46033         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
46034         md5_buffer, md5_process_bytes, md5_process_block):
46035         Define with prototypes.
46036         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
46037         * lib/sha.c: Include "sha.h" first.
46038         Include <stdlib.h>, <string.h> unconditionally.
46039
46040         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
46041         * lib/memcmp.c (__ptr_t): Likewise.
46042         * lib/memrchr.c (__ptr_t): Likewise.
46043         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
46044         Include <string.h> unconditionally.
46045         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
46046         * lib/memchr.c: Include <stdlib.h> unconditionally.
46047         * lib/memchr.c (LONG_MAX): Remove.
46048         * lib/memrchr.c (LONG_MAX): Likewise.
46049         * lib/memchr.c (__memchr): Define via a prototype.
46050         * lib/memrchr.c (__memrchr): Likewise.
46051         * lib/memcmp.c (__P): Remove, and remove all uses.
46052         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
46053         Remove forward decls; no longer needed.
46054         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
46055         Use types required by C89 in prototype.
46056
46057         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
46058         * lib/savedir.c: Likewise.
46059         * lib/mkdir.c (free): Remove decl.
46060         * lib/rmdir.c (rmdir): Define with a prototype.
46061         * lib/savedir.c: Include savedir.h first, to test interface.
46062
46063         * lib/mktime.c (STDC_HEADERS): Remove.
46064         Include <stdlib.h>, <string.h> unconditionally.
46065
46066         * lib/modechange.c: Include <stdlib.h> unconditionally.
46067         (malloc): Remove decl.
46068
46069         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
46070         (free): Remove decl.
46071
46072         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
46073         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
46074         (This type really should be intptr_t, but that's a C99ism.)
46075         (_obstack_memcpy): Remove: all uses changed to memcpy.
46076         Include <string.h> unconditionally.
46077         (struct obstack): Assume __STDC__ for types of members
46078         chunkfun, freefun, extra_arg.
46079         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
46080         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
46081         obstack_begin, obstack_specify_allocation,
46082         obstack_specify_allocation_with_arg, obstack_chunkfun,
46083         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
46084         Remove unprototyped decls and the macros that use them.
46085         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
46086         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
46087         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
46088         (defined __STDC__ && __STDC__)]:
46089         Remove nonprototyped code.
46090         Include <stdlib.h> unconditionally.
46091         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
46092         _obstack_allocated_p, _obstack_free, obstack_free,
46093         _obstack_memory_used, print_and_abort):
46094         Define using prototypes.
46095         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
46096         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
46097         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
46098         obstack_next_free, obstack_object_size, obstack_room) [0]:
46099         Remove unused, unprototyped code.
46100
46101         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
46102
46103         * lib/physmem.c (physmem_total, physmem_available, main): Define
46104         with prototypes.
46105
46106         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
46107         (main): Define with a prototype.
46108
46109         * lib/posixver.c (getenv): Remove decl.
46110
46111         * lib/putenv.c (malloc): Returns void *, not char *.
46112         Include <string.h> unconditionally.
46113         (strchr, memcpy, NULL): Do not define.
46114
46115         * lib/readtokens.c: Include readtokens.h first, to test interface.
46116         Include <stdlib.h>, <string.h> unconditionally.
46117         (init_tokenbuffer): Define with a prototype.
46118
46119         * lib/regex.c (PARAMS): Remove.  All uses removed.
46120         All uses of _RE_ARGS removed, too.
46121         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
46122         unconditionally.
46123         (bzero): Assume memset exists.
46124         (memcmp, memcpy, NULL): Remove.
46125         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
46126         char, or assignments to local vars of type signed char.
46127         (init_syntax_once, PREFIX(extract_number_and_incr),
46128         PREFIX(print_partial_compiled_pattern),
46129         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
46130         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
46131         PREFIX(regex_grow_registers), PREFIX(regex_compile),
46132         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
46133         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
46134         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
46135         wcs_compile_range, byte_compile_range, truncate_wchar,
46136         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
46137         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
46138         count_mbs_length, wcs_re_match_2_internal,
46139         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
46140         PREFIX(alt_match_null_string_p),
46141         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
46142         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
46143         regfree, PREFIX(extract_number)): Define with prototype.  Remove
46144         now-unnecessary declaration, if any.
46145         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
46146         regcomp, regexec):
46147         Remove now-unnecessary casts among pointer types.
46148         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
46149
46150         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
46151         (free): Remove decl.
46152
46153         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
46154
46155         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
46156         (free): Remove decl.
46157
46158         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
46159         * lib/xgetcwd.c: Likewise.
46160
46161         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
46162         (free): Remove decl.
46163
46164         * lib/strchrnul.c (strchrnul): Define with a prototype.
46165         Fix bug: c_in was not converted to char before searching.
46166
46167         The following changes are not K&R related:
46168
46169         * lib/group-member.h: Include <sys/types.h>, so that this file is
46170         self-contained.
46171         * lib/makepath.h: Likewise.
46172
46173         * lib/getusershell.c (readname, default_index, line_size, readname):
46174         Use size_t, not int, for sizes.
46175         (readname): If the size overflows, report an error instead of
46176         looping forever.
46177
46178 2003-09-09  Paul Eggert  <eggert@twinsun.com>
46179
46180         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
46181         libc.
46182
46183 2003-09-09  Paul Eggert  <eggert@twinsun.com>
46184
46185         * README: New section: portability guidelines.
46186
46187 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
46188
46189         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
46190         C89 spec.
46191
46192 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
46193
46194         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
46195
46196 2003-09-08  Paul Eggert  <eggert@twinsun.com>
46197
46198         Assume C89 or better; remove K&R cruft.
46199         A few of these changes were first proposed by Derek Robert Price
46200         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
46201
46202         * lib/addext.c: Include <string.h> unconditionally.
46203         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
46204         Don't declare getenv or malloc.
46205
46206         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
46207         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
46208         (NULL): Remove.
46209         (find_stack_direction, alloca): Use prototypes.
46210
46211         * lib/atexit.c (atexit): Define using a prototype.
46212
46213         * lib/basename.c, dirname.c, stripslash.c:
46214         Include <string.h> unconditionally.
46215
46216         * lib/bcopy.c: Include <stddef.h>.
46217         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
46218
46219         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
46220
46221         * lib/error.h (error, error_at_line, error_print_progname)
46222         [! (defined (__STDC__) && __STDC__)]: Remove decls.
46223         * lib/error.c: Include error.h first, to check interface.
46224         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
46225         (VA_START): Remove; all uses changeed to va_start.
46226         (exit, strerror): Remove decls.
46227         (error_print_progname): Prototype uncondionally.
46228         Don't include <errno.h>; no longer needed.
46229         (private_strerror): Remove.
46230         (error_tail): Always define.
46231         (error, error_at_line): Assume C89 or better; always use prototypes.
46232         * lib/fatal.c: Include "fatal.h" first, to test interface.
46233         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
46234         (VA_START): Remove; all uses changed to va_start.
46235         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
46236         this case.
46237         (exit): Remove decl.
46238         (fatal): Prototype unconditionally.  Assume va_start works.
46239         Abort at end, to pacify gcc.
46240
46241         * lib/euidaccess.c (main): Define with a prototype.
46242
46243         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
46244
46245         * lib/exitfail.c: Include <stdlib.h> unconditionally.
46246
46247         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
46248         prototypes.
46249         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
46250         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
46251         (getenv): Remove decl.
46252         (fnmatch): Define using a prototype.
46253         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
46254         (FCT): Define using a prototype.
46255
46256         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
46257
46258         * lib/gethostname.c: Include <stddef.h>.
46259         (gethostname): Define with prototype.  Length is size_t, not int.
46260
46261 2003-09-08  Paul Eggert  <eggert@twinsun.com>
46262
46263         Assume C89 or better; remove K&R cruft.
46264         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
46265         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
46266         string.h, getenv, malloc.
46267         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
46268         headers.
46269         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
46270         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
46271         do not check for strerror.
46272         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
46273         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
46274         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
46275         do not check for doprnt or vprintf.
46276         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
46277         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
46278
46279 2003-09-08  Paul Eggert  <eggert@twinsun.com>
46280
46281         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
46282         getversion.c should have been removed then, but was accidentally
46283         preserved.
46284
46285         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
46286         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
46287
46288 2003-09-08  Karl Berry  <karl@gnu.org>
46289
46290         * config/config.sub, config.guess, srclistvars.sh: update from savannah
46291                 config, forget about prep.
46292
46293         * config/depcomp, missing: update from automake.
46294
46295 2003-09-07  Paul Eggert  <eggert@twinsun.com>
46296
46297         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
46298         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
46299
46300 2003-09-07  Paul Eggert  <eggert@twinsun.com>
46301
46302         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
46303         copy_tm_result.  Bug reported by Simon Josefsson in
46304         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
46305
46306 2003-09-06  Paul Eggert  <eggert@twinsun.com>
46307
46308         * m4/time_r.m4: New file.
46309         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
46310         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
46311         is. Check for timegm declaration.
46312         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
46313         Do not check for gmtime_r.
46314         Replace mktime if __mktime_internal does not exist and if mktime
46315         hasn't been replaced already.
46316
46317 2003-09-06  Paul Eggert  <eggert@twinsun.com>
46318
46319         * lib/time_r.c, lib/time_r.h: New files.
46320
46321         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
46322         __localtime_r.
46323         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
46324         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
46325
46326         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
46327         __gmtime_r.
46328         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
46329         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
46330         Include <time_r.h>.
46331
46332         * lib/timegm.c: Switch to glibc implementation, with the following
46333         changes:
46334         [defined HAVE_CONFIG_H]: Include <config.h>.
46335         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
46336         (__mktime_internal) [!defined _LIBC]: New decl.
46337         (__gmtime_r) [!defined _LIBC]: New macro and function.
46338         (timegm): Use a prototype, since gnulib assumes C89.
46339         Do not bother declaring tmp to be const, as it's not really usefu.
46340         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
46341         (timegm): Declare only if HAVE_DECL_TIMEGM.
46342
46343 2003-09-06  Paul Eggert  <eggert@twinsun.com>
46344
46345         * MODULES.html.sh (func_all_modules): Add time_r.
46346         * modules/time_r: New file.
46347         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
46348         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
46349
46350 2003-09-03  Paul Eggert  <eggert@twinsun.com>
46351
46352         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
46353         Bug reported by Lute Kamstra in
46354         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
46355
46356         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
46357         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
46358         course with correspondingly smaller numbers for tomorrow and
46359         yesterday.  From Tadayoshi Funaba.  Originally installed into
46360         sh-utils on 1999-08-07, but the patch got lost (I guess during the
46361         coreutils merge?).
46362
46363 2003-08-31  Simon Josefsson  <jas@extundo.com>
46364
46365         * modules/timegm: New file.
46366         * MODULES.html.sh (func_all_modules): Add timegm.
46367
46368 2003-08-31  Simon Josefsson  <jas@extundo.com>
46369
46370         * m4/timegm.m4: New file.
46371
46372 2003-08-31  Simon Josefsson  <jas@extundo.com>
46373
46374         * lib/timegm.h: New file.
46375         * lib/timegm.c: New file.  Based on
46376         wget-1.8.2/src/http.c:mktime_from_utc.
46377
46378 2003-08-31  Karl Berry  <karl@gnu.org>
46379
46380         * lib/argp.h: update from libc.
46381
46382 2003-08-28  Bruno Haible  <bruno@clisp.org>
46383
46384         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
46385         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
46386         followed by '#define fnmatch fnmatch_posix' gives an error.
46387
46388 2003-08-28  Bruno Haible  <bruno@clisp.org>
46389
46390         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
46391         warning on QNX, which defines O_BINARY to 000000.
46392
46393 2003-08-27  Jim Meyering  <jim@meyering.net>
46394
46395         * m4/mkstemp.m4: Require that the system mkstemp be able to create
46396         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
46397         would fail after 32.  Reported by Danny Levinson.  Details here:
46398         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
46399
46400 2003-08-24  Bruno Haible  <bruno@clisp.org>
46401
46402         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
46403         MSVC7 <stdio.h> is included later.
46404
46405 2003-08-22  Simon Josefsson  <jas@extundo.com>
46406
46407         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
46408
46409 2003-08-20  Karl Berry  <karl@gnu.org>
46410
46411         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
46412
46413 2003-08-20  Bruno Haible  <bruno@clisp.org>
46414
46415         * modules/progname: New file.
46416         * MODULES.html.sh (func_all_modules): Add progname.
46417
46418 2003-08-20  Bruno Haible  <bruno@clisp.org>
46419
46420         * lib/progname.h: New file, from GNU gettext.
46421         * lib/progname.c: New file, from GNU gettext.
46422         * lib/progreloc.c: New file, from GNU gettext.
46423
46424 2003-08-19  Jim Meyering  <jim@meyering.net>
46425
46426         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
46427         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
46428
46429 2003-08-19  Bruno Haible  <bruno@clisp.org>
46430
46431         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
46432         more.
46433
46434 2003-08-19  Bruno Haible  <bruno@clisp.org>
46435
46436         * lib/xstrdup.c: Assume <string.h> exists.
46437
46438 2003-08-18  Paul Eggert  <eggert@twinsun.com>
46439
46440         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
46441         in makefile rules.
46442
46443 2003-08-18  Jim Meyering  <jim@meyering.net>
46444
46445         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
46446         * m4/lib-ld.m4: Likewise.
46447
46448 2003-08-18  Jim Meyering  <jim@meyering.net>
46449
46450         * lib/setenv.h: Indent nested cpp directive.
46451         * lib/vasnprintf.c: Remove trailing blanks.
46452
46453 2003-08-17  Simon Josefsson  <jas@extundo.com>
46454
46455         * modules/xstrndup: New file.
46456         * MODULES.html.sh (func_all_modules): Add xstrndup.
46457
46458 2003-08-17  Simon Josefsson  <jas@extundo.com>
46459
46460         * modules/argp: Fix autoconf macro name. Add more dependencies.
46461
46462 2003-08-17  Simon Josefsson  <jas@extundo.com>
46463
46464         * m4/xstrndup.m4: New file.
46465
46466 2003-08-17  Simon Josefsson  <jas@extundo.com>
46467
46468         * m4/argp.m4: New file.
46469
46470 2003-08-17  Simon Josefsson  <jas@extundo.com>
46471             Bruno Haible  <bruno@clisp.org>
46472
46473         * lib/xstrndup.h: New file.
46474         * lib/xstrndup.c: New file.
46475
46476 2003-08-17  Bruno Haible  <bruno@clisp.org>
46477
46478         * modules/strndup (Files, Include): Add lib/strndup.h.
46479
46480 2003-08-17  Bruno Haible  <bruno@clisp.org>
46481
46482         * modules/euidaccess (Files): Add lib/euidaccess.h.
46483
46484 2003-08-17  Bruno Haible  <bruno@clisp.org>
46485
46486         * lib/strndup.h: New file.
46487
46488 2003-08-17  Bruno Haible  <bruno@clisp.org>
46489
46490         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
46491         like AC_GNU_SOURCE.
46492         * modules/extensions (configure.ac): Comment out the invocation of
46493         gl_USE_SYSTEM_EXTENSIONS.
46494
46495 2003-08-16  Paul Eggert  <eggert@twinsun.com>
46496
46497         Merges from coreutils, etc.
46498         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
46499         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
46500         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
46501         fixing a typo.
46502         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
46503         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
46504
46505 2003-08-16  Paul Eggert  <eggert@twinsun.com>
46506
46507         Document merge from coreutils.
46508         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
46509         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
46510         * modules/utime: Add m4/utimes-null.m4.
46511
46512 2003-08-16  Paul Eggert  <eggert@twinsun.com>
46513
46514         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
46515         space, undoing this 2003-08-12 change:
46516         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
46517
46518 2003-08-16  Paul Eggert  <eggert@twinsun.com>
46519
46520         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
46521         strtoul.c from libc, undoing this 2003-08-12 change:
46522         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
46523
46524 2003-08-16  Jim Meyering  <jim@meyering.net>
46525
46526         Merges from coreutils.
46527         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
46528         prefix.  Adjust cache variables similarly.  Create 500 rather than
46529         just 300 files, to exercise bug on Darwin6.5, too.
46530         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
46531         $missing_dir.
46532         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
46533         AM_SYS_POSIX_TERMIOS.
46534         Reported by mkc@mathdogs.com.
46535         Also change use of $am_cv_sys_posix_termios
46536         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
46537         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
46538         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
46539         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
46540         in /proc/mounts until it finds one with matching device number.  This
46541         is unnecessary when the FILE argument *is* a mount point.  No stat call
46542         is necessary in that case.  So, disable the statvfs-testing code on
46543         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
46544         as RedHat bug# 84846.
46545         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
46546         to 1MB, so as not to render systems with no stack size limit (e.g.,
46547         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
46548         Include <unistd.h>.  On some systems,
46549         it is required for the definition of _SC_PAGESIZE.
46550
46551 2003-08-16  Jim Meyering  <jim@meyering.net>
46552
46553         Merge from coreutils.
46554         * lib/xstrtoimax.c: #else #if -> #elif.
46555         * lib/xstrtoumax.c: Likewise.
46556
46557 2003-08-16  Jim Meyering  <jim@meyering.net>
46558
46559         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
46560         * m4/utimes.m4: Removed.
46561         * m4/utimes-null.m4: Renamed from utimes.m4.
46562
46563         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
46564         to 1MB, so as not to render systems with no stack size limit (e.g.,
46565         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
46566         Include <unistd.h>.  On some systems,
46567         it is required for the definition of _SC_PAGESIZE.
46568
46569 2003-08-16  Jim Meyering  <jim@meyering.net>
46570         and Paul Eggert  <eggert@cs.ucla.edu>
46571
46572         Merges from coreutils, etc.
46573
46574         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
46575         using the latest version from cvs.  This avoids problems with #line
46576         directives using a vendor (Sun) compiler.
46577         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
46578         Don't set GETGROUPS_LIB here; now it's
46579         done via getgroups.m4's wrapper function.
46580         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
46581         rather than just in sh-util/configure.in, so that the
46582         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
46583         same.
46584         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
46585         AC_FUNC_GETLOADAVG where to find getloadavg.c.
46586         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
46587         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
46588         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
46589         Remove code that is now done by the newly-required macros.
46590         Append $(EXEEXT) to DF_PROG.
46591         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
46592         Do not invoke or require the following here,
46593         since prereq.m4 or some gnulib .m4 now does this for us:
46594         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
46595         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
46596         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
46597         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
46598         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
46599         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
46600         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
46601         AC_FUNC_OBSTACK.
46602         Do not replace the following functions, as this is now the job
46603         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
46604         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
46605         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
46606         atexit getpass, strdup, getpagesize.
46607         Replace 'raise'.
46608         Do not check for the following functions, as this is now the job
46609         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
46610         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
46611         setregid.
46612         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
46613         Check for sys/sysctl.h.
46614         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
46615         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
46616         of checking for ssize_t ourselves.
46617
46618         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
46619         Require every macro that gnulib/modules/* suggests for us.
46620         (jm_PREREQ_ADDEXT): New macro.
46621         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
46622         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
46623
46624         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
46625         (gl_PHYSMEM): Use it.
46626         Also check for `table' function.
46627         Check for new headers and functions.
46628         Add check for sys/sysmp.h.
46629         With suggestions from Kaveh Ghazi.
46630         Ignore headers that are present but cannot be compiled.  This
46631         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
46632         C 5.4.
46633
46634 2003-08-15  Paul Eggert  <eggert@twinsun.com>
46635
46636         Document merge from coreutils.
46637         * modules/userspec: Depend on posixver.
46638         * modules/strftime: Depend on tzset.
46639
46640 2003-08-15  Paul Eggert  <eggert@twinsun.com>
46641
46642         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
46643         rather than tab, after '#' in shell-script copyright notices.
46644         Suggested by Bruno Haible.
46645
46646 2003-08-15  Paul Eggert  <eggert@twinsun.com>
46647
46648         * config/srclist-update: Use three spaces, rather than tab, after '#'
46649         in shell-script copyright notices.  Suggested by Bruno Haible.
46650         Remove unnecessary parenthesization in regular expression.
46651
46652 2003-08-15  Jim Meyering  <jim@meyering.net>
46653
46654         Merge from coreutils.
46655         * lib/xgethostname.c: Include <stdlib.h>.
46656         (xghostname): Don't exit for anything other than memory-related
46657         failure; just return NULL.
46658         * lib/userspec.c: Include "posixver.h".
46659         (parse_user_spec): Accept `.' as a separator only
46660         in pre-POSIX-200112 mode.
46661         * lib/strtoimax.c: Use #elif rather than #else #if.
46662         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
46663         Remove function, now that we can rely on a working tzset function.
46664         [!_LIBC]: Ensure that the required autoconf test has been run.
46665         [!defined _NL_CURRENT && HAVE_STRFTIME]:
46666         Use underlying_strftime for %r.
46667         * lib/sha.c: Merge in some clean-up and optimization changes from
46668         glibc.
46669         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
46670         Ensure that it is a multiple of 64.
46671         Rearrange loop exit tests so as to avoid performing an
46672         additional fread after encountering an error or EOF.
46673         * lib/realloc.c: Update copyright date.
46674
46675 2003-08-15  Jim Meyering  <jim@meyering.net>
46676         and Paul Eggert  <eggert@twinsun.com>
46677
46678         Merge from coreutils.
46679         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
46680         member but strut utmpx does not.  Needed for AIX 4.3.3.
46681         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
46682
46683 2003-08-15  Jim Meyering  <jim@meyering.net>
46684         and Paul Eggert  <eggert@cs.ucla.edu>
46685
46686         Merges from coreutils, etc.
46687         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
46688         Require gl_FUNC_TZSET_CLOBBER.
46689         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
46690         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
46691         members.
46692
46693 2003-08-14  Paul Eggert  <eggert@twinsun.com>
46694
46695         Help the merge from coreutils.
46696         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
46697         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
46698         * m4/tzset.m4: Use it too.
46699
46700 2003-08-14  Paul Eggert  <eggert@twinsun.com>
46701
46702         * modules/tzset: New file.
46703
46704 2003-08-14  Jim Meyering  <jim@meyering.net>
46705
46706         Merges from coreutils.
46707         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
46708         variable names, rather than @FNMATCH_H@.
46709         * modules/alloca: Likewise for $(ALLOCA_H).
46710
46711         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
46712         the three copies of the literal target, `fnmatch.h'.
46713         * modules/alloca (alloca.h): Likewise.
46714
46715 2003-08-14  Jim Meyering  <jim@meyering.net>
46716
46717         Merge from coreutils.
46718         * m4/tzset.m4: New file.
46719         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
46720         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
46721         otherwise, AIX 5.1 systems would end up using the latter.
46722         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
46723         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
46724         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
46725         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
46726
46727 2003-08-14  Jim Meyering  <jim@meyering.net>
46728
46729         Merge from coreutils.
46730         * lib/obstack.h: Whitespace changes.
46731         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
46732         and xcalloc return values.
46733         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
46734         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
46735         hang on OSF/1 5.1 for DIR on both local and remote file systems.
46736         Reported by (and fix confirmed by) Nelson H. F. Beebe.
46737         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
46738         error from mntctl.
46739         Use mntctl's return value to drive the entry-processing loop, since
46740         we can't rely on the value of the vmt_length member in the last
46741         entry.  On some systems doing so could result in exhausting
46742         virtual memory.  Based in part on a patch from Mike Jetzer.
46743
46744 2003-08-14  Jim Meyering  <jim@meyering.net>
46745         and Paul Eggert  <eggert@twinsun.com>
46746
46747         Merges from coreutils, plus other fixes.
46748         * lib/physmem.c: Merge in portability changes from gcc/libiberty
46749         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
46750         for credits and details.  Thanks to Kaveh Ghazi for helping
46751         to keep these files in sync.
46752         (ARRAY_SIZE): Define it.
46753         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
46754         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
46755         (memcasecmp): Don't assume size_t fits in unsigned int.
46756         Remove casts and duplicate code.
46757         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
46758         (memcpy): Remove definition.
46759         Merge in some clean-up and optimization changes from glibc.
46760         [BLOCKSIZE]: Move definition to top of file.
46761         Ensure that it is a multiple of 64.
46762         Rearrange loop exit tests so as to avoid performing an
46763         additional fread after encountering an error or EOF.
46764         * lib/md5.h (md5_uintptr): Define.
46765         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
46766         return to the initial working directory.  Preserve errno
46767         for caller.
46768         * lib/idcache.c: Include "xalloc.h".
46769         (xmalloc, xrealloc): Remove decls.
46770         (getuser): Remove casts no longer required in C89.
46771         * lib/human.c: Include stdio.h, for sprintf.
46772         * lib/group-member.c: Include "xalloc.h".
46773         (xmalloc, xrealloc): Remove decls.
46774         (get_group_info): Remove casts no longer required in C89.
46775         * lib/getusershell.c (readname): Remove casts no longer required in
46776         C89.
46777         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
46778         * lib/getline.c: Whitespace fix, from coreutils.
46779
46780 2003-08-13  Paul Eggert  <eggert@twinsun.com>
46781
46782         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
46783         Check for isascii.
46784
46785         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
46786         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
46787         Undo previous (whitespace-only) change.
46788
46789 2003-08-13  Paul Eggert  <eggert@twinsun.com>
46790
46791         * lib/exclude.c: Include <ctype.h>
46792         (IN_CTYPE_DOMAIN): New macro.
46793         (is_space): New fn.
46794         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
46795         and empty lines.
46796
46797         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
46798         Undo previous (whitespace-only) change.
46799
46800 2003-08-13  Paul Eggert  <eggert@twinsun.com>
46801
46802         * config/srclist-update: Change update back to the old behavior,
46803         leaving whitespace alone.  Use one 'sed' command rather than a
46804         pipeline.
46805         (fixlicense): Now a variable, not a function.
46806         (remove_trailing_blanks): Remove.
46807         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
46808         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
46809         Undo previous (whitespace-only) change.
46810
46811 2003-08-12  Paul Eggert  <eggert@twinsun.com>
46812
46813         Merge from coreutils.
46814         * modules/euidaccess: Add lib_SOURCES, include for new
46815         file euidaccess.h
46816
46817 2003-08-12  Paul Eggert  <eggert@twinsun.com>
46818
46819         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
46820         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
46821         Normalize leading white space and remove trailing white space.
46822
46823         Merge from coreutils
46824         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
46825
46826         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
46827         0.12.1.  These files are now being upgraded automatically by
46828         ../config/srclist-update.
46829
46830 2003-08-12  Paul Eggert  <eggert@twinsun.com>
46831
46832         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
46833         Normalize leading white space and remove trailing white space.
46834         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
46835         notice, as per ../config/srclist-update.
46836
46837         Merge from coreutils.
46838         * lib/euidaccess.h: New file.
46839         * lib/euidaccess.c: Include it.
46840         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
46841         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
46842         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
46843
46844 2003-08-12  Paul Eggert  <eggert@twinsun.com>
46845
46846         * config/srclist-update: Add copyright notice.
46847         (remove_id_lines, remove_trailing_blanks): New constants.
46848         (fixfile): Use them to normalize spacing a bit in copied files.
46849         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
46850         Normalize leading white space and remove trailing white space.
46851
46852         * config/texinfo.tex: Sync with texinfo.
46853
46854         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
46855         strtoul.c from libc, to merge coreutils whitespace changes.
46856
46857         * config/srclist.txt: Get the following m4 files from gettext:
46858         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
46859         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
46860         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
46861         wint_t.m4.
46862
46863 2003-08-12  Karl Berry  <karl@gnu.org>
46864
46865         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
46866         been made.
46867
46868 2003-08-11  Paul Eggert  <eggert@twinsun.com>
46869
46870         * modules/gnu-source, m4/gnu-source.m4:
46871         Remove; we're assuming Autoconf 2.54 or later now.
46872         Suggested by Bruno Haible.
46873         * MODULES.html.sh (func_all_modules): Remove gnu-source.
46874
46875 2003-08-11  Bruno Haible  <bruno@clisp.org>
46876
46877         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
46878
46879 2003-08-11  Bruno Haible  <bruno@clisp.org>
46880
46881         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
46882         (vasnprintf): Use it instead of wcslen.
46883
46884 2003-08-11  Bruno Haible  <bruno@clisp.org>
46885
46886         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
46887         value to ensure that _Bool promotes to int. Use #define for _Bool when
46888         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
46889
46890 2003-08-10  Karl Berry  <karl@gnu.org>
46891
46892         * lib/regex.h: update from libc (whitespace fix).
46893
46894 2003-08-09  Paul Eggert  <eggert@twinsun.com>
46895
46896         Merge some files from coreutils.  These changes were
46897         originally made by Jim Meyering.
46898         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
46899         many older Unixes require this.
46900         * lib/alloca.c (alloca): Remove cast to argument of free;
46901         no longer needed in C89.
46902         * lib/alloca_.h, regex.h: Fix white space to match
46903         what GNU indent does.
46904
46905 2003-08-09  Paul Eggert  <eggert@twinsun.com>
46906
46907         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
46908         apparently Emacs's Unicode mode got confused before my 2003-08-05
46909         checkin.
46910
46911 2003-08-08  Paul Eggert  <eggert@twinsun.com>
46912
46913         * m4/extensions.m4: New file.
46914         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
46915         Require gl_USE_SYSTEM_EXTENSIONS.
46916         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
46917         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
46918
46919 2003-08-08  Paul Eggert  <eggert@twinsun.com>
46920
46921         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
46922         * modules/extensions, modules/gnu-source: New files.
46923         * modules/timespec, modules/unlocked-io: Depend on extensions.
46924
46925 2003-08-07  Paul Eggert  <eggert@twinsun.com>
46926
46927         * modules/restrict: New file.
46928         * MODULES.html.sh (func_all_modules): Add restrict.
46929         * modules/regex: Depend on restrict.
46930
46931 2003-08-07  Paul Eggert  <eggert@twinsun.com>
46932
46933         * m4/restrict.m4: New file.
46934         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
46935
46936 2003-08-07  Bruno Haible  <bruno@clisp.org>
46937
46938         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
46939         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
46940
46941 2003-08-07  Bruno Haible  <bruno@clisp.org>
46942
46943         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
46944         makes the module 'getndelim2' compatible with the module 'getline'.
46945
46946 2003-08-05  Paul Eggert  <eggert@twinsun.com>
46947
46948         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
46949         byte with "\201" to avoid glitches when editing that source file
46950         with multi-gnome-terminal.
46951
46952 2003-08-05  Paul Eggert  <eggert@twinsun.com>
46953
46954         * lib/bumpalloc.h: Remove.
46955
46956 2003-08-05  Paul Eggert  <eggert@twinsun.com>
46957
46958         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
46959         * modules/bumpalloc: Remove.
46960
46961 2003-08-04  Paul Eggert  <eggert@twinsun.com>
46962
46963         * lib/getloadavg.c: Change copyright notice and spacing to conform to
46964         GNU coding style.
46965
46966         Merge from coreutils.
46967         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
46968         1. From glibc.
46969         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
46970         from Karl Berry, implemented by Jim Meyering.
46971         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
46972         from Dmitry V. Levin.
46973         Remove anachronistic cast of xrealloc.
46974         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
46975         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
46976         type. Otherwise, it wouldn't compile with at least /bin/cc on
46977         ymp-cray-unicos9.0.2.X.
46978         Combine two mostly-identical uses of alloca into one.
46979         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
46980
46981 2003-08-04  Dave Love  <d.love@dl.ac.uk>
46982
46983         [From Emacs.]
46984
46985         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
46986         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
46987         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
46988         obsolete NLIST_NAME_UNION.
46989         [__GNU__]: Undef BSD and FSCALE.
46990         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
46991
46992 2003-08-03  Paul Eggert  <eggert@twinsun.com>
46993
46994         * lib/stdbool_.h (_Bool): Make it signed char, instead of
46995         an enum type, so that it's guaranteed to promote to int.  See:
46996         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
46997
46998 2003-08-03  Karl Berry  <karl@gnu.org>
46999
47000         * config/depcomp: update from automake.
47001
47002 2003-07-31  Paul Eggert  <eggert@twinsun.com>
47003
47004         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
47005         (strerror): Don't assume that a printable int fits in 14 bytes.
47006
47007 2003-07-31  Bruno Haible  <bruno@clisp.org>
47008
47009         * modules/getpass-gnu: New file.
47010         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
47011
47012 2003-07-31  Bruno Haible  <bruno@clisp.org>
47013
47014         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
47015
47016 2003-07-24  Karl Berry  <karl@gnu.org>
47017
47018         * config/missing: update from automake.
47019
47020 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
47021             Bruno Haible  <bruno@clisp.org>
47022
47023         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
47024         * lib/getline.c (getline, getdelim): Likewise.
47025         Remove _GNU_SOURCE define; now it's defined in config.h through
47026         m4/getline.m4.
47027
47028 2003-07-23  Karl Berry  <karl@gnu.org>
47029
47030         * config/config.sub: update from prep.
47031
47032 2003-07-22  Paul Eggert  <eggert@twinsun.com>
47033
47034         * modules/xalloc (Depends-on): Add exitfail.
47035         * modules/xmemcoll: Likewise.
47036
47037 2003-07-22  Paul Eggert  <eggert@twinsun.com>
47038
47039         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
47040         over-parenthesization in macros.
47041
47042         Sync with coreutils.
47043
47044         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
47045         required by C99.
47046
47047         Use `exit_failure' for xalloc and xmemcoll instead of their own
47048         private exit-failure variables.
47049         * lib/xalloc.h (xalloc_exit_failure): Remove.
47050         * lib/xmalloc.c: Likewise.  Include exitfail.h.
47051         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
47052         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
47053         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
47054         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
47055
47056 2003-07-20  Jim Meyering  <jim@meyering.net>
47057
47058         * modules/closeout (Depends-on): Add exitfail.
47059         Suggestion from Bruno Haible.
47060
47061 2003-07-19  Karl Berry  <karl@gnu.org>
47062
47063         * config/config.sub: update from prep.
47064
47065 2003-07-18  Paul Eggert  <eggert@twinsun.com>
47066
47067         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
47068         Remove.
47069         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
47070         to test that it can stand by itself.  Include "exitfail.h".
47071         Clients should set exit_failure instead.
47072         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
47073
47074 2003-07-18  Bruno Haible  <bruno@clisp.org>
47075
47076         * modules/getndelim2: New file.
47077         * modules/getline: Share files with module getndelim2.
47078         * modules/getnline: Depend on getndelim2 instead of sharing files with
47079         it. Add getnline.c to lib_SOURCES.
47080         * MODULES.html.sh (func_all_modules): Add getndelim2.
47081
47082 2003-07-18  Bruno Haible  <bruno@clisp.org>
47083
47084         * m4/getndelim2.m4: New file.
47085         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
47086         invoke gl_PREREQ_GETNDELIM2.
47087         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
47088         gl_PREREQ_GETNDELIM2.
47089         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
47090         gl_GETNDELIM2.
47091
47092 2003-07-18  Bruno Haible  <bruno@clisp.org>
47093
47094         * lib/getndelim2.h: New file.
47095         * lib/getndelim2.c: Make into a module of its own. Include config.h,
47096         getndelim2.h.
47097         (getndelim2): Make non-static. Change return type to ssize_t.
47098         * lib/getline.h: Change argument names.
47099         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
47100         * lib/getnline.c: Include getndelim2.h.
47101
47102 2003-07-18  Andreas Schwab  <schwab@suse.de>
47103
47104         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
47105
47106 2003-07-17  Karl Berry  <karl@gnu.org>
47107
47108         * config/config.sub: update from prep.
47109
47110 2003-07-17  Bruno Haible  <bruno@clisp.org>
47111
47112         * modules/getnline: New file.
47113         * modules/getline: Add lib/getndelim2.c to source file list.
47114         * MODULES.html.sh (func_all_modules): Add getnline.
47115
47116 2003-07-17  Bruno Haible  <bruno@clisp.org>
47117
47118         * m4/getnline.m4: New file.
47119
47120 2003-07-17  Bruno Haible  <bruno@clisp.org>
47121
47122         * m4/Makefile.am.in: Remove file.
47123         * m4/Makefile.am: Remove file.
47124         * m4/Makefile.in: Remove file.
47125
47126 2003-07-17  Bruno Haible  <bruno@clisp.org>
47127
47128         * lib/getnline.h: New file.
47129         * lib/getnline.c: New file.
47130         * lib/getndelim2.c: New file, extracted from getline.c.
47131         (getndelim2): Renamed from getdelim2, with added nmax argument.
47132         * lib/getline.c: Include getndelim2.c.
47133         (getdelim2): Moved out to getndelim2.c.
47134         (getline, getdelim): Update.
47135
47136 2003-07-17  Bruno Haible  <bruno@clisp.org>
47137
47138         * lib/Makefile.am: Remove file.
47139         * lib/Makefile.in: Remove file.
47140
47141 2003-07-17  Bruno Haible  <bruno@clisp.org>
47142
47143         * configure.in: Remove file.
47144         * Makefile.in: Remove file.
47145
47146 2003-07-17  Bruno Haible  <bruno@clisp.org>
47147
47148         * MODULES.html.sh: Put the </BODY> right before </HTML>.
47149
47150 2003-07-16  Karl Berry  <karl@gnu.org>
47151
47152         * config/srclist-update: was running fixlicense twice, which caused
47153                 texinfo.tex to be nullified for some reason.  Simplify,
47154                 $gplsrc is no longer needed as far as I can see?
47155
47156 2003-07-16  Jim Meyering  <jim@meyering.net>
47157
47158         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
47159
47160 2003-07-15  Paul Eggert  <eggert@twinsun.com>
47161
47162         * config/srclist.txt: Get the following files from gettext-runtime/intl
47163         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
47164         ref-del.sin.  From Bruno Haible.
47165         * config/srclist-update (fixfile): Change grep pattern again, since the
47166         previous fix didn't work (there was another trailing $).  Use
47167         '[$]' to escape the $s.
47168
47169 2003-07-15  Karl Berry  <karl@gnu.org>
47170
47171         * lib/vasnprintf.c: update from gettext.
47172
47173 2003-07-15  Karl Berry  <karl@gnu.org>
47174
47175         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
47176         gets expanded when surrounded by '$'.
47177
47178 2003-07-15  Jim Meyering  <jim@meyering.net>
47179
47180         * modules/save-cwd: Don't depend on error.  From Derek Price.
47181
47182 2003-07-15  Jim Meyering  <jim@meyering.net>
47183
47184         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
47185
47186 2003-07-14  Simon Josefsson  <jas@extundo.com>
47187
47188         * modules/mempcpy: New file.
47189         * MODULES.html.sh (func_all_modules): Add mempcpy.
47190
47191 2003-07-14  Simon Josefsson  <jas@extundo.com>
47192
47193         * m4/mempcpy.m4: New file.
47194
47195 2003-07-14  Simon Josefsson  <jas@extundo.com>
47196
47197         * lib/mempcpy.h: New file.
47198         * lib/mempcpy.c: New file.
47199
47200 2003-07-14  Paul Eggert  <eggert@twinsun.com>
47201
47202         * modules/getdate, modules/posixtm: Depend on mktime.
47203
47204 2003-07-14  Paul Eggert  <eggert@twinsun.com>
47205
47206         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
47207         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
47208         unicodeio.c, unicodeio.h, unlocked-io.h:
47209         Switch from LGPL to GPL.
47210
47211 2003-07-14  Paul Eggert  <eggert@twinsun.com>
47212
47213         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
47214         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
47215         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
47216         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
47217         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
47218         updated automatically by ../config/srclist-update.  This changes
47219         their license from LPGL to GPL.
47220
47221 2003-07-14  Paul Eggert  <eggert@twinsun.com>
47222
47223         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
47224         assumed to refer to the root of the most recent stable gettext version.
47225         * config/srclistvars.sh: Add defaults for eggert.
47226         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
47227         Match "This program" as well as "The program".  This is needed
47228         for gettext.
47229
47230 2003-07-14  Jim Meyering  <jim@meyering.net>
47231
47232         Don't emit diagnostics.  Let callers do that.
47233         * lib/save-cwd.c: Don't include "error.h".
47234         (save_cwd): Don't call error.  Ensure that errno is valid
47235         when returning nonzero.
47236
47237         * lib/save-cwd.h (restore_cwd): Update prototype.
47238         * lib/save-cwd.c (restore_cwd): Remove two parameters.
47239         Simplify.  Don't call error upon failure.  Let callers do that.
47240         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
47241         when auditing is enabled.  But don't bother updating the #if.
47242
47243 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
47244
47245         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
47246         it breaks C++ compilation.
47247         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
47248
47249 2003-07-10  Simon Josefsson  <jas@extundo.com>
47250
47251         * modules/strchrnul (Makefile.am): Add strchrnul.h.
47252
47253 2003-07-10  Jim Meyering  <jim@meyering.net>
47254
47255         * m4/clock_time.m4: Remove trailing blank.
47256         * m4/intmax_t.m4: Likewise.
47257
47258 2003-07-10  Jim Meyering  <jim@meyering.net>
47259
47260         * lib/vasnprintf.c: Remove trailing blanks.
47261         Make cpp indentation consistent.
47262
47263 2003-07-09  Paul Eggert  <eggert@twinsun.com>
47264
47265         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
47266         posixver.c, strftime.c, strnlen.c, strverscmp.c:
47267         Switch from LGPL to GPL.
47268
47269 2003-07-09  Paul Eggert  <eggert@twinsun.com>
47270
47271         * config/srclist.txt: Sort sublists.  Add
47272         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
47273         that differ from gnulib for one reason or another; we'd like this list
47274         to be smaller but for now let's document what we have.
47275
47276 2003-07-08  Paul Eggert  <eggert@twinsun.com>
47277
47278         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
47279         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
47280         and sweeter "eval x=$x".
47281         * config/srclist.txt: Get lib/argp* from glibc.
47282
47283 2003-07-07  Paul Eggert  <eggert@twinsun.com>
47284
47285         * lib/mktime.c: Fix some boundary cases and remove need for floating
47286         point.
47287
47288         Issue a compile-time diagnostic if time_t is floating point, or if
47289         two's complement arithmetic is not in effect, or if arithmetic
47290         right shift does not propagate the sign.  These assumptions were
47291         all in the original code but they weren't checked.
47292
47293         (TIME_T_MIDPOINT, verify): New macros.
47294         (__isleap): Remove; it has integer overflow problems.
47295         (leapyear): New function, without those problems.
47296         (ydhms_tm_diff): Remove; splitting into two parts.
47297         (ydhms_diff): New function, containing the arithmetic part of
47298         the old ydhms_tm_diff function.  Issue a compile-time
47299         diagnostic if we are not using C99 integer division.
47300         Avoid casts when possible.
47301         (guess_time_tm): New function, containing the checking part of
47302         the old ydhms_tm_diff function.  Return the new value, rather than
47303         the difference between it and the old.  Accept a new argument T
47304         so that *T specifies the old value.  Check for overflow in the result.
47305
47306         (__mktime_internal): Use a time_t offset, not a long int offset.
47307         This undoes the 2003-06-04 change, which is no longer needed now
47308         that we have better overflow checking.
47309         (localtime_offset): Likewise.
47310
47311         (__mktime_internal): Avoid harmful overflow on hosts where time_t
47312         and long are 64-bit but int is only 32-bit.
47313         (ydhms_diff): Use long int to store year1 and yday1.
47314         Issue a compile-time diagnostic if long int is not wide enough.
47315
47316         (__mktime_internal): Use long int to store adjusted year and yday.
47317         Use plain C rather than preprocessor commands, if that doesn't
47318         affect efficiency.
47319         Check for overflow (and try to repair) after each probe
47320         rather than checking only at the very end.  This avoids some bugs
47321         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
47322         does not equal GMT offset at maximum time).
47323         Use integer to check for overflow rather than floating point; this
47324         is more portable to non-IEEE hosts, and is a tad faster.
47325         When we detect that we are oscillating between two values,
47326         don't check whether tm_isdst has the requested value, since
47327         we already know the answer.  When tm_isdst has the wrong value,
47328         use a different heuristic to find the right one, based on the
47329         extreme values actually observed in practice in tz2003a,
47330         rather than the (overly optimistic) "previous 3 calendar quarters".
47331
47332         (not_equal_tm, print_tm, check_result): Use "const T" rather than
47333         "T const" to accommodate glibc style.
47334         (check_result): Use less-confusing report format.  "long" -> "long int.
47335         (main): Likewise.
47336         Don't loop if the iteration overflows time_t.
47337         Allow a negative step in the iteration.
47338
47339 2003-07-06  Karl Berry  <karl@gnu.org>
47340
47341         * config/depcomp: update from automake.
47342         * config/config.sub: update from prep.
47343
47344 2003-07-03  Karl Berry  <karl@gnu.org>
47345
47346         * config/config.guess: update from prep.
47347
47348 2003-07-01  Paul Eggert  <eggert@twinsun.com>
47349
47350         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
47351         xreadlink.c now includes it unconditionally.
47352
47353 2003-07-01  Paul Eggert  <eggert@twinsun.com>
47354
47355         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
47356         having it depend on HAVE_SYS_TYPES_H.
47357
47358 2003-07-01  Bruno Haible  <bruno@clisp.org>
47359
47360         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
47361         <sys/types.h> should be sufficient.
47362         Reported by Paul Eggert.
47363
47364 2003-06-26  Karl Berry  <karl@gnu.org>
47365
47366         * config/depcomp: update from automake.
47367
47368 2003-06-26  Bruno Haible  <bruno@clisp.org>
47369
47370         * modules/human: Depend on module stdbool.
47371
47372 2003-06-25  Bruno Haible  <bruno@clisp.org>
47373
47374         * modules/readlink: New file.
47375         * modules/xreadlink: Depend on it.
47376         * MODULES.html.sh (func_all_modules): Add readlink.
47377
47378 2003-06-25  Bruno Haible  <bruno@clisp.org>
47379
47380         * m4/readlink.m4: New file.
47381
47382 2003-06-25  Bruno Haible  <bruno@clisp.org>
47383
47384         * lib/readlink.c: New file.
47385
47386 2003-06-22  Karl Berry  <karl@gnu.org>
47387
47388         * config/srclist.txt: update mkinstalldirs from automake.
47389         * config/mkinstalldirs: update.
47390
47391 2003-06-22  Bruno Haible  <bruno@clisp.org>
47392
47393         Portability to mingw32.
47394         * m4/ssize_t.m4: New file, from GNU gettext.
47395         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
47396         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
47397
47398 2003-06-22  Bruno Haible  <bruno@clisp.org>
47399
47400         * modules/safe-read: Add m4/ssize_t.m4.
47401         * modules/xreadlink: Add m4/ssize_t.m4.
47402
47403 2003-06-20  Bruno Haible  <bruno@clisp.org>
47404
47405         Assume C89, so PARAMS isn't needed.
47406         * lib/unicodeio.h (PARAMS): Remove.
47407         * lib/unicodeio.c: Don't use PARAMS.
47408
47409 2003-06-18  Karl Berry  <karl@gnu.org>
47410
47411         * config/config.{guess,sub}: update from prep.
47412
47413 2003-06-18  Jim Meyering  <jim@meyering.net>
47414
47415         Merge changes from coreutils.
47416         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
47417         Remove explicit declarations of xmalloc and realloc.
47418         Include xalloc.h.
47419         (read_utmp): Remove anachronistic cast of xmalloc.
47420
47421 2003-06-17  Paul Eggert  <eggert@twinsun.com>
47422
47423         Assume C89, so PARAMS isn't needed.
47424         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
47425         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
47426         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
47427         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
47428         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
47429         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
47430         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
47431         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
47432         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
47433         lib/xstrtod.h, lib/xstrtol.h: Likewise.
47434         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
47435         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
47436         no longer needed. Anyway, config.h should always be included before any
47437         other file.
47438
47439 2003-06-11  Simon Josefsson  <jas@extundo.com>
47440
47441         * modules/sysexits: New file.
47442         * MODULES.html.sh (func_all_modules): Add sysexits.
47443
47444 2003-06-11  Simon Josefsson  <jas@extundo.com>
47445
47446         * lib/sysexit_.h: New file.
47447
47448 2003-06-11  Derek Price  <derek@ximbiot.com>
47449
47450         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
47451         necessary.
47452
47453 2003-06-11  Bruno Haible  <bruno@clisp.org>
47454
47455         * m4/sysexits.m4: New file.
47456
47457 2003-06-10  Simon Josefsson  <jas@extundo.com>
47458
47459         * lib/argp.h: New file, from glibc.
47460         * lib/argp-ba.c: New file, from glibc.
47461         * lib/argp-eexst.c: New file, from glibc.
47462         * lib/argp-fmtstream.c: New file, from glibc.
47463         * lib/argp-fmtstream.h: New file, from glibc.
47464         * lib/argp-fs-xinl.c: New file, from glibc.
47465         * lib/argp-help.c: New file, from glibc.
47466         * lib/argp-namefrob.h: New file, from glibc.
47467         * lib/argp-parse.c: New file, from glibc.
47468         * lib/argp-pv.c: New file, from glibc.
47469         * lib/argp-pvh.c: New file, from glibc.
47470         * lib/argp-xinl.c: New file, from glibc.
47471
47472 2003-06-10  Simon Josefsson  <jas@extundo.com>
47473
47474         * modules/strchrnul: New file.
47475
47476 2003-06-10  Simon Josefsson  <jas@extundo.com>
47477
47478         * modules/argp: New file.
47479
47480 2003-06-10  Simon Josefsson  <jas@extundo.com>
47481
47482         * m4/strchrnul.m4: New file.
47483
47484 2003-06-10  Simon Josefsson  <jas@extundo.com>
47485
47486         * lib/strchrnul.h: New file.
47487         * lib/strchrnul.c: New file.
47488
47489 2003-06-10  Bruno Haible  <bruno@clisp.org>
47490
47491         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
47492
47493 2003-06-07  Karl Berry  <karl@gnu.org>
47494
47495         * config/config.{guess,sub}: update from prep.
47496
47497 2003-06-07  Jim Meyering  <jim@meyering.net>
47498
47499         * modules/strtod: Use $(...) notation, not @...@ for
47500         AC_REPLACE'd variables.
47501         * modules/localcharset: Likewise.
47502
47503 2003-06-07  Jim Meyering  <jim@meyering.net>
47504
47505         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
47506         in place of my name in the copyright comment.
47507         Remove definition and uses of __P.
47508
47509         From coreutils.
47510         * lib/stat.c: Don't declare xmalloc explicitly.
47511         Instead, include "xalloc.h".
47512         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
47513         xrealloc, and xcalloc return values.
47514         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
47515         Improve comment.
47516         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
47517
47518 2003-06-07  Bruno Haible  <bruno@clisp.org>
47519
47520         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
47521         avoid AC_CONFIG_LINKS.
47522         * modules/fnmatch (Makefile.am): Use explicit creation rule for
47523         fnmatch.h, to avoid AC_CONFIG_LINKS.
47524         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
47525
47526 2003-06-07  Bruno Haible  <bruno@clisp.org>
47527
47528         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
47529         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
47530         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
47531         directory.
47532         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
47533         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
47534         directory.
47535
47536 2003-06-06  Jim Meyering  <jim@meyering.net>
47537
47538         Merge from coreutils.
47539         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
47540         Consolidate declarations and initializations of *_base* locals.
47541
47542         Merge from coreutils.
47543         This avoids a core dump on systems without GNU putenv,
47544         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
47545         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
47546         (unsetenv): New static function, from GNU libc.
47547         (rpl_putenv): Use it.
47548
47549         * lib/modechange.c: Remove trailing blanks.
47550
47551         Merge from coreutils.
47552         * lib/fsusage.c: Remove declaration of statfs.
47553         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
47554
47555         * lib/posixtm.c: Include <stdbool.h> unconditionally.
47556
47557 2003-06-06  Jim Meyering  <jim@meyering.net>
47558
47559         * lib/stdbool_.h: Renamed from stdbool.h.in.
47560
47561 2003-06-06  Jim Meyering  <jim@meyering.net>
47562             Bruno Haible  <bruno@clisp.org>
47563
47564         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
47565         Adjust Makefile.am snippet not to redirect directly to target.
47566         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
47567
47568 2003-06-05  Paul Eggert  <eggert@twinsun.com>
47569
47570         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
47571         mismatch, look in future quarters as well as past.  This fixes a
47572         bug when processing fall-backwards gaps immediately after a long
47573         period of daylight-saving time.
47574
47575         * lib/mktime.c: Assume freestanding C89 or better.
47576         (HAVE_LIMITS_H): Remove.  Assume it's 1.
47577         (__P): Remove; not used.
47578         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
47579         (mktime, not_equal_tm, print_tm, check_result,
47580         main): Use prototypes.  Use const * where appropriate.
47581         (main): Fix typo in testing code that uncovered by above changes.
47582         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
47583
47584 2003-06-04  Paul Eggert  <eggert@twinsun.com>
47585
47586         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
47587         locale.h, localeconv.  This merges changes from coreutils.
47588
47589         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
47590         It can be removed after the next Autoconf is released.
47591         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
47592         needed.
47593
47594 2003-06-04  Paul Eggert  <eggert@twinsun.com>
47595
47596         * lib/mktime.c: Fix Debian bug 177940
47597         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
47598         (localtime_offset): Now long int, not time_t, because we want it
47599         to be guaranteed to be signed.  All uses changed.
47600         (__mktime_internal): If overflow would occur when adding offset,
47601         don't add it.
47602
47603         Merge 'human' changes from coreutils.  Rewrite to support
47604         locale-specific notations like thousands separators.
47605         * lib/human.c: Simplify authorship notice.
47606         Include human.h immediately after config.h.
47607         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
47608         <limits.h>: Do not include, since human.h does.
47609         (SIZE_MAX, UINTMAX_MAX): New macros.
47610         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
47611         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
47612         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
47613         (power_letter): Renamed from suffixes.
47614         (generate_suffix_backwards): Remove.
47615         (adjust_value): Now takes int style (because of human.h changes)
47616         and long double value (for greater precision on some platforms).
47617         (group_number): New function.
47618         (human_readable): Use it.  Use integer options, not enum.
47619         Put the options before the sizes in the arg list.
47620         Support all the new options.
47621         The old human_readable function has been removed;
47622         use inttostr.h instead.
47623         (human_readable, default_block_size, humblock):
47624         Use uintmax_t, not int, for block sizes.
47625         (human_readable_inexact, block_size_types): Remove.
47626         (block_size_opts): New constant.
47627         (human_options): Renamed from human_block_size, with new signature
47628         that allows block sizes up to UINTMAX_MAX.  All callers changed.
47629         * lib/human.h: Add copyright and authorship notice.
47630         Include <limits.h> and <stdbool.h> unconditionally.
47631         (PARAMS): Remove.  All uses removed.
47632         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
47633         (enum human_inexact_style): Remove tag; now a nameless enum.
47634         (human_floor, human_ceiling, human_round_to_even): Now have
47635         values 2, 0, 1 rather than -1, 1, 0.
47636         (human_group_digits, human_suppress_point_zero, human_autoscale,
47637         human_base_1024, human_SI, human_B): New constants.
47638         (human_readable_inexact, human_block_size): Remove.
47639         (human_readable): Size args are now uintmax_t, not int.
47640         (human_options): New decl.
47641
47642         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
47643         unnecessary now that we assume C89 or better.  This change
47644         imported from coreutils.
47645
47646         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
47647         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
47648         in the 2003-05-30 sync from glibc.
47649
47650         .h files should stand alone, but we shouldn't include <sys/types.h>
47651         if we can get away with just <stddef.h>.
47652
47653         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
47654         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
47655         rather than <sys/types.h>, as we merely need size_t.
47656         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
47657         to get size_t.
47658         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
47659         Include <stdio.h>, to get FILE.
47660         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
47661         memcasecmp.h has included <stddef.h> and all we need is size_t.
47662         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
47663         our interface, instead of including <sys/types.h>
47664
47665 2003-06-04  Paul Eggert  <eggert@twinsun.com>
47666
47667         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
47668         now, as glibc mktime is buggy on non-glibc systems.
47669
47670 2003-06-03  Karl Berry  <karl@gnu.org>
47671
47672         * config/config.sub: update from prep.
47673
47674 2003-06-02  Paul Eggert  <eggert@twinsun.com>
47675
47676         [from coreutils]
47677         Fix some minor time-related bugs with POSIX time arguments.
47678         Some valid time stamps were being rejected (notably -1, and
47679         time stamps before 1900 on 64-bit hosts).  And some invalid
47680         time stamps were being accepted, e.g. September 31.
47681
47682         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
47683         that we can return (time_t) -1 successfully.
47684         * lib/posixtm.c: Likewise.
47685         [HAVE_STDBOOL_H]: Include <stdbool.h>.
47686         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
47687         (t): Remove static var.
47688         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
47689         of static var.  All uses changed.
47690         (year): Do not reject years before 1900; they can occur with
47691         64-bit time_t.
47692         (posix_time_parse): Do not check for out-of-range components;
47693         that is now the caller's responsibility, since our checks were
47694         only approximations.
47695         (posixtime): Use mktime to check for out-of-range components,
47696         since it knows them exactly.
47697         If mktime returns (time_t) -1, check whether an error actually occurred
47698         by invoking localtime on -1.
47699         (main) [TEST_POSIXTIME]: Check for input data errors, and report
47700         posixtime failures better.
47701         Improve the test data (in comments only).
47702
47703 2003-06-02  Karl Berry  <karl@gnu.org>
47704
47705         * config/mkinstalldirs (version): new variable.
47706         (--version): new option.
47707         (usage): improve message.
47708
47709 2003-05-30  Karl Berry  <karl@gnu.org>
47710
47711         * lib/mktime.c: update from libc.
47712
47713 2003-05-30  Bruno Haible  <bruno@clisp.org>
47714
47715         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
47716         * config/config.rpath: Upgrade to gettext-0.12.1.
47717
47718 2003-05-30  Bruno Haible  <bruno@clisp.org>
47719
47720         * m4/gettext.m4: Upgrade to gettext-0.12.1.
47721         * m4/nls.m4: New file, from gettext-0.12.1.
47722         * m4/po.m4: New file, from gettext-0.12.1.
47723         * m4/progtest.m4: Upgrade to gettext-0.12.1.
47724
47725 2003-05-30  Bruno Haible  <bruno@clisp.org>
47726
47727         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
47728         * lib/localcharset.h: Likewise.
47729         * lib/localcharset.c: Likewise.
47730
47731 2003-05-29  Karl Berry  <karl@gnu.org>
47732
47733         * config/config.rpath: update from gettext.
47734
47735 2003-05-28  Paul Eggert  <eggert@twinsun.com>
47736
47737         Assume the headers required for C89 freestanding compilers.
47738         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
47739         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
47740         * m4/human.m4 (gl_HUMAN): Likewise.
47741         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
47742         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
47743         * m4/userspec.m4 (gl_USERSPEC): Likewise.
47744         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
47745         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
47746         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
47747
47748 2003-05-28  Paul Eggert  <eggert@twinsun.com>
47749
47750         Assume the headers required for C89 freestanding compilers.
47751         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
47752         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
47753         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
47754         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
47755         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
47756         define, since <limits.h> is guaranteed to do that.
47757         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
47758         * lib/exclude.c: Include <stdbool.h> unconditionally.
47759         * lib/tempname.c: Include <stddef.h> unconditionally.
47760         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
47761         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
47762         <stddef.h> does that.
47763         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
47764         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
47765         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
47766         needed.
47767         * lib/xstrtol.c: Likewise.
47768         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
47769         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
47770
47771         * lib/addext.c (addext): Use assignment rather than cast, to avoid
47772         warnings on some platforms.
47773
47774         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
47775         arbitrarily.
47776
47777 2003-05-26  Jim Meyering  <jim@meyering.net>
47778
47779         Merge in a change from coreutils:
47780         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
47781         that is guaranteed to be `no'.  Use `no_such_member' to indicate
47782         that condition, rather than `-1' which is slightly misleading.
47783         Change the name of the cache variable to have the gl_ prefix.
47784         Prompted by a patch from Richard Dawe for DJGPP.
47785
47786 2003-05-24  Karl Berry  <karl@gnu.org>
47787
47788         * config/config.guess: update from prep.
47789
47790 2003-05-22  Karl Berry  <karl@gnu.org>
47791
47792         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
47793
47794 2003-05-20  Karl Berry  <karl@gnu.org>
47795
47796         * config/config.guess: update from prep.
47797
47798 2003-05-18  Karl Berry  <karl@gnu.org>
47799
47800         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
47801         might actually be set by the user.
47802
47803         * config/depcomp, install-sh, mdate-sh: update from automake.
47804
47805 2003-05-17  Bruno Haible  <bruno@clisp.org>
47806
47807         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
47808         invalid expansion for AC_EGREP_CPP.
47809         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
47810         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
47811         Suggested by Akim Demaille <akim@epita.fr> in
47812         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
47813
47814 2003-05-12  Jim Meyering  <jim@meyering.net>
47815
47816         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
47817         the space-padded-by-default conversion specifiers, %e, %k, %l.
47818
47819 2003-05-12  Bruno Haible  <bruno@clisp.org>
47820
47821         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
47822         the string is longer than 4 KB.
47823
47824 2003-05-11  Karl Berry  <karl@gnu.org>
47825
47826         * config/config.{guess,sub}: update from prep.
47827
47828 2003-05-09  Bruno Haible  <bruno@clisp.org>
47829
47830         * modules/error: Add m4/strerror_r.m4 to file list.
47831
47832 2003-05-03  Bruno Haible  <bruno@clisp.org>
47833
47834         Upgrade to Unicode-4.0.
47835         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
47836         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
47837         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
47838         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
47839         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
47840         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
47841         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
47842         Change width of U+E0100..U+E01EF from 1 to 0.
47843
47844 2003-04-25  Jim Meyering  <jim@meyering.net>
47845
47846         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
47847         of type size_t, not int.
47848
47849 2003-04-25  Bruno Haible  <bruno@clisp.org>
47850
47851         * lib/copy-file.c: Include <stddef.h>, for size_t.
47852
47853 2003-04-21  Paul Eggert  <eggert@twinsun.com>
47854
47855         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
47856         code which expansion is under static control.  Patch imported from
47857         Akim Demaille's patch to Bison; see
47858         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
47859
47860 2003-04-14  Bruno Haible  <bruno@clisp.org>
47861
47862         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
47863
47864 2003-04-11  Jim Meyering  <jim@meyering.net>
47865
47866         Merge changes from Coreutils.
47867
47868         2003-03-22  Jim Meyering  <jim@meyering.net>
47869
47870         * lib/strftime.c (widen): Cast alloca return value to proper type.
47871
47872         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
47873
47874         From GNU libc.
47875         * lib/strftime.c (my_strftime): Handle very large width
47876         specifications for numeric values correctly.  Improve checks for
47877         overflow.
47878
47879         2003-01-19  Jim Meyering  <jim@meyering.net>
47880
47881         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
47882         definitions.
47883         (nl_get_alt_digit) [! defined my_strftime]: Define.
47884         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
47885         _nl_get_alt_digit and _nl_get_walt_digit.
47886
47887         * lib/strftime.c (my_strftime): Merge in locale-related changes from
47888         libc. These changes have no effect outside of _LIBC.
47889
47890 2003-04-10  Bruno Haible  <bruno@clisp.org>
47891
47892         * modules/findprog: New file.
47893         * MODULES.html.sh (func_all_modules): Add it.
47894
47895 2003-04-10  Bruno Haible  <bruno@clisp.org>
47896
47897         * m4/findprog.m4: New file.
47898         * m4/eaccess.m4: New file.
47899
47900 2003-04-10  Bruno Haible  <bruno@clisp.org>
47901
47902         * lib/findprog.h: New file, from GNU gettext.
47903         * lib/findprog.c: New file, from GNU gettext.
47904
47905 2003-04-05  Jim Meyering  <jim@meyering.net>
47906
47907         Merge changes from Coreutils.
47908
47909         * lib/exclude.h (PARAMS): Remove definition and uses.
47910         * lib/exclude.c: Remove uses of `PARAMS'.
47911
47912         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
47913         Add test-cases for DOS filenames. Declare program_name.
47914         (main): Set up program_name.  Patch by Rich Dawe.
47915
47916         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
47917         error from mntctl.
47918         Use mntctl's return value to drive the entry-processing loop, since
47919         we can't rely on the value of the vmt_length member in the last
47920         entry.  On some systems doing so could result in exhausting
47921         virtual memory.  Based in part on a patch from Mike Jetzer.
47922
47923 2003-04-04  Bruno Haible  <bruno@clisp.org>
47924
47925         * modules/linebreak: New file.
47926         * MODULES.html.sh (func_all_modules): Add it.
47927
47928 2003-04-04  Bruno Haible  <bruno@clisp.org>
47929
47930         * m4/linebreak.m4: New file.
47931
47932 2003-04-04  Bruno Haible  <bruno@clisp.org>
47933
47934         * lib/linebreak.h: New file, from GNU gettext.
47935         * lib/linebreak.c: New file, from GNU gettext with slight
47936         modifications.
47937         * lib/lbrkprop.h: New file, from GNU gettext.
47938
47939 2003-04-03  Bruno Haible  <bruno@clisp.org>
47940
47941         * modules/utf8-ucs4: New file.
47942         * modules/utf16-ucs4: New file.
47943         * modules/ucs4-utf8: New file.
47944         * modules/ucs4-utf16: New file.
47945         * MODULES.html.sh (func_all_modules): Add them.
47946
47947 2003-04-03  Bruno Haible  <bruno@clisp.org>
47948
47949         * m4/utf-ucs4.m4: New file.
47950         * m4/ucs4-utf.m4: New file.
47951
47952 2003-04-03  Bruno Haible  <bruno@clisp.org>
47953
47954         * lib/utf8-ucs4.h: New file, from GNU gettext.
47955         * lib/utf16-ucs4.h: New file, from GNU gettext.
47956         * lib/ucs4-utf8.h: New file, from GNU gettext.
47957         * lib/ucs4-utf16.h: New file, from GNU gettext.
47958
47959 2003-04-02  Bruno Haible  <bruno@clisp.org>
47960
47961         * modules/binary-io: New file.
47962         * MODULES.html.sh (func_all_modules): Add it.
47963
47964 2003-04-02  Bruno Haible  <bruno@clisp.org>
47965
47966         * lib/binary-io.h: New file, from GNU gettext.
47967
47968 2003-04-01  Bruno Haible  <bruno@clisp.org>
47969
47970         * modules/pathname: New file.
47971         * MODULES.html.sh (func_all_modules): Add it.
47972
47973 2003-04-01  Bruno Haible  <bruno@clisp.org>
47974
47975         * lib/pathname.h: New file, from GNU gettext.
47976         * lib/concatpath.c: New file, from GNU gettext.
47977
47978 2003-03-30  Bruno Haible  <bruno@clisp.org>
47979
47980         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
47981
47982 2003-03-30  Bruno Haible  <bruno@clisp.org>
47983
47984         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
47985         function chown() doesn't exist.
47986
47987 2003-03-28  Bruno Haible  <bruno@clisp.org>
47988
47989         * modules/copy-file: New file.
47990         * MODULES.html.sh (func_all_modules): Add it.
47991
47992 2003-03-28  Bruno Haible  <bruno@clisp.org>
47993
47994         * m4/copy-file.m4: New file.
47995
47996 2003-03-28  Bruno Haible  <bruno@clisp.org>
47997
47998         * lib/copy-file.h: New file, from GNU gettext.
47999         * lib/copy-file.c: New file, from GNU gettext.
48000
48001 2003-03-18  Jim Meyering  <jim@meyering.net>
48002
48003         * lib/quote.c (quote_n): Fix typo in comment.
48004
48005 2003-03-18  Bruno Haible  <bruno@clisp.org>
48006
48007         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
48008         checking.
48009         * m4/onceonly_2_57.m4: Likewise.
48010
48011 2003-03-17  Bruno Haible  <bruno@clisp.org>
48012
48013         * m4/onceonly.m4: Require autoconf 2.54 or newer.
48014         (m4_quote): Remove macro.
48015         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
48016
48017 2003-03-14  Jim Meyering  <jim@meyering.net>
48018
48019         Merge changes from Coreutils.
48020         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
48021         to be const, in order to avoid warnings.
48022         (obstack_room): Likewise.
48023         (obstack_empty_p): Likewise.
48024
48025 2003-03-14  Bruno Haible  <bruno@clisp.org>
48026
48027         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
48028         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
48029
48030 2003-03-13  Paul Eggert  <eggert@twinsun.com>
48031
48032         Merge changes from Bison.
48033         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
48034         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
48035         when compiling Bison 1.875's `bitset bset = obstack_alloc
48036         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
48037         * lib/hash.c: Include <stdbool.h> unconditionally.
48038
48039 2003-03-13  Paul Eggert  <eggert@twinsun.com>
48040
48041         * m4/onceonly.m4 (m4_quote): New macro.
48042         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
48043         Quote AC_FOREACH variable-expansions properly.
48044
48045 2003-03-13  Paul Eggert  <eggert@twinsun.com>
48046
48047         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
48048
48049 2003-03-09  Paul Eggert  <eggert@twinsun.com>
48050
48051         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
48052         Reported by Bruce Becker; see:
48053         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
48054
48055 2003-03-03  Paul Eggert  <eggert@twinsun.com>
48056             Bruno Haible  <bruno@clisp.org>
48057
48058         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
48059         Reported by John Hughes, see
48060         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
48061
48062 2003-02-20  Bruno Haible  <bruno@clisp.org>
48063
48064         * MODULES.html.sh (func_all_modules): Add poll.
48065
48066 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
48067
48068         * modules/poll: New file.
48069
48070 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
48071
48072         * lib/poll_.h: New file.
48073         * lib/poll.c: New file.
48074
48075 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
48076
48077         * m4/poll.m4: New file.
48078
48079 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
48080
48081         * modules/mathl: New file.
48082
48083 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
48084
48085         * lib/mathl.h: New file.
48086         * lib/acosl.c: New file.
48087         * lib/asinl.c: New file.
48088         * lib/atanl.c: New file.
48089         * lib/ceill.c: New file.
48090         * lib/cosl.c: New file.
48091         * lib/expl.c: New file.
48092         * lib/floorl.c: New file.
48093         * lib/frexpl.c: New file.
48094         * lib/ldexpl.c: New file.
48095         * lib/logl.c: New file.
48096         * lib/sincosl.c: New file.
48097         * lib/sinl.c: New file.
48098         * lib/sqrtl.c: New file.
48099         * lib/tanl.c: New file.
48100         * lib/trigl.c: New file.
48101         * lib/trigl.h: New file.
48102
48103 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
48104
48105         * m4/mathl.m4: New file.
48106
48107 2003-02-18  Bruno Haible  <bruno@clisp.org>
48108
48109         * MODULES.html.sh (func_all_modules): Add mathl.
48110
48111 2003-02-17  Bruno Haible  <bruno@clisp.org>
48112
48113         * modules/mkdtemp: New module.
48114         * MODULES.html.sh (func_all_modules): Add it.
48115
48116 2003-02-17  Bruno Haible  <bruno@clisp.org>
48117
48118         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
48119
48120 2003-02-17  Bruno Haible  <bruno@clisp.org>
48121
48122         * lib/mkdtemp.h: New file, from GNU gettext.
48123         * lib/mkdtemp.c: New file, from GNU gettext.
48124
48125 2003-02-02  Jim Meyering  <jim@meyering.net>
48126
48127         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
48128         e.g. glibc-2.2.93.
48129
48130 2003-01-31  Bruno Haible  <bruno@clisp.org>
48131
48132         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
48133         'rpl_rename'.
48134         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
48135         'rpl_strnlen'.
48136         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
48137         'rpl_strtod'.
48138         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
48139         'rpl_utime'.
48140
48141 2003-01-31  Bruno Haible  <bruno@clisp.org>
48142
48143         * lib/rename.c: #undef rename before defining rpl_rename.
48144         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
48145
48146 2003-01-30  Bruno Haible  <bruno@clisp.org>
48147
48148         * modules/vasnprintf, modules/vasprintf: New modules.
48149         * MODULES.html.sh (func_all_modules): Add them.
48150
48151 2003-01-30  Bruno Haible  <bruno@clisp.org>
48152
48153         * m4/signed.m4: New file, from GNU gettext.
48154         * m4/longdouble.m4: New file, from GNU gettext.
48155         * m4/wchar_t.m4: New file, from GNU gettext.
48156         * m4/wint_t.m4: New file, from GNU gettext.
48157         * m4/vasnprintf.m4: New file.
48158         * m4/vasprintf.m4: New file.
48159
48160 2003-01-30  Bruno Haible  <bruno@clisp.org>
48161
48162         * lib/printf-args.h: New file, from GNU gettext.
48163         * lib/printf-args.c: New file, from GNU gettext.
48164         * lib/printf-parse.h: New file, from GNU gettext.
48165         * lib/printf-parse.c: New file, from GNU gettext.
48166         * lib/vasnprintf.h: New file, from GNU gettext.
48167         * lib/vasnprintf.c: New file, from GNU gettext.
48168         * lib/asnprintf.c: New file, from GNU gettext.
48169         * lib/vasprintf.h: New file, from GNU gettext with modifications.
48170         * lib/vasprintf.c: New file, from GNU gettext.
48171         * lib/asprintf.c: New file, from GNU gettext.
48172
48173 2003-01-29  Bruno Haible  <bruno@clisp.org>
48174
48175         * modules/stpncpy: New module.
48176         * MODULES.html.sh (func_all_modules): Add it.
48177
48178 2003-01-29  Bruno Haible  <bruno@clisp.org>
48179
48180         * m4/stpncpy.m4: New file.
48181
48182 2003-01-29  Bruno Haible  <bruno@clisp.org>
48183
48184         * lib/stpncpy.h: New file, from GNU gettext with modifications.
48185         * lib/stpncpy.c: New file, from GNU gettext with modifications.
48186
48187 2003-01-28  Bruno Haible  <bruno@clisp.org>
48188
48189         * modules/c-ctype: New module.
48190         * MODULES.html.sh (func_all_modules): Add it.
48191
48192 2003-01-28  Bruno Haible  <bruno@clisp.org>
48193
48194         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
48195         Paul Eggert.
48196         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
48197         Paul Eggert.
48198
48199 2003-01-27  Bruno Haible  <bruno@clisp.org>
48200
48201         * modules/xsetenv: New module.
48202         * MODULES.html.sh (func_all_modules): Add it.
48203
48204 2003-01-27  Bruno Haible  <bruno@clisp.org>
48205
48206         * lib/xsetenv.h: New file, from GNU gettext.
48207         * lib/xsetenv.c: New file, from GNU gettext.
48208
48209 2003-01-23  Jim Meyering  <jim@meyering.net>
48210
48211         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
48212         from working on systems without dirfd (at least Irix and OSF1/Tru64).
48213
48214 2003-01-23  Bruno Haible  <bruno@clisp.org>
48215
48216         * modules/minmax: New module.
48217         * MODULES.html.sh (func_all_modules): Add it.
48218
48219 2003-01-23  Bruno Haible  <bruno@clisp.org>
48220
48221         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
48222         Eggert.
48223
48224 2003-01-22  Bruno Haible  <bruno@clisp.org>
48225
48226         * modules/exit: New module.
48227         * MODULES.html.sh (func_all_modules): Add it.
48228
48229 2003-01-22  Bruno Haible  <bruno@clisp.org>
48230
48231         * lib/exit.h: New file, from GNU gettext.
48232
48233 2003-01-19  Bruno Haible  <bruno@clisp.org>
48234
48235         * gnulib-tool: Recognize option --extract-maintainer.
48236         (func_get_maintainer): New function.
48237         * modules/*: Add Maintainer entry.
48238
48239 2003-01-16  Jim Meyering  <jim@meyering.net>
48240
48241         * m4/regex.m4: The `regex' struct is both input and output.
48242         Initialize it before each use.  Patch by Tim Waugh.
48243
48244 2003-01-16  Bruno Haible  <bruno@clisp.org>
48245
48246         * MODULES.html.sh: Add a table of contents. Add the module name as
48247         leftmost column. Add hyperlinks.
48248
48249 2003-01-15  Bruno Haible  <bruno@clisp.org>
48250
48251         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
48252
48253 2003-01-15  Bruno Haible  <bruno@clisp.org>
48254
48255         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
48256         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
48257         suffix.
48258
48259 2003-01-15  Bruno Haible  <bruno@clisp.org>
48260
48261         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
48262
48263 2003-01-15  Bruno Haible  <bruno@clisp.org>
48264
48265         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
48266         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
48267
48268 2003-01-14  Jim Meyering  <jim@meyering.net>
48269
48270         * lib/same.c (same_name): Tweak a comment.
48271
48272 2003-01-14  Bruno Haible  <bruno@clisp.org>
48273
48274         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
48275         when a string comparison is sufficient.
48276
48277 2003-01-14  Bruno Haible  <bruno@clisp.org>
48278
48279         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
48280         'unsigned int'.
48281
48282 2003-01-14  Bruno Haible  <bruno@clisp.org>
48283
48284         * lib/hash-pjw.c: Add comment about low quality of this function.
48285
48286 2003-01-13  Bruno Haible  <bruno@clisp.org>
48287
48288         * modules/stpcpy: Distribute lib/stpcpy.h.
48289         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
48290
48291 2003-01-13  Bruno Haible  <bruno@clisp.org>
48292
48293         * modules/*: Add a description.
48294         * modules/strpbrk: Fix Makefile.am snippet.
48295         * modules/strtoimax: Fix dependencies.
48296         * modules/strtoumax: Likewise.
48297
48298 2003-01-13  Bruno Haible  <bruno@clisp.org>
48299
48300         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
48301         * modules/alloca (Makefile.am): All object files depend on alloca.h.
48302         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
48303
48304 2003-01-13  Bruno Haible  <bruno@clisp.org>
48305
48306         * gnulib-tool (func_create_testdir): Store config/* files in the main
48307         directory.
48308         * config.rpath: Move to ...
48309         * config/config.rpath: ... here.
48310         * modules/gettext: Contains config/config.rpath, not config.rpath.
48311         * modules/iconv: Likewise.
48312
48313 2003-01-12  Paul Eggert  <eggert@twinsun.com>
48314
48315         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
48316         to avoid collisions with libcurses and libreadline.
48317
48318         * m4/getstr.m4: Remove.
48319         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
48320
48321 2003-01-12  Paul Eggert  <eggert@twinsun.com>
48322
48323         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
48324         to avoid collisions with libcurses and libreadline.
48325
48326         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
48327         * lib/getstr.h, getstr.c: Remove.
48328         * lib/getline.c: Include "getline.h", to check interface.
48329         Move body of old getstr.c here: this defines MIN_CHUNK and
48330         declares getdelim2, which is renamed from getstr.
48331         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
48332
48333         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
48334         All uses changed.
48335         * lib/linebuffer.h: Likewise.
48336         (readline): Remove backward-compatibility macro.
48337
48338 2003-01-12  Paul Eggert  <eggert@twinsun.com>
48339
48340         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
48341         to avoid collisions with libcurses and libreadline.
48342         * getstr: Remove.
48343         * MODULES.html.sh: Remove getstr.
48344         * modules/getline: Depend on unlocked-io, not getstr.
48345
48346 2003-01-12  Jim Meyering  <jim@meyering.net>
48347
48348         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
48349
48350 2003-01-10  Bruno Haible  <bruno@clisp.org>
48351
48352         * modules/alloca: Change Makefile.am requirements. Simplify Include
48353         requirements. Add lib/alloca_.h to file list.
48354
48355 2003-01-10  Bruno Haible  <bruno@clisp.org>
48356
48357         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
48358
48359 2003-01-10  Bruno Haible  <bruno@clisp.org>
48360
48361         * lib/alloca_.h: New file.
48362         * lib/getdate.y: Unconditionally include alloca.h.
48363         * lib/makepath.c: Likewise.
48364         * lib/setenv.c: Likewise.
48365         * lib/userspec.c: Likewise.
48366
48367 2003-01-09  Karl Berry  <karl@gnu.org>
48368
48369         * MODULES.html.sh: include `dirname $0` in PATH, to find
48370         gnulib-tool.
48371
48372 2003-01-09  Bruno Haible  <bruno@clisp.org>
48373
48374         * modules/stdbool: Change configure.ac, Makefile.am requirements.
48375         Simplify Include requirements. Add lib/stdbool.h.in to file list.
48376
48377 2003-01-09  Bruno Haible  <bruno@clisp.org>
48378
48379         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
48380
48381 2003-01-09  Bruno Haible  <bruno@clisp.org>
48382
48383         * lib/stdbool.h.in: New file.
48384
48385 2003-01-09  Bruno Haible  <bruno@clisp.org>
48386
48387         * gnulib-tool (func_all_modules): Ignore files ending in ~.
48388         * MODULES.html.sh: Likewise.
48389
48390 2003-01-08  Jim Meyering  <jim@meyering.net>
48391
48392         * lib/full-write.c: Undefine and define-away `const' after inclusion
48393         of errno.h, not before.  Suggestion from Bruno Haible.
48394
48395 2003-01-08  Bruno Haible  <bruno@clisp.org>
48396
48397         * modules/full-read: Depend on full-write.
48398
48399 2003-01-08  Bruno Haible  <bruno@clisp.org>
48400
48401         * lib/safe-read.c: Include specification header first, to ensure its
48402         selfcontainedness.
48403         * lib/full-write.c: Likewise.
48404
48405 2003-01-07  Jim Meyering  <jim@meyering.net>
48406
48407         * lib/full-write.c: Rework so that it may serve to define full_read,
48408         too.
48409         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
48410
48411 2003-01-07  Bruno Haible  <bruno@clisp.org>
48412
48413         * lib/strtoimax.c: Include <stdint.h> as an alternative to
48414         <inttypes.h>.
48415         * lib/xstrtol.h: Likewise.
48416         * lib/xstrtoimax.c: Likewise.
48417         * lib/xstrtoumax.c: Likewise.
48418         * lib/human.h: Likewise.
48419
48420         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
48421         on systems that have <inttypes.h> but not <stdint.h>.
48422
48423 2003-01-07  Bruno Haible  <bruno@clisp.org>
48424
48425         * MODULES.html.sh: Add copyright notice.
48426         (missed_files): Omit CVS directory entries.
48427         (func_module): Make it work with sed-3.02.
48428         * MODULES.txt: Remove file.
48429
48430 2003-01-06  Jim Meyering  <jim@meyering.net>
48431
48432         * lib/version-etc.c: Update year in translatable copyright string.
48433
48434 2003-01-03  Karl Berry  <karl@gnu.org>
48435
48436         * config/config.{guess,sub}: update from prep.
48437
48438 2003-01-02  Karl Berry  <karl@gnu.org>
48439
48440         * doc/COPYING.DOC: belatedly updated to 1.2.
48441
48442 2003-01-01  Karl Berry  <karl@gnu.org>
48443
48444         * gnulib-tool (func_verify_module): report module name $module in
48445         error message, not $1.
48446         * gnulib-tool (create-testdir): don't complain if destdir couldn't
48447         be created, only if it doesn't exist.
48448         * gnulib-tool (last_checkin_date): don't expand the $Date here.
48449
48450 2002-12-31  Paul Eggert  <eggert@twinsun.com>
48451
48452         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
48453
48454 2002-12-31  Paul Eggert  <eggert@twinsun.com>
48455
48456         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
48457         memcmp if strcoll doesn't work.
48458
48459 2002-12-31  Bruno Haible  <bruno@clisp.org>
48460
48461         * lib/utime.c (utime_null): No need to call ftruncate if the file was
48462         nonempty.
48463
48464 2002-12-31  Bruno Haible  <bruno@clisp.org>
48465
48466         * lib/memcoll.c (STRCOLL): New macro.
48467         (memcoll): Use it.
48468
48469 2002-12-31  Bruno Haible  <bruno@clisp.org>
48470
48471         * lib/localcharset.h: New file.
48472         * lib/localcharset.c: Include it.
48473         * lib/unicodeio.c: Likewise.
48474
48475 2002-12-31  Bruno Haible  <bruno@clisp.org>
48476
48477         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
48478         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
48479
48480 2002-12-31  Bruno Haible  <bruno@clisp.org>
48481
48482         * lib/getline.h: Include <stddef.h>, for size_t.
48483
48484         * lib/unicodeio.h: Include <stddef.h>, for size_t.
48485         * lib/unicodeio.c: Don't include <stddef.h>.
48486
48487 2002-12-31  Bruno Haible  <bruno@clisp.org>
48488
48489         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
48490         HAVE_TM_ZONE.
48491
48492 2002-12-24  Karl Berry  <karl@gnu.org>
48493
48494         * config/config.guess: update from prep.
48495
48496 2002-12-24  Bruno Haible  <bruno@clisp.org>
48497
48498         General infrasructure.
48499         * m4/README: Rewritten.
48500         * m4/onceonly.m4: New file.
48501         * m4/onceonly_2_57.m4: New file.
48502
48503         Module atexit.
48504         * m4/atexit.m4: New file.
48505
48506         Module strtod.
48507         * m4/strtod.m4: New file.
48508
48509         Module strtol.
48510         * m4/strtol.m4: New file.
48511
48512         Module strtoul.
48513         * m4/strtoul.m4: New file.
48514
48515         Module memchr.
48516         * m4/memchr.m4: New file.
48517
48518         Module memcmp.
48519         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
48520         (jm_FUNC_MEMCMP): Invoke it.
48521
48522         Module memcpy.
48523         * m4/memcpy.m4: New file.
48524
48525         Module memmove.
48526         * m4/memmove.m4: New file.
48527
48528         Module memset.
48529         * m4/memset.m4: New file.
48530
48531         Module strcspn.
48532         * m4/strcspn.m4: New file.
48533
48534         Module strpbrk.
48535         * m4/strpbrk.m4: New file.
48536
48537         Module strstr.
48538         * m4/strstr.m4: New file.
48539
48540         Module strerror.
48541         * m4/strerror.m4: New file.
48542
48543         Module mktime.
48544         * m4/mktime.m4: Renamed from jm-mktime.m4.
48545         (gl_PREREQ_MKTIME): New macro.
48546         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
48547
48548         Module malloc.
48549         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
48550         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
48551         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
48552
48553         Module realloc.
48554         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
48555         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
48556         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
48557
48558         Module strftime.
48559         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
48560         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
48561         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
48562         gl_TM_GMTOFF.
48563         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
48564
48565         Module xalloc.
48566         * m4/xalloc.m4: New file.
48567
48568         Module alloca.
48569         * m4/alloca.m4: New file.
48570
48571         Module putenv.
48572         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
48573         (jm_FUNC_PUTENV): Invoke it.
48574
48575         Module setenv.
48576         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
48577         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
48578         when invoked twice.
48579         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
48580         gt_FUNC_SETENV.
48581
48582         Module memrchr.
48583         * m4/memrchr.m4: New file.
48584
48585         Module stpcpy.
48586         * m4/stpcpy.m4: New file.
48587
48588         Module strcase.
48589         * m4/strcase.m4: New file.
48590
48591         Module strdup.
48592         * m4/strdup.m4: New file.
48593
48594         Module strnlen.
48595         * m4/strnlen.m4: New file.
48596
48597         Module strndup.
48598         * m4/strndup.m4: New file.
48599
48600         Module xstrtod.
48601         * m4/xstrtod.m4: New file.
48602
48603         Module xstrtol.
48604         * m4/xstrtol.m4: New file.
48605
48606         Module getdate.
48607         * m4/getdate.m4: New file.
48608
48609         Module unlocked-io.
48610         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
48611         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
48612         * m4/jm-glibc-io.m4n: Remove file.
48613
48614         Module long-options.
48615         * m4/long-options.m4: New file.
48616
48617         Module md5.
48618         * m4/md5.m4: New file.
48619
48620         Module sha.
48621         * m4/sha.m4: New file.
48622
48623         Module getstr.
48624         * m4/getstr.m4: New file.
48625
48626         Module getline.
48627         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
48628         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
48629         <sys/types.h>, for size_t. Use the function name gnu_getline, not
48630         simply getline. Infoke gl_PREREQ_GETLINE.
48631
48632         Module obstack.
48633         * m4/obstack.m4: New file.
48634
48635         Module hash.
48636         * m4/hash.m4: New file.
48637
48638         Module readtokens.
48639         * m4/readtokens.m4: New file.
48640
48641         Module strverscmp.
48642         * m4/strverscmp.m4: New file.
48643
48644         Module stdbool.
48645         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
48646         OSF/1.
48647
48648         Module strtoll.
48649         * m4/strtoll.m4: New file.
48650
48651         Module strtoull.
48652         * m4/strtoull.m4: New file.
48653
48654         Module strtoimax.
48655         * m4/strtoimax.m4: New file.
48656
48657         Module strtoumax.
48658         * m4/strtoumax.m4: New file.
48659
48660         Module xstrtoimax.
48661         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
48662         jm_AC_PREREQ_XSTRTOIMAX.
48663         Moved the strtol prerequisites to strtol.m4.
48664         Moved the strtoll prerequisites to strtoll.m4.
48665         Moved the strtoimax prerequisites to strtoimax.m4.
48666
48667         Module xstrtoumax.
48668         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
48669         jm_AC_PREREQ_XSTRTOUMAX.
48670         Moved the strtoul prerequisites to strtoul.m4.
48671         Moved the strtoull prerequisites to strtoull.m4.
48672         Moved the strtoumax prerequisites to strtoumax.m4.
48673
48674         Module chown.
48675         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
48676         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
48677
48678         Module dup2.
48679         * m4/dup2.m4: New file.
48680
48681         Module ftruncate.
48682         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
48683         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
48684
48685         Module getgroups.
48686         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
48687         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
48688
48689         Module gettimeofday.
48690         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
48691         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
48692         gl_PREREQ_GETTIMEOFDAY.
48693
48694         Module mkdir.
48695         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
48696         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
48697
48698         Module mkstemp.
48699         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
48700         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
48701         jm_AC_TYPE_UINTMAX_T.
48702         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
48703
48704         Module stat.
48705         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
48706         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
48707
48708         Module lstat.
48709         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
48710         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
48711
48712         Module timespec.
48713         * m4/timespec.m4 (gl_TIMESPEC): New macro.
48714         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
48715         * m4/st_mtim.m4: Indentation.
48716
48717         Module nanosleep.
48718         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
48719         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
48720         gl_PREREQ_NANOSLEEP.
48721
48722         Module regex.
48723         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
48724         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
48725         (gl_REGEX): New macro.
48726
48727         Module rename.
48728         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
48729         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
48730
48731         Module rmdir.
48732         * m4/rmdir.m4: New file.
48733
48734         Module utime.
48735         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
48736         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
48737         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
48738
48739         Module dirname.
48740         * m4/dirname.m4: New file.
48741
48742         Module getopt.
48743         * m4/getopt.m4: New file.
48744
48745         Module unistd-safer.
48746         * m4/unistd-safer.m4: New file.
48747
48748         Module fnmatch.
48749         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
48750         declaration.
48751         (gl_PREREQ_FNMATCH_EXTRA): New macro.
48752         (gl_FUNC_FNMATCH_POSIX): New macro.
48753         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
48754         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
48755         simply fnmatch.
48756
48757         Module exclude.
48758         * m4/exclude.m4: New file.
48759
48760         Module human.
48761         * m4/human.m4: New file.
48762
48763         Module acl.
48764         * m4/acl.m4: Nop.
48765
48766         Module backupfile.
48767         * m4/backupfile.m4: New file.
48768         * m4/d-ino.m4: Indentation.
48769
48770         Module fsusage.
48771         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
48772         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
48773         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
48774
48775         Module dirfd.
48776         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
48777         requirements.
48778
48779         Module euidaccess.
48780         * m4/euidaccess.m4: New file.
48781
48782         Module file-type.
48783         * m4/file-type.m4: New file.
48784
48785         Module fileblocks.
48786         * m4/fileblocks.m4: New file.
48787
48788         Module filemode.
48789         * m4/filemode.m4: New file.
48790
48791         Module isdir.
48792         * m4/isdir.m4: New file.
48793
48794         Module lchown.
48795         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
48796         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
48797
48798         Module makepath.
48799         * m4/makepath.m4: New file.
48800
48801         Module modechange.
48802         * m4/modechange.m4: New file.
48803
48804         Module mountlist.
48805         * m4/mountlist.m4: New file.
48806         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
48807         Indentation.
48808
48809         Module path-concat.
48810         * m4/path-concat.m4: New file.
48811
48812         Module pathmax.
48813         * m4/pathmax.m4: New file.
48814
48815         Module same.
48816         * m4/same.m4: New file.
48817
48818         Module save-cwd.
48819         * m4/save-cwd.m4: New file.
48820
48821         Module savedir.
48822         * m4/savedir.m4: New file.
48823
48824         Module xgetcwd.
48825         * m4/xgetcwd.m4: New file.
48826         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
48827
48828         Module xreadlink.
48829         * m4/xreadlink.m4: New file.
48830
48831         Module safe-read.
48832         * m4/safe-read.m4: New file.
48833
48834         Module safe-write.
48835         * m4/safe-write.m4: New file.
48836
48837         Module closeout.
48838         * m4/closeout.m4: New file.
48839
48840         Module stdio-safer.
48841         * m4/stdio-safer.m4: New file.
48842
48843         Module getpass.
48844         * m4/getpass.m4: New file.
48845
48846         Module getugroups.
48847         * m4/getugroups.m4: New file.
48848
48849         Module group-member.
48850         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
48851         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
48852
48853         Module idcache.
48854         * m4/idcache.m4: New file.
48855
48856         Module userspec.
48857         * m4/userspec.m4: New file.
48858
48859         Module gettime.
48860         * m4/clock_time.m4: New file.
48861         * m4/gettime.m4: New file.
48862
48863         Module settime.
48864         * m4/settime.m4: New file.
48865
48866         Module posixtm.
48867         * m4/posixtm.m4: New file.
48868
48869         Module gethostname.
48870         * m4/gethostname.m4: New file.
48871
48872         Module canon-host.
48873         * m4/canon-host.m4: New file.
48874
48875         Module gettext.
48876         * m4/codeset.m4: New file, from gettext-0.11.5.
48877         * m4/gettext.m4: New file, from gettext-0.11.5.
48878         * m4/glibc21.m4: New file, from gettext-0.11.5.
48879         * m4/iconv.m4: New file, from gettext-0.11.5.
48880         * m4/intdiv0.m4: New file, from gettext-0.11.5.
48881         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
48882         * m4/inttypes.m4: New file, from gettext-0.11.5.
48883         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
48884         * m4/isc-posix.m4: New file, from gettext-0.11.5.
48885         * m4/lcmessage.m4: New file, from gettext-0.11.5.
48886         * m4/lib-ld.m4: New file, from gettext-0.11.5.
48887         * m4/lib-link.m4: New file, from gettext-0.11.5.
48888         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
48889         * m4/progtest.m4: New file, from gettext-0.11.5.
48890         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
48891         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
48892         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
48893
48894         Module localcharset.
48895         * m4/localcharset.m4: New file.
48896
48897         Module hard-locale.
48898         * m4/hard-locale.m4: New file.
48899
48900         Module mbswidth.
48901         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
48902         onceonly macros.
48903         * m4/mbrtowc.m4: Add comment.
48904
48905         Module memcasecmp.
48906         * m4/memcasecmp.m4: New file.
48907
48908         Module memcoll.
48909         * m4/memcoll.m4: New file.
48910
48911         Module unicodeio.
48912         * m4/unicodeio.m4: New file.
48913
48914         Module rpmatch.
48915         * m4/rpmatch.m4: New file.
48916
48917         Module yesno.
48918         * m4/yesno.m4: New file.
48919
48920         Module exitfail.
48921         * m4/exitfail.m4: New file.
48922
48923         Module c-stack.
48924         * m4/c-stack.m4 (gl_C_STACK): New macro.
48925         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
48926
48927         Module error.
48928         * m4/error.m4 (gl_ERROR): New macro.
48929         (jm_PREREQ_ERROR): Use onceonly macros.
48930
48931         Module fatal.
48932         * m4/fatal.m4: New file.
48933
48934         Module getloadavg.
48935         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
48936         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
48937
48938         Module getpagesize.
48939         * m4/getpagesize.m4: New file.
48940
48941         Module getusershell.
48942         * m4/getusershell.m4: New file.
48943
48944         Module physmem.
48945         * m4/physmem.m4: New file.
48946
48947         Module posixver.
48948         * m4/posixver.m4: New file.
48949
48950         Module quotearg.
48951         * m4/quotearg.m4: New file.
48952
48953         Module quote.
48954         * m4/quote.m4: New file.
48955
48956         Module readutmp.
48957         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
48958
48959         Module sig2str.
48960         * m4/sig2str.m4: New file.
48961
48962         Other.
48963         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
48964         ulonglong.m4.
48965         * m4/intmax_t.m4: New file.
48966         * m4/d-type.m4: Indentation.
48967         * m4/jm-macros.m4: Update.
48968         * m4/prereq.m4 (jm_PREREQ): Update.
48969         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
48970         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
48971         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
48972         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
48973         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
48974         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
48975         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
48976         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
48977         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
48978         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
48979         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
48980         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
48981         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
48982         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
48983         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
48984         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
48985         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
48986         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
48987         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
48988
48989 2002-12-24  Bruno Haible  <bruno@clisp.org>
48990
48991         * MODULES.txt: Update according to m4/ changes.
48992
48993         Module gettext.
48994         * config.rpath: New file, from gettext-0.11.5.
48995
48996         * modules/*: New module descriptions.
48997         * gnulib-tool: New file.
48998         * MODULES.html.sh: New file.
48999
49000 2002-12-21  Karl Berry  <karl@gnu.org>
49001
49002         * doc/fdl.texi: update to version 1.2.
49003
49004 2002-12-19  Karl Berry  <karl@gnu.org>
49005
49006         * config/config.guess: update from prep.
49007
49008 2002-12-18  Bruno Haible  <bruno@clisp.org>
49009
49010         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
49011         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
49012
49013 2002-12-17  Bruno Haible  <bruno@clisp.org>
49014
49015         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
49016         stdlib.h, string.h.
49017
49018 2002-12-17  Bruno Haible  <bruno@clisp.org>
49019
49020         * lib/canon-host.c (strdup): Remove unused declaration.
49021
49022         * lib/fsusage.c: Include full_read.h.
49023         (get_fs_usage): Use full_read instead of safe_read.
49024
49025         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
49026
49027 2002-12-12  Karl Berry  <karl@gnu.org>
49028
49029         * config/config.guess: update from prep.
49030
49031 2002-12-11  Bruno Haible  <bruno@clisp.org>
49032
49033         * m4/setenv.m4: New file, from gettext-0.11.5.
49034
49035 2002-12-11  Bruno Haible  <bruno@clisp.org>
49036
49037         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
49038         not unsetenv().
49039         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
49040         modifications:
49041
49042         2002-12-11  Bruno Haible  <bruno@clisp.org>
49043
49044                 * setenv.c (alloca): Fall back to malloc.
49045                 (freea): New macro.
49046                 (setenv): Use freea() to free memory allocated with alloca().
49047
49048         2002-11-13  Bruno Haible  <bruno@clisp.org>
49049
49050                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
49051                 function declarations.
49052                 * unsetenv.c (unsetenv): Likewise.
49053
49054         2002-03-04  Bruno Haible  <bruno@clisp.org>
49055
49056                 Portability to AIX 4.3.3.
49057                 * unsetenv.c: New file, extracted from setenv.c.
49058                 * setenv.c: Move the unsetenv() function to unsetenv.c.
49059
49060         2001-12-20  Bruno Haible  <bruno@clisp.org>
49061
49062                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
49063                 use malloc instead. For SunOS 4.
49064
49065         2001-12-11  Bruno Haible  <bruno@clisp.org>
49066
49067                 * setenv.c: Declare alloca.
49068                 (compar_fn_t): New typedef.
49069                 (KNOWN_VALUE, STORE_VALUE): Use it.
49070
49071         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
49072         setenv.h.
49073
49074 2002-12-10  Paul Eggert  <eggert@twinsun.com>
49075
49076         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
49077         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
49078         Choose values that are less likely to collide with system fnmatch
49079         options.
49080         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
49081         defined (e.g., a pure POSIX system).
49082         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
49083         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
49084
49085 2002-12-06  Paul Eggert  <eggert@twinsun.com>
49086
49087         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
49088         a pain in practice to deal with generated m4 files.  This change
49089         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
49090
49091         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
49092         and jm-glibc-io.m4, as they are no longer a special case.
49093         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
49094         kludge and the auto-generation stuff.  Check only whether the
49095         functions are declared, not whether they exist, since older hosts
49096         that don't declare the functions can't use the optimization anyway.
49097
49098 2002-12-06  Jim Meyering  <jim@meyering.net>
49099
49100         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
49101
49102         Merge in changes from libc's misc/error.c, in preparation
49103         for the merge of gnulib's changes back into libc.
49104
49105         * lib/error.c (_): Define only if not already defined.
49106         Move definition to follow all #include directives.
49107         Include unlocked-io.h only if !_LIBC.
49108         [_LIBC]: Include <libio/libioP.h>.
49109         [USE_IN_LIBIO]: Include <libio/iolibio.h>
49110         (fflush): Tweak definition to use INTUSE.
49111         (putc): Define.
49112
49113 2002-12-05  Paul Eggert  <eggert@twinsun.com>
49114
49115         * lib/alloca.c [defined emacs]: Include "lisp.h".
49116         (xalloc_die) [defined emacs]: New macro.
49117         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
49118         [! defined emacs]: Include <xalloc.h>.
49119         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
49120         (pointer): Typedef to POINTER_TYPE *.
49121         (malloc): Remove decl; we now always use xmalloc.
49122         (alloca): Use old-style definition, since Emacs needs this.
49123         Check for arithmetic overflow when computing combined size.
49124
49125 2002-12-04  Paul Eggert  <eggert@twinsun.com>
49126
49127         Do not generate unlocked-io.h automatically, since it's easier to
49128         maintain it by hand.
49129
49130         * lib/unlocked-io.h: New file, from GNU diffutils,
49131         but with proper copyright notice and attribution.
49132         * lib/gen-uio: Remove.
49133         * lib/Makefile.am: Add copyright notice.
49134         (libfetish_a_SOURCES): Add unlocked-io.h.
49135         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
49136         (DISTCLEANFILES, io_functions): Remove macros.
49137         (EXTRA_DIST): Remove gen_uio.
49138         (unlocked-io.h): Remove rule.
49139
49140 2002-12-04  Jim Meyering  <jim@meyering.net>
49141
49142         Reflect the fact that stat.c and lstat.c are no longer generated.
49143         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
49144         (DISTCLEANFILES): Likewise.
49145         (EXTRA_DIST): Likewise.
49146         (all_local): Don't depend on stat.c or lstat.c.
49147         (stat.c, lstat.c): Remove rules.
49148         (EXTRA_DIST): Remove xstat.in.
49149
49150         * lib/xstat.in: Remove file.  Contents moved into stat.c.
49151         * lib/stat.c: New file.  Contents mostly from xstat.in.
49152         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
49153         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
49154
49155         * lib/safe-read.c: Rework so that it may serve to define safe_write,
49156         too.
49157         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
49158
49159 2002-12-03  Jim Meyering  <jim@meyering.net>
49160
49161         * lib/safe-read.c, safe-write.c: Change variable names and comments,
49162         but not semantics, to minimize the differences between these two files.
49163         (safe_read): Change comment to mention SAFE_READ_ERROR.
49164
49165         * lib/safe-read.c (IS_EINTR): Define.
49166         (safe_read): Use IS_EINTR in place of in-function cpp directives.
49167
49168 2002-12-02  Jim Meyering  <jim@meyering.net>
49169
49170         * lib/safe-read.c (EINTR): Define.
49171         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
49172         (INT_MAX): Provide fallback.
49173         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
49174
49175         * lib/safe-read.h (SAFE_READ_ERROR): Define.
49176
49177 2002-12-02  Bruno Haible  <bruno@clisp.org>
49178
49179         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
49180         Define, taken from safe-read.c.
49181         (INT_MAX): Provide fallback.
49182         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
49183         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
49184
49185         * lib/safe-read.c (EINTR): Remove definition.
49186         (safe_read): Don't use EINTR if it is absent.
49187
49188 2002-12-01  Jim Meyering  <jim@meyering.net>
49189
49190         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
49191         zero.
49192         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
49193
49194 2002-11-27  Paul Eggert  <eggert@twinsun.com>
49195
49196         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
49197         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
49198         with `if (! (value < limit)) abort ();', for readability.
49199
49200 2002-11-26  Karl Berry  <karl@gnu.org>
49201
49202         * lib/strdup.c: copy from libc again, with jim's ok.
49203         * lib/.cppi-disable: re-add strdup.c
49204
49205 2002-11-25  Karl Berry  <karl@gnu.org>
49206
49207         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
49208         instead of "strtol.c".
49209
49210 2002-11-25  Karl Berry  <karl@gnu.org>
49211
49212         * config/install-sh: update from automake for variable quoting, $0 in
49213         error msgs, etc.
49214
49215         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
49216         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
49217         entry.
49218
49219 2002-11-25  Jim Meyering  <jim@meyering.net>
49220
49221         * lib/mktime.c: Sync from libc, now that it has the latest fix.
49222
49223 2002-11-24  Karl Berry  <karl@gnu.org>
49224
49225         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
49226         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
49227
49228 2002-11-24  Jim Meyering  <jim@meyering.net>
49229
49230         Update from coreutils:
49231
49232         * lib/mktime.c: Merge in changes from libc.
49233
49234         Avoid a link-time failure on some Linux systems.
49235         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
49236         (otherwise).
49237         (__mon_yday): Declare with the STATIC attribute.
49238         (__mktime_internal): Likewise.
49239         Based on a report from Greg Schafer.
49240
49241 2002-11-23  Jim Meyering  <jim@meyering.net>
49242
49243         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
49244         Use `unsigned', not `int', as type of index.
49245
49246         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
49247
49248         * lib/fsusage.c: Remove unneeded parentheses around operands of
49249         `defined'.
49250
49251 2002-11-22  Paul Eggert  <eggert@twinsun.com>
49252
49253         * lib/quotearg.h: Allow multiple inclusion by surrounding with
49254         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
49255         so that we can be included first.
49256         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
49257         * lib/quotearg.c: Include quotearg.h immediately after config.h.
49258         No need to include stddef.h or sys/types.h any more.
49259         Surround local include files with "", not "<>".
49260         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
49261         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
49262         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
49263         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
49264         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
49265         (ISPRINT): Remove; no longer needed now that we assume C89.
49266
49267         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
49268         Preserve errno.
49269
49270         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
49271         quotearg_char): Use SIZE_MAX rather than
49272         (size_t) -1 when we are talking about "infinity".
49273
49274         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
49275
49276 2002-11-22  Paul Eggert  <eggert@twinsun.com>
49277
49278         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
49279         hint that one should use `if (! x) abort ();' rather than `assert
49280         (x);', and anyway it's one less thing to worry about configuring.
49281         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
49282         hash_rehash, hash_insert): Use abort rather than assert.
49283
49284 2002-11-22  Bruno Haible  <bruno@clisp.org>
49285
49286         * lib/safe-read.h: Assume C89. Add comments.
49287         (safe_read): Change return type to size_t.
49288         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
49289         byte counts > SSIZE_MAX correctly.
49290         * lib/safe-write.h: New file.
49291         * lib/safe-write.c: New file.
49292         * lib/full-read.h: New file.
49293         * lib/full-read.c: New file.
49294         * lib/full-write.h: Assume C89. Add comments.
49295         * lib/full-write.c: Include safe-write.h.
49296         (full_write): Rewritten to use safe_write.
49297         Suggested by Jim Meyering and Paul Eggert.
49298
49299 2002-11-21  Jim Meyering  <jim@meyering.net>
49300
49301         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
49302
49303         Merge in changes from the coreutils.
49304
49305         2002-09-25  Paul Eggert  <eggert@twinsun.com>
49306         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
49307         <stdint.h>.
49308         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
49309         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
49310         int.  Work more efficiently if X is the same width as uintmax_t.
49311         Do not compare X to -1, to avoid bogus compiler warning.
49312         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
49313         Don't assume that f_frsize and f_bsize are the same type.
49314
49315         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
49316         warning on FreeBSD.
49317
49318         * lib/makepath.c (make_path): Restore umask *before* creating the final
49319         component.
49320         (make_path): Minor reformatting.
49321
49322         * lib/xmalloc.c: Adjust to work with new autoconf macros,
49323         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
49324         HAVE_MALLOC/HAVE_REALLOC.
49325
49326         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
49327         dummy ones.  At least on GNU/Linux systems, `auto' means something
49328         else.
49329         From Michael Stone.
49330
49331 2002-11-21  Bruno Haible  <bruno@clisp.org>
49332
49333         Remove case insensitive option matching.
49334         * lib/argmatch.h (argcasematch): Remove declaration.
49335         (ARGCASEMATCH): Remove macro.
49336         (__xargmatch_internal): Remove case_sensitive argument.
49337         (XARGMATCH): Update.
49338         (XARGCASEMATCH): Remove macro.
49339         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
49340         case_sensitive argument.
49341         (argcasematch): Remove function.
49342         (__xargmatch_internal): Remove case_sensitive argument.
49343         (main): Use XARGMATCH instead of XARGCASEMATCH.
49344
49345         * lib/xmalloc.c: Change compile-time error message. Add comment about
49346         required autoconf version.
49347
49348 2002-11-20  Paul Eggert  <eggert@twinsun.com>
49349
49350         Merge argmatch cleanups from Bison.  Assume C89.
49351
49352         * lib/argmatch.c: Include config.h here, not in argmatch.h.
49353         Include stdlib.h, for EXIT_FAILURE.
49354         Always include <string.h>, since we assume C89.
49355         (EXIT_FAILURE): Remove pre-C89 bug workaround.
49356         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
49357         Include <stddef.h> instead, since it's all we need for size_t.
49358         (PARAMS): Remove.  All uses removed.
49359         (ARRAY_CARDINALITY): Do not bother to #undef.
49360         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
49361         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
49362         Remove unnecessary parentheses.
49363         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
49364         Insert necessary parentheses.
49365         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
49366         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
49367
49368 2002-11-19  Bruno Haible  <bruno@clisp.org>
49369
49370         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
49371         * lib/mbswidth.h: Include <stddef.h>, for size_t.
49372
49373         * lib/mbswidth.h (PARAMS): Remove macro.
49374         (mbswidth, mbsnwidth): Use ANSI C function declarations.
49375         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
49376
49377         * lib/gcd.h (PARAMS): Remove macro.
49378         (gcd): Use ANSI C function declarations.
49379         * lib/gcd.c (gcd): Likewise.
49380
49381 2002-11-15  Bruno Haible  <bruno@clisp.org>
49382
49383         * lib/strcspn.c: Include <stddef.h>.
49384         (strcspn): Use ANSI C function declaration. Change return type to
49385         size_t. Use NULL.
49386         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
49387         (strpbrk): Use NULL.
49388         * lib/strpbrk.h (PARAMS): Remove macro.
49389         (strpbrk): Use ANSI C function declaration.
49390         * lib/strstr.c: Don't include <sys/types.h>.
49391         * lib/strstr.h (PARAMS): Remove macro.
49392         (strstr): Use ANSI C function declarations.
49393
49394 2002-11-14  Karl Berry  <karl@gnu.org>
49395
49396         * config/mkinstalldirs: `do' on separate line, instead of
49397         `for var; do'.
49398
49399 2002-11-06  Bruno Haible  <bruno@clisp.org>
49400
49401         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
49402         * lib/gcd.c (gcd): Likewise.
49403
49404 2002-11-05  Bruno Haible  <bruno@clisp.org>
49405
49406         * lib/gcd.h: New file, from gettext-0.11.5.
49407         * lib/gcd.c: New file, from gettext-0.11.5.
49408
49409 2002-11-05  Bruno Haible  <bruno@clisp.org>
49410
49411         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
49412         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
49413         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
49414         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
49415
49416         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
49417         <libintl.h>.
49418         * lib/makepath.c: Include gettext.h instead of <locale.h> and
49419         <libintl.h>.
49420
49421         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
49422         * lib/human.c: Include gettext.h instead of <libintl.h>.
49423         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
49424         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
49425         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
49426         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
49427         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
49428         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
49429         (textdomain): Remove definition.
49430         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
49431
49432         * lib/long-options.c: Remove include of <libintl.h> and definition of
49433         _.
49434         * lib/same.c: Remove include of <libintl.h> and definition of _.
49435
49436 2002-11-04  Owen Taylor  <otaylor@redhat.com>
49437
49438         * lib/config.charset: A few additions for Solaris.
49439
49440 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
49441
49442         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
49443         * lib/localcharset.c (locale_charset): Declare as extern "C".
49444
49445 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
49446
49447         * lib/config.charset: msdos in uk_UA uses CP1125.
49448
49449 2002-11-04  Bruno Haible  <bruno@clisp.org>
49450
49451         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
49452         * lib/strcase.h: New file, from GNU gettext-0.11.5.
49453         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
49454         * lib/strstr.h: New file, from GNU gettext-0.11.5.
49455         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
49456
49457 2002-11-04  Bruno Haible  <bruno@clisp.org>
49458
49459         * lib/localcharset.c (locale_charset): Don't return an empty string.
49460
49461 2002-11-04  Bruno Haible  <bruno@clisp.org>
49462
49463         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
49464         aliases.
49465
49466 2002-11-04  Bruno Haible  <bruno@clisp.org>
49467
49468         * lib/config.charset: Update for newest glibc. Add canonical names
49469         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
49470
49471 2002-11-04  Bruno Haible  <bruno@clisp.org>
49472
49473         * lib/config.charset: Add support for NetBSD.
49474
49475 2002-11-04  Bruno Haible  <bruno@clisp.org>
49476
49477         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
49478
49479 2002-11-01  Bruno Haible  <bruno@clisp.org>
49480
49481         * configure.in: Add AC_CONFIG_AUX_DIR call.
49482         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
49483         test/Makefile.
49484         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
49485
49486 2002-09-28  Karl Berry  <karl@gnu.org>
49487
49488         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
49489         installed automake until the next release, since changes have been
49490         made.
49491
49492 2002-09-25  Karl Berry  <karl@gnu.org>
49493
49494         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
49495         * lib/getopt*: copy from libc/posix.
49496         * lib/gettext.h: copy from gettext.
49497         * lib/.cppi-disable: add strdup.c, gettext.h.
49498
49499 2002-09-25  Karl Berry  <karl@gnu.org>
49500
49501         * config/srclist.txt: enable gettext.h check.
49502         * config/config.{guess,sub}: update from prep.
49503         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
49504                 from automake 1.6.3.
49505         See srclist*.
49506
49507 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
49508
49509         * regex.c (PATFETCH): Remove the translating fetch.
49510         (PATFETCH_RAW): Rename to PATFETCH.
49511         (set_image_of_range): New fun.
49512         (SET_RANGE_TABLE_WORK_AREA): Use it.
49513         (regex_compile): Don't translate the pattern chars so eagerly.
49514         Only do it when inserting an `exactn' bytecode or when handling
49515         a char-range.
49516         (mutually_exclusive_p): Avoid empty statement.
49517
49518 2002-07-06  Jim Meyering  <meyering@lucent.com>
49519
49520         * m4/README: Don't mention Makefile.am.in.
49521         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
49522
49523 2002-07-01  Jim Meyering  <meyering@lucent.com>
49524
49525         * lib/c-stack.c: Include sys/time.h.
49526         From Volker Borchert.
49527
49528 2002-06-26  Paul Eggert  <eggert@twinsun.com>
49529
49530         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
49531
49532 2002-06-26  Paul Eggert  <eggert@twinsun.com>
49533
49534         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
49535         New macro.  Use it uniformly instead of
49536         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
49537         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
49538         reported by Vin Shelton.
49539
49540 2002-06-22  Paul Eggert  <eggert@twinsun.com>
49541
49542         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
49543         Do not assume SA_SIGINFO behavior.
49544         Bug reported by Jim Meyering on NetBSD 1.5.2.
49545
49546 2002-06-22  Jim Meyering  <meyering@lucent.com>
49547
49548         * m4/c-stack.m4: New file, from diffutils-2.8.2.
49549         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
49550
49551         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
49552         now that configure.ac uses AC_GNU_SOURCE.
49553         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
49554         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
49555
49556         Update to latest tools.  Suggestions from Paul Eggert.
49557         * m4/stdbool.m4: New file, from diffutils-2.8.2.
49558         * m4/gnu-source.m4: Update from diffutils-2.8.2.
49559         * m4/fnmatch.m4: Likewise.
49560         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
49561         to AC_HEADER_STDBOOL
49562
49563 2002-06-22  Jim Meyering  <meyering@lucent.com>
49564
49565         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
49566         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
49567
49568 2002-06-22  Jim Meyering  <meyering@lucent.com>
49569
49570         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
49571
49572         * lib/exitfail.c, exitfail.h: Likewise.
49573         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
49574
49575         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
49576         of fnmatch.h.
49577         (EXTRA_DIST): Add fnmatch_loop.c.
49578         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
49579
49580         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
49581         * lib/fnmatch.c: Update from diffutils-2.8.2.
49582         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
49583         * lib/fnmatch.h: Remove file.
49584
49585 2002-06-21  Jim Meyering  <meyering@lucent.com>
49586
49587         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
49588         * m4/mbrtowc.m4: Likewise.
49589
49590         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
49591         * m4/mbswidth.m4: Reflect name change:
49592         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
49593         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
49594
49595         * m4/lib-link.m4: Update from gettext-0.11.2.
49596         * m4/gettext.m4: Likewise.
49597
49598         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
49599         From Alfred M. Szmidt.
49600
49601 2002-06-18  Paul Eggert  <eggert@twinsun.com>
49602
49603         * lib/file-type.h: Report an error if neither S_ISREG nor
49604         S_IFREG is defined, instead of using a test specific to glibc
49605         2.2.  This should be safe, since POSIX requires S_ISREG and
49606         Unix Version 7 had S_IFREG.  We don't need to check for
49607         <sys/types.h> since we don't use any symbols that it defines.
49608
49609 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
49610
49611         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
49612         $@-t, so that each temporary file name is unique and valid in the first
49613         8 characters, for operation under DOS.
49614
49615 2002-06-15  Paul Eggert  <eggert@twinsun.com>
49616
49617         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
49618
49619 2002-06-15  Jim Meyering  <meyering@lucent.com>
49620
49621         Work even with DJGPP 2.03, which lacks support for symlinks.
49622         From Richard Dawe.
49623         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
49624         is defined.
49625         * lib/lchown.c (S_ISLNK): Likewise.
49626
49627 2002-06-15  Jim Meyering  <meyering@lucent.com>
49628
49629         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
49630         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
49631         have been included before this file.
49632
49633 2002-06-14  Jim Meyering  <meyering@lucent.com>
49634
49635         * lib/file-type.h: Use the version from diffutils-2.8.2.
49636         * lib/file-type.c: Likewise.
49637
49638 2002-06-07  Jim Meyering  <meyering@lucent.com>
49639
49640         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
49641         They're needed at least for NetBSD 1.5.2.
49642         ($statxfs_includes): Include those same headers.
49643         ($statxfs_includes): Include sys/vfs.h if available.
49644         ($statxfs_includes): Likewise for sys/statvfs.h.
49645         Check for the following members in both structs statfs and statvfs:
49646         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
49647
49648 2002-06-01  Jim Meyering  <meyering@lucent.com>
49649
49650         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
49651         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
49652
49653 2002-05-28  Jim Meyering  <meyering@lucent.com>
49654
49655         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
49656         Reported by Volker Borchert.
49657
49658 2002-05-27  Jim Meyering  <meyering@lucent.com>
49659
49660         Fix a problem seen only on nonconforming systems whereby ls.c's
49661         use of localtime, and then of gettimeofday would cause trouble:
49662         the localtime call used to initialize rpl_gettimeofday's save
49663         mechanism would clobber ls's current local time information so
49664         that in any long listing the first file would always be listed
49665         with date 1970-01-01.  Analysis by Volker Borchert.
49666
49667         * lib/gettimeofday.c (localtime): Undefine.
49668         (rpl_localtime): New function.
49669
49670 2002-05-27  Jim Meyering  <meyering@lucent.com>
49671
49672         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
49673         localtime.
49674
49675         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
49676         use the replacement function; it wouldn't resolve at link time.
49677         Reported by Volker Borchert.
49678
49679 2002-05-22  Jim Meyering  <meyering@lucent.com>
49680
49681         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
49682         file-type.h.
49683         * lib/file-type.h: New file.
49684         * lib/file-type.c (file_type): New file/function.  Extracted from
49685         diffutils.
49686
49687 2002-04-30  Jim Meyering  <meyering@lucent.com>
49688
49689         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
49690
49691 2002-04-29  Paul Eggert  <eggert@twinsun.com>
49692
49693         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
49694
49695 2002-04-29  Paul Eggert  <eggert@twinsun.com>
49696
49697         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
49698         Do not check for alloca.h (no longer used) or stdbool.h (was never
49699         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
49700
49701 2002-04-29  Paul Eggert  <eggert@twinsun.com>
49702
49703         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
49704
49705 2002-04-29  Jim Meyering  <meyering@lucent.com>
49706
49707         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
49708         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
49709         Use AC_FUNC_STRNLEN here instead.
49710
49711         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
49712         With autoconf-2.53a, it's part of AC_PROG_CC.
49713
49714 2002-04-28  Paul Eggert  <eggert@twinsun.com>
49715
49716         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
49717         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
49718
49719 2002-04-28  Paul Eggert  <eggert@twinsun.com>
49720
49721         * lib/sig2str.h, lib/sig2str.c: New files.
49722         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
49723
49724 2002-04-28  Paul Eggert  <eggert@twinsun.com>
49725
49726         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
49727         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
49728         of 127, since 64 is the largest conceivable number for ancient
49729         nonstandard hosts.
49730         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
49731
49732 2002-04-28  Jim Meyering  <meyering@lucent.com>
49733
49734         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
49735
49736 2002-04-24  Jim Meyering  <meyering@lucent.com>
49737
49738         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
49739         (jm_PREREQ): Use it.
49740
49741         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
49742         mach/mach.h fcntl.h.
49743         Check for this function: setlocale.
49744
49745 2002-04-24  Jim Meyering  <meyering@lucent.com>
49746
49747         * lib/gettext.h: New file, from Gettext.
49748         * lib/Makefile.am (INCLUDES): Remove -I../intl.
49749         (libfetish_a_SOURCES): Add gettext.h.
49750
49751 2002-04-16  Jim Meyering  <meyering@lucent.com>
49752
49753         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
49754         ut_pid, ut_id, ut_exit.
49755
49756 2002-04-16  Jim Meyering  <meyering@lucent.com>
49757
49758         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
49759         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
49760         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
49761
49762 2002-04-12  Jim Meyering  <meyering@lucent.com>
49763
49764         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
49765         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
49766         existence of the getmntinfo function.  Needed for Darwin 5.3.
49767
49768         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
49769         This is necessary at least on Darwin 5.3.
49770
49771         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
49772         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
49773         strnlen.o in the library, and that makes some versions of ranlib
49774         object.
49775
49776 2002-04-12  Jim Meyering  <meyering@lucent.com>
49777
49778         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
49779
49780 2002-04-09  Jim Meyering  <meyering@lucent.com>
49781
49782         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
49783         to be more precise.  Rather than saying we're checking whether the
49784         function `works', say what we're testing.
49785         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
49786         Reported by Bruno Haible.
49787
49788 2002-03-10  Jim Meyering  <meyering@lucent.com>
49789
49790         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
49791         Suggestion from Santiago Vila.
49792
49793 2002-03-08  Jim Meyering  <meyering@lucent.com>
49794
49795         * lib/rename.c: Mention that this wrapper is needed also on
49796         mips-dec-ultrix4.4 systems.
49797
49798 2002-03-02  Jim Meyering  <meyering@lucent.com>
49799
49800         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
49801         not HAVE_CLOCK_SETTIME.
49802
49803 2002-02-27  Paul Eggert  <eggert@twinsun.com>
49804
49805         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
49806         Check for clock_settime.
49807
49808 2002-02-27  Paul Eggert  <eggert@twinsun.com>
49809
49810         * lib/nanosleep.h: Rename to....
49811         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
49812
49813         * lib/gettime.c: New file.
49814         * lib/settime.c: New file.
49815         * lib/stime.c: Remove.
49816
49817         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
49818         timespec.h.  Remove nanosleep.h.
49819
49820 2002-02-25  Paul Eggert  <eggert@twinsun.com>
49821
49822         * m4/acl.m4: New file.
49823         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
49824         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
49825
49826 2002-02-25  Paul Eggert  <eggert@twinsun.com>
49827
49828         * lib/acl.c, lib/acl.h: New files.
49829         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
49830
49831 2002-02-24  Jim Meyering  <meyering@lucent.com>
49832
49833         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
49834         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
49835         cause trouble.  Reported by Nelson Beebe.
49836
49837 2002-02-23  Paul Eggert  <eggert@twinsun.com>
49838
49839         * lib/path-concat.c (xpath_concat): Reorder code to pacify
49840         compilers that don't know that xalloc_die never returns.
49841
49842 2002-02-20  Jim Meyering  <meyering@lucent.com>
49843
49844         * lib/getdate.c: Regenerate using bison-1.33.
49845
49846 2002-02-17  Jim Meyering  <meyering@lucent.com>
49847
49848         * config/config.guess (main): Don't use `head -1'; it's no longer
49849         portable. Use `sed 1q' instead.
49850
49851 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
49852
49853         * m4/codeset.m4: Upgrade to gettext-0.11.
49854         * m4/gettext.m4: Upgrade to gettext-0.11.
49855         * m4/glibc21.m4: Upgrade to gettext-0.11.
49856         * m4/iconv.m4: Upgrade to gettext-0.11.
49857         * m4/isc-posix.m4: Upgrade to gettext-0.11.
49858         * m4/lcmessage.m4: Upgrade to gettext-0.11.
49859         * m4/lib-ld.m4: New file, from gettext-0.11.
49860         * m4/lib-link.m4: New file, from gettext-0.11.
49861         * m4/lib-prefix.m4: New file, from gettext-0.11.
49862         * m4/progtest.m4: Upgrade to gettext-0.11.
49863
49864 2002-02-15  Paul Eggert  <eggert@twinsun.com>
49865
49866         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
49867         (jm_PREREQ): Use it.
49868
49869 2002-02-15  Paul Eggert  <eggert@twinsun.com>
49870
49871         * lib/posixver.c, lib/posixver.h: New files.
49872         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
49873
49874 2002-02-02  Paul Eggert  <eggert@twinsun.com>
49875             Bruno Haible  <bruno@clisp.org>
49876
49877         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
49878         (fwrite_success_callback): New declaration.
49879         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
49880         print_unicode_char. Call failure callback instead of error.
49881         (fwrite_success_callback): New function.
49882         (exit_failure_callback): New function.
49883         (fallback_failure_callback): New function.
49884         (print_unicode_char): Call unicode_to_mb.
49885
49886 2002-01-26  Jim Meyering  <meyering@lucent.com>
49887
49888         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
49889         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
49890
49891 2002-01-26  Jim Meyering  <meyering@lucent.com>
49892
49893         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
49894
49895 2002-01-22  Paul Eggert  <eggert@twinsun.com>
49896
49897         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
49898
49899 2002-01-22  Jim Meyering  <meyering@lucent.com>
49900
49901         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
49902         Otherwise, some versions of automake would omit the rule that makes
49903         Makefile from Makefile.in.
49904
49905 2002-01-21  Paul Eggert  <eggert@twinsun.com>
49906
49907         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
49908         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
49909         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
49910         (memcoll): Set errno to zero if there is no error.
49911
49912         * lib/quotearg.c (quotearg_buffer_restyled):
49913         Fix bug with quoting buffers containing NUL when backslashing escapes.
49914         This bug was exposed by the other changes in this patch.
49915         (quotearg_n_options): New arg ARGSIZE.
49916         All callers changed.
49917         (quoting_options_from_style): New function.
49918         (quotearg_n_style): Use it.
49919         (quotearg_n_style_mem): New function.
49920
49921         * lib/quotearg.h (quotearg_n_style_mem): New function.
49922
49923 2002-01-19  Jim Meyering  <meyering@lucent.com>
49924
49925         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
49926         Remove useless quotes: DF_PROG="df".
49927         * m4/strnlen.m4: New file.
49928
49929 2002-01-16  Paul Eggert  <eggert@twinsun.com>
49930
49931         * lib/backupfile.c (ISDIGIT): Comment fix.
49932         * lib/getdate.y (ISDIGIT): Likewise.
49933         * lib/posixtm.c (ISDIGIT, year): Likewise.
49934         * lib/strverscmp.c (ISDIGIT): Likewise.
49935         * lib/userspec.c (ISDIGIT): Likewise.
49936
49937 2002-01-16  Jim Meyering  <meyering@lucent.com>
49938
49939         * lib/getdate.y: Add three semicolons, each just before a closing
49940         brace. Bison (as of version 1.31) no longer papers over that mistake.
49941
49942 2002-01-05  Jim Meyering  <meyering@lucent.com>
49943
49944         * lib/version-etc.c (version_etc_copyright): Update copyright year.
49945
49946 2001-12-19  Paul Eggert  <eggert@twinsun.com>
49947
49948         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
49949         not silently exit merely because the output buffer happens to
49950         have nothing pending.
49951
49952 2001-12-18  Paul Eggert  <eggert@twinsun.com>
49953
49954         See the big note in ../ChangeLog.
49955         * lib/human.c (suffixes): Prefer K to k for 1024.
49956         (generate_suffix_backwards): New function.
49957         (human_readable_inexact): Use it.
49958         * lib/xstrtol.c (__xstrtol): If there is no number but there
49959         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
49960         Accept 'K' as well as 'k'.
49961
49962 2001-12-15  Jim Meyering  <meyering@lucent.com>
49963
49964         * lib/regex.h (__restrict_arr): Update from libc.
49965
49966         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
49967         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
49968         (STREQ): Define.
49969
49970 2001-12-14  Jim Meyering  <meyering@lucent.com>
49971
49972         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
49973         Suggestion from Bruno Haible.
49974
49975 2001-12-10  Jim Meyering  <meyering@lucent.com>
49976
49977         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
49978         xrealloc, Instead, include "xalloc.h".
49979         (initbuffer): Don't cast xmalloc return value to char*.
49980         (readline): Reword comment.
49981         Don't cast xrealloc return value to char*
49982         Return NULL, not 0.
49983
49984 2001-12-09  Jim Meyering  <meyering@lucent.com>
49985
49986         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
49987         about `signed and unsigned type in conditional expression'.
49988         * lib/posixtm.c (posix_time_parse): Likewise.
49989
49990         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
49991
49992         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
49993         to avoid a pedantic warning.
49994
49995         * lib/getstr.c: Don't include assert.h.
49996         (getstr): Remove warning-evoking assertions.
49997         Return -1 if offset parameter is out of bounds.
49998         Change the type of a local from int to size_t.
49999
50000         * lib/strftime.c (my_strftime_localtime_r): Include this function
50001         definition in the `#if ! HAVE_TM_GMTOFF' block.
50002
50003         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
50004         Include xalloc.h instead.
50005
50006 2001-12-02  Jim Meyering  <meyering@lucent.com>
50007
50008         * lib/tempname.c: Don't declare getenv, thus reverting the change of
50009         2001-11-18.  It's no longer necessary, now that stdlib.h is always
50010         included.
50011
50012         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
50013         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
50014
50015 2001-11-30  Akim Demaille  <akim@epita.fr>
50016
50017         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
50018         before being defined.
50019
50020 2001-11-27  Paul Eggert  <eggert@twinsun.com>
50021
50022         * lib/quotearg.h (quotearg_n, quotearg_n_style):
50023         First arg is int, not unsigned.
50024         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
50025         (SIZE_MAX, UINT_MAX): New macros.
50026         (quotearg_n_options): Abort if N is negative.
50027         Avoid overflow check on hosts where size_t is 64 bits and int
50028         is 32 bits, as overflow is impossible there.
50029         Fix off-by-one typo that caused unnecessary reallocation.
50030
50031 2001-11-27  Jim Meyering  <meyering@lucent.com>
50032
50033         * lib/tempname.c: Merge with version from libc.
50034         * lib/regex.c: Likewise.
50035
50036         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
50037         systems for which STDC_HEADERS is 0, it was not included, resulting in
50038         a warning about an integer-to-pointer conversion problem with getenv.
50039         Reported by Volker Borchert.
50040
50041 2001-11-26  Jim Meyering  <meyering@lucent.com>
50042
50043         * lib/gtod.h: Remove file.
50044         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
50045         * lib/gettimeofday.c: Don't include gtod.h.
50046         (GTOD_init): Remove function.
50047         (rpl_gettimeofday): Do its job here instead, rather than aborting.
50048         Suggestion from Volker Borchert.
50049
50050 2001-11-23  Jim Meyering  <meyering@lucent.com>
50051
50052         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
50053         it.
50054         * lib/hash.c (struct hash_table): Define it here instead.
50055
50056 2001-11-22  Jim Meyering  <meyering@lucent.com>
50057
50058         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
50059
50060 2001-11-20  Jim Meyering  <meyering@lucent.com>
50061
50062         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
50063         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
50064
50065 2001-11-19  Jim Meyering  <meyering@lucent.com>
50066
50067         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
50068         directory.  Use "conftestXXXXXX" as the template.
50069         Suggestion from Paul Eggert.
50070
50071         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
50072         immediately, so the test doesn't mistakenly hit the max-open-files
50073         limit.
50074
50075 2001-11-18  Paul Eggert  <eggert@twinsun.com>
50076
50077         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
50078         (TEMPORARIES): New macro.
50079         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
50080         removes an artificial limitation (e.g. HP-UX 10.20, where
50081         TMP_MAX is 17576).
50082
50083 2001-11-18  Jim Meyering  <meyering@lucent.com>
50084
50085         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
50086
50087 2001-11-18  Jim Meyering  <meyering@lucent.com>
50088
50089         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
50090         on SunOS 4.
50091
50092         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
50093         files will be created before anything else.
50094
50095 2001-11-17  Paul Eggert  <eggert@twinsun.com>
50096
50097         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
50098         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
50099
50100 2001-11-17  Jim Meyering  <meyering@lucent.com>
50101
50102         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
50103         Prompted by a report from Bob Proulx.
50104
50105         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
50106         Instead, require UTILS_FUNC_MKSTEMP.
50107
50108 2001-11-17  Jim Meyering  <meyering@lucent.com>
50109
50110         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
50111         Now, that's done as part of AC_FUNC_STRTOD.
50112
50113 2001-11-17  Jim Meyering  <meyering@lucent.com>
50114
50115         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
50116         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
50117         rather than group writable.  Patch by Juan F. Codagnone.
50118
50119         * lib/readtokens.c: Remove explicit declarations of xmalloc and
50120         xrealloc, Instead, include "xalloc.h".
50121
50122         * lib/mountlist.c: Include unlocked-io.h after all system headers.
50123         Remove explicit declarations of xmalloc, xrealloc,
50124         and xstrdup.  Instead, include "xalloc.h".
50125
50126         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
50127         unlocked-io.h.
50128         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
50129         Likewise.
50130         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
50131
50132         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
50133         Reported by Padraig Brady.
50134
50135         * lib/mkstemp.c: #undef mkstemp.
50136         Include config.h.
50137         (rpl_mkstemp): Rename from mkstemp.
50138         Protoize.
50139
50140 2001-11-16  Jim Meyering  <meyering@lucent.com>
50141
50142         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
50143         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
50144         determine the amount of total physical memory, use pstat_getstatic.
50145         HPUX-11 doesn't define _SC_PHYS_PAGES.
50146         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
50147         If sysconf couldn't be used to determine the amount of available
50148         physical memory, use both pstat_getstatic and pstat_getdynamic.
50149         Based on a patch from Bob Proulx.
50150
50151 2001-11-10  Jim Meyering  <meyering@lucent.com>
50152
50153         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
50154         (jm_PREREQ): Use it.
50155
50156 2001-11-09  Jim Meyering  <meyering@lucent.com>
50157
50158         * m4/jm-macros.m4: Require autoconf-2.52f.
50159         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
50160         Use these AC_-prefixed names, not the AM_-prefixed ones.
50161
50162         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
50163
50164 2001-11-05  Jim Meyering  <meyering@lucent.com>
50165
50166         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
50167
50168 2001-11-04  Jim Meyering  <meyering@lucent.com>
50169
50170         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
50171         $DEFS.
50172
50173 2001-11-03  Jim Meyering  <meyering@lucent.com>
50174
50175         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
50176         of AC_DEFUN.
50177
50178         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
50179         know the name of the variable in the macro definition.
50180
50181 2001-11-03  Jim Meyering  <meyering@lucent.com>
50182
50183         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
50184         in argmatch_to_argument call.
50185
50186         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
50187         argument.
50188
50189         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
50190         e.g., a fault due to an attempt to free a NULL pointer.
50191
50192 2001-11-01  Jim Meyering  <meyering@lucent.com>
50193
50194         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
50195         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
50196
50197 2001-11-01  Jim Meyering  <meyering@lucent.com>
50198
50199         * lib/dirfd.c, lib/dirfd.h: New files.
50200         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
50201
50202         * lib/hash.c (hash_print) [TESTING]: Clean up.
50203
50204 2001-10-22  Paul Eggert  <eggert@twinsun.com>
50205
50206         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
50207         to avoid a warning if -Wall.
50208
50209 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
50210
50211         * README: New file
50212         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
50213         (per RMS's instructions, this is now the canonical source)
50214         * lgpl/, gpl/: New directories.
50215
50216 2001-10-21  Paul Eggert  <eggert@twinsun.com>
50217
50218         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
50219
50220 2001-10-21  Jim Meyering  <meyering@lucent.com>
50221
50222         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
50223         this code would end up calling gettext even in packages built
50224         with --disable-nls.
50225         * lib/getopt.c (_): Likewise.
50226         * lib/regex.c (_): Likewise.
50227
50228 2001-10-20  Paul Eggert  <eggert@twinsun.com>
50229
50230         * m4/error.m4 (jm_PREREQ_ERROR):
50231         Do not invoke AC_CHECK_FUNCS with strerror_r, as
50232         AC_FUNC_STRERROR_R does that.
50233         Check for strerror declaration.
50234
50235         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
50236         are supposed to have them these days.
50237         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
50238         Merge changes from latest Autoconf CVS.
50239         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
50240         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
50241         POSIX decided to standardize on the int flavor of strerror_r.
50242
50243 2001-10-20  Paul Eggert  <eggert@twinsun.com>
50244
50245         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
50246         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
50247         Use strerror_r that is only a macro, even if it is not a function.
50248         (strerror): Check for HAVE_DECL_STRERROR before declaring.
50249         (private_strerror): Use prototypes, not old-style function definition.
50250         (print_errno_message): New function.
50251         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
50252         char*-flavored one.
50253         (error_tail, error, error_at_line): Use it.
50254
50255 2001-10-11  Jim Meyering  <meyering@lucent.com>
50256
50257         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
50258         and quote_n (1, ... to avoid clobbering a buffer.
50259
50260 2001-10-05  Jim Meyering  <meyering@lucent.com>
50261
50262         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
50263         hash-pjw.h.
50264         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
50265         * lib/hash-pjw.h: New file.
50266
50267 2001-09-30  Jim Meyering  <meyering@lucent.com>
50268
50269         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
50270         `struct fsstat' has the `f_fstypename' member.
50271         Use that to define FS_TYPE, which is now used to make
50272         the getfsstat link test tighter.
50273
50274 2001-09-30  Jim Meyering  <meyering@lucent.com>
50275
50276         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
50277         Include <sys/ucred.h>, for Apple Darwin.
50278         Include sys/mount.h and sys/fs_types.h only if available.
50279         (FS_TYPE): Define.
50280         (read_filesystem_list): Use FS_TYPE.
50281
50282 2001-09-29  Paul Eggert  <eggert@twinsun.com>
50283
50284         * lib/exclude.c (excluded_filename): 0 -> false, since it's
50285         a boolean context.
50286
50287 2001-09-29  Jim Meyering  <meyering@lucent.com>
50288
50289         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
50290         [one-argument getmntent function]): Include stdio.h before mntent.h.
50291         SunOS 4.1.x needs it for the declaration of `FILE'.
50292         Patch by Volker Borchert.
50293
50294         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
50295         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
50296         sys/fs_types.h, and make the link-test for getfsstat guard #include
50297         directives with appropriate #if HAVE_*_H tests so that we can
50298         detect getfsstat on Apple Darwin1.3.7 systems.
50299         Reported by Nelson Beebe.
50300         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
50301
50302 2001-09-28  Paul Eggert  <eggert@twinsun.com>
50303
50304         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
50305         #defines strtoimax.  Also treat the other strto* functions
50306         like strtoimax.
50307
50308         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
50309         Check for strtoul and strtoumax,
50310         as those declarations are made even in the signed case.
50311         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
50312         Likewise, for strtol and strtoimax.
50313
50314 2001-09-28  Paul Eggert  <eggert@twinsun.com>
50315
50316         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
50317         #defines strtoimax.  Also treat the other strto* functions
50318         like strtoimax.
50319
50320         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
50321         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
50322         (strtoimax, strtoumax): Do not declare if already defined as a macro.
50323
50324 2001-09-26  Jim Meyering  <meyering@lucent.com>
50325
50326         Most macros in unlocked-io.h had the wrong number of arguments.
50327         * lib/gen-uio: New script.
50328         (USE_UNLOCKED_IO): Define to 1 if not already defined.
50329         * lib/unlocked-io.hin: Remove file.
50330         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
50331         rather than trying to embed it here.
50332         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
50333         Reported by Padraig Brady.
50334
50335 2001-09-25  Volker Borchert  <bt@teknon.de>
50336
50337         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
50338         `result'.
50339
50340 2001-09-24  Jim Meyering  <meyering@lucent.com>
50341
50342         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
50343
50344 2001-09-23  Jim Meyering  <meyering@lucent.com>
50345
50346         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
50347         instead of the mere test for existence of mntent.h.  The latter
50348         would get a false-positive on AIX 3.4 systems.
50349         In the outer getmntent if-block, don't die if neither of the getmntent
50350         tests succeeds.  Instead, just fall through and continue with the
50351         remaining tests.
50352
50353 2001-09-23  Jim Meyering  <meyering@lucent.com>
50354
50355         * lib/mountlist.c: Remove useless parentheses in #if directives.
50356         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
50357         the deprecated MOUNTED symbol is no longer defined in mntent.h.
50358
50359 2001-09-22  Jim Meyering  <meyering@lucent.com>
50360
50361         * m4/gettext.m4: New file.  From gettext.
50362         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
50363         * m4/progtest.m4: Likewise
50364         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
50365         * m4/glibc21.m4: Likewise.
50366
50367         * m4/libintl.m4: Remove.  No longer used.
50368
50369 2001-09-22  Jim Meyering  <meyering@lucent.com>
50370
50371         * lib/localcharset.c: Update from latest gettext.
50372         * lib/config.charset: Likewise.
50373
50374 2001-09-20  Jim Meyering  <meyering@lucent.com>
50375
50376         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
50377         strtoimax.
50378         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
50379         strtoumax.
50380
50381 2001-09-20  Jim Meyering  <meyering@lucent.com>
50382
50383         * lib/xstrtol.c (strtoimax): Guard declaration with
50384         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
50385         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
50386         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
50387         (strtoumax): Likewise, for completeness (it wasn't necessary).
50388
50389 2001-09-17  Paul Eggert  <eggert@twinsun.com>
50390
50391         * lib/strtoimax.c (HAVE_LONG_LONG):
50392         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
50393         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
50394         to work around bug in IBM C compiler.
50395
50396 2001-09-17  Jim Meyering  <meyering@lucent.com>
50397
50398         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
50399         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
50400         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
50401         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
50402         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
50403         whenever the right hand side need not be expanded by the shell.
50404
50405 2001-09-16  Paul Eggert  <eggert@twinsun.com>
50406
50407         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
50408         library.  It's not correct, as some older glibcs are buggy.
50409         fnmatch wasn't fixed until glibc 2.2.
50410
50411         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
50412         special shell magic here.
50413
50414 2001-09-16  Jim Meyering  <meyering@lucent.com>
50415
50416         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
50417         * m4/jm-macros.m4: Require it.
50418
50419 2001-09-16  Jim Meyering  <meyering@lucent.com>
50420
50421         * lib/mkdir.c: New file.
50422
50423 2001-09-15  Jim Meyering  <meyering@lucent.com>
50424
50425         * m4/jm-macros.m4: Check for help2man.
50426
50427 2001-09-11  Jim Meyering  <meyering@lucent.com>
50428
50429         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
50430         The body, by Paul Eggert, was moved here from configure.in.
50431         * m4/jm-macros.m4: Require UTILS_HOST_OS.
50432
50433 2001-09-04  Paul Eggert  <eggert@twinsun.com>
50434
50435         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
50436         (jm_PREREQ): Use it.
50437
50438 2001-09-04  Paul Eggert  <eggert@twinsun.com>
50439
50440         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
50441         Use ssize_t, not int, to store result of readlink.
50442         Check for ssize_t overflow as well as size_t overflow,
50443         as POSIX says the result of readlink is implementation-defined
50444         when ssize_t overflows.
50445         Remove unnecessary cast to char*.
50446         Use free+malloc instead of realloc, as the storage doesn't need
50447         to be preserved and it's clearer and can be more efficient that way.
50448         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
50449         * lib/xreadlink.h (xreadlink): Update prototype.
50450
50451 2001-09-04  Paul Eggert  <eggert@twinsun.com>
50452
50453         * lib/xgetcwd.c: Revert some of the previous change; intead,
50454         fix the HAVE_GETCWD_NULL code to behave more like the
50455         !HAVE_GETCWD_NULL code used to.
50456
50457         Include "xalloc.h".
50458         (xgetcwd): Do not return NULL when memory is exhausted; instead,
50459         invoke xalloc_die.
50460
50461 2001-09-03  Paul Eggert  <eggert@twinsun.com>
50462
50463         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
50464         sys/param.h, as pathmax.h includes them.
50465
50466 2001-09-03  Paul Eggert  <eggert@twinsun.com>
50467
50468         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
50469         (jm_PREREQ_XGETCWD): New macro.
50470
50471         * m4/getcwd.m4: New file.
50472
50473 2001-09-03  Paul Eggert  <eggert@twinsun.com>
50474
50475         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
50476         like the HAVE_GETCWD_NULL code.
50477         Include pathmax.h if not HAVE_GETCWD.
50478         Do not include xalloc.h.
50479         (INITIAL_BUFFER_SIZE): New symbol.
50480         Do not use xmalloc / xrealloc, since the caller is responsible for
50481         handling errors.  Preserve errno around `free' during failure.
50482         Do not overrun buffer when using getwd.
50483
50484 2001-09-03  Paul Eggert  <eggert@twinsun.com>
50485
50486         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
50487         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
50488         getcwd (NULL, 0).
50489
50490 2001-09-03  Paul Eggert  <eggert@twinsun.com>
50491
50492         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
50493         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
50494         spotted by Jim Meyering.
50495
50496 2001-09-03  Jim Meyering  <meyering@lucent.com>
50497
50498         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
50499         failure.
50500
50501 2001-09-02  Jim Meyering  <meyering@lucent.com>
50502
50503         * lib/error.c: Update from GNU libc.
50504
50505 2001-09-01  Jim Meyering  <meyering@lucent.com>
50506
50507         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
50508         Used by df.
50509
50510 2001-09-01  Jim Meyering  <meyering@lucent.com>
50511
50512         * lib/xreadlink.c: New file.
50513         * lib/xreadlink.h: New file.
50514         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
50515         xreadlink.h.
50516
50517         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
50518         doesn't conflict with sparc Solaris 7's definition in
50519         /usr/include/sys/int_types.h.
50520
50521         * lib/exclude.c: Use `""', not `<>' to #include non-system header
50522         files.
50523         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
50524         and strncasecmp as r-values.  Unixware didn't have declarations.
50525
50526 2001-08-31  Paul Eggert  <eggert@twinsun.com>
50527
50528         * lib/xstrtol.h: Add copyright notice.
50529         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
50530         LONGINT_INVALID_SUFFIX_CHAR.
50531
50532 2001-08-31  Paul Eggert  <eggert@twinsun.com>
50533
50534         * lib/xstrtol.c (strtoimax): New decl.
50535
50536 2001-08-31  Paul Eggert  <eggert@twinsun.com>
50537
50538         * lib/xgetcwd.c: Don't include pathmax.h.
50539         Include stdlib.h and unistd.h if available.
50540         Include xalloc.h.
50541         (xmalloc, xstrdup, free): Remove decls.
50542         (xgetcwd): Don't assume sizes fit in unsigned.
50543         Check for overflow when computing sizes.
50544         Simplify reallocation code.
50545
50546 2001-08-31  Paul Eggert  <eggert@twinsun.com>
50547
50548         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
50549         a directory's st_size can have an arbitrary value, so the old
50550         usage could waste an arbitrary amount of memory.  All uses
50551         changed.
50552         * lib/savedir.h: Update prototype.
50553
50554 2001-08-31  Paul Eggert  <eggert@twinsun.com>
50555
50556         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
50557
50558         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
50559         old strtoimax.c.
50560
50561         Also, make the following further changes to make this file's
50562         configuration more similar to that of strtol.c:
50563         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
50564         (strtoumax, uintmax_t, strtoull, strtol): Remove.
50565         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
50566         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
50567         changed to signed values.
50568
50569         And make the following changes as well:
50570         Fix copyright notice, as 1999 was missing.
50571         (verify): New macro.
50572         (strtoimax): Check sizes at compile-time, not run-time.
50573         Prefer strtol to strtoll if both work.
50574         (main): Remove; it was not that useful and was a pain to maintain.
50575
50576         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
50577
50578 2001-08-31  Jim Meyering  <meyering@lucent.com>
50579
50580         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
50581         Use an initial, malloc'd, buffer of length 128 rather than
50582         a statically allocated one of length 1024.
50583
50584 2001-08-30  Paul Eggert  <eggert@twinsun.com>
50585
50586         Simplify code, partly by assuming autoconf 2.52 semantics.
50587
50588         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
50589
50590         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
50591         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
50592         All uses removed.
50593         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
50594         Move AC_REQUIRE to next-to-top level, to avoid confusion.
50595         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
50596         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
50597         jm_AC_HEADER_INTTYPES_H.
50598         * m4/jm-macros.m4 (jm_MACROS): Likewise.
50599
50600         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
50601
50602         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
50603         Quote first arg of AC_DEFUN.
50604         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
50605         since they are needed to parse the include file even if we need
50606         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
50607         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
50608         but with opposite signedness.
50609
50610 2001-08-30  Paul Eggert  <eggert@twinsun.com>
50611
50612         Merge 'exclude' changes from tar 1.13.22.
50613         This fixes one or two unlikely storage allocation overflow bugs,
50614         but doesn't change user-visible behavior otherwise.
50615
50616 2001-08-30  Paul Eggert  <eggert@twinsun.com>
50617
50618         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
50619         (jm_PREREQ_EXCLUDE): New macro.
50620
50621 2001-08-30  Paul Eggert  <eggert@twinsun.com>
50622
50623         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
50624         tm to be declared.
50625
50626 2001-08-30  Paul Eggert  <eggert@twinsun.com>
50627
50628         * lib/hash.c: Remove '2001' from copyright notice.
50629
50630 2001-08-30  Paul Eggert  <eggert@twinsun.com>
50631
50632         * lib/full-write.h: New file.
50633         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
50634         * lib/full-write.c: Correct credits, as cccp.c no longer
50635         exists and anyway it was so heavily changed from the old cccp
50636         code as to be unrecognizable.  Include full-write.h.
50637         (full_write) Return size_t, with short writes meaning failure.
50638         All callers changed.  This fixes a bug with large buffers
50639         on 64-bit hosts.
50640         * lib/utime.c: Include full-write.h.
50641
50642 2001-08-30  Paul Eggert  <eggert@twinsun.com>
50643
50644         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
50645         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
50646         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
50647         Include if available.
50648         (<xalloc.h>): Include
50649         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
50650         (verify): New macro.  Use it to verify that EXCLUDE macros do not
50651         collide with FNM macros.
50652         (struct patopts): New struct.
50653         (struct exclude): Use it, as exclude patterns now come with options.
50654         (new_exclude): Support above changes.
50655         (new_exclude, add_exclude_file):
50656         Initial size must now be a power of two to simplify overflow checking.
50657         (free_exclude, fnmatch_no_wildcards): New function.
50658         (excluded_filename): No longer requires options arg, as the options
50659         are determined by add_exclude.  Now returns bool, not int.
50660         (excluded_filename, add_exclude):
50661         Add support for the fancy new exclusion options.
50662         (add_exclude, add_exclude_file): Now takes int options arg.
50663         Check for arithmetic overflow when computing sizes.
50664         (add_exclude_file): xrealloc might modify errno, so don't
50665         realloc until after errno might be used.
50666
50667         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
50668         New macros.
50669         (free_exclude): New decl.
50670         (add_exclude, add_exclude_file): Now takes int options arg.
50671         (excluded_filename): No longer requires options arg, as the options
50672         are determined by add_exclude.  Now returns bool, not int.
50673
50674 2001-08-30  Paul Eggert  <eggert@twinsun.com>
50675
50676         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
50677
50678 2001-08-27  Jim Meyering  <meyering@lucent.com>
50679
50680         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
50681
50682         * lib/version-etc.c (N_): Remove definition.
50683         Revert most of last change.
50684         Instead, simply don't mark the `Copyright...' string for translation.
50685         Based on advice from Paul Eggert.
50686
50687         * lib/strtoxmax.c: Tweak comment.
50688
50689 2001-08-26  Jim Meyering  <meyering@lucent.com>
50690
50691         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
50692
50693         * m4/xstrtoimax.m4: New file.
50694         * m4/xstrtoumax.m4: Add comments explaining why we
50695         AC_REPLACE_FUNCS(strtol).
50696
50697 2001-08-26  Jim Meyering  <meyering@lucent.com>
50698
50699         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
50700         of copyright with `%s' so translators don't get an untranslated
50701         message in 2002.
50702         (COPYRIGHT_YEAR): Define.
50703         (version_etc): Use fprintf rather than fputs.
50704         Suggestion from Ulrich Drepper.
50705
50706         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
50707
50708         * lib/strtoll.c: New file, from GNU libc.
50709         * lib/xstrtoimax.c: New file.
50710
50711         * lib/xstrtol.h: Add xstrtoimax.
50712         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
50713         * lib/strtoimax.c: New file.  Likewise, but first define
50714         STRTOUXMAX_SIGNED.
50715
50716         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
50717         ...
50718         * lib/strtoxmax.c: ... then renamed to this.
50719
50720 2001-08-18  Paul Eggert  <eggert@twinsun.com>
50721
50722         * m4/inttypes.m4: Add AC_PREREQ(2.13).
50723         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
50724         (jm_AC_TYPE_INTMAX_T): New macro.
50725         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
50726
50727         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
50728
50729         * m4/longlong.m4: Renamed from ulonglong.m4.
50730         * m4/inttypes.m4: Renamed from inttypes_h.m4.
50731         * m4/uintmax_t.m4: Removed.
50732
50733 2001-08-13  Paul Eggert  <eggert@twinsun.com>
50734
50735         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
50736         Port to Solaris 8, where 'sed' requires a space after the 'r'
50737         command, and where sh dislikes "$/".  Clean up the spacing a bit.
50738         Redirect output to $tmp just once.
50739
50740 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
50741
50742         * lib/addext.c (<errno.h>): Include.
50743         (errno): Declare if not defined.
50744         (addext): Work correctly when pathconf returns -1 and leaves
50745         errno alone because there is no limit.  Also, work even if
50746         pathconf returns a value greater than SIZE_MAX.
50747
50748 2001-08-12  Jim Meyering  <meyering@lucent.com>
50749
50750         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
50751         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
50752         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
50753         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
50754         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
50755         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
50756         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
50757         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
50758         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
50759         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
50760         utime.m4, utimes.m4, xstrtoumax.m4:
50761         Quote the first argument in each use of AC_DEFUN.
50762
50763 2001-08-12  Jim Meyering  <meyering@lucent.com>
50764
50765         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
50766         Simply `return getcwd (NULL, 0);'.
50767         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
50768         Use 1300 as initial value for length, not PATH_MAX.
50769
50770         * lib/pathmax.h: Clean up cpp syntax.
50771
50772 2001-08-12  Jim Meyering  <meyering@lucent.com>
50773
50774         * lib/gettimeofday.c: New file.
50775         * lib/gtod.h: New file.
50776         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
50777
50778 2001-08-05  Jim Meyering  <meyering@lucent.com>
50779
50780         * m4/jm-macros.m4: Require autoconf-2.52.
50781
50782 2001-08-04  Jim Meyering  <meyering@lucent.com>
50783
50784         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
50785         stmt, to get in sync with glibc.
50786
50787 2001-08-03  Paul Eggert  <eggert@twinsun.com>
50788
50789         The following changes are from gettext 0.10.39 as maintained by
50790         Bruno Haible.
50791
50792         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
50793         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
50794         with inverted sense.  All uses changed.
50795
50796         * lib/mbswidth.c: Don't include <limits.h>.
50797         Include <stdlib.h> and <string.h> unconditionally.
50798         (iswcntrl, mbsinit, ISCNTRL): New macros.
50799         (mbsnwidth): Use K&R style function declarations.
50800         Don't bother checking for MB_LEN_MAX == 1, since the compiler
50801         can optimize it when MB_CUR_MAX == 1.
50802         The width of control characters is zero, not 1.
50803
50804 2001-08-03  Paul Eggert  <eggert@twinsun.com>
50805
50806         The following changes are from gettext 0.10.39 as maintained by
50807         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
50808
50809         * m4/codeset.m4: Upgrade to serial AM1.
50810         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
50811         all uses changed.  Quote first arg of AC_DEFUN.
50812         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
50813
50814         * m4/iconv.m4: Upgrade to serial AM2.
50815         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
50816         Add --with-libconv-prefix.
50817         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
50818         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
50819         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
50820         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
50821         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
50822
50823         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
50824         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
50825         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
50826         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
50827         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
50828         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
50829         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
50830         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
50831         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
50832
50833         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
50834         string.h any more.
50835
50836         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
50837         not the default value.
50838
50839         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
50840         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
50841         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
50842         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
50843         Also check for iswcntrl, used for wcwidth fallback.
50844         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
50845         to Autoconf 2.13.
50846
50847 2001-08-03  Jim Meyering  <meyering@lucent.com>
50848
50849         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
50850         as it was in the original.  Reported by Paul Eggert.
50851
50852 2001-07-16  Jim Meyering  <meyering@lucent.com>
50853
50854         * m4/gettimeofday.m4: New file.
50855         Prompted by a report from Bernhard Baehr.
50856
50857 2001-07-15  Jim Meyering  <meyering@lucent.com>
50858
50859         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
50860         stuff. Now it's in ../Makefile.cfg.
50861
50862 2001-07-15  Jim Meyering  <meyering@lucent.com>
50863
50864         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
50865         (BUILT_SOURCES): Add unlocked-io.h.
50866         (io_functions): Define.
50867         (unlocked-io.h): New rule.
50868         (DISTCLEANFILES): Add unlocked-io.h.
50869         (all-local): Depend on unlocked-io.h, to ensure it is created.
50870
50871         * lib/unlocked-io.hin: New file
50872
50873         * lib/regex.c: Update from glibc.
50874
50875 2001-07-05  Jim Meyering  <meyering@lucent.com>
50876
50877         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
50878         recommendation.
50879         (libfetish_a_SOURCES): Put all .h files here instead.
50880         Remove a thus-exposed (better checks in automake) duplicate and
50881         two unnecessary .h files.
50882
50883 2001-07-04  Jim Meyering  <meyering@lucent.com>
50884
50885         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
50886         that generates jm-glibc-io.m4 so that it doesn't trigger any make
50887         distcheck failure.
50888
50889 2001-07-02  Jim Meyering  <meyering@lucent.com>
50890
50891         The following changes were prompted by suggestions from Bruno Haible.
50892
50893         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
50894         is now generated.
50895         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
50896         definition of EXTRA_DIST.
50897         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
50898         ensure that the generated file is created/updated whenever the list
50899         of $(unlocked_functions) is changed.
50900         (jm-glibc-io.m4): New rule.
50901         (unlocked-io.h): New rule -- currently unused.
50902
50903 2001-06-24  Jim Meyering  <meyering@lucent.com>
50904
50905         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
50906         unmatched right bracket, rather than kludging it with an extra,
50907         falsely-matching quote in a comment.  Patch by Akim Demaille.
50908
50909 2001-06-11  Jim Meyering  <meyering@lucent.com>
50910
50911         * lib/regex.c: Update from GNU libc.
50912
50913 2001-05-27  Jim Meyering  <meyering@lucent.com>
50914
50915         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
50916         Check for ut_type in struct utmp.
50917
50918 2001-05-27  Jim Meyering  <meyering@lucent.com>
50919
50920         * lib/readutmp.h (UT_TYPE): Define.
50921
50922 2001-05-24  Jim Meyering  <meyering@lucent.com>
50923
50924         * lib/argmatch.c: Include "quote.h".
50925         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
50926         quote function.  Reported by Göran Uddeborg.
50927
50928 2001-05-22  Jim Meyering  <meyering@lucent.com>
50929
50930         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
50931         now that we use the package-supplied version unconditionally.
50932         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
50933
50934 2001-05-21  Jim Meyering  <meyering@lucent.com>
50935
50936         * m4/regex.m4: Change a couple backticks to single quotes to avoid
50937         shell syntax errors.
50938
50939 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
50940
50941         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
50942
50943 2001-05-20  Paul Eggert  <eggert@twinsun.com>
50944
50945         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
50946         Don't bother to check library strftime, since
50947         we'll be using our own my_strftime function anyway.
50948         Define my_strftime instead of strftime.
50949
50950 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
50951
50952         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
50953         which is not yet declared.
50954
50955 2001-05-15  Jim Meyering  <meyering@lucent.com>
50956
50957         * m4/regex.m4: Use proper quoting so brackets appear in the test
50958         program.
50959         Reported by, and with help from, Bruno Haible.
50960
50961 2001-05-13  Jim Meyering  <meyering@lucent.com>
50962
50963         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
50964         undefined.
50965
50966 2001-05-11  Paul Eggert  <eggert@twinsun.com>
50967
50968         dirname code cleanup.  base_name now behaves more compatibly
50969         with POSIX basename when given file names that have trailing
50970         slashes, and similarly for dir_name.  Add new primitives
50971         base_len and dir_len.  Put the directory-name-related decls
50972         into dirname.h.
50973
50974         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
50975         * lib/backupfile.c (base_name): Likewise.
50976         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
50977         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
50978         * lib/makepath.c (strip_trailing_slashes): Likewise.
50979         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
50980         ISSLASH): Likewise.
50981         * lib/rename.c (strip_trailing_slashes): Likewise.
50982         * lib/same.c (base_name): Likewise.
50983         * lib/stripslash.c (ISSLASH): Likewise.
50984
50985         * lib/addext.c: Include <dirname.h> after size_t is defined.
50986         * lib/backupfile.c: Likewise.
50987
50988         * lib/addext.c (addext): Use base_len to trim redundant
50989         trailing slashes instead of doing it ourselves.
50990         But do not trim the last slash if it is not redundant.
50991
50992         * lib/backupfile.c (find_backup_file_name,
50993         max_backup_version): Use base_len instead of rolling it ourselves.
50994         Handle the case of "" and (on DOS) "C:" correctly.
50995
50996         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
50997         needed. Include <string.h>, <dirname.h>.
50998         (base_name): Allow file names ending in slashes, other than names
50999         that are all slashes.  In this case, return the basename followed
51000         by the slashes.  This is more general, and can be used in places
51001         where the original base_name purposely had an assertion failure.
51002         (base_len): New function.
51003
51004         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
51005         Do not include <assert.h>; no longer needed.
51006         Include xalloc.h.
51007         (memrchr): Remove decl.
51008         (dir_name_r): Remove.
51009         (dir_len): Renamed from dirlen.  All callers changed.
51010         Rewrite in terms of base_name, for simplicity and consistency.
51011         (dir_name): Never return NULL.  All callers changed.
51012         Do not include <stdlib.h> in test program; no longer needed.
51013         return 0; is fine for test program.
51014
51015         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
51016         New macros.
51017         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
51018
51019         * lib/path-concat.c (path_concat): Use base_len to compute
51020         base length, not strlen; this means we cannot rely on memcpy
51021         to null-terminate.
51022
51023         * lib/same.c (STREQ): Remove.
51024         (same_name): Handle the case where the basename ends in trailing '/'.
51025
51026         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
51027         a slash was stripped.  Do not strip the last slash after a
51028         file system prefix.
51029
51030 2001-05-11  Paul Eggert  <eggert@twinsun.com>
51031
51032         * lib/Makefile.am (libfetish_a_SOURCES):
51033         Add strftime.c, since we now compile it on all hosts.
51034
51035         * lib/strftime.c (my_strftime):
51036         Define to nstrftime if emacs, but only if my_strftime is not defined.
51037         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
51038         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
51039         Add one more extra argument: a nanoseconds value.
51040         All uses changed.
51041         (ns): New macro.
51042         (my_strftime function): Add %N format.
51043         (emacs_strftimeu): Renamed from emacs_strftime,
51044         with extra ut argument.
51045
51046 2001-05-09  Paul Eggert  <eggert@twinsun.com>
51047
51048         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
51049
51050 2001-04-21  Jim Meyering  <meyering@lucent.com>
51051
51052         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
51053         doesn't interfere.
51054
51055 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
51056
51057         * m4/ftruncate.m4: Check for chsize.
51058         Link with ftruncate.o unconditionally if ftruncate is missing.
51059         This was required when cross-compiling to i586-mingw32msvc.
51060
51061 2001-04-08  Jim Meyering  <meyering@lucent.com>
51062
51063         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
51064         recomputed; that's necessary when the offset spans a DST transition.
51065         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
51066
51067 2001-04-02  Jim Meyering  <meyering@lucent.com>
51068
51069         * lib/regex.h, regex.c: Update from GNU libc.
51070
51071 2001-03-24  Jim Meyering  <meyering@lucent.com>
51072
51073         * m4/jm-macros.m4: Require autoconf-2.49d.
51074
51075 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
51076
51077         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
51078
51079 2001-03-19  Paul Eggert  <eggert@twinsun.com>
51080
51081         * lib/version-etc.c (version_etc_copyright): Update to 2001.
51082
51083 2001-03-17  Jim Meyering  <meyering@lucent.com>
51084
51085         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
51086         now that the version in autoconf is equivalent.
51087         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
51088
51089         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
51090         Suggestion from Akim Demaille.
51091
51092         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
51093         (jm_PREREQ_TEMPNAME): New function.
51094
51095 2001-03-16  Paul Eggert  <eggert@twinsun.com>
51096
51097         * lib/tempname.c (uint64_t): Define to uintmax_t if
51098         not defined, and if UINT64_MAX is not defined.
51099         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
51100         Reported by John David Anglin.
51101
51102 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
51103
51104         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
51105         resolve alias if codeset is empty.
51106         * lib/config.charset (BeOS): Use wildcard syntax.
51107
51108 2001-03-13  Jim Meyering  <meyering@lucent.com>
51109
51110         * lib/path-concat.c (path_concat)
51111         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
51112         concatenating e.g., `C:' and `foo'.
51113         From Bruno Haible.
51114
51115 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
51116
51117         * lib/localcharset.c (locale_charset): Don't use
51118         setlocale(LC_CTYPE,NULL). Don't return NULL.
51119         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
51120
51121 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
51122
51123         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
51124         support for DOS/DJGPP.
51125
51126 2001-03-01  Paul Eggert  <eggert@twinsun.com>
51127
51128         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
51129         lacks mkstemp.  Compile our own tempname.c if we compile our own
51130         mkstemp.c, as mkstemp relies on tempname.
51131
51132 2001-03-01  Jim Meyering  <meyering@lucent.com>
51133
51134         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
51135         AH_VERBATIM really does output its argument verbatim.
51136
51137 2001-02-28  Paul Eggert  <eggert@twinsun.com>
51138
51139         * lib/Makefile.am (libfetish_a_SOURCES):
51140         Add dup-safer.c, fopen-safer.c.
51141         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
51142
51143         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
51144         * lib/unistd-safer.h: New files.
51145
51146 2001-02-25  Paul Eggert  <eggert@twinsun.com>
51147
51148         The mkstemp replacement is taken from glibc 2.2.2, with some
51149         portability fixes for use outside glibc, as follows:
51150
51151         * lib/tempname.c (struct_stat64): New macro.
51152         (direxists, __gen_tempname): Use it.
51153         This avoids a portability problem with Solaris 8.
51154
51155         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
51156         (<stddef.h>, <stdint.h>, <string.h>):
51157         Include only if STDC_HEADERS || _LIBC.
51158         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
51159         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
51160         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
51161         (__set_errno): Define this macro if <errno.h> doesn't.
51162         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
51163         Define these macros if <stdio.h> doesn't.
51164         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
51165         Define these macros if <sys/stat.h>
51166         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
51167         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
51168         __xstat64): Define if not _LIBC.
51169         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
51170         (__gen_tempname): Invoke gettimeofday only if
51171         HAVE_GETTIMEOFDAY || _LIBC;
51172         otherwise, fall back on plain "time".
51173         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
51174
51175         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
51176
51177         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
51178
51179 2001-02-18  Paul Eggert  <eggert@twinsun.com>
51180
51181         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
51182
51183 2001-02-17  Paul Eggert  <eggert@twinsun.com>
51184
51185         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
51186         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
51187         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
51188         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
51189
51190 2001-02-17  Paul Eggert  <eggert@twinsun.com>
51191
51192         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
51193         Remove workaround macros for hosts that have mbrtowc but not
51194         mbstate_t, as we now insist on proper declarations for both
51195         before using mbrtowc.
51196
51197 2001-02-17  Jim Meyering  <meyering@lucent.com>
51198
51199         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
51200         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
51201         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
51202         UnixWare 7.1.1.
51203
51204         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
51205         rather than AC_CACHE_VAL.
51206
51207 2001-02-17  Jim Meyering  <meyering@lucent.com>
51208
51209         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
51210         around included file name.
51211
51212         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
51213
51214         * lib/strftime.c: Update from GNU libc (the only changes were to
51215         comments).
51216
51217 2001-02-17  Jim Meyering  <meyering@lucent.com>
51218
51219         * lib/regex.c: Update from libc.
51220
51221 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
51222
51223         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
51224         clash.
51225
51226 2001-02-16  Paul Eggert  <eggert@twinsun.com>
51227
51228         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
51229         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
51230         Reported by Mark Hounschell via Paul Eggert.
51231
51232 2001-02-07  Jim Meyering  <meyering@lucent.com>
51233
51234         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
51235
51236 2001-02-05  Jim Meyering  <meyering@lucent.com>
51237
51238         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
51239         it includes the patch required for `large file' support with at least
51240         HP-UX's 10.20 /bin/cc.
51241
51242 2001-02-03  Jim Meyering  <meyering@lucent.com>
51243
51244         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
51245         AS_IF, now that it works once again (mysteriously).
51246         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
51247
51248 2001-01-30  Jim Meyering  <meyering@lucent.com>
51249
51250         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
51251         * m4/chown.m4: Rename conftestchown to conftest.chown.
51252         * m4/rename.m4: s/conftestdir/conftest.d1/ and
51253         s/conftestdir2/conftest.d2/.
51254         * m4/utimes.m4: s/conftestdata/conftest.data/
51255         Inspired by Pavel Roskin's change in autoconf.
51256
51257 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
51258
51259         * lib/config.charset: Update for FreeBSD 4.2.
51260
51261 2001-01-27  Jim Meyering  <meyering@lucent.com>
51262
51263         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
51264         a use of AS_IF.
51265         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
51266
51267 2001-01-26  Jim Meyering  <meyering@lucent.com>
51268
51269         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
51270         quotearg.c includes it.
51271
51272 2001-01-26  Jim Meyering  <meyering@lucent.com>
51273
51274         * lib/quotearg.c: Include stddef.h.
51275         * lib/quote.c: Include stddef.h.
51276         Reported by Axel Kittenberger.
51277
51278         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
51279         line in double quotes so that it evokes a better diagnostic.
51280         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
51281         Reported by Axel Kittenberger.
51282
51283 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
51284
51285         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
51286         as if it was a `charset'.
51287
51288 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
51289
51290         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
51291         has const.
51292
51293 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
51294
51295         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
51296         to avoid a warning.  Add back 'const' to inptr.
51297
51298 2001-01-20  Jim Meyering  <meyering@lucent.com>
51299
51300         Be sure that headers are checked before used in code compiled
51301         for the type checks.
51302         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
51303         In place of that, invoke jm_CHECK_ALL_TYPES.
51304         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
51305         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
51306         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
51307         The check for ssize_t was mistakenly run before the test for unistd.h.
51308
51309         The configure-time check for stdbool.h was missing.
51310         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
51311         (jm_PREREQ_HASH): New function.
51312
51313 2001-01-17  Jim Meyering  <meyering@lucent.com>
51314
51315         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
51316         for autoconf-2.49c.
51317         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
51318
51319 2001-01-16  Jim Meyering  <meyering@lucent.com>
51320
51321         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
51322         From Bruno Haible.
51323
51324 2001-01-14  Jim Meyering  <meyering@lucent.com>
51325
51326         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
51327         foo and bar.  Create conftestdir/ in the script, not in the C code.
51328         Remove directories in the script, not in the C code.
51329         Remove conftestdir{,2} before trying to create the directory.
51330         Make the entire configure script fail if the mkdir fails.
51331
51332 2001-01-14  Jim Meyering  <meyering@lucent.com>
51333
51334         * lib/rename.c: New file.  From Volker Borchert.
51335         Include stdlib.h, string.h or strings.h, and xalloc.h.
51336         Use strip_trailing_slashes rather than open-coding it.
51337
51338 2001-01-03  Paul Eggert  <eggert@twinsun.com>
51339
51340         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
51341
51342 2001-01-03  Jim Meyering  <meyering@lucent.com>
51343
51344         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
51345         of local `inptr' to avoid warning with some system declarations of
51346         iconv.
51347
51348 2001-01-02  Volker Borchert  <bt@teknon.de>
51349
51350         * m4/rename.m4: New file.
51351         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
51352
51353 2001-01-01  Jim Meyering  <meyering@lucent.com>
51354
51355         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
51356         even on systems with utmpx.h.  It's necessary for the declaration of
51357         utmp's ut_user member.  Reported by Andreas Jaeger.
51358
51359         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
51360         available. They are required for the declarations of getgrgid and
51361         getpwuid resp.
51362         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
51363         Reported by Andreas Jaeger.
51364
51365 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
51366
51367         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
51368         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
51369         so `make install' also works in VPATH builds.
51370
51371 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
51372
51373         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
51374         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
51375         can be used in subdirectories.
51376
51377 2000-12-29  Paul Eggert  <eggert@twinsun.com>
51378
51379         * lib/modechange.c: Do not assume that mode_t uses the
51380         traditional octal encoding.  E.g. "chmod 1 FOO" should set
51381         the other-execute bit of FOO even if S_IXOTH != 1.
51382
51383         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
51384         WOTH, XOTH, ALLM): New macros.
51385         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
51386          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
51387         Use them.
51388         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
51389         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
51390         (mode_compile):
51391         No need to use uintmax_t; unsigned long is long enough.
51392         Don't bother to get suffix since we don't use it.
51393
51394 2000-12-26  Jim Meyering  <meyering@lucent.com>
51395
51396         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
51397         better with autoheader.
51398
51399 2000-12-24  Jim Meyering  <meyering@lucent.com>
51400
51401         * lib/hash.c (is_prime): Return explicit boolean values.
51402         (hash_get_first): Return NULL to appease Irix5.6's 89.
51403         Reported by Nelson Beebe.
51404
51405 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
51406
51407         * lib/localcharset.c (locale_charset): Add support for Win32.
51408
51409 2000-12-18  Paul Eggert  <eggert@twinsun.com>
51410
51411         * lib/physmem.h, lib/physmem.c: New files.
51412
51413         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
51414         (noinst_HEADERS): Add physmem.h.
51415
51416         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
51417         't' for compatibility with Solaris 8 sort.
51418
51419 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
51420
51421         * lib/config.charset: Add support for BeOS.
51422
51423 2000-12-17  Jim Meyering  <meyering@lucent.com>
51424
51425         * m4/dos.m4 (jm_AC_DOS): New file and macro.
51426         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
51427
51428 2000-12-16  Jim Meyering  <meyering@lucent.com>
51429
51430         This bug had a serious impact on chown: `chown N:M FILE' (for integer
51431         N and M) would have treated it like `chown N:N FILE'.
51432
51433         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
51434
51435 2000-12-16  Jim Meyering  <meyering@lucent.com>
51436
51437         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
51438         SHELLS_FILE to a file name that's useful on djgpp systems.
51439         Include stdlib.h.
51440         (ADDITIONAL_DEFAULT_SHELLS): Define.
51441         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
51442         Based mostly on a patch from Prashant TR.
51443
51444 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
51445
51446         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
51447         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
51448         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
51449
51450 2000-12-08  Andreas Schwab  <schwab@suse.de>
51451
51452         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
51453         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
51454
51455 2000-12-07  Jim Meyering  <meyering@lucent.com>
51456
51457         * lib/stripslash.c (ISSLASH): Define.
51458         (strip_trailing_slashes): Use ISSLASH rather than comparing against
51459         `/'.
51460         From Prashant TR.
51461
51462         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
51463         (dir_name_r): Declare this function as static.
51464         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
51465         manifest itself on a name containing a mix of slashes and
51466         backslashes.
51467         Make this function work with names starting with a DOS-style
51468         drive letter and colon prefix.
51469         (dir_name): Append `.' if necessary.
51470         Based mostly on patches from Prashant TR and Eli Zaretskii.
51471
51472         * lib/dirname.h (dir_name_r): Remove prototype.
51473
51474 2000-12-06  Paul Eggert  <eggert@twinsun.com>
51475
51476         * m4/off_t-format.m4: Remove this file.
51477         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
51478
51479 2000-12-06  Jim Meyering  <meyering@lucent.com>
51480
51481         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
51482         replacement strtoull, we may well need the replacement strtoul, too.
51483         Check for declarations of strtoul and strtoull.
51484         Check for strtol.  Mainly as a cue to cause automake to include
51485         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
51486         Check for limits.h -- strtol.c needs it.
51487
51488 2000-12-05  Jim Meyering  <meyering@lucent.com>
51489
51490         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
51491
51492 2000-12-04  Jim Meyering  <meyering@lucent.com>
51493
51494         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
51495         Also include memory.h, stdlib.h, unistd.h if appropriate.
51496         Reported by Andreas Jaeger (conflicting declaration of malloc).
51497
51498 2000-12-02  Jim Meyering  <meyering@lucent.com>
51499
51500         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
51501         * m4/jm-macros.m4 (jm_MACROS): require it.
51502
51503 2000-12-02  Jim Meyering  <meyering@lucent.com>
51504
51505         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
51506
51507 2000-12-01  Paul Eggert  <eggert@twinsun.com>
51508
51509         * lib/memrchr.c: Include <config.h> before any system include file.
51510
51511 2000-11-30  Jim Meyering  <meyering@lucent.com>
51512
51513         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
51514
51515 2000-11-30  Jim Meyering  <meyering@lucent.com>
51516
51517         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
51518
51519 2000-11-29  Paul Eggert  <eggert@twinsun.com>
51520
51521         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
51522
51523 2000-11-26  Jim Meyering  <meyering@lucent.com>
51524
51525         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
51526
51527 2000-11-22  Paul Eggert  <eggert@twinsun.com>
51528
51529         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
51530         size of (size_t) -1; it's not portable.
51531
51532 2000-11-17  Jim Meyering  <meyering@lucent.com>
51533
51534         * lib/strstr.c: Update from GNU libc.
51535
51536 2000-11-17  Akim Demaille  <akim@epita.fr>
51537
51538         * lib/obstack.h: Formatting changes.
51539         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
51540         prevent type checking.
51541         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
51542         cast the value to (void *): assigning a `foo *' to a `void *'
51543         variable is valid.
51544         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
51545
51546 2000-11-16  Jim Meyering  <meyering@lucent.com>
51547
51548         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
51549
51550 2000-11-11  Jim Meyering  <meyering@lucent.com>
51551
51552         * lib/error.c: Add a couple #includes, merging from GNU libc version.
51553
51554 2000-11-10  Jim Meyering  <meyering@lucent.com>
51555
51556         * lib/obstack.h: Update from GNU libc.
51557         * lib/obstack.c: Likewise.
51558
51559 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
51560
51561         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
51562
51563 2000-11-06  Paul Eggert  <eggert@twinsun.com>
51564
51565         * lib/getusershell.c (setusershell): Use rewind rather than
51566         fseek/fseeko, to avoid configuration hassles with fseeko.
51567         Don't bother opening SHELLS_FILE if shellstream is NULL;
51568         it's not necessary.
51569
51570 2000-11-05  Jim Meyering  <meyering@lucent.com>
51571
51572         * lib/makepath.h (make_dir): Declare.
51573         * lib/makepath.c (make_dir): Remove `static' attribute.
51574         Tweak a comment.
51575
51576 2000-11-04  Jim Meyering  <meyering@lucent.com>
51577
51578         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
51579
51580 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
51581
51582         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
51583         last one in a bucket, advance to the next bucket.
51584
51585 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
51586
51587         * lib/fnmatch.c: Do not comment out all the code if we are using
51588         the GNU C library, because in some cases we are replacing buggy
51589         code in the GNU C library itself.
51590
51591 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
51592
51593         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
51594         (regex_compile): Catch bogus \(\1\).
51595
51596 2000-10-30  Paul Eggert  <eggert@twinsun.com>
51597
51598         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
51599         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
51600         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
51601
51602 2000-10-30  Paul Eggert  <eggert@twinsun.com>
51603
51604         * lib/error.h, getline.h, modechange.h:
51605         Remove "2000" from Copyright line, as the file hasn't been
51606         changed this year other than in the copyright notice.
51607
51608         * lib/xalloc.h: Add "2000" to Copyright line, as this file
51609         was changed this year.
51610
51611 2000-10-29  Jim Meyering  <meyering@lucent.com>
51612
51613         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
51614         renaming.
51615         * m4/ls-mntd-fs.m4: Likewise
51616
51617 2000-10-29  Jim Meyering  <meyering@lucent.com>
51618
51619         * lib/xstat.in: Fix grammar in comment.
51620
51621 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
51622
51623         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
51624         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
51625         doesn't define __restrict_arr.
51626
51627 2000-10-28  Jim Meyering  <meyering@lucent.com>
51628
51629         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
51630         (jm_PREREQ_MEMCHR): New function.
51631
51632 2000-10-28  Jim Meyering  <meyering@lucent.com>
51633
51634         * lib/memchr.c: Update from libc.
51635         Adjust for portability:
51636         [HAVE_STDLIB_H]: Include stdlib.h.
51637         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
51638         Undef __memchr, too.
51639         [!weak_alias]: Define __memchr to memchr.
51640
51641         * lib/regex.c: Update from libc.
51642         * lib/regex.h: Likewise.
51643         * lib/getopt1.c: Likewise.
51644         * lib/memcmp.c: Likewise.
51645
51646         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
51647         Avoid using fseek, when possible -- it's broken by design.
51648         Patch by Ulrich Drepper.
51649
51650 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
51651
51652         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
51653         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
51654         Giving in to popular pressure to shut up the compiler with casts.
51655
51656 2000-10-26  Jim Meyering  <meyering@lucent.com>
51657
51658         * lib/strftime.c: Update from libc.
51659
51660 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
51661
51662         * regex.c: More `unsigned char' -> `re_char' changes.
51663         Also change several `int' into `re_wchar_t'.
51664         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
51665         (PUSH_FAILURE_POINTER): Don't cast any more.
51666         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
51667         We want GCC to complain, since this piece of code makes
51668         re_match non-reentrant, which *should* be fixed.
51669         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
51670         (EXTEND_BUFFER): Use RETALLOC.
51671         (SET_LIST_BIT): Don't cast.
51672         (re_wchar_t): New type.
51673         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
51674         that those two functions will always properly return.
51675         (IMMEDIATE_QUIT_CHECK): Cast to void.
51676         (analyse_first): Use recursion rather than an explicit stack.
51677         (re_compile_fastmap): Can't fail anymore.
51678         (re_search_2): Don't check re_compile_fastmap for failure.
51679         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
51680         Now also sets the new value (passed in a new argument).
51681         (re_match_2_internal): Use it.
51682         Also, use a new var `reg' of type size_t when looping through regs
51683         rather than reuse the inappropriate `mcnt'.
51684
51685 2000-10-25  Jim Meyering  <meyering@lucent.com>
51686
51687         * lib/obstack.c: Update from libc.
51688
51689 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
51690
51691         * regex.c (regex_compile): Change the way of handling a range from
51692         a char less than 256 to a char not less than 256.
51693
51694 2000-10-24  Andrew Innes  <andrewi@gnu.org>
51695
51696         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
51697         NT-Emacs only.
51698         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
51699         so that re_search functions only quit when callers expect them to.
51700
51701 2000-10-23  Jim Meyering  <meyering@lucent.com>
51702
51703         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
51704         wrong.  That set_locale call must not have any side effects.
51705         From Paul Eggert.
51706
51707 2000-10-22  Jim Meyering  <meyering@lucent.com>
51708
51709         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
51710         [CYCLIC]: Remove now-unused definition.
51711
51712         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
51713         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
51714         Suggestion from Ulrich Drepper.
51715
51716 2000-10-21  Jim Meyering  <meyering@lucent.com>
51717
51718         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
51719         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
51720         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
51721
51722 2000-10-21  Jim Meyering  <meyering@lucent.com>
51723
51724         * lib/dirname.c (memrchr): Declare if necessary.
51725         (dir_name): Remove the restriction that there be no
51726         trailing slashes.  Now, this code skips past them, effectively
51727         ignoring them.
51728         [TEST_DIRNAME] (main): New unit tests.
51729
51730         * lib/memrchr.c: New file from GNU libc.
51731         Undef __memrchr, too.
51732         [!weak_alias]: Define __memrchr to memrchr.
51733         Guard weak_alias use with `#ifdef weak_alias'.
51734
51735 2000-10-21  Jim Meyering  <meyering@lucent.com>
51736
51737         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
51738         (dir_name): Use dir_name_r.
51739         * lib/dirname.h (dir_name_r): Declare it.
51740
51741 2000-10-17  Jim Meyering  <meyering@lucent.com>
51742
51743         * lib/quote.h (PARAMS): Define and use.
51744         Reported by Akim Demaille.
51745
51746         * lib/getopt.c: Update from libc.
51747
51748 2000-10-16  Jim Meyering  <meyering@lucent.com>
51749
51750         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
51751         setlocale.
51752         From Jan Fedak.
51753
51754 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
51755
51756         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
51757
51758 2000-09-25  Jim Meyering  <meyering@lucent.com>
51759
51760         * lib/md5.h (rol): Define (from GnuPG).
51761
51762         * lib/sha.c: Give credit (GnuPG) where due.
51763         (M): Use rol rather than open-coding it.
51764         Add a FIXME comment.
51765
51766 2000-09-21  Jim Meyering  <meyering@lucent.com>
51767
51768         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
51769         Reported by Michael Stone.
51770
51771 2000-09-20  Jim Meyering  <meyering@lucent.com>
51772
51773         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
51774         (noinst_HEADERS): Add sha.h.
51775         Based on code from Scott G. Miller and from GnuPG.
51776
51777 2000-09-18  Jim Meyering  <meyering@lucent.com>
51778
51779         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
51780         LIBS. Otherwise, everyone ends up linking with -lelf for some
51781         configurations.
51782         Reported by Mike Stone.
51783
51784 2000-09-15  Jim Meyering  <meyering@lucent.com>
51785
51786         * lib/regex.c: Update from libc.
51787
51788 2000-09-10  Jim Meyering  <meyering@lucent.com>
51789
51790         * lib/getopt.c (_getopt_internal): Update from glibc.
51791
51792 2000-09-09  Jim Meyering  <meyering@lucent.com>
51793
51794         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
51795         think it should be used as a general replacement for isascii.
51796         * lib/fnmatch.c: Likewise.
51797         * lib/mbswidth.c: Likewise
51798         * lib/regex.c: Likewise.
51799
51800         Don't use atoi.
51801         * lib/userspec.c: Include sys/param.h and limits.h.
51802         Include xstrtol.h.
51803         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
51804         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
51805         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
51806         UID, GID.  Check range.
51807
51808 2000-09-06  Jim Meyering  <meyering@lucent.com>
51809
51810         * lib/getopt.c (_getopt_internal): Update from glibc.
51811
51812 2000-08-30  Jim Meyering  <meyering@lucent.com>
51813
51814         * lib/strftime.c: Merge in changes from GNU libc.
51815
51816 2000-08-26  Jim Meyering  <meyering@lucent.com>
51817
51818         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
51819         * m4/fpending.m4: New file.
51820
51821 2000-08-26  Jim Meyering  <meyering@lucent.com>
51822
51823         * lib/closeout.c: Include "__fpending.h".
51824         (close_stdout_status): Return right away if there's nothing to flush.
51825
51826         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
51827         * lib/__fpending.c: New file.
51828         * lib/__fpending.h: New file.
51829
51830 2000-08-20  Jim Meyering  <meyering@lucent.com>
51831
51832         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
51833         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
51834         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
51835
51836 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
51837
51838         Improve fileutils installation on systems where running
51839         programs (like install) can't be unlinked.
51840         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
51841         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
51842
51843 2000-08-07  Paul Eggert  <eggert@twinsun.com>
51844
51845         Standardize on "memory exhausted" instead of "Memory exhausted"
51846         or "virtual memory exhausted".
51847         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
51848         "virtual memory exhausted".
51849         * lib/same.c (same_name): Invoke xalloc_die instead of printing
51850         our own message.
51851         * lib/userspec.c (parse_user_spec): Likewise.
51852         * lib/bumpalloc.h: comment fix
51853         * lib/same.c, userspec.c: Include xalloc.h.
51854
51855         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
51856         not char *const and pointing to a constant array.
51857         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
51858         (xrealloc): Comment fix.
51859
51860         * lib/userspec.c (parse_user_spec):
51861         Don't translate a message until just before returning,
51862         to avoid unnecessary translation.
51863
51864 2000-08-07  Jim Meyering  <meyering@lucent.com>
51865
51866         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
51867         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
51868         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
51869         getgroups.c, gethostname.c, getopt.h, group-member.c,
51870         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
51871         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
51872         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
51873         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
51874         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
51875         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
51876         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
51877         yesno.c: Back out Copyright date changes for each file with no change
51878         this year.  This eases coordination with other programs using the same
51879         source code modules.  From Paul Eggert.
51880
51881 2000-08-06  Paul Eggert  <eggert@twinsun.com>
51882
51883         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
51884         not char, for compatibility with glibc 2.1.3 strftime.c.
51885
51886 2000-08-03  Greg McGary  <greg@mcgary.org>
51887
51888         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
51889         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
51890         (EXTEND_BUFFER): Use them.
51891
51892 2000-08-01  Jim Meyering  <meyering@lucent.com>
51893
51894         * lib/dirname.c (ISSLASH): Define.
51895         (BACKSLASH_IS_PATH_SEPARATOR): Define.
51896         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
51897         both `\' and `/' may be use as path separators.
51898         Based on a patch from Prashant TR.
51899
51900 2000-07-31  Paul Eggert  <eggert@twinsun.com>
51901
51902         * lib/quotearg.c (quotearg_n_options): Don't make the initial
51903         slot vector a constant, since it might get modified.
51904
51905 2000-07-31  Jim Meyering  <meyering@lucent.com>
51906
51907         * lib/xmalloc.c: Use `virtual memory exhausted', not
51908         `Memory exhausted'.
51909         * lib/obstack.c (print_and_abort): Likewise.
51910
51911 2000-07-30  Paul Eggert  <eggert@twinsun.com>
51912
51913         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
51914         buffer, so that the caller can always quote one small
51915         component of a "memory exhausted" message in slot 0.
51916         From a suggestion by Jim Meyering.
51917
51918 2000-07-30  Jim Meyering  <meyering@lucent.com>
51919
51920         * lib/makepath.c (make_path): Quote the other instance, too.
51921
51922         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
51923         (STATIC_BUF_SIZE): Define.
51924         (quotearg_n_options): Use only statically allocated storage when
51925         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
51926         than STATIC_BUF_SIZE.
51927
51928 2000-07-29  Jim Meyering  <meyering@lucent.com>
51929
51930         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
51931         * lib/dirname.c (dir_name): Likewise.
51932
51933         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
51934         `/'.
51935
51936         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
51937         (dir_name): Assert that there are no trailing slashes.
51938
51939 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
51940
51941         * lib/mbswidth.h (mbswidth): Add a flags argument.
51942         (mbswidth): New declaration.
51943         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
51944         * lib/mbswidth.c (mbswidth): Add a flags argument.
51945         (mbsnwidth): New function.
51946
51947 2000-07-24  Jim Meyering  <meyering@lucent.com>
51948
51949         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
51950
51951 2000-07-23  Paul Eggert  <eggert@twinsun.com>
51952
51953         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
51954
51955 2000-07-23  Paul Eggert  <eggert@twinsun.com>
51956
51957         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
51958         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
51959         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
51960         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
51961         invoke multibyte primitives.
51962
51963 2000-07-23  Paul Eggert  <eggert@twinsun.com>
51964
51965         * lib/quotearg.c:
51966         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
51967         so that mbstate_t is always defined.
51968
51969         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
51970         be 1 in at least one GCC installation, and this configuration
51971         error is likely to be common.  Ignoring MB_LEN_MAX hurts
51972         performance on hosts that have mbrtowc but have only unibyte
51973         locales, but I assume these hosts are rare.
51974
51975 2000-07-23  Paul Eggert  <eggert@twinsun.com>
51976
51977         * lib/mbswidth.c (_XOPEN_SOURCE):
51978         Don't define; this causes problems on Solaris 7.
51979         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
51980
51981 2000-07-23  Jim Meyering  <meyering@lucent.com>
51982
51983         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
51984         too: getgrgid, getpwuid, getuid.
51985
51986 2000-07-23  Jim Meyering  <meyering@lucent.com>
51987
51988         * lib/basename.c (base_name): Add an assertion.
51989
51990 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
51991
51992         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
51993         shadow its mbsinit function.
51994
51995 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
51996
51997         * lib/mbswidth.h: New file.
51998         * lib/mbswidth.c: New file.
51999         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
52000         (noinst_HEADERS): Add mbswidth.h.
52001
52002 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
52003
52004         * lib/config.charset: Add support for FreeBSD. Improve support for
52005         HP-UX and IRIX 6.
52006
52007 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
52008
52009         * m4/mbswidth.m4: New file.
52010         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
52011
52012 2000-07-15  Jim Meyering  <meyering@lucent.com>
52013
52014         * lib/makepath.c: Include quote.h.
52015         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
52016         corresponding argument in a `quote (...)' call.
52017         Give better diagnostics.
52018
52019         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
52020         (noinst_HEADERS): Add quote.h.
52021
52022         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
52023         from tar's src/misc.c.
52024         * lib/quote.h: New file.  Prototypes for same.
52025
52026 2000-07-14  Paul Eggert  <eggert@twinsun.com>
52027
52028         From a suggestion by Bruno Haible.
52029         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
52030         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
52031         to decide whether to define the BeOS workaround macro;
52032         this adjusts to the change to AC_MBSTATE_T.
52033
52034 2000-07-14  Jim Meyering  <meyering@lucent.com>
52035
52036         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
52037         jm_AC_TYPE_UINTMAX_T.
52038
52039 2000-07-13  Paul Eggert  <eggert@twinsun.com>
52040
52041         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
52042
52043         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
52044         quotearg_buffer_restyled): Add support for
52045         clocale_quoting_style.  Undo previous change to
52046         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
52047         and "{RIGHT QUOTATION MARK}" msgids.
52048
52049 2000-07-10  Paul Eggert  <eggert@twinsun.com>
52050
52051         From a suggestion by Bruno Haible.
52052         * m4/mbstate_t.m4 (AC_MBSTATE_T):
52053         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
52054         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
52055         and mbstate_t, to a single-part test that simply defines mbstate_t.
52056         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
52057         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
52058
52059 2000-07-10  Jim Meyering  <meyering@lucent.com>
52060
52061         * m4/strerror_r.m4: Mirror the correction made in autoconf.
52062
52063         * m4/gnu-source.m4: Output to confdefs.h directly.
52064         Suggestion from Akim Demaille.
52065
52066 2000-07-09  Paul Eggert  <eggert@twinsun.com>
52067
52068         The old behavior of quoting `like this' doesn't look good with
52069         newer, ISO-style fonts.  See:
52070         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
52071
52072         Instead, quote "like this" by default.  Let the translator
52073         tailor the locale-specific quoting behavior by providing
52074         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
52075
52076         * lib/quotearg.c (N_): New macro.
52077         (gettext_default): New function.
52078         (quotearg_buffer_restyled): Use
52079         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
52080         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
52081
52082 2000-07-09  Jim Meyering  <meyering@lucent.com>
52083
52084         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
52085         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
52086
52087         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
52088         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
52089
52090 2000-07-09  Jim Meyering  <meyering@lucent.com>
52091
52092         * lib/Most files: Update copyright dates to include 2000.
52093
52094 2000-07-08  Jim Meyering  <meyering@lucent.com>
52095
52096         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
52097         if not defined.
52098         (xgethostname): Remove now-unnecessary #ifdef.
52099         Move declaration of `err' into loop where it's used.
52100
52101 2000-07-05  Paul Eggert  <eggert@twinsun.com>
52102         and Bruno Haible  <haible@clisp.cons.org>
52103
52104         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
52105         only if the test for an object-type mbstate_t fails.  This
52106         prevents us from mistakenly reporting that mbstate_t is a
52107         system object type after we "#define mbstate_t int" to work
52108         around its lack.
52109
52110 2000-07-05  Paul Eggert  <eggert@twinsun.com>
52111         and Bruno Haible  <haible@clisp.cons.org>
52112
52113         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
52114
52115 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
52116
52117         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
52118         to strerror_r.
52119         Include <ctype.h> for use of isalpha.
52120
52121 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
52122
52123         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
52124         by allocating a larger buffer. Test the gethostname return value for
52125         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
52126         returns an error and ENAMETOOLONG isn't defined.
52127
52128 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
52129
52130         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
52131         dimension.
52132
52133 2000-07-04  Jim Meyering  <meyering@lucent.com>
52134
52135         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
52136         of the deprecated AC_CHECKING.
52137
52138 2000-07-04  Jim Meyering  <meyering@lucent.com>
52139
52140         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
52141         Reported by Bruno Haible.
52142
52143 2000-07-04  Jim Meyering  <meyering@lucent.com>
52144
52145         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
52146         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
52147         lacks mbrtowc.
52148
52149 2000-07-03  Paul Eggert  <eggert@twinsun.com>
52150
52151         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
52152         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
52153
52154 2000-07-03  Paul Eggert  <eggert@twinsun.com>
52155         and Bruno Haible  <haible@clisp.cons.org>
52156
52157         * lib/quotearg.c (mbrtowc):
52158         Assign to *pwc, and return 1 only if result is nonzero.
52159         (iswprint): Use ISPRINT when substituting our own mbrtowc.
52160
52161 2000-07-03  Jim Meyering  <meyering@lucent.com>
52162
52163         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
52164
52165 2000-07-03  Jim Meyering  <meyering@lucent.com>
52166
52167         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
52168         This is necessary to get a definition of e.g., UTMP_FILE on
52169         HP-UX 10.20.
52170         From Bob Proulx.
52171
52172 2000-07-02  Jim Meyering  <meyering@lucent.com>
52173
52174         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
52175
52176         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
52177         AC_LIBOBJ(function_name).
52178         * m4/chown.m4: Likewise.
52179         * m4/fnmatch.m4: Likewise.
52180         * m4/ftruncate.m4: Likewise.
52181         * m4/getgroups.m4: Likewise.
52182         * m4/getline.m4: Likewise.
52183         * m4/group-member.m4: Likewise.
52184         * m4/jm-macros.m4: Likewise.
52185         * m4/lstat.m4: Likewise.
52186         * m4/malloc.m4: Likewise.
52187         * m4/memcmp.m4: Likewise.
52188         * m4/nanosleep.m4: Likewise.
52189         * m4/putenv.m4: Likewise.
52190         * m4/realloc.m4: Likewise.
52191         * m4/regex.m4: Likewise.
52192         * m4/stat.m4: Likewise.
52193         * m4/strftime.m4: Likewise.
52194
52195 2000-07-02  Jim Meyering  <meyering@lucent.com>
52196
52197         * lib/quotearg.c (mbstate_t): Don't define here.
52198
52199 2000-07-02  Jim Meyering  <meyering@lucent.com>
52200
52201         * lib/nanosleep.c (SIGCONT): Define if not already defined.
52202
52203 2000-07-01  Jim Meyering  <meyering@lucent.com>
52204
52205         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
52206
52207 2000-07-01  Jim Meyering  <meyering@lucent.com>
52208
52209         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
52210         problem.
52211
52212 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
52213
52214         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
52215         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
52216
52217 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
52218
52219         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
52220         per change in ../m4/ls-mntd-fs.m4.
52221         (read_filesystem_list): Ignore symbolic links.
52222
52223 2000-06-29  Jim Meyering  <meyering@lucent.com>
52224
52225         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
52226         for declaration of strcmp.
52227
52228         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
52229
52230         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
52231         Avoid warning by casting result to `char *' to remove `const'.
52232
52233 2000-06-28  Jim Meyering  <meyering@lucent.com>
52234
52235         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
52236         included by quotearg.c, for which we perform this test.  From
52237         Bruno Haible.
52238
52239 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
52240
52241         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
52242         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
52243         <utmpx.h> exists, put readutmp.o into LIBOBJS.
52244
52245 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
52246
52247         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
52248
52249 2000-06-26  Paul Eggert  <eggert@twinsun.com>
52250
52251         savedir now sets errno on failure and invokes xmalloc to get memory.
52252         Fix a couple of other minor bugs while we're at it.
52253
52254         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
52255         (NAMLEN): Remove macro.
52256         (malloc, realloc): Remove decls.
52257         (stpcpy): Likewise.
52258         ("xalloc.h"): Include.
52259         (NAME_SIZE_DEFAULT): New macro.
52260         (savedir): Use xmalloc / xrealloc to allocate memory.
52261         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
52262         Skip "" directory entries.
52263         Use strlen to calculate directory entry length, since the old method
52264         is rarely used these days and isn't worth supporting.
52265         Don't use a pointer after freeing it.
52266         Check for integer overflow when calculating allocation size.
52267         Use memcpy to copy entries, instead of stpcpy.
52268         Set errno properly when returning NULL.
52269         Check for readdir error.
52270
52271 2000-06-26  Jim Meyering  <meyering@lucent.com>
52272
52273         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
52274
52275 2000-06-25  Jim Meyering  <meyering@lucent.com>
52276
52277         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
52278         Linux header bug when _XOPEN_SOURCE is defined to 500.
52279
52280 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
52281
52282         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
52283         deficiency.
52284
52285 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
52286
52287         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
52288         Include xalloc.h.
52289         Don't include <stdlib.h>.  Don't declare malloc, realloc.
52290
52291 2000-06-24  Jim Meyering  <meyering@lucent.com>
52292
52293         * m4/strerror_r.m4: Revive this file -- to try out an experimental
52294         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
52295         for which strerror does return char*, but which lacks a conveniently
52296         accessible declaration of the function.  If the compile-test says
52297         strerror_r doesn't work, then resort to a `run'-test that works on
52298         BeOS and segfaults on DEC Unix.
52299
52300 2000-06-24  Jim Meyering  <meyering@lucent.com>
52301
52302         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
52303
52304 2000-06-23  Paul Eggert  <eggert@twinsun.com>
52305
52306         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
52307         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
52308
52309 2000-06-23  Paul Eggert  <eggert@twinsun.com>
52310
52311         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
52312         (mbrtowc, mbstate_t): Define substitutes if
52313         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
52314         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
52315         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
52316
52317 2000-06-23  Jim Meyering  <meyering@lucent.com>
52318
52319         * m4/afs.m4: Add missing AC_MSG_RESULT.
52320         Reported by Bruno Haible.
52321
52322         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
52323         Suggestion from Bruno Haible.
52324
52325 2000-06-23  Jim Meyering  <meyering@lucent.com>
52326
52327         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
52328
52329 2000-06-21  Jim Meyering  <meyering@lucent.com>
52330
52331         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
52332
52333 2000-06-21  Jim Meyering  <meyering@lucent.com>
52334
52335         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
52336         (noinst_HEADERS): Add getstr.h.
52337
52338         * lib/getline.c (getstr): Move into a separate file.
52339         * lib/getstr.c (getstr): New file, extracted from getline.c, with
52340         the following changes: new parameter, delim2; both delim[12]
52341         parameters have type `int', not `char'.  The latter would lose
52342         with 8-bit delimiters.
52343         * lib/getstr.h: New file.
52344
52345 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
52346
52347         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
52348         than 1024, return a memory chunk of least possible size, instead
52349         of size PATH_MAX + 2. In the loop, increment the size proportionally.
52350         Use free/xmalloc instead of xrealloc to avoid copying for very long
52351         paths.
52352
52353 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
52354
52355         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
52356         the empty string.
52357
52358 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
52359
52360         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
52361         address, not strdup.  Include <stdlib.h> and don't declare free().
52362
52363 2000-06-19  Jim Meyering  <meyering@lucent.com>
52364
52365         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
52366
52367 2000-06-18  Jim Meyering  <meyering@lucent.com>
52368
52369         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
52370
52371         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
52372         `checking whether...' message to be consistent with that of the
52373         lstat test.
52374
52375 2000-06-18  Jim Meyering  <meyering@lucent.com>
52376
52377         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
52378         Besides, these days every porting target provides a mkdir function.
52379
52380         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
52381         needed. (this snippet comes from src/system.h).
52382
52383 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
52384
52385         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
52386
52387 2000-06-15  Paul Eggert  <eggert@twinsun.com>
52388
52389         * lib/human.c (adjust_value): New function.
52390         (human_readable_inexact): Apply rounding style even when
52391         printing approximate values.
52392
52393 2000-06-14  Paul Eggert  <eggert@twinsun.com>
52394
52395         * lib/human.c (human_readable_inexact): Allow an input block
52396         size that is not a multiple of the output block size, and vice versa.
52397         Reported by Piergiorgio Sartor.
52398
52399 2000-06-14  Paul Eggert  <eggert@twinsun.com>
52400
52401         * lib/getdate.y (get_date): Apply relative times after time
52402         zone indicator, not before.  Reported by Todd A. Jacobs.
52403
52404 2000-06-13  Jim Meyering  <meyering@lucent.com>
52405
52406         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
52407
52408         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
52409
52410 2000-06-12  Paul Eggert  <eggert@twinsun.com>
52411
52412         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
52413
52414 2000-06-12  Jim Meyering  <meyering@lucent.com>
52415
52416         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
52417         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
52418         optional argument.
52419         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
52420         the optional argument, `lib'.
52421
52422 2000-06-08  Jim Meyering  <meyering@lucent.com>
52423
52424         * m4/largefile.m4: Remove file (now that it's part of autoconf).
52425
52426 2000-06-04  Paul Eggert  <eggert@twinsun.com>
52427
52428         Rewrite largefile configuration so that we don't need to run
52429         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
52430         AC_CANONICAL_HOST in configure.in -- jmm]
52431
52432         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
52433         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
52434         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
52435         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
52436         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
52437         All uses changed.
52438         Instead of inspecting the output of getconf, try to compile the
52439         test program without and with the macro definition.
52440         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
52441         for getconf.  Instead, check for the needed flags by compiling
52442         test programs.
52443
52444 2000-06-04  Paul Eggert  <eggert@twinsun.com>
52445
52446         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
52447
52448 2000-06-04  Jim Meyering  <meyering@lucent.com>
52449
52450         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
52451         SunOS 4.1.4 for which gid_t is an unsigned type.
52452
52453 2000-06-03  Jim Meyering  <meyering@lucent.com>
52454
52455         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
52456         now that autoconf requires that.
52457
52458         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
52459         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
52460         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
52461
52462 2000-06-03  Jim Meyering  <meyering@lucent.com>
52463
52464         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
52465
52466 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
52467
52468         * m4/glibc21.m4: New file.
52469         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
52470
52471 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
52472
52473         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
52474         newer, don't install charset.alias.
52475         * lib/config.charset: Change the Linux/glibc rules so they become empty
52476         on glibc-2.1 or newer.
52477
52478 2000-06-02  Jim Meyering  <meyering@lucent.com>
52479
52480         * lib/mountlist.c: Back out last change.  Instead, do this...
52481         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
52482         me_dummy member using the same `ignore'-testing code.
52483         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
52484         fs_type strings.
52485         From Mark D. Roth.
52486
52487 2000-05-29  Jim Meyering  <meyering@lucent.com>
52488
52489         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
52490         mounts with the `ignore' attribute.  Based on a patch from
52491         Mark D. Roth.
52492
52493 2000-05-28  Jim Meyering  <meyering@lucent.com>
52494
52495         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
52496         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
52497         * m4/stat.m4: Likewise.
52498         * m4/lstat.m4: Likewise.
52499         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
52500
52501         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
52502         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
52503
52504 2000-05-26  Jim Meyering  <meyering@lucent.com>
52505
52506         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
52507
52508 2000-05-24  Jim Meyering  <meyering@lucent.com>
52509
52510         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
52511         autoconf requires that.
52512         * m4/lib-check.m4: Likewise.
52513         * m4/jm-macros.m4: Likewise.
52514         * m4/strftime.m4: Likewise.
52515
52516         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
52517         AC_CHECK_DECLS, now that autoconf requires that.
52518
52519 2000-05-22  Jim Meyering  <meyering@lucent.com>
52520
52521         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
52522         * m4/lstat.m4: Likewise.
52523
52524 2000-05-22  Jim Meyering  <meyering@lucent.com>
52525
52526         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
52527
52528 2000-05-20  Jim Meyering  <meyering@lucent.com>
52529
52530         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
52531         (jm_PREREQ): Use it.
52532
52533 2000-05-18  Jim Meyering  <meyering@lucent.com>
52534
52535         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
52536         back, too, since it may have been modified by allocate_entry.
52537         (hash_delete): Rewrite to use neither the assignment operator
52538         nor the comma operator in an if-expression.
52539
52540 2000-05-15  Paul Eggert  <eggert@twinsun.com>
52541
52542         * lib/closeout.c:
52543         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
52544         Remove; no longer needed.
52545         "quotearg.h": Add include.
52546         (file_name): Do not bother to explicitly initialize to NULL; it's less
52547         efficient on some hosts.
52548         (close_stdout_status): Remove test as to whether stdout was already
52549         closed; it breaks for the case "echo x | sort >&-".
52550         Quote file name colons.
52551         Do not assume that _("write error") lacks format strings.
52552
52553 2000-05-15  Jim Meyering  <meyering@lucent.com>
52554
52555         * lib/version-etc.c (version_etc_copyright): Update the copyright
52556         string used in all --version output.
52557
52558 2000-05-14  Jim Meyering  <meyering@lucent.com>
52559
52560         * lib/closeout.c (close_stdout_set_file_name): New function.
52561         (close_stdout_status): Use new file-scoped global.
52562         Return right away if fstat says the stdout file descriptor is invalid.
52563         * lib/closeout.h (close_stdout_set_file_name): Declare.
52564
52565 2000-05-10  Jim Meyering  <meyering@lucent.com>
52566
52567         * lib/closeout.c [default_exit_status]: New file-scoped variable.
52568         (close_stdout_set_status): New function.
52569         * lib/closeout.h (close_stdout_set_status): Declare.
52570
52571 2000-05-09  Jim Meyering  <meyering@lucent.com>
52572
52573         * m4/gettext.m4: Rename this...
52574         * m4/libintl.m4: ...to this.
52575
52576 2000-05-08  Jim Meyering  <meyering@lucent.com>
52577
52578         * lib/long-options.c: Don't include closeout.h.
52579         (parse_long_options): Don't call close_stdout for --version.
52580
52581 2000-05-06  Paul Eggert  <eggert@twinsun.com>
52582
52583         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
52584         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
52585         2.1.3 bug.  This avoids a clash when files like regex.c define
52586         _GNU_SOURCE.
52587
52588 2000-05-06  Jim Meyering  <meyering@lucent.com>
52589
52590         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
52591         (AC_REPLACE_FUNCS): Add strnlen.
52592
52593         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
52594         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
52595
52596         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
52597         AC_SEARCH_LIBS call for nanosleep.
52598         (LIB_NANOSLEEP): Set and AC_SUBST.
52599
52600 2000-05-06  Jim Meyering  <meyering@lucent.com>
52601
52602         * lib/strnlen.c: Undefine __strnlen and strnlen.
52603         [!weak_alias]: Define __strnlen to strnlen.
52604
52605         * lib/atexit.c: New file, from libiberty.
52606
52607 2000-05-06  Jim Meyering  <meyering@lucent.com>
52608
52609         * lib/closeout.c (close_stdout_status): Also check for errors on the
52610         stderr stream.
52611
52612 2000-05-05  Jim Meyering  <meyering@lucent.com>
52613
52614         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
52615         AC_SEARCH_LIBS call for clock_gettime.
52616         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
52617
52618         * m4/search-libs.m4: Update from autoconf.
52619
52620         su doesn't work on Solaris 2.6.
52621         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
52622         <shadow.h>.  Reported by Dragos Harabor.
52623
52624 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
52625
52626         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
52627         memcpy instead of xmalloc, xrealloc, path_concat.
52628         (locale_charset): Treat empty environment variables as absent.
52629         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
52630
52631 2000-05-04  Jim Meyering  <meyering@lucent.com>
52632
52633         * lib/getopt.c: Update from glibc.
52634         * lib/obstack.c: Likewise.
52635         * lib/obstack.h: Likewise.
52636         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
52637         file
52638
52639         * lib/regex.h: Likewise.
52640         * lib/strndup.c: Likewise.
52641         * lib/strnlen.c: New file, from glibc.
52642
52643 2000-05-03  Jim Meyering  <meyering@lucent.com>
52644
52645         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
52646
52647 2000-05-02  Paul Eggert  <eggert@twinsun.com>
52648
52649         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
52650         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
52651         compile-time test, rather than inspecting host and OS, to
52652         decide whether to define _LARGEFILE_SOURCE.
52653
52654 2000-05-01  Jim Meyering  <meyering@lucent.com>
52655
52656         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
52657
52658         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
52659         Based on a patch from Bruno Haible.
52660
52661 2000-05-01  Jim Meyering  <meyering@lucent.com>
52662
52663         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
52664
52665 2000-04-29  Jim Meyering  <meyering@lucent.com>
52666
52667         * lib/path-concat.c: Declare strdup only if it's not defined.
52668         * lib/canon-host.c: Likewise.
52669
52670 2000-04-28  Jim Meyering  <meyering@lucent.com>
52671
52672         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
52673         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
52674         is included first, then limits.h is included by locale.h by libintl.h.
52675         From John David Anglin.
52676
52677 2000-04-25  Jim Meyering  <meyering@lucent.com>
52678
52679         * lib/makepath.c (S_IRWXUGO): Define.
52680         (make_path): Always perform explicit chmod if MODE specifies any
52681         of the `special' permission bits.  Prompted by a bug report against
52682         install from Mate Wierdl and Joost van Baal.
52683
52684 2000-04-18  Jim Meyering  <meyering@lucent.com>
52685
52686         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
52687         (jm_PREREQ): Use it.
52688
52689 2000-04-18  Jim Meyering  <meyering@lucent.com>
52690
52691         * lib/README: New file.
52692
52693         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
52694         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
52695
52696 2000-04-17  Jim Meyering  <meyering@lucent.com>
52697
52698         Get it right :-)
52699         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
52700         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
52701         Suggestion from Akim Demaille.
52702
52703 2000-04-17  Jim Meyering  <meyering@lucent.com>
52704
52705         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
52706         the definition of it to rpl_strftime also defined-away the system's
52707         declaration.
52708
52709 2000-04-15  Jim Meyering  <meyering@lucent.com>
52710
52711         Use `C' to denote so-called `contiguous' files, the same way
52712         that tar does.
52713         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
52714         (ftypelet): Use S_ISCTG.
52715         From Michael Deutschmann.
52716
52717 2000-04-14  Jim Meyering  <meyering@lucent.com>
52718
52719         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
52720         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
52721         clobbered.
52722
52723 2000-04-14  Jim Meyering  <meyering@lucent.com>
52724
52725         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
52726
52727 2000-04-13  Jim Meyering  <meyering@lucent.com>
52728
52729         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
52730         AH_VERBATIM to insert required #ifndef into config.h.in.
52731         Suggestion from Akim Demaille.
52732
52733 2000-04-12  Jim Meyering  <meyering@lucent.com>
52734
52735         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
52736         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
52737         Christian Krackowizer.
52738
52739         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
52740         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
52741         (AC_SYS_LARGEFILE): Require.
52742         (AM_C_PROTOTYPES): Require.
52743
52744 2000-04-08  Jim Meyering  <meyering@lucent.com>
52745
52746         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
52747         names don't conflict.  Reported by Eli Zaretskii.
52748
52749 2000-04-07  Jim Meyering  <meyering@lucent.com>
52750
52751         * lib/putenv.c: Move inclusion of errno.h so it follows that of
52752         sys/types.h, to work around system header problems on AIX 3.2.5.
52753         From Bruno Haible.
52754
52755 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
52756
52757         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
52758         bug.  Deal with the different error behavior of Irix iconv.
52759
52760 2000-04-05  Paul Eggert  <eggert@twinsun.com>
52761
52762         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
52763         IRIX if the installer said otherwise.
52764
52765 2000-04-05  Jim Meyering  <meyering@lucent.com>
52766
52767         Portability tweaks required for ultrix4.3.
52768         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
52769         (jm_CHECK_DECLS): Add getutent to the list of functions.
52770         (_jm_DECL_HEADERS): Add utmpx.h.
52771         From John David Anglin.
52772
52773         * m4/strftime.m4: Back out the 2000-04-02 change.
52774         Instead of that change, simply undefine putenv in the test program.
52775
52776 2000-04-05  Jim Meyering  <meyering@lucent.com>
52777
52778         Portability tweaks required for ultrix4.3.
52779         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
52780         getutent.
52781         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
52782         * lib/canon-host.c: Declare strdup.
52783         * lib/path-concat.c: Likewise.
52784         From John David Anglin.
52785
52786 2000-04-04  Jim Meyering  <meyering@lucent.com>
52787
52788         Be more DOS 8.3-friendly.
52789         * lib/ref-add.sin: Renamed from ref-add.sed.in.
52790         * lib/ref-del.sin: Renamed from ref-del.sed.in.
52791         * lib/Makefile.am: Reflect renaming.
52792         Reported by Eli Zaretskii.
52793
52794         Use a temporary file name that won't clash with `charset.alias'
52795         in the DOS 8.3 name space.
52796         * lib/Makefile.am (charset_tmp): Define.
52797         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
52798         (uninstall-local): Likewise.
52799         Reported by Eli Zaretskii.
52800
52801 2000-04-03  Jim Meyering  <meyering@lucent.com>
52802
52803         * m4/gettext.m4: Fix typo in comment.
52804
52805         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
52806         textutils/configure.in).  Suggestion from Paul Eggert.
52807         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
52808
52809 2000-04-02  Paul Eggert  <eggert@twinsun.com>
52810
52811         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
52812         variable in the shell rather than using putenv, which isn't
52813         portable.  This avoids the configure-time inter-test dependency
52814         on the potentially-renamed putenv function.
52815
52816 2000-03-30  Paul Eggert  <eggert@twinsun.com>
52817
52818         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
52819         before checking struct stat.st_blksize, so that
52820         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
52821
52822 2000-03-29  Paul Eggert  <eggert@twinsun.com>
52823
52824         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
52825         since strftime.c uses HAVE_STRFTIME to decide whether to use
52826         the underlying strftime.
52827
52828 2000-03-29  Paul Eggert  <eggert@twinsun.com>
52829
52830         * lib/time/strftime.c (my_strftime): Make sure we call the system
52831         strftime, not ourselves, when invoking the underlying strftime.
52832
52833 2000-03-24  Jim Meyering  <meyering@lucent.com>
52834
52835         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
52836         (charset_alias): Define.
52837         (install-exec-local): Factor out common code.
52838         (uninstall-local): Split lines longer than 80.
52839         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
52840         (SUFFIXES): Define.
52841         (.sed.in.sed): New rule.  Don't redirect directly to $@.
52842         (CLEANFILES): Add ref-add.sed and ref-del.sed.
52843
52844 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
52845
52846         * lib/config.charset: Output a line containing "Packages using this
52847         file".
52848         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
52849         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
52850         ref-del.sed): New rules.
52851
52852 2000-03-17  Jim Meyering  <meyering@lucent.com>
52853
52854         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
52855         Otherwise, include <strings.h>
52856
52857 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
52858
52859         * lib/unicodeio.c (utf8_wctomb): New function.
52860         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
52861         format instead of in UCS-4 with platform dependent endianness.
52862
52863 2000-03-10  Jim Meyering  <meyering@lucent.com>
52864
52865         * m4/lib-check.m4: Look for getspnam in -lgen, too.
52866         From Marco Franzen.
52867
52868 2000-03-07  Paul Eggert  <eggert@twinsun.com>
52869
52870         * lib/savedir.c (savedir): Work even if directory size is
52871         negative; this can happen with some screwy NFS configurations.
52872
52873 2000-03-06  Jim Meyering  <meyering@lucent.com>
52874
52875         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
52876         if it's NULL (because we ran out of memory).  From Bruno Haible.
52877
52878 2000-03-05  Jim Meyering  <meyering@lucent.com>
52879
52880         * lib/localcharset.c ("path-concat.h"): Include.
52881         (get_charset_aliases): Use path_concat instead of ANSI string
52882         concatenation.
52883
52884         * lib/unicodeio.h (PARAMS): Define.
52885         Use it to guard prototype.
52886
52887 2000-03-04  Jim Meyering  <meyering@lucent.com>
52888
52889         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
52890         for lib/localcharset.c.
52891
52892 2000-03-04  Jim Meyering  <meyering@lucent.com>
52893
52894         * lib/Makefile.am (install-exec-local): Create $(libdir) before
52895         installing into it.
52896         (uninstall-local): Uncomment this rule so `make distcheck' works
52897         once again.
52898
52899         * lib/unicodeio.c (<errno.h>): Include it.
52900         (errno): Declare if not defined.
52901
52902         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
52903
52904         * lib/config.charset: New version, incorporating remarks from a linux
52905         i18n mailing list.  From Bruno Haible.
52906
52907 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
52908
52909         * m4/codeset.m4: New file.
52910         * m4/iconv.m4: New file.
52911         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
52912
52913 2000-03-03  Jim Meyering  <meyering@lucent.com>
52914
52915         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
52916
52917 2000-03-02  Jim Meyering  <meyering@lucent.com>
52918
52919         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
52920         the messages come out on separate lines.
52921
52922         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
52923         rather than jm_CHECK_DECLARATIONS.
52924         * m4/decl.m4: Remove now-unused file.
52925
52926         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
52927         geteuid.
52928
52929 2000-03-02  Jim Meyering  <meyering@lucent.com>
52930
52931         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
52932
52933 2000-03-01  Jim Meyering  <meyering@lucent.com>
52934
52935         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
52936         * lib/unicodeio.c: Likewise.
52937
52938 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
52939
52940         * lib/config.charset: New file.
52941         * lib/localcharset.c: New file.
52942         * lib/unicodeio.h, lib/unicodeio.c: New files.
52943         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
52944         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
52945         (noinst_HEADERS): Add unicodeio.h.
52946         (all-local, install-exec-local, charset.alias): New targets.
52947
52948 2000-02-28  Paul Eggert  <eggert@twinsun.com>
52949
52950         * lib/quotearg.c (ALERT_CHAR): New macro.
52951         (quotearg_buffer_restyled): Use it.
52952
52953 2000-02-27  Jim Meyering  <meyering@lucent.com>
52954
52955         * m4/check-decl.m4: Add getenv to the list.
52956
52957 2000-02-27  Jim Meyering  <meyering@lucent.com>
52958
52959         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
52960         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
52961
52962         * lib/backupfile.c: Guard inclusion of stdlib.h with
52963         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
52964         Declare malloc if needed.
52965
52966         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
52967         `#ifndef HAVE_DECL..'
52968         now that autoconf always defines the HAVE_DECL_ symbols.
52969         * lib/human.c: Likewise.
52970         * lib/same.c: Likewise.
52971         * lib/strtoumax.c: Likewise.
52972
52973         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
52974         declaration check was not run.
52975         * lib/hash.c: Likewise.
52976         * lib/human.c: Likewise.
52977         * lib/same.c: Likewise.
52978         * lib/strtoumax.c: Likewise.
52979
52980         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
52981         `.', then first look up the entire `.'-containing string as a login
52982         name.
52983
52984 2000-02-23  Jim Meyering  <meyering@lucent.com>
52985
52986         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
52987         in place of my hack.
52988
52989 2000-02-18  Paul Eggert  <eggert@twinsun.com>
52990
52991         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
52992         (textint): New typedef.
52993         (parser_control): Member year changed from int to textint.
52994         All uses changed.
52995         (YYSTYPE): Removed; replaced by %union with int and textint members.
52996         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
52997         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
52998         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
52999         (tSNUMBER, tUNUMBER): Now of type <textintval>.
53000         (date, number, to_year): Use width of number in digits, not its value,
53001         to determine whether it's a 2-digit year, or a 2-digit time.
53002         (yylex): Store number of digits of numeric tokens.
53003         Reported by John Kendall.
53004
53005         (parser_control): Changed from struct parser_control to typedef (for
53006         consistency).  All uses changed.
53007
53008         (tID): Removed; not used.
53009         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
53010
53011 2000-02-14  Paul Eggert  <eggert@twinsun.com>
53012
53013         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
53014         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
53015
53016 2000-02-12  Jim Meyering  <meyering@lucent.com>
53017
53018         * lib/userspec.c (ISDIGIT): Define it.
53019         (isdigit): Remove definition.
53020         (is_number): Use ISDIGIT, not isdigit.
53021         <libintl.h>: Include.
53022         (_ and N_): Define.
53023         (parse_user_spec): Mark translatable strings.
53024
53025 2000-02-10  Jim Meyering  <meyering@lucent.com>
53026
53027         With these changes, nanosleep.[ch] are finally enough like the other
53028         lib/* replacement files to compile on a few more losing systems.
53029
53030         * lib/nanosleep.h: Don't include config.h.
53031         Remove prototype from declaration of nanosleep.
53032         (PARAMS): Remove now-unneeded definition.
53033         * lib/nanosleep.c: #undef nanosleep.
53034         (rpl_nanosleep): Rename from nanosleep.
53035
53036 2000-02-10  Jim Meyering  <meyering@lucent.com>
53037
53038         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
53039         gnu_nanosleep to rpl_nanosleep.
53040
53041 2000-02-09  Jim Meyering  <meyering@lucent.com>
53042
53043         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
53044         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
53045
53046 2000-02-08  Akim Demaille  <akim@epita.fr>
53047
53048         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
53049         `[' and `]' and remove uses of `changequote'.
53050         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
53051         (AC_SYS_LARGEFILE): Likewise.
53052         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
53053         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
53054         of changequote.
53055         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
53056         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
53057         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
53058         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
53059
53060 2000-02-05  Jim Meyering  <meyering@lucent.com>
53061
53062         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
53063         Remove explicit use of AC_HEADER_TIME.  It is required by
53064         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
53065         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
53066         in autoconf whereby the expansion of the latter ended up preceding
53067         the expansion of its prerequisite, AC_HEADER_TIME.
53068         Reported by Volker Borchert.
53069
53070 2000-02-03  Jim Meyering  <meyering@lucent.com>
53071
53072         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
53073
53074 2000-02-03  Jim Meyering  <meyering@lucent.com>
53075
53076         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
53077         rather than with `#if HAVE_UTMPNAME'.
53078
53079 2000-02-02  Jim Meyering  <meyering@lucent.com>
53080
53081         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
53082         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
53083         Reported by Eli Zaretskii.
53084
53085 2000-02-01  Jim Meyering  <meyering@lucent.com>
53086
53087         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
53088
53089 2000-01-31  Jim Meyering  <meyering@lucent.com>
53090
53091         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
53092         functions.  Add the time.h and sys/time.h headers along with the
53093         AC_REQUIRE'ment of AC_HEADER_TIME.
53094
53095 2000-01-31  Jim Meyering  <meyering@lucent.com>
53096
53097         * lib/nanosleep.h (nanosleep): Guard declaration with
53098         `#if ! HAVE_DECL_NANOSLEEP'.
53099         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
53100         the declaration in that vendor's sys/timers.h.
53101         Reported by Christian Krackowizer.
53102
53103         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
53104         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
53105         (ISPRINT): Likewise.
53106         Reported by Tom Tromey.
53107
53108 2000-01-30  Jim Meyering  <meyering@lucent.com>
53109
53110         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
53111
53112         * m4/prereq.m4 (utmp_includes): Define.
53113         Check for ut_user and ut_name members in both struct utmpx
53114         and struct utmp.
53115
53116 2000-01-30  Jim Meyering  <meyering@lucent.com>
53117
53118         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
53119         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
53120         header files where only utmpx.ut_user is declared.
53121
53122         * lib/readutmp.h (UT_USER): Define.
53123
53124 2000-01-29  Jim Meyering  <meyering@lucent.com>
53125
53126         * m4/lib-check.m4: New file containing library-related checks from
53127         fileutils and sh-utils (textutils had none).
53128
53129 2000-01-28  Jim Meyering  <meyering@lucent.com>
53130
53131         * m4/perl.m4: Change format of warning message to look more like that
53132         from the missing script.  Suggestion from François Pinard.
53133
53134 2000-01-25  Jim Meyering  <meyering@lucent.com>
53135
53136         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
53137         well as time.h in the compile check.
53138         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
53139         Fix typo in cross-compiling case: s/yes/no/.
53140
53141 2000-01-23  Jim Meyering  <meyering@lucent.com>
53142
53143         * m4/jm-macros.m4: Move df-related tests here from
53144         fileutils/configure.in
53145
53146         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
53147         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
53148
53149         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
53150         s/space/ac_fsusage_space/.
53151         (jm_FILE_SYSTEM_USAGE): Take two parameters.
53152
53153         * m4/ftruncate.m4: New file (derived from part of
53154         fileutils/configure.in).
53155         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
53156         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
53157
53158         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
53159         AC_SUBST these here, rather than just in sh-util/configure.in, so
53160         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
53161         all the same.
53162         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
53163         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
53164         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
53165         (AC_SUBST(POW_LIBM)): Likewise.
53166         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
53167
53168 2000-01-23  Jim Meyering  <meyering@lucent.com>
53169
53170         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
53171         obstack.c.
53172
53173 2000-01-22  Jim Meyering  <meyering@lucent.com>
53174
53175         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
53176
53177         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
53178
53179         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
53180         configure.in
53181         (AC_CHECK_HEADERS): Likewise for sh-utils.
53182         (AC_CHECK_HEADERS): Likewise for textutils.
53183         Merge the three lists of headers.
53184
53185         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
53186         from fileutils' configure.in.
53187
53188         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
53189         code. Moved tests into their own function (_jm_DECL_HEADERS) in
53190         check-decl.m4.
53191
53192         * m4/check-decl.m4: Use #if rather than #ifdef.
53193         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
53194         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
53195         (_jm_DECL_HEADERS): Define new function.
53196         (jm_CHECK_DECLARATIONS): Require it.
53197
53198 2000-01-22  Jim Meyering  <meyering@lucent.com>
53199
53200         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
53201         [! HAVE_DECL_STRTOULL]: Declare strtoull.
53202         Required for some AIX systems.  Reported by Christian Krackowizer.
53203         [TESTING] (main): New function.
53204
53205         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
53206         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
53207         letters.
53208
53209         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
53210         iswprint.
53211
53212         * lib/strverscmp.c (ISDIGIT): Define.
53213         (strverscmp): Use ISDIGIT, not isdigit.
53214
53215 2000-01-19  Jim Meyering  <meyering@lucent.com>
53216
53217         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
53218         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
53219         defines `struct timespec' in <sys/time.h>
53220
53221         * m4/c-bs-a.m4: Remove uses of changequote altogether.
53222         Thanks to Akim for explaining.
53223
53224 2000-01-17  Paul Eggert  <eggert@twinsun.com>
53225
53226         * lib/nanosleep.c (nanosleep):
53227         Don't use SA_INTERRUPT to decide whether to call sigaction, as
53228         POSIX.1 doesn't require SA_INTERRUPT and some systems
53229         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
53230         it's been part of POSIX.1 since day 1 (in 1988).
53231
53232 2000-01-17  Jim Meyering  <meyering@lucent.com>
53233
53234         * lib/interlock: Remove unused file.  Reported by François Pinard.
53235
53236 2000-01-16  Paul Eggert  <eggert@twinsun.com>
53237
53238         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
53239         alert, backslash, formfeed, and vertical tab unnecessarily in
53240         shell quoting style.
53241
53242 2000-01-16  Jim Meyering  <meyering@lucent.com>
53243
53244         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
53245         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
53246         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
53247         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
53248
53249 2000-01-16  Jim Meyering  <meyering@lucent.com>
53250
53251         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
53252         because the latter didn't work.
53253
53254 2000-01-15  Jim Meyering  <meyering@lucent.com>
53255
53256         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
53257         (AC_REPLACE_FUNCS): Add memcpy and memset.
53258         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
53259         Add strpbrk.
53260         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
53261
53262 2000-01-12  Jim Meyering  <meyering@lucent.com>
53263
53264         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
53265         (jm_PREREQ): Use it.
53266         (jm_PREREQ_READUTMP): New macro.
53267         (jm_PREREQ): Use it.
53268
53269 2000-01-11  Paul Eggert  <eggert@twinsun.com>
53270
53271         Quote multibyte characters correctly.
53272         * m4/c-bs-a.m4: New file.
53273         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
53274         (jm_PREREQ): Use it.
53275
53276 2000-01-11  Paul Eggert  <eggert@twinsun.com>
53277
53278         * m4/uintmax_t.m4: Port to autoconf 2.13.
53279
53280 2000-01-08  Jim Meyering  <meyering@ascend.com>
53281
53282         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
53283         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
53284
53285 2000-01-04  Jim Meyering  <meyering@ascend.com>
53286
53287         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
53288         jm_STRUCT_DIRENT_D_TYPE.
53289         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
53290         jm_STRUCT_DIRENT_D_INO.
53291         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
53292         jm_STRUCT_UTIMBUF.
53293         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
53294         renamings.
53295         * m4/utime.m4: Likewise.
53296
53297         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
53298         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
53299
53300 2000-01-03  Paul Eggert  <eggert@twinsun.com>
53301
53302         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
53303         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
53304
53305 2000-01-02  Jim Meyering  <meyering@ascend.com>
53306
53307         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
53308         remember if this is necessary.
53309
53310 1999-12-26  Jim Meyering  <meyering@ascend.com>
53311
53312         * m4/jm-macros.m4: Use it here.
53313         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
53314
53315 1999-12-23  Jim Meyering  <meyering@ascend.com>
53316
53317         * m4/jm-macros.m4: Check for clock_gettime (moved from
53318         fileutils/configure.in)
53319         Check for gettimeofday.
53320
53321 1999-12-20  Jim Meyering  <meyering@ascend.com>
53322
53323         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
53324         autoconf-2.14a-1999-12-20.
53325
53326 1999-12-19  Jim Meyering  <meyering@ascend.com>
53327
53328         * m4/lstat-slash.m4: New file.
53329         * m4/jm-macros.m4: Use the new macro:
53330         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
53331
53332 1999-12-07  Jim Meyering  <meyering@ascend.com>
53333
53334         * m4/perl.m4: Require that File::Compare be available, too.
53335         Too many systems seem to lack it.
53336
53337         * m4/strftime.m4: Add checks for most of the cpp macros tested in
53338         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
53339
53340 1999-11-18  Paul Eggert  <eggert@twinsun.com>
53341
53342         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
53343         problem with the QNX 4.25 shell, which doesn't propagate exit
53344         status of failed commands inside shell assignments.
53345
53346 1999-11-17  Jim Meyering  <meyering@ascend.com>
53347
53348         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
53349
53350 1999-11-07  Jim Meyering  <meyering@ascend.com>
53351
53352         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
53353
53354 1999-11-06  Jim Meyering  <meyering@ascend.com>
53355
53356         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
53357         * m4/jm-macros.m4 (jm_MACROS): Use it here.
53358
53359 1999-11-05  Jim Meyering  <meyering@ascend.com>
53360
53361         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
53362         configure.in of textutils, fileutils, and sh-utils into this one
53363         (shared between those packages) file.
53364         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
53365         AC_STRUCT_ST_BLKSIZE.
53366
53367 1999-11-03  Jim Meyering  <meyering@ascend.com>
53368
53369         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
53370         of AC_CHECK_TYPE checks includes unistd.h.
53371         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
53372         Suggestion from Akim Demaille.
53373
53374 1999-10-30  Jim Meyering  <meyering@ascend.com>
53375
53376         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
53377         m4-quoted string.
53378         * m4/ls-mntd-fs.m4: Likewise.
53379         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
53380         * m4/jm-winsz1.m4: Likewise.
53381
53382         * m4/const.m4: Remove file, since the fix made it into the experimental
53383         version of autoconf.
53384         * m4/mktime.m4: Likewise.
53385
53386         * m4/check-type.m4: Remove file, now that the latest version of
53387         AC_CHECK_TYPE takes a third arg to specify additional #includes.
53388
53389         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
53390         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
53391         AC_CHECK_TYPE.
53392
53393 1999-10-04  Jim Meyering  <meyering@ascend.com>
53394
53395         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
53396
53397 1999-09-22  Paul Eggert  <eggert@twinsun.com>
53398
53399         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
53400         2.95.1 bug with HP-UX 10.20.
53401
53402 1999-09-17  Jim Meyering  <meyering@ascend.com>
53403
53404         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
53405         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
53406         due to missing strdup (against sh-utils-2.0).
53407
53408 1999-08-29  Jim Meyering  <meyering@ascend.com>
53409
53410         * m4/jm-macros.m4: Require jm_BISON.
53411         * m4/bison.m4: New file.
53412
53413 1999-08-17  Paul Eggert  <eggert@twinsun.com>
53414
53415         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
53416         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
53417
53418 1999-08-05  Jim Meyering  <meyering@ascend.com>
53419
53420         * m4/getline.m4: Rename test file from conftestdata to conftest.data
53421         to avoid conflicts with `conftest' on 8+3 filesystems.
53422         Suggestion from Eli Zaretskii.
53423
53424 1999-08-04  Jim Meyering  <meyering@ascend.com>
53425
53426         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
53427         fileutils and sh-utils (textutils's getline test was inadequate).
53428         (AM_FUNC_GETLINE): Run this test.
53429         (AC_CHECK_FUNCS): Check for getdelim.
53430         Reported by Bob Proulx.
53431
53432 1999-08-02  Jim Meyering  <meyering@ascend.com>
53433
53434         * m4/jm-macros.m4: Add a comment.
53435
53436 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53437
53438         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
53439         <inttypes.h> defines strtoumax as a macro (and not as a
53440         function).
53441
53442 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53443
53444         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
53445         that we can shift, multiply and divide unsigned long long
53446         values; Ultrix cc can't do it.
53447
53448 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53449
53450         * m4/mktime.m4: New file, which is a preview of what should appear
53451         in the next public autoconf release.
53452
53453 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53454
53455         * m4/lfs.m4: Remove this file.
53456         * m4/largefile.m4: New file.  It contains the old contents of
53457         lfs.m4, except that all names with prefix AC_LFS have been
53458         changed to use the prefix AC_SYS_LARGEFILE instead, to be
53459         compatible with future autoconf versions.  Also, some minor m4
53460         quoting problems have been fixed.
53461
53462 1999-08-01  Paul Eggert  <eggert@twinsun.com>
53463
53464         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
53465         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
53466         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
53467         and simplify the shell code.
53468
53469 1999-08-01  Jim Meyering  <meyering@ascend.com>
53470
53471         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
53472         m4.
53473
53474 1999-07-20  Jim Meyering  <meyering@ascend.com>
53475
53476         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
53477
53478 1999-07-15  Jim Meyering  <meyering@ascend.com>
53479
53480         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
53481
53482 1999-05-22  Jim Meyering  <meyering@ascend.com>
53483
53484         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
53485
53486 1999-05-20  Jim Meyering  <meyering@ascend.com>
53487
53488         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
53489         Add a colon after each `then' in case $4 is empty.
53490
53491 1999-05-16  Jim Meyering  <meyering@ascend.com>
53492
53493         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
53494
53495 1999-05-10  Jim Meyering  <meyering@ascend.com>
53496
53497         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
53498
53499         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
53500         AC_FUNC_MKTIME.
53501
53502 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
53503
53504         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
53505
53506 1999-05-04  Paul Eggert  <eggert@twinsun.com>
53507
53508         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
53509         not CPPFLAGS, so that linking works correctly in IRIX.
53510
53511 1999-04-30  Paul Eggert  <eggert@twinsun.com>
53512
53513         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
53514
53515 1999-04-20  Paul Eggert  <eggert@twinsun.com>
53516
53517         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
53518         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
53519         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
53520         jm_AC_TYPE_UNSIGNED_LONG_LONG.
53521         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
53522
53523         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
53524
53525 1999-04-20  Jim Meyering  <meyering@ascend.com>
53526
53527         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
53528         AC_REPLACE xstroull if necessary.  From Paul Eggert.
53529         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
53530
53531 1999-04-18  Jim Meyering  <meyering@ascend.com>
53532
53533         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
53534         * m4/jm-macros.m4: Use it.
53535
53536 1999-04-06  Jim Meyering  <meyering@ascend.com>
53537
53538         * m4/strftime.m4: Remove test for %f.
53539
53540 1999-03-29  Jim Meyering  <meyering@ascend.com>
53541
53542         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
53543         superset of the AC_TYPE_* checks in the textutils, fileutils,
53544         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
53545         AC_TYPE_PID_T.
53546
53547 1999-03-28  Jim Meyering  <meyering@ascend.com>
53548
53549         * m4/jm-macros.m4: Define GNU_PACKAGE here.
53550         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
53551         replaced e.g., in the *.sh files of the sh-utils.
53552
53553 1999-03-20  Jim Meyering  <meyering@ascend.com>
53554
53555         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
53556         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
53557         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
53558
53559 1999-03-19  Jim Meyering  <meyering@ascend.com>
53560
53561         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
53562
53563 1999-03-12  Jim Meyering  <meyering@ascend.com>
53564
53565         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
53566
53567 1999-03-07  Jim Meyering  <meyering@ascend.com>
53568
53569         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
53570         declared.
53571
53572 1999-02-17  Jim Meyering  <meyering@ascend.com>
53573
53574         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
53575         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
53576
53577 1999-02-07  Jim Meyering  <meyering@ascend.com>
53578
53579         * m4/group-member.m4: New file -- extracted from sh-utils'
53580         configure.in.
53581
53582         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
53583         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
53584
53585 1999-02-06  Jim Meyering  <meyering@ascend.com>
53586
53587         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
53588         * m4/fnmatch.m4: Likewise.
53589         * m4/getgroups.m4: Likewise.
53590         * m4/lstat.m4: Likewise.
53591         * m4/malloc.m4: Likewise.
53592         * m4/putenv.m4: Likewise.
53593         * m4/realloc.m4: Likewise.
53594         * m4/regex.m4: Likewise.
53595         * m4/stat.m4: Likewise.
53596         * m4/strftime.m4: Likewise.
53597         Suggestion from Alain Magloire.
53598
53599         * m4/chown.m4: Use `.$ac_objext', not `.o'.
53600         * m4/fnmatch.m4: Likewise.
53601         * m4/getgroups.m4: Likewise.
53602         * m4/getline.m4: Likewise.
53603         * m4/lstat.m4: Likewise.
53604         * m4/malloc.m4: Likewise.
53605         * m4/memcmp.m4: Likewise.
53606         * m4/putenv.m4: Likewise.
53607         * m4/realloc.m4: Likewise.
53608         * m4/regex.m4: Likewise.
53609         * m4/stat.m4: Likewise.
53610         * m4/strftime.m4: Likewise.
53611         Suggestion from Alain Magloire.
53612
53613         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
53614         an argument.
53615
53616         * m4/regex.m4: Add a run-time Test for proper operation of
53617         re_compile_pattern.
53618
53619 1999-01-31  Jim Meyering  <meyering@ascend.com>
53620
53621         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
53622
53623 1999-01-30  Jim Meyering  <meyering@ascend.com>
53624
53625         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
53626
53627         * m4/jm-mktime.m4: Make this a wrapper around the official
53628         AM_FUNC_MKTIME rather than my private copy, now that the official one
53629         is up to date.
53630         * m4/mktime.m4: Remove file.
53631
53632         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
53633         * m4/uptime.m4: Likewise.
53634         * m4/uintmax_t.m4: Likewise.
53635
53636 1999-01-28  Jim Meyering  <meyering@ascend.com>
53637
53638         * m4/jm-macros.m4: Use jm_AFS.
53639         * m4/afs.m4: New file (from fileutils' configure.in).
53640
53641         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
53642         * m4/chown.m4: Likewise.
53643         * m4/d-ino.m4: Likewise.
53644         * m4/d-type.m4: Likewise.
53645         * m4/fnmatch.m4: Likewise.
53646         * m4/getgroups.m4: Likewise.
53647         * m4/gettext.m4: Likewise.
53648         * m4/jm-mktime.m4: Likewise.
53649         * m4/jm-winsz2.m4: Likewise.
53650         * m4/lcmessage.m4: Likewise.
53651         * m4/ls-mntd-fs.m4: Likewise.
53652         * m4/malloc.m4: Likewise.
53653         * m4/memcmp.m4: Likewise.
53654         * m4/putenv.m4: Likewise.
53655         * m4/realloc.m4: Likewise.
53656         * m4/st_mtim.m4: Likewise.
53657         * m4/strftime.m4: Likewise.
53658
53659 1999-01-16  Jim Meyering  <meyering@ascend.com>
53660
53661         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
53662         (ARGMATCH_DIE_DECL): Define.
53663
53664 1999-01-12  Jim Meyering  <meyering@ascend.com>
53665
53666         * m4/Makefile.am.in: Rewrite to avoid using fmt.
53667         Reported by Lars Hecking.
53668
53669 1999-01-10  Jim Meyering  <meyering@ascend.com>
53670
53671         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
53672         gross kludge.
53673         * m4/inttypes_h.m4: Likewise.
53674         * m4/lstat.m4: Likewise.
53675         * m4/malloc.m4: Likewise.
53676         * m4/readdir.m4: Likewise.
53677         * m4/realloc.m4: Likewise.
53678         * m4/st_dm_mode.m4: Likewise.
53679         * m4/stat.m4: Likewise.
53680         * m4/utimbuf.m4: Likewise.
53681         * m4/utimes.m4: Likewise.
53682
53683         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
53684         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
53685         comments in config.h.in are meaningful.
53686
53687         * m4/jm-macros.m4: Require autoconf-2.13 here.
53688
53689         * m4/regex.m4: By default, don't use the included regex.c on systems
53690         with glibc 2.  Suggestion from Uli Drepper.
53691
53692 1999-01-02  Jim Meyering  <meyering@ascend.com>
53693
53694         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
53695
53696 1998-12-18  Jim Meyering  <meyering@ascend.com>
53697
53698         * m4/Makefile.am.in (Makefile.am): Simplify rule.
53699         Based on a suggestion from Lars Hecking.
53700
53701 1998-11-16  Paul Eggert  <eggert@twinsun.com>
53702
53703         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
53704
53705 1998-11-16  Jim Meyering  <meyering@ascend.com>
53706
53707         * m4/lfs.m4: Double-quote the `uname...` expression.
53708
53709 1998-11-14  Jim Meyering  <meyering@ascend.com>
53710
53711         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
53712         * m4/stat.m4: Likewise.
53713
53714 1998-11-03  Jim Meyering  <meyering@ascend.com>
53715
53716         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
53717         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
53718
53719 1998-10-18  Jim Meyering  <meyering@ascend.com>
53720
53721         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
53722
53723 1998-10-17  Jim Meyering  <meyering@ascend.com>
53724
53725         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
53726         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
53727         calls for those previously hard-coded headers.  Instead, take a new
53728         parameter.
53729         (jm_CHECK_DECLARATIONS): Reflect interface change.
53730         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
53731         (jm_CHECK_DECL_LOCALTIME_R): New macro.
53732
53733         * m4/mktime.m4: Test for spring-forward gap before long-running test.
53734
53735 1998-10-14  Jim Meyering  <meyering@ascend.com>
53736
53737         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
53738         instead of "TZ=America/Vancouver".  From Paul Eggert.
53739
53740 1998-10-11  Jim Meyering  <meyering@ascend.com>
53741
53742         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
53743         This adds a test for a recently added compatibility fix for mktime.c.
53744         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
53745
53746 1998-09-27  Jim Meyering  <meyering@ascend.com>
53747
53748         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
53749
53750         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
53751         ../configure.in, including a change from Gordon Matzigkeit to allow
53752         cross-compiling for the Hurd.
53753
53754         * m4/glibc.m4: New file/macro to test for the GNU C Library
53755         versions 1 and 2.  From Gordon Matzigkeit.
53756         Indent.
53757
53758 1998-09-21  Jim Meyering  <meyering@ascend.com>
53759
53760         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
53761
53762 1998-08-18  Paul Eggert  <eggert@twinsun.com>
53763
53764         Port nanosecond-resolution times to UnixWare 2.1.2 and
53765         pedantic Solaris 2.6.
53766
53767         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
53768         AC_STRUCT_ST_MTIM.
53769         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
53770         Generate name of ns member, instead of just 1 or undef.
53771         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
53772
53773 1998-08-15  Jim Meyering  <meyering@ascend.com>
53774
53775         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
53776         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
53777         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
53778         instead of jm_TYPE_SSIZE_T.
53779
53780 1998-08-12  Jim Meyering  <meyering@ascend.com>
53781
53782         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
53783
53784 1998-08-02  Jim Meyering  <meyering@ascend.com>
53785
53786         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
53787         in acconfig.h manually.
53788
53789 1998-07-31  Paul Eggert  <eggert@twinsun.com>
53790
53791         * m4/st_mtim.m4: New file.
53792
53793 1998-07-28  Jim Meyering  <meyering@ascend.com>
53794
53795         * m4/utimes.m4: Undef stat.
53796
53797 1998-07-25  Jim Meyering  <meyering@ascend.com>
53798
53799         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
53800         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
53801
53802 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
53803
53804         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
53805         uid and gid actually remain unchanged.
53806
53807 1998-07-07  Jim Meyering  <meyering@ascend.com>
53808
53809         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
53810
53811 1998-07-04  Jim Meyering  <meyering@ascend.com>
53812
53813         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
53814         to prove that this macro can be used in packages without regex.c.
53815
53816 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
53817
53818         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
53819         is to be used.
53820
53821 1998-07-03  Jim Meyering  <meyering@ascend.com>
53822
53823         * m4/gettext.m4: Add -lintl if it's found to be necessary.
53824
53825         * m4/gettext.m4: New file -- from gettext-0.10.35.
53826         * m4/lcmessage.m4: Likewise.
53827         * m4/progtest.m4: Likewise.
53828
53829         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
53830         * m4/jm-macros.m4: Require the new macro.
53831
53832 1998-06-29  Jim Meyering  <meyering@ascend.com>
53833
53834         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
53835         for the definition of NGROUPS (used in a system header included
53836         by sys/mount.h).
53837
53838 1998-06-28  Jim Meyering  <meyering@ascend.com>
53839
53840         * m4/ls-mntd-fs.m4: New file.
53841         * m4/fstypename.m4: New file.
53842
53843         * m4/jm-macros.m4: Require the new macro.
53844         * m4/jm-glibc-io.m4: New file.
53845
53846 1998-05-19  Jim Meyering  <meyering@ascend.com>
53847
53848         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
53849         * m4/lchown.m4: New file.
53850
53851         * m4/Makefile.am.in: New file.
53852         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
53853
53854 1998-05-14  Jim Meyering  <meyering@ascend.com>
53855
53856         * m4/Makefile.am (EXTRA_DIST): Add them.
53857         * m4/jm-macros.m4: New file.
53858         * m4/utimbuf.m4: New file.
53859
53860 1998-05-12  Jim Meyering  <meyering@ascend.com>
53861
53862         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
53863
53864 1998-05-11  Jim Meyering  <meyering@ascend.com>
53865
53866         * m4/isc-posix.m4: New file.
53867
53868 1998-05-10  Jim Meyering  <meyering@ascend.com>
53869
53870         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
53871
53872 1998-05-09  Jim Meyering  <meyering@ascend.com>
53873
53874         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
53875         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
53876         with automake.
53877
53878         * m4/ssize_t.m4: New file.
53879         * m4/mktime.m4: Remove file -- the new automake has this now.
53880
53881 1998-04-26  Jim Meyering  <meyering@ascend.com>
53882
53883         * m4/assert.m4: New file.
53884         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
53885
53886 1998-04-05  Jim Meyering  <meyering@ascend.com>
53887
53888         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
53889         (jm_PREREQ): Use it here.
53890
53891 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
53892
53893         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
53894         in acconfig.h.
53895
53896 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
53897
53898         * m4/prereq.m4: New file.
53899         * m4/error.m4: New file.
53900         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
53901
53902 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
53903
53904         * m4/getline.m4: Don't set am_cv_func_working_getline before the
53905         cache-check for the same variable -- that defeated the purpose of
53906         the test; the test program was never run.  This was a problem only
53907         on systems with losing getline functions -- HP-UX 10.20 is one.
53908         Reported by Bjorn Helgaas.
53909
53910 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
53911
53912         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
53913
53914 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
53915
53916         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
53917
53918         * m4/const.m4: New file.  Use an initializer in this declaration
53919         typedef int charset[2]; const charset x;
53920         Reported by Bob Glickstein.
53921
53922 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
53923
53924         * m4/chown.m4: Fix reversed types on -1 args to chown.
53925         From Kaveh Ghazi.
53926
53927 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
53928
53929         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
53930         Add lseek and memchr.
53931
53932         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
53933         T.E.Dickey <dickey@clark.net> said that some older preprocessors
53934         have a 20-character limit on names.
53935
53936 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
53937
53938         * m4/inttypes_h.m4: New file.
53939         * m4/uintmax_t.m4: New file.
53940         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
53941
53942
53943         -----
53944
53945         Local Variables:
53946         coding: utf-8
53947         End:
53948
53949         Copyright (C) 1997-2009 Free Software Foundation, Inc.
53950
53951         Copying and distribution of this file, with or without
53952         modification, are permitted provided the copyright notice
53953         and this notice are preserved.