Tests for module 'uname'.
[pspp] / ChangeLog
1 2009-08-02  Bruno Haible  <bruno@clisp.org>
2
3         Tests for module 'uname'.
4         * modules/uname-tests: New file.
5         * tests/test-uname.c: New file.
6
7         New module 'uname'.
8         * lib/uname.c: New file.
9         * m4/uname.m4: New file.
10         * modules/uname: New file.
11         * doc/posix-functions/uname.texi: Mention the new module.
12
13 2009-08-02  Bruno Haible  <bruno@clisp.org>
14
15         Tests for module 'sys_utsname'.
16         * modules/sys_utsname-tests: New file.
17         * tests/test-sys_utsname.c: New file.
18
19         New module 'sys_utsname'.
20         * lib/sys_utsname.in.h: New file, based on glibc's <sys/utsname.h>.
21         * m4/sys_utsname_h.m4: New file.
22         * modules/sys_utsname: New file.
23         * doc/posix-headers/sys_utsname.texi: Mention the new module.
24
25 2009-08-02  Bruno Haible  <bruno@clisp.org>
26
27         Implicitly initialize the sockets library.
28         * lib/gethostname.c: Include sockets.h.
29         (rpl_gethostname): Invoke gl_sockets_startup.
30         * lib/socket.c: Include sockets.h.
31         (rpl_socket): Invoke gl_sockets_startup.
32         * modules/gethostname (Depends-on): Add sockets.
33         * modules/socket (Depends-on): Likewise.
34         * tests/test-poll.c: Don't include sockets.h.
35         (main): Don't invoke gl_sockets_startup.
36         * tests/test-select.c: Don't include sockets.h.
37         (main): Don't invoke gl_sockets_startup.
38
39 2009-08-02  Bruno Haible  <bruno@clisp.org>
40
41         Allow multiple calls to gl_sockets_startup.
42         * lib/sockets.c (initialized_sockets_version): New variable.
43         (gl_sockets_startup): Do nothing if already called for this or a higher
44         version.
45         (gl_sockets_cleanup): Reset initialized_sockets_version.
46
47 2009-08-03  Simon Josefsson  <simon@josefsson.org>
48
49         * tests/test-argp-version-etc-1.sh: Use EXEEXT.  Don't fail on
50         different project/version.
51
52 2009-08-02  Paolo Bonzini  <bonzini@gnu.org>
53             Bruno Haible  <bruno@clisp.org>
54
55         Tests for module 'pipe-filter-gi'.
56         * modules/pipe-filter-gi-tests: New file.
57         * tests/test-pipe-filter-gi1.sh: New file.
58         * tests/test-pipe-filter-gi1.c: New file.
59         * tests/test-pipe-filter-gi2.sh: New file.
60         * tests/test-pipe-filter-gi2-main.c: New file.
61         * tests/test-pipe-filter-gi2-child.c: New file.
62
63         New module 'pipe-filter-gi'.
64         * lib/pipe-filter-gi.c: New file.
65         * modules/pipe-filter-gi: New file.
66
67 2009-08-02  Bruno Haible  <bruno@clisp.org>
68             Paolo Bonzini  <bonzini@gnu.org>
69
70         Tests for module 'pipe-filter-ii'.
71         * modules/pipe-filter-ii-tests: New file.
72         * tests/test-pipe-filter-ii1.sh: New file.
73         * tests/test-pipe-filter-ii1.c: New file.
74         * tests/test-pipe-filter-ii2.sh: New file.
75         * tests/test-pipe-filter-ii2-main.c: New file.
76         * tests/test-pipe-filter-ii2-child.c: New file.
77
78         New module 'pipe-filter-ii'.
79         * lib/pipe-filter.h: New file.
80         * lib/pipe-filter-ii.c: New file.
81         * lib/pipe-filter-aux.h: New file.
82         * modules/pipe-filter-ii: New file.
83
84 2009-08-02  Simon Josefsson  <simon@josefsson.org>
85
86         * lib/gc-libgcrypt.c: Change copyright to FSF.
87         * lib/gc-gnulib.c: Likewise.
88
89 2009-08-02  Martin Lambers  <marlam@marlam.de>  (tiny change)
90
91         * lib/gethostname.c: Include limits.h.
92
93 2009-08-02  Simon Josefsson  <simon@josefsson.org>
94             Bruno Haible  <bruno@clisp.org>
95
96         Ensure HOST_NAME_MAX as part of the gethostname module.
97         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): On native Windows platforms,
98         define also HOST_NAME_MAX.
99         * tests/test-gethostname.c: Include <limits.h>.
100         (main): Check also HOST_NAME_MAX.
101         * doc/posix-headers/limits.texi: Document the mingw problem.
102
103 2009-08-02  Bruno Haible  <bruno@clisp.org>
104
105         * lib/gethostname.c (gethostname): Fix handling of large len argument.
106         Add comments.
107
108 2009-03-31  Simon Josefsson  <simon@josefsson.org>
109
110         * lib/gethostname.c: Add Windows wrapper.
111         * m4/gethostname.m4: Look for gethostname in -lws2_32.
112         * modules/gethostname: Depend on sys_socket & errno, for also
113         added lib/w32sock.h.  Add GETHOSTNAME_LIB link directive.
114         * modules/gethostname-tests: Link to @GETHOSTNAME_LIB@.
115
116 2009-07-31  Jim Meyering  <meyering@redhat.com>
117
118         getloadavg: fix symbol name in comment
119         * lib/getloadavg.c: Correct a typo I introduced when adding
120         comments to Matt's change: s/NLIST_POINTER/N_NAME_POINTER/.
121         Matt Kraai spotted the problem.
122
123 2009-07-29  Matt Kraai  <mkraai@beckman.com>
124
125         getloadavg: check whether n_name is a pointer, for QNX 6.4.1
126         * lib/getloadavg.c (getloadavg): Use the strcpy-into-nlist.n_name
127         code also if ! defined N_NAME_POINTER.
128         * m4/getloadavg.m4 (gl_GETLOADAVG): Add a link-test for N_NAME_POINTER.
129         This is required on QNX 6.4.1, where /usr/include/nlist.h exists,
130         but the n_name member is a 12-byte array.
131
132 2009-07-29  Joel E. Denny  <jdenny@clemson.edu>
133
134         update-copyright: generalize comment handling
135         * build-aux/update-copyright: Handle copyright statements
136         within more comment styles.
137         Document usage.
138         Report any file with an external copyright holder or parse failure.
139
140 2009-07-29  Jim Meyering  <meyering@redhat.com>
141
142         mktime: correct setting of REPLACE_MKTIME
143         * m4/mktime.m4 (gl_FUNC_MKTIME): Set REPLACE_MKTIME=0, when required.
144
145         update-copyright: new module
146         * modules/update-copyright: New file.
147         * build-aux/update-copyright: New file.
148         * MODULES.html.sh (maint+release support): Add update-copyright.
149
150 2009-07-27  Bruno Haible  <bruno@clisp.org>
151
152         Fix compilation error when <ctime> is used and mktime is replaced.
153         * lib/time.in.h (mktime): New declaration.
154         * m4/mktime.m4 (gl_FUNC_MKTIME): Require gl_HEADER_TIME_H_DEFAULTS. Set
155         REPLACE_MKTIME instead of defining mktime in config.h.
156         * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize REPLACE_MKTIME.
157         * modules/time (Makefile.am): Substitute REPLACE_MKTIME.
158         Reported by Ross McFarland <rwmcfa1@neces.com>.
159
160 2009-07-27  Bruno Haible  <bruno@clisp.org>
161
162         * lib/math.in.h (cosl, logl, sinl): Undefine before declaring it.
163         Reported by Matt Kraai <mkraai@beckman.com>.
164
165 2009-07-25  Jim Meyering  <meyering@redhat.com>
166
167         maint.mk: avoid warnings about missing files
168         * top/maint.mk (PREV_VERSION): Suppress stderr, to hide a
169         diagnostic when .prev-version does not exist.
170         (_cfg_mk): Define, so it can be empty when cfg.mk does not exist.
171         (syntax-check-rules): Use $(_cfg_mk) to avoid a diagnostic about
172         nonexistent cfg.mk.
173         Suggestions from Simon Josefsson.
174
175 2009-07-25  Bruno Haible  <bruno@clisp.org>
176
177         * lib/math.in.h (cosl, logl, sinl): Don't declare if they are already
178         defined as macros. Needed on QNX 6.4.1.
179         Reported by Matt Kraai <mkraai@beckman.com>.
180
181 2009-07-23  Jim Meyering  <meyering@redhat.com>
182
183         maint.mk: invoke "make dist" with a working value of XZ_OPT
184         * top/maint.mk (vc-dist): Use no "-" in the value of XZ_OPT.
185
186 2009-07-22  Matt Kraai  <mkraai@beckman.com>  (tiny change)
187
188         Make fseeko.c compile on QNX.
189         * lib/fseeko.c (rpl_fseeko): Use the numerical value of _MWRITE.
190
191 2009-07-22  Peter Simons  <simons@cryp.to>
192
193         C++: wrap md2,md5,sha1,etc. function declarations in extern "C" scope
194         * lib/md2.h [__cplusplus]: Wrap declarations in extern "C" scope.
195         * lib/md4.h: Likewise.
196         * lib/md5.h: Likewise.
197         * lib/sha1.h: Likewise.
198         * lib/sha256.h: Likewise.
199         * lib/sha512.h: Likewise.
200
201         tests-sha1: don't assign literal string to 'char *' variable
202         * tests/test-sha1.c (main): Declare locals with "const" to match
203         attributes of the right hand side.
204
205 2009-07-21  Eric Blake  <ebb9@byu.net>
206
207         dup2: fix more mingw problems
208         * lib/dup2.c (rpl_dup2) [_WIN32]: Avoid hanging when duplicating
209         fd to itself.
210         * doc/posix-functions/dup2.texi (dup2): Document the bug.
211         * lib/unistd.in.h (dup2) [REPLACE_FCHDIR]: Avoid name collision.
212         * lib/fchdir.c (dup2): Manage preprocessor macros correctly.
213         (rpl_dup2_fchdir): Rename from rpl_dup2, and let dup2 module take
214         care of mingw bugs.
215
216 2009-07-21  Jim Meyering  <meyering@redhat.com>
217
218         vc-list-files: avoid failure when /bin/sh is dash
219         * build-aux/vc-list-files: Avoid a shell portability problem with dash.
220         On some Debian based systems, /bin/sh is a symlink to dash, and running
221         this command would omit the "/" following each 'tests' prefix:
222           dash -x build-aux/vc-list-files -C . tests
223         That is because bash and dash work differently:
224           $ for i in bash dash; do $i -c 'a=odd; a=ok b=$a; echo '$i' $b'; done
225           bash ok
226           dash odd
227
228 2009-07-21  Eric Blake  <ebb9@byu.net>
229
230         dup2-tests: test previous patch
231         * modules/dup2-tests: New file.
232         * tests/test-dup2.c: Likewise.
233         * tests/test-open.c (main): Avoid unspecified behavior.
234         * tests/test-pipe.c (child_main): Use dup2 semantics to simplify
235         test.
236
237         dup2: work around mingw and cygwin 1.5 bug
238         * m4/dup2.m4 (gl_FUNC_DUP2): Detect mingw bug.
239         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
240         * modules/unistd (Makefile.am): Substitute it.
241         * lib/unistd.in.h (dup2): Declare the replacement.
242         * lib/dup2.c (dup2) [REPLACE_DUP2]: Implement it.
243         * doc/posix-functions/dup2.texi (dup2): Document the bugs.
244         * lib/fchdir.c (rpl_dup2): Don't collide with mingw replacement.
245         * modules/execute (Depends-on): Add dup2.
246         * modules/fseterr (Depends-on): Likewise.
247         * modules/pipe (Depends-on): Likewise.
248         * modules/posix_spawn-internal (Depends-on): Likewise.
249
250 2009-07-21  Bruno Haible  <bruno@clisp.org>
251
252         * modules/.gitattributes: New file.
253
254 2009-07-20  Bruno Haible  <bruno@clisp.org>
255
256         * tests/test-pipe.c (BACKUP_STDERR_FILENO): New macro.
257         (main): Use it.
258
259 2009-07-20  Eric Blake  <ebb9@byu.net>
260
261         test-pipe: make a bit more robust.
262         * tests/test-pipe.c (myerr): Allow error messages regardless of
263         what we do to stderr.
264         (test_pipe): Rearrange to avoid deadlock.
265         (child_main): Try a larger read, to ensure we avoided deadlock.
266         * lib/pipe.c (create_pipe) [_WIN32]: Fix comment.
267         * lib/pipe.h (create_pipe_bidi): Document potential for deadlock
268         if misused.
269
270 2009-07-19  Jim Meyering  <meyering@redhat.com>
271
272         fts: avoid false-positive cycle-detection
273         * lib/fts.c (fts_read): Reinitialize cycle-detection data structures
274         for each new command line argument.
275
276 2009-07-19  Bruno Haible  <bruno@clisp.org>
277
278         Fix build error on mingw with the modules sys_select and unistd.
279         * modules/acl-tests (Depends-on): Add close.
280         * modules/binary-io-tests (Depends-on): Likewise.
281         * modules/closein-tests (Depends-on): Likewise.
282         * modules/flock-tests (Depends-on): Likewise.
283         * modules/fsync-tests (Depends-on): Likewise.
284         * modules/lseek-tests (Depends-on): Likewise.
285         * modules/pipe-tests (Depends-on): Likewise.
286         * modules/posix_spawn-tests (Depends-on): Likewise.
287         * modules/posix_spawnp-tests (Depends-on): Likewise.
288         * modules/stat-time-tests (Depends-on): Likewise.
289         * modules/yesno-tests (Depends-on): Likewise.
290
291 2009-07-19  Bruno Haible  <bruno@clisp.org>
292
293         Unify conditionals.
294         * lib/pipe.h: Detect native Win32 by looking at _WIN32 and __WIN32__
295         macros, not at the compiler macros.
296         * lib/pipe.c: Likewise.
297         * lib/execute.c: Likewise.
298         * lib/spawni.c: Likewise.
299
300 2009-07-19  Bruno Haible  <bruno@clisp.org>
301
302         Fix handling of closed stdin/stdout/stderr on mingw.
303         * lib/w32spawn.h: Include unistd.h.
304         (dup_noinherit): Return -1 if the old handle is invalid. Allocate new
305         file descriptor with O_NOINHERIT flag.
306         (fd_safer_noinherit): New function, based on fd-safer.c.
307         (dup_safer_noinherit): New function, based on dup-safer.c.
308         (undup_safer_noinherit): New function.
309         * lib/execute.c (execute) [WIN32]: Use dup_safer_noinherit instead of
310         dup_noinherit. Use undup_safer_noinherit instead of dup2 and close.
311         * lib/pipe.c (create_pipe) [WIN32]: Likewise. Use fd_safer_noinherit
312         instead of fd_safer.
313         * tests/test-pipe.c: Include <windows.h>.
314         (child_main) [WIN32]: Test the handle of STDERR_FILENO, not its close() result.
315
316         * tests/test-pipe.c (child_main, parent_main): New functions, extracted
317         from main.
318         (test_pipe): Pass an extra argument for disambiguation.
319         (main): Invoke parent_main or child_main.
320
321         * tests/test-pipe.c (test_pipe): Pass slave_process = true argument
322         consistently.
323
324 2009-07-18  Eric Blake  <ebb9@byu.net>
325
326         test-pipe: fix mingw build
327         * tests/test-pipe.c (main): Avoid fcntl on mingw.
328
329 2009-07-18  Bruno Haible  <bruno@clisp.org>
330
331         * modules/pipe-tests (Makefile.am): Fix typo.
332
333 2009-07-18  Eric Blake  <ebb9@byu.net>
334
335         error: fix mingw build
336         * lib/error.c (error, error_at_line): Avoid fcntl on mingw.
337         Reported by Bruno Haible.
338
339         error: avoid undefined use of stdout
340         * lib/error.c (error, error_at_line): Check that fd 1 is open
341         before flushing stdout.  Avoids a crash on cygwin when libsigsegv
342         is handling faults and the close_stdout module wants to report the
343         detection of closed stdout as an error.
344
345 2009-07-17  Eric Blake  <ebb9@byu.net>
346
347         pipe: be robust in face of closed fds
348         * lib/pipe.c (create_pipe): Closed standard descriptors in parent
349         should cause child to misbehave.
350         * modules/pipe-tests: New module.
351         * tests/test-pipe.c: New file.
352         * tests/test-pipe.sh: New file.
353         Reported by Akim Demaille.
354
355 2009-07-14  Bruno Haible  <bruno@clisp.org>
356
357         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Guess it works on glibc systems.
358         Reported by anonymous kc.
359
360 2009-07-07  Jim Meyering  <meyering@redhat.com>
361
362         maint.mk: don't look for translatable strings in *.m4 or *.mk
363         * top/maint.mk (sc_po_check): Skip *.m4 and *.mk files,
364         when searching for translatable strings.
365
366 2009-07-05  Jim Meyering  <meyering@redhat.com>
367
368         remove superfluous parentheses in STREQ definition
369         * tests/test-argv-iter.c (STREQ): Remove redundant parentheses.
370         * lib/getugroups.c (STREQ): Likewise.
371         * lib/fnmatch.c (STREQ): Likewise.
372         Spotted by Bruno Haible.
373
374 2009-07-04  Jim Meyering  <meyering@redhat.com>
375
376         argv-iter: new module
377         * MODULES.html.sh: Add argv-iter.
378         * lib/argv-iter.c, lib/argv-iter.h: New files.
379         * modules/argv-iter: New file.
380         * modules/argv-iter-tests: New file.
381         * tests/test-argv-iter.c: Test it.
382
383 2009-07-04  Bruno Haible  <bruno@clisp.org>
384
385         Fix assertion.
386         * lib/git-merge-changelog.c (compute_mapping): In the case where file1
387         contains more exact copies of a given entry than file2, leave the extra
388         copies unpaired rather than aborting.
389         Reported by Eric Blake.
390
391 2009-07-02  Bruno Haible  <bruno@clisp.org>
392
393         Speedup git-merge-changelog for git cherry-pick.
394         * lib/git-merge-changelog.c (struct entries_mapping): New type.
395         (entries_mapping_get): New function, extracted from compute_mapping.
396         (entries_mapping_reverse_get): New function.
397         (compute_mapping): Add a 'full' argument. Return the result in a
398         'struct entries_mapping'.
399         (main): Update. Access the mappings through entries_mapping_get.
400         Reported by Eric Blake.
401
402 2009-07-02  Bruno Haible  <bruno@clisp.org>
403
404         * lib/git-merge-changelog.c (compute_mapping): Fix determination of
405         best_i.
406
407 2009-07-02  Bruno Haible  <bruno@clisp.org>
408
409         Speed up approximate search for matching ChangeLog entries.
410         * lib/git-merge-changelog.c (entry_fstrcmp): Add a lower_bound
411         argument. Call fstrcmp_bounded instead of fstrcmp.
412         (compute_mapping, try_split_merged_entry, main): Update callers.
413
414 2009-07-02  Bruno Haible  <bruno@clisp.org>
415
416         * lib/git-merge-changelog.c (main): Add comment about git cherry-pick.
417
418 2009-06-30  Bruno Haible  <bruno@clisp.org>
419
420         Reduce the number of uc_is_cased calls.
421         * lib/unicase.h (casing_suffix_context_t): Add
422         'first_char_except_ignorable' field.
423         * lib/unicase/context.h (SCC_FINAL_SIGMA_MASK): Remove macro.
424         (SCC_MORE_ABOVE_MASK, SCC_BEFORE_DOT_MASK): Update.
425         * lib/unicase/empty-suffix-context.c (unicase_empty_suffix_context):
426         Update initializer.
427         * lib/unicase/u-casemap.h (FUNC): Don't invoke uc_is_cased on
428         case-ignorable characters.
429         * lib/unicase/u-ct-totitle.h (FUNC): Likewise.
430         * lib/unicase/u-suffix-context.h (FUNC2): Don't call uc_is_cased here.
431         * modules/unicase/u8-suffix-context (Depends-on): Remove unicase/cased.
432         * modules/unicase/u16-suffix-context (Depends-on): Likewise.
433         * modules/unicase/u32-suffix-context (Depends-on): Likewise.
434
435 2009-06-30  Bruno Haible  <bruno@clisp.org>
436
437         Tests for module 'unicase/ignorable'.
438         * modules/unicase/ignorable-tests: New file.
439         * tests/unicase/test-ignorable.c: New file, generated by
440         gen-uni-tables.
441
442         Tests for module 'unicase/cased'.
443         * modules/unicase/cased-tests: New file.
444         * tests/unicase/test-cased.c: New file, generated by gen-uni-tables.
445         * tests/unicase/test-predicate-part1.h: New file, derived from
446         tests/unictype/test-predicate-part1.h.
447         * tests/unicase/test-predicate-part2.h: New file, same as
448         tests/unictype/test-predicate-part2.h.
449
450         Fix evaluation of "Before C" condition of FINAL_SIGMA.
451         * lib/gen-uni-tables.c (is_cased, is_case_ignorable): New functions.
452         (output_casing_properties): New function.
453         (main): Call it.
454         * lib/unicase/cased.h: New file, generated by gen-uni-tables.
455         * lib/unicase/cased.c: Include unictype/bitmap.h.
456         (uc_is_cased): Define through a bitmap lookup.
457         * lib/unicase/ignorable.h: New file, generated by gen-uni-tables.
458         * lib/unicase/ignorable.c: Include unictype/bitmap.h.
459         (uc_is_case_ignorable): Define through a bitmap lookup.
460         * modules/unicase/cased (Files): Add lib/unicase/cased.h,
461         lib/unictype/bitmap.h.
462         (Depends-on): Add inline. Clean up.
463         * modules/unicase/ignorable (Files): Add lib/unicase/ignorable.h,
464         lib/unictype/bitmap.h.
465         (Depends-on): Add inline. Clean up.
466         * tests/unicase/test-u8-tolower.c (main): Add more tests of FINAL_SIGMA
467         recognition.
468         * tests/unicase/test-u16-tolower.c (main): Likewise.
469         * tests/unicase/test-u32-tolower.c (main): Likewise.
470
471 2009-06-30  Bruno Haible  <bruno@clisp.org>
472
473         * lib/unicase/u8-casemap.c: Don't include uniwbrk.h.
474         * lib/unicase/u16-casemap.c: Likewise.
475         * lib/unicase/u32-casemap.c: Likewise.
476
477 2009-06-29  Bruno Haible  <bruno@clisp.org>
478
479         Define u32_casefold as a wrapper around u32_ct_casefold.
480         * lib/unicase/u32-casefold.c: Update.
481         * modules/unicase/u32-casefold (Depends-on): Add
482         unicase/u32-ct-casefold, unicase/empty-prefix-context,
483         unicase/empty-suffix-context. Clean up.
484
485         Define u16_casefold as a wrapper around u16_ct_casefold.
486         * lib/unicase/u16-casefold.c: Update.
487         * modules/unicase/u16-casefold (Depends-on): Add
488         unicase/u16-ct-casefold, unicase/empty-prefix-context,
489         unicase/empty-suffix-context. Clean up.
490
491         Define u8_casefold as a wrapper around u8_ct_casefold.
492         * lib/unicase/u-casefold.h (FUNC): Delegate to U_CT_CASEFOLD.
493         * lib/unicase/u8-casefold.c: Update.
494         * modules/unicase/u8-casefold (Depends-on): Add unicase/u8-ct-casefold,
495         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
496
497         Define u32_totitle as a wrapper around u32_ct_totitle.
498         * lib/unicase/u32-totitle.c: Update.
499         * modules/unicase/u32-totitle (Depends-on): Add unicase/u32-ct-totitle,
500         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
501
502         Define u16_totitle as a wrapper around u16_ct_totitle.
503         * lib/unicase/u16-totitle.c: Update.
504         * modules/unicase/u16-totitle (Depends-on): Add unicase/u16-ct-totitle,
505         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
506
507         Define u8_totitle as a wrapper around u8_ct_totitle.
508         * lib/unicase/u-totitle.h (is_cased, is_case_ignorable): Remove
509         functions.
510         (FUNC): Delegate to U_CT_TOTITLE.
511         * lib/unicase/u8-totitle.c: Update.
512         * modules/unicase/u8-totitle (Depends-on): Add unicase/u8-ct-totitle,
513         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
514
515         * lib/unicase/u32-tolower.c (u32_tolower): Update u32_casemap
516         invocation.
517         * modules/unicase/u32-tolower (Depends-on): Add
518         unicase/empty-prefix-context, unicase/empty-suffix-context.
519
520         * lib/unicase/u16-tolower.c (u16_tolower): Update u16_casemap
521         invocation.
522         * modules/unicase/u16-tolower (Depends-on): Add
523         unicase/empty-prefix-context, unicase/empty-suffix-context.
524
525         * lib/unicase/u8-tolower.c (u8_tolower): Update u8_casemap invocation.
526         * modules/unicase/u8-tolower (Depends-on): Add
527         unicase/empty-prefix-context, unicase/empty-suffix-context.
528
529         * lib/unicase/u32-toupper.c (u32_toupper): Update u32_casemap
530         invocation.
531         * modules/unicase/u32-toupper (Depends-on): Add
532         unicase/empty-prefix-context, unicase/empty-suffix-context.
533
534         * lib/unicase/u16-toupper.c (u16_toupper): Update u16_casemap
535         invocation.
536         * modules/unicase/u16-toupper (Depends-on): Add
537         unicase/empty-prefix-context, unicase/empty-suffix-context.
538
539         * lib/unicase/u8-toupper.c (u8_toupper): Update u8_casemap invocation.
540         * modules/unicase/u8-toupper (Depends-on): Add
541         unicase/empty-prefix-context, unicase/empty-suffix-context.
542
543         New module 'unicase/u32-ct-casefold'.
544         * lib/unicase/u32-ct-casefold.c: New file.
545         * modules/unicase/u32-ct-casefold: New file.
546
547         New module 'unicase/u16-ct-casefold'.
548         * lib/unicase/u16-ct-casefold.c: New file.
549         * modules/unicase/u16-ct-casefold: New file.
550
551         New module 'unicase/u8-ct-casefold'.
552         * lib/unicase/u8-ct-casefold.c: New file.
553         * lib/unicase/u-ct-casefold.h: New file, derived from
554         lib/unicase/u-casefold.h.
555         * modules/unicase/u8-ct-casefold: New file.
556
557         New module 'unicase/u32-ct-totitle'.
558         * lib/unicase/u32-ct-totitle.c: New file.
559         * modules/unicase/u32-ct-totitle: New file.
560
561         New module 'unicase/u16-ct-totitle'.
562         * lib/unicase/u16-ct-totitle.c: New file.
563         * modules/unicase/u16-ct-totitle: New file.
564
565         New module 'unicase/u8-ct-totitle'.
566         * lib/unicase/u8-ct-totitle.c: New file.
567         * lib/unicase/u-ct-totitle.h: New file, derived from
568         lib/unicase/u-totitle.h.
569         * modules/unicase/u8-ct-totitle: New file.
570
571         New module 'unicase/u32-ct-tolower'.
572         * lib/unicase/u32-ct-tolower.c: New file.
573         * modules/unicase/u32-ct-tolower: New file.
574
575         New module 'unicase/u16-ct-tolower'.
576         * lib/unicase/u16-ct-tolower.c: New file.
577         * modules/unicase/u16-ct-tolower: New file.
578
579         New module 'unicase/u8-ct-tolower'.
580         * lib/unicase/u8-ct-tolower.c: New file.
581         * modules/unicase/u8-ct-tolower: New file.
582
583         New module 'unicase/u32-ct-toupper'.
584         * lib/unicase/u32-ct-toupper.c: New file.
585         * modules/unicase/u32-ct-toupper: New file.
586
587         New module 'unicase/u16-ct-toupper'.
588         * lib/unicase/u16-ct-toupper.c: New file.
589         * modules/unicase/u16-ct-toupper: New file.
590
591         New module 'unicase/u8-ct-toupper'.
592         * lib/unicase/u8-ct-toupper.c: New file.
593         * modules/unicase/u8-ct-toupper: New file.
594
595         Add context arguments to u*_casemap functions.
596         * lib/unicase/unicasemap.h: Include unicase.h.
597         (u8_casemap, u16_casemap, u32_casemap): Add prefix_context and
598         suffix_context arguments.
599         * lib/unicase/u-casemap.h (is_cased, is_case_ignorable): Remove
600         functions.
601         (FUNC): Add prefix_context and suffix_context arguments. Use
602         uc_is_cased and uc_is_case_ignorable.
603         * lib/unicase/u8-casemap.c: Include caseprop.h and context.h.
604         * lib/unicase/u16-casemap.c: Likewise.
605         * lib/unicase/u32-casemap.c: Likewise.
606         * modules/unicase/u8-casemap (Files): Add lib/unicase/context.h.
607         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
608         * modules/unicase/u16-casemap (Files): Add lib/unicase/context.h.
609         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
610         * modules/unicase/u32-casemap (Files): Add lib/unicase/context.h.
611         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
612
613         New module 'unicase/u32-suffix-context'.
614         * lib/unicase/u32-suffix-context.c: New file.
615         * modules/unicase/u32-suffix-context: New file.
616
617         New module 'unicase/u16-suffix-context'.
618         * lib/unicase/u16-suffix-context.c: New file.
619         * modules/unicase/u16-suffix-context: New file.
620
621         New module 'unicase/u8-suffix-context'.
622         * lib/unicase/u8-suffix-context.c: New file.
623         * lib/unicase/u-suffix-context.h: New file.
624         * modules/unicase/u8-suffix-context: New file.
625
626         New module 'unicase/empty-suffix-context'.
627         * lib/unicase/empty-suffix-context.c: New file.
628         * modules/unicase/empty-suffix-context: New file.
629
630         New module 'unicase/u32-prefix-context'.
631         * lib/unicase/u32-prefix-context.c: New file.
632         * modules/unicase/u32-prefix-context: New file.
633
634         New module 'unicase/u16-prefix-context'.
635         * lib/unicase/u16-prefix-context.c: New file.
636         * modules/unicase/u16-prefix-context: New file.
637
638         New module 'unicase/u8-prefix-context'.
639         * lib/unicase/u8-prefix-context.c: New file.
640         * lib/unicase/u-prefix-context.h: New file.
641         * lib/unicase/context.h: New file.
642         * modules/unicase/u8-prefix-context: New file.
643
644         New module 'unicase/empty-prefix-context'.
645         * lib/unicase/empty-prefix-context.c: New file.
646         * modules/unicase/empty-prefix-context: New file.
647
648         New module 'unicase/ignorable'.
649         * lib/unicase/ignorable.c: New file.
650         * modules/unicase/ignorable: New file.
651
652         New module 'unicase/cased'.
653         * lib/unicase/caseprop.h: New file.
654         * lib/unicase/cased.c: New file.
655         * modules/unicase/cased: New file.
656
657         New functions for case mapping of substrings.
658         * lib/unicase.h (casing_prefix_context_t): New type.
659         (unicase_empty_prefix_context): New variable.
660         (u8_casing_prefix_context, u16_casing_prefix_context,
661         u32_casing_prefix_context, u8_casing_prefixes_context,
662         u16_casing_prefixes_context, u32_casing_prefixes_context): New
663         declarations.
664         (casing_suffix_context_t): New type.
665         (unicase_empty_suffix_context): New variable.
666         (u8_casing_suffix_context, u16_casing_suffix_context,
667         u32_casing_suffix_context, u8_casing_suffixes_context,
668         u16_casing_suffixes_context, u32_casing_suffixes_context,
669         u8_ct_toupper, u16_ct_toupper, u32_ct_toupper, u8_ct_tolower,
670         u16_ct_tolower, u32_ct_tolower, u8_ct_totitle, u16_ct_totitle,
671         u32_ct_totitle, u8_ct_casefold, u16_ct_casefold, u32_ct_casefold): New
672         declarations.
673
674 2009-06-28  Jim Meyering  <meyering@redhat.com>
675
676         boostrap: indent only with spaces
677         * build-aux/bootstrap: Indent only with spaces, never TABs.
678
679         bootstrap: split long lines
680         * build-aux/bootstrap: Keep line length < 80.
681
682         bootstrap: sync from coreutils
683         * build-aux/bootstrap: Honor variables like $ACLOCAL, etc.,
684         just as autoreconf does.  Verify a list of prerequisite
685         package-name,version-number pairs if defined in bootstrap.conf.
686         Refer to README-prereq, if prerequisites are not satisfied.
687
688 2009-06-27  Eric Blake  <ebb9@byu.net>
689
690         tests: add test for bogus NULL definition
691         * tests/test-stdio.c: Ensure POSIX 2008 requirement on NULL.
692         * tests/test-stdlib.c: Likewise.
693         * tests/test-string.c: Likewise.
694         * tests/test-locale.c: Likewise.
695         * tests/test-unistd.c: Likewise.
696         * modules/stdio-tests (Depends-on): Add verify.
697         * modules/stdlib-tests (Depends-on): Likewise.
698         * modules/string-tests (Depends-on): Likewise.
699         * modules/locale-tests (Depends-on): Likewise.
700         * modules/unistd-tests (Depends-on): Likewise.
701
702 2009-06-27  Paolo Bonzini  <bonzini@gnu.org>
703
704         * m4/selinux-context-h (gl_HEADERS_SELINUX_CONTEXT_H): Remove
705         self-explaining comment.
706         * m4/selinux-selinux-h: Update serial.
707         (gl_LIBSELINUX): New macro, adding a warning for missing development
708         packages to code extracted from...
709         (gl_HEADERS_SELINUX_SELINUX_H): ... this one.  Require gl_LIBSELINUX.
710         Add warning for missing development packages here, too.
711
712 2009-06-26  Paolo Bonzini  <bonzini@gnu.org>
713
714         * build-aux/bootstrap: Do not use GIT_CONFIG_LOCAL.
715
716 2009-06-25  Eric Blake  <ebb9@byu.net>
717
718         version-etc: fix regression
719         * lib/version-etc.h (ATTRIBUTE_SENTINEL): Define for new enough
720         gcc.
721         (version_etc): Use it, to catch bugs with trailing NULL.
722         * lib/version-etc.c (version_etc_arn): Delete unused argument.
723         (version_etc_va): Fix logic bug.
724         * modules/version-etc-tests: Add test.
725         * tests/test-version-etc.c: New file.
726         * tests/test-version-etc.sh: Likewise.
727
728 2009-06-25  Sam Steingold  <sds@gnu.org>
729
730         * mbrtowc.m4 (gl_MBRTOWC_SANITYCHECK): Include <stdlib.h>, for the
731         mbtowc declaration.
732
733 2009-06-25  Eric Blake  <ebb9@byu.net>
734
735         fpurge: migrate into <stdio.h>
736         * lib/fpurge.h: Delete...
737         * lib/stdio.in.h (fpurge): ...and declare here, instead.
738         * lib/fpurge.c (fpurge): Change declaring header.
739         * modules/fpurge (Files): Drop deleted file.
740         (Depends-on): Add stdio.
741         (configure.ac): Set witness.
742         * modules/stdio (Makefile.am): Support fpurge macros.
743         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
744         * m4/fpurge.m4 (gl_FUNC_FPURGE): Set appropriate variables.
745         * lib/fflush.c: Update client.
746         * tests/test-fpurge.c: Likewise.
747         * NEWS: Mention the change.
748
749 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
750
751        * lib/argp-version-etc.c (program_authors): Add const
752        qualifier.
753        * lib/version-etc.c: Fix typos in the comments.
754        * modules/argp-version-etc: Depends on version-etc.
755
756 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
757
758         argp-version-etc: new module.
759
760         * lib/argp-version-etc.c: New file.
761         * lib/argp-version-etc.h: New file.
762         * modules/argp-version-etc: New file.
763         * modules/argp-version-etc-tests: New file.
764         * tests/test-argp-version-etc.c: New test.
765         * tests/test-argp-version-etc-1.sh: New test.
766
767 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
768
769         Provide additional interfaces and documentation for version-etc
770         module.
771
772         * lib/version-etc.c (version_etc_arn, version_etc_ar): New
773         interfaces.
774         * lib/version-etc.h (version_etc_arn, version_etc_ar): New
775         prototypes.
776
777 2009-06-24  Bruno Haible  <bruno@clisp.org>
778
779         * m4/lib-link.m4 (AC_LIB_HAVE_LINKFLAGS): Fix description of
780         HAVE_LIB${NAME} macro.
781         Reported by Sam Steingold <sds@gnu.org>.
782
783 2009-06-23  Simon Josefsson  <simon@josefsson.org>
784
785         * modules/hash-tests (test_hash_LDADD): Link to libintl when
786         needed.
787
788 2009-06-21  Bruno Haible  <bruno@clisp.org>
789
790         Make two consecutive identical invocations of AC_LIB_HAVE_LINKFLAGS
791         work.
792         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Reset HAVE_LIB${NAME}
793         together with LIB${NAME}, LTLIB${NAME}.
794         Reported by Sam Steingold <sds@gnu.org>.
795
796 2009-06-20  Jim Meyering  <meyering@redhat.com>
797
798         tests: make sc_require_test_exit_idiom more generic
799         * top/maint.mk (Exit_witness_file): New overridable variable.
800         (sc_require_test_exit_idiom): Don't hard-code tests/test-lib.sh.
801         Relax test for /^Exit \$fail$$/ to just /^Exit ./.
802
803 2009-06-19  Jim Meyering  <meyering@redhat.com>
804
805         hash: reverse order of src/dst parameters in an internal interface
806         * lib/hash.c (transfer_entries): Reverse order of parameters to
807         put DST before SRC.  Adjust callers.
808
809         tests: test-hash: avoid wholesale duplication
810         * tests/test-hash.c (main): Don't copy/paste a 60-line loop.
811         Instead, use a loop and add a single conditional.
812
813         tests: test-hash: allow seed selection via a command line argument
814         * tests/test-hash.c (get_seed): New function.
815         (main): Use it.
816
817 2009-06-19  Eric Blake  <ebb9@byu.net>
818
819         hash: avoid memory leak on allocation failure
820         * lib/hash.c: (hash_rehash): Avoid memory leak on allocation
821         failure.  Factor repeated algorithm...
822         (transfer_entries): ...into new helper routine.
823         (hash_delete): React to hash_rehash return value.
824
825         hash: reduce memory pressure in hash_rehash no-op case
826         * lib/hash.c (next_prime): Avoid overflow.
827         (hash_initialize): Factor bucket size computation...
828         (compute_bucket_size): ...into new helper function.
829         (hash_rehash): Use new function and open coding to reduce memory
830         pressure, and avoid a memory leak in USE_OBSTACK code.
831         Reported by Jim Meyering.
832
833 2009-06-18  Eric Blake  <ebb9@byu.net>
834
835         hash: make rotation more obvious
836         * modules/hash (Depends-on): Add bitrotate and stdint.
837         * lib/bitrotate.h (rotl_sz, rotr_sz): New functions.
838         * lib/hash.c (headers): Drop limits.h.  Add stdint.h.
839         (SIZE_MAX): Rely on headers for definition.
840         (hash_string) [USE_DIFF_HASH]: Use rotl_sz.
841         (raw_hasher): Use rotr_sz.
842         Suggested by Jim Meyering.
843
844         hash: fix memory leak in last patch
845         * lib/hash.c (hash_rehash): Avoid memory leak.
846
847         hash: avoid no-op rehashing
848         * lib/hash.c (hash_rehash): Recognize useless rehash attempts.
849
850         hash: provide default callback functions
851         * lib/hash.c (raw_hasher, raw_comparator): New functions.
852         (hash_initialize): Use them as defaults.
853         * tests/test-hash.c (main): Test this.
854
855         hash: minor optimization
856         * lib/hash.c (hash_lookup, hash_find_entry): Avoid function call
857         when possible.
858         (hash_initialize): Document this promise.
859         (hash_do_for_each, hash_clear, hash_free): Use C89 syntax.
860         * tests/test-hash.c (hash_compare_strings): Test this.
861
862 2009-06-18  Bruno Haible  <bruno@clisp.org>
863
864         * m4/strstr.m4 (gl_FUNC_STRSTR): Skip linear time test if strstr is
865         going to be replaced anyway.
866
867 2009-06-18  Bruno Haible  <bruno@clisp.org>
868
869         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Invoke AC_LIBOBJ only
870         in one place.
871         (gl_FUNC_STRCASESTR): Skip linear time test if strcasestr is going to
872         be replaced anyway.
873
874 2009-06-18  Eric Blake  <ebb9@byu.net>
875
876         hash: check for resize before insertion
877         * lib/hash.c (hash_insert): Check whether bucket usage exceeds
878         threshold before insertion, so that a pathological hash_rehash
879         that fills every bucket can still trigger another rehash.
880
881 2009-06-18  Jim Meyering  <meyering@redhat.com>
882
883         hash-tests: add a loop around the small tests
884         * tests/test-hash.c (main): Repeat small tests with selected
885         small initial table sizes.
886
887 2009-06-17  Eric Blake  <ebb9@byu.net>
888
889         hash: minor cleanups
890         * lib/hash.h (hash_entry): Make opaque, by moving...
891         * lib/hash.c (hash_entry): ...here.
892         (hash_insert): Clarify restrictions on what can be inserted.
893         (hash_get_next): Clarify when it is safe to remove an element
894         during traversal.
895         (check_tuning): Skip verification when tuning is known safe.
896         (hash_initialize): Clarify restrictions on tuning.
897
898 2009-06-17  Jim Meyering  <jim@meyering.net>
899         and Eric Blake  <ebb9@byu.net>
900
901         hash-tests: new module
902         * modules/hash-tests: New file.
903         * tests/test-hash.c: New file.
904
905 2009-06-17  Eric Blake  <ebb9@byu.net>
906
907         strstr-simple: document new module
908         * MODULES.html.sh: Document new module.
909
910         strstr, strcasestr: replace on platforms with broken memchr
911         * modules/strstr: Split into...
912         * modules/strstr-simple: ...new module that does not care about
913         performance, but does care about glibc bug.
914         * m4/strstr.m4 (gl_FUNC_STRSTR): Split...
915         (gl_FUNC_STRSTR_SIMPLE): ...into new macro, which replaces strstr
916         if platform memchr is broken, per Debian bug 521737.
917         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): React to broken
918         memchr.
919         * m4/memchr.m4 (gl_FUNC_MEMCHR): Only expand once.
920         * doc/posix-functions/strstr.texi (strstr): Document the fix.
921         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
922         * modules/mountlist (Depends-on): Add strstr-simple.
923         * modules/gen-uni-tables (Depends-on): Likewise.
924         * modules/argz (Depends-on): Add strstr.
925
926 2009-06-17  Bruno Haible  <bruno@clisp.org>
927
928         * modules/posix_spawn-internal (Depends-on): Add errno.
929
930 2009-06-17  Bruno Haible  <bruno@clisp.org>
931
932         Define missing ESTALE on Interix 3.5.
933         * lib/errno.in.h (ESTALE): Assign a value if missing.
934         * lib/strerror.c (rpl_strerror): Handle missing ESTALE and ECANCELED.
935         * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Also test whether ESTALE is
936         missing.
937         * doc/posix-headers/errno.texi: Mention the Interix bug.
938         Reported by Jay Krell <jay.krell@cornell.edu> via Eric Blake.
939
940 2009-06-15  Eric Blake  <ebb9@byu.net>
941
942         memchr, memchr2: add valgrind exception
943         * lib/memchr.valgrind: New file.
944         * lib/memchr2.valgrind: New file.
945         * modules/memchr (Files): Distribute valgrind file.
946         * modules/memchr2 (Files): Likewise.
947
948         docs: memchr is no longer obsolete
949         * MODULES.html.sh: Move memchr from obsolete to string.h section.
950         * lib/string.in.h (memchr): Simplify logic.
951
952 2009-06-14  Jim Meyering  <meyering@redhat.com>
953
954         link-follow: fix the "checking..." message to not mention trailing slash
955         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): This test has
956         never considered trailing slashes.
957
958 2009-06-14  Bruno Haible  <bruno@clisp.org>
959
960         * m4/memchr.m4: Mention also the bug on IA-64.
961         * doc/posix-functions/memchr.texi: Likewise.
962
963 2009-06-12  Eric Blake  <ebb9@byu.net>
964
965         memchr: detect broken x86_64 and alpha implementations
966         * modules/memchr-tests (Depends-on): Move mmap detection...
967         * modules/memchr (Depends-on): ...here.
968         (configure.ac): Set indicator.
969         * lib/string.in.h (memchr): Declare replacement.
970         * modules/string (Makefile.am): Trigger replacement.
971         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
972         * m4/memchr.m4 (gl_FUNC_MEMCHR): Use mmap to detect platform
973         bugs.
974         * doc/posix-functions/memchr.texi (memchr): Document the bug.
975         * modules/getpagesize (License): Relax license.
976
977 2009-06-11  Bruno Haible  <bruno@clisp.org>
978
979         * lib/idpriv.h: Add more references.
980
981 2009-06-08  Bruno Haible  <bruno@clisp.org>
982
983         Tests for module 'idpriv-droptemp'.
984         * modules/idpriv-droptemp-tests: New file.
985         * tests/test-idpriv-droptemp.sh: New file.
986         * tests/test-idpriv-droptemp.su.sh: New file.
987         * tests/test-idpriv-droptemp.c: New file.
988
989         New module 'idpriv-droptemp'.
990         * lib/idpriv-droptemp.c: New file.
991         * modules/idpriv-droptemp: New file.
992
993 2009-06-08  Bruno Haible  <bruno@clisp.org>
994
995         Tests for module 'idpriv-drop'.
996         * modules/idpriv-drop-tests: New file.
997         * tests/test-idpriv-drop.sh: New file.
998         * tests/test-idpriv-drop.su.sh: New file.
999         * tests/test-idpriv-drop.c: New file.
1000
1001         New module 'idpriv-drop'.
1002         * lib/idpriv.h: New file.
1003         * lib-idpriv-drop.c: New file.
1004         * m4/idpriv.m4: New file.
1005         * modules/idpriv-drop: New file.
1006
1007 2009-06-08  Bruno Haible  <bruno@clisp.org>
1008
1009         * modules/unistdio/u8-vasnprintf (Depends-on): Add memchr.
1010         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
1011         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
1012         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
1013         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
1014         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
1015         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
1016
1017 2009-06-08  Eric Blake  <ebb9@byu.net>
1018
1019         test-strstr: use memory fence, when possible
1020         * tests/test-strstr.c (main): Use memory fence, in order to be
1021         more likely to trigger Debian bug 521737.
1022         * modules/strstr-tests (Files): Pull in additional files.
1023
1024         memchr: no longer obsolete, for wider field testing
1025         * modules/memchr (Status, Notice): Delete, this module is no
1026         longer obsolete.
1027         * modules/vasnprintf (Depends-on): Add memchr.
1028
1029 2009-06-07  Jim Meyering  <meyering@redhat.com>
1030
1031         hash: declare some functions with the warn_unused_result attribute
1032         * lib/hash.h (__attribute__, ATTRIBUTE_WUR): Define.
1033
1034 2009-06-07  Bruno Haible  <bruno@clisp.org>
1035
1036         * tests/test-alignof.c: Don't test int64_t if it does not exist.
1037         Reported by Eric Blake.
1038
1039 2009-06-06  Eric Blake  <ebb9@byu.net>
1040
1041         test-alignof: fix typo with long double
1042         * tests/test-alignof.c (CHECK): Use longdouble typedef to avoid
1043         compiler error.
1044
1045 2009-06-06  Neil Jerram  <neil@ossau.uklinux.net>  (tiny change)
1046
1047         Escape non-texinfo { and }s.
1048         * doc/ld-output-def.texi (Visual Studio Compatibility): Fix
1049         markup error.
1050
1051 2009-06-04  Jim Meyering  <meyering@redhat.com>
1052
1053         gitlog-to-changelog: don't infloop on an empty commit log
1054         * build-aux/gitlog-to-changelog: Warn about an empty log message.
1055         Reported by Boris Petersen <transacid@centerim.org>.
1056
1057 2009-06-03  Mike Frysinger  <vapier@gentoo.org>
1058
1059         version-etc: extend for packagers
1060         Add three new configure options, intended for packagers:
1061           --with-packager="packager name"
1062           --with-packager-version="packager-specific version"
1063           --with-packager-bug-reports="packager bug reporting"
1064         An example with coreutils:
1065           $ ./configure \
1066             --with-packager=Gentoo \
1067             --with-packager-bug-report=http://bugs.gentoo.org/ \
1068             --with-packager-version="patchset 1.6"
1069           $ ./src/ls --version | head -n3
1070           ls (GNU coreutils) 7.1-dirty
1071           Packaged by Gentoo (patchset 1.6)
1072           Copyright (C) 2009 Free Software Foundation, Inc.
1073         Note that the bug reporting info via --help doesn't show up because
1074         coreutils uses its own custom emit_bug_reporting_address() implementation
1075         in src/system.h.  If it didn't, it'd look like:
1076           $ ./src/ls --help | tail -n4
1077           Report bugs to <bug-coreutils@gnu.org>.
1078           Report Gentoo bugs to <http://bugs.gentoo.org/>.
1079           GNU coreutils home page: <http://www.gnu.org/software/coreutils/>.
1080           General help using GNU software: <http://www.gnu.org/gethelp/>.
1081         * lib/version-etc.c: Print new information, if provided.
1082         * m4/version-etc.m4: New file.
1083         * modules/version-etc (Files): Add m4/version-etc.m4.
1084         (configure.ac): Add gl_VERSION_ETC.
1085
1086 2009-05-31  Bruno Haible  <bruno@clisp.org>
1087
1088         * tests/test-alignof.c: Include <stdint.h>. Check also 'long double'
1089         and 'int64_t'.
1090         * modules/alignof-tests (Dependencies): Add stdint.
1091         Reported by Eric Blake.
1092
1093 2009-05-31  Bruno Haible  <bruno@clisp.org>
1094
1095         * lib/alignof.h (alignof_slot, alignof_type, alignof): Document
1096         restriction due to compiler bugs.
1097         Reported by Eric Blake.
1098
1099 2009-05-31  Simon Josefsson  <simon@josefsson.org>
1100             Bruno Haible  <bruno@clisp.org>
1101
1102         Fix test-alignof failure.
1103         * lib/alignof.h (alignof_slot): New macro.
1104         (alignof_type): New macro, with the same semantics as the previous
1105         'alignof'.
1106         (alignof): Alias to alignof_slot.
1107         * tests/test-alignof.c (CHECK): Check alignof_slot, not alignof. Also
1108         check that the results are usable as constant expressions.
1109
1110 2009-05-31  Bruno Haible  <bruno@clisp.org>
1111
1112         * tests/zerosize-ptr.h (zerosize_ptr): Specify more details.
1113         * tests/test-memchr.c (main): Check that memchr does not read past the
1114         first occurrence of the byte.
1115         * tests/test-strstr.c (main): Update comment.
1116         Suggested by Eric Blake.
1117
1118 2009-05-30  Bruno Haible  <bruno@clisp.org>
1119
1120         * doc/ld-output-def.texi (Visual Studio Compatibility): Explain in more
1121         detail how to use dumpbin.
1122         Reported by David Byron <dbyron@dbyron.com>.
1123
1124 2009-06-02  Simon Josefsson  <simon@josefsson.org>
1125
1126         * tests/test-parse-duration.sh: Don't use non-portable 'read -u3'.
1127
1128 2009-06-02  Simon Josefsson  <simon@josefsson.org>
1129
1130         * m4/manywarnings.m4: Add GCC 4.4 warnings.
1131
1132 2009-05-28  Bruno Haible  <bruno@clisp.org>
1133
1134         * gnulib-tool (func_import): Don't do HAVE_CONFIG_H replacements on
1135         build-aux/ files.
1136
1137 2009-05-28  Simon Josefsson  <simon@josefsson.org>
1138
1139         * gnulib-tool (func_import): Transform license on build-aux/ files too.
1140
1141 2009-05-27  Simon Josefsson  <simon@josefsson.org>
1142
1143         * gnulib-tool (sed_transform_main_lib_file)
1144         (sed_transform_testsrelated_lib_file): : Don't use non-POSIX
1145         regexps.
1146
1147 2009-05-26  Simon Josefsson  <simon@josefsson.org>
1148
1149         * tests/test-strstr.c: Add another self-test.
1150         * tests/test-strstr.c: Rewrite to use malloc/strcpy instead of
1151         strdup.  Suggested by Eric Blake  <ebb9@byu.net>.
1152
1153 2009-05-23  Bruno Haible  <bruno@clisp.org>
1154
1155         * doc/havelib.texi (AC_LIB_HAVE_LINKFLAGS): Update for 2009-04-26
1156         change.
1157
1158 2009-05-21  Bruno Haible  <bruno@clisp.org>
1159
1160         Simplify use of mode_t varargs.
1161         * lib/open.c (open): Use PROMOTED_MODE_T instead of a conditional that
1162         uses 'mode_t' or 'int'.
1163         * lib/openat.c (openat): Likewise.
1164         * lib/open-safer.c (open_safer): Likewise.
1165         * m4/mode_t.m4: New file.
1166         * m4/open.m4 (gl_PREREQ_OPEN): Require gl_PROMOTED_TYPE_MODE_T.
1167         * m4/openat.m4 (gl_PREREQ_OPENAT): Likewise.
1168         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Likewise.
1169         * modules/open (Files): Add m4/mode_t.m4.
1170         * modules/openat (Files): Likewise.
1171         * modules/fcntl-safer (Files): Likewise.
1172         Suggested by Eric Blake.
1173
1174 2009-05-21  Pádraig Brady  <P@draigbrady.com>
1175
1176         * doc/glibc-functions/fallocate.texi: New file.
1177         * doc/gnulib.texi: Include it.
1178
1179 2009-05-21  Eric Blake  <ebb9@byu.net>
1180             Bruno Haible  <bruno@clisp.org>
1181
1182         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Remove redundant m4_quote
1183         invocations.
1184         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
1185
1186 2009-05-21  Eric Blake  <ebb9@byu.net>
1187             Bruno Haible  <bruno@clisp.org>
1188
1189         Second attempt to work around an AIX 5.3, 6.1 compiler bug with
1190         include_next. Fix of 2008-11-20 commit.
1191         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Also set
1192         NEXT_AS_FIRST_DIRECTIVE_FOO_H.
1193         * lib/math.in.h: Use NEXT_AS_FIRST_DIRECTIVE_MATH_H instead of
1194         NEXT_MATH_H.
1195         * modules/math (Makefile.am): Substitute NEXT_AS_FIRST_DIRECTIVE_MATH_H
1196         instead of NEXT_MATH_H.
1197
1198 2009-05-21  Bruno Haible  <bruno@clisp.org>
1199
1200         Avoid redefinition warnings for SIZE_MAX.
1201         * m4/size_max.m4 (gl_SIZE_MAX): Avoid redefining SIZE_MAX in config.h.
1202         Reported by Simon Josefsson.
1203
1204 2009-05-21  Bruno Haible  <bruno@clisp.org>
1205
1206         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_CACHE_CHECK instead of
1207         AC_CACHE_VAL.
1208
1209 2009-05-20  Bruno Haible  <bruno@clisp.org>
1210
1211         Make zeroptr.h work on mingw.
1212         * tests/zerosize-ptr.h: Test for the presence of <sys/mman.h> and
1213         mprotect.
1214         * modules/memchr-tests (configure.ac): Also test for sys/mman.h.
1215         * modules/memchr2-tests (configure.ac): Likewise.
1216         * modules/memcmp-tests (configure.ac): Likewise.
1217         * modules/memmem-tests (configure.ac): Likewise.
1218         * modules/memrchr-tests (configure.ac): Likewise.
1219         Reported by Simon Josefsson.
1220
1221 2009-05-20  Simon Josefsson  <simon@josefsson.org>
1222
1223         * tests/test-glob.c: Include string.h for strcmp prototype.
1224
1225 2009-05-20  Simon Josefsson  <simon@josefsson.org>
1226
1227         * modules/getdelim (Depends-on): Add explicit stdint, although it
1228         was implicitly already pulled in via realloc-posix.
1229         * lib/getdelim.c: Get SIZE_MAX from stdint.h.
1230
1231 2009-05-20  Simon Josefsson  <simon@josefsson.org>
1232
1233         MinGW and IRIX does not have sa_family_t type.  Reported by "Tom
1234         G. Christensen" <tgc@jupiterrise.com>.
1235         * m4/sys_socket_h.m4: Check for sa_family_t.
1236         * lib/sys_socket.in.h: Typedef sa_family_t when needed.
1237         * modules/sys_socket: Substitute HAVE_SA_FAMILY_T.
1238         * tests/test-sys_socket.c: Check that sa_family_t works.
1239
1240 2009-05-18  Eric Blake  <ebb9@byu.net>
1241
1242         maint.mk: allow gnulib_dir in VPATH build
1243         * top/maint.mk (gnulib_dir): Make relative to $(srcdir).
1244
1245 2009-05-15  Jim Meyering  <meyering@redhat.com>
1246
1247         maint.mk: Give gnulib_dir a default definition.
1248         * top/maint.mk (gnulib_dir): Define to 'gnulib', by default.
1249         Thus, most packages no longer need to specify this variable in cfg.mk
1250
1251 2009-05-14  Tom Prince  <tom.prince@ualberta.net>  (tiny change)
1252
1253         rename.m4: fix typos that would make non-mingw cross-configure fail
1254         * m4/rename.m4 (gl_FUNC_RENAME): Fix typos.
1255
1256 2009-05-13  Eric Blake  <ebb9@byu.net>
1257
1258         mmap-anon: avoid out-of-order autoconf expansion
1259         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Use correct
1260         SYSTEM_EXTENSIONS macro to silence warnings from autoconf 2.63b.
1261         * modules/memchr-tests (Depends-on): Add extensions.
1262         * modules/memchr2-tests (Depends-on): Add extensions.
1263         * modules/memcmp-tests (Depends-on): Add extensions.
1264         * modules/memmem-tests (Depends-on): Add extensions.
1265         * modules/memrchr-tests (Depends-on): Add extensions.
1266
1267 2009-05-13  Bruno Haible  <bruno@clisp.org>
1268
1269         Make some tests ISO C 99 compliant.
1270         * tests/zerosize-ptr.h: New file.
1271         * tests/test-memchr.c: Include zerosize-ptr.h.
1272         (main): Use a zero-size object pointer instead of NULL.
1273         * tests/test-memchr2.c: Include zerosize-ptr.h.
1274         (main): Use a zero-size object pointer instead of NULL.
1275         * tests/test-memcmp.c: Include zerosize-ptr.h.
1276         (main): Use a zero-size object pointer instead of NULL.
1277         * tests/test-memmem.c: Include zerosize-ptr.h.
1278         (main): Use a zero-size object pointer instead of NULL.
1279         * tests/test-memrchr.c: Include zerosize-ptr.h.
1280         (main): Use a zero-size object pointer instead of NULL.
1281         * modules/memchr-tests (Files): Add tests/zerosize-ptr.h,
1282         m4/mmap-anon.m4.
1283         (Depends-on): Add getpagesize.
1284         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
1285         * modules/memchr2-tests (Files): Add tests/zerosize-ptr.h,
1286         m4/mmap-anon.m4.
1287         (Depends-on): Add getpagesize.
1288         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
1289         * modules/memcmp-tests (Files): Add tests/zerosize-ptr.h,
1290         m4/mmap-anon.m4.
1291         (Depends-on): Add getpagesize.
1292         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
1293         * modules/memmem-tests (Files): Add tests/zerosize-ptr.h,
1294         m4/mmap-anon.m4.
1295         (Depends-on): Add getpagesize.
1296         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
1297         * modules/memrchr-tests (Files): Add tests/zerosize-ptr.h,
1298         m4/mmap-anon.m4.
1299         (Depends-on): Add getpagesize.
1300         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
1301
1302 2009-05-12  Bruno Haible  <bruno@clisp.org>
1303
1304         Tests for module 'alignof'.
1305         * modules/alignof-tests: New file.
1306         * tests/test-alignof.c: New file.
1307
1308 2009-05-12  Bruno Haible  <bruno@clisp.org>
1309
1310         Fix alignof macro.
1311         * lib/alignof.h (alignof): Remove special cases for AIX and HP-UX
1312         vendor compilers that are always correct.
1313
1314 2009-05-12  Bruno Haible  <bruno@clisp.org>
1315
1316         Make the MAP_ANONYMOUS detection work on HP-UX 11.
1317         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check whether mmap exists, but
1318         not whether its fully works.
1319
1320 2009-05-12  Bruno Haible  <bruno@clisp.org>
1321
1322         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Add comments.
1323
1324 2009-05-12  Jim Meyering  <meyering@redhat.com>
1325
1326         * top/maint.mk: Adjust backslash alignment.
1327
1328 2009-05-11  Simon Josefsson  <simon@josefsson.org>
1329
1330         * top/maint.mk: Make $(srcdir)/build-aux configurable.
1331
1332 2009-05-11  Eric Blake  <ebb9@byu.net>
1333
1334         argp: avoid undefined behavior
1335         * lib/argp-fmtstream.c (weak_alias): Pass correct types to ctype
1336         macros.
1337
1338 2009-05-08  Simon Josefsson  <simon@josefsson.org>
1339
1340         * tests/test-vc-list-files-git.sh: Do git config of user.email and
1341         user.name to prevent git commit from complaining.
1342
1343 2009-05-10  Bruno Haible  <bruno@clisp.org>
1344
1345         * gnulib-tool (func_import, func_create_testdir, copy-file): Change
1346         sed_rewrite_old_files, sed_rewrite_new_files, sed_rewrite_files so that
1347         it rewrites every file name only once.
1348         Reported by Simon Josefsson. Helped by Ralf Wildenhues.
1349
1350 2009-05-08  Bruno Haible  <bruno@clisp.org>
1351
1352         * lib/sys_socket.in.h (_SS_PADSIZE): Use a conditional expression
1353         instead of 'max'.
1354
1355 2009-05-08  Simon Josefsson  <simon@josefsson.org>
1356
1357         * m4/sys_socket_h.m4: Test for ws2tcpip.h earlier, needed for
1358         sockaddr_storage test.
1359
1360 2009-05-07  Simon Josefsson  <simon@josefsson.org>
1361
1362         * modules/sys_socket (Makefile.am): Substitute
1363         HAVE_STRUCT_SOCKADDR_STORAGE.  Depend on alignof.
1364         * m4/sys_socket_h.m4: Check for sockaddr_storage.
1365         * lib/sys_socket.in.h (sockaddr_storage): Define when needed.
1366         * tests/test-sys_socket.c: Check sockaddr_storage.
1367
1368 2009-05-08  Bruno Haible  <bruno@clisp.org>
1369
1370         New module 'alignof'.
1371         * lib/alignof.h: New file.
1372         * modules/alignof: New file.
1373
1374 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
1375             Bruno Haible  <bruno@clisp.org>
1376
1377         Fix test-file-has-acl on FreeBSD.
1378         * tests/test-file-has-acl.sh: Also test a directory. On FreeBSD, the
1379         mask is implicitly added.
1380         * tests/test-file-has-acl.c: Include <signal.h>.
1381         (main): Terminate the test after 5 seconds.
1382         * modules/acl-tests (configure.ac): Check for alarm function.
1383
1384 2009-05-04  Bruno Haible  <bruno@clisp.org>
1385
1386         Exploit new semantics of AC_DEFUN_ONCE available since 2009-01-26.
1387         * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Remove outdated comment.
1388         * modules/errno (configure.ac): Drop AC_REQUIRE.
1389         * m4/multiarch.m4 (gl_MULTIARCH): Remove outdated comment.
1390         * modules/multiarch (configure.ac): Drop AC_REQUIRE.
1391
1392 2009-05-04  Simon Josefsson  <simon@josefsson.org>
1393
1394         * modules/glob-tests: New module.
1395         * tests/test-glob.c: Add.
1396
1397 2009-05-04  Simon Josefsson  <simon@josefsson.org>
1398
1399         * modules/fnmatch-tests: New module.
1400         * tests/test-fnmatch.c: Add.
1401
1402 2009-05-04  Eric Blake  <ebb9@byu.net>
1403
1404         maint: make the new no-submodule-changes rule VPATH-safe
1405         * top/maint.mk (no-submodule-changes): Don't assume a srcdir build.
1406
1407 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
1408             Bruno Haible  <bruno@clisp.org>
1409
1410         acl: Fix infinite loop on FreeBSD.
1411         * lib/acl_entries.c (acl_entries) [Linux, FreeBSD]: Fix interpretation
1412         of return value from acl_get_entry.
1413         * lib/file-has-acl.c (acl_access_nontrivial) [Linux, FreeBSD]:
1414         Likewise.
1415
1416 2009-05-03  Bruno Haible  <bruno@clisp.org>
1417
1418         * lib/acl-internal.h (acl_entries): Clarify return value.
1419         * lib/acl_entries.c (acl_entries): Likewise.
1420
1421 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
1422
1423         Bug fix in acl module.
1424         * lib/set-mode-acl.c: Use correct struct with ACL_SETACL.
1425
1426 2009-05-03  Bruno Haible  <bruno@clisp.org>
1427
1428         Create gperf-generated file in the source dir, not in the build dir.
1429         * modules/iconv_open (iconv_open-aix.h, iconv_open-hpux.h,
1430         iconv_open-irix.h, iconv_open-osf.h): Create file in the source tree.
1431         * modules/unicase/locale-language (unicase/locale-languages.h):
1432         Likewise.
1433         * modules/unicase/special-casing (unicase/special-casing-table.h):
1434         Likewise.
1435         * modules/unictype/property-byname (unictype/pr_byname.h): Likewise.
1436         * modules/unictype/scripts (unictype/scripts_byname.h): Likewise.
1437         * modules/uninorm/composition (uninorm/composition-table.h): Likewise.
1438         Reported by Ralf Wildenhues.
1439
1440 2009-05-03  Bruno Haible  <bruno@clisp.org>
1441
1442         * modules/fnmatch (Description, configure.ac): Taken from
1443         fnmatch-posix.
1444         * modules/fnmatch-posix: Turn into a symbolic reference to the
1445         'fnmatch' module, and deprecate.
1446         * doc/posix-functions/fnmatch.texi: Mention the fnmatch module.
1447
1448 2009-05-03  Bruno Haible  <bruno@clisp.org>
1449
1450         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF,
1451         gl_PREREQ_VASNPRINTF_LONG_DOUBLE): Define through AC_DEFUN_ONCE.
1452         Reported by Ralf Wildenhues.
1453
1454 2009-05-04  Simon Josefsson  <simon@josefsson.org>
1455
1456         * m4/fnmatch.m4: Fix fnmatch re-define.
1457
1458 2009-04-27  David Bartley  <dtbartle@csclub.uwaterloo.ca>
1459
1460         priv-set: new module and tests; adapt write-any-file
1461         * lib/priv-set.c: New file.
1462         * lib/priv-set.h: New file.
1463         * lib/unlinkdir.c: Make cannot_unlink_dir thread-safe.
1464         * lib/write-any-file.c: Simplify by using priv-set module.
1465         * m4/priv-set.m4: New file.
1466         * modules/priv-set: New file.
1467         * modules/unlinkdir: Add dependency on priv-set module.
1468         * modules/write-any-file: Likewise.
1469
1470         Tests for module 'priv-set'.
1471         * modules/priv-set-tests: New file.
1472         * tests/test-priv-set.c: New file.
1473
1474 2009-05-03  Jim Meyering  <meyering@redhat.com>
1475             Bruno Haible  <bruno@clisp.org>
1476
1477         * lib/propername.c (proper_name_utf8): Ignore no-op translations;
1478         use the converted UTF-8 variant of the name instead.
1479
1480 2009-05-03  Jim Meyering  <meyering@redhat.com>
1481
1482         tests: tighten some getdate tests
1483         * tests/test-getdate.c (main): Tighten tests: require equality,
1484         not just greater than.  Set TZ envvar to UTC0.
1485
1486 2009-05-03  Giuseppe Scrivano  <gscrivano@gnu.org>
1487
1488         getdate: correctly interpret "next monday" when run on a Monday
1489         * lib/getdate.y (get_date): Correct the calculation of tm_mday so
1490         that e.g., "next tues" (when run on a tuesday) results in a date
1491         that is one week in the future, and not today's date.
1492         I.e., add a week when the wday is the same as the current one.
1493         Reported by Tom Broadhurst in http://savannah.gnu.org/bugs/?25406,
1494         and earlier by Martin Bernreuther and Jan Minář.
1495         * tests/test-getdate.c (main): Check that "next DAY" is always in
1496         the future and that "last DAY" is always in the past.
1497
1498 2009-05-02  Jim Meyering  <meyering@redhat.com>
1499
1500         build: ensure that a release build fails when a submodule is unclean
1501         * top/maint.mk (no-submodule-changes): New rule.
1502         (alpha beta major): Depend on it.
1503
1504 2009-05-02  Bruno Haible  <bruno@clisp.org>
1505
1506         Remove incompatibility between modules fnmatch-posix and fnmatch-gnu.
1507         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX, gl_FUNC_FNMATCH_GNU): Use a
1508         shell variable gl_fnmatch_required to detect which variant is
1509         requested.
1510         (_AC_FUNC_FNMATCH_IF, _AC_LIBOBJ_FNMATCH): Remove macros. Inlined into
1511         gl_FUNC_FNMATCH_POSIX.
1512         * gnulib-tool (func_create_testdir, func_create_megatestdir): Don't
1513         exclude fnmatch-posix.
1514
1515 2009-05-02  Bruno Haible  <bruno@clisp.org>
1516
1517         Relicense mbsrtowcs and strnlen1 under LGPLv2+.
1518         * modules/mbsrtowcs (License): Change to LGPLv2+.
1519         * modules/strnlen1 (License): Likewise.
1520         Reported by Simon Josefsson.
1521
1522 2009-05-02  Bruno Haible  <bruno@clisp.org>
1523
1524         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Say "guessing no" instead of
1525         "cross".
1526         (gl_FUNC_FNMATCH_POSIX, gl_FUNC_FNMATCH_GNU): Update. Don't assume that
1527         gnulib-tool was called with option --source-base=lib.
1528
1529 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1530
1531         Use automake *-local hooks without commands, for extensibility.
1532         * modules/localcharset (Makefile.am): Rename install-exec-local
1533         rule to install-exec-localcharset, and make it a prerequisite of
1534         install-exec-local.  Likewise, rename the uninstall-local rule to
1535         uninstall-localcharset, and make it a prerequisite of the former.
1536
1537 2009-05-01  Bruno Haible  <bruno@clisp.org>
1538
1539         * lib/wchar.in.h (wcsnrtombs): Define if REPLACE_WCSNRTOMBS is 1.
1540         * m4/wcsnrtombs.m4 (gl_FUNC_WCSRTOMBS): Invoke gl_MBSTATE_T_BROKEN, and
1541         set REPLACE_WCSNRTOMBS if mbstate_t must be replaced.
1542         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCSNRTOMBS.
1543         * modules/wchar (Makefile.am): Substitute REPLACE_WCSNRTOMBS.
1544         * modules/wcsnrtombs (Files): Add m4/mbrtowc.m4, m4/locale-ja.m4,
1545         m4/locale-zh.m4, m4/codeset.m4.
1546
1547         * m4/wcsrtombs.m4 (gl_FUNC_WCSNRTOMBS): Invoke gl_MBSTATE_T_BROKEN, and
1548         set REPLACE_WCSRTOMBS if mbstate_t must be replaced.
1549         * modules/wcsrtombs (Files): Add m4/mbrtowc.m4, m4/locale-ja.m4,
1550         m4/locale-zh.m4.
1551
1552         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Invoke gl_MBSTATE_T_BROKEN, and set
1553         REPLACE_WCRTOMB if mbstate_t must be replaced.
1554         * modules/wcrtomb (Files): Add m4/mbrtowc.m4.
1555         Reported by Jens Rehsack <rehsack@googlemail.com> via Eric Blake.
1556
1557 2009-05-01  Bruno Haible  <bruno@clisp.org>
1558
1559         Avoid compiler warnings when redefining macros defined by <libintl.h>.
1560         * lib/gettext.h [!ENABLE_NLS] (gettext, dgettext, dcgettext, ngettext,
1561         dngettext, dcngettext, textdomain, bindtextdomain,
1562         bind_textdomain_codeset): Undefine before redefining.
1563
1564 2009-04-30  Bruno Haible  <bruno@clisp.org>
1565
1566         Fix bug introduced on 2009-04-25.
1567         * lib/math.in.h (gl_signbitf_OPTIMIZED_MACRO,
1568         gl_signbitd_OPTIMIZED_MACRO, gl_signbitl_OPTIMIZED_MACRO): New macros.
1569         * lib/signbitf.c (gl_signbitd): Undefine if gl_signbitf_OPTIMIZED_MACRO
1570         is defined.
1571         * lib/signbitd.c (gl_signbitd): Undefine if gl_signbitd_OPTIMIZED_MACRO
1572         is defined.
1573         * lib/signbitl.c (gl_signbitd): Undefine if gl_signbitl_OPTIMIZED_MACRO
1574         is defined.
1575         Reported by Elbert_Pol <elbert.pol@gmail.com>.
1576
1577 2009-04-28  Bruno Haible  <bruno@clisp.org>
1578
1579         Comment tweaks.
1580         * lib/unistr.h (u*_cmp2): Clarify what memcmp2 is.
1581         * lib/uninorm.h (u*_normxfrm): Fix description of return value.
1582         * lib/unicase.h (u*_casexfrm): Likewise.
1583         Reported by Paolo Bonzini.
1584
1585 2009-04-28  Bruno Haible  <bruno@clisp.org>
1586
1587         Fix a compilation error.
1588         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Fix initializer.
1589         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
1590         Reported by Jim Meyering.
1591
1592 2009-04-27  Bruno Haible  <bruno@clisp.org>
1593
1594         New module 'libunistring'.
1595         * modules/libunistring: New file.
1596         * m4/libunistring.m4: New file.
1597         * MODULES.html.sh (Unicode string functions): Add it.
1598
1599 2009-04-27  Eric Blake  <ebb9@byu.net>
1600
1601         maint.mk: allow package-specific header to provide <config.h>
1602         * top/maint.mk (sc_require_config_h): New variable.
1603         (sc_require_config_h, sc_require_config_h_first): Use it.
1604
1605 2009-04-27  Simon Josefsson  <simon@josefsson.org>
1606
1607         * top/maint.mk (sc_avoid_if_before_free): Except
1608         useless-if-before-free script.
1609
1610 2009-04-27  Eric Blake  <ebb9@byu.net>
1611
1612         maintainer-makefile: depend on all required helper scripts
1613         * modules/maintainer-makefile (Depends-on): Add vc-list-files and
1614         useless-if-before-free.
1615         * top/maint.mk (VC_LIST, sc_avoid_if_before_free): Use local
1616         version, rather than assuming gnulib checkout is available.
1617         Reported by Simen Josefsson.
1618
1619 2009-04-26  Bruno Haible  <bruno@clisp.org>
1620
1621         Make the lib vs. lib64 recognition work on openSUSE 11 with "gcc -m32".
1622         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): Ignore paths that end in
1623         "../" or "..".
1624
1625 2009-04-26  Bruno Haible  <bruno@clisp.org>
1626
1627         * m4/lib-link.m4 (AC_LIB_HAVE_LINKFLAGS): Accept a fifth argument.
1628         * m4/libsigsegv.m4 (gl_LIBSIGSEGV): Simplify by using
1629         AC_LIB_HAVE_LINKFLAGS.
1630
1631 2009-04-26  Bruno Haible  <bruno@clisp.org>
1632
1633         Simplify calling convention of u*_conv_from_encoding.
1634         * lib/uniconv.h (u8_conv_from_encoding, u16_conv_from_encoding,
1635         u32_conv_from_encoding): Expect a resultbuf argument and return the
1636         result directly as a pointer.
1637         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Likewise.
1638         * lib/uniconv/u-conv-from-enc.h (FUNC): Likewise.
1639         * lib/uniconv/u-strconv-from-enc.h (FUNC): Update.
1640         * lib/unicase/ulc-casecmp.c (ulc_u8_casefold): Update.
1641         * lib/unicase/ulc-casexfrm.c (ulc_casexfrm): Update.
1642         * lib/unilbrk/ulc-possible-linebreaks.c (ulc_possible_linebreaks):
1643         Update.
1644         * lib/unilbrk/ulc-width-linebreaks.c (ulc_width_linebreaks): Update.
1645         * lib/uniwbrk/ulc-wordbreaks.c (ulc_wordbreaks): Update.
1646         * lib/vasnprintf.c (VASNPRINTF): Update.
1647         * tests/uniconv/test-u8-conv-from-enc.c (main): Update.
1648         * tests/uniconv/test-u16-conv-from-enc.c (main): Update.
1649         * tests/uniconv/test-u32-conv-from-enc.c (main): Update.
1650         * NEWS: Mention the change.
1651
1652 2009-04-26  Bruno Haible  <bruno@clisp.org>
1653
1654         Simplify calling convention of u*_conv_to_encoding.
1655         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
1656         u32_conv_to_encoding): Expect a resultbuf argument and return the
1657         result directly as a pointer.
1658         * lib/uniconv/u8-conv-to-enc.c (u8_conv_to_encoding): Likewise.
1659         * lib/uniconv/u-conv-to-enc.h (FUNC): Likewise. Preserve errno while
1660         freeing scaled_offsets if mem_iconveha failed.
1661         * lib/unicase/u-casexfrm.h (FUNC): Update.
1662         * lib/uninorm/u-normxfrm.h (FUNC): Update.
1663         * lib/vasnprintf.c (VASNPRINTF): Update.
1664         * tests/uniconv/test-u8-conv-to-enc.c (main): Update.
1665         * tests/uniconv/test-u16-conv-to-enc.c (main): Update.
1666         * tests/uniconv/test-u32-conv-to-enc.c (main): Update.
1667         * NEWS: Mention the change.
1668
1669 2009-04-26  Bruno Haible  <bruno@clisp.org>
1670
1671         Avoid test failures on AIX and OSF/1.
1672         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Avoid calling
1673         malloc(0).
1674         * lib/uniconv/u8-conv-to-enc.c (u8_conv_to_encoding): Likewise.
1675         * lib/unilbrk/ulc-possible-linebreaks.c (ulc_possible_linebreaks):
1676         Likewise.
1677         * lib/unilbrk/ulc-width-linebreaks.c (ulc_width_linebreaks): Likewise.
1678         * lib/uniwbrk/ulc-wordbreaks.c (ulc_wordbreaks): Likewise.
1679         * lib/uniconv/u-conv-to-enc.h (FUNC): Likewise. Fix memory leak.
1680         * lib/unistr/u-cpy-alloc.h (FUNC): Call malloc(1) instead of malloc(0).
1681         * doc/posix-functions/malloc.texi: Document the portability problem
1682         related to malloc(0).
1683
1684 2009-04-26  Bruno Haible  <bruno@clisp.org>
1685
1686         * modules/unistr/u8-cpy-alloc (Depends-on): Add malloc-posix.
1687         * modules/unistr/u16-cpy-alloc (Depends-on): Likewise.
1688         * modules/unistr/u32-cpy-alloc (Depends-on): Likewise.
1689
1690 2009-04-25  Bruno Haible  <bruno@clisp.org>
1691
1692         Avoid link error when creating a namespace clean library.
1693         * lib/math.in.h (gl_signbitf, gl_signbitd, gl_signbitl): Don't define
1694         as macro with arguments if already defined as an alias.
1695         * lib/signbitf.c (gl_signbitf): Don't undefine.
1696         * lib/signbitd.c (gl_signbitd): Don't undefine.
1697         * lib/signbitl.c (gl_signbitl): Don't undefine.
1698
1699 2009-04-25  Jim Meyering  <meyering@redhat.com>
1700
1701         vc-list-files: fix another quoting bug
1702         * build-aux/vc-list-files: Avoid sed backslash expansion
1703         of pathological directory names.
1704
1705 2009-04-25  Eric Blake  <ebb9@byu.net>
1706
1707         vc-list-files: fix shell quoting error
1708         * build-aux/vc-list-files: Protect against $ in $dir.  Normalize
1709         timestamp.
1710
1711 2009-04-25  Jim Meyering  <meyering@redhat.com>
1712
1713         vc-list-files: restore lost functionality with subdir argument
1714         * build-aux/vc-list-files: When given a non-"." sub-directory
1715         argument, substitute the $dir/ prefix back onto each resulting name.
1716         Otherwise, coreutils' root_tests check would fail.
1717
1718 2009-04-24  Eric Blake  <ebb9@byu.net>
1719
1720         vc-list-files: ignore git symlinks
1721         * build-aux/vc-list-files (.git): Use ls-tree and a filter, rather
1722         than ls-files, to ignore git symlinks.
1723
1724         maint.mk: import improvements from m4
1725         * top/maint.mk (VC-tag): Use signing key from cfg.mk.
1726         (move_if_change): Delete unused macro.
1727         (news-date-check, vc-diff-check): Support VPATH builds.
1728         (announcement): Likewise.  Split --bootstrap-tools list...
1729         (boostrap-tools): ...into separate list, which can be overridden
1730         in cfg.mk.
1731         (sc_avoid_if_before_free): Point to $(gnulib_dir), rather than
1732         requiring dependency on useless-if-before-free module.
1733         (VC_LIST, VC_LIST_EXCEPT): Likewise for vc-list-files module.
1734         Support VPATH builds.
1735
1736 2009-04-24  Jim Meyering  <meyering@redhat.com>
1737
1738         maint.mk: remove coreutils-specific rules and variables
1739         * top/maint.mk (bin, taint-distcheck, coreutils-path-check, t): Remove.
1740         (fake_home, install-transform-check, my-instcheck, pfx, TMPDIR): Remove.
1741         (t_prefix, t_taint, tp, warn_cflags, write_loser, my-distcheck): Remove.
1742
1743         maint.mk: remove obsolete rule
1744         * top/maint.mk (rel-check): Remove rule.
1745         (WGET, WGETFLAGS): Remove now-unused variables.
1746
1747 2009-04-24  Simon Josefsson  <simon@josefsson.org>
1748
1749         * top/maint.mk (makefile-check): Renamed to sc_makefile_check for
1750         consistency.
1751
1752         * modules/vc-list-files-tests (TESTS_ENVIRONMENT): Use
1753         '$(PATH_SEPARATOR)' instead of ':'.
1754
1755 2009-04-24  Simon Josefsson  <simon@josefsson.org>
1756
1757         * lib/getopt1.c (main): Use 'const' for static array.
1758
1759 2009-04-24  Simon Josefsson  <simon@josefsson.org>
1760
1761         * top/maint.mk: Sync with coreutils.
1762         * NEWS: Explain incompatibilities.
1763
1764 2009-04-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
1765             Bruno Haible  <bruno@clisp.org>
1766
1767         Fix cross-compilation results.
1768         * m4/btowc.m4 (gl_FUNC_BTOWC): Use no-op statement, rather than empty
1769         statement, as third argument of AC_TRY_RUN.
1770         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE, gl_MBRTOWC_SANITYCHECK,
1771         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL):
1772         Likewise.
1773         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): Likewise.
1774         * m4/wcsrtombs.m4 (gl_WCSRTOMBS_TERMINATION, gl_WCSRTOMBS_NULL):
1775         Likewise.
1776         * m4/wctob.m4 (gl_FUNC_WCTOB): Likewise.
1777         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Likewise. Update for AIX 4.3.
1778         * doc/posix-functions/wcrtomb.texi: Mention the bug on AIX 4.3.
1779
1780 2009-04-20  Bruno Haible  <bruno@clisp.org>
1781
1782         Avoid test failure on mingw.
1783         * tests/uniwidth/test-uc_width2.sh: Convert newlines in output.
1784
1785 2009-04-20  Bruno Haible  <bruno@clisp.org>
1786
1787         Avoid compilation error on mingw.
1788         * modules/localename-tests (Depends-on): Add locale.
1789
1790 2009-04-19  Bruno Haible  <bruno@clisp.org>
1791
1792         Support for building a shared library on Windows platforms.
1793         * tests/uninorm/test-nfc.c (n): Don't define if WOE32DLL.
1794         (main): Test the presence of UNINORM_NFC here.
1795         * tests/uninorm/test-nfd.c (n): Don't define if WOE32DLL.
1796         (main): Test the presence of UNINORM_NFD here.
1797         * tests/uninorm/test-nfkc.c (n): Don't define if WOE32DLL.
1798         (main): Test the presence of UNINORM_NFKC here.
1799         * tests/uninorm/test-nfkd.c (n): Don't define if WOE32DLL.
1800         (main): Test the presence of UNINORM_NFKD here.
1801
1802 2009-04-19  Bruno Haible  <bruno@clisp.org>
1803
1804         Avoid a compiler warning.
1805         * tests/uninorm/test-u32-normalize-big.c (read_normalization_test_file):
1806         Change type of variable 'sequence'.
1807
1808 2009-04-19  Bruno Haible  <bruno@clisp.org>
1809
1810         * modules/configmake (Makefile.am): When the contents of configmake.h
1811         does not change, arrange to preserve its modification time.
1812
1813 2009-04-17  Simon Josefsson  <simon@josefsson.org>
1814
1815         * top/maint.mk (PO_DOMAIN): New variable, allows overriding of
1816         gettext domain.
1817
1818 2009-04-16  Jim Meyering  <meyering@redhat.com>
1819
1820         useless-if-before-free: improve conversion code
1821         * build-aux/useless-if-before-free: Adjust code-in-comment to match
1822         "...!= 0" as well as "...!= NULL".  emacs has one of the former.
1823
1824 2009-04-14  Bruno Haible  <bruno@clisp.org>
1825
1826         * modules/fcntl (Depends-on): Add extensions.
1827         * m4/fcntl_h.m4 (gl_FCNTL_H): Add a comment.
1828
1829 2009-04-12  Ben Pfaff  <blp@gnu.org>
1830
1831         Make fcntl module detect O_NOATIME, O_NOFOLLOW on GNU/Linux.
1832         * m4/fcntl_h.m4 (gl_FCNTL_H): Require AC_USE_SYSTEM_EXTENSIONS.
1833
1834 2009-03-20  Ben Pfaff  <blp@gnu.org>
1835
1836         Make rename replace existing destinations on Windows.
1837         * m4/rename.m4: Add test for Mingw.
1838         * lib/rename.c: Add rename replacement that uses MoveFileEx with
1839         MOVEFILE_REPLACE_EXISTING to replace existing destination files.
1840         * doc/posix-functions/rename.texi: Document.
1841
1842 2009-04-10  Bruno Haible  <bruno@clisp.org>
1843
1844         New include file "iconveh.h".
1845         * lib/iconveh.h: New file, extracted from lib/striconveh.h.
1846         * lib/striconveh.h: Include it.
1847         (enum iconv_ilseq_handler): Remove definition.
1848         * lib/striconveha.h: Include <stddef.h> and iconveh.h instead of
1849         striconveh.h.
1850         * lib/striconveha.c: Include striconveh.h.
1851         * lib/uniconv.h: Include iconveh.h instead of striconveh.h.
1852         * modules/striconveh (Files): Add lib/iconveh.h.
1853         * modules/uniconv/base (Files): Add lib/iconveh.h. Remove
1854         lib/striconveh.h.
1855
1856 2009-04-10  Bruno Haible  <bruno@clisp.org>
1857
1858         * lib/uniconv.h: Update comment.
1859
1860 2009-04-10  Bruno Haible  <bruno@clisp.org>
1861
1862         * lib/unistr/u8-mbtouc-aux.c: Inside libunistring, define the function
1863         always.
1864         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
1865         * lib/unistr/u16-mbtouc-aux.c: Likewise.
1866         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
1867         * lib/unistr/u8-mbtouc.c: Inside libunistring, include
1868         "unistring-notinline.h", so that the function gets defined always.
1869         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
1870         * lib/unistr/u8-uctomb.c: Likewise.
1871         * lib/unistr/u16-mbtouc.c: Likewise.
1872         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
1873         * lib/unistr/u16-uctomb.c: Likewise.
1874         * lib/unistr/u32-mbtouc.c: Likewise.
1875         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
1876         * lib/unistr/u32-uctomb.c: Likewise.
1877
1878 2009-04-10  Bruno Haible  <bruno@clisp.org>
1879
1880         Mark 'utime' obsolete.
1881         * modules/utime (Status, Notice): New sections.
1882         Suggested by Jim Meyering.
1883
1884         Fix cross-compile guess for utime test.
1885         * m4/utime.m4 (AC_FUNC_UTIME_NULL): Add definition from newest unstable
1886         autoconf.
1887         * doc/posix-functions/utime.texi: Give more precisions.
1888         Reported by Jan <ipif@ymail.com>.
1889
1890 2009-04-09  Kamil Dudka  <kdudka@redhat.com>
1891
1892         filevercmp: correct today's change
1893         * lib/filevercmp.c: Also handle coreutils' test inputs.
1894         * tests/test-filevercmp.c: Add inputs from one of coreutils' test scripts.
1895
1896         Fix regression in 'filevercmp' module. Thanks Sven Joachim
1897         for reporting it.
1898         * lib/filevercmp.c: Special handle for "", "." and "..".
1899         * tests/test-filevercmp.c: Enlarge the set suite.
1900
1901 2009-04-07  Jim Meyering  <meyering@redhat.com>
1902
1903         useless-if-before-free: show how to remove braced useless free, too
1904         * build-aux/useless-if-before-free: still only in a comment, though.
1905
1906 2009-04-07  Reuben Thomas  <rrt@sc3d.org>
1907
1908         maint.mk: import changes to syntax-check macros from coreutils
1909         * top/maint.mk (_prohibit_regexp, _header_without_use): Define.
1910         Use them in the relevant macros.
1911
1912 2009-04-06  Bruno Haible  <bruno@clisp.org>
1913
1914         Fix unportable use of bit-fields.
1915         * lib/unicase/special-casing.h (struct special_casing_rule): Change the
1916         bit-field type from 'int' to 'signed int'. Otherwise Solaris cc,
1917         AIX xlc, and OSF/1 cc interpret it as 'unsigned int'.
1918
1919 2009-04-06  Bruno Haible  <bruno@clisp.org>
1920
1921         Avoid test failures on AIX and OSF/1.
1922         * tests/unicase/test-u8-casefold.c (check): Account for the possibility
1923         that malloc(0) = NULL.
1924         * tests/unicase/test-u8-tolower.c (check): Likewise.
1925         * tests/unicase/test-u8-totitle.c (check): Likewise.
1926         * tests/unicase/test-u8-toupper.c (check): Likewise.
1927         * tests/unicase/test-u16-casefold.c (check): Likewise.
1928         * tests/unicase/test-u16-tolower.c (check): Likewise.
1929         * tests/unicase/test-u16-totitle.c (check): Likewise.
1930         * tests/unicase/test-u16-toupper.c (check): Likewise.
1931         * tests/unicase/test-u32-casefold.c (check): Likewise.
1932         * tests/unicase/test-u32-tolower.c (check): Likewise.
1933         * tests/unicase/test-u32-totitle.c (check): Likewise.
1934         * tests/unicase/test-u32-toupper.c (check): Likewise.
1935         * tests/uninorm/test-u8-nfc.c (check): Likewise.
1936         * tests/uninorm/test-u8-nfd.c (check): Likewise.
1937         * tests/uninorm/test-u8-nfkc.c (check): Likewise.
1938         * tests/uninorm/test-u8-nfkd.c (check): Likewise.
1939         * tests/uninorm/test-u16-nfc.c (check): Likewise.
1940         * tests/uninorm/test-u16-nfd.c (check): Likewise.
1941         * tests/uninorm/test-u16-nfkc.c (check): Likewise.
1942         * tests/uninorm/test-u16-nfkd.c (check): Likewise.
1943         * tests/uninorm/test-u32-nfc.c (check): Likewise.
1944         * tests/uninorm/test-u32-nfd.c (check): Likewise.
1945         * tests/uninorm/test-u32-nfkc.c (check): Likewise.
1946         * tests/uninorm/test-u32-nfkd.c (check): Likewise.
1947
1948 2009-04-05  Bruno Haible  <bruno@clisp.org>
1949
1950         Work around an autoconf limitation.
1951         * gnulib-tool (func_emit_lib_Makefile_am): Omit the "Reproduce by"
1952         comment line if it would be longer than 3 KB.
1953
1954 2009-04-05  Bruno Haible  <bruno@clisp.org>
1955
1956         Avoid test failure with libiconv-1.13.
1957         * tests/test-striconveh.c (main): Allow result of libiconv 1.13 as one
1958         of the expected test results.
1959
1960 2009-04-05  Bruno Haible  <bruno@clisp.org>
1961
1962         * gnulib-tool (func_emit_lib_Makefile_am): Don't add the library to
1963         noinst_LTLIBRARIES if the Makefile.am in the same directory specifies
1964         that it should be installed.
1965
1966 2009-04-05  Bruno Haible  <bruno@clisp.org>
1967
1968         * gnulib-tool: New option --copy-file.
1969         (func_usage): Document it.
1970         (func_dest_tmpfilename): Moved out of func_import.
1971         (func_add_file, func_update_file): New functions, extracted from
1972         func_import.
1973         (func_import): Update.
1974
1975 2009-04-05  Karl Berry  <karl@gnu.org>
1976
1977         * README: prominently mention gnulib-tool.
1978         Rearrange sections so getting the code is near the top.
1979
1980 2009-04-05  Bruno Haible  <bruno@clisp.org>
1981
1982         * lib/unicase.h: Mention u*_cmp2.
1983         * lib/unicase/u-casecmp.h (FUNC): Invoke U_CMP2 instead of U_CMP.
1984         * lib/unicase/u8-casecmp.c: Use u8_cmp2 instead of u8_cmp.
1985         * lib/unicase/ulc-casecmp.c: Likewise.
1986         * lib/unicase/u16-casecmp.c: Use u16_cmp2 instead of u16_cmp.
1987         * lib/unicase/u32-casecmp.c: Use u32_cmp2 instead of u32_cmp.
1988         * modules/unicase/u8-casecmp (Depends-on): Add unistr/u8-cmp2, remove
1989         unistr/u8-cmp.
1990         * modules/unicase/ulc-casecmp (Depends-on): Likewise.
1991         * modules/unicase/u16-casecmp (Depends-on): Add unistr/u16-cmp2, remove
1992         unistr/u16-cmp.
1993         * modules/unicase/u32-casecmp (Depends-on): Add unistr/u32-cmp2, remove
1994         unistr/u32-cmp.
1995
1996         * lib/uninorm.h: Mention u*_cmp2.
1997         * lib/uninorm/u-normcmp.h (FUNC): Invoke U_CMP2 instead of U_CMP.
1998         * lib/uninorm/u8-normcmp.c: Use u8_cmp2 instead of u8_cmp.
1999         * lib/uninorm/u16-normcmp.c: Use u16_cmp2 instead of u16_cmp.
2000         * lib/uninorm/u32-normcmp.c: Use u32_cmp2 instead of u32_cmp.
2001         * modules/uninorm/u8-normcmp (Depends-on): Add unistr/u8-cmp2, remove
2002         unistr/u8-cmp.
2003         * modules/uninorm/u16-normcmp (Depends-on): Add unistr/u16-cmp2, remove
2004         unistr/u16-cmp.
2005         * modules/uninorm/u32-normcmp (Depends-on): Add unistr/u32-cmp2, remove
2006         unistr/u32-cmp.
2007
2008         New module 'unistr/u32-cmp2'.
2009         * lib/unistr/u32-cmp2.c: New file.
2010         * modules/unistr/u32-cmp2: New file.
2011
2012         New module 'unistr/u16-cmp2'.
2013         * lib/unistr/u16-cmp2.c: New file.
2014         * modules/unistr/u16-cmp2: New file.
2015
2016         New module 'unistr/u8-cmp2'.
2017         * lib/unistr.h (u8_cmp2, u16_cmp2, u32_cmp2): New declarations.
2018         * lib/unistr/u8-cmp2.c: New file.
2019         * lib/unistr/u-cmp2.h: New file.
2020         * modules/unistr/u8-cmp2: New file.
2021
2022 2009-04-05  Bruno Haible  <bruno@clisp.org>
2023
2024         * lib/unictype.h (uc_property_is_valid): New macro.
2025         * tests/unictype/test-pr_byname.c (main): Use it.
2026
2027         * lib/unistr.h: Doc fixes.
2028         * lib/uniconv.h: Doc fixes.
2029         * lib/unictype.h: Doc fixes.
2030
2031 2009-04-03  Paul Eggert  <eggert@cs.ucla.edu>
2032
2033         Port coreutils 7.2 to Solaris 8.
2034
2035         * modules/arpa_inet (arpa/inet.h): Depend on arpa_inet.in.h.
2036         * m4/inet_ntop.m4 (gl_INET_NTOP): Search for inet_ntop in -lnsl,
2037         for Solaris 8.  This is a bit of a hack, as it means it's the
2038         caller's responsibility to add -lnsl if needed, but most likely it
2039         won't be needed since only getaddrinfo uses this and getaddrinfo
2040         isn't needed on Solaris 8.
2041
2042         * modules/fnmatch (Depends-on): Add mbsrtowcs, to fix a porting
2043         problem to Solaris 8 encountered with coreutils 7.2, which
2044         resulted in a message "fnmatch.c:292: warning: passing argument 4
2045         of 'mbsrtowcs' from incompatible pointer type".  Also, add mbsinit
2046         at the suggestion of Bruno Haible, since fnmatch uses mbsinit.
2047
2048 2009-04-03  Simon Josefsson  <simon@josefsson.org>
2049
2050         * m4/ld-version-script.m4: Add FIXME comment.
2051
2052 2009-04-02  Simon Josefsson  <simon@josefsson.org>
2053
2054         * doc/ld-output-def.texi: Use DLL_VERSION instead of confusing
2055         SOVERSION variable.
2056
2057 2009-04-02  Bruno Haible  <bruno@clisp.org>
2058
2059         * Makefile (info, html, dvi, pdf): Combine the rules.
2060         Suggested by Jim Meyering.
2061
2062 2009-04-01  Bruno Haible  <bruno@clisp.org>
2063
2064         * Makefile (info, html, dvi, pdf): New targets.
2065         Reported by Reuben Thomas <rrt@sc3d.org>.
2066
2067 2009-04-01  Bruno Haible  <bruno@clisp.org>
2068
2069         * doc/gnulib-tool.texi (Invoking gnulib-tool): Document how gnulib-tool
2070         can be put into PATH.
2071         Reported by Reuben Thomas <rrt@sc3d.org>. Suggested by Karl Berry.
2072
2073 2009-04-01  Bruno Haible  <bruno@clisp.org>
2074
2075         * doc/lib-symbol-visibility.texi: Follow texinfo style conventions.
2076
2077 2009-04-01  Bruno Haible  <bruno@clisp.org>
2078
2079         Rename module 'visibility'.
2080         * modules/lib-symbol-visibility: Renamed from modules/visibility.
2081         * doc/lib-symbol-visibility.texi: Renamed from visibility.texi.
2082         * doc/gnulib.texi: Update.
2083         * MODULES.html.sh (Misc): Update.
2084         * NEWS: Mention the change.
2085
2086 2009-04-01  Simon Josefsson  <simon@josefsson.org>
2087
2088         * modules/lib-msvc-compat: New module.  Thanks to Bruno Haible
2089         <bruno@clisp.org>, Ralf Wildenhues <Ralf.Wildenhues@gmx.de>, and
2090         Eric Blake <ebb9@byu.net> for review.
2091         * MODULES.html.sh: Add lib-msvc-compat.
2092         * doc/gnulib.texi: Link to new section.
2093         * m4/ld-output-def.m4: New file.
2094         * doc/ld-output-def.texi: New file.
2095
2096 2009-04-01  Simon Josefsson  <simon@josefsson.org>
2097
2098         Rename ld-version-script to lib-symbol-versions.  Suggested by
2099         Bruno Haible <bruno@clisp.org>.
2100         * modules/ld-version-script: Renamed to lib-symbol-versions.
2101         * doc/ld-version-script.texi: Fix module name.
2102         * MODULES.html.sh: Add lib-symbol-versions.
2103
2104 2009-03-31  Simon Josefsson  <simon@josefsson.org>
2105
2106         * modules/u64-tests: New file.
2107         * tests/test-u64.c: New file.
2108
2109 2009-03-04  Simon Josefsson  <simon@josefsson.org>
2110
2111         * MODULES.html.sh: Mention u64.
2112         * modules/u64: New module.
2113         * modules/crypto/sha512: Depend on u64 module instead of providing
2114         u64.h.
2115
2116 2009-03-27  Eric Blake  <ebb9@byu.net>
2117
2118         test-strerror: make debugging EAI_SYSTEM easier
2119         * modules/getaddrinfo-tests (Depends-on): Add strerror.
2120         * test-getaddrinfo.c (simple) [ENABLE_DEBUGGING]: Report errno if
2121         failure was EAI_SYSTEM.
2122
2123 2009-03-25  Bruno Haible  <bruno@clisp.org>
2124
2125         Fix a problem with --enable-relocatable on Solaris 7.
2126         * modules/relocatable-prog-wrapper (Depends-on): Add environ. Needed
2127         since 2008-02-24.
2128
2129 2009-03-25  Eric Blake  <ebb9@byu.net>
2130
2131         test-sockets: avoid gcc warning
2132         * tests/test-sockets.c (main): Silence compiler warning.
2133
2134 2009-03-25  Paul Eggert  <eggert@cs.ucla.edu>
2135
2136         New modules nproc, pthread, contributed by Glen Lenker.
2137
2138         * MODULES.html.sh: Add pthread, nproc.
2139         * lib/nproc.c: New file.
2140         * lib/nproc.h: New file.
2141         * lib/pthread.in.h: New file.
2142         * m4/pthread.m4: New file.
2143         * modules/nproc: New file.
2144         * modules/pthread: New file.
2145
2146 2009-03-24  Simon Josefsson  <simon@josefsson.org>
2147
2148         * modules/unicase/locale-language-tests (test_locale_language_LDADD):
2149         New variable.
2150
2151 2009-03-24  Kamil Dudka  <kdudka@redhat.com>
2152
2153         filevercmp: handle simple~ and numbered.~3~ backup suffixes
2154         * lib/filevercmp.c: Handle simple~ and numbered.~3~ backup suffixes.
2155         * tests/test-filevercmp.c: Add tests for backup suffixes.
2156
2157 2009-03-24  Simon Josefsson  <simon@josefsson.org>
2158
2159         * modules/stdlib (Depends-on): Add stdint, needed when defining
2160         struct random_data on, for example, HP-UX 10.20.  Reported by
2161         Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
2162
2163 2009-03-24  Simon Josefsson  <simon@josefsson.org>
2164
2165         * lib/readline.c (readline): Call fflush on stdout after printing
2166         prompt.
2167
2168 2009-03-20  Bruno Haible  <bruno@clisp.org>
2169
2170         Remove dependency from 'close' module to -lws2_32 on native Windows.
2171         * lib/close-hook.h: New file.
2172         * lib/close-hook.c: New file.
2173         * lib/close.c: Include close-hook.h. Don't include <sys/socket.h>,
2174         w32sock.h.
2175         (_gl_close_fd_maybe_socket): Remove function.
2176         (rpl_close): Invoke execute_all_close_hooks instead of
2177         _gl_close_fd_maybe_socket.
2178         * lib/sockets.c: Include close-hook.h, w32sock.h.
2179         (close_fd_maybe_socket): New function, essentially from lib/close.c.
2180         (close_sockets_hook): New variable.
2181         (gl_sockets_startup): Register close_fd_maybe_socket as a hook.
2182         (gl_sockets_cleanup): Unregister it.
2183         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): Remove macro.
2184         * m4/close.m4 (gl_REPLACE_CLOSE): Undo 2009-02-05 change.
2185         * modules/close-hook: New file.
2186         * modules/close (Files): Remove lib/w32sock.h.
2187         (Depends-on): Add close-hook.
2188         (Link): Remove section.
2189         * modules/sockets (Files): Add lib/w32sock.h.
2190         (Depends-on): Add close-hook.
2191         * modules/sys_socket (configure.ac): Remove gl_MODULE_INDICATOR
2192         invocation.
2193         * NEWS: Mention that LIB_CLOSE is gone.
2194
2195 2009-03-23  Eric Blake  <ebb9@byu.net>
2196
2197         signal-tests: test previous patch
2198         * tests/test-signal.c: New file.
2199         * modules/signal-tests: Likewise.
2200
2201         signal.h: always support 'volatile sig_atomic_t'
2202         * m4/signal_h.m4 (gl_SIGNAL_H): Check for AIX limitation.
2203         (gl_SIGNAL_H_DEFAULTS): Add a default.
2204         * modules/signal (Makefile.am): Substitute if needed.
2205         * lib/signal.in.h (sig_atomic_t): Redefine if needed, so that
2206         users can blindly add volatile.
2207         * doc/posix-headers/signal.texi (signal.h): Document it.
2208         Reported by Matthew Woehlke.
2209
2210 2009-03-23  Jim Meyering  <meyering@redhat.com>
2211
2212         pathmax: PATH_MAX: use pathconf only when available
2213         * lib/pathmax.h (PATH_MAX): Select the pathconf-using definition
2214         only if HAVE_PATHCONF is defined.  Patch by Sylvain Beucler.
2215         * m4/pathmax.m4 (gl_PATHMAX): Check for pathconf.
2216         This avoids a link failure in a PSP cross-compilation environment
2217         described in http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/17048
2218
2219         * lib/vasnprintf.c (divide): Fix typo in comment.
2220
2221 2009-03-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2222
2223         * gnulib-tool (func_filter_filelist): Fix comment.
2224
2225 2009-03-20  Bruno Haible  <bruno@clisp.org>
2226
2227         Make sockets.h self-contained.
2228         * lib/sockets.c: Include sockets.h first.
2229         * lib/sockets.h: Include <sys/socket.h> before using the SOCKET type.
2230
2231 2009-03-19  Eric Blake  <ebb9@byu.net>
2232
2233         doc: mention more functions added in cygwin 1.7.0
2234         * doc/posix-functions/log2.texi: Mention recent cygwin 1.7.0
2235         addition.
2236         * doc/posix-functions/log2f.texi: Likewise.
2237
2238 2009-03-19  Jim Meyering  <meyering@redhat.com>
2239
2240         fsusage: avoid syntax error due to statement-before-declaration
2241         * lib/fsusage.c (get_fs_usage): Put warning-avoidance statement
2242         after all declarations.  Reported by Matthew Woehlke in
2243         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/16231
2244
2245 2009-03-18  Eric Blake  <ebb9@byu.net>
2246
2247         build-aux/compile: sync from automake
2248         * build-aux/compile: New file, from automake.
2249         * config/srclist.txt: Mention build-aux/compile.
2250
2251 2009-03-17  Bruno Haible  <bruno@clisp.org>
2252
2253         * lib/git-merge-changelog.c: Fix typo in comment.
2254         Reported by Reuben Thomas <rrt@sc3d.org>.
2255
2256 2009-03-17  Reuben Thomas  <rrt@sc3d.org>
2257
2258         * m4/regex.m4: update and improve help for
2259         --without-included-regex.
2260
2261 2009-03-17  Simon Josefsson  <simon@josefsson.org>
2262
2263         * modules/isnanl-nolibm-tests (Files): Add tests/nan.h to avoid
2264         failure on missing include files.
2265
2266 2009-03-17  Eric Blake  <ebb9@byu.net>
2267
2268         doc: mention more functions added in cygwin 1.7.0
2269         * doc/posix-functions/fwprintf.texi: Mention recent cygwin 1.7.0
2270         addition.
2271         * doc/posix-functions/fwscanf.texi: Likewise.
2272         * doc/posix-functions/swprintf.texi: Likewise.
2273         * doc/posix-functions/swscanf.texi: Likewise.
2274         * doc/posix-functions/vfwprintf.texi: Likewise.
2275         * doc/posix-functions/vfwscanf.texi: Likewise.
2276         * doc/posix-functions/vswprintf.texi: Likewise.
2277         * doc/posix-functions/vswscanf.texi: Likewise.
2278         * doc/posix-functions/vwprintf.texi: Likewise.
2279         * doc/posix-functions/vwscanf.texi: Likewise.
2280         * doc/posix-functions/wcscasecmp.texi: Likewise.
2281         * doc/posix-functions/wcsdup.texi: Likewise.
2282         * doc/posix-functions/wcsftime.texi: Likewise.
2283         * doc/posix-functions/wcsncasecmp.texi: Likewise.
2284         * doc/posix-functions/wprintf.texi: Likewise.
2285         * doc/posix-functions/wscanf.texi: Likewise.
2286         * doc/glibc-functions/gethostbyname2.texi: Likewise.
2287
2288 2009-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2289
2290         maint.mk: really add $(AM_MAKEFLAGS)
2291         * top/maint.mk (init-coverage, build-coverage): `$(AM_MAKEFLAGS)'
2292         was inadvertently omitted in the last commit.
2293         Spotted by Bruno Haible.
2294
2295         maint.mk: use $(MAKE) $(AM_MAKEFLAGS) not make
2296         * top/maint.mk (init-coverage, build-coverage): Use `$(MAKE)
2297         $(AM_MAKEFLAGS)' rather than plain `make'.
2298
2299         gnulib-tool: execute $MAKE not make
2300         * gnulib-tool: Default $MAKE to 'make'.
2301         (func_create_testdir, func_create_megatestdir): Use $MAKE rather
2302         than make.  Initialize $MAKE in the do-autobuild script.
2303
2304         gnulib-tool: use $MAKE not make in generated files
2305         * gnulib-tool (func_create_megatestdir): Use $MAKE rather than
2306         make, in generated files.  Initialize $MAKE in the do-autobuild
2307         script.
2308
2309         * top/GNUmakefile (_have-git-version-gen): Fix typo.
2310
2311         GNUmakefile: disable parallelism only for multiple, recursive targets
2312         * top/GNUmakefile (ALL_RECURSIVE_TARGETS): New macro; allow user
2313         additions in the Makefile.
2314         (AM_RECURSIVE_TARGETS): New macro, override only if not provided
2315         by Automake.
2316         (.NOTPARALLEL): Only disable parallel builds if multiple targets
2317         are listed on the command line and at least one of them is
2318         listed in $(ALL_RECURSIVE_TARGETS).
2319
2320 2009-03-14  Bruno Haible  <bruno@clisp.org>
2321
2322         * modules/unilbrk/u8-possible-linebreaks (Depends-on): Replace
2323         utf8-ucs4-unsafe with unistr/u8-mbtouc-unsafe.
2324         * modules/unilbrk/u8-width-linebreaks (Depends-on): Likewise.
2325         * modules/unilbrk/u16-possible-linebreaks (Depends-on): Replace
2326         utf16-ucs4-unsafe with unistr/u16-mbtouc-unsafe.
2327         * modules/unilbrk/u16-width-linebreaks (Depends-on): Likewise.
2328         * modules/unistr/u8-chr (Depends-on): Replace ucs4-utf8 with
2329         unistr/u8-uctomb.
2330         * modules/unistr/u8-strchr (Depends-on): Likewise.
2331         * modules/unistr/u8-strrchr (Depends-on): Likewise.
2332         * modules/unistr/u16-chr (Depends-on): Replace ucs4-utf16 with
2333         unistr/u16-uctomb.
2334         * modules/unistr/u16-strchr (Depends-on): Likewise.
2335         * modules/unistr/u16-strrchr (Depends-on): Likewise.
2336
2337 2009-03-12  Bruno Haible  <bruno@clisp.org>
2338
2339         Work around select() bug on Interix 3.5.
2340         * lib/sys_select.in.h (select): Also replace if REPLACE_SELECT is 1.
2341         * lib/select.c (rpl_select): Add an implementation for Unix platforms.
2342         * m4/select.m4: New file.
2343         * m4/sys_select_h.m4 (gl_SYS_SELECT_H_DEFAULTS): Initialize REPLACE_SELECT.
2344         * modules/sys_select (Makefile.am): Substitute REPLACE_SELECT.
2345         * modules/select (Files): Add m4/select.m4.
2346         (configure.ac): Move conditional to m4/select.m4. Invoke gl_FUNC_SELECT.
2347         * modules/nanosleep (Depends-on): Add select.
2348         * modules/poll (Depends-on): Likewise.
2349         * doc/posix-functions/select.texi: Mention the Interix bug.
2350         Reported by Markus Duft <mduft@gentoo.org>.
2351
2352         * lib/select.c: Renamed from lib/winsock-select.c.
2353         * modules/select (Files): Add lib/select.c, remove
2354         lib/winsock-select.c.
2355         (configure.ac): Update.
2356
2357 2009-03-12  Jim Meyering  <meyering@redhat.com>
2358
2359         avoid gcc warnings about unused macro definitions
2360         * lib/readtokens.c (STREQ): Remove unused definition.
2361         * lib/xmalloc.c (SIZE_MAX): Likewise.
2362         * lib/openat-die.c (N_): Likewise.
2363         * lib/mountlist.c (SIZE_MAX): Remove definition.
2364         Instead, include <stdint.h>.
2365         * lib/readutmp.c: Likewise.
2366         * modules/readutmp (Depends-on): Add stdint.
2367         * modules/mountlist (Depends-on): Add stdint.
2368         * lib/userspec.c (ISDIGIT): Move definition into #if block where used.
2369
2370 2009-03-10  Bruno Haible  <bruno@clisp.org>
2371
2372         Tests for module 'mbmemcasecoll'.
2373         * modules/mbmemcasecoll-tests: New file.
2374         * tests/test-mbmemcasecoll1.sh: New file.
2375         * tests/test-mbmemcasecoll2.sh: New file.
2376         * tests/test-mbmemcasecoll3.sh: New file.
2377         * tests/test-mbmemcasecoll.c: New file.
2378
2379         New module 'mbmemcasecoll'.
2380         * lib/mbmemcasecoll.h: New file.
2381         * lib/mbmemcasecoll.c: New file.
2382         * modules/mbmemcasecoll: New file.
2383
2384         * tests/test-mbmemcasecmp.h: New file, extracted from
2385         tests/test-mbmemcasecmp.c.
2386         * tests/test-mbmemcasecmp.c: Include test-mbmemcasecmp.h.
2387         (test_ascii, test_iso_8859_1, test_utf_8): Remove functions.
2388         (main): Update.
2389         * modules/mbmemcasecmp-tests (Files): Add tests/test-mbmemcasecmp.h.
2390
2391 2009-03-09  Bruno Haible  <bruno@clisp.org>
2392
2393         Tests for module 'mbmemcasecmp'.
2394         * modules/mbmemcasecmp-tests: New file.
2395         * tests/test-mbmemcasecmp1.sh: New file.
2396         * tests/test-mbmemcasecmp2.sh: New file.
2397         * tests/test-mbmemcasecmp3.sh: New file.
2398         * tests/test-mbmemcasecmp.c: New file.
2399
2400         New module 'mbmemcasecmp'.
2401         * lib/mbmemcasecmp.h: New file.
2402         * lib/mbmemcasecmp.c: New file.
2403         * modules/mbmemcasecmp: New file.
2404
2405 2009-03-09  Bruno Haible  <bruno@clisp.org>
2406
2407         Tests for module 'unicase/ulc-casecoll'.
2408         * modules/unicase/ulc-casecoll-tests: New file.
2409         * tests/unicase/test-ulc-casecoll1.sh: New file.
2410         * tests/unicase/test-ulc-casecoll2.sh: New file.
2411         * tests/unicase/test-ulc-casecoll.c: New file.
2412
2413         New module 'unicase/ulc-casecoll'.
2414         * lib/unicase.h (ulc_casecoll): New declaration.
2415         * lib/unicase/ulc-casecoll.c: New file.
2416         * modules/unicase/ulc-casecoll: New file.
2417
2418         New module 'unicase/ulc-casexfrm'.
2419         * lib/unicase.h (ulc_casexfrm): New declaration.
2420         * lib/unicase/ulc-casexfrm.c: New file.
2421         * modules/unicase/ulc-casexfrm: New file.
2422
2423 2009-03-09  Bruno Haible  <bruno@clisp.org>
2424
2425         Followup to 2008-12-22 commit: Remove unnecessary AC_FUNC_MBRTOWC
2426         invocations.
2427
2428         * m4/mbscasecmp.m4: Remove file.
2429         * modules/mbscasecmp (Files): Remove it and m4/mbrtowc.m4
2430         (configure.ac): Remove gl_FUNC_MBSCASECMP invocation.
2431
2432         * m4/mbscasestr.m4: Remove file.
2433         * modules/mbscasestr (Files): Remove it and m4/mbrtowc.m4
2434         (configure.ac): Remove gl_FUNC_MBSCASESTR invocation.
2435
2436         * m4/mbschr.m4: Remove file.
2437         * modules/mbschr (Files): Remove it and m4/mbrtowc.m4
2438         (configure.ac): Remove gl_FUNC_MBSCHR invocation.
2439
2440         * m4/mbscspn.m4: Remove file.
2441         * modules/mbscspn (Files): Remove it and m4/mbrtowc.m4
2442         (configure.ac): Remove gl_FUNC_MBSCSPN invocation.
2443
2444         * m4/mbslen.m4: Remove file.
2445         * modules/mbslen (Files): Remove it and m4/mbrtowc.m4
2446         (configure.ac): Remove gl_FUNC_MBSLEN invocation.
2447
2448         * m4/mbsncasecmp.m4: Remove file.
2449         * modules/mbsncasecmp (Files): Remove it and m4/mbrtowc.m4
2450         (configure.ac): Remove gl_FUNC_MBSNCASECMP invocation.
2451
2452         * m4/mbsnlen.m4: Remove file.
2453         * modules/mbsnlen (Files): Remove it and m4/mbrtowc.m4
2454         (configure.ac): Remove gl_FUNC_MBSNLEN invocation.
2455
2456         * m4/mbspbrk.m4: Remove file.
2457         * modules/mbspbrk (Files): Remove it and m4/mbrtowc.m4
2458         (configure.ac): Remove gl_FUNC_MBSPBRK invocation.
2459
2460         * m4/mbspcasecmp.m4: Remove file.
2461         * modules/mbspcasecmp (Files): Remove it and m4/mbrtowc.m4
2462         (configure.ac): Remove gl_FUNC_MBSPCASECMP invocation.
2463
2464         * m4/mbsrchr.m4: Remove file.
2465         * modules/mbsrchr (Files): Remove it and m4/mbrtowc.m4
2466         (configure.ac): Remove gl_FUNC_MBSRCHR invocation.
2467
2468         * m4/mbssep.m4: Remove file.
2469         * modules/mbssep (Files): Remove it and m4/mbrtowc.m4
2470         (configure.ac): Remove gl_FUNC_MBSSEP invocation.
2471
2472         * m4/mbsspn.m4: Remove file.
2473         * modules/mbsspn (Files): Remove it and m4/mbrtowc.m4
2474         (configure.ac): Remove gl_FUNC_MBSSPN invocation.
2475
2476         * m4/mbsstr.m4: Remove file.
2477         * modules/mbsstr (Files): Remove it and m4/mbrtowc.m4
2478         (configure.ac): Remove gl_FUNC_MBSSTR invocation.
2479
2480         * m4/mbstok_r.m4: Remove file.
2481         * modules/mbstok_r (Files): Remove it and m4/mbrtowc.m4
2482         (configure.ac): Remove gl_FUNC_MBSTOK_R invocation.
2483
2484         * m4/mbswidth.m4 (gl_MBSWIDTH): Remove AC_FUNC_MBRTOWC invocation.
2485
2486         * m4/quotearg.m4 (gl_QUOTEARG): Remove mbsinit test and
2487         AC_TYPE_MBSTATE_T, AC_FUNC_MBRTOWC invocations.
2488
2489         * modules/trim (configure.ac): Remove AC_FUNC_MBRTOWC invocation.
2490
2491 2009-03-08  Bruno Haible  <bruno@clisp.org>
2492
2493         Tests for module 'unicase/ulc-casecmp'.
2494         * modules/unicase/ulc-casecmp-tests: New file.
2495         * tests/unicase/test-ulc-casecmp1.sh: New file.
2496         * tests/unicase/test-ulc-casecmp2.sh: New file.
2497         * tests/unicase/test-ulc-casecmp.c: New file.
2498
2499         New module 'unicase/ulc-casecmp'.
2500         * lib/unicase.h (ulc_casecmp): New declaration.
2501         * lib/unicase/ulc-casecmp.c: New file.
2502         * lib/unicase/u-casecmp.h (FUNC): Change argument types to
2503         'const SRC_UNIT *'.
2504         * lib/unicase/u8-casecmp.c (SRC_UNIT): Define like UNIT.
2505         * lib/unicase/u16-casecmp.c (SRC_UNIT): Likewise.
2506         * lib/unicase/u32-casecmp.c (SRC_UNIT): Likewise.
2507         * modules/unicase/ulc-casecmp: New file.
2508
2509         Tests for module 'unicase/u32-is-cased'.
2510         * modules/unicase/u32-is-cased-tests: New file.
2511         * tests/unicase/test-u32-is-cased.c: New file.
2512
2513         Tests for module 'unicase/u16-is-cased'.
2514         * modules/unicase/u16-is-cased-tests: New file.
2515         * tests/unicase/test-u16-is-cased.c: New file.
2516
2517         Tests for module 'unicase/u8-is-cased'.
2518         * modules/unicase/u8-is-cased-tests: New file.
2519         * tests/unicase/test-u8-is-cased.c: New file.
2520         * tests/unicase/test-is-cased.h: New file.
2521
2522         New module 'unicase/u32-is-cased'.
2523         * lib/unicase/u32-is-cased.c: New file.
2524         * modules/unicase/u32-is-cased: New file.
2525
2526         New module 'unicase/u16-is-cased'.
2527         * lib/unicase/u16-is-cased.c: New file.
2528         * modules/unicase/u16-is-cased: New file.
2529
2530         New module 'unicase/u8-is-cased'.
2531         * lib/unicase/u8-is-cased.c: New file.
2532         * lib/unicase/u-is-cased.h: New file.
2533         * modules/unicase/u8-is-cased: New file.
2534
2535         Tests for module 'unicase/u32-is-casefolded'.
2536         * modules/unicase/u32-is-casefolded-tests: New file.
2537         * tests/unicase/test-u32-is-casefolded.c: New file.
2538
2539         Tests for module 'unicase/u16-is-casefolded'.
2540         * modules/unicase/u16-is-casefolded-tests: New file.
2541         * tests/unicase/test-u16-is-casefolded.c: New file.
2542
2543         Tests for module 'unicase/u8-is-casefolded'.
2544         * modules/unicase/u8-is-casefolded-tests: New file.
2545         * tests/unicase/test-u8-is-casefolded.c: New file.
2546         * tests/unicase/test-is-casefolded.h: New file.
2547
2548         New module 'unicase/u32-is-casefolded'.
2549         * lib/unicase/u32-is-casefolded.c: New file.
2550         * modules/unicase/u32-is-casefolded: New file.
2551
2552         New module 'unicase/u16-is-casefolded'.
2553         * lib/unicase/u16-is-casefolded.c: New file.
2554         * modules/unicase/u16-is-casefolded: New file.
2555
2556         New module 'unicase/u8-is-casefolded'.
2557         * lib/unicase/u8-is-casefolded.c: New file.
2558         * modules/unicase/u8-is-casefolded: New file.
2559
2560         Tests for module 'unicase/u32-is-titlecase'.
2561         * modules/unicase/u32-is-titlecase-tests: New file.
2562         * tests/unicase/test-u32-is-titlecase.c: New file.
2563
2564         Tests for module 'unicase/u16-is-titlecase'.
2565         * modules/unicase/u16-is-titlecase-tests: New file.
2566         * tests/unicase/test-u16-is-titlecase.c: New file.
2567
2568         Tests for module 'unicase/u8-is-titlecase'.
2569         * modules/unicase/u8-is-titlecase-tests: New file.
2570         * tests/unicase/test-u8-is-titlecase.c: New file.
2571         * tests/unicase/test-is-titlecase.h: New file.
2572
2573         New module 'unicase/u32-is-titlecase'.
2574         * lib/unicase/u32-is-titlecase.c: New file.
2575         * modules/unicase/u32-is-titlecase: New file.
2576
2577         New module 'unicase/u16-is-titlecase'.
2578         * lib/unicase/u16-is-titlecase.c: New file.
2579         * modules/unicase/u16-is-titlecase: New file.
2580
2581         New module 'unicase/u8-is-titlecase'.
2582         * lib/unicase/u8-is-titlecase.c: New file.
2583         * modules/unicase/u8-is-titlecase: New file.
2584
2585         Tests for module 'unicase/u32-is-lowercase'.
2586         * modules/unicase/u32-is-lowercase-tests: New file.
2587         * tests/unicase/test-u32-is-lowercase.c: New file.
2588
2589         Tests for module 'unicase/u16-is-lowercase'.
2590         * modules/unicase/u16-is-lowercase-tests: New file.
2591         * tests/unicase/test-u16-is-lowercase.c: New file.
2592
2593         Tests for module 'unicase/u8-is-lowercase'.
2594         * modules/unicase/u8-is-lowercase-tests: New file.
2595         * tests/unicase/test-u8-is-lowercase.c: New file.
2596         * tests/unicase/test-is-lowercase.h: New file.
2597
2598         New module 'unicase/u32-is-lowercase'.
2599         * lib/unicase/u32-is-lowercase.c: New file.
2600         * modules/unicase/u32-is-lowercase: New file.
2601
2602         New module 'unicase/u16-is-lowercase'.
2603         * lib/unicase/u16-is-lowercase.c: New file.
2604         * modules/unicase/u16-is-lowercase: New file.
2605
2606         New module 'unicase/u8-is-lowercase'.
2607         * lib/unicase/u8-is-lowercase.c: New file.
2608         * modules/unicase/u8-is-lowercase: New file.
2609
2610         Tests for module 'unicase/u32-is-uppercase'.
2611         * modules/unicase/u32-is-uppercase-tests: New file.
2612         * tests/unicase/test-u32-is-uppercase.c: New file.
2613
2614         Tests for module 'unicase/u16-is-uppercase'.
2615         * modules/unicase/u16-is-uppercase-tests: New file.
2616         * tests/unicase/test-u16-is-uppercase.c: New file.
2617
2618         Tests for module 'unicase/u8-is-uppercase'.
2619         * modules/unicase/u8-is-uppercase-tests: New file.
2620         * tests/unicase/test-u8-is-uppercase.c: New file.
2621         * tests/unicase/test-is-uppercase.h: New file.
2622
2623         New module 'unicase/u32-is-uppercase'.
2624         * lib/unicase/u32-is-uppercase.c: New file.
2625         * modules/unicase/u32-is-uppercase: New file.
2626
2627         New module 'unicase/u16-is-uppercase'.
2628         * lib/unicase/u16-is-uppercase.c: New file.
2629         * modules/unicase/u16-is-uppercase: New file.
2630
2631         New module 'unicase/u8-is-uppercase'.
2632         * lib/unicase/u8-is-uppercase.c: New file.
2633         * modules/unicase/u8-is-uppercase: New file.
2634
2635         New module 'unicase/u32-is-invariant'.
2636         * lib/unicase/u32-is-invariant.c: New file.
2637         * modules/unicase/u32-is-invariant: New file.
2638
2639         New module 'unicase/u16-is-invariant'.
2640         * lib/unicase/u16-is-invariant.c: New file.
2641         * modules/unicase/u16-is-invariant: New file.
2642
2643         New module 'unicase/u8-is-invariant'.
2644         * lib/unicase/u8-is-invariant.c: New file.
2645         * lib/unicase/invariant.h: New file.
2646         * lib/unicase/u-is-invariant.h: New file.
2647         * modules/unicase/u8-is-invariant: New file.
2648
2649         Tests for module 'unicase/u32-casecoll'.
2650         * modules/unicase/u32-casecoll-tests: New file.
2651         * tests/unicase/test-u32-casecoll.c: New file.
2652
2653         Tests for module 'unicase/u16-casecoll'.
2654         * modules/unicase/u16-casecoll-tests: New file.
2655         * tests/unicase/test-u16-casecoll.c: New file.
2656
2657         Tests for module 'unicase/u8-casecoll'.
2658         * modules/unicase/u8-casecoll-tests: New file.
2659         * tests/unicase/test-u8-casecoll.c: New file.
2660
2661         New module 'unicase/u32-casecoll'.
2662         * lib/unicase/u32-casecoll.c: New file.
2663         * modules/unicase/u32-casecoll: New file.
2664
2665         New module 'unicase/u16-casecoll'.
2666         * lib/unicase/u16-casecoll.c: New file.
2667         * modules/unicase/u16-casecoll: New file.
2668
2669         New module 'unicase/u8-casecoll'.
2670         * lib/unicase/u8-casecoll.c: New file.
2671         * lib/unicase/u-casecoll.h: New file.
2672         * modules/unicase/u8-casecoll: New file.
2673
2674         New module 'unicase/u32-casexfrm'.
2675         * lib/unicase/u32-casexfrm.c: New file.
2676         * modules/unicase/u32-casexfrm: New file.
2677
2678         New module 'unicase/u16-casexfrm'.
2679         * lib/unicase/u16-casexfrm.c: New file.
2680         * modules/unicase/u16-casexfrm: New file.
2681
2682         New module 'unicase/u8-casexfrm'.
2683         * lib/unicase/u8-casexfrm.c: New file.
2684         * lib/unicase/u-casexfrm.h: New file.
2685         * modules/unicase/u8-casexfrm: New file.
2686
2687         Tests for module 'unicase/u32-casecmp'.
2688         * modules/unicase/u32-casecmp-tests: New file.
2689         * tests/unicase/test-u32-casecmp.c: New file.
2690
2691         Tests for module 'unicase/u16-casecmp'.
2692         * modules/unicase/u16-casecmp-tests: New file.
2693         * tests/unicase/test-u16-casecmp.c: New file.
2694
2695         Tests for module 'unicase/u8-casecmp'.
2696         * modules/unicase/u8-casecmp-tests: New file.
2697         * tests/unicase/test-u8-casecmp.c: New file.
2698         * tests/unicase/test-casecmp.h: New file.
2699
2700         New module 'unicase/u32-casecmp'.
2701         * lib/unicase/u32-casecmp.c: New file.
2702         * modules/unicase/u32-casecmp: New file.
2703
2704         New module 'unicase/u16-casecmp'.
2705         * lib/unicase/u16-casecmp.c: New file.
2706         * modules/unicase/u16-casecmp: New file.
2707
2708         New module 'unicase/u8-casecmp'.
2709         * lib/unicase/u8-casecmp.c: New file.
2710         * lib/unicase/u-casecmp.h: New file.
2711         * modules/unicase/u8-casecmp: New file.
2712
2713         Tests for module 'unicase/u32-casefold'.
2714         * modules/unicase/u32-casefold-tests: New file.
2715         * tests/unicase/test-u32-casefold.c: New file.
2716
2717         Tests for module 'unicase/u16-casefold'.
2718         * modules/unicase/u16-casefold-tests: New file.
2719         * tests/unicase/test-u16-casefold.c: New file.
2720
2721         Tests for module 'unicase/u8-casefold'.
2722         * modules/unicase/u8-casefold-tests: New file.
2723         * tests/unicase/test-u8-casefold.c: New file.
2724
2725         New module 'unicase/u32-casefold'.
2726         * lib/unicase/u32-casefold.c: New file.
2727         * modules/unicase/u32-casefold: New file.
2728
2729         New module 'unicase/u16-casefold'.
2730         * lib/unicase/u16-casefold.c: New file.
2731         * modules/unicase/u16-casefold: New file.
2732
2733         New module 'unicase/u8-casefold'.
2734         * lib/unicase/u8-casefold.c: New file.
2735         * lib/unicase/u-casefold.h: New file.
2736         * modules/unicase/u8-casefold: New file.
2737
2738         New module 'unicase/tocasefold'.
2739         * lib/unicase/casefold.h: New file.
2740         * lib/unicase/tocasefold.c: New file.
2741         * lib/unicase/tocasefold.h: New file, generated by gen-uni-tables.c.
2742         * modules/unicase/tocasefold: New file.
2743
2744         Tests for module 'unicase/u32-totitle'.
2745         * modules/unicase/u32-totitle-tests: New file.
2746         * tests/unicase/test-u32-totitle.c: New file.
2747
2748         Tests for module 'unicase/u16-totitle'.
2749         * modules/unicase/u16-totitle-tests: New file.
2750         * tests/unicase/test-u16-totitle.c: New file.
2751
2752         Tests for module 'unicase/u8-totitle'.
2753         * modules/unicase/u8-totitle-tests: New file.
2754         * tests/unicase/test-u8-totitle.c: New file.
2755
2756         New module 'unicase/u32-totitle'.
2757         * lib/unicase/u32-totitle.c: New file.
2758         * modules/unicase/u32-totitle: New file.
2759
2760         New module 'unicase/u16-totitle'.
2761         * lib/unicase/u16-totitle.c: New file.
2762         * modules/unicase/u16-totitle: New file.
2763
2764         New module 'unicase/u8-totitle'.
2765         * lib/unicase/u8-totitle.c: New file.
2766         * lib/unicase/u-totitle.h: New file.
2767         * modules/unicase/u8-totitle: New file.
2768
2769         Tests for module 'unicase/u32-tolower'.
2770         * modules/unicase/u32-tolower-tests: New file.
2771         * tests/unicase/test-u32-tolower.c: New file.
2772
2773         Tests for module 'unicase/u16-tolower'.
2774         * modules/unicase/u16-tolower-tests: New file.
2775         * tests/unicase/test-u16-tolower.c: New file.
2776
2777         Tests for module 'unicase/u8-tolower'.
2778         * modules/unicase/u8-tolower-tests: New file.
2779         * tests/unicase/test-u8-tolower.c: New file.
2780
2781         New module 'unicase/u32-tolower'.
2782         * lib/unicase/u32-tolower.c: New file.
2783         * modules/unicase/u32-tolower: New file.
2784
2785         New module 'unicase/u16-tolower'.
2786         * lib/unicase/u16-tolower.c: New file.
2787         * modules/unicase/u16-tolower: New file.
2788
2789         New module 'unicase/u8-tolower'.
2790         * lib/unicase/u8-tolower.c: New file.
2791         * modules/unicase/u8-tolower: New file.
2792
2793         Tests for module 'unicase/u32-toupper'.
2794         * modules/unicase/u32-toupper-tests: New file.
2795         * tests/unicase/test-u32-toupper.c: New file.
2796
2797         Tests for module 'unicase/u16-toupper'.
2798         * modules/unicase/u16-toupper-tests: New file.
2799         * tests/unicase/test-u16-toupper.c: New file.
2800
2801         Tests for module 'unicase/u8-toupper'.
2802         * modules/unicase/u8-toupper-tests: New file.
2803         * tests/unicase/test-u8-toupper.c: New file.
2804
2805         New module 'unicase/u32-toupper'.
2806         * lib/unicase/u32-toupper.c: New file.
2807         * modules/unicase/u32-toupper: New file.
2808
2809         New module 'unicase/u16-toupper'.
2810         * lib/unicase/u16-toupper.c: New file.
2811         * modules/unicase/u16-toupper: New file.
2812
2813         New module 'unicase/u8-toupper'.
2814         * lib/unicase/u8-toupper.c: New file.
2815         * modules/unicase/u8-toupper: New file.
2816
2817         New module 'unicase/u32-casemap'.
2818         * lib/unicase/u32-casemap.c: New file.
2819         * modules/unicase/u32-casemap: New file.
2820
2821         New module 'unicase/u16-casemap'.
2822         * lib/unicase/u16-casemap.c: New file.
2823         * modules/unicase/u16-casemap: New file.
2824
2825         New module 'unicase/u8-casemap'.
2826         * lib/unicase/unicasemap.h: New file.
2827         * lib/unicase/u8-casemap.c: New file.
2828         * lib/unicase/u-casemap.h: New file.
2829         * modules/unicase/u8-casemap: New file.
2830
2831         New module 'unicase/special-casing'.
2832         * lib/unicase/special-casing.h: New file.
2833         * lib/unicase/special-casing.c: New file.
2834         * lib/unicase/special-casing-table.gperf: New file, generated by
2835         gen-uni-tables.c.
2836         * modules/unicase/special-casing: New file.
2837
2838         Tests for module 'unicase/locale-language'.
2839         * modules/unicase/locale-language-tests: New file.
2840         * tests/unicase/test-locale-language.sh: New file.
2841         * tests/unicase/test-locale-language.c: New file.
2842
2843         New module 'unicase/locale-language'.
2844         * lib/unicase/locale-language.c: New file.
2845         * lib/unicase/locale-languages.gperf: New file.
2846         * modules/unicase/locale-language: New file.
2847
2848         Generate more tables for case conversion and case folding.
2849         * lib/gen-uni-tables.c (SCC_*): New enum items.
2850         (struct special_casing_rule): New type.
2851         (casing_rules, num_casing_rules, allocated_casing_rules): New
2852         variables.
2853         (add_casing_rule, fill_casing_rules): New functions.
2854         (struct casefold_rule): New type.
2855         (casefolding_rules, num_casefolding_rules,
2856         allocated_casefolding_rules): New variables.
2857         (fill_casefolding_rules): New function.
2858         (unicode_casefold): New variable.
2859         (to_casefold, redistribute_casefolding_rules, compare_casing_rules,
2860         sort_casing_rules, output_casing_rules): New functions.
2861         (main): Accept to more arguments: SpecialCasing.txt and
2862         CaseFolding.txt. Invoke fill_casing_rules, fill_casefolding_rules,
2863         redistribute_casefolding_rules, sort_casing_rules, output_casing_rules.
2864         Output mapping for casefolding.
2865
2866         * lib/unicase.h: Include stdbool.h, uninorm.h.
2867         (u8_toupper, u16_toupper, u32_toupper, u8_tolower, u16_tolower,
2868         u32_tolower, u8_totitle, u16_totitle, u32_totitle): Add nf argument.
2869         (u8_casefold, u16_casefold, u32_casefold): Add iso639_language and nf
2870         arguments.
2871         (u8_casecmp, u16_casecmp, u32_casecmp): Add iso639_language, nf,
2872         resultp arguments.
2873         (u8_casexfrm, u16_casexfrm, u32_casexfrm): New declarations.
2874         (u8_casecoll, u16_casecoll, u32_casecoll): Add iso639_language, nf,
2875         resultp arguments.
2876         (u8_is_uppercase, u16_is_uppercase, u32_is_uppercase, u8_is_lowercase,
2877         u16_is_lowercase, u32_is_lowercase, u8_is_titlecase, u16_is_titlecase,
2878         u32_is_titlecase, u8_is_casefolded, u16_is_casefolded,
2879         u32_is_casefolded, u8_is_cased, u16_is_cased, u32_is_cased): New
2880         declarations.
2881         * modules/unicase/base (Depends-on): Add uninorm/base, stdbool.
2882
2883 2009-03-08  Bruno Haible  <bruno@clisp.org>
2884
2885         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp, u8_normcoll,
2886         u16_normcoll, u32_normcoll): Rename argument 'result' to 'resultp'.
2887         * lib/uninorm/u-normcmp.h (FUNC): Likewise.
2888         * lib/uninorm/u-normcoll.h (FUNC): Likewise.
2889
2890 2009-03-07  Bruno Haible  <bruno@clisp.org>
2891
2892         Adjust u*_normcmp, u*_normcoll API.
2893         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp, u8_normcoll,
2894         u16_normcoll, u32_normcoll): Change failure conventions.
2895         * lib/uninorm/u-normcmp.h (FUNC): Upon failure, store the error code in
2896         errno and return -1.
2897         * lib/uninorm/u-normcoll.h (FUNC): Likewise.
2898
2899 2009-03-07  Bruno Haible  <bruno@clisp.org>
2900
2901         Tests for module 'uninorm/u32-normcoll'.
2902         * modules/uninorm/u32-normcoll-tests: New file.
2903         * tests/uninorm/test-u32-normcoll.c: New file.
2904
2905         Tests for module 'uninorm/u16-normcoll'.
2906         * modules/uninorm/u16-normcoll-tests: New file.
2907         * tests/uninorm/test-u16-normcoll.c: New file.
2908
2909         Tests for module 'uninorm/u8-normcoll'.
2910         * modules/uninorm/u8-normcoll-tests: New file.
2911         * tests/uninorm/test-u8-normcoll.c: New file.
2912
2913 2009-03-07  Bruno Haible  <bruno@clisp.org>
2914
2915         * tests/uninorm/test-u32-normcmp.h: New file, extracted from
2916         tests/uninorm/test-u32-normcmp.c.
2917         * tests/uninorm/test-u32-normcmp.c: Include it.
2918         (test_nonascii): New function, extracted from main. Add some more
2919         tests.
2920         (main): Invoke test_ascii and test_nonascii.
2921         * modules/uninorm/u32-normcmp-tests (Files): Add
2922         tests/uninorm/test-u32-normcmp.h.
2923         (Depends-on): Remove uninorm/u32-normcmp.
2924
2925         * tests/uninorm/test-u16-normcmp.h: New file, extracted from
2926         tests/uninorm/test-u16-normcmp.c.
2927         * tests/uninorm/test-u16-normcmp.c: Include it.
2928         (test_nonascii): New function, extracted from main. Add some more
2929         tests.
2930         (main): Invoke test_ascii and test_nonascii.
2931         * modules/uninorm/u16-normcmp-tests (Files): Add
2932         tests/uninorm/test-u16-normcmp.h.
2933         (Depends-on): Remove uninorm/u16-normcmp.
2934
2935         * tests/uninorm/test-u8-normcmp.h: New file, extracted from
2936         tests/uninorm/test-u8-normcmp.c.
2937         * tests/uninorm/test-u8-normcmp.c: Include it.
2938         (test_nonascii): New function, extracted from main. Add some more
2939         tests.
2940         (main): Invoke test_ascii and test_nonascii.
2941         * modules/uninorm/u8-normcmp-tests (Files): Add
2942         tests/uninorm/test-u8-normcmp.h.
2943         (Depends-on): Remove uninorm/u8-normcmp.
2944
2945 2009-03-07  Bruno Haible  <bruno@clisp.org>
2946
2947         New module 'uninorm/u32-normcoll'.
2948         * lib/uninorm/u32-normcoll.c: New file.
2949         * modules/uninorm/u32-normcoll: New file.
2950
2951         New module 'uninorm/u16-normcoll'.
2952         * lib/uninorm/u16-normcoll.c: New file.
2953         * modules/uninorm/u16-normcoll: New file.
2954
2955         New module 'uninorm/u8-normcoll'.
2956         * lib/uninorm.h (u8_normcoll, u16_normcoll, u32_normcoll): New
2957         declarations.
2958         * lib/uninorm/u8-normcoll.c: New file.
2959         * lib/uninorm/u-normcoll.h: New file.
2960         * modules/uninorm/u8-normcoll: New file.
2961
2962         New module 'uninorm/u32-normxfrm'.
2963         * lib/uninorm/u32-normxfrm.c: New file.
2964         * modules/uninorm/u32-normxfrm: New file.
2965
2966         New module 'uninorm/u16-normxfrm'.
2967         * lib/uninorm/u16-normxfrm.c: New file.
2968         * modules/uninorm/u16-normxfrm: New file.
2969
2970         New module 'uninorm/u8-normxfrm'.
2971         * lib/uninorm.h (u8_normxfrm, u16_normxfrm, u32_normxfrm): New
2972         declarations.
2973         * lib/uninorm/u8-normxfrm.c: New file.
2974         * lib/uninorm/u-normxfrm.h: New file.
2975         * modules/uninorm/u8-normxfrm: New file.
2976
2977 2009-03-07  Bruno Haible  <bruno@clisp.org>
2978
2979         * modules/uninorm/u8-normcmp (Depends-on): Add uninorm/base.
2980         * modules/uninorm/u16-normcmp (Depends-on): Likewise.
2981         * modules/uninorm/u32-normcmp (Depends-on): Likewise.
2982
2983 2009-03-07  Bruno Haible  <bruno@clisp.org>
2984
2985         New module 'memxfrm'.
2986         * lib/memxfrm.h: New file.
2987         * lib/memxfrm.c: New file.
2988         * modules/memxfrm: New file.
2989
2990 2009-03-07  Bruno Haible  <bruno@clisp.org>
2991
2992         New module 'memcmp2'.
2993         * lib/memcmp2.h: New file.
2994         * lib/memcmp2.c: New file.
2995         * modules/memcmp2: New file.
2996
2997 2009-03-07  Bruno Haible  <bruno@clisp.org>
2998
2999         Tests for module 'uninorm/decomposing-form'.
3000         * modules/uninorm/decomposing-form-tests: New file.
3001         * tests/uninorm/test-decomposing-form.c: New file.
3002
3003         New module 'uninorm/decomposing-form'.
3004         * lib/uninorm.h (uninorm_decomposing_form): New declaration.
3005         * lib/uninorm/normalize-internal.h (struct unicode_normalization_form):
3006         Add 'decomposing_variant' field.
3007         * lib/uninorm/decomposing-form.c: New file.
3008         * lib/uninorm/nfc.c (uninorm_nfc): Update.
3009         * lib/uninorm/nfd.c (uninorm_nfd): Update.
3010         * lib/uninorm/nfkc.c (uninorm_nfkc): Update.
3011         * lib/uninorm/nfkd.c (uninorm_nfkd): Update.
3012         * modules/uninorm/decomposing-form: New file.
3013         * modules/uninorm/nfc (Depends-on): Add uninorm/nfd.
3014         * modules/uninorm/nfkc (Depends-on): Add uninorm/nfkd.
3015
3016 2009-03-07  Bruno Haible  <bruno@clisp.org>
3017
3018         * lib/uninorm/u-normcmp.h (FUNC): Use stack=allocated buffers for small
3019         strings.
3020
3021 2009-03-06  Bruno Haible  <bruno@clisp.org>
3022
3023         Tests for module 'uninorm/u32-normcmp'.
3024         * tests/uninorm/test-u32-normcmp.c: New file.
3025         * modules/uninorm/u32-normcmp-tests: New file.
3026
3027         Tests for module 'uninorm/u16-normcmp'.
3028         * tests/uninorm/test-u16-normcmp.c: New file.
3029         * modules/uninorm/u16-normcmp-tests: New file.
3030
3031         Tests for module 'uninorm/u8-normcmp'.
3032         * tests/uninorm/test-u8-normcmp.c: New file.
3033         * modules/uninorm/u8-normcmp-tests: New file.
3034
3035         New module 'uninorm/u32-normcmp'.
3036         * lib/uninorm/u32-normcmp.c: New file.
3037         * modules/uninorm/u32-normcmp: New file.
3038
3039         New module 'uninorm/u16-normcmp'.
3040         * lib/uninorm/u16-normcmp.c: New file.
3041         * modules/uninorm/u16-normcmp: New file.
3042
3043         New module 'uninorm/u8-normcmp'.
3044         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp): New
3045         declarations.
3046         * lib/uninorm/u8-normcmp.c: New file.
3047         * lib/uninorm/u-normcmp.h: New file.
3048         * modules/uninorm/u8-normcmp: New file.
3049
3050 2009-03-06  Bruno Haible  <bruno@clisp.org>
3051
3052         * lib/w32spawn.h (dup_noinherit): Add cast, to avoid gcc warning.
3053         Reported by Eric Blake.
3054
3055 2009-03-06  Eric Blake  <ebb9@byu.net>
3056             Bruno Haible  <bruno@clisp.org>
3057
3058         * lib/spawni.c (__spawni) [WIN32_NATIVE]: Define as a stub.
3059         * modules/posix_spawn-tests (configure.ac): Define POSIX_SPAWN_PORTED
3060         condition.
3061         (Makefile.am): Do nothing if POSIX_SPAWN_PORTED is false.
3062         * modules/posix_spawnp-tests (configure.ac): Define POSIX_SPAWN_PORTED
3063         condition.
3064         (Makefile.am): Do nothing if POSIX_SPAWN_PORTED is false.
3065
3066 2009-03-06  Eric Blake  <ebb9@byu.net>
3067
3068         * lib/execute.c (execute) [WIN32_NATIVE]: Cast arguments of spawnvpe,
3069         to avoid compiler warnings.
3070         * lib/pipe.c (create_pipe) [WIN32_NATIVE]: Likewise.
3071
3072 2009-03-05  Bruno Haible  <bruno@clisp.org>
3073
3074         * tests/test-ftell.c (main): Disable test beyond end of file on
3075         FreeMiNT.
3076         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
3077
3078 2009-03-05  Kamil Dudka  <kdudka@redhat.com>
3079
3080         * lib/filevercmp.c: Move hidden files up in ordering.
3081         * tests/test-filevercmp.c: Add tests for hidden files.
3082
3083 2009-03-04  Bruno Haible  <bruno@clisp.org>
3084
3085         * modules/visibility (Makefile.am): Augment AM_CFLAGS.
3086         * gnulib-tool (func_emit_lib_Makefile_am): Emit initialization of
3087         AM_CFLAGS.
3088         Reported by Simon Josefsson.
3089
3090 2009-03-03  Bruno Haible  <bruno@clisp.org>
3091
3092         * doc/visibility.texi: Recommend to use HAVE_VISIBILITY as a C macro.
3093         Reported by Simon Josefsson.
3094
3095         * doc/ld-version-script.texi: Update node reference.
3096
3097 2009-03-03  Bruno Haible  <bruno@clisp.org>
3098
3099         * modules/visibility (License): Change to 'unlimited'.
3100         Suggested by Simon Josefsson.
3101
3102 2009-03-03  Jim Meyering  <meyering@redhat.com>
3103
3104         unlinkdir: cannot_unlink_dir may modify process state
3105         * lib/unlinkdir.c (cannot_unlink_dir): Add a comment warning that
3106         it's neither thread-safe nor appropriate for use in a library.
3107
3108 2009-03-03  Eric Blake  <ebb9@byu.net>
3109
3110         test-closein: silence test under Darwin
3111         * tests/test-closein.sh: Ignore stderr from cat, since we don't
3112         care if it dies from EPIPE or EBADF.
3113
3114 2009-03-03  Bruno Haible  <bruno@clisp.org>
3115
3116         * doc/gnulib.texi: Include visibility.texi and ld-version-script.texi
3117         earlier.
3118         * doc/visibility.texi: Fix @node and @section.
3119
3120 2009-03-03  Simon Josefsson  <simon@josefsson.org>
3121
3122         * doc/gnulib.texi: Link to sections for ld version script and
3123         visibility.
3124         * doc/visibility.texi: Add @node and @section.
3125         * modules/ld-version-script: New module.
3126         * m4/ld-version-script.m4: New file.
3127         * doc/ld-version-script.texi: New file.
3128
3129 2009-03-02  David Lutterkort  <lutter@redhat.com>
3130
3131         * lib/safe-alloc.h (__GNUC_PREREQ): New macro.
3132         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
3133
3134 2009-03-02  Bruno Haible  <bruno@clisp.org>
3135
3136         * doc/visibility.texi: Mention libtool's -export-symbols option.
3137
3138 2009-03-02  Jim Meyering  <meyering@redhat.com>
3139
3140         announce-gen: new option: --no-print-checksums
3141         * build-aux/announce-gen (usage): Describe it.
3142         (print_checksums): Print a newline here, not in the [*] footnote.
3143         (main): Honor it.
3144
3145 2009-03-01  Bruno Haible  <bruno@clisp.org>
3146
3147         Use socklen_t in the native Windows replacements prototypes.
3148         * lib/sys_socket.in.h (rpl_getsockopt, rpl_setsockopt): Use socklen_t
3149         instead of 'int'.
3150         * lib/getsockopt.c (rpl_getsockopt): Likewise.
3151         * lib/setsockopt.c (rpl_setsockopt): Likewise.
3152         * modules/getsockopt (Depends-on): Add socklen.
3153         * modules/setsockopt (Depends-on): Add socklen.
3154
3155 2009-03-01  Bruno Haible  <bruno@clisp.org>
3156
3157         * gnulib-tool (sed): Do alias as "sed --posix" if sed's version is at
3158         least 4.2.
3159
3160 2009-03-01  Eric Blake  <ebb9@byu.net>
3161             Bruno Haible  <bruno@clisp.org>
3162
3163         * lib/wait-process.h (wait_subprocess): Describe effect of termsigp on
3164         error messages.
3165         * lib/wait-process.c (wait_subprocess): Omit error message about
3166         deadly signal sent to the child of termsigp != NULL.
3167
3168 2009-03-01  Eric Blake  <ebb9@byu.net>
3169
3170         * lib/wait-process.c (wait_subprocess): Remove unnecessary cast.
3171
3172 2009-03-01  Bruno Haible  <bruno@clisp.org>
3173
3174         Avoid a gcc warning.
3175         * tests/test-sched.c (b): Make global.
3176         Reported by Eric Blake.
3177
3178 2009-01-19  Martin Lambers  <marlam@marlam.de>
3179
3180         Provide POSIX semantics for socket timeout options on W32.
3181         * lib/setsockopt.c: Convert struct timeval to milliseconds on W32.
3182         * lib/getsockopt.c: Convert milliseconds to struct timeval on W32.
3183         * modules/setsockopt: Depend on sys_time module for struct timeval.
3184         * modules/getsockopt: Depend on sys_time module for struct timeval.
3185
3186 2009-03-01  Simon Josefsson  <simon@josefsson.org>
3187
3188         * lib/gai_strerror.c (values): Use EAI_INPROGRESS instead of
3189         __USE_GNU, for consistency with netdb.in.h.
3190         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
3191
3192 2009-03-01  Bruno Haible  <bruno@clisp.org>
3193
3194         More support for FreeMiNT.
3195         * lib/fseeko.c (rpl_fseeko): Complete last commit.
3196         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
3197
3198 2009-03-01  Bruno Haible  <bruno@clisp.org>
3199
3200         More support for FreeMiNT.
3201         * lib/fpurge.c (fpurge): Correct last commit.
3202         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
3203
3204 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3205
3206         Fix unportable awk script in vc-list-files.
3207         * build-aux/vc-list-files: In the replacement awk script, use
3208         substr with a second argument of 1, not zero.
3209         Report by Simon Josefsson.
3210
3211 2009-02-28  Bruno Haible  <bruno@clisp.org>
3212
3213         More support for FreeMiNT.
3214         * lib/freading.c (freading) [__MINT__]: Use new macros that were added
3215         to FreeMiNT today.
3216         * lib/fwriting.c (fwriting): Likewise.
3217         Based on patch by Alan Hourihane <alanh@fairlite.co.uk>.
3218
3219 2009-02-28  Bruno Haible  <bruno@clisp.org>
3220
3221         * tests/test-freadseek.c (main): Disable test beyond end of file on
3222         FreeMiNT.
3223         * tests/test-ftello.c (main): Likewise.
3224         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
3225
3226 2009-02-28  Bruno Haible  <bruno@clisp.org>
3227
3228         Add tentative support for FreeMiNT.
3229         * lib/fbufmode.c (fbufmode) [__MINT__]: Add conditional code.
3230         * lib/fpurge.c (fpurge): Likewise.
3231         * lib/freadable.c (freadable): Likewise.
3232         * lib/freading.c (freading): Likewise.
3233         * lib/freadptr.c (freadptr): Likewise.
3234         * lib/freadseek.c (freadptrinc): Likewise.
3235         * lib/fseeko.c (rpl_fseeko): Likewise.
3236         * lib/fseterr.c (fseterr): Likewise.
3237         * lib/fwritable.c (fwritable): Likewise.
3238         * lib/fwriting.c (fwriting): Likewise.
3239         * lib/freadahead.c (freadahead): Likewise, based on code by Alan
3240         Hourihane.
3241         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
3242
3243 2009-02-28  Bruno Haible  <bruno@clisp.org>
3244
3245         * lib/wait-process.h (wait_subprocess): Clarify restriction regarding
3246         SIGCHLD.
3247         Reported by Jim Meyering.
3248
3249 2009-02-28  Bruno Haible  <bruno@clisp.org>
3250
3251         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Separate the two first tests.
3252         Mention the results of these tests on various platforms.
3253         * doc/posix-functions/fprintf.texi: Mention platforms in canonical
3254         order.
3255         * doc/posix-functions/printf.texi: Likewise.
3256         * doc/posix-functions/snprintf.texi: Likewise.
3257         * doc/posix-functions/sprintf.texi: Likewise.
3258         * doc/posix-functions/vfprintf.texi: Likewise.
3259         * doc/posix-functions/vprintf.texi: Likewise.
3260         * doc/posix-functions/vsnprintf.texi: Likewise.
3261         * doc/posix-functions/vsprintf.texi: Likewise.
3262         * doc/glibc-functions/obstack_printf.texi: Likewise.
3263         * doc/glibc-functions/obstack_vprintf.texi: Likewise.
3264
3265 2009-02-28  Bruno Haible  <bruno@clisp.org>
3266
3267         * build-aux/po/Makefile.in.in: Update from GNU gettext 0.17.
3268         Reported by Loïc Minier <lool@dooz.org>.
3269
3270 2009-02-27  Bruno Haible  <bruno@clisp.org>
3271
3272         * gnulib-tool (func_import): Make the sed expression used to create the
3273         sed script for updating the .gitignore file POSIX compliant.
3274         Reported by Eric Blake.
3275
3276 2009-02-27  Bruno Haible  <bruno@clisp.org>
3277
3278         * gnulib-tool (sed): Don't alias as "sed --posix".
3279         Reported by Eric Blake.
3280
3281 2009-02-27  Bruno Haible  <bruno@clisp.org>
3282
3283         Avoid test link errors.
3284         * modules/uninorm/nfc-tests (test_u32_nfc_big_LDADD): New variable.
3285         * modules/uninorm/nfd-tests (test_u32_nfd_big_LDADD): New variable.
3286         * modules/uninorm/nfkc-tests (test_u32_nfkc_big_LDADD): New variable.
3287         * modules/uninorm/nfkd-tests (test_u32_nfkd_big_LDADD): New variable.
3288         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
3289
3290 2009-02-27  Bruno Haible  <bruno@clisp.org>
3291
3292         Avoid spurious "(cached)" in configure output.
3293         * m4/gnulib-common.m4 (gl_CACHE_VAL_SILENT): New macro.
3294         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Use it instead of AC_CACHE_VAL.
3295         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
3296         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
3297         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
3298         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Likewise.
3299         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
3300         * m4/stdarg.m4 (gl_STDARG_H): Likewise.
3301         Reported by Eric Blake.
3302
3303 2009-02-27  Eric Blake  <ebb9@byu.net>
3304
3305         printf: fix regression in previous patch
3306         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Fix compilation error.
3307
3308 2009-02-27  Bruno Haible  <bruno@clisp.org>
3309
3310         * lib/inttypes.in.h: Test merely whether _LP64 is defined, not its
3311         value.
3312         * lib/stdint.in.h: Likewise.
3313         Suggested by Eric Blake. Reported by Peter Bray <pdb_ml@yahoo.com.au>.
3314
3315 2009-02-27  Eric Blake  <ebb9@byu.net>
3316
3317         doc: mention more functions added in cygwin 1.7.0
3318         * doc/posix-functions/mbsnrtowcs.texi: Mention recent cygwin 1.7.0
3319         addition.
3320         * doc/posix-functions/open_wmemstream.texi: Likewise.
3321         * doc/posix-functions/wcsnlen.texi: Likewise.
3322         * doc/posix-functions/wcsnrtombs.texi: Likewise.
3323         * doc/posix-functions/wcstod.texi: Likewise.
3324         * doc/posix-functions/wcstof.texi: Likewise.
3325         * doc/posix-functions/wcstoimax.texi: Likewise.
3326         * doc/posix-functions/wcstok.texi: Likewise.
3327         * doc/posix-functions/wcstoumax.texi: Likewise.
3328
3329         Detect bug in cygwin 1.5.x *printf on 1-character %ls.
3330         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Enhance filter.
3331         * doc/posix-functions/fprintf.texi: Update.
3332         * doc/posix-functions/printf.texi: Update.
3333         * doc/posix-functions/snprintf.texi: Update.
3334         * doc/posix-functions/sprintf.texi: Update.
3335         * doc/posix-functions/vfprintf.texi: Update.
3336         * doc/posix-functions/vprintf.texi: Update.
3337         * doc/posix-functions/vsnprintf.texi: Update.
3338         * doc/posix-functions/vsprintf.texi: Update.
3339         * doc/glibc-functions/obstack_printf.texi: Update.
3340         * doc/glibc-functions/obstack_vprintf.texi: Update.
3341
3342 2009-02-26  Eric Blake  <ebb9@byu.net>
3343
3344         avoid gcc 3.4.3 bug on long double NaN on Irix 6.5
3345         * tests/nan.h (NaNl): Rewrite as function on Irix, to avoid
3346         compilation bug by using runtime conversion.
3347         * m4/isfinite.m4 (gl_ISFINITE): Likewise.
3348         * m4/isnanl.m4 (gl_FUNC_ISNANL): Likewise.
3349         * modules/ceill-tests (Files): Use nan.h.
3350         * modules/floorl-tests (Files): Likewise.
3351         * modules/frexpl-tests (Files): Likewise.
3352         * modules/isnanl-tests (Files): Likewise.
3353         * modules/ldexpl-tests (Files): Likewise.
3354         * modules/roundl-tests (Files): Likewise.
3355         * modules/truncl-tests (Files): Likewise.
3356         * tests/test-ceill.c (main): Use a working NaN.
3357         * tests/test-floorl.c (main): Likewise.
3358         * tests/test-frexpl.c (main): Likewise.
3359         * tests/test-isnan.c (test_long_double): Likewise.
3360         * tests/test-isnanl.h (main): Likewise.
3361         * tests/test-ldexpl.h (main): Likewise.
3362         * tests/test-roundl.h (main): Likewise.
3363         * tests/test-truncl.h (main): Likewise.
3364         See http://lists.gnu.org/archive/html/bug-gnulib/2009-02/msg00190.html.
3365
3366 2009-02-26  Eric Blake  <ebb9@byu.net>
3367             Bruno Haible  <bruno@clisp.org>
3368
3369         Work around a *printf bug with %ls on Solaris.
3370         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Also test whether, when a
3371         precision is specified, sprintf stops converting the wide string
3372         argument when the number of bytes that have been produced by this
3373         conversion equals or exceeds the precision.
3374         * doc/posix-functions/fprintf.texi: Update.
3375         * doc/posix-functions/printf.texi: Update.
3376         * doc/posix-functions/snprintf.texi: Update.
3377         * doc/posix-functions/sprintf.texi: Update.
3378         * doc/posix-functions/vfprintf.texi: Update.
3379         * doc/posix-functions/vprintf.texi: Update.
3380         * doc/posix-functions/vsnprintf.texi: Update.
3381         * doc/posix-functions/vsprintf.texi: Update.
3382         * doc/glibc-functions/obstack_printf.texi: Update.
3383         * doc/glibc-functions/obstack_vprintf.texi: Update.
3384
3385 2009-02-26  Eric Blake  <ebb9@byu.net>
3386
3387         stdlib: favor compiler check of random.h
3388         * m4/stdlib_h.m4 (gl_STDLIB_H): Skip preprocessor check.  Needed
3389         to avoid an ObjC random.h installed by Swarm.
3390
3391 2009-02-26  Bruno Haible  <bruno@clisp.org>
3392
3393         Work around *printf bug with %g directive and 0.0 on HP-UX 10.20.
3394         * m4/printf.m4 (gl_PRINTF_INFINITE): Also test for %g output of -0.0.
3395         Reported by Gary V. Vaughan <gary@gnu.org>.
3396
3397 2009-02-26  Bruno Haible  <bruno@clisp.org>
3398
3399         Fix *printf behaviour regarding the %ls directive.
3400         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): New macro.
3401         * lib/vasnprintf.c (local_wcslen, VASNPRINTF): Handle
3402         NEED_PRINTF_DIRECTIVE_LS.
3403         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_LS): New macro.
3404         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
3405         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
3406         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS and test its result. Invoke
3407         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS.
3408         * m4/dprintf-posix.m4 (gl_FUNC_DPRINTF_POSIX): Likewise.
3409         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
3410         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
3411         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
3412         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
3413         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
3414         * m4/vdprintf-posix.m4 (gl_FUNC_VDPRINTF_POSIX): Likewise.
3415         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
3416         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
3417         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
3418         * doc/posix-functions/fprintf.texi: Update.
3419         * doc/posix-functions/printf.texi: Update.
3420         * doc/posix-functions/snprintf.texi: Update.
3421         * doc/posix-functions/sprintf.texi: Update.
3422         * doc/posix-functions/vfprintf.texi: Update.
3423         * doc/posix-functions/vprintf.texi: Update.
3424         * doc/posix-functions/vsnprintf.texi: Update.
3425         * doc/posix-functions/vsprintf.texi: Update.
3426         * doc/glibc-functions/obstack_printf.texi: Update.
3427         * doc/glibc-functions/obstack_vprintf.texi: Update.
3428         Reported by Eric Blake.
3429
3430 2009-02-25  Bruno Haible  <bruno@clisp.org>
3431
3432         * m4/mbrtowc.m4 (gl_MBRTOWC_NUL_RETVAL): Update guess for Solaris 8
3433         with known value.
3434         Reported by Gary V. Vaughan <gary@gnu.org>.
3435
3436 2009-02-25  Bruno Haible  <bruno@clisp.org>
3437
3438         Work around mbrtowc bug in zh_CN.GB18030 locale on Solaris 8.
3439         * m4/mbrtowc.m4 (gl_MBRTOWC_SANITYCHECK): New macro.
3440         (gl_MBSTATE_T_BROKEN): Invoke it. Replace mbstate_t when it says "no".
3441         * doc/posix-functions/mbrtowc.texi: Document the Solaris 8 bug.
3442         Reported by Gary V. Vaughan <gary@gnu.org>.
3443
3444 2009-02-25  Bruno Haible  <bruno@clisp.org>
3445
3446         Work around broken INT8_MAX, UINT8_MAX etc. values on HP-UX 11.23.
3447         * m4/stdint.m4 (gl_STDINT_H): Also check whether the expansions of
3448         INT8_MAX, UINT8_MAX etc. contain casts to elementary types.
3449         * doc/posix-headers/stdint.texi: Mention the HP-UX bug.
3450         Reported by Gary V. Vaughan <gary@gnu.org>.
3451
3452 2009-02-25  Eric Blake  <ebb9@byu.net>
3453
3454         tests: skip fseek/ftell tests if ungetc is broken
3455         * m4/ungetc.m4: New file.
3456         * modules/fseek-tests: Split test, so ungetc dependency is
3457         separate from rest of test.
3458         * modules/fseeko-tests: Likewise.
3459         * modules/ftell-tests: Likewise.
3460         * modules/ftello-tests: Likewise.
3461         * tests/test-fseek.c (main): Isolate ungetc dependency.
3462         * tests/test-fseeko.c (main): Likewise.
3463         * tests/test-ftell.c (main): Likewise.
3464         * tests/test-ftello.c (main): Likewise.
3465         * tests/test-fseek2.sh: New file.
3466         * tests/test-fseeko2.sh: Likewise.
3467         * tests/test-ftell2.sh: Likewise.
3468         * tests/test-ftello2.sh: Likewise.
3469
3470 2009-02-25  OndÅ™ej Vašík  <ovasik@redhat.com>
3471
3472         test-getaddrinfo: fix usage of skip return code 77
3473         * tests/test-gettaddrinfo.c: Return skip code 77 only
3474         for first occurance of skip (4x77 is not 77)
3475
3476 2009-02-25  Gary V. Vaughan  <gary@gnu.org>
3477
3478         strtod: avoid C99 decl-after-statement
3479         * m4/strtod.m4 (gl_FUNC_STRTOD): Rearrange declaration.
3480
3481 2009-02-24  Eric Blake  <ebb9@byu.net>
3482
3483         strtod: detect HP-UX 11.31 bug
3484         * m4/strtod.m4 (gl_FUNC_STRTOD): Detect errno handling bug.
3485         Reported by Gary V. Vaughan.
3486
3487 2009-02-23  Bruno Haible  <bruno@clisp.org>
3488
3489         Fix invalid read past end of memory block.
3490         * lib/vasnprintf.c (DCHAR_SET): Define.
3491         (local_wcslen): Define only when needed.
3492         (local_strnlen, local_wcsnlen): New functions.
3493         (VASNPRINTF) [!USE_SNPRINTF && HAVE_WCHAR_T]: Implement the %s and %ls
3494         directives that involve a conversion ourselves.
3495         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for strnlen,
3496         wcsnlen, mbrtowc, wcrtomb.
3497         * tests/test-vasnprintf-posix.c (test_function): Add tests for %.*s.
3498         * tests/test-vasprintf-posix.c (test_function): Likewise.
3499         * tests/test-snprintf-posix.h (test_function): Likewise.
3500         * tests/test-sprintf-posix.h (test_function): Likewise.
3501         Reported by Ben Pfaff <blp@cs.stanford.edu>.
3502
3503 2009-02-22  Bruno Haible  <bruno@clisp.org>
3504
3505         Implement new clarified decomposition of Hangul syllables.
3506         * lib/uninorm/decomposition.c (uc_decomposition): For Hangul syllables
3507         of type LTV, return only a pairwise decomposition.
3508         * lib/uninorm/canonical-decomposition.c (uc_canonical_decomposition):
3509         Likewise.
3510         * tests/uninorm/test-decomposition.c (main): Updated expected result.
3511         * tests/uninorm/test-canonical-decomposition.c (main): Likewise.
3512         * tests/uninorm/test-compat-decomposition.c (main): Likewise.
3513
3514 2009-02-22  Bruno Haible  <bruno@clisp.org>
3515
3516         * lib/uninorm/u-normalize-internal.h (FUNC): At the end, handle
3517         zero-length results and shrink excess allocated memory.
3518         * tests/uninorm/test-u8-nfc.c (test_u8_nfc): Check empty string result.
3519         * tests/uninorm/test-u8-nfd.c (test_u8_nfd): Likewise.
3520         * tests/uninorm/test-u8-nfkc.c (test_u8_nfkc): Likewise.
3521         * tests/uninorm/test-u8-nfkd.c (test_u8_nfkd): Likewise.
3522         * tests/uninorm/test-u16-nfc.c (test_u16_nfc): Likewise.
3523         * tests/uninorm/test-u16-nfd.c (test_u16_nfd): Likewise.
3524         * tests/uninorm/test-u16-nfkc.c (test_u16_nfkc): Likewise.
3525         * tests/uninorm/test-u16-nfkd.c (test_u16_nfkd): Likewise.
3526         * tests/uninorm/test-u32-nfc.c (test_u32_nfc): Likewise.
3527         * tests/uninorm/test-u32-nfd.c (test_u32_nfd): Likewise.
3528         * tests/uninorm/test-u32-nfkc.c (test_u32_nfkc): Likewise.
3529         * tests/uninorm/test-u32-nfkd.c (test_u32_nfkd): Likewise.
3530
3531 2009-02-21  Bruno Haible  <bruno@clisp.org>
3532
3533         * doc/gnulib.texi: Include safe-alloc.texi earlier.
3534         * doc/safe-alloc.texi: Terminate sentences with a period. Use two
3535         spaces after a period. Put a space between a macro name and its
3536         argument list. Trivial rewordings.
3537         * lib/safe-alloc.c: Include safe-alloc.h right after config.h.
3538         * tests/test-safe-alloc.c: Likewise. Include stdlib.h.
3539         (main): Return 0 explicitly.
3540
3541 2009-02-21  Bruno Haible  <bruno@clisp.org>
3542
3543         Tests for module 'uninorm/filter'.
3544         * tests/uninorm/test-uninorm-filter-nfc.c: New file.
3545         * modules/uninorm/filter-tests: New file.
3546
3547         New module 'uninorm/filter'.
3548         * lib/uninorm.h (uninorm_filter_create, uninorm_filter_write,
3549         uninorm_filter_flush, uninorm_filter_free): New declarations.
3550         * lib/uninorm/uninorm-filter.c: New file.
3551         * modules/uninorm/filter: New file.
3552
3553 2009-02-21  Bruno Haible  <bruno@clisp.org>
3554
3555         Tests for module 'uninorm/nfkc'.
3556         * tests/uninorm/test-nfkc.c: New file.
3557         * tests/uninorm/test-u8-nfkc.c: New file.
3558         * tests/uninorm/test-u16-nfkc.c: New file.
3559         * tests/uninorm/test-u32-nfkc.c: New file.
3560         * tests/uninorm/test-u32-nfkc-big.sh: New file.
3561         * tests/uninorm/test-u32-nfkc-big.c: New file.
3562         * modules/uninorm/nfkc-tests: New file.
3563
3564         New module 'uninorm/nfkc'.
3565         * lib/uninorm/nfkc.c: New file.
3566         * modules/uninorm/nfkc: New file.
3567
3568         Tests for module 'uninorm/nfkd'.
3569         * tests/uninorm/test-nfkd.c: New file.
3570         * tests/uninorm/test-u8-nfkd.c: New file.
3571         * tests/uninorm/test-u16-nfkd.c: New file.
3572         * tests/uninorm/test-u32-nfkd.c: New file.
3573         * tests/uninorm/test-u32-nfkd-big.sh: New file.
3574         * tests/uninorm/test-u32-nfkd-big.c: New file.
3575         * modules/uninorm/nfkd-tests: New file.
3576
3577         New module 'uninorm/nfkd'.
3578         * lib/uninorm/nfkd.c: New file.
3579         * modules/uninorm/nfkd: New file.
3580
3581         Tests for module 'uninorm/nfc'.
3582         * tests/uninorm/test-nfc.c: New file.
3583         * tests/uninorm/test-u8-nfc.c: New file.
3584         * tests/uninorm/test-u16-nfc.c: New file.
3585         * tests/uninorm/test-u32-nfc.c: New file.
3586         * tests/uninorm/test-u32-nfc-big.sh: New file.
3587         * tests/uninorm/test-u32-nfc-big.c: New file.
3588         * modules/uninorm/nfc-tests: New file.
3589
3590         New module 'uninorm/nfc'.
3591         * lib/uninorm/nfc.c: New file.
3592         * modules/uninorm/nfc: New file.
3593
3594         Tests for module 'uninorm/nfd'.
3595         * tests/uninorm/test-nfd.c: New file.
3596         * tests/uninorm/test-u8-nfd.c: New file.
3597         * tests/uninorm/test-u16-nfd.c: New file.
3598         * tests/uninorm/test-u32-nfd.c: New file.
3599         * tests/uninorm/test-u32-nfd-big.sh: New file.
3600         * tests/uninorm/test-u32-nfd-big.c: New file.
3601         * tests/uninorm/test-u32-normalize-big.h: New file.
3602         * tests/uninorm/test-u32-normalize-big.c: New file.
3603         * tests/uninorm/NormalizationTest.txt: New file, created from
3604         Unicode 5.1.0 NormalizationTest.txt.
3605         * modules/uninorm/nfd-tests: New file.
3606
3607         New module 'uninorm/nfd'.
3608         * lib/uninorm/nfd.c: New file.
3609         * modules/uninorm/nfd: New file.
3610
3611         New module 'uninorm/u32-normalize'.
3612         * lib/uninorm/u32-normalize.c: New file.
3613         * modules/uninorm/u32-normalize: New file.
3614
3615         New module 'uninorm/u16-normalize'.
3616         * lib/uninorm/u16-normalize.c: New file.
3617         * modules/uninorm/u16-normalize: New file.
3618
3619         New module 'uninorm/u8-normalize'.
3620         * lib/uninorm/u8-normalize.c: New file.
3621         * lib/uninorm/normalize-internal.h: New file.
3622         * lib/uninorm/u-normalize-internal.h: New file.
3623         * modules/uninorm/u8-normalize: New file.
3624
3625         New module 'uninorm/decompose-internal'.
3626         * lib/uninorm/decompose-internal.c: New file.
3627         * modules/uninorm/decompose-internal: New file.
3628
3629         Tests for module 'uninorm/composition'.
3630         * tests/uninorm/test-composition.c: New file.
3631         * modules/uninorm/composition-tests: New file.
3632
3633         New module 'uninorm/composition'.
3634         * lib/uninorm/composition.c: New file.
3635         * lib/uninorm/composition-table.gperf: New file, generated by
3636         gen-uni-tables.
3637         * modules/uninorm/composition: New file.
3638
3639         Tests for module 'uninorm/compat-decomposition'.
3640         * tests/uninorm/test-compat-decomposition.c: New file.
3641         * modules/uninorm/compat-decomposition-tests: New file.
3642
3643         New module 'uninorm/compat-decomposition'.
3644         * lib/uninorm/decompose-internal.h: New file.
3645         * lib/uninorm/compat-decomposition.c: New file.
3646         * modules/uninorm/compat-decomposition: New file.
3647
3648         Tests for module 'uninorm/canonical-decomposition'.
3649         * tests/uninorm/test-canonical-decomposition.c: New file.
3650         * modules/uninorm/canonical-decomposition-tests: New file.
3651
3652         New module 'uninorm/canonical-decomposition'.
3653         * lib/uninorm/canonical-decomposition.c: New file.
3654         * modules/uninorm/canonical-decomposition: New file.
3655
3656         Tests for module 'uninorm/decomposition'.
3657         * tests/uninorm/test-decomposition.c: New file.
3658         * modules/uninorm/decomposition-tests: New file.
3659
3660         New module 'uninorm/decomposition'.
3661         * lib/uninorm/decomposition.c: New file.
3662         * modules/uninorm/decomposition: New file.
3663
3664         New module 'uninorm/decomposition-table'.
3665         * lib/uninorm/decomposition-table.h: New file.
3666         * lib/uninorm/decomposition-table.c: New file.
3667         * lib/uninorm/decomposition-table1.h: New file, generated by
3668         gen-uni-tables.
3669         * lib/uninorm/decomposition-table2.h: New file, generated by
3670         gen-uni-tables.
3671         * modules/uninorm/decomposition-table: New file.
3672
3673         * lib/gen-uni-tables.c (MAX_DECOMP_LENGTH): New macro.
3674         (UC_DECOMP_*): New enumeration items.
3675         (get_decomposition): New function.
3676         (struct decomp_table): New type.
3677         (output_decomposition, output_decomposition_tables): New functions.
3678         (unicode_composition_exclusions): New variable.
3679         (fill_composition_exclusions, debug_output_composition_tables): New
3680         functions.
3681         (main): Accept one more argument. Invoke fill_composition_exclusions.
3682         Output decomposition and composition tables.
3683
3684         New module 'uninorm/base'.
3685         * lib/uninorm.h: New file.
3686         * lib/unictype.h: Update comment.
3687         * modules/uninorm/base: New file.
3688
3689 2009-02-21  David Lutterkort  <lutter@redhat.com>
3690
3691         Tests for module 'safe-alloc'.
3692         * tests/test-safe-alloc.c: New file.
3693         * modules/safe-alloc-tests: New file.
3694
3695         New module 'safe-alloc'.
3696         * lib/safe-alloc.h: New file.
3697         * lib/safe-alloc.c: New file.
3698         * m4/safe-alloc.m4: New file.
3699         * modules/safe-alloc: New file.
3700         * doc/safe-alloc.texi: New file.
3701         * doc/gnulib.texi: Include it.
3702         * MODULES.html.sh (Memory management functions <stdlib.h>): Add
3703         safe-alloc.
3704
3705 2009-02-18  Bruno Haible  <bruno@clisp.org>
3706
3707         Fix link error on non-glibc systems.
3708         * modules/uniwbrk/ulc-wordbreaks-tests (test_ulc_wordbreaks_LDADD): New
3709         variable.
3710         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
3711
3712 2009-02-18  Jim Meyering  <meyering@redhat.com>
3713
3714         fts: avoid used-uninitialized error due to recent change
3715         * lib/fts.c (fts_read): Guard uses of the new member,
3716         parent->fts_n_dirs_remaining, since it's not relevant for
3717         the parent of a directory specified on the command-line.
3718
3719 2009-02-17  James Youngman  <jay@gnu.org>
3720             Bruno Haible  <bruno@clisp.org>
3721
3722         * m4/include_next.m4: Reformulate comment.
3723
3724 2009-02-16  Jim Meyering  <meyering@redhat.com>
3725
3726         fts: add #if guards so that the fts_lgpl module still builds
3727         * lib/fts.c: Guard just-added hash-table-using parts with
3728         #if GNULIB_FTS, so as not to break builds of the fts_lgpl module.
3729         Reported by Simon Josefsson.
3730
3731 2009-02-15  Bruno Haible  <bruno@clisp.org>
3732
3733         * modules/array-mergesort-tests: New file.
3734         * tests/test-array-mergesort.c: New file.
3735
3736         New module 'array-mergesort'.
3737         * modules/array-mergesort: New file.
3738         * lib/array-mergesort.h: New file.
3739
3740 2009-02-15  Bruno Haible  <bruno@clisp.org>
3741
3742         Fix 2009-02-07 commit.
3743         * lib/gen-uni-tables.c (output_predicate, output_category,
3744         output_combclass, output_bidi_category, output_decimal_digit,
3745         output_digit, output_numeric, output_mirror, output_scripts,
3746         output_ident_category, output_simple_mapping): Fix format directives.
3747         (output_lbp, output_wbp): Don't convert -1 to a size_t implicitly.
3748
3749 2009-02-15  Albert Chin-A-Young  <china@thewrittenword.com>
3750
3751         * m4/include_next.m4: Update comment about IBM C 9.0/10.1 bug, now that
3752         fixes are available from IBM.
3753
3754 2009-02-13  Jim Meyering  <meyering@redhat.com>
3755
3756         fts: arrange not to stat non-directories in more cases
3757         This makes GNU find (when it doesn't need to stat each file)
3758         *much* more efficient at traversing reiserfs file systems.
3759         * lib/fts_.h (struct ftsent) [fts_n_dirs_remaining]: New member.
3760         (struct FTS) [fts_leaf_optimization_works_ht]: Add member.
3761         * lib/fts.c (fts_close): Free ->fts_leaf_optimization_works_ht.
3762         (S_MAGIC_REISERFS, S_MAGIC_PROC): Define.
3763         (leaf_optimization_applies): New function.
3764         (LCO_hash, LCO_compare): New helper functions.
3765         (link_count_optimize_ok): New function.
3766         (fts_stat): Initialize new member (if dir).
3767         (fts_read): Decrement parent's fts_n_dirs_remaining count if
3768         we've just stat'ed a directory.  Skip the stat call when possible.
3769         ---
3770         Note this AFS-related exchange:
3771         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=143111
3772         and note find's pioctl call in find/fstype.c.
3773         But that is necessary only if you want to enable the
3774         optimization for AFS, and for now, I don't.
3775
3776         fts: move a function definition "up" (no semantic change)
3777         * lib/fts.c (dirent_inode_sort_may_be_useful): Move definition
3778         "up" to precede upcoming use of a related function.
3779
3780 2009-02-11  Jim Meyering  <meyering@redhat.com>
3781
3782         fts: correct internal computation of nlinks (optimization-related)
3783         * lib/fts.c (fts_build): ISSET(FTS_NOSTAT) has no bearing on
3784         whether the current entry is a directory, so don't test it.
3785
3786 2009-02-10  Bruno Haible  <bruno@clisp.org>
3787
3788         Tests for module 'uniwbrk/ulc-wordbreaks'.
3789         * modules/uniwbrk/ulc-wordbreaks-tests: New file.
3790         * tests/uniwbrk/test-ulc-wordbreaks.sh: New file.
3791         * tests/uniwbrk/test-ulc-wordbreaks.c: New file.
3792
3793         Tests for module 'uniwbrk/u32-wordbreaks'.
3794         * modules/uniwbrk/u32-wordbreaks-tests: New file.
3795         * tests/uniwbrk/test-u32-wordbreaks.c: New file.
3796
3797         Tests for module 'uniwbrk/u16-wordbreaks'.
3798         * modules/uniwbrk/u16-wordbreaks-tests: New file.
3799         * tests/uniwbrk/test-u16-wordbreaks.c: New file.
3800
3801         Tests for module 'uniwbrk/u8-wordbreaks'.
3802         * modules/uniwbrk/u8-wordbreaks-tests: New file.
3803         * tests/uniwbrk/test-u8-wordbreaks.c: New file.
3804
3805 2009-02-10  Bruno Haible  <bruno@clisp.org>
3806
3807         * modules/uniwbrk/u8-wordbreaks (Depends-on): Add uniwbrk/wordbreak
3808         property.
3809         * modules/uniwbrk/u16-wordbreaks (Depends-on): Likewise.
3810         * modules/uniwbrk/u32-wordbreaks (Depends-on): Likewise.
3811         * modules/uniwbrk/ulc-wordbreaks (Depends-on): Add localcharset.
3812
3813 2009-02-10  Simon Josefsson  <simon@josefsson.org>
3814
3815         * m4/sockets.m4: Call AC_C_INLINE since sockets.h now can use
3816         inline keywords.  Reported by Bruno Haible <bruno@clisp.org>.
3817
3818 2009-02-10  Bruno Haible  <bruno@clisp.org>
3819
3820         * lib/unilbrk/lbrktables.h: Renamed from lib/unilbrk/tables.h.
3821         * lib/unilbrk/lbrktables.c: Renamed from lib/unilbrk/tables.c.
3822         * modules/unilbrk/tables (Files, Makefile.am, Include): Update.
3823         * lib/unilbrk/u8-possible-linebreaks.c: Update.
3824         * lib/unilbrk/u16-possible-linebreaks.c: Likewise.
3825         * lib/unilbrk/u32-possible-linebreaks.c: Likewise.
3826
3827 2009-02-09  Simon Josefsson  <simon@josefsson.org>
3828
3829         * lib/sockets.h (gl_fd_to_handle): New function.
3830
3831         * tests/test-sockets.c: Call gl_fd_to_handle.
3832
3833 2009-02-09  Bruno Haible  <bruno@clisp.org>
3834
3835         * doc/havelib.texi: Document the conventions on bi-arch systems.
3836
3837 2009-02-08  Bruno Haible  <bruno@clisp.org>
3838
3839         Document the AC_LIB_LINKFLAGS macro.
3840         * doc/havelib.texi: New file, mostly written on 2005-05-24.
3841         * doc/gnulib.texi: Include it.
3842
3843 2009-02-08  Bruno Haible  <bruno@clisp.org>
3844
3845         Fix wrong order of sections, compared to TOC.
3846         * doc/gnulib.texi: Include relocatable-maint.texi after the
3847         "Regular expressions" node, not before.
3848
3849 2009-02-08  Bruno Haible  <bruno@clisp.org>
3850
3851         Tests for module 'unicase/totitle'.
3852         * modules/unicase/totitle-tests: New file.
3853
3854         Tests for module 'unicase/tolower'.
3855         * modules/unicase/tolower-tests: New file.
3856
3857         Tests for module 'unicase/toupper'.
3858         * modules/unicase/toupper-tests: New file.
3859         * tests/unicase/test-mapping-part1.h: New file.
3860         * tests/unicase/test-mapping-part2.h: New file.
3861
3862         New module 'unicase/totitle'.
3863         * modules/unicase/totitle: New file.
3864         * lib/unicase/totitle.c: New file.
3865
3866         New module 'unicase/tolower'.
3867         * modules/unicase/tolower: New file.
3868         * lib/unicase/tolower.c: New file.
3869
3870         New module 'unicase/toupper'.
3871         * modules/unicase/toupper: New file.
3872         * lib/unicase/toupper.c: New file.
3873         * lib/unicase/simple-mapping.h: New file.
3874
3875         * lib/gen-uni-tables.c (output_simple_mapping_test): New function.
3876         (mapping_table): New structure.
3877         (output_simple_mapping): New function.
3878         (main): Invoke output_simple_mapping_test and output_simple_mapping.
3879         * modules/gen-uni-tables (Description): Update.
3880         * lib/unicase/toupper.h: New file, automatically generated by
3881         gen-uni-tables.
3882         * lib/unicase/tolower.h: New file, automatically generated by
3883         gen-uni-tables.
3884         * lib/unicase/totitle.h: New file, automatically generated by
3885         gen-uni-tables.
3886         * tests/unicase/test-uc_toupper.c: New file, automatically generated by
3887         gen-uni-tables.
3888         * tests/unicase/test-uc_tolower.c: New file, automatically generated by
3889         gen-uni-tables.
3890         * tests/unicase/test-uc_totitle.c: New file, automatically generated by
3891         gen-uni-tables.
3892
3893         New module 'unicase/base'.
3894         * modules/unicase/base: New file.
3895         * lib/unicase.h: New file.
3896
3897 2009-02-08  Bruno Haible  <bruno@clisp.org>
3898
3899         New module 'uniwbrk/ulc-wordbreaks'.
3900         * modules/uniwbrk/ulc-wordbreaks: New file.
3901         * lib/uniwbrk/ulc-wordbreaks.c: New file.
3902
3903         New module 'uniwbrk/u32-wordbreaks'.
3904         * modules/uniwbrk/u32-wordbreaks: New file.
3905         * lib/uniwbrk/u32-wordbreaks.c: New file.
3906
3907         New module 'uniwbrk/u16-wordbreaks'.
3908         * modules/uniwbrk/u16-wordbreaks: New file.
3909         * lib/uniwbrk/u16-wordbreaks.c: New file.
3910
3911         New module 'uniwbrk/u8-wordbreaks'.
3912         * modules/uniwbrk/u8-wordbreaks: New file.
3913         * lib/uniwbrk/u8-wordbreaks.c: New file.
3914         * lib/uniwbrk/u-wordbreaks.h: New file.
3915
3916         New module 'uniwbrk/table'.
3917         * modules/uniwbrk/table: New file.
3918         * lib/uniwbrk/wbrktable.h: New file.
3919         * lib/uniwbrk/wbrktable.c: New file.
3920
3921         New module 'uniwbrk/wordbreak-property'.
3922         * modules/uniwbrk/wordbreak-property: New file.
3923         * lib/uniwbrk/wordbreak-property.c: New file.
3924
3925         * lib/gen-uni-tables.c (WBP_*): New enum items.
3926         (get_wbp, debug_output_wbp, debug_output_wbrk_tables): New functions.
3927         (unicode_org_wbp): New variable.
3928         (fill_org_wbp, debug_output_org_wbp, debug_output_org_wbrk_tables):
3929         New functions.
3930         (wbp_table): New structure.
3931         (output_wbp, output_wbrk_tables): New functions.
3932         (main): Accept additional argument. Invoke fill_org_wbp,
3933         debug_output_wbrk_tables, debug_output_org_wbrk_tables,
3934         output_wbrk_tables.
3935         * modules/gen-uni-tables (Description): Update.
3936         * lib/uniwbrk/wbrkprop.h: New file, automatically generated by
3937         gen-uni-tables.
3938
3939         New module 'uniwbrk/base'.
3940         * modules/uniwbrk/base: New file.
3941         * lib/uniwbrk.h: New file.
3942
3943 2009-02-08  Bruno Haible  <bruno@clisp.org>
3944
3945         Update to Unicode 5.1.0.
3946         * lib/gen-uni-tables.c (is_property_alphabetic): Include
3947         U+2185..U+2188.
3948         (is_property_default_ignorable_code_point): Don't include characters
3949         of category Cc or Cs and not-a-characters.
3950         (get_lbp): Assume REVISION_22. Special handling of U+0609, U+060A,
3951         U+0D79, U+109E, U+109F, U+A60C.
3952         * lib/unictype/bidi_of.h: Regenerated.
3953         * lib/unictype/blocks.h: Regenerated.
3954         * lib/unictype/categ_C.h: Regenerated.
3955         * lib/unictype/categ_Cf.h: Regenerated.
3956         * lib/unictype/categ_Cn.h: Regenerated.
3957         * lib/unictype/categ_L.h: Regenerated.
3958         * lib/unictype/categ_Ll.h: Regenerated.
3959         * lib/unictype/categ_Lm.h: Regenerated.
3960         * lib/unictype/categ_Lo.h: Regenerated.
3961         * lib/unictype/categ_Lu.h: Regenerated.
3962         * lib/unictype/categ_M.h: Regenerated.
3963         * lib/unictype/categ_Mc.h: Regenerated.
3964         * lib/unictype/categ_Me.h: Regenerated.
3965         * lib/unictype/categ_Mn.h: Regenerated.
3966         * lib/unictype/categ_N.h: Regenerated.
3967         * lib/unictype/categ_Nd.h: Regenerated.
3968         * lib/unictype/categ_Nl.h: Regenerated.
3969         * lib/unictype/categ_No.h: Regenerated.
3970         * lib/unictype/categ_P.h: Regenerated.
3971         * lib/unictype/categ_Pd.h: Regenerated.
3972         * lib/unictype/categ_Pe.h: Regenerated.
3973         * lib/unictype/categ_Pf.h: Regenerated.
3974         * lib/unictype/categ_Pi.h: Regenerated.
3975         * lib/unictype/categ_Po.h: Regenerated.
3976         * lib/unictype/categ_Ps.h: Regenerated.
3977         * lib/unictype/categ_S.h: Regenerated.
3978         * lib/unictype/categ_Sk.h: Regenerated.
3979         * lib/unictype/categ_Sm.h: Regenerated.
3980         * lib/unictype/categ_So.h: Regenerated.
3981         * lib/unictype/categ_of.h: Regenerated.
3982         * lib/unictype/combining.h: Regenerated.
3983         * lib/unictype/ctype_alnum.h: Regenerated.
3984         * lib/unictype/ctype_alpha.h: Regenerated.
3985         * lib/unictype/ctype_graph.h: Regenerated.
3986         * lib/unictype/ctype_lower.h: Regenerated.
3987         * lib/unictype/ctype_print.h: Regenerated.
3988         * lib/unictype/ctype_punct.h: Regenerated.
3989         * lib/unictype/ctype_upper.h: Regenerated.
3990         * lib/unictype/decdigit.h: Regenerated.
3991         * lib/unictype/digit.h: Regenerated.
3992         * lib/unictype/mirror.h: Regenerated.
3993         * lib/unictype/numeric.h: Regenerated.
3994         * lib/unictype/pr_alphabetic.h: Regenerated.
3995         * lib/unictype/pr_bidi_arabic_digit.h: Regenerated.
3996         * lib/unictype/pr_bidi_arabic_right_to_left.h: Regenerated.
3997         * lib/unictype/pr_bidi_boundary_neutral.h: Regenerated.
3998         * lib/unictype/pr_bidi_eur_num_terminator.h: Regenerated.
3999         * lib/unictype/pr_bidi_left_to_right.h: Regenerated.
4000         * lib/unictype/pr_bidi_non_spacing_mark.h: Regenerated.
4001         * lib/unictype/pr_bidi_other_neutral.h: Regenerated.
4002         * lib/unictype/pr_combining.h: Regenerated.
4003         * lib/unictype/pr_dash.h: Regenerated.
4004         * lib/unictype/pr_decimal_digit.h: Regenerated.
4005         * lib/unictype/pr_default_ignorable_code_point.h: Regenerated.
4006         * lib/unictype/pr_deprecated.h: Regenerated.
4007         * lib/unictype/pr_diacritic.h: Regenerated.
4008         * lib/unictype/pr_extender.h: Regenerated.
4009         * lib/unictype/pr_format_control.h: Regenerated.
4010         * lib/unictype/pr_grapheme_base.h: Regenerated.
4011         * lib/unictype/pr_grapheme_extend.h: Regenerated.
4012         * lib/unictype/pr_grapheme_link.h: Regenerated.
4013         * lib/unictype/pr_id_continue.h: Regenerated.
4014         * lib/unictype/pr_id_start.h: Regenerated.
4015         * lib/unictype/pr_ideographic.h: Regenerated.
4016         * lib/unictype/pr_ignorable_control.h: Regenerated.
4017         * lib/unictype/pr_lowercase.h: Regenerated.
4018         * lib/unictype/pr_math.h: Regenerated.
4019         * lib/unictype/pr_numeric.h: Regenerated.
4020         * lib/unictype/pr_other_alphabetic.h: Regenerated.
4021         * lib/unictype/pr_other_default_ignorable_code_point.h: Regenerated.
4022         * lib/unictype/pr_other_grapheme_extend.h: Regenerated.
4023         * lib/unictype/pr_other_id_continue.h: Regenerated.
4024         * lib/unictype/pr_other_lowercase.h: Regenerated.
4025         * lib/unictype/pr_other_math.h: Regenerated.
4026         * lib/unictype/pr_punctuation.h: Regenerated.
4027         * lib/unictype/pr_sentence_terminal.h: Regenerated.
4028         * lib/unictype/pr_soft_dotted.h: Regenerated.
4029         * lib/unictype/pr_terminal_punctuation.h: Regenerated.
4030         * lib/unictype/pr_unassigned_code_value.h: Regenerated.
4031         * lib/unictype/pr_unified_ideograph.h: Regenerated.
4032         * lib/unictype/pr_uppercase.h: Regenerated.
4033         * lib/unictype/pr_xid_continue.h: Regenerated.
4034         * lib/unictype/pr_xid_start.h: Regenerated.
4035         * lib/unictype/pr_zero_width.h: Regenerated.
4036         * lib/unictype/scripts.h: Regenerated.
4037         * lib/unictype/scripts_byname.gperf: Regenerated.
4038         * lib/unictype/sy_java_ident.h: Regenerated.
4039         * lib/unilbrk/lbrkprop1.h: Regenerated.
4040         * lib/unilbrk/lbrkprop2.h: Regenerated.
4041         * tests/unictype/test-categ_C.c: Regenerated.
4042         * tests/unictype/test-categ_Cf.c: Regenerated.
4043         * tests/unictype/test-categ_Cn.c: Regenerated.
4044         * tests/unictype/test-categ_L.c: Regenerated.
4045         * tests/unictype/test-categ_Ll.c: Regenerated.
4046         * tests/unictype/test-categ_Lm.c: Regenerated.
4047         * tests/unictype/test-categ_Lo.c: Regenerated.
4048         * tests/unictype/test-categ_Lu.c: Regenerated.
4049         * tests/unictype/test-categ_M.c: Regenerated.
4050         * tests/unictype/test-categ_Mc.c: Regenerated.
4051         * tests/unictype/test-categ_Me.c: Regenerated.
4052         * tests/unictype/test-categ_Mn.c: Regenerated.
4053         * tests/unictype/test-categ_N.c: Regenerated.
4054         * tests/unictype/test-categ_Nd.c: Regenerated.
4055         * tests/unictype/test-categ_Nl.c: Regenerated.
4056         * tests/unictype/test-categ_No.c: Regenerated.
4057         * tests/unictype/test-categ_P.c: Regenerated.
4058         * tests/unictype/test-categ_Pd.c: Regenerated.
4059         * tests/unictype/test-categ_Pe.c: Regenerated.
4060         * tests/unictype/test-categ_Pf.c: Regenerated.
4061         * tests/unictype/test-categ_Pi.c: Regenerated.
4062         * tests/unictype/test-categ_Po.c: Regenerated.
4063         * tests/unictype/test-categ_Ps.c: Regenerated.
4064         * tests/unictype/test-categ_S.c: Regenerated.
4065         * tests/unictype/test-categ_Sk.c: Regenerated.
4066         * tests/unictype/test-categ_Sm.c: Regenerated.
4067         * tests/unictype/test-categ_So.c: Regenerated.
4068         * tests/unictype/test-ctype_alnum.c: Regenerated.
4069         * tests/unictype/test-ctype_alpha.c: Regenerated.
4070         * tests/unictype/test-ctype_graph.c: Regenerated.
4071         * tests/unictype/test-ctype_lower.c: Regenerated.
4072         * tests/unictype/test-ctype_print.c: Regenerated.
4073         * tests/unictype/test-ctype_punct.c: Regenerated.
4074         * tests/unictype/test-ctype_upper.c: Regenerated.
4075         * tests/unictype/test-decdigit.h: Regenerated.
4076         * tests/unictype/test-digit.h: Regenerated.
4077         * tests/unictype/test-numeric.h: Regenerated.
4078         * tests/unictype/test-pr_alphabetic.c: Regenerated.
4079         * tests/unictype/test-pr_bidi_arabic_digit.c: Regenerated.
4080         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Regenerated.
4081         * tests/unictype/test-pr_bidi_boundary_neutral.c: Regenerated.
4082         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Regenerated.
4083         * tests/unictype/test-pr_bidi_left_to_right.c: Regenerated.
4084         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Regenerated.
4085         * tests/unictype/test-pr_bidi_other_neutral.c: Regenerated.
4086         * tests/unictype/test-pr_combining.c: Regenerated.
4087         * tests/unictype/test-pr_dash.c: Regenerated.
4088         * tests/unictype/test-pr_decimal_digit.c: Regenerated.
4089         * tests/unictype/test-pr_default_ignorable_code_point.c: Regenerated.
4090         * tests/unictype/test-pr_deprecated.c: Regenerated.
4091         * tests/unictype/test-pr_diacritic.c: Regenerated.
4092         * tests/unictype/test-pr_extender.c: Regenerated.
4093         * tests/unictype/test-pr_format_control.c: Regenerated.
4094         * tests/unictype/test-pr_grapheme_base.c: Regenerated.
4095         * tests/unictype/test-pr_grapheme_extend.c: Regenerated.
4096         * tests/unictype/test-pr_grapheme_link.c: Regenerated.
4097         * tests/unictype/test-pr_id_continue.c: Regenerated.
4098         * tests/unictype/test-pr_id_start.c: Regenerated.
4099         * tests/unictype/test-pr_ideographic.c: Regenerated.
4100         * tests/unictype/test-pr_ignorable_control.c: Regenerated.
4101         * tests/unictype/test-pr_lowercase.c: Regenerated.
4102         * tests/unictype/test-pr_math.c: Regenerated.
4103         * tests/unictype/test-pr_numeric.c: Regenerated.
4104         * tests/unictype/test-pr_other_alphabetic.c: Regenerated.
4105         * tests/unictype/test-pr_other_default_ignorable_code_point.c:
4106         Regenerated.
4107         * tests/unictype/test-pr_other_grapheme_extend.c: Regenerated.
4108         * tests/unictype/test-pr_other_id_continue.c: Regenerated.
4109         * tests/unictype/test-pr_other_lowercase.c: Regenerated.
4110         * tests/unictype/test-pr_other_math.c: Regenerated.
4111         * tests/unictype/test-pr_punctuation.c: Regenerated.
4112         * tests/unictype/test-pr_sentence_terminal.c: Regenerated.
4113         * tests/unictype/test-pr_soft_dotted.c: Regenerated.
4114         * tests/unictype/test-pr_terminal_punctuation.c: Regenerated.
4115         * tests/unictype/test-pr_unassigned_code_value.c: Regenerated.
4116         * tests/unictype/test-pr_unified_ideograph.c: Regenerated.
4117         * tests/unictype/test-pr_uppercase.c: Regenerated.
4118         * tests/unictype/test-pr_xid_continue.c: Regenerated.
4119         * tests/unictype/test-pr_xid_start.c: Regenerated.
4120         * tests/unictype/test-pr_zero_width.c: Regenerated.
4121
4122         Update to Unicode 5.1.0.
4123         * lib/uniwidth/width.c (nonspacing_table_data): Add U+0487,
4124         U+0616..U+061A, U+0A51, U+0A75, U+0B44, U+0B62..U+0B63, U+0C62..U+0C63,
4125         U+0D44, U+0D62..U+0D63, U+1033..U+1035, U+103A, U+103D..U+103E,
4126         U+105E..U+1060, U+1071..U+1074, U+1082, U+1085..U+1086, U+108D,
4127         U+1B80..U+1B81, U+1BA2..U+1BA5, U+1BA8..U+1BA9, U+1C2C..U+1C33,
4128         U+1C36..U+1C37, U+1DCB..U+1DE6, U+2064, U+20F0, U+2DE0..U+2DFF,
4129         U+A66F..U+A672, U+A67C..U+A67D, U+A8C4, U+A926..U+A92D, U+A947..U+A951,
4130         U+AA29..U+AA2E, U+AA31..U+AA32, U+AA35..U+AA36, U+AA43, U+AA4C,
4131         U+FE24..U+FE26, U+101FD. Remove U+1929..U+192B.
4132         (nonspacing_table_ind): Update.
4133         * tests/uniwidth/test-uc_width2.sh: Update expected result.
4134
4135         Update to Unicode 5.1.0.
4136         * lib/uniname/gen-uninames.lisp (main): Add the range 0x1Fxxx to the
4137         code transform.
4138         * lib/uniname/uniname.c (unicode_character_name,
4139         unicode_name_character): Add the range 0x1Fxxx to the code transform.
4140         * lib/uniname/uninames.h: Regenerated.
4141         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.1.0.
4142
4143 2009-02-07  Bruno Haible  <bruno@clisp.org>
4144
4145         Merge gen-ctype and gen-lbrk into a single program.
4146         * lib/gen-uni-tables.c: New file, incorporating
4147         lib/unictype/gen-ctype.c and lib/unilbrk/gen-lbrk.c.
4148         Add directory prefixes to the names of the generated files.
4149         * lib/unictype/gen-ctype.c: Remove file.
4150         * lib/unilbrk/gen-lbrk.c: Remove file.
4151         * modules/gen-uni-tables: New file.
4152         * modules/unictype/gen-ctype: Remove file.
4153         * modules/unilbrk/gen-lbrk: Remove file.
4154
4155 2009-02-07  Bruno Haible  <bruno@clisp.org>
4156
4157         * lib/unistr.h (u8_strcoll, u16_strcoll, u32_strcoll): New declations.
4158
4159         New module 'unistr/u32-strcoll'.
4160         * modules/unistr/u32-strcoll: New file.
4161         * lib/unistr/u32-strcoll.c: New file.
4162
4163         New module 'unistr/u16-strcoll'.
4164         * modules/unistr/u16-strcoll: New file.
4165         * lib/unistr/u16-strcoll.c: New file.
4166
4167         New module 'unistr/u8-strcoll'.
4168         * modules/unistr/u8-strcoll: New file.
4169         * lib/unistr/u8-strcoll.c: New file.
4170         * lib/unistr/u-strcoll.h: New file.
4171
4172 2009-02-07  Bruno Haible  <bruno@clisp.org>
4173
4174         * test-mbrtowc4.sh (LOCALE_ZH_CN): Fix default value.
4175         * test-mbsnrtowcs4.sh (LOCALE_ZH_CN): Likewise.
4176         * test-mbsrtowcs4.sh (LOCALE_ZH_CN): Likewise.
4177         * test-wcrtomb.sh (LOCALE_ZH_CN): Likewise.
4178         * test-wcsnrtombs4.sh (LOCALE_ZH_CN): Likewise.
4179         * test-wcsrtombs4.sh (LOCALE_ZH_CN): Likewise.
4180
4181 2009-02-07  Bruno Haible  <bruno@clisp.org>
4182
4183         Make 64-bit clean.
4184         * lib/unictype/gen-ctype.c (output_predicate, output_category,
4185         output_combclass, output_bidi_category, output_decimal_digit,
4186         output_digit, output_numeric, output_mirror, output_scripts,
4187         output_ident_category): Use proper width specifier in format strings.
4188
4189 2009-02-07  Bruno Haible  <bruno@clisp.org>
4190
4191         * doc/posix-functions/dirfd.texi: Clarify situation on mingw. Document
4192         failure behaviour.
4193
4194 2009-02-07  Jim Meyering  <meyering@redhat.com>
4195
4196         regex: avoid compilation failure with upcoming gcc-4.4
4197         * lib/regex_internal.h: Revert e48d8b47fb3eee81d341b71c3e006efe9e3433a7
4198         [workaround for PGC prior to 6.1-2].  Otherwise, we'd get this:
4199         "... error: integer overflow in preprocessor expression".
4200
4201 2009-02-05  Ben Pfaff  <blp@gnu.org>
4202
4203         Fix link errors on Windows when close module is used.
4204         * modules/close: Add $(LIB_CLOSE) to Link section.
4205         * m4/close.m4 (gl_REPLACE_CLOSE): Substitute -lws2_32 into
4206         $(LIB_CLOSE) on Windows.
4207
4208 2009-02-05  Jim Meyering  <meyering@redhat.com>
4209
4210         still avoid unused-parameter warnings, but do it cleanly
4211         * lib/fsusage.c (UNUSED_PARAM): Remove definition.
4212         (get_fs_usage): Cast to void instead.
4213         * lib/mountlist.c (UNUSED_PARAM): Remove definition.
4214         (dev_from_mount_options, read_file_system_list): Cast to void.
4215         Prompted by Bruno Haible.
4216
4217 2009-02-04  Jim Meyering  <meyering@redhat.com>
4218
4219         fsusage.c: correct copyright year
4220         * lib/fsusage.c: Reflect year in which the change is pushed into
4221
4222         avoid misc. warnings
4223         * lib/fsusage.c (UNUSED_PARAM): Define.
4224         (get_fs_usage): Mark parameter "disk" as unused.
4225         * lib/getugroups.c (getgrent): Use "void" in prototype.
4226         * lib/mountlist.c: Mark unused parameters.
4227         (read_file_system_list): Declare a local with "const".
4228         * lib/nanosleep.c (getnow): Declare static.
4229         * lib/strftime.c: Include strftime.h, for declaration of nstrftime.
4230
4231         dirfd: set errno upon failure
4232         * lib/dirfd.c: Include <errno.h>.
4233         Set errno to ENOTSUP when returning -1.
4234         * modules/dirfd (Depends-on): Add errno.
4235         Suggested by John Kodis <kodis@comcast.net>.
4236
4237 2009-02-01  Bruno Haible  <bruno@clisp.org>
4238
4239         Don't assume sizeof (long) >= sizeof (void *).
4240         * lib/memcmp.c: Include stdint.h.
4241         (memcmp_bytes): Change argument types to op_t. Change type of srcp1,
4242         srcp2 to 'const byte *'.
4243         (memcmp_common_alignment, memcmp_not_common_alignment): Change argument
4244         types to uintptr_t.
4245         (rpl_memcmp): Change type of srcp1, srcp2 to 'uintptr_t'.
4246         * modules/memcmp (Depends-on): Add stdint.
4247         Reported by Ozkan Sezer <sezeroz@gmail.com>.
4248
4249 2009-01-30  Eric Blake  <ebb9@byu.net>
4250
4251         fix more require-before-expand issues
4252         * m4/pmccabe2html.m4 (gl_PMCCABE2HTML): Require, rather than
4253         expand, AC_PROG_AWK.
4254         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): Use AC_DEFUN_ONCE.
4255
4256 2009-01-28  Eric Blake  <ebb9@byu.net>
4257
4258         version-etc: use consistent URL formatting
4259         * lib/version-etc.c (emit_bug_reporting_address, version_etc_va):
4260         Improve formatting.  Use fputs for string without %.
4261
4262 2009-01-28  Jim Meyering  <meyering@redhat.com>
4263
4264         00gnulib.m4: add m4 quotes in shell comment to avoid autoconf warning
4265         * m4/00gnulib.m4 (AC_DEFUN_ONCE): Add quotes to avoid an
4266         "underquoted definition of NAME" from autoconf-2.59.
4267
4268 2009-01-28  Bruno Haible  <bruno@clisp.org>
4269
4270         * doc/gnulib.texi: Add "Obsolete modules" to index.
4271
4272 2009-01-28  Jim Meyering  <meyering@redhat.com>
4273
4274         useless-if-before-free: recognize more variants
4275         * build-aux/useless-if-before-free: Also recognize e.g.,
4276         if (NULL != p) free (p);
4277
4278 2009-01-27  Mark McLoughlin  <markmc@redhat.com>
4279
4280         test-getaddrinfo: skip (don't fail) this test when there's no network
4281         * tests/test-getaddrinfo.c: Skip test upon failure with EAI_AGAIN,
4282         on the presumption that it means you lack network access.
4283
4284 2009-01-26  Jim Meyering  <meyering@redhat.com>
4285
4286         fflush: avoid warnings on modern systems
4287         * lib/fflush.c (rpl_fflush): Move declarations of locals,
4288         pos and result, into scopes where they're used.
4289
4290 2009-01-26  Eric Blake  <ebb9@byu.net>
4291
4292         Silence warning reintroduced by recent extensions patch.
4293         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS)
4294         (gl_USE_SYSTEM_EXTENSIONS): Use AC_DEFUN_ONCE to silence newer
4295         autoconf.
4296
4297         Backport improved autoconf semantics of AC_DEFUN_ONCE.
4298         * m4/00gnulib.m4: New file.
4299         * gnulib-tool (func_get_filelist): Always use it.
4300         * m4/gnulib-common.m4 (gl_COMMON): Force the file to be used.
4301         Reported by Bruno Haible, with suggestions from Paolo Bonzini.
4302
4303 2009-01-25  Bruno Haible  <bruno@clisp.org>
4304
4305         Make test-quotearg work on MacOS X and AIX.
4306         * tests/test-quotearg.sh: New file.
4307         * tests/locale/fr/LC_MESSAGES/test-quotearg.po: New file.
4308         * tests/locale/fr/LC_MESSAGES/test-quotearg.mo: New file.
4309         * tests/test-quotearg.c: Include <locale.h> and gettext.h. Don't
4310         include <libintl.h>.
4311         (fake_locale): Remove variable.
4312         (gettext, dgettext, dcgettext): Remove functions.
4313         (main): Instead of setting a fake locale, set a real locale. Call
4314         textdomain and bindtextdomain.
4315         * modules/quotearg-tests (Files): Add the new files.
4316         (Depends-on): Add gettext, setenv, unsetenv.
4317         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
4318         (Makefile.am): Add test-quotearg.sh to TESTS, remove test-quotearg.
4319         Augment TESTS_ENVIRONMENT.
4320
4321 2009-01-25  Bruno Haible  <bruno@clisp.org>
4322
4323         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove special code that hid the
4324         fr_FR.ISO8859-1 locale on MacOS X.
4325         * m4/locale-ja.m4 (gt_LOCALE_JA): Remove special code that hid the
4326         ja_JP.eucJP locale on MacOS X.
4327         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Remove special code that hid the
4328         zh_CN.GB18030 locale on MacOS X.
4329
4330 2009-01-25  Bruno Haible  <bruno@clisp.org>
4331
4332         Avoid link errors on MacOS X 10.3.
4333         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Add initializer.
4334         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
4335
4336 2009-01-25  Bruno Haible  <bruno@clisp.org>
4337
4338         * lib/pipe.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
4339         * m4/pipe.m4 (gl_PIPE): Remove tests for vfork() based code.
4340         * modules/pipe (Files): Remove m4/posix_spawn.m4.
4341         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
4342         posix_spawn_file_actions_addclose, posix_spawn_file_actions_adddup2,
4343         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
4344         posix_spawnattr_init, posix_spawnattr_setsigmask,
4345         posix_spawnattr_setflags, posix_spawnattr_destroy.
4346
4347         * lib/execute.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
4348         * m4/execute.m4 (gl_EXECUTE): Remove tests for vfork() based code.
4349         * modules/execute (Files): Remove m4/posix_spawn.m4.
4350         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
4351         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
4352         posix_spawnattr_init, posix_spawnattr_setsigmask,
4353         posix_spawnattr_setflags, posix_spawnattr_destroy.
4354
4355 2009-01-25  Bruno Haible  <bruno@clisp.org>
4356
4357         * lib/glthread/threadlib.c: Include <stdlib.h>.
4358
4359 2009-01-25  Bruno Haible  <bruno@clisp.org>
4360
4361         * lib/glthread/threadlib.c (dummy): New declaration.
4362
4363 2009-01-25  Bruno Haible  <bruno@clisp.org>
4364
4365         * lib/mbrtowc.c (mbrtowc): Distinguish invalid and incomplete
4366         multibyte characters also for the GB18030 encoding. Don't crash when
4367         the encoding is unknown and nstate = 0. Needed on OSF/1 5.1.
4368
4369 2009-01-25  Bruno Haible  <bruno@clisp.org>
4370
4371         Avoid redefining 'struct random_data' on OSF/1 5.1.
4372         * lib/stdlib.in.h: Include <random.h> if it exists.
4373         * m4/stdlib_h.m4 (gl_STDLIB_H): Test whether <random.h> exists. Set
4374         HAVE_RANDOM_H. Include <random.h> when testing whether
4375         'struct random_data' exists.
4376         * modules/stdlib (Makefile.am): Substitute HAVE_RANDOM_H.
4377
4378 2009-01-25  Bruno Haible  <bruno@clisp.org>
4379
4380         Don't install charset.alias on MacOS X >= 10.3.
4381         * lib/localcharset.c (DARWIN7): New macro.
4382         (get_charset_aliases): Hardcode the result for Darwin7.
4383         * modules/localcharset (install-exec-local): Don't install
4384         charset.alias on MacOS X >= 10.3, if the file does not yet exist.
4385
4386 2009-01-25  Bruno Haible  <bruno@clisp.org>
4387
4388         Don't install charset.alias on mingw and Cygwin.
4389         * modules/localcharset (install-exec-local): Don't install
4390         charset.alias on mingw and Cygwin, if the file does not yet exist.
4391         The result for these platforms is hardcoded in localcharset.c.
4392
4393 2009-01-25  Bruno Haible  <bruno@clisp.org>
4394
4395         Make it possible again to use AC_GNU_SOURCE together with gnulib.
4396         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_GNU_SOURCE
4397         before requiring AC_USE_SYSTEM_EXTENSIONS.
4398
4399 2009-01-25  Jim Meyering  <meyering@redhat.com>
4400
4401         c-strtod: avoid warnings
4402         * lib/c-strtod.c (C_STRTOD): Cast nptr to (char *) to avoid
4403         "assignment discards qualifiers from pointer target type" warnings.
4404
4405 2009-01-24  Bruno Haible  <bruno@clisp.org>
4406
4407         Add support for non-UTF-8 locales on MacOS X.
4408         * lib/config.charset: Add CP1131, ARMSCII-8, PT154 to the list of
4409         canonical encodings. For Darwin 7 and newer, don't map traditional
4410         encodings to UTF-8.
4411         Reported by Vincent Lefevre <vincent@vinc17.org>
4412         at <http://savannah.gnu.org/bugs/?25235>.
4413
4414 2009-01-24  Bruno Haible  <bruno@clisp.org>
4415
4416         * doc/gnulib.texi (Obsolete modules): New section.
4417         Reported by Mike Frysinger <vapier@gentoo.org>.
4418
4419 2009-01-24  Bruno Haible  <bruno@clisp.org>
4420
4421         * doc/Makefile (%.pdf): Clarify where to find texmf.cnf.
4422         (%.dvi): New rule.
4423
4424 2009-01-24  Bruno Haible  <bruno@clisp.org>
4425
4426         * lib/c-strtod.h (c_strtod, c_strtold): Adjust specification.
4427         Reported by Eric Blake.
4428
4429 2009-01-24  Bruno Haible  <bruno@clisp.org>
4430
4431         * lib/c-stack.c (segv_handler): If !HAVE_XSI_STACK_OVERFLOW_HEURISTIC,
4432         set signo = 0 also if info->si_code <= 0. Needed on HP-UX 11.11.
4433         Reported by Gary V. Vaughan <gary@gnu.org>.
4434
4435 2009-01-24  Bruno Haible  <bruno@clisp.org>
4436
4437         * lib/c-strtod.h (c_strtod, c_strtold): Add specification.
4438
4439 2009-01-23  Bruno Haible  <bruno@clisp.org>
4440
4441         Make c-strtod, c-strtold usable in libraries.
4442         * lib/c-strtod.c: Include string.h instead of xalloc.h.
4443         (C_STRTOD): Call strdup instead of xstrdup.
4444         * modules/c-strtod (Depends-on): Add strdup-posix, remove xalloc.
4445         * modules/c-strtold (Depends-on): Likewise.
4446         * doc/c-strtod.texi: Remove the sentence mentioning xalloc_die.
4447         * NEWS: Mention the change.
4448         Reported by Michael Gold <mgold@ncf.ca>.
4449
4450 2009-01-23  Jim Meyering  <meyering@redhat.com>
4451
4452         c-strtod: when ENDPTR is non-NULL, set *ENDPTR in new failure path
4453         * lib/c-strtod.c (C_STRTOD) [LC_ALL_MASKC]: Ensure that when
4454         ENDPTR is non-NULL, *ENDPTR is set to NPTR upon failure.
4455
4456 2009-01-23  Simon Josefsson  <simon@josefsson.org>
4457
4458         * lib/version-etc.c: Add emit_bug_reporting_address, inspired by
4459         GNU CoreUtils.
4460         * lib/version-etc.h: Add prototype for emit_bug_reporting_address.
4461         * modules/version-etc (Description): Update.
4462
4463 2009-01-22  Bruno Haible  <bruno@clisp.org>
4464
4465         Cache the C locale object.
4466         * lib/c-strtod.c (c_locale_cache): New variable.
4467         (c_locale): New function.
4468         (C_STRTOD): Use it, and don't call freelocale.
4469         * m4/c-strtod.m4 (gl_C_STRTOD, gl_C_STRTOLD): Require AC_C_INLINE.
4470         Suggested by Paolo Bonzini.
4471
4472 2009-01-21  Bruno Haible  <bruno@clisp.org>
4473
4474         * lib/getloadavg.c (getloadavg): Check c_strtod result against error
4475         conditions other than overflow.
4476
4477 2009-01-21  Bruno Haible  <bruno@clisp.org>
4478
4479         * lib/c-strtod.c: Include errno.h.
4480         (C_STRTOD): Check against NULL return from newlocale. Preserve errno
4481         value from STRTOD_L and STRTOD.
4482
4483 2009-01-21  Bruno Haible  <bruno@clisp.org>
4484         and Jim Meyering  <meyering@redhat.com>
4485
4486         nanosleep: skip configure test (fail it) for apple universal builds
4487         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_MULTIARCH. In Apple
4488         universal builds, assume that nanosleep does not work.
4489         * modules/nanosleep (Depends-on): Add multiarch.
4490
4491         mktime: skip configure test (fail it) for apple universal builds
4492         * m4/mktime.m4 (AC_FUNC_MKTIME): Require gl_MULTIARCH. In Apple
4493         universal builds, assume that mktime does not work.
4494         * modules/mktime (Depends-on): Add multiarch.
4495
4496 2009-01-21  Eric Blake  <ebb9@byu.net>
4497
4498         multiarch: avoid expand-before-require warning
4499         * modules/multiarch (configure.ac): Require, rather than expand,
4500         gl_MULTIARCH.
4501         * m4/multiarch.m4 (gl_MULTIARCH_BODY): Merge...
4502         (gl_MULTIARCH): ...into this macro, and use AC_DEFUN_ONCE to
4503         enforce that all clients require it.  Partial reversion of
4504         2008-12-29 patch.
4505
4506         error: avoid expand-before-require warning
4507         * modules/errno (configure.ac): Require, rather than expand,
4508         gl_HEADER_ERRNO_H.
4509         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Merge...
4510         (gl_HEADER_ERRNO_H): ...into this macro, and use AC_DEFUN_ONCE to
4511         enforce that all clients require it.
4512
4513         gnulib-tool: avoid warnings from using obsolete AC_GNU_SOURCE
4514         * gnulib-tool (func_dest_tmpfilename, func_create_testdir): Using
4515         obsolete AC_GNU_SOURCE causes out-of-order expansion; avoid it,
4516         and rely solely on gl_USE_SYSTEM_EXTENSIONS.
4517
4518 2009-01-21  Paolo Bonzini  <bonzini@gnu.org>
4519
4520         Revert:
4521         2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
4522
4523         regex: do not depend on obsolete modules.
4524         * modules/regex: Remove memcmp and memmove.
4525
4526 2009-01-20  Bruno Haible  <bruno@clisp.org>
4527
4528         Make the 'link' module link on Windows NT 4.
4529         * lib/link.c (_WIN32_WINNT): Don't define.
4530         (CreateHardLinkFuncType): New type.
4531         (CreateHardLinkFunc, initialized): New variables.
4532         (initialize): New function.
4533         (link): Invoke CreateHardLink indirectly through the function pointer.
4534
4535 2009-01-20  Bruno Haible  <bruno@clisp.org>
4536
4537         Fix compilation failure on mingw.
4538         * tests/test-link.c (main): Don't assume that EOPNOTSUPP exists.
4539
4540 2009-01-20  Michael Gold  <mgold@ncf.ca>  (tiny change)
4541
4542         * doc/c-strtod.texi: Mention a couple of restrictions.
4543
4544 2009-01-20  Jim Meyering  <meyering@redhat.com>
4545
4546         gettimeofday: move more declarations out of functions
4547         * lib/gettimeofday.c: Move extern declarations of tzset and
4548         gmtime out of containing functions.  Prompted by Bruno Haible.
4549
4550 2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
4551
4552         regex: do not depend on obsolete modules.
4553         * modules/regex: Remove memcmp and memmove.
4554
4555 2009-01-19  Bruno Haible  <bruno@clisp.org>
4556
4557         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
4558         * modules/uniconv/u16-conv-from-enc (configure.ac): Require
4559         gl_BIGENDIAN, not AC_C_BIGENDIAN.
4560         * modules/uniconv/u16-conv-to-enc (configure.ac): Likewise.
4561         * modules/uniconv/u16-strconv-to-enc (configure.ac): Likewise.
4562
4563 2009-01-19  Bruno Haible  <bruno@clisp.org>
4564
4565         * tests/test-link.c: Include <errno.h>.
4566         (main): Exit with code 77 when a hard link cannot be created due to
4567         the file system.
4568         * tests/test-link.sh: Skip test when a hard link cannot be created due
4569         to the file system.
4570         Suggested by Eric Blake.
4571
4572 2009-01-19  Martin Lambers  <marlam@marlam.de>
4573
4574         * modules/link-tests: New file.
4575         * tests/test-link.sh: New file.
4576         * tests/test-link.c: New file.
4577
4578 2009-01-19  Eric Blake  <ebb9@byu.net>
4579
4580         doc: mention another function added in cygwin 1.7.0
4581         * doc/glibc-functions/glob_pattern_p.texi (glob_pattern_p):
4582         Another new function in cygwin 1.7.
4583
4584 2009-01-19  Bruno Haible  <bruno@clisp.org>
4585
4586         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
4587         * m4/gnulib-common.m4 (gl_BIGENDIAN): New macro.
4588         * m4/exponentl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require
4589         gl_BIGENDIAN, not AC_C_BIGENDIAN.
4590         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): Likewise.
4591         * m4/isinf.m4 (gl_ISINFL_WORKS): Likewise.
4592         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Likewise.
4593         * m4/md4.m4 (gl_MD4): Likewise.
4594         * m4/md5.m4 (gl_MD5): Likewise.
4595         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Likewise.
4596         * m4/sha1.m4 (gl_SHA1): Likewise.
4597         * m4/sha256.m4 (gl_SHA256): Likewise.
4598         * m4/sha512.m4 (gl_SHA512): Likewise.
4599
4600 2009-01-19  Bruno Haible  <bruno@clisp.org>
4601
4602         * modules/uniname/uniname-tests (Depends-on): Add progname.
4603         * tests/uniname/test-uninames.c: Include progname.h.
4604         (main): Call set_program_name.
4605
4606         * modules/unistdio/u8-vsprintf-tests (Depends-on): Add progname.
4607         * tests/unistdio/test-u8-vsprintf1.c: Include progname.h.
4608         (main): Call set_program_name.
4609
4610         * modules/unistdio/u8-vsnprintf-tests (Depends-on): Add progname.
4611         * tests/unistdio/test-u8-vsnprintf1.c: Include progname.h.
4612         (main): Call set_program_name.
4613
4614         * modules/unistdio/u16-vsprintf-tests (Depends-on): Add progname.
4615         * tests/unistdio/test-u16-vsprintf1.c: Include progname.h.
4616         (main): Call set_program_name.
4617
4618         * modules/unistdio/u16-vsnprintf-tests (Depends-on): Add progname.
4619         * tests/unistdio/test-u16-vsnprintf1.c: Include progname.h.
4620         (main): Call set_program_name.
4621
4622         * modules/unistdio/u32-vsprintf-tests (Depends-on): Add progname.
4623         * tests/unistdio/test-u32-vsprintf1.c: Include progname.h.
4624         (main): Call set_program_name.
4625
4626         * modules/unistdio/u32-vsnprintf-tests (Depends-on): Add progname.
4627         * tests/unistdio/test-u32-vsnprintf1.c: Include progname.h.
4628         (main): Call set_program_name.
4629
4630         * modules/unistdio/ulc-vsprintf-tests (Depends-on): Add progname.
4631         * tests/unistdio/test-ulc-vsprintf1.c: Include progname.h.
4632         (main): Call set_program_name.
4633
4634         * modules/unistdio/ulc-vsnprintf-tests (Depends-on): Add progname.
4635         * tests/unistdio/test-ulc-vsnprintf1.c: Include progname.h.
4636         (main): Call set_program_name.
4637
4638 2009-01-19  Eric Blake  <ebb9@byu.net>
4639
4640         test-unistd: test previous patch
4641         * tests/test-unistd.c: Test *_FILENO macros.
4642
4643         unistd: guarantee STDIN_FILENO here, for OS/2 EMX
4644         * lib/unistd.in.h (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
4645         Guarantee a definition.
4646         * doc/posix-headers/unistd.texi (unistd.h): Document the bug.
4647         * modules/unistd-safer (Depends-on): Add dependency on unistd.
4648         * lib/c-stack.c (STDERR_FILENO): Rely on <unistd.h>.
4649         * lib/dup-safer.c (STDERR_FILENO): Likewise.
4650         * lib/execute.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
4651         Likewise.
4652         * lib/fd-safer.c (STDIN_FILENO, STDERR_FILENO): Likewise.
4653         * lib/fopen-safer.c (STDERR_FILENO): Likewise.
4654         * lib/pipe.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
4655         Likewise.
4656         * lib/tmpfile-safer.c (STDERR_FILENO): Likewise.
4657         * tests/test-posix_spawn1.c (STDIN_FILENO, STDOUT_FILENO)
4658         (STDERR_FILENO): Likewise.
4659         * tests/test-posix_spawn2.c (STDIN_FILENO, STDOUT_FILENO)
4660         (STDERR_FILENO): Likewise.
4661         * tests/test-posix_spawn3.c (STDIN_FILENO, STDOUT_FILENO)
4662         (STDERR_FILENO): Likewise.
4663         Reported by Elbert Pol.
4664
4665 2009-01-19  Eric Blake  <ebb9@byu.net>
4666
4667         doc: mention more functions added in cygwin 1.7.0
4668         * doc/posix-functions/abort.texi (abort): Update wording related
4669         to cygwin.
4670         * doc/posix-functions/daylight.texi (daylight): Likewise.
4671         * doc/posix-functions/optarg.texi (optarg): Likewise.
4672         * doc/posix-functions/optarg.texi (opterr): Likewise.
4673         * doc/posix-functions/optarg.texi (optind): Likewise.
4674         * doc/posix-functions/optarg.texi (optopt): Likewise.
4675         * doc/posix-functions/wprintf.texi (wprintf): Cygwin wprintf never
4676         worked in 1.5.x, and was withdrawn in 1.7.
4677         * doc/posix-functions/vwprintf.texi (vwprintf): Likewise.
4678         * doc/posix-functions/fprintf.texi (fprintf): Tighten mention of
4679         cygwin versions.
4680         * doc/posix-functions/perror.texi (perror): Likewise.
4681         * doc/posix-functions/printf.texi (printf): Likewise.
4682         * doc/posix-functions/snprintf.texi (snprintf): Likewise.
4683         * doc/posix-functions/sprintf.texi (sprintf): Likewise.
4684         * doc/posix-functions/vfprintf.texi (vfprintf): Likewise.
4685         * doc/posix-functions/vprintf.texi (vprintf): Likewise.
4686         * doc/posix-functions/vsnprintf.texi (vsnprintf): Likewise.
4687         * doc/posix-functions/vsprintf.texi (vsprintf): Likewise.
4688         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
4689         Likewise.
4690         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
4691         Likewise.
4692         * doc/glibc-functions/cfmakeraw.texi (cfmakeraw): Cygwin 1.7 adds
4693         this function.
4694         * doc/glibc-functions/in6addr_any.texi (in6addr_any): Likewise.
4695         * doc/glibc-functions/in6addr_loopback.texi (in6addr_loopback):
4696         Likewise.
4697         * doc/glibc-functions/updwtmpx.texi (updwtmpx): Likewise.
4698         * doc/posix-functions/_Exit_C99.texi (_Exit): Likewise.
4699         * doc/posix-functions/confstr.texi (confstr): Likewise.
4700         * doc/posix-functions/dprintf.texi (dprintf): Likewise.
4701         * doc/posix-functions/fgetwc.texi (fgetwc): Likewise.
4702         * doc/posix-functions/fgetws.texi (fgetws): Likewise.
4703         * doc/posix-functions/fputwc.texi (fputwc): Likewise.
4704         * doc/posix-functions/fputws.texi (fputws): Likewise.
4705         * doc/posix-functions/fwide.texi (fwide): Likewise.
4706         * doc/posix-functions/getwc.texi (getwc): Likewise.
4707         * doc/posix-functions/getwchar.texi (getwchar): Likewise.
4708         * doc/posix-functions/putwc.texi (putwc): Likewise.
4709         * doc/posix-functions/putwchar.texi (putwchar): Likewise.
4710         * doc/posix-functions/sigignore.texi (sigignore): Likewise.
4711         * doc/posix-functions/ungetwc.texi (ungetwc): Likewise.
4712         * doc/posix-functions/vdprintf.texi (vdprintf): Likewise.
4713         * doc/posix-functions/wcpcpy.texi (wcpcpy): Likewise.
4714         * doc/posix-functions/wcpncpy.texi (wcpncpy): Likewise.
4715         * doc/posix-functions/wcstol.texi (wcstol): Likewise.
4716         * doc/posix-functions/wcstoll.texi (wcstoll): Likewise.
4717         * doc/posix-functions/wcstoul.texi (wcstoul): Likewise.
4718         * doc/posix-functions/wcstoull.texi (wcstoull): Likewise.
4719         * doc/posix-functions/wcsxfrm.texi (wcsxfrm): Likewise.
4720
4721 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
4722
4723         ioctl: avoid warning: no previous prototype for 'rpl_ioctl'
4724         * lib/ioctl.c: Include <sys/ioctl.h>.
4725
4726 2009-01-19  Simon Josefsson  <simon@josefsson.org>
4727
4728         * modules/getdate-tests (Depends-on): Add progname.
4729         * tests/test-getdate.c: Use progname module, to avoid link errors
4730         on non-glibc systems.
4731
4732 2009-01-18  Simon Josefsson  <simon@josefsson.org>
4733
4734         * modules/filenamecat-tests (Depends-on): Add progname.
4735         * modules/fstrcmp-tests (Depends-on): Likewise.
4736
4737         * tests/test-filenamecat.c: Use progname module, to avoid link
4738         errors on non-glibc systems.
4739         * tests/test-fstrcmp.c: Likewise.
4740
4741 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
4742
4743         gettimeofday: avoid warning: nested extern declaration of 'localtime'
4744         * lib/gettimeofday.c: Move extern declaration out of function.
4745
4746 2009-01-18  Bruno Haible  <bruno@clisp.org>
4747
4748         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mblen and mbrlen.
4749         * lib/strftime.c (HAVE_MBLEN, HAVE_MBRLEN): Remove macros.
4750         (MULTIBYTE_IS_FORMAT_SAFE): Define to 1 on all platforms except OSF/1.
4751
4752 2009-01-18  Bruno Haible  <bruno@clisp.org>
4753
4754         * lib/strftime.c (MEMPCPY): Remove unused macro.
4755         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mempcpy.
4756
4757 2009-01-18  Martin Lambers  <marlam@marlam.de>
4758
4759         New module 'link'.
4760         * lib/unistd.in.h (link): New declaration.
4761         * lib/link.c: New file.
4762         * m4/link.m4: New file.
4763         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_LINK,
4764         HAVE_LINK.
4765         * modules/unistd (Makefile.am): Substitute GNULIB_LINK, HAVE_LINK.
4766         * modules/link: New file.
4767         * doc/posix-functions/link.texi: Mention the new module.
4768
4769 2009-01-18  Bruno Haible  <bruno@clisp.org>
4770
4771         * tests/test-avltree_list.c (main): Call set_program_name.
4772         * tests/test-avltree_oset.c (main): Likewise.
4773         * tests/test-obstack-printf.c: Include progname.h.
4774         (main): Call set_program_name.
4775         * tests/test-quotearg.c: Include progname.h.
4776         (main): Call set_program_name.
4777         * tests/test-xmemdup0.c: Include progname.h.
4778         (main): Call set_program_name.
4779
4780 2009-01-18  Bruno Haible  <bruno@clisp.org>
4781
4782         New module 'alphasort'.
4783         * lib/dirent.in.h (alphasort): New declaration.
4784         * lib/alphasort.c: New file, from glibc with modifications.
4785         * m4/alphasort.m4: New file.
4786         * modules/alphasort: New file.
4787         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_ALPHASORT,
4788         HAVE_ALPHASORT.
4789         * modules/dirent (Makefile.am): Substitute GNULIB_ALPHASORT,
4790         HAVE_ALPHASORT.
4791         * doc/posix-functions/alphasort.texi: Mention the new module and the
4792         portability problems.
4793
4794 2009-01-18  Bruno Haible  <bruno@clisp.org>
4795
4796         New module 'scandir'.
4797         * lib/dirent.in.h (scandir): New declaration.
4798         * lib/scandir.c: New file, from glibc with modifications.
4799         * m4/scandir.m4: New file.
4800         * modules/scandir: New file.
4801         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_SCANDIR,
4802         HAVE_SCANDIR.
4803         * modules/dirent (Makefile.am): Substitute GNULIB_SCANDIR,
4804         HAVE_SCANDIR.
4805         * doc/posix-functions/scandir.texi: Mention the new module and the
4806         portability problems.
4807
4808 2009-01-17  Bruno Haible  <bruno@clisp.org>
4809
4810         * gnulib-tool (func_remove_prefix): Escape all dots in the prefix.
4811         Update documentation.
4812         (func_remove_suffix): Escape all dots in the suffix. Update
4813         documentation.
4814         (func_filter_filelist): Update documentation.
4815         Reported by Ralf Wildenhues.
4816
4817 2009-01-17  Bruno Haible  <bruno@clisp.org>
4818
4819         * modules/dprintf-posix-tests: New file.
4820         * tests/test-dprintf-posix.sh: New file.
4821         * tests/test-dprintf-posix.c: New file.
4822
4823         New modules 'dprintf', 'dprintf-posix'.
4824         * lib/stdio.in.h (dprintf): New declaration.
4825         * lib/dprintf.c: New file.
4826         * m4/dprintf.m4: New file.
4827         * m4/dprintf-posix.m4: New file.
4828         * modules/dprintf: New file.
4829         * modules/dprintf-posix: New file.
4830         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_DPRINTF,
4831         HAVE_DPRINTF, REPLACE_DPRINTF.
4832         * modules/stdio (Makefile.am): Substitute also GNULIB_DPRINTF,
4833         HAVE_DPRINTF, REPLACE_DPRINTF.
4834         * doc/posix-functions/dprintf.texi: Mention the new modules.
4835
4836 2009-01-17  Bruno Haible  <bruno@clisp.org>
4837
4838         * modules/vdprintf-posix-tests: New file.
4839         * tests/test-vdprintf-posix.sh: New file.
4840         * tests/test-vdprintf-posix.c: New file.
4841
4842         New modules 'vdprintf', 'vdprintf-posix'.
4843         * lib/stdio.in.h (vdprintf): New declaration.
4844         * lib/vdprintf.c: New file.
4845         * m4/vdprintf.m4: New file.
4846         * m4/vdprintf-posix.m4: New file.
4847         * modules/vdprintf: New file.
4848         * modules/vdprintf-posix: New file.
4849         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_VDPRINTF,
4850         HAVE_VDPRINTF, REPLACE_VDPRINTF.
4851         * modules/stdio (Makefile.am): Substitute also GNULIB_VDPRINTF,
4852         HAVE_VDPRINTF, REPLACE_VDPRINTF.
4853         * doc/posix-functions/vdprintf.texi: Mention the new modules.
4854
4855 2009-01-17  Bruno Haible  <bruno@clisp.org>
4856
4857         Fix replacement of fopen on mingw.
4858         * m4/fopen.m4 (gl_FUNC_FOPEN): Define FOPEN_TRAILING_SLASH_BUG also on
4859         mingw.
4860
4861 2009-01-17  Bruno Haible  <bruno@clisp.org>
4862
4863         Fix compilation error on HP-UX 11.00, present since 2008-09-24.
4864         * lib/fopen.c: Include <sys/types.h> and <sys/types.h>.
4865
4866 2009-01-17  Bruno Haible  <bruno@clisp.org>
4867
4868         Avoid test-fflush2.sh failure on mingw.
4869         * tests/test-fflush2.c: Include binary-io.h.
4870         (main): Put standard input into binary mode.
4871         * modules/fflush-tests (Depends-on): Add binary-io.
4872
4873 2009-01-17  Bruno Haible  <bruno@clisp.org>
4874
4875         * lib/wchar.in.h: In another particular situation, include only the
4876         system's <wchar.h> file.
4877         (_GL_ALREADY_INCLUDING_WCHAR_H): New macro.
4878         Reported by Albert Chin-A-Young <china@thewrittenword.com>
4879         and Thomas Guyot-Sionnest <dermoth@aei.ca>.
4880
4881 2009-01-17  Bruno Haible  <bruno@clisp.org>
4882
4883         Support for stripping executables in --enable-relocatable.
4884         * build-aux/install-reloc: Expect one more argument, or an environment
4885         variable RELOC_STRIP_PROG. If set, strip the destination program and
4886         its wrapper.
4887         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV, set
4888         RELOC_STRIP_PROG.
4889         * doc/relocatable-maint.texi (Supporting Relocation): Mention the need
4890         to set RELOCATABLE_STRIP.
4891         * NEWS: Mention the new Makefile requirement.
4892
4893 2009-01-17  Bruno Haible  <bruno@clisp.org>
4894
4895         * build-aux/install-reloc: Remove debugging information left over by
4896         C compiler on MacOS X.
4897
4898 2009-01-17  Bruno Haible  <bruno@clisp.org>
4899
4900         Update use of _NSGetExecutablePath after API change in MacOS X 10.4.
4901         * lib/progreloc.c (find_executable): Fix type of pointer passed to
4902         _NSGetExecutablePath.
4903
4904 2009-01-16  Jim Meyering  <meyering@redhat.com>
4905
4906         strerror: avoid warnings about discarding "const"
4907         * lib/strerror.c (rpl_strerror): Instead of returning a const
4908         string from each and every "case", use a variable, and add a single
4909         cast after the switch.
4910
4911 2009-01-16  Albert Chin-A-Young <china@thewrittenword.com>
4912
4913         * lib/arpa_inet.in.h: Add extern "C" block for C++.
4914
4915 2009-01-16  Bruno Haible  <bruno@clisp.org>
4916
4917         * m4/printf.m4 (gl_SNPRINTF_SIZE1, gl_VSNPRINTF_ZEROSIZE_C99): Use an
4918         array initializer syntax that also works in C++ mode.
4919         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
4920
4921 2009-01-16  Jim Meyering  <meyering@redhat.com>
4922
4923         poll: suppress a warning
4924         * lib/poll.c: Use #pragma GCC diagnostic ignored "-Wtype-limits"
4925         to ignore "...unsigned expression < 0 is always false" warnings.
4926
4927 2009-01-16  Daniel P. Berrange  <berrange@redhat.com>
4928
4929         poll: remove declarations of unused variables
4930         * lib/poll.c (poll) [WIN32_NATIVE]: Remove declarations of unused
4931         sockbuf and optlen.
4932
4933 2009-01-15  Bruno Haible  <bruno@clisp.org>
4934
4935         Make fflush-after-ungetc POSIX compliant on BSD systems.
4936         * lib/fflush.c (clear_ungetc_buffer_preserving_position): New function.
4937         (clear_ungetc_buffer): Implement also for other systems.
4938         (rpl_fflush): On glibc systems, invoke
4939         clear_ungetc_buffer_preserving_position. Otherwise, invoke
4940         clear_ungetc_buffer after fetching the stream's position, not before.
4941
4942 2009-01-15  Bruno Haible  <bruno@clisp.org>
4943
4944         Make fflush-after-ungetc POSIX compliant on glibc systems.
4945         * m4/fflush.m4 (gl_FUNC_FFLUSH): Test also the behaviour of fflush
4946         after ungetc.
4947         * lib/fflush.c (clear_ungetc_buffer): Implement for glibc systems.
4948         (rpl_fflush): On glibc systems, simply call the system's fflush
4949         function after clearing the ungetc buffer.
4950         * lib/fseeko.c (rpl_fseeko): Don't try to lseek past the end of file.
4951         Instead, lseek only to the end of file, then use the system's fseeko
4952         for the rest. On glibc systems, reset the EOF indicator bit.
4953
4954 2009-01-15  Jim Meyering  <meyering@redhat.com>
4955
4956         openmp.m4: revert quote-adding change, for portability to older autoconf
4957         * m4/openmp.m4: Remove the quotes added on 2009-01-14.
4958         This reverts part of 42d1eda5dcce2d68deab7a642e7f29bcd7144a0d.
4959         Simon Josefsson noticed the problem when using autoconf-2.61.
4960
4961 2009-01-15  Bruno Haible  <bruno@clisp.org>
4962
4963         * tests/test-fflush2.sh: Invoke test-fflush2 twice.
4964         * tests/test-fflush2.c (ASSERT): Always fail.
4965         (main): Add two tests for fflush() after ungetc(), taking into account
4966         the Austin Group's clarification.
4967         Suggested by Eric Blake.
4968
4969 2009-01-15  Albert Chin-A-Young  <china@thewrittenword.com>
4970
4971         mktime.m4: remove K&R-style function prototypes
4972         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove K&R-style function prototypes
4973         for the Sun C++ compiler.
4974
4975 2009-01-14  Bruno Haible  <bruno@clisp.org>
4976
4977         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_WCHAR_H): New macro, defined
4978         while including <wchar.h>.
4979         * lib/wchar.in.h: In two particular situations on HP-UX, include only
4980         the system's <wchar.h> file.
4981         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
4982
4983 2009-01-14  Bruno Haible  <bruno@clisp.org>
4984
4985         * m4/csharp.m4: Don't mention gettext on the serial number line.
4986         * m4/csharpexec.m4: Likewise.
4987         * m4/eaccess.m4: Likewise.
4988         * m4/javaexec.m4: Likewise.
4989         * m4/sig_atomic_t.m4: Likewise.
4990         * m4/tmpdir.m4: Likewise.
4991         * m4/intldir.m4: Bump gettext version.
4992         * m4/lib-ld.m4: Likewise.
4993
4994 2009-01-14  Bruno Haible  <bruno@clisp.org>
4995
4996         * lib/progname.c (set_program_name): Add more comments.
4997         Reported by Sergey Poznyakoff <gray@gnu.org.ua>.
4998
4999 2009-01-14  Simon Josefsson  <simon@josefsson.org>
5000
5001         * lib/sys_stat.in.h: Include sys/types.h for nlink_t on systems
5002         were sys/stat.h does not define it.
5003
5004 2009-01-14  Jim Meyering  <meyering@redhat.com>
5005
5006         many *.m4 files: improve m4 quoting
5007         99% of this change was performed by running the following commands:
5008         git ls-files | grep '\.m4$' | xargs perl -pi \
5009           -e 's/(AC_\w+\()([^[()]+?)([,)])/$1\[$2]$3/g;' \
5010           -e 's/(AC_\w+\((?:\[[^,]+?\], ){1})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
5011           -e 's/(AC_\w+\((?:\[[^,]+?\], ){2})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
5012           -e 's/(AC_\w+\((?:\[[^,]+?\], ){3})([^,[()]+?)([,)])/$1\[$2]$3/g'
5013         perl -pi -e 's/\[\.\.\.\]/.../' m4/onceonly.m4
5014         The remainder were to add Copyright dates, increment serial numbers,
5015         undo some changes in comments, exclude m4/intl.m4, and add quotes
5016         around the "1" in ",1" where the unusual spacing prohibited the
5017         above regexps from doing the job.  For more details, see
5018         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16175>.
5019         * m4/acl.m4: Modified.
5020         * m4/afs.m4: Likewise.
5021         * m4/alloca.m4: Likewise.
5022         * m4/argp.m4: Likewise.
5023         * m4/argz.m4: Likewise.
5024         * m4/atexit.m4: Likewise.
5025         * m4/bison-i18n.m4: Likewise.
5026         * m4/bison.m4: Likewise.
5027         * m4/byteswap.m4: Likewise.
5028         * m4/c-stack.m4: Likewise.
5029         * m4/c-strtod.m4: Likewise.
5030         * m4/calloc.m4: Likewise.
5031         * m4/canonicalize-lgpl.m4: Likewise.
5032         * m4/chown.m4: Likewise.
5033         * m4/clock_time.m4: Likewise.
5034         * m4/codeset.m4: Likewise.
5035         * m4/copy-file.m4: Likewise.
5036         * m4/csharp.m4: Likewise.
5037         * m4/csharpcomp.m4: Likewise.
5038         * m4/csharpexec.m4: Likewise.
5039         * m4/d-ino.m4: Likewise.
5040         * m4/d-type.m4: Likewise.
5041         * m4/dirfd.m4: Likewise.
5042         * m4/double-slash-root.m4: Likewise.
5043         * m4/eaccess.m4: Likewise.
5044         * m4/eealloc.m4: Likewise.
5045         * m4/environ.m4: Likewise.
5046         * m4/errno_h.m4: Likewise.
5047         * m4/euidaccess.m4: Likewise.
5048         * m4/execute.m4: Likewise.
5049         * m4/fatal-signal.m4: Likewise.
5050         * m4/fchdir.m4: Likewise.
5051         * m4/fcntl_h.m4: Likewise.
5052         * m4/fileblocks.m4: Likewise.
5053         * m4/filenamecat.m4: Likewise.
5054         * m4/findprog.m4: Likewise.
5055         * m4/flexmember.m4: Likewise.
5056         * m4/fnmatch.m4: Likewise.
5057         * m4/fopen.m4: Likewise.
5058         * m4/fpending.m4: Likewise.
5059         * m4/fprintf-posix.m4: Likewise.
5060         * m4/free.m4: Likewise.
5061         * m4/frexp.m4: Likewise.
5062         * m4/frexpl.m4: Likewise.
5063         * m4/fsusage.m4: Likewise.
5064         * m4/ftruncate.m4: Likewise.
5065         * m4/gc-camellia.m4: Likewise.
5066         * m4/gc-random.m4: Likewise.
5067         * m4/gc.m4: Likewise.
5068         * m4/getaddrinfo.m4: Likewise.
5069         * m4/getcwd-abort-bug.m4: Likewise.
5070         * m4/getcwd-path-max.m4: Likewise.
5071         * m4/getdate.m4: Likewise.
5072         * m4/getdomainname.m4: Likewise.
5073         * m4/getgroups.m4: Likewise.
5074         * m4/gethostname.m4: Likewise.
5075         * m4/gethrxtime.m4: Likewise.
5076         * m4/getline.m4: Likewise.
5077         * m4/getloadavg.m4: Likewise.
5078         * m4/getndelim2.m4: Likewise.
5079         * m4/getpass.m4: Likewise.
5080         * m4/gettext.m4: Likewise.
5081         * m4/gettime.m4: Likewise.
5082         * m4/gettimeofday.m4: Likewise.
5083         * m4/gnulib-common.m4: Likewise.
5084         * m4/group-member.m4: Likewise.
5085         * m4/host-os.m4: Likewise.
5086         * m4/iconv.m4: Likewise.
5087         * m4/iconv_open.m4: Likewise.
5088         * m4/inet_ntop.m4: Likewise.
5089         * m4/inet_pton.m4: Likewise.
5090         * m4/inline.m4: Likewise.
5091         * m4/intldir.m4: Likewise.
5092         * m4/intlmacosx.m4: Likewise.
5093         * m4/intmax.m4: Likewise.
5094         * m4/intmax_t.m4: Likewise.
5095         * m4/inttypes.m4: Likewise.
5096         * m4/inttypes_h.m4: Likewise.
5097         * m4/inttypes-pri.m4: Likewise.
5098         * m4/isapipe.m4: Likewise.
5099         * m4/isnand.m4: Likewise.
5100         * m4/isnanf.m4: Likewise.
5101         * m4/isnanl.m4: Likewise.
5102         * m4/javacomp.m4: Likewise.
5103         * m4/javaexec.m4: Likewise.
5104         * m4/jm-winsz1.m4: Likewise.
5105         * m4/jm-winsz2.m4: Likewise.
5106         * m4/lchown.m4: Likewise.
5107         * m4/lcmessage.m4: Likewise.
5108         * m4/ldexpl.m4: Likewise.
5109         * m4/lib-ld.m4: Likewise.
5110         * m4/lib-link.m4: Likewise.
5111         * m4/libsigsegv.m4: Likewise.
5112         * m4/link-follow.m4: Likewise.
5113         * m4/localcharset.m4: Likewise.
5114         * m4/locale-fr.m4: Likewise.
5115         * m4/locale-ja.m4: Likewise.
5116         * m4/locale-tr.m4: Likewise.
5117         * m4/locale-zh.m4: Likewise.
5118         * m4/lock.m4: Likewise.
5119         * m4/longlong.m4: Likewise.
5120         * m4/ls-mntd-fs.m4: Likewise.
5121         * m4/lstat.m4: Likewise.
5122         * m4/malloc.m4: Likewise.
5123         * m4/mathl.m4: Likewise.
5124         * m4/mbrtowc.m4: Likewise.
5125         * m4/mbstate_t.m4: Likewise.
5126         * m4/mbswidth.m4: Likewise.
5127         * m4/memchr.m4: Likewise.
5128         * m4/memcmp.m4: Likewise.
5129         * m4/memcpy.m4: Likewise.
5130         * m4/memmem.m4: Likewise.
5131         * m4/memmove.m4: Likewise.
5132         * m4/mempcpy.m4: Likewise.
5133         * m4/memrchr.m4: Likewise.
5134         * m4/memset.m4: Likewise.
5135         * m4/minmax.m4: Likewise.
5136         * m4/mkdir-slash.m4: Likewise.
5137         * m4/mkdtemp.m4: Likewise.
5138         * m4/mktime.m4: Likewise.
5139         * m4/mmap-anon.m4: Likewise.
5140         * m4/mountlist.m4: Likewise.
5141         * m4/nanosleep.m4: Likewise.
5142         * m4/nls.m4: Likewise.
5143         * m4/nocrash.m4: Likewise.
5144         * m4/open.m4: Likewise.
5145         * m4/openat.m4: Likewise.
5146         * m4/openmp.m4: Likewise.
5147         * m4/pathmax.m4: Likewise.
5148         * m4/perl.m4: Likewise.
5149         * m4/physmem.m4: Likewise.
5150         * m4/pipe.m4: Likewise.
5151         * m4/po.m4: Likewise.
5152         * m4/poll.m4: Likewise.
5153         * m4/posixtm.m4: Likewise.
5154         * m4/posixver.m4: Likewise.
5155         * m4/printf-frexp.m4: Likewise.
5156         * m4/printf-frexpl.m4: Likewise.
5157         * m4/printf-posix.m4: Likewise.
5158         * m4/printf-posix-rpl.m4: Likewise.
5159         * m4/printf.m4: Likewise.
5160         * m4/progtest.m4: Likewise.
5161         * m4/putenv.m4: Likewise.
5162         * m4/readline.m4: Likewise.
5163         * m4/readlink.m4: Likewise.
5164         * m4/readutmp.m4: Likewise.
5165         * m4/realloc.m4: Likewise.
5166         * m4/regex.m4: Likewise.
5167         * m4/relocatable.m4: Likewise.
5168         * m4/relocatable-lib.m4: Likewise.
5169         * m4/rename-dest-slash.m4: Likewise.
5170         * m4/rename.m4: Likewise.
5171         * m4/rmdir-errno.m4: Likewise.
5172         * m4/rmdir.m4: Likewise.
5173         * m4/roundf.m4: Likewise.
5174         * m4/roundl.m4: Likewise.
5175         * m4/rpmatch.m4: Likewise.
5176         * m4/save-cwd.m4: Likewise.
5177         * m4/selinux-selinux-h.m4: Likewise.
5178         * m4/setenv.m4: Likewise.
5179         * m4/settime.m4: Likewise.
5180         * m4/sig2str.m4: Likewise.
5181         * m4/sig_atomic_t.m4: Likewise.
5182         * m4/signalblocking.m4: Likewise.
5183         * m4/signbit.m4: Likewise.
5184         * m4/sigpipe.m4: Likewise.
5185         * m4/sockets.m4: Likewise.
5186         * m4/sockpfaf.m4: Likewise.
5187         * m4/st_dm_mode.m4: Likewise.
5188         * m4/stat-time.m4: Likewise.
5189         * m4/stdbool.m4: Likewise.
5190         * m4/stdint.m4: Likewise.
5191         * m4/stdint_h.m4: Likewise.
5192         * m4/stpcpy.m4: Likewise.
5193         * m4/stpncpy.m4: Likewise.
5194         * m4/strcase.m4: Likewise.
5195         * m4/strchrnul.m4: Likewise.
5196         * m4/strcspn.m4: Likewise.
5197         * m4/strdup.m4: Likewise.
5198         * m4/strftime.m4: Likewise.
5199         * m4/strndup.m4: Likewise.
5200         * m4/strnlen.m4: Likewise.
5201         * m4/strpbrk.m4: Likewise.
5202         * m4/strptime.m4: Likewise.
5203         * m4/strsep.m4: Likewise.
5204         * m4/strtod.m4: Likewise.
5205         * m4/strtoimax.m4: Likewise.
5206         * m4/strtok_r.m4: Likewise.
5207         * m4/strtol.m4: Likewise.
5208         * m4/strtoll.m4: Likewise.
5209         * m4/strtoul.m4: Likewise.
5210         * m4/strtoull.m4: Likewise.
5211         * m4/strtoumax.m4: Likewise.
5212         * m4/strverscmp.m4: Likewise.
5213         * m4/threadlib.m4: Likewise.
5214         * m4/timegm.m4: Likewise.
5215         * m4/tm_gmtoff.m4: Likewise.
5216         * m4/tmpdir.m4: Likewise.
5217         * m4/tmpfile.m4: Likewise.
5218         * m4/tzset.m4: Likewise.
5219         * m4/uintmax_t.m4: Likewise.
5220         * m4/unlinkdir.m4: Likewise.
5221         * m4/unlocked-io.m4: Likewise.
5222         * m4/uptime.m4: Likewise.
5223         * m4/userspec.m4: Likewise.
5224         * m4/utimbuf.m4: Likewise.
5225         * m4/utime.m4: Likewise.
5226         * m4/utimes-null.m4: Likewise.
5227         * m4/utimes.m4: Likewise.
5228         * m4/vararrays.m4: Likewise.
5229         * m4/vasnprintf.m4: Likewise.
5230         * m4/vfprintf-posix.m4: Likewise.
5231         * m4/vprintf-posix.m4: Likewise.
5232         * m4/wait-process.m4: Likewise.
5233         * m4/wchar_t.m4: Likewise.
5234         * m4/wint_t.m4: Likewise.
5235         * m4/write-any-file.m4: Likewise.
5236         * m4/yield.m4: Likewise.
5237
5238 2009-01-13  Bruno Haible  <bruno@clisp.org>
5239
5240         Avoid test-copy-file.sh failures when ACL support insufficient.
5241         * modules/copy-file-tests (Makefile.am): Pass USE_ACL in
5242         TESTS_ENVIRONMENT.
5243         * tests/test-copy-file.sh: Skip the ACL comparisons if USE_ACL is 0.
5244         Reported by Jim Meyering.
5245
5246 2009-01-13  Bruno Haible  <bruno@clisp.org>
5247
5248         * modules/unistdio/u-printf-args (Files): Add m4/stdint_h.m4 and
5249         m4/inttypes_h.m4, needed by m4/intmax_t.m4.
5250         * modules/unistdio/u8-printf-parse (Files): Likewise.
5251         * modules/unistdio/u32-printf-parse (Files): Likewise.
5252         * modules/unistdio/ulc-printf-parse (Files): Likewise.
5253
5254 2009-01-13  Simon Josefsson  <simon@josefsson.org>
5255
5256         * modules/unistdio/u16-printf-parse (Files): Add m4/stdint_h.m4
5257         and m4/inttypes_h.m4 too.
5258
5259 2009-01-12  Eric Blake  <ebb9@byu.net>
5260
5261         tests: IRIX 6.2 cc can't compile -0.0 into .data
5262         * tests/test-ceill.c (minus_zero): Compute -0.0L at runtime,
5263         rather than at compile-time.
5264         * tests/test-floorl.c (minus_zero): Likewise.
5265         * tests/test-frexpl.c (minus_zero): Likewise.
5266         * tests/test-isnan.c (minus_zerol): Likewise.
5267         * tests/test-isnanl.h (minus_zero): Likewise.
5268         * tests/test-ldexpl.c (minus_zero): Likewise.
5269         * tests/test-roundl.c (minus_zero): Likewise.
5270         * tests/test-signbit.c (minus_zerol): Likewise.
5271         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
5272         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
5273         * tests/test-truncl.c (minus_zero): Likewise.
5274         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
5275         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
5276         Reported by Tom G. Christensen and Nelson H. F. Beebe.
5277
5278 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
5279
5280         regex: fix glibc bug 9697
5281         * lib/regcomp.c (re_compile_fastmap_iter): Rewrite COMPLEX_BRACKET
5282         handling.
5283
5284 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
5285
5286         regex: fix glibc bug 697
5287         * lib/regexec.c (prune_impossible_nodes): Handle sifted_states[0]
5288         being NULL also if there are no backreferences.
5289
5290 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
5291
5292         regex: merge glibc changes
5293         * lib/regcomp.c (re_compile_fastmap_iter): Use __mbrtowc.
5294         * lib/regex_internal.c (build_wcs_buffer, build_wcs_upper_buffer,
5295         re_string_skip_chars, re_string_reconstruct): Likewise.
5296         * lib/regex_internal.h [!_LIBC] (__mbrtowc): New #define.
5297
5298 2009-01-07  Jim Meyering  <meyering@redhat.com>
5299
5300         poll: filter through cppi
5301         * lib/poll.c: Indent cpp directives to reflect nesting.
5302
5303 2009-01-07  Daniel P. Berrange  <berrange@redhat.com>
5304
5305         poll: don't return uninitialized
5306         * lib/poll.c (poll) [WIN32_NATIVE]: Initialize "rc".
5307
5308 2009-01-06  Jeremy Olexa <darkside@gentoo.org>  (tiny change)
5309
5310         avoid compile failure on AIX 6.1
5311         * lib/getloadavg.c [HAVE_LIBPERFSTAT]: Include <sys/protosw.h>.
5312         Details in http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/15465
5313
5314 2009-01-04  Jim Meyering  <meyering@redhat.com>
5315
5316         remove duplicate inclusion of <stdio.h>
5317         * tests/test-fprintf-posix.c: Likewise.
5318         * tests/test-printf-posix.c: Likewise.
5319         * tests/test-snprintf-posix.c: Likewise.
5320         * tests/test-sprintf-posix.c: Likewise.
5321         * tests/test-vasprintf-posix.c: Likewise.
5322         * tests/test-vfprintf-posix.c: Likewise.
5323         * tests/test-vprintf-posix.c: Likewise.
5324         * tests/test-vsnprintf-posix.c: Likewise.
5325         * tests/test-vsprintf-posix.c: Likewise.
5326
5327 2009-01-03  Jim Meyering  <meyering@redhat.com>
5328
5329         gnulib-tool: fix sed-based filtering
5330         * gnulib-tool (func_filter_filelist): Remove extra backslash
5331         in sed_fff_filter definition.
5332
5333 2009-01-02  Jim Meyering  <meyering@redhat.com>
5334
5335         strftime: avoid compilation failure on Solaris 2.6
5336         * modules/strftime (Depends-on): Add mbrlen and mbsinit.
5337         * lib/strftime.c [DO_MULTIBYTE]: Include <wchar.h> unconditionally.
5338         Don't #define mbrlen or mbsinit, since now they're guaranteed to
5339         be available.  Reported by Tom G. Christensen.  Details in
5340         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16180>.
5341
5342 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5343             Bruno Haible  <bruno@clisp.org>
5344
5345         Speed up gnulib-tool by doing more string processing through shell
5346         built-ins.
5347         * gnulib-tool (fast_func_append): New variable.
5348         (func_remove_prefix, func_remove_suffix): New functions.
5349         (fast_func_remove_prefix, fast_func_remove_suffix): New variables.
5350         (func_filter_filelist): New function.
5351         (func_get_dependencies): Use func_remove_suffix instead of sed.
5352         (func_get_automake_snippet): Use func_filter_filelist instead of a
5353         subshell and sed invocation.
5354
5355 2009-01-01  Bruno Haible  <bruno@clisp.org>
5356
5357         Fix a security bug.
5358         * gnulib-tool (func_import, import, update): Don't allow the characters
5359         '"', '$', '`', '\' in macro arguments that become part of commands that
5360         are evaluated.
5361
5362 2009-01-01  Bruno Haible  <bruno@clisp.org>
5363
5364         * gnulib-tool (func_reset_sigpipe): Add more comments.
5365
5366 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5367
5368         * gnulib-tool (func_modules_add_dummy, func_emit_lib_Makefile_am,
5369         func_emit_tests_Makefile_am, func_import): Abort loops early if we
5370         already know the answer.
5371
5372 2009-01-01  Jim Meyering  <meyering@redhat.com>
5373
5374         * lib/version-etc.c (version_etc_va): Update copyright year.
5375
5376 2008-12-30  Bruno Haible  <bruno@clisp.org>
5377
5378         * m4/lib-prefix.m4 (AC_LIB_LINKFLAGS_BODY): Don't overwrite
5379         LIB${NAME}_PREFIX when considering the dependencies of lib${name}.
5380         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
5381
5382 2008-12-29  Eric Blake  <ebb9@byu.net>
5383
5384         multiarch: avoid autoconf AC_REQUIRE bug
5385         * m4/multiarch.m4 (gl_MULTIARCH): Split body...
5386         (gl_MULTIARCH_BODY): ...into new macro, to work around bug in Autoconf
5387         2.63 and older.
5388         Reported by Bruno Haible, and analyzed in
5389         http://lists.gnu.org/archive/html/bug-autoconf/2008-12/msg00039.html
5390
5391 2008-12-29  Bruno Haible  <bruno@clisp.org>
5392
5393         * gnulib-tool (func_import): When generating sed-ignore-removed, handle
5394         files in subdirectories correctly.
5395         Reported by Ralf Wildenhues.
5396
5397 2008-12-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
5398
5399         * gnulib-tool (func_update_ignorelist): Use 'join - FILE'
5400         rather than 'join FILE -', for Solaris join.
5401
5402 2008-12-29  Bruno Haible  <bruno@clisp.org>
5403
5404         * m4/codeset.m4 (AM_LANGINFO_CODESET): More systematic m4 argument
5405         quoting.
5406         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
5407         * m4/glibc2.m4 (gt_GLIBC2): Likewise.
5408         * m4/glibc21.m4 (gl_GLIBC21): Likewise.
5409         * m4/iconv.m4 (AM_ICONV_LINK, AM_ICONV): Likewise.
5410         * m4/intdiv0.m4 (gt_INTDIV0): Likewise.
5411         * m4/intlmacosx.m4 (gt_INTL_MACOSX): Likewise.
5412         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Likewise.
5413         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Likewise.
5414         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
5415         * m4/lcmessage.m4 (gt_LC_MESSAGES): Likewise.
5416         * m4/nls.m4 (AM_NLS): Likewise.
5417         * m4/po.m4 (AM_PO_SUBDIRS): Likewise.
5418         * m4/printf-posix.m4 (gt_PRINTF_POSIX): Likewise.
5419         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
5420         * m4/size_max.m4 (gl_SIZE_MAX): Likewise.
5421         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Likewise.
5422         * m4/threadlib.m4 (gl_THREADLIB_BODY): Likewise.
5423         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Likewise.
5424         * m4/visibility.m4 (gl_VISIBILITY): Likewise.
5425         * m4/wchar_t.m4 (gt_TYPE_WCHAR_T): Likewise.
5426         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
5427         * m4/xsize.m4 (gl_XSIZE): Likewise.
5428         Suggested by Jim Meyering.
5429
5430 2008-11-17  Bruce Korb  <bkorb@gnu.org>
5431
5432         * lib/parse-duration.h: non-iso form accepts years, months weeks, too
5433         * lib/parse-duration.c: use a switch instead of cascading if's.
5434
5435 2008-12-29  Eric Blake  <ebb9@byu.net>
5436
5437         wchar.h: supply WEOF on Irix 5.3
5438         * lib/wchar.in.h (wint_t): Also supply WEOF.
5439         * lib/wctype.in.h (wint_t): Likewise.
5440         * doc/posix-headers/wchar.texi (wchar.h): Document the bug.
5441         * doc/posix-headers/wctype.texi (wctype.h): Likewise.
5442         Reported by Tom G. Christensen.
5443
5444 2008-12-26  Bruno Haible  <bruno@clisp.org>
5445
5446         * m4/multiarch.m4 (gl_MULTIARCH): Recognize also the architecture names
5447         i486, i586, i686.
5448
5449 2008-12-26  Bruno Haible  <bruno@clisp.org>
5450
5451         * lib/stdlib.in.h (struct random_data): Fix indentation of comments.
5452
5453 2008-12-26  Bruno Haible  <bruno@clisp.org>
5454
5455         * lib/stdint.in.h: Move the include of <wchar.h> down until after all
5456         the types are defined. Also conditionalize it on __STDC_LIMIT_MACROS,
5457         not __STDC_CONSTANT_MACROS.
5458         Reported by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
5459
5460 2008-12-25  Bruno Haible  <bruno@clisp.org>
5461
5462         Add support for universal builds to vasnprintf.
5463         * m4/printf.m4 (gl_PRINTF_ENOMEM): Require gl_MULTIARCH. In Apple
5464         universal builds, guess no.
5465         * modules/vasnprintf-posix (Depends-on): Add multiarch.
5466         * modules/vasprintf-posix (Depends-on): Likewise.
5467         * modules/fprintf-posix (Depends-on): Likewise.
5468         * modules/vfprintf-posix (Depends-on): Likewise.
5469         * modules/snprintf-posix (Depends-on): Likewise.
5470         * modules/vsnprintf-posix (Depends-on): Likewise.
5471         * modules/sprintf-posix (Depends-on): Likewise.
5472         * modules/vsprintf-posix (Depends-on): Likewise.
5473         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
5474         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
5475         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
5476         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
5477         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
5478         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
5479         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
5480
5481         Add support for universal builds to <inttypes.h>.
5482         * lib/inttypes.in.h (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX,
5483         _SCNu64_PREFIX): In Apple
5484         universal builds, define directly, using _LP64.
5485         * m4/inttypes.m4 (gl_INTTYPES_H): In Apple universal builds, set
5486         INT64_MAX_EQ_LONG_MAX and UINT64_MAX_EQ_ULONG_MAX to -1.
5487         * modules/inttypes (Depends-on): Add multiarch.
5488         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
5489
5490         Add support for universal builds to <stdint.h>.
5491         * lib/stdint.in.h (PDFDIFF_MIN, PTRDIFF_MAX, SIZE_MAX): In Apple
5492         universal builds, define directly, using _LP64.
5493         * m4/stdint.m4 (gl_STDINT_TYPE_PROPERTIES): Require gl_MULTIARCH. In
5494         Apple universal builds, don't test for the size and suffix of ptrdiff_t
5495         and size_t.
5496         * modules/stdint (Depends-on): Add multiarch.
5497         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
5498
5499         New module 'multiarch'.
5500         * modules/multiarch: New file.
5501         * m4/multiarch.m4: New file.
5502
5503 2008-12-25  Bruno Haible  <bruno@clisp.org>
5504
5505         * gnulib-tool (func_create_testdir): Avoid failure of mv command.
5506
5507 2008-12-25  Bruno Haible  <bruno@clisp.org>
5508
5509         * modules/btowc (License): Relicense under LGPLv2+.
5510         * modules/mbsinit (License): Likewise.
5511         * modules/mbrtowc (License): Likewise.
5512         * modules/wcrtomb (License): Likewise.
5513         * modules/streq (License): Likewise.
5514         Reported by David Lutterkort <lutter@redhat.com>.
5515
5516 2008-12-23  Bruno Haible  <bruno@clisp.org>
5517
5518         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Fix conditional and comment.
5519
5520 2008-12-23  Bruno Haible  <bruno@clisp.org>
5521
5522         Module getaddrinfo requires linking with $(GETADDRINFO_LIB).
5523         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Put link options into
5524         GETADDRINFO_LIB, not in LIBS.
5525         * modules/getaddrinfo (Link): Set to $(GETADDRINFO_LIB).
5526         * modules/canon-host (Link): Likewise.
5527         * NEWS: Mention the change.
5528         * modules/getaddrinfo-tests (test_getaddrinfo_LDADD): Add the
5529         GETADDRINFO_LIB.
5530
5531 2008-12-22  Bruno Haible  <bruno@clisp.org>
5532
5533         * doc/posix-functions/iswalnum_l.texi: Mention limitation of wchar_t.
5534         * doc/posix-functions/iswalpha_l.texi: Likewise.
5535         * doc/posix-functions/iswblank_l.texi: Likewise.
5536         * doc/posix-functions/iswcntrl_l.texi: Likewise.
5537         * doc/posix-functions/iswctype_l.texi: Likewise.
5538         * doc/posix-functions/iswdigit_l.texi: Likewise.
5539         * doc/posix-functions/iswgraph_l.texi: Likewise.
5540         * doc/posix-functions/iswlower_l.texi: Likewise.
5541         * doc/posix-functions/iswprint_l.texi: Likewise.
5542         * doc/posix-functions/iswpunct_l.texi: Likewise.
5543         * doc/posix-functions/iswspace_l.texi: Likewise.
5544         * doc/posix-functions/iswupper_l.texi: Likewise.
5545         * doc/posix-functions/iswxdigit_l.texi: Likewise.
5546         * doc/posix-functions/mbsnrtowcs.texi: Likewise.
5547         * doc/posix-functions/open_wmemstream.texi: Likewise.
5548         * doc/posix-functions/swscanf.texi: Likewise.
5549         * doc/posix-functions/towctrans_l.texi: Likewise.
5550         * doc/posix-functions/towlower.texi: Likewise.
5551         * doc/posix-functions/towlower_l.texi: Likewise.
5552         * doc/posix-functions/towupper.texi: Likewise.
5553         * doc/posix-functions/towupper_l.texi: Likewise.
5554         * doc/posix-functions/vfwprintf.texi: Likewise.
5555         * doc/posix-functions/vfwscanf.texi: Likewise.
5556         * doc/posix-functions/vswscanf.texi: Likewise.
5557         * doc/posix-functions/vwprintf.texi: Likewise.
5558         * doc/posix-functions/vwscanf.texi: Likewise.
5559         * doc/posix-functions/wcpcpy.texi: Likewise.
5560         * doc/posix-functions/wcpncpy.texi: Likewise.
5561         * doc/posix-functions/wcscasecmp.texi: Likewise.
5562         * doc/posix-functions/wcscasecmp_l.texi: Likewise.
5563         * doc/posix-functions/wcscoll_l.texi: Likewise.
5564         * doc/posix-functions/wcsdup.texi: Likewise.
5565         * doc/posix-functions/wcsncasecmp.texi: Likewise.
5566         * doc/posix-functions/wcsncasecmp_l.texi: Likewise.
5567         * doc/posix-functions/wcsnlen.texi: Likewise.
5568         * doc/posix-functions/wcsnrtombs.texi: Likewise.
5569         * doc/posix-functions/wcsxfrm_l.texi: Likewise.
5570         * doc/posix-functions/wctrans_l.texi: Likewise.
5571         * doc/posix-functions/wctype_l.texi: Likewise.
5572         * doc/glibc-functions/fgetwc_unlocked.texi: Likewise.
5573         * doc/glibc-functions/fgetws_unlocked.texi: Likewise.
5574         * doc/glibc-functions/fputwc_unlocked.texi: Likewise.
5575         * doc/glibc-functions/fputws_unlocked.texi: Likewise.
5576         * doc/glibc-functions/getwc_unlocked.texi: Likewise.
5577         * doc/glibc-functions/getwchar_unlocked.texi: Likewise.
5578         * doc/glibc-functions/putwc_unlocked.texi: Likewise.
5579         * doc/glibc-functions/putwchar_unlocked.texi: Likewise.
5580         * doc/glibc-functions/wcschrnul.texi: Likewise.
5581         * doc/glibc-functions/wcsftime_l.texi: Likewise.
5582         * doc/glibc-functions/wcstod_l.texi: Likewise.
5583         * doc/glibc-functions/wcstof_l.texi: Likewise.
5584         * doc/glibc-functions/wcstol_l.texi: Likewise.
5585         * doc/glibc-functions/wcstold_l.texi: Likewise.
5586         * doc/glibc-functions/wcstoll_l.texi: Likewise.
5587         * doc/glibc-functions/wcstoq.texi: Likewise.
5588         * doc/glibc-functions/wcstoul_l.texi: Likewise.
5589         * doc/glibc-functions/wcstoull_l.texi: Likewise.
5590         * doc/glibc-functions/wcstouq.texi: Likewise.
5591         * doc/glibc-functions/wmempcpy.texi: Likewise.
5592
5593 2008-12-22  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
5594             Eric Blake  <ebb9@byu.net>
5595             Paolo Bonzini  <bonzini@gnu.org>
5596             Bruno Haible  <bruno@clisp.org>
5597
5598         Make c-stack work on Haiku.
5599         * lib/c-stack.c (SA_ONSTACK): Define fallback.
5600         (c_stack_action): Use SA_ONSTACK flag.
5601
5602 2008-12-22  Bruno Haible  <bruno@clisp.org>
5603
5604         * m4/locale-fr.m4 (gt_LOCALE_FR_UTF8): Treat Haiku like BeOS.
5605
5606 2008-12-22  Bruno Haible  <bruno@clisp.org>
5607
5608         Work around mbrlen() bugs on AIX, HP-UX, OSF/1, Solaris.
5609         * m4/mbrlen.m4 (gl_FUNC_MBRLEN): Set REPLACE_MBRLEN if mbrtowc is
5610         being overridden.
5611         (gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL, gl_MBRLEN_NUL_RETVAL):
5612         New macros.
5613         * lib/wchar.in.h (mbrlen): Override if REPLACE_MBRLEN is set.
5614         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBRLEN.
5615         * modules/wchar (Makefile.am): Substitute REPLACE_MBRLEN.
5616         * doc/posix-functions/mbrlen.texi: Mention the various platform bugs.
5617
5618 2008-12-22  Bruno Haible  <bruno@clisp.org>
5619
5620         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE): Remove unused variable
5621         from test code.
5622
5623 2008-12-22  Eric Blake  <ebb9@byu.net>
5624
5625         Avoid gcc warnings on cygwin.
5626         * lib/regex_internal.c (re_string_reconstruct) [!RE_ENABLE_I18N]:
5627         Avoid unused variable.
5628         * lib/regexec.c (check_arrival_add_next_nodes) [!RE_ENABLE_I18N]:
5629         Likewise.
5630
5631 2008-12-22  Bruno Haible  <bruno@clisp.org>
5632
5633         Remove HAVE_MBRTOWC conditionals.
5634         * lib/mbscasecmp.c: Include mbuiter.h unconditionally.
5635         (mbscasecmp): Assume mbrtowc function.
5636         * lib/mbscasestr.c: Include mbuiter.h unconditionally.
5637         (knuth_morris_pratt_multibyte, mbscasestr): Assume mbrtowc function.
5638         * lib/mbschr.c: Include mbuiter.h unconditionally.
5639         (mbschr): Assume mbrtowc function.
5640         * lib/mbscspn.c: Include mbuiter.h unconditionally.
5641         (mbscspn): Assume mbrtowc function.
5642         * lib/mbslen.c: Include mbuiter.h unconditionally.
5643         (mbslen): Assume mbrtowc function.
5644         * lib/mbsncasecmp.c: Include mbuiter.h unconditionally.
5645         (mbsncasecmp): Assume mbrtowc function.
5646         * lib/mbsnlen.c: Include mbiter.h unconditionally.
5647         (mbsnlen): Assume mbrtowc function.
5648         * lib/mbspbrk.c: Include mbuiter.h unconditionally.
5649         (mbspbrk): Assume mbrtowc function.
5650         * lib/mbspcasecmp.c: Include mbuiter.h unconditionally.
5651         (mbspcasecmp): Assume mbrtowc function.
5652         * lib/mbsrchr.c: Include mbuiter.h unconditionally.
5653         (mbsrchr): Assume mbrtowc function.
5654         * lib/mbssep.c: Include mbuiter.h unconditionally.
5655         (mbssep): Assume mbrtowc function.
5656         * lib/mbsspn.c: Include mbuiter.h unconditionally.
5657         (mbsspn): Assume mbrtowc function.
5658         * lib/mbsstr.c: Include mbuiter.h unconditionally.
5659         (knuth_morris_pratt_multibyte, mbsstr): Assume mbrtowc function.
5660         * lib/mbstok_r.c: Include mbuiter.h unconditionally.
5661         (mbstok_r): Assume mbrtowc function.
5662         * lib/propername.c: Include mbuiter.h unconditionally.
5663         (mbsstr_trimmed_wordbounded): Assume mbrtowc function.
5664         * lib/trim.c: Include mbchar.h, mbiter.h uncondtionally.
5665         (trim2): Assume mbrtowc function.
5666         * lib/mbswidth.c (mbsinit): Remove fallback definition.
5667         (mbsnwidth): Assume mbrtowc function.
5668         * modules/mbswidth (Depends-on): Add mbrtowc, mbsinit.
5669         * lib/quotearg.c (MB_CUR_MAX, mbstate_t, mbrtowc, iswprint): Remove
5670         fallback definitions.
5671         * modules/quotearg (Depends-on): Add mbrtowc, mbsinit.
5672
5673 2008-12-22  Bruno Haible  <bruno@clisp.org>
5674
5675         * doc/posix-functions/mbtowc.texi: Mention a glibc bug.
5676
5677 2008-12-22  Paolo Bonzini  <bonzini@gnu.org>
5678
5679         * modules/regex: Request emulations for the mb*/wc* functions we need.
5680         * m4/regex.m4: Don't look for those functions here.
5681         * lib/regex_internal.h: Do not check HAVE_WCRTOMB and HAVE_MBRTOWC.
5682
5683 2008-12-22  Bruno Haible  <bruno@clisp.org>
5684
5685         * modules/fnmatch (Depends-on): Remove duplicated dependency.
5686
5687 2008-12-21  Bruno Haible  <bruno@clisp.org>
5688
5689         Make mbiter.h, mbuiter.h, mbfile.h usable unconditionally.
5690         * modules/mbiter (Depends-on): Add mbrtowc, mbsinit.
5691         (Include): Remove conditionalization.
5692         * modules/mbuiter (Depends-on): Add mbrtowc, mbsinit.
5693         (Include): Remove conditionalization.
5694         * modules/mbfile (Depends-on): Add mbrtowc, mbsinit.
5695         (Include): Remove conditionalization.
5696         * m4/mbiter.m4 (gl_MBITER): Deprecate the use of AC_FUNC_MBRTOWC.
5697         * m4/mbfile.m4 (gl_MBFILE): Likewise.
5698         * NEWS: Mention the change.
5699         Reported by Alan Hourihane <alanh@fairlite.co.uk>
5700         via Sergey Poznyakoff <gray@gnu.org.ua>.
5701
5702 2008-12-21  Bruno Haible  <bruno@clisp.org>
5703
5704         * MODULES.html.sh (Extended multibyte and wide character utilities
5705         <wchar.h>): Add btowc, wctob, mbsinit, mbrlen, mbrtowc, mbsrtowcs,
5706         wcrtomb, wcsrtombs.
5707         (Support for systems lacking POSIX:2008): Add accept, bind, close,
5708         connect, fclose, getpeername, getsockname, getsockopt, hostent, listen,
5709         mbsnrtowcs, posix_spawn*, recv, recvfrom, sched, select, send, sendto,
5710         setsockopt, shutdown, socket, spawn, sys_wait, wcsnrtombs, write.
5711
5712 2008-12-21  Bruno Haible  <bruno@clisp.org>
5713
5714         * MODULES.html.sh: Change section titles to refer to POSIX:2008.
5715
5716 2008-12-21  Bruno Haible  <bruno@clisp.org>
5717
5718         * modules/wcsnrtombs-tests: New file.
5719         * tests/test-wcsnrtombs1.sh: New file.
5720         * tests/test-wcsnrtombs2.sh: New file.
5721         * tests/test-wcsnrtombs3.sh: New file.
5722         * tests/test-wcsnrtombs4.sh: New file.
5723         * tests/test-wcsnrtombs.c: New file.
5724
5725         New module 'wcsnrtombs'.
5726         * lib/wchar.in.h (wcsnrtombs): New declaration.
5727         * lib/wcsnrtombs.c: New file.
5728         * lib/wcsrtombs-state.c: New file.
5729         * lib/wcsrtombs.c: Refer to _gl_wcsrtombs_state.
5730         (internal_state): Remove variable.
5731         * m4/wcsnrtombs.m4: New file.
5732         * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): Add wcsrtombs-state.c to the
5733         compilation units.
5734         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNRTOMBS,
5735         HAVE_WCSNRTOMBS.
5736         * modules/wchar (Makefile.am): Substitute GNULIB_WCSNRTOMBS,
5737         HAVE_WCSNRTOMBS.
5738         * modules/wcsnrtombs: New file.
5739         * modules/wcsrtombs (Files): Add lib/wcsrtombs-state.c.
5740         * doc/posix-functions/wcsnrtombs.texi: Mention the new module.
5741
5742 2008-12-21  Bruno Haible  <bruno@clisp.org>
5743
5744         * modules/wcsrtombs-tests: New file.
5745         * tests/test-wcsrtombs1.sh: New file.
5746         * tests/test-wcsrtombs2.sh: New file.
5747         * tests/test-wcsrtombs3.sh: New file.
5748         * tests/test-wcsrtombs4.sh: New file.
5749         * tests/test-wcsrtombs.c: New file.
5750
5751         New module 'wcsrtombs'.
5752         * lib/wchar.in.h (wcsrtombs): New declaration.
5753         * lib/wcsrtombs.c: New file.
5754         * m4/wcsrtombs.m4: New file.
5755         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRTOMBS,
5756         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
5757         * modules/wchar (Makefile.am): Substitute GNULIB_WCSRTOMBS,
5758         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
5759         * modules/wcsrtombs: New file.
5760         * doc/posix-functions/wcsrtombs.texi: Mention the new module and the
5761         bugs.
5762
5763 2008-12-21  Bruno Haible  <bruno@clisp.org>
5764
5765         Work around a wcrtomb() bug on Solaris 10 and OSF/1 5.1.
5766         * lib/wchar.in.h (wcrtomb): Override if REPLACE_WCRTOMB is set.
5767         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Test the return value of wcrtomb
5768         with NULL destination argument in various locales. Set REPLACE_WCRTOMB
5769         if not correct.
5770         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCRTOMB.
5771         * modules/wchar (Makefile.am): Substitute REPLACE_WCRTOMB.
5772         * modules/wcrtomb (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
5773         m4/locale-zh.m4, m4/codeset.m4.
5774         * doc/posix-functions/wcrtomb.texi: Document the bug.
5775
5776 2008-12-21  Bruno Haible  <bruno@clisp.org>
5777
5778         Work around a btowc() bug on IRIX 6.5.
5779         * lib/wchar.in.h (btowc): Override if REPLACE_BTOWC is set.
5780         * m4/btowc.m4 (gl_FUNC_BTOWC): Test whether btowc(EOF) is correct. Set
5781         REPLACE_WTOBC if not.
5782         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_BTOWC.
5783         * modules/wchar (Makefile.am): Substitute REPLACE_BTOWC.
5784         * doc/posix-functions/btowc.texi: Mention the IRIX bug.
5785
5786 2008-12-21  Bruno Haible  <bruno@clisp.org>
5787
5788         * modules/wcrtomb-tests: New file.
5789         * tests/test-wcrtomb.sh: New file.
5790         * tests/test-wcrtomb.c: New file.
5791
5792         New module 'wcrtomb'.
5793         * lib/wchar.in.h (wcrtomb): New declaration.
5794         * lib/wcrtomb.c: New file.
5795         * m4/wcrtomb.m4: New file.
5796         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCRTOMB,
5797         HAVE_WCRTOMB.
5798         * modules/wchar (Makefile.am): Substitute GNULIB_WCRTOMB,
5799         HAVE_WCRTOMB.
5800         * modules/wcrtomb: New file.
5801         * doc/posix-functions/wcrtomb.texi: Mention the new module.
5802
5803 2008-12-21  Bruno Haible  <bruno@clisp.org>
5804
5805         * modules/mbrtowc (Files): Add m4/codeset.m4, needed by m4/locale-fr.m4.
5806         * modules/mbsrtowcs (Files): Likewise.
5807         * modules/wctob (Files): Likewise.
5808         * modules/c-strcase-tests (Files): Likewise.
5809         * modules/unistdio/u8-vasnprintf-tests (Files): Likewise.
5810         * modules/unistdio/u16-vasnprintf-tests (Files): Likewise.
5811         * modules/unistdio/u32-vasnprintf-tests (Files): Likewise.
5812         * modules/unistdio/ulc-vasnprintf-tests (Files): Likewise.
5813         * modules/vasnprintf-posix-tests (Files): Likewise.
5814
5815 2008-12-21  William Pursell  <bill.pursell@gmail.com>
5816
5817         gitlog-to-changelog: pass all command-line arguments to git-log
5818         * build-aux/gitlog-to-changelog: When producing a ChangeLog,
5819         it is sometimes convenient to filter the commits in various ways.
5820         gitlog-to-changelog only allows --since to specify a start date,
5821         but git-log itself supports many other filtering mechanisms.
5822         At the moment, I want to filter by branch name.  Rather than
5823         adding a --branch option to gitlog-to-changelog, it seems more
5824         flexible to simply pass all options directly to git-log and let
5825         git do the work.  Notice that this effectively makes --since a
5826         redundant option for gitlog-to-changelog, but removing it would
5827         require current usage to change since calls would then require
5828         an additional '--'.
5829
5830 2008-12-21  Bruno Haible  <bruno@clisp.org>
5831
5832         * modules/mbsnrtowcs-tests: New file.
5833         * tests/test-mbsnrtowcs1.sh: New file.
5834         * tests/test-mbsnrtowcs2.sh: New file.
5835         * tests/test-mbsnrtowcs3.sh: New file.
5836         * tests/test-mbsnrtowcs4.sh: New file.
5837         * tests/test-mbsnrtowcs.c: New file.
5838
5839         New module 'mbsnrtowcs'.
5840         * lib/wchar.in.h (mbsnrtowcs): New declaration.
5841         * lib/mbsnrtowcs.c: New file.
5842         * lib/mbsrtowcs-state.c: New file.
5843         * lib/mbsrtowcs.c: Refer to _gl_mbsrtowcs_state.
5844         (internal_state): Remove variable.
5845         * m4/mbsnrtowcs.m4: New file.
5846         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Add mbsrtowcs-state.c to the
5847         compilation units.
5848         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSNRTOWCS,
5849         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
5850         * modules/wchar (Makefile.am): Substitute GNULIB_MBSNRTOWCS,
5851         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
5852         * modules/mbsnrtowcs: New file.
5853         * modules/mbsrtowcs (Files): Add lib/mbsrtowcs-state.c.
5854         * doc/posix-functions/mbsnrtowcs.texi: Mention the new module and a
5855         portability problem.
5856
5857 2008-12-21  Bruno Haible  <bruno@clisp.org>
5858
5859         Work around mbsrtowcs bug.
5860         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): New macro.
5861         (gl_FUNC_MBSRTOWCS): Invoke it.
5862         * modules/mbsrtowcs (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
5863         m4/locale-zh.m4.
5864         * doc/posix-functions/mbsrtowcs.texi: Document the bug.
5865
5866 2008-12-21  Bruno Haible  <bruno@clisp.org>
5867
5868         * tests/test-mbsrtowcs.c (main): Execute the loop also for unlimited=1.
5869
5870 2008-12-21  Bruno Haible  <bruno@clisp.org>
5871
5872         Update doc for AIX.
5873         * doc/pastposix-functions/wcswcs.texi: Mention that AIX has only a
5874         16-bit wchar_t type.
5875         * doc/posix-functions/btowc.texi: Likewise.
5876         * doc/posix-functions/fgetwc.texi: Likewise.
5877         * doc/posix-functions/fgetws.texi: Likewise.
5878         * doc/posix-functions/fputwc.texi: Likewise.
5879         * doc/posix-functions/fputws.texi: Likewise.
5880         * doc/posix-functions/fwide.texi: Likewise.
5881         * doc/posix-functions/fwprintf.texi: Likewise.
5882         * doc/posix-functions/fwscanf.texi: Likewise.
5883         * doc/posix-functions/getwchar.texi: Likewise.
5884         * doc/posix-functions/getwc.texi: Likewise.
5885         * doc/posix-functions/iswalnum.texi: Likewise.
5886         * doc/posix-functions/iswalpha.texi: Likewise.
5887         * doc/posix-functions/iswblank.texi: Likewise.
5888         * doc/posix-functions/iswcntrl.texi: Likewise.
5889         * doc/posix-functions/iswctype.texi: Likewise.
5890         * doc/posix-functions/iswdigit.texi: Likewise.
5891         * doc/posix-functions/iswgraph.texi: Likewise.
5892         * doc/posix-functions/iswlower.texi: Likewise.
5893         * doc/posix-functions/iswprint.texi: Likewise.
5894         * doc/posix-functions/iswpunct.texi: Likewise.
5895         * doc/posix-functions/iswspace.texi: Likewise.
5896         * doc/posix-functions/iswupper.texi: Likewise.
5897         * doc/posix-functions/iswxdigit.texi: Likewise.
5898         * doc/posix-functions/mbrtowc.texi: Likewise.
5899         * doc/posix-functions/mbsrtowcs.texi: Likewise.
5900         * doc/posix-functions/mbstowcs.texi: Likewise.
5901         * doc/posix-functions/mbtowc.texi: Likewise.
5902         * doc/posix-functions/putwchar.texi: Likewise.
5903         * doc/posix-functions/putwc.texi: Likewise.
5904         * doc/posix-functions/swprintf.texi: Likewise.
5905         * doc/posix-functions/tolower.texi: Likewise.
5906         * doc/posix-functions/toupper.texi: Likewise.
5907         * doc/posix-functions/towctrans.texi: Likewise.
5908         * doc/posix-functions/ungetwc.texi: Likewise.
5909         * doc/posix-functions/vswprintf.texi: Likewise.
5910         * doc/posix-functions/wcrtomb.texi: Likewise.
5911         * doc/posix-functions/wcscat.texi: Likewise.
5912         * doc/posix-functions/wcschr.texi: Likewise.
5913         * doc/posix-functions/wcscmp.texi: Likewise.
5914         * doc/posix-functions/wcscoll.texi: Likewise.
5915         * doc/posix-functions/wcscpy.texi: Likewise.
5916         * doc/posix-functions/wcscspn.texi: Likewise.
5917         * doc/posix-functions/wcsftime.texi: Likewise.
5918         * doc/posix-functions/wcslen.texi: Likewise.
5919         * doc/posix-functions/wcsncat.texi: Likewise.
5920         * doc/posix-functions/wcsncmp.texi: Likewise.
5921         * doc/posix-functions/wcsncpy.texi: Likewise.
5922         * doc/posix-functions/wcspbrk.texi: Likewise.
5923         * doc/posix-functions/wcsrchr.texi: Likewise.
5924         * doc/posix-functions/wcsrtombs.texi: Likewise.
5925         * doc/posix-functions/wcsspn.texi: Likewise.
5926         * doc/posix-functions/wcsstr.texi: Likewise.
5927         * doc/posix-functions/wcstod.texi: Likewise.
5928         * doc/posix-functions/wcstof.texi: Likewise.
5929         * doc/posix-functions/wcstoimax.texi: Likewise.
5930         * doc/posix-functions/wcstok.texi: Likewise.
5931         * doc/posix-functions/wcstold.texi: Likewise.
5932         * doc/posix-functions/wcstoll.texi: Likewise.
5933         * doc/posix-functions/wcstol.texi: Likewise.
5934         * doc/posix-functions/wcstombs.texi: Likewise.
5935         * doc/posix-functions/wcstoull.texi: Likewise.
5936         * doc/posix-functions/wcstoul.texi: Likewise.
5937         * doc/posix-functions/wcstoumax.texi: Likewise.
5938         * doc/posix-functions/wcswidth.texi: Likewise.
5939         * doc/posix-functions/wcsxfrm.texi: Likewise.
5940         * doc/posix-functions/wctob.texi: Likewise.
5941         * doc/posix-functions/wctomb.texi: Likewise.
5942         * doc/posix-functions/wctrans.texi: Likewise.
5943         * doc/posix-functions/wctype.texi: Likewise.
5944         * doc/posix-functions/wcwidth.texi: Likewise.
5945         * doc/posix-functions/wmemchr.texi: Likewise.
5946         * doc/posix-functions/wmemcmp.texi: Likewise.
5947         * doc/posix-functions/wmemcpy.texi: Likewise.
5948         * doc/posix-functions/wmemmove.texi: Likewise.
5949         * doc/posix-functions/wmemset.texi: Likewise.
5950         * doc/posix-functions/wprintf.texi: Likewise.
5951         * doc/posix-functions/wscanf.texi: Likewise.
5952
5953 2008-12-21  Bruno Haible  <bruno@clisp.org>
5954
5955         Update doc for HP-UX 11.11.
5956         * doc/posix-functions/btowc.texi: Clarify that the function is missing
5957         in HP-UX version 11.00, not in all versions of HP-UX 11.
5958         * doc/posix-functions/fwide.texi: Likewise.
5959         * doc/posix-functions/fwprintf.texi: Likewise.
5960         * doc/posix-functions/fwscanf.texi: Likewise.
5961         * doc/posix-functions/inet_ntop.texi: Likewise.
5962         * doc/posix-functions/inet_pton.texi: Likewise.
5963         * doc/posix-functions/mbrlen.texi: Likewise.
5964         * doc/posix-functions/mbrtowc.texi: Likewise.
5965         * doc/posix-functions/mbsinit.texi: Likewise.
5966         * doc/posix-functions/mbsrtowcs.texi: Likewise.
5967         * doc/posix-functions/swprintf.texi: Likewise.
5968         * doc/posix-functions/swscanf.texi: Likewise.
5969         * doc/posix-functions/towctrans.texi: Likewise.
5970         * doc/posix-functions/vfwprintf.texi: Likewise.
5971         * doc/posix-functions/vswprintf.texi: Likewise.
5972         * doc/posix-functions/vwprintf.texi: Likewise.
5973         * doc/posix-functions/wcrtomb.texi: Likewise.
5974         * doc/posix-functions/wcsrtombs.texi: Likewise.
5975         * doc/posix-functions/wcsstr.texi: Likewise.
5976         * doc/posix-functions/wctob.texi: Likewise.
5977         * doc/posix-functions/wctrans.texi: Likewise.
5978         * doc/posix-functions/wmemchr.texi: Likewise.
5979         * doc/posix-functions/wmemcmp.texi: Likewise.
5980         * doc/posix-functions/wmemcpy.texi: Likewise.
5981         * doc/posix-functions/wmemmove.texi: Likewise.
5982         * doc/posix-functions/wmemset.texi: Likewise.
5983         * doc/posix-functions/wprintf.texi: Likewise.
5984         * doc/posix-functions/wscanf.texi: Likewise.
5985
5986 2008-12-21  Bruno Haible  <bruno@clisp.org>
5987
5988         Work around a portability problem.
5989         * tests/test-mbsrtowcs.c (main): Use a temporary conversion state.
5990         * doc/posix-functions/mbsrtowcs.texi: Document the portability problem.
5991
5992 2008-12-20  Bruno Haible  <bruno@clisp.org>
5993
5994         * lib/wchar.in.h (mbsrtowcs): Redefine if REPLACE_MBSRTOWCS is set.
5995         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBSTATE_T_BROKEN. Set
5996         REPLACE_MBSRTOWCS if mbsrtowcs needs to be overridden.
5997         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSRTOWCS.
5998         * modules/wchar (Makefile.am): Substitute REPLACE_MBSRTOWCS.
5999
6000         Work around mbrtowc bugs on AIX, HP-UX, OSF/1, Solaris.
6001         * lib/wchar.in.h (mbstate_t): Redefine also if REPLACE_MBSTATE_T is
6002         set.
6003         (GNULIB_defined_mbstate_t): New macro.
6004         (mbsinit): Redefine if REPLACE_MBSINIT is set.
6005         (mbrtowc): Redefine if REPLACE_MBRTOWC is set.
6006         * lib/mbrtowc.c (rpl_mbrtowc): Add an alternative implementation that
6007         reuses the system's mbrtowc function but works around the bugs.
6008         * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN, gl_MBRTOWC_INCOMPLETE_STATE,
6009         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL): New
6010         macros.
6011         (gl_FUNC_MBRTOWC): Invoke them. Set REPLACE_MBRTOWC if mbrtowc needs to
6012         be overridden. Optionally define MBRTOWC_NULL_ARG_BUG,
6013         MBRTOWC_RETVAL_BUG, MBRTOWC_NUL_RETVAL_BUG.
6014         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_MBSTATE_T_BROKEN. Set
6015         REPLACE_MBSINIT if mbsinit needs to be overridden.
6016         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSTATE_T,
6017         REPLACE_MBSINIT, REPLACE_MBRTOWC.
6018         * modules/wchar (Makefile.am): Substitute REPLACE_MBSTATE_T,
6019         REPLACE_MBSINIT, REPLACE_MBRTOWC.
6020         * modules/mbrtowc (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
6021         m4/locale-zh.m4.
6022         (Depends): Add mbsinit.
6023         * modules/mbsinit (Depends): Add mbrtowc.
6024         * doc/posix-functions/mbrtowc.texi: Mention the various bugs.
6025
6026 2008-12-20  Bruno Haible  <bruno@clisp.org>
6027
6028         * tests/test-mbrtowc.c (main): Change sample string in EUC-JP encoding
6029         so that there are no conversion errors on AIX.
6030         * tests/test-mbsrtowcs.c (main): LIkewise.
6031
6032 2008-12-20  Bruno Haible  <bruno@clisp.org>
6033
6034         Work around wctob bug on Solaris <= 9.
6035         * lib/wchar.in.h (wctob): Redefine if REPLACE_WCTOB is set.
6036         * m4/wctob.m4 (gl_FUNC_WCTOB): Test whether wctob works.
6037         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCTOB.
6038         * modules/wchar (Makefile.am): Substitute REPLACE_WCTOB.
6039         * modules/wctob (Files): Add m4/locale-fr.m4.
6040         * doc/posix-functions/wctob.texi: Mention the Solaris bug.
6041
6042 2008-12-20  Bruno Haible  <bruno@clisp.org>
6043
6044         * doc/posix-functions/select.texi: Mention Solaris 2.6 bug with
6045         /dev/null.
6046         * tests/test-select-in.sh: Likewise.
6047         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
6048
6049 2008-12-20  Bruno Haible  <bruno@clisp.org>
6050
6051         Don't pretend that Cygwin has a ja_JP.EUC-JP locale.
6052         * m4/locale-ja.m4 (gt_LOCALE_JA): Add test for MB_CUR_MAX. Needed on
6053         Cygwin 1.5.x.
6054
6055 2008-12-20  Bruno Haible  <bruno@clisp.org>
6056
6057         Ensure mbstate_t is defined on HP-UX 11.11.
6058         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Require
6059         AC_CANONICAL_HOST. On HP-UX, define _XOPEN_SOURCE to 500.
6060         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Require
6061         AC_USE_SYSTEM_EXTENSIONS.
6062         * modules/fnmatch (Depends-on): Add extensions.
6063         * modules/mbrlen (Depends-on): Likewise.
6064         * modules/mbrtowc (Depends-on): Likewise.
6065         * modules/mbsinit (Depends-on): Likewise.
6066         * modules/mbsrtowcs (Depends-on): Likewise.
6067         * modules/mbswidth (Depends-on): Likewise.
6068         * modules/quotearg (Depends-on): Likewise.
6069         * modules/strftime (Depends-on): Likewise.
6070
6071 2008-12-20  Bruno Haible  <bruno@clisp.org>
6072
6073         Ensure wctob is declared on IRIX 6.5.
6074         * lib/wchar.in.h (wctob): Declare also when HAVE_DECL_WCTOB is 0.
6075         * m4/wctob.m4 (gl_FUNC_WCTOB): Set HAVE_DECL_WCTOB instead of
6076         HAVE_WCTOB. Also test whether <wchar.h> declares wctob.
6077         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize HAVE_DECL_WCTOB instead
6078         of HAVE_WCTOB.
6079         * modules/wchar (Makefile.am): Substitute HAVE_DECL_WCTOB instead of
6080         HAVE_WCTOB.
6081         * doc/posix-functions/wctob.texi: Mention missing declaration on IRIX.
6082
6083 2008-12-19  Bruno Haible  <bruno@clisp.org>
6084
6085         * modules/mbsrtowcs-tests: New file.
6086         * tests/test-mbsrtowcs1.sh: New file.
6087         * tests/test-mbsrtowcs2.sh: New file.
6088         * tests/test-mbsrtowcs3.sh: New file.
6089         * tests/test-mbsrtowcs4.sh: New file.
6090         * tests/test-mbsrtowcs.c: New file.
6091
6092         New module 'mbsrtowcs'.
6093         * lib/wchar.in.h (mbsrtowcs): New declaration.
6094         * lib/mbsrtowcs.c: New file.
6095         * m4/mbsrtowcs.m4: New file.
6096         * modules/mbsrtowcs: New file.
6097         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSRTOWCS and
6098         HAVE_MBSRTOWCS.
6099         * modules/wchar (Makefile.am): Substitute GNULIB_MBSRTOWCS and
6100         HAVE_MBSRTOWCS.
6101         * doc/posix-functions/mbsrtowcs.texi: Document the new module.
6102
6103 2008-12-19  Bruno Haible  <bruno@clisp.org>
6104
6105         New module 'mbrlen'.
6106         * lib/wchar.in.h (mbrlen): New declaration.
6107         * lib/mbrlen.c: New file.
6108         * m4/mbrlen.m4: New file.
6109         * modules/mbrlen: New file.
6110         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRLEN and
6111         HAVE_MBRLEN.
6112         * modules/wchar (Makefile.am): Substitute GNULIB_MBRLEN and
6113         HAVE_MBRLEN.
6114         * doc/posix-functions/mbrlen.texi: Document the new module.
6115
6116 2008-12-19  Bruno Haible  <bruno@clisp.org>
6117
6118         * lib/mbrtowc.c: Include verify.h. Verify an assumption.
6119         * modules/mbrtowc (Depends-on): Add verify.
6120         Suggested by Paul Eggert.
6121
6122 2008-12-18  Bruno Haible  <bruno@clisp.org>
6123
6124         * modules/mbsinit-tests: New file.
6125         * tests/test-mbsinit.sh: New file.
6126         * tests/test-mbsinit.c: New file.
6127
6128 2008-12-18  Bruno Haible  <bruno@clisp.org>
6129
6130         * modules/mbrtowc-tests: New file.
6131         * tests/test-mbrtowc1.sh: New file.
6132         * tests/test-mbrtowc2.sh: New file.
6133         * tests/test-mbrtowc3.sh: New file.
6134         * tests/test-mbrtowc4.sh: New file.
6135         * tests/test-mbrtowc.c: New file.
6136
6137         New module 'mbrtowc'.
6138         * lib/wchar.in.h (mbstate_t): Override when the system does not have
6139         mbsinit and mbrtowc.
6140         (mbrtowc): New declaration.
6141         * lib/mbrtowc.c: New file.
6142         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC, gl_PREREQ_MBRTOWC): New macros.
6143         * modules/mbrtowc: New file.
6144         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRTOWC and
6145         HAVE_MBRTOWC.
6146         * modules/wchar (Makefile.am): Substitute GNULIB_MBRTOWC and
6147         HAVE_MBRTOWC.
6148         * doc/posix-functions/mbrtowc.texi: Document the new module.
6149
6150 2008-12-18  Bruno Haible  <bruno@clisp.org>
6151
6152         New module 'wctob'.
6153         * lib/wchar.in.h (wctob): New declaration.
6154         * lib/wctob.c: New file.
6155         * m4/wctob.m4: New file.
6156         * modules/wctob: New file.
6157         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCTOB and
6158         HAVE_WCTOB.
6159         * modules/wchar (Makefile.am): Substitute GNULIB_WCTOB and HAVE_WCTOB.
6160         * doc/posix-functions/wctob.texi: Document the new module.
6161
6162 2008-12-18  Bruno Haible  <bruno@clisp.org>
6163
6164         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_REPLACE_WCHAR_H.
6165         * m4/btowc.m4 (gl_FUNC_BTOWC): Likewise.
6166
6167 2008-12-18  Simon Josefsson  <simon@josefsson.org>
6168
6169         * lib/flock.c: Use proper #if symbol in check.  Reported by "Tom
6170         G. Christensen" <tgc@jupiterrise.com>.
6171
6172         * lib/flock.c: Need to include errno.h.  Reported by "Tom
6173         G. Christensen" <tgc@jupiterrise.com>.
6174
6175         * lib/flock.c: Need to include string.h.  Reported by "Tom
6176         G. Christensen" <tgc@jupiterrise.com> and Eric Blake
6177         <ebb9@byu.net>.
6178
6179 2008-12-18  Bruno Haible  <bruno@clisp.org>
6180
6181         * m4/locale-ja.m4: New file, from GNU gettext.
6182
6183 2008-12-17  Bruno Haible  <bruno@clisp.org>
6184
6185         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Don't override in autoconf >= 2.60.
6186         Suggested by Eric Blake.
6187
6188 2008-12-17  Bruno Haible  <bruno@clisp.org>
6189
6190         * m4/errno_h.m4 (AC_COMPUTE_INT): Provide fallback definition.
6191
6192 2008-12-17  Bruno Haible  <bruno@clisp.org>
6193
6194         * lib/mbsinit.c: Include verify.h. Verify an assumption.
6195         * modules/mbsinit (Depends-on): Add verify.
6196         Suggested by Paul Eggert.
6197
6198 2008-12-17  Bruno Haible  <bruno@clisp.org>
6199
6200         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Renamed from gl_FUNC_MBRTOWC.
6201         * m4/mbfile.m4 (gl_MBFILE): Use AC_FUNC_MBRTOWC instead of
6202         gl_FUNC_MBRTOWC.
6203         * m4/mbiter.m4 (gl_MBITER): LIkewise.
6204         * m4/mbscasecmp.m4 (gl_PREREQ_MBSCASECMP): Likewise.
6205         * m4/mbscasestr.m4 (gl_PREREQ_MBSCASESTR): Likewise.
6206         * m4/mbschr.m4 (gl_PREREQ_MBSCHR): Likewise.
6207         * m4/mbscspn.m4 (gl_PREREQ_MBSCSPN): Likewise.
6208         * m4/mbslen.m4 (gl_PREREQ_MBSLEN): Likewise.
6209         * m4/mbsncasecmp.m4 (gl_PREREQ_MBSNCASECMP): Likewise.
6210         * m4/mbsnlen.m4 (gl_PREREQ_MBSNLEN): Likewise.
6211         * m4/mbspbrk.m4 (gl_PREREQ_MBSPBRK): Likewise.
6212         * m4/mbspcasecmp.m4 (gl_PREREQ_MBSPCASECMP): Likewise.
6213         * m4/mbsrchr.m4 (gl_PREREQ_MBSRCHR): Likewise.
6214         * m4/mbssep.m4 (gl_PREREQ_MBSSEP): Likewise.
6215         * m4/mbsspn.m4 (gl_PREREQ_MBSSPN): Likewise.
6216         * m4/mbsstr.m4 (gl_PREREQ_MBSSTR): Likewise.
6217         * m4/mbstok_r.m4 (gl_PREREQ_MBSTOK_R): Likewise.
6218         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
6219         * m4/quotearg.m4 (gl_QUOTEARG): Likewise.
6220         * modules/trim (configure.ac): Likewise.
6221
6222 2008-12-17  Bruno Haible  <bruno@clisp.org>
6223
6224         * modules/btowc-tests: New file.
6225         * tests/test-btowc1.sh: New file.
6226         * tests/test-btowc2.sh: New file.
6227         * tests/test-btowc.c: New file.
6228
6229         New module 'btowc'.
6230         * lib/wchar.in.h (btowc): New declaration.
6231         * lib/btowc.c: New file.
6232         * m4/btowc.m4: New file.
6233         * modules/btowc: New file.
6234         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_BTOWC and
6235         HAVE_BTOWC.
6236         * modules/wchar (Makefile.am): Substitute GNULIB_BTOWC and HAVE_BTOWC.
6237         * doc/posix-functions/btowc.texi: Document the new module.
6238
6239 2008-12-17  Bruno Haible  <bruno@clisp.org>
6240
6241         New module 'mbsinit'.
6242         * lib/wchar.in.h (mbsinit): New declaration.
6243         * lib/mbsinit.c: New file.
6244         * m4/mbsinit.m4: New file.
6245         * modules/mbsinit: New file.
6246         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSINIT and
6247         HAVE_MBSINIT.
6248         * modules/wchar (Makefile.am): Substitute GNULIB_MBSINIT and
6249         HAVE_MBSINIT.
6250         * doc/posix-functions/mbsinit.texi: Document the new module.
6251
6252 2008-12-16  Bruno Haible  <bruno@clisp.org>
6253
6254         * lib/unistd.in.h: Add comment.
6255         * tests/test-environ.c: Don't include <stdlib.h>.
6256
6257 2008-12-16  Bruno Haible  <bruno@clisp.org>
6258
6259         * lib/parse-duration.h (parse_duration): Document return value
6260         convention.
6261         * lib/parse-duration.c: Include specification header first. Add
6262         comments.
6263         (_): Remove macro.
6264         (parse_year_month_day, parse_hour_minute_second): Move side effects
6265         outside of strchr call.
6266         (parse_non_iso8601): Move side effects outside of isspace call.
6267         (parse_duration): Don't test errno is res != BAD_TIME. Remove fprintf
6268         call.
6269
6270 2008-12-16  Bruno Haible  <bruno@clisp.org>
6271
6272         * tests/test-parse-duration.sh: Produce no output when the test
6273         succeeds.
6274
6275 2008-12-16  Bruno Haible  <bruno@clisp.org>
6276
6277         * tests/test-parse-duration.sh: Fix quoting of $tmp and $tmpf
6278         expressions.
6279
6280 2008-12-15  Bruno Haible  <bruno@clisp.org>
6281
6282         * doc/glibc-functions/fgetxattr.texi: Tweak wording.
6283         * doc/glibc-functions/flistxattr.texi: Likewise.
6284         * doc/glibc-functions/fopencookie.texi: Likewise.
6285         * doc/glibc-functions/fremovexattr.texi: Likewise.
6286         * doc/glibc-functions/fsetxattr.texi: Likewise.
6287         * doc/glibc-functions/getxattr.texi: Likewise.
6288         * doc/glibc-functions/lgetxattr.texi: Likewise.
6289         * doc/glibc-functions/listxattr.texi: Likewise.
6290         * doc/glibc-functions/llistxattr.texi: Likewise.
6291         * doc/glibc-functions/lremovexattr.texi: Likewise.
6292         * doc/glibc-functions/lsetxattr.texi: Likewise.
6293         * doc/glibc-functions/removexattr.texi: Likewise.
6294         * doc/glibc-functions/setxattr.texi: Likewise.
6295         * doc/posix-functions/open_memstream.texi: Likewise.
6296
6297 2008-12-15  Eric Blake  <ebb9@byu.net>
6298
6299         Update doc for cygwin 1.7.
6300         * doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
6301         functions.
6302         * doc/posix-functions/fchmodat.texi: Likewise.
6303         * doc/posix-functions/fchownat.texi: Likewise.
6304         * doc/posix-functions/fdopendir.texi: Likewise.
6305         * doc/posix-functions/fmemopen.texi: Likewise.
6306         * doc/posix-functions/freeaddrinfo.texi: Likewise.
6307         * doc/posix-functions/fstatat.texi: Likewise.
6308         * doc/posix-functions/futimens.texi: Likewise.
6309         * doc/posix-functions/gai_strerror.texi: Likewise.
6310         * doc/posix-functions/getaddrinfo.texi: Likewise.
6311         * doc/posix-functions/getnameinfo.texi: Likewise.
6312         * doc/posix-functions/if_freenameindex.texi: Likewise.
6313         * doc/posix-functions/if_indextoname.texi: Likewise.
6314         * doc/posix-functions/if_nameindex.texi: Likewise.
6315         * doc/posix-functions/if_nametoindex.texi: Likewise.
6316         * doc/posix-functions/insque.texi: Likewise.
6317         * doc/posix-functions/linkat.texi: Likewise.
6318         * doc/posix-functions/llrint.texi: Likewise.
6319         * doc/posix-functions/llrintf.texi: Likewise.
6320         * doc/posix-functions/llrintl.texi: Likewise.
6321         * doc/posix-functions/lockf.texi: Likewise.
6322         * doc/posix-functions/lrintl.texi: Likewise.
6323         * doc/posix-functions/mkdirat.texi: Likewise.
6324         * doc/posix-functions/mkfifoat.texi: Likewise.
6325         * doc/posix-functions/mknodat.texi: Likewise.
6326         * doc/posix-functions/mq_close.texi: Likewise.
6327         * doc/posix-functions/mq_getattr.texi: Likewise.
6328         * doc/posix-functions/mq_notify.texi: Likewise.
6329         * doc/posix-functions/mq_open.texi: Likewise.
6330         * doc/posix-functions/mq_receive.texi: Likewise.
6331         * doc/posix-functions/mq_send.texi: Likewise.
6332         * doc/posix-functions/mq_setattr.texi: Likewise.
6333         * doc/posix-functions/mq_timedreceive.texi: Likewise.
6334         * doc/posix-functions/mq_timedsend.texi: Likewise.
6335         * doc/posix-functions/mq_unlink.texi: Likewise.
6336         * doc/posix-functions/open_memstream.texi: Likewise.
6337         * doc/posix-functions/openat.texi: Likewise.
6338         * doc/posix-functions/posix_fadvise.texi: Likewise.
6339         * doc/posix-functions/posix_fallocate.texi: Likewise.
6340         * doc/posix-functions/posix_madvise.texi: Likewise.
6341         * doc/posix-functions/posix_memalign.texi: Likewise.
6342         * doc/posix-functions/posix_openpt.texi: Likewise.
6343         * doc/posix-functions/readlinkat.texi: Likewise.
6344         * doc/posix-functions/remque.texi: Likewise.
6345         * doc/posix-functions/renameat.texi: Likewise.
6346         * doc/posix-functions/rintl.texi: Likewise.
6347         * doc/posix-functions/sem_unlink.texi: Likewise.
6348         * doc/posix-functions/shm_open.texi: Likewise.
6349         * doc/posix-functions/shm_unlink.texi: Likewise.
6350         * doc/posix-functions/signgam.texi: Likewise.
6351         * doc/posix-functions/sigset.texi: Likewise.
6352         * doc/posix-functions/stpcpy.texi: Likewise.
6353         * doc/posix-functions/stpncpy.texi: Likewise.
6354         * doc/posix-functions/strerror.texi: Likewise.
6355         * doc/posix-functions/strtod.texi: Likewise.
6356         * doc/posix-functions/symlinkat.texi: Likewise.
6357         * doc/posix-functions/unlinkat.texi: Likewise.
6358         * doc/posix-functions/utimensat.texi: Likewise.
6359         * doc/glibc-functions/bindresvport.texi: Likewise.
6360         * doc/glibc-functions/dn_expand.texi: Likewise.
6361         * doc/glibc-functions/exp10.texi: Likewise.
6362         * doc/glibc-functions/exp10f.texi: Likewise.
6363         * doc/glibc-functions/fgetxattr.texi: Likewise.
6364         * doc/glibc-functions/flistxattr.texi: Likewise.
6365         * doc/glibc-functions/fopencookie.texi: Likewise.
6366         * doc/glibc-functions/freeifaddrs.texi: Likewise.
6367         * doc/glibc-functions/fremovexattr.texi: Likewise.
6368         * doc/glibc-functions/fsetxattr.texi: Likewise.
6369         * doc/glibc-functions/getifaddrs.texi: Likewise.
6370         * doc/glibc-functions/getxattr.texi: Likewise.
6371         * doc/glibc-functions/lgetxattr.texi: Likewise.
6372         * doc/glibc-functions/listxattr.texi: Likewise.
6373         * doc/glibc-functions/llistxattr.texi: Likewise.
6374         * doc/glibc-functions/lremovexattr.texi: Likewise.
6375         * doc/glibc-functions/lsetxattr.texi: Likewise.
6376         * doc/glibc-functions/pow10.texi: Likewise.
6377         * doc/glibc-functions/pow10f.texi: Likewise.
6378         * doc/glibc-functions/rcmd_af.texi: Likewise.
6379         * doc/glibc-functions/removexattr.texi: Likewise.
6380         * doc/glibc-functions/res_init.texi: Likewise.
6381         * doc/glibc-functions/res_mkquery.texi: Likewise.
6382         * doc/glibc-functions/res_query.texi: Likewise.
6383         * doc/glibc-functions/res_querydomain.texi: Likewise.
6384         * doc/glibc-functions/res_send.texi: Likewise.
6385         * doc/glibc-functions/rresvport_af.texi: Likewise.
6386         * doc/glibc-functions/setxattr.texi: Likewise.
6387         * doc/glibc-functions/strcasestr.texi: Likewise.
6388
6389 2008-12-15  Bruno Haible  <bruno@clisp.org>
6390
6391         Fix compilation error on OSF/1 4.0.
6392         * lib/sys_select.in.h: When invoked from OSF/1 <sys/types.h> or
6393         <sys/time.h>, simply delegate to the system header.
6394         Reported by Daniel Richard G. <oss@teragram.com>.
6395
6396 2008-12-15  Bruno Haible  <bruno@clisp.org>
6397
6398         * doc/posix-functions/openat.texi: Mention the 'openat' module.
6399         * doc/posix-functions/fchmodat.texi: Likewise.
6400         * doc/posix-functions/fchownat.texi: Likewise.
6401         * doc/posix-functions/fdopendir.texi: Likewise.
6402         * doc/posix-functions/fstatat.texi: Likewise.
6403         * doc/posix-functions/mkdirat.texi: Likewise.
6404         * doc/posix-functions/unlinkat.texi: Likewise.
6405
6406 2008-12-14  Bruno Haible  <bruno@clisp.org>
6407
6408         Update doc for POSIX:2008.
6409         * doc/posix-functions/faccessat.texi: New file.
6410         * doc/posix-functions/fchmodat.texi: New file.
6411         * doc/posix-functions/fchownat.texi: New file.
6412         * doc/posix-functions/fdopendir.texi: New file.
6413         * doc/posix-functions/fstatat.texi: New file.
6414         * doc/posix-functions/futimens.texi: New file.
6415         * doc/posix-functions/linkat.texi: New file.
6416         * doc/posix-functions/mkdirat.texi: New file.
6417         * doc/posix-functions/mkfifoat.texi: New file.
6418         * doc/posix-functions/mknodat.texi: New file.
6419         * doc/posix-functions/open_wmemstream.texi: New file.
6420         * doc/posix-functions/openat.texi: New file.
6421         * doc/posix-functions/psiginfo.texi: New file.
6422         * doc/posix-functions/pthread_mutex_consistent.texi: New file.
6423         * doc/posix-functions/pthread_mutexattr_getrobust.texi: New file.
6424         * doc/posix-functions/pthread_mutexattr_setrobust.texi: New file.
6425         * doc/posix-functions/readlinkat.texi: New file.
6426         * doc/posix-functions/renameat.texi: New file.
6427         * doc/posix-functions/strerror_l.texi: New file.
6428         * doc/posix-functions/symlinkat.texi: New file.
6429         * doc/posix-functions/unlinkat.texi: New file.
6430         * doc/posix-functions/utimensat.texi: New file.
6431         * doc/gnulib.texi (Function Substitutes): Add these subsections.
6432
6433 2008-12-14  Bruno Haible  <bruno@clisp.org>
6434
6435         Update doc for POSIX:2008.
6436         * doc/posix-functions/alphasort.texi: Renamed from
6437         doc/glibc-functions/alphasort.texi.
6438         * doc/posix-functions/dirfd.texi: Renamed from
6439         doc/glibc-functions/dirfd.texi.
6440         * doc/posix-functions/dprintf.texi: Renamed from
6441         doc/glibc-functions/dprintf.texi.
6442         * doc/posix-functions/duplocale.texi: Renamed from
6443         doc/glibc-functions/duplocale.texi.
6444         * doc/posix-functions/fexecve.texi: Renamed from
6445         doc/glibc-functions/fexecve.texi.
6446         * doc/posix-functions/fmemopen.texi: Renamed from
6447         doc/glibc-functions/fmemopen.texi.
6448         * doc/posix-functions/freelocale.texi: Renamed from
6449         doc/glibc-functions/freelocale.texi.
6450         * doc/posix-functions/getdate_err.texi: Renamed from
6451         doc/glibc-functions/getdate_err.texi.
6452         * doc/posix-functions/isalnum_l.texi: Renamed from
6453         doc/glibc-functions/isalnum_l.texi.
6454         * doc/posix-functions/isalpha_l.texi: Renamed from
6455         doc/glibc-functions/isalpha_l.texi.
6456         * doc/posix-functions/isblank_l.texi: Renamed from
6457         doc/glibc-functions/isblank_l.texi.
6458         * doc/posix-functions/iscntrl_l.texi: Renamed from
6459         doc/glibc-functions/iscntrl_l.texi.
6460         * doc/posix-functions/isdigit_l.texi: Renamed from
6461         doc/glibc-functions/isdigit_l.texi.
6462         * doc/posix-functions/isgraph_l.texi: Renamed from
6463         doc/glibc-functions/isgraph_l.texi.
6464         * doc/posix-functions/islower_l.texi: Renamed from
6465         doc/glibc-functions/islower_l.texi.
6466         * doc/posix-functions/isprint_l.texi: Renamed from
6467         doc/glibc-functions/isprint_l.texi.
6468         * doc/posix-functions/ispunct_l.texi: Renamed from
6469         doc/glibc-functions/ispunct_l.texi.
6470         * doc/posix-functions/isspace_l.texi: Renamed from
6471         doc/glibc-functions/isspace_l.texi.
6472         * doc/posix-functions/isupper_l.texi: Renamed from
6473         doc/glibc-functions/isupper_l.texi.
6474         * doc/posix-functions/iswalnum_l.texi: Renamed from
6475         doc/glibc-functions/iswalnum_l.texi.
6476         * doc/posix-functions/iswalpha_l.texi: Renamed from
6477         doc/glibc-functions/iswalpha_l.texi.
6478         * doc/posix-functions/iswblank_l.texi: Renamed from
6479         doc/glibc-functions/iswblank_l.texi.
6480         * doc/posix-functions/iswcntrl_l.texi: Renamed from
6481         doc/glibc-functions/iswcntrl_l.texi.
6482         * doc/posix-functions/iswctype_l.texi: Renamed from
6483         doc/glibc-functions/iswctype_l.texi.
6484         * doc/posix-functions/iswdigit_l.texi: Renamed from
6485         doc/glibc-functions/iswdigit_l.texi.
6486         * doc/posix-functions/iswgraph_l.texi: Renamed from
6487         doc/glibc-functions/iswgraph_l.texi.
6488         * doc/posix-functions/iswlower_l.texi: Renamed from
6489         doc/glibc-functions/iswlower_l.texi.
6490         * doc/posix-functions/iswprint_l.texi: Renamed from
6491         doc/glibc-functions/iswprint_l.texi.
6492         * doc/posix-functions/iswpunct_l.texi: Renamed from
6493         doc/glibc-functions/iswpunct_l.texi.
6494         * doc/posix-functions/iswspace_l.texi: Renamed from
6495         doc/glibc-functions/iswspace_l.texi.
6496         * doc/posix-functions/iswupper_l.texi: Renamed from
6497         doc/glibc-functions/iswupper_l.texi.
6498         * doc/posix-functions/iswxdigit_l.texi: Renamed from
6499         doc/glibc-functions/iswxdigit_l.texi.
6500         * doc/posix-functions/isxdigit_l.texi: Renamed from
6501         doc/glibc-functions/isxdigit_l.texi.
6502         * doc/posix-functions/mbsnrtowcs.texi: Renamed from
6503         doc/glibc-functions/mbsnrtowcs.texi.
6504         * doc/posix-functions/mkdtemp.texi: Renamed from
6505         doc/glibc-functions/mkdtemp.texi.
6506         * doc/posix-functions/newlocale.texi: Renamed from
6507         doc/glibc-functions/newlocale.texi.
6508         * doc/posix-functions/nl_langinfo_l.texi: Renamed from
6509         doc/glibc-functions/nl_langinfo_l.texi.
6510         * doc/posix-functions/open_memstream.texi: Renamed from
6511         doc/glibc-functions/open_memstream.texi.
6512         * doc/posix-functions/opterr.texi: Renamed from
6513         doc/glibc-functions/opterr.texi.
6514         * doc/posix-functions/optind.texi: Renamed from
6515         doc/glibc-functions/optind.texi.
6516         * doc/posix-functions/optopt.texi: Renamed from
6517         doc/glibc-functions/optopt.texi.
6518         * doc/posix-functions/psignal.texi: Renamed from
6519         doc/glibc-functions/psignal.texi.
6520         * doc/posix-functions/scandir.texi: Renamed from
6521         doc/glibc-functions/scandir.texi.
6522         * doc/posix-functions/sched_get_priority_min.texi: Renamed from
6523         doc/glibc-functions/sched_get_priority_min.texi.
6524         * doc/posix-functions/signgam.texi: Renamed from
6525         doc/glibc-functions/signgam.texi.
6526         * doc/posix-functions/stpcpy.texi: Renamed from
6527         doc/glibc-functions/stpcpy.texi.
6528         * doc/posix-functions/stpncpy.texi: Renamed from
6529         doc/glibc-functions/stpncpy.texi.
6530         * doc/posix-functions/strcasecmp_l.texi: Renamed from
6531         doc/glibc-functions/strcasecmp_l.texi.
6532         * doc/posix-functions/strcoll_l.texi: Renamed from
6533         doc/glibc-functions/strcoll_l.texi.
6534         * doc/posix-functions/strfmon_l.texi: Renamed from
6535         doc/glibc-functions/strfmon_l.texi.
6536         * doc/posix-functions/strftime_l.texi: Renamed from
6537         doc/glibc-functions/strftime_l.texi.
6538         * doc/posix-functions/strncasecmp_l.texi: Renamed from
6539         doc/glibc-functions/strncasecmp_l.texi.
6540         * doc/posix-functions/strndup.texi: Renamed from
6541         doc/glibc-functions/strndup.texi.
6542         * doc/posix-functions/strnlen.texi: Renamed from
6543         doc/glibc-functions/strnlen.texi.
6544         * doc/posix-functions/strsignal.texi: Renamed from
6545         doc/glibc-functions/strsignal.texi.
6546         * doc/posix-functions/strxfrm_l.texi: Renamed from
6547         doc/glibc-functions/strxfrm_l.texi.
6548         * doc/posix-functions/timer_gettime.texi: Renamed from
6549         doc/glibc-functions/timer_gettime.texi.
6550         * doc/posix-functions/tolower_l.texi: Renamed from
6551         doc/glibc-functions/tolower_l.texi.
6552         * doc/posix-functions/toupper_l.texi: Renamed from
6553         doc/glibc-functions/toupper_l.texi.
6554         * doc/posix-functions/towctrans_l.texi: Renamed from
6555         doc/glibc-functions/towctrans_l.texi.
6556         * doc/posix-functions/towlower_l.texi: Renamed from
6557         doc/glibc-functions/towlower_l.texi.
6558         * doc/posix-functions/towupper_l.texi: Renamed from
6559         doc/glibc-functions/towupper_l.texi.
6560         * doc/posix-functions/uselocale.texi: Renamed from
6561         doc/glibc-functions/uselocale.texi.
6562         * doc/posix-functions/vdprintf.texi: Renamed from
6563         doc/glibc-functions/vdprintf.texi.
6564         * doc/posix-functions/wcpcpy.texi:
6565         Renamed from doc/glibc-functions/wcpcpy.texi.
6566         * doc/posix-functions/wcpncpy.texi: Renamed from
6567         doc/glibc-functions/wcpncpy.texi.
6568         * doc/posix-functions/wcscasecmp.texi: Renamed from
6569         doc/glibc-functions/wcscasecmp.texi.
6570         * doc/posix-functions/wcscasecmp_l.texi: Renamed from
6571         doc/glibc-functions/wcscasecmp_l.texi.
6572         * doc/posix-functions/wcscoll_l.texi: Renamed from
6573         doc/glibc-functions/wcscoll_l.texi.
6574         * doc/posix-functions/wcsdup.texi: Renamed from
6575         doc/glibc-functions/wcsdup.texi.
6576         * doc/posix-functions/wcsncasecmp.texi: Renamed from
6577         doc/glibc-functions/wcsncasecmp.texi.
6578         * doc/posix-functions/wcsncasecmp_l.texi: Renamed from
6579         doc/glibc-functions/wcsncasecmp_l.texi.
6580         * doc/posix-functions/wcsnlen.texi: Renamed from
6581         doc/glibc-functions/wcsnlen.texi.
6582         * doc/posix-functions/wcsnrtombs.texi: Renamed from
6583         doc/glibc-functions/wcsnrtombs.texi.
6584         * doc/posix-functions/wcsxfrm_l.texi: Renamed from
6585         doc/glibc-functions/wcsxfrm_l.texi.
6586         * doc/posix-functions/wctrans_l.texi: Renamed from
6587         doc/glibc-functions/wctrans_l.texi.
6588         * doc/posix-functions/wctype_l.texi: Renamed from
6589         doc/glibc-functions/wctype_l.texi.
6590         * doc/gnulib.texi (Function Substitutes): Add these subsections.
6591         (Glibc ctype.h, Glibc dirent.h, Glibc getopt.h, Glibc math.h,
6592         Glibc sched.h, Glibc signal.h, Glibc stdio.h, Glibc stdlib.h,
6593         Glibc string.h, Glibc time.h, Glibc unistd.h, Glibc wchar.h): Remove
6594         these subsections.
6595         (Glibc langinfo.h, Glibc locale.h, Glibc monetary.h, Glibc wctype.h):
6596         Remove sections.
6597
6598 2008-12-14  Bruno Haible  <bruno@clisp.org>
6599
6600         Update doc for POSIX:2008.
6601         * doc/posix-functions/*.texi: Update URL of POSIX specification.
6602
6603 2008-12-14  Bruno Haible  <bruno@clisp.org>
6604
6605         Update doc for POSIX:2008.
6606         * doc/pastposix-functions/bcmp.texi: Renamed from
6607         doc/posix-functions/bcmp.texi.
6608         * doc/pastposix-functions/bcopy.texi: Renamed from
6609         doc/posix-functions/bcopy.texi.
6610         * doc/pastposix-functions/bsd_signal.texi: Renamed from
6611         doc/posix-functions/bsd_signal.texi.
6612         * doc/pastposix-functions/bzero.texi: Renamed from
6613         doc/posix-functions/bzero.texi.
6614         * doc/pastposix-functions/ecvt.texi: Renamed from
6615         doc/posix-functions/ecvt.texi.
6616         * doc/pastposix-functions/fcvt.texi: Renamed from
6617         doc/posix-functions/fcvt.texi.
6618         * doc/pastposix-functions/ftime.texi: Renamed from
6619         doc/posix-functions/ftime.texi.
6620         * doc/pastposix-functions/gcvt.texi: Renamed from
6621         doc/posix-functions/gcvt.texi.
6622         * doc/pastposix-functions/getcontext.texi: Renamed from
6623         doc/posix-functions/getcontext.texi.
6624         * doc/pastposix-functions/gethostbyaddr.texi: Renamed from
6625         doc/posix-functions/gethostbyaddr.texi.
6626         * doc/pastposix-functions/gethostbyname.texi: Renamed from
6627         doc/posix-functions/gethostbyname.texi.
6628         * doc/pastposix-functions/getwd.texi: Renamed from
6629         doc/posix-functions/getwd.texi.
6630         * doc/pastposix-functions/h_errno.texi: Renamed from
6631         doc/posix-functions/h_errno.texi.
6632         * doc/pastposix-functions/index.texi: Renamed from
6633         doc/posix-functions/index.texi.
6634         * doc/pastposix-functions/makecontext.texi: Renamed from
6635         doc/posix-functions/makecontext.texi.
6636         * doc/pastposix-functions/mktemp.texi: Renamed from
6637         doc/posix-functions/mktemp.texi.
6638         * doc/pastposix-functions/pthread_attr_getstackaddr.texi: Renamed from
6639         doc/posix-functions/pthread_attr_getstackaddr.texi.
6640         * doc/pastposix-functions/pthread_attr_setstackaddr.texi: Renamed from
6641         doc/posix-functions/pthread_attr_setstackaddr.texi.
6642         * doc/pastposix-functions/rindex.texi: Renamed from
6643         doc/posix-functions/rindex.texi.
6644         * doc/pastposix-functions/scalb.texi: Renamed from
6645         doc/posix-functions/scalb.texi.
6646         * doc/pastposix-functions/setcontext.texi: Renamed from
6647         doc/posix-functions/setcontext.texi.
6648         * doc/pastposix-functions/swapcontext.texi: Renamed from
6649         doc/posix-functions/swapcontext.texi.
6650         * doc/pastposix-functions/ualarm.texi: Renamed from
6651         doc/posix-functions/ualarm.texi.
6652         * doc/pastposix-functions/usleep.texi: Renamed from
6653         doc/posix-functions/usleep.texi.
6654         * doc/pastposix-functions/vfork.texi: Renamed from
6655         doc/posix-functions/vfork.texi.
6656         * doc/pastposix-functions/wcswcs.texi: Renamed from
6657         doc/posix-functions/wcswcs.texi.
6658         * doc/gnulib.texi (Legacy Function Substitutes): New chapter.
6659         (Function Substitutes): Update.
6660
6661 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6662
6663         * modules/relocatable-prog-wrapper (Depends-on): Add errno, needed by
6664         m4/strerror.m4.
6665
6666 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6667             Bruno Haible  <bruno@clisp.org>
6668
6669         * modules/unilbrk/tables (Depends-on): Add unilbrk/base.
6670
6671 2008-12-13  Bruno Haible  <bruno@clisp.org>
6672
6673         * modules/strtoull (Depends-on): Remove unistd.
6674
6675 2008-12-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6676
6677         * modules/strtoull (Depends-on): Add stdlib.
6678
6679 2008-12-11  Simon Josefsson  <simon@josefsson.org>
6680
6681         * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add more warnings.
6682
6683 2008-12-10  Jim Meyering  <meyering@redhat.com>
6684
6685         gl_ASSERT: don't say assertions are disabled when they're not
6686         * m4/assert.m4 (gl_ASSERT): Do not make configure report
6687         "checking whether to enable assertions... no", when they are in
6688         fact enabled.  This is solely a bug in the output of configure.
6689         In spite of saying "no", NDEBUG was not defined in that case.
6690         Also, as noted by Eric Blake, leave assertions enabled upon
6691         --enable-assert=INVALID.
6692
6693 2008-12-10  Bruno Haible  <bruno@clisp.org>
6694
6695         Change MODULES.html to refer to POSIX:2008 where possible.
6696         * MODULES.html.sh (POSIX2008_URL): New variable.
6697         (posix_headers): Remove sys/timeb, ucontext.
6698         (posix2001_headers): New variable.
6699         (posix_functions): Remove bcmp, bcopy, bsd_signal, bzero, ecvt, fcvt,
6700         ftime, gcvt, getcontext, gethostbyaddr, gethostbyname, getwd, h_errno,
6701         index, makecontext, mktemp, pthread_attr_getstackaddr,
6702         pthread_attr_setstackaddr, rindex, scalb, setcontext, swapcontext,
6703         ualarm, usleep, vfork, wcswcs. Add the new POSIX:2008 functions.
6704         (posix2001_functions): New variable.
6705         (func_module): Use URLs to POSIX:2008 where possible and to POSIX:2001
6706         otherwise.
6707
6708 2008-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6709
6710         add missing include to parse-duration.c
6711         * lib/parse-duration.c: #include "xalloc.h", for xstrdup.
6712         * modules/parse-duration (Depends-on): Add xalloc.
6713
6714         fix sed script reading maint.mk
6715         * top/maint.mk (MYSELF): New macro, define as $(srcdir)/$(ME).
6716         (syntax-check-rules): Use it.
6717
6718 2008-12-09  Bruno Haible  <bruno@clisp.org>
6719
6720         * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Add another check, that fails on
6721         MacOS X 10.4/PowerPC.
6722         Reported by Simon Josefsson.
6723
6724 2008-12-08  Jim Meyering  <meyering@redhat.com>
6725
6726         work around mingw's lack of some S_IF definitions
6727         * lib/fts.c (S_IFLNK, S_IFSOCK): Define if not already defined.
6728         Reported by Simon Josefsson.
6729
6730 2008-12-08  Bruno Haible  <bruno@clisp.org>
6731
6732         * m4/signbitl.m4 (gl_SIGNBIT_TEST_PROGRAM): Add a link check of signbit
6733         applied to variables. Needed on MacOS X 10.4/PowerPC.
6734         Reported by Simon Josefsson.
6735
6736 2008-12-08  William Pursell  <bill.pursell@gmail.com>  (tiny change)
6737         and Eric Blake  <ebb9@byu.net>
6738
6739         assert: honor --enable-assert
6740         * m4/assert.m4 (gl_ASSERT): Synchronize with autoconf 2.64, in
6741         order to honor --enable-assert, rather than treating it as a
6742         synonym for --disable-assert.
6743
6744 2008-12-08  Jim Meyering  <meyering@redhat.com>
6745
6746         * lib/posixtm.c: Remove now-useless declaration of mktime.
6747
6748         * build-aux/announce-gen (get_tool_versions): Accept .xz tarballs.
6749
6750 2008-12-07  Bruno Haible  <bruno@clisp.org>
6751
6752         * tests/test-lock.c (test_lock, test_rwlock, test_recursive_lock,
6753         test_once): Mark functions as static.
6754         * tests/test-tls.c (test_tls): Likewise.
6755
6756 2008-12-07  Bruno Haible  <bruno@clisp.org>
6757
6758         * lib/striconveha.h (uniconv_register_autodetect): Renamed from
6759         iconv_register_autodetect.
6760
6761 2008-12-07  Jim Meyering  <meyering@redhat.com>
6762
6763         posixtm.c: avoid a warning
6764         * lib/posixtm.c (posixtime): Don't initialize tm0.
6765         It's no longer needed to placate gcc4's -Wuninitialized,
6766         and the attempt to placate would elicit a new warning.
6767
6768         unicodeio.c: mark unused parameters
6769         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
6770         (fallback_failure_callback): Likewise.
6771
6772 2008-12-07  Bruno Haible  <bruno@clisp.org>
6773
6774         * gnulib-tool (func_create_testdir): When building the tests
6775         subdirectory, ignore the modules gnumakefile and maintainer-makefile.
6776         Reported by Simon Josefsson.
6777
6778 2008-12-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6779
6780         * doc/manywarnings.texi, doc/gnulib-intro.texi: Fix typos.
6781
6782 2008-12-06  Bruno Haible  <bruno@clisp.org>
6783
6784         * lib/c-stack.h (c_stack_action): Clarify possible side effects.
6785         Suggested by Eric Blake.
6786
6787 2008-12-06  Bruno Haible  <bruno@clisp.org>
6788
6789         Fix a c-stack test failure on MacOS X.
6790         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Require
6791         AC_CANONICAL_HOST. Define FAULT_YIELDS_SIGBUS. If set, install a signal
6792         handler for SIGBUS as well.
6793         * lib/c-stack.c (c_stack_action): If FAULT_YIELDS_SIGBUS is set,
6794         install a signal handler for SIGBUS as well.
6795         Reported by Bruce Dugan <bld0401@gmail.com> via Eric Blake.
6796
6797 2008-12-06  Bruno Haible  <bruno@clisp.org>
6798
6799         Advocacy documentation.
6800         * doc/gnulib-intro.texi (Benefits): New section.
6801         * doc/gnulib.texi: Update.
6802
6803 2008-12-06  Bruno Haible  <bruno@clisp.org>
6804
6805         Document the 'manywarnings' module.
6806         * doc/manywarnings.texi: New file.
6807         * doc/gnulib.texi: Include it.
6808
6809 2008-12-05  Eric Blake  <ebb9@byu.net>
6810
6811         tests: silence some gcc warnings
6812         * tests/test-getdate.c (LOG) [!DEBUG]: Mark no-op void.
6813         * tests/uniwidth/test-uc_width2.c (finish_interval): Avoid printf
6814         type mismatches.
6815
6816 2008-12-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
6817             Bruno Haible  <bruno@clisp.org>
6818
6819         * m4/openmp.m4 (AC_OPENMP): Do not define with Autoconf 2.62 or newer.
6820
6821 2008-11-29  Jim Meyering  <meyering@redhat.com>
6822
6823         unicodeio.c: mark unused parameters
6824         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
6825         (fallback_failure_callback): Likewise.
6826
6827         fts: fix a thinko
6828         * lib/fts.c (s_ifmt_shift_bits): Remove function.  Not needed after all.
6829         (set_stat_type): Return S_IF*-valued "type" directly.
6830         Prompted by James Youngman's spotting a related bug.
6831         Confirmed by further testing through find.
6832
6833         fts: provide dirent.d_type via FTSENT.fts_statp, when possible
6834         * lib/fts.c (D_TYPE): Define.
6835         (DT_UNKNOWN, DT_BLK, DT_CHR) [HAVE_STRUCT_DIRENT_D_TYPE]: Define.
6836         (DT_DIR, DT_FIFO, DT_LNK, DT_REG, DT_SOCK): Likewise.
6837         (s_ifmt_shift_bits): New function.
6838         (set_stat_type): New function.
6839         (fts_build): When not calling fts_stat, call set_stat_type
6840         to propagate dirent.d_type info to fts_read caller.
6841         * lib/fts_.h (FTSENT) [FTS_DEFER_STAT]: Mention that
6842         fts_statp->st_mode type information may be valid.
6843
6844 2008-11-28  Simon Josefsson  <simon@josefsson.org>
6845
6846         * lib/sys_time.in.h: Add extern "C" block for C++.  Suggested by
6847         Brian Dessent <brian@dessent.net>.  Reported by Sam Steingold
6848         <sds@gnu.org>.
6849
6850 2008-11-20  Bruno Haible  <bruno@clisp.org>
6851
6852         Attempt to work around an AIX 5.3, 6.1 compiler bug with include_next.
6853         * lib/math.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of
6854         INCLUDE_NEXT.
6855         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also
6856         INCLUDE_NEXT_AS_FIRST_DIRECTIVE.
6857         * modules/math (Makefile.am): Substitute
6858         INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of INCLUDE_NEXT.
6859         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
6860
6861 2008-11-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
6862             Bruno Haible  <bruno@clisp.org>
6863
6864         * lib/stdint.in.h: Define all type macros so that their expansion is
6865         a single typedef'ed token. Fixes a compilation failure in Boost which
6866         does "using ::int8_t;".
6867
6868 2008-11-18  Simon Josefsson  <simon@josefsson.org>
6869
6870         * m4/manywarnings.m4: New file with gl_MANYWARN_COMPLEMENT and
6871         gl_MANYWARN_ALL_GCC.
6872         * m4/warnings.m4: Removed gl_WARN_SUPPORTED and
6873         gl_WARN_COMPLEMENT.  Suggested by Bruno Haible <bruno@clisp.org>.
6874         * modules/manywarnings: New file.
6875         * MODULES.html.sh: Mention manywarnings module.
6876
6877 2008-11-18  Bruno Haible  <bruno@clisp.org>
6878
6879         * doc/gnulib-tool.texi (Unit tests): New section.
6880
6881 2008-11-18  Simon Josefsson  <simon@josefsson.org>
6882
6883         * top/maint.mk (refresh-po): Fix sed regexp to avoid problems with
6884         paths like 'lib/po/foo.po'.
6885
6886 2008-11-17  Simon Josefsson  <simon@josefsson.org>
6887
6888         * m4/warnings.m4: Improve code.  Reported by Ralf Wildenhues
6889         <Ralf.Wildenhues@gmx.de> and Paolo Bonzini <bonzini@gnu.org>.
6890
6891 2008-11-17  Simon Josefsson  <simon@josefsson.org>
6892
6893         * m4/warnings.m4: Use CPPFLAGS to really check whether the
6894         parameter works.
6895
6896 2008-11-17  Simon Josefsson  <simon@josefsson.org>
6897
6898         * m4/warnings.m4: Add gl_WARN_COMPLEMENT and gl_WARN_SUPPORTED.
6899
6900 2008-11-17  Bruce Korb  <bkorb@gnu.org>
6901
6902         * modules/parse-duration-tests: New file.
6903         * tests/test-parse-duration.sh: New file.
6904         * tests/test-parse-duration.c: New file.
6905
6906         New module 'parse-duration'.
6907         * lib/parse-duration.h: New file.
6908         * lib/parse-duration.c: New file.
6909         * modules/parse-duration: New file.
6910
6911 2008-11-17  Bruno Haible  <bruno@clisp.org>
6912
6913         * tests/test-select-out.sh: Comment out the first pipe test.
6914         Reported by Simon Josefsson.
6915
6916 2008-11-17  Bruno Haible  <bruno@clisp.org>
6917
6918         * modules/getaddrinfo (Depends-on): Add servent, hostent.
6919         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_SERVENT and
6920         gl_HOSTENT.
6921
6922 2008-11-17  Bruno Haible  <bruno@clisp.org>
6923
6924         * m4/sockets.m4 (gl_SOCKETS): After trying -lsocket, try also
6925         -lnetwork and -lnet. Needed for Haiku and BeOS.
6926
6927 2008-11-16  Bruno Haible  <bruno@clisp.org>
6928
6929         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix indentation.
6930
6931 2008-11-16  Bruno Haible  <bruno@clisp.org>
6932
6933         Avoid test failure on Haiku.
6934         * tests/test-fsync.c: Include <errno.h>.
6935         (main): Don't require that fsync (0) fails.
6936
6937 2008-11-15  Bruno Haible  <bruno@clisp.org>
6938
6939         New module 'hostent'.
6940         * modules/hostent: New file.
6941         * m4/hostent.m4: New file, based on code in m4/getaddrinfo.m4.
6942
6943 2008-11-15  Bruno Haible  <bruno@clisp.org>
6944
6945         New module 'servent'.
6946         * modules/servent: New file.
6947         * m4/servent.m4: New file, based on code in m4/getaddrinfo.m4.
6948
6949 2008-11-15  Bruno Haible  <bruno@clisp.org>
6950
6951         Avoid generating same test program with two different rules.
6952         * modules/frexp-nolibm-tests (Makefile.am): Rename test program from
6953         test-frexp to test-frexp-nolibm.
6954         * modules/frexpl-nolibm-tests (Makefile.am): Rename test program from
6955         test-frexpl to test-frexpl-nolibm.
6956
6957 2008-11-15  Bruno Haible  <bruno@clisp.org>
6958
6959         * modules/frexpl-tests (Makefile.am): Link test-frexpl with
6960         $(FREXPL_LIBM).
6961
6962 2008-11-15  Bruno Haible  <bruno@clisp.org>
6963
6964         * lib/netdb.in.h: Activate the definitions also when the system's
6965         <netdb.h> has 'struct addrinfo'.
6966         * m4/netdb_h.m4 (gl_HEADER_NETDB): Replace netdb.h also when it lacks
6967         EAI_OVERFLOW or AI_NUMERICSERV.
6968         * doc/posix-headers/netdb.texi: Document the problem.
6969
6970 2008-11-15  Bruno Haible  <bruno@clisp.org>
6971
6972         * tests/test-sched.c: Test also the existence of the SCHED_* macros.
6973
6974         Make the 'sched' module work on platforms where <sched.h> exists but
6975         is incomplete (such as Haiku).
6976         * lib/sched.in.h; Include the system's <sched.h> if it exists.
6977         (SCHED_FIFO, SCHED_RR, SCHED_OTHER): New macros.
6978         * m4/sched_h.m4 (gl_SCHED_H): Test whether <sched.h> exists and also
6979         defines SCHED_FIFO, SCHED_RR, SCHED_OTHER. Set HAVE_SCHED_H,
6980         HAVE_STRUCT_SCHED_PARAM.
6981         * modules/sched (Depends-on): Add include_next.
6982         (Makefile.am): Substitute HAVE_SCHED_H, INCLUDE_NEXT,
6983         PRAGMA_SYSTEM_HEADER, NEXT_SCHED_H, HAVE_STRUCT_SCHED_PARAM.
6984         * doc/posix-headers/sched.texi: Document the issue.
6985
6986 2008-11-13  Jim Meyering  <meyering@redhat.com>
6987
6988         test-argp-2: avoid test failure when PACKAGE_BUGREPORT is defined
6989         * tests/test-argp-2.sh: When PACKAGE_BUGREPORT was defined, this
6990         test would fail due to the difference in the Report bugs to ...
6991         line.  The expected address is empty, "<>", while the actual
6992         would contain e.g., "<bug-tar@gnu.org>".  Filter out any address.
6993
6994 2008-11-12  Bruno Haible  <bruno@clisp.org>
6995
6996         lstat: don't compile lstat.c on systems lacking lstat
6997         * m4/lstat.m4 (gl_FUNC_LSTAT): Don't compile lstat.c on systems
6998         which don't have lstat; this is handled by lib/sys_stat.in.h already.
6999         Reported by Daniel P. Berrange via Jim Meyering.
7000
7001 2008-11-12  Jim Meyering  <meyering@redhat.com>
7002
7003         * lib/unicodeio.c (unicode_to_mb): Correct spelling of u8_uctomb.
7004
7005 2008-11-12  Simon Josefsson  <simon@josefsson.org>
7006
7007         * modules/warnings (configure.ac): Do AC_SUBST([WARN_CFLAGS]) here
7008         instead.
7009
7010 2008-11-12  Bruno Haible  <bruno@clisp.org>
7011
7012         * lib/unicodeio.c: Include unistr.h.
7013         (utf8_wctomb): Remove function.
7014         (unicode_to_mb): Use utf8_uctomb instead of utf8_wctomb.
7015
7016 2008-11-12  Simon Josefsson  <simon@josefsson.org>
7017
7018         * m4/warnings.m4 (gl_WARN_INIT): Remove, suggested by Ralf
7019         Wildenhues <Ralf.Wildenhues@gmx.de> and Bruno Haible
7020         <bruno@clisp.org>.
7021         * modules/warnings (configure.ac): Don't call gl_WARN_INIT.
7022
7023 2008-11-12  Simon Josefsson  <simon@josefsson.org>
7024
7025         * doc/warnings.texi: New file, from Bruno Haible <bruno@clisp.org>.
7026         * doc/gnulib.texi: Add section for warnings.
7027
7028 2008-11-11  Bruno Haible  <bruno@clisp.org>
7029
7030         * lib/sockets.h: Add a comment.
7031
7032 2008-11-11  Karl Berry  <karl@gnu.org>
7033
7034         * config/srclist.txt (fdl.texi): add, syncing from gnustandards.
7035
7036 2008-11-11  Eric Blake  <ebb9@byu.net>
7037
7038         fdl.texi: avoid git symlinks
7039         * doc/fdl.texi: Copy, rather than link, fdl-1.3.texi.
7040
7041 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
7042
7043         * m4/warnings.m4 (gl_WARN_ADD): Don't AC_SUBST the empty string.
7044
7045 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
7046
7047         * m4/warnings.m4 (gl_WARN_INIT): Substitute WARN_CFLAGS.
7048         (gl_WARN_ADD): Substitute $2 if literal.
7049
7050 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
7051
7052         * m4/warning.m4: Remove.
7053
7054 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
7055
7056         * m4/warnings.m4: Almost complete rewrite. :-)
7057
7058 2008-11-10  Simon Josefsson  <simon@josefsson.org>
7059
7060         * modules/warnings: New module.
7061         * m4/warnings.m4: New file.
7062         * MODULES.html.sh: Mention warnings module.
7063         With review improvements from Paolo Bonzini <bonzini@gnu.org> and
7064         Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
7065
7066 2008-11-10  Eric Blake  <ebb9@byu.net>
7067
7068         fdl.texi: make a symlink to the latest version
7069         * doc/standards.texi: Revert today's earlier change.
7070         * doc/fdl-1.2.texi: Rename from old fdl.texi...
7071         * doc/fdl.texi: ...and replace this with a symlink to the newer
7072         fdl-1.3.texi.
7073
7074 2008-11-10  Bruno Haible  <bruno@clisp.org>
7075
7076         * tests/test-select-fd.c (main): Accept the result file name as fourth
7077         argument.
7078         * tests/test-select-in.sh: Pass t-select-in.tmp as fourth argument.
7079         * tests/test-select-out.sh: Pass t-select-out.tmp as fourth argument.
7080
7081 2008-11-10  Bruno Haible  <bruno@clisp.org>
7082
7083         * lib/netdb.in.h: Use HAVE_STRUCT_ADDRINFO, HAVE_DECL_GETADDRINFO,
7084         HAVE_DECL_FREEADDRINFO, HAVE_DECL_GAI_STRERROR, HAVE_DECL_GETNAMEINFO
7085         as autoconf-substituted macros.
7086         * m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Initialize these variables to 1.
7087         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require
7088         gl_NETDB_H_DEFAULTS. Set these variables.
7089         * modules/netdb (Makefile.am): Substitute these variables.
7090
7091 2008-11-10  Eric Blake  <ebb9@byu.net>
7092
7093         standards.texi: include correct file for FDL 1.3
7094         * doc/standards.texi (GNU Free Documentation License): Change
7095         include file to pull in FDL 1.3, not 1.2.
7096
7097         fdl.texi: revert accidental change to license
7098         * doc/fdl.texi: This is FDL 1.2, not 1.3.
7099
7100 2008-11-10  Bruno Haible  <bruno@clisp.org>
7101
7102         * m4/printf.m4 (gl_PRINTF_ENOMEM): Guess yes on Haiku. Use the
7103         cross-compiling guesses also when the native compile gives no result.
7104
7105 2008-11-10  Bruno Haible  <bruno@clisp.org>
7106
7107         * lib/spawni.c (__spawni): Force variable into the stack.
7108
7109 2008-11-10  Bruno Haible  <bruno@clisp.org>
7110
7111         Add support for Haiku.
7112         * lib/fbufmode.c (fbufmode): Test a symbol that is not only defined on
7113         glibc and BeOS, but also on Haiku.
7114         * lib/fpurge.c (fpurge): Likewise.
7115         * lib/freadable.c (freadable): Likewise.
7116         * lib/freadahead.c (freadahead): Likewise.
7117         * lib/freading.c (freading): Likewise.
7118         * lib/freadptr.c (freadptr): Likewise.
7119         * lib/freadseek.c (freadptrinc): Likewise.
7120         * lib/fseeko.c (rpl_fseeko): Likewise.
7121         * lib/fseterr.c (fseterr): Likewise.
7122         * lib/fwritable.c (fwritable): Likewise.
7123         * lib/fwriting.c (fwriting): Likewise.
7124         Reported by Ingo Weinhold <ingo_weinhold@gmx.de>.
7125
7126 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
7127
7128         * lib/config.charset: Treat Haiku like BeOS.
7129
7130 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
7131
7132         * lib/binary-io.h (O_BINARY, O_TEXT): Treat Haiku like BeOS.
7133         * lib/fcntl.in.h (O_BINARY, O_TEXT): Likewise.
7134
7135 2008-11-08  Bruno Haible  <bruno@clisp.org>
7136
7137         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Avoid using AC_CHECK_DECL inside
7138         AC_CACHE_CHECK.
7139
7140 2008-11-08  Bruno Haible  <bruno@clisp.org>
7141
7142         * modules/select-tests (configure.ac): Check for unistd.h, sys/wait.h.
7143
7144 2008-11-08  Bruno Haible  <bruno@clisp.org>
7145
7146         * tests/test-select-fd.c: New file.
7147         * tests/test-select-in.sh: New file.
7148         * tests/test-select-out.sh: New file.
7149         * tests/test-select-stdin.c: New file.
7150         * modules/select-tests (Files): Add the new files.
7151         (Depends-on): Add gettimeofday.
7152         (Makefile.am): Add test-select-in.sh, test-select-out.sh to TESTS.
7153         Set TESTS_ENVIRONMENT. Add test-select-fd, test-select-stdin to
7154         check_PROGRAMS. Define test_select_fd_LDADD, test_select_stdin_LDADD.
7155
7156 2008-11-06  Alexander V. Lukyanov  <lav@netis.ru>
7157             Bruno Haible  <bruno@clisp.org>
7158
7159         * lib/sys_stat.in.h: Enclose function definitions in extern "C".
7160
7161 2008-10-12  Giuseppe Scrivano  <gscrivano@gnu.org>
7162
7163         * build-aux/pmccabe2html: Added support for C++ source files.
7164
7165 2008-11-05  Ben Pfaff  <blp@gnu.org>
7166
7167         Fix lib/close.c build on Windows.
7168         * modules/close (Files): Add lib/w32sock.h.
7169
7170 2008-11-05  Joel E. Denny  <jdenny@ces.clemson.edu>
7171
7172         Accept Bison's NEWS format.
7173         * build-aux/announce-gen (print_news_deltas): Tweak
7174         $re_prefix.
7175
7176 2008-11-04  Bruno Haible  <bruno@clisp.org>
7177
7178         * modules/random_r (Maintainer): Add glibc.
7179
7180 2008-11-04  Simon Josefsson  <simon@josefsson.org>
7181
7182         * doc/alloca-opt.texi: Change license to GFDLv1.3+, as suggested
7183         by karl@freefriends.org (Karl Berry).
7184         * doc/alloca.texi: Likewise.
7185         * doc/c-ctype.texi: Likewise.
7186         * doc/c-strcase.texi: Likewise.
7187         * doc/c-strcaseeq.texi: Likewise.
7188         * doc/c-strcasestr.texi: Likewise.
7189         * doc/c-strstr.texi: Likewise.
7190         * doc/c-strtod.texi: Likewise.
7191         * doc/c-strtold.texi: Likewise.
7192         * doc/ctime.texi: Likewise.
7193         * doc/error.texi: Likewise.
7194         * doc/fdl.texi: Likewise.
7195         * doc/gcd.texi: Likewise.
7196         * doc/getdate.texi: Likewise.
7197         * doc/gnulib-intro.texi: Likewise.
7198         * doc/gnulib-tool.texi: Likewise.
7199         * doc/gnulib.texi: Likewise.
7200         * doc/inet_ntoa.texi: Likewise.
7201         * doc/maintain.texi: Likewise.
7202         * doc/make-stds.texi: Likewise.
7203         * doc/quote.texi: Likewise.
7204         * doc/regexprops-generic.texi: Likewise.
7205         * doc/standards.texi: Likewise.
7206         * doc/verify.texi: Likewise.
7207         * doc/visibility.texi: Likewise.
7208         * doc/gnulib.texi (GNU Free Documentation License): Include
7209         fdl-1.3.texi instead of fdl.texi.
7210
7211 2008-11-04  Simon Josefsson  <simon@josefsson.org>
7212
7213         * doc/fdl-1.3.texi: New file, from
7214         <http://www.gnu.org/licenses/fdl-1.3.texi>.
7215         * modules/fdl-1.3: Add.
7216         * MODULES.html.sh: Add fdl-1.3.
7217
7218 2008-11-03  Bruno Haible  <bruno@clisp.org>
7219
7220         Make determination of absolute name of header file work with AIX xlc.
7221         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Require
7222         AC_CANONICAL_HOST. On AIX, use "$CPP -C" rather than "$CPP" for
7223         preprocessing.
7224         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
7225         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
7226
7227 2008-11-03  Simon Josefsson  <simon@josefsson.org>
7228
7229         * top/maint.mk (COVERAGE_CCOPTS): Use --coverage instead of
7230         -fprofile-arcs -ftest-coverage.  Suggested by Ludovic Courtès
7231         <ludo@gnu.org>.
7232
7233 2008-11-02  Bruno Haible  <bruno@clisp.org>
7234
7235         Mark 'strpbrk' obsolete.
7236         * modules/strpbrk (Status, Notice): New sections.
7237         * modules/strtok_r (Depends-on): Add strpbrk.
7238
7239 2008-11-02  Bruno Haible  <bruno@clisp.org>
7240
7241         Mark 'strdup' obsolete.
7242         * modules/strdup (Status, Notice): New sections.
7243         * modules/findprog (Depends-on): Add strdup.
7244         * modules/getaddrinfo (Depends-on): Likewise.
7245         * modules/localename (Depends-on): Likewise.
7246         * modules/relocatable-lib (Depends-on): Likewise.
7247         * modules/relocatable-lib-lgpl (Depends-on): Likewise.
7248         * modules/relocatable-prog (Depends-on): Likewise.
7249         * modules/trim (Depends-on): Likewise.
7250         * modules/unictype/gen-ctype (Depends-on): Likewise.
7251         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
7252
7253 2008-11-02  Bruno Haible  <bruno@clisp.org>
7254
7255         Mark 'strcspn' obsolete.
7256         * modules/strcspn (Status, Notice): New sections.
7257
7258 2008-11-02  Bruno Haible  <bruno@clisp.org>
7259
7260         Mark 'rmdir' obsolete.
7261         * modules/rmdir (Status, Notice): New sections.
7262         * modules/clean-temp (Depends-on): Add rmdir.
7263         * modules/openat (Depends-on): Likewise.
7264
7265 2008-11-02  Bruno Haible  <bruno@clisp.org>
7266
7267         Mark 'raise' obsolete.
7268         * modules/raise (Status, Notice): New sections.
7269         (Include): Specify <signal.h>.
7270         * modules/stdio (Depends-on): Add raise.
7271         * modules/write (Depends-on): Likewise.
7272
7273 2008-11-02  Bruno Haible  <bruno@clisp.org>
7274
7275         Mark 'memset' obsolete.
7276         * modules/memset (Status, Notice): New sections.
7277
7278 2008-11-02  Bruno Haible  <bruno@clisp.org>
7279
7280         Mark 'memmove' obsolete.
7281         * modules/memmove (Status, Notice): New sections.
7282         * modules/argp (Depends-on): Add memmove.
7283         * modules/argz (Depends-on): Likewise.
7284         * modules/canonicalize (Depends-on): Likewise.
7285         * modules/canonicalize-lgpl (Depends-on): Likewise.
7286         * modules/fts (Depends-on): Likewise.
7287         * modules/getcwd (Depends-on): Likewise.
7288         * modules/human (Depends-on): Likewise.
7289         * modules/regex (Depends-on): Likewise.
7290         * modules/striconveh (Depends-on): Likewise.
7291         * modules/trim (Depends-on): Likewise.
7292         * modules/unistr/u8-move (Depends-on): Likewise.
7293         * modules/unistr/u16-move (Depends-on): Likewise.
7294         * modules/unistr/u32-move (Depends-on): Likewise.
7295
7296 2008-11-02  Bruno Haible  <bruno@clisp.org>
7297
7298         Mark 'memcpy' obsolete.
7299         * modules/memcpy (Status, Notice): New sections.
7300
7301 2008-11-02  Bruno Haible  <bruno@clisp.org>
7302
7303         Mark 'memcmp' obsolete.
7304         * modules/memcmp (Status, Notice): New sections.
7305         * modules/argmatch (Depends-on): Add memchr.
7306         * modules/backupfile (Depends-on): Likewise.
7307         * modules/c-strcasestr (Depends-on): Likewise.
7308         * modules/crypto/des (Depends-on): Likewise.
7309         * modules/csharpcomp (Depends-on): Likewise.
7310         * modules/fnmatch (Depends-on): Likewise.
7311         * modules/git-merge-changelog (Depends-on): Likewise.
7312         * modules/isnand (Depends-on): Likewise.
7313         * modules/isnand-nolibm (Depends-on): Likewise.
7314         * modules/isnanf (Depends-on): Likewise.
7315         * modules/isnanf-nolibm (Depends-on): Likewise.
7316         * modules/isnanl (Depends-on): Likewise.
7317         * modules/isnanl-nolibm (Depends-on): Likewise.
7318         * modules/mbchar (Depends-on): Likewise.
7319         * modules/memcoll (Depends-on): Likewise.
7320         * modules/quotearg (Depends-on): Likewise.
7321         * modules/regex (Depends-on): Likewise.
7322         * modules/relocatable-prog (Depends-on): Likewise.
7323         * modules/same (Depends-on): Likewise.
7324         * modules/signbit (Depends-on): Likewise.
7325         * modules/strcasestr-simple (Depends-on): Likewise.
7326         * modules/unictype/gen-ctype (Depends-on): Likewise.
7327         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
7328         * modules/uniname/uniname (Depends-on): Likewise.
7329         * modules/unistr/u8-cmp (Depends-on): Likewise.
7330
7331 2008-11-02  Bruno Haible  <bruno@clisp.org>
7332
7333         Mark 'memchr' obsolete.
7334         * modules/memchr (Status, Notice): New sections.
7335         * modules/argp (Depends-on): Add memchr.
7336         * modules/base64 (Depends-on): Likewise.
7337         * modules/c-strcasestr (Depends-on): Likewise.
7338         * modules/chdir-long (Depends-on): Likewise.
7339         * modules/fnmatch (Depends-on): Likewise.
7340         * modules/getsubopt (Depends-on): Likewise.
7341         * modules/git-merge-changelog (Depends-on): Likewise.
7342         * modules/glob (Depends-on): Likewise.
7343         * modules/strcasestr-simple (Depends-on): Likewise.
7344         * modules/strnlen (Depends-on): Likewise.
7345
7346 2008-11-02  Bruno Haible  <bruno@clisp.org>
7347
7348         Mark 'atexit' obsolete.
7349         * modules/atexit (Status, Notice): New sections.
7350         * modules/chdir-long (Depends-on): Add atexit.
7351         * modules/wait-process (Depends-on): Likewise.
7352
7353 2008-11-02  Bruno Haible  <bruno@clisp.org>
7354
7355         * gnulib-tool: New option --with-obsolete.
7356         (func_usage): Document it.
7357         (func_modules_transitive_closure): Drop obsolete dependencies if
7358         incobsolete is not true.
7359         (func_import): Read and save the incobsolete variable to the cache.
7360
7361 2008-11-02  Bruno Haible  <bruno@clisp.org>
7362
7363         * modules/TEMPLATE-EXTENDED: New field 'Status'.
7364         * gnulib-tool: New option --extract-status.
7365         (func_usage): Document it.
7366         (sed_extract_prog): Recognize it.
7367         (func_get_status): New function.
7368
7369 2008-10-30  Simon Josefsson  <simon@josefsson.org>
7370
7371         * modules/sockets (License): Change from LGPL to LGPLv2+.
7372
7373 2008-10-28  Simon Josefsson  <simon@josefsson.org>
7374
7375         * top/maint.mk: Add coverage rules, inspired by scripts in gnupdf.
7376
7377 2008-10-28  Simon Josefsson  <simon@josefsson.org>
7378
7379         * MODULES.html.sh (Support for systems lacking POSIX:2001):
7380         Mention times and sys_times.
7381         * modules/sys_times, modules/sys_times-tests: New modules.
7382         * modules/times, modules/times-tests: Likewise
7383         * m4/sys_times_h.m4: New file.
7384         * lib/sys_times.in.h: Likewise
7385         * lib/times.c: Likewise.
7386         * tests/test-sys_times.c: Likewise.
7387         * tests/test-times.c: Likewise.
7388         * doc/posix-headers/sys_times.texi: Update.
7389         * doc/posix-functions/times.texi: Update.
7390
7391 2008-10-28  Jim Meyering  <meyering@redhat.com>
7392
7393         * modules/tempname (Depends-on): Add lstat.
7394
7395         * modules/lstat (License): Relicense: LGPL -> LGPLv2+.
7396
7397 2008-10-28  Simon Josefsson  <simon@josefsson.org>
7398
7399         * gnulib-tool (func_emit_tests_Makefile_am): Revert last commit.
7400         * modules/argp-tests (test_argp_LDADD): Set EXEEXT here instead,
7401         using idiom used elsewhere in gnulib.
7402
7403 2008-10-27  Jim Meyering  <meyering@redhat.com>
7404
7405         * modules/gethostname (License): Relicense: LGPL -> LGPLv2+.
7406
7407 2008-10-27  Simon Josefsson  <simon@josefsson.org>
7408
7409         * gnulib-tool (func_emit_tests_Makefile_am): Set EXEEXT in
7410         TESTS_ENVIRONMENT, for shell scripts that needs to call built
7411         programs.
7412         * tests/test-argp-2.sh: Use $EXEEXT when needed.
7413
7414 2008-10-27  Simon Josefsson  <simon@josefsson.org>
7415
7416         * lib/sys_stat.in.h (lstat): Fix declaration for mingw.
7417
7418 2008-10-27  Bruno Haible  <bruno@clisp.org>
7419
7420         * tests/test-lstat.c: Include <stdio.h>.
7421
7422 2008-10-27  Simon Josefsson  <simon@josefsson.org>
7423
7424         * modules/lstat-tests: New module.
7425         * tests/test-lstat.c: New file.
7426
7427 2008-10-26  Jim Meyering  <meyering@redhat.com>
7428
7429         * lib/mkdir.c (rpl_mkdir) [_WIN32...]: Mark mode as an unused parameter.
7430
7431 2008-10-26  Simon Josefsson  <simon@josefsson.org>
7432             Bruno Haible  <bruno@clisp.org>
7433
7434         Fix a clash between the type DATADIR on Windows and the macro DATADIR.
7435         * modules/configmake (Include): Add a note that the include must come
7436         after all system headers.
7437         * lib/javaversion.c: Include configmake.h after all other includes.
7438
7439 2008-10-26  Bruno Haible  <bruno@clisp.org>
7440
7441         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Set default of
7442         HAVE_STRUCT_RANDOM_DATA to 1.
7443         (gl_STDLIB_H): Simplify.
7444
7445 2008-10-26  Simon Josefsson  <simon@josefsson.org>
7446
7447         * m4/stdlib_h.m4: Check for struct random_data.  Initialize and
7448         substitute HAVE_STRUCT_RANDOM_DATA.
7449         * lib/stdlib.in.h [!HAVE_STRUCT_RANDOM_DATA]: Provide struct
7450         random_data.
7451         * modules/stdlib (Makefile.am): Substitute
7452         HAVE_STRUCT_RANDOM_DATA.
7453
7454 2008-10-26  Simon Josefsson  <simon@josefsson.org>
7455
7456         * doc/gnulib.texi (@copying): Use GFDLv1.2+.
7457         * doc/gnulib-intro.texi (Copyright): Likewise.
7458
7459 2008-10-26  Simon Josefsson  <simon@josefsson.org>
7460
7461         * doc/gnulib.texi (Header files): C++ fixes, based on Bruno's
7462         findings.
7463
7464 2008-10-25  Ben Pfaff  <blp@cs.stanford.edu>
7465             Bruno Haible  <bruno@clisp.org>
7466
7467         * lib/unistd.in.h: Include <winsock2.h>.
7468         (socket, connect,accept, bind, getpeername, getsockname, getsockopt,
7469         listen, recv, send, recvfrom, sendto, setsockopt, shutdown, select):
7470         Provide dummy declarations.
7471         (gethostname): Override.
7472         * lib/sys_socket.in.h (gethostname): Provide dummy declaration.
7473         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Invoke
7474         gl_PREREQ_SYS_H_WINSOCK2.
7475         * modules/gethostname (Files): Add m4/sys_socket_h.m4.
7476         * doc/posix-functions/gethostname.texi: More details.
7477
7478 2008-10-25  Bruno Haible  <bruno@clisp.org>
7479
7480         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
7481         gl_UNISTD_H_DEFAULTS, gl_SYS_IOCTL_H_DEFAULTS only if they exist.
7482         * modules/sys_socket (Files): Remove m4/unistd_h.m4, m4/sys_ioctl_h.m4.
7483
7484         * lib/sys_socket.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); Move macro from
7485         here ...
7486         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); ... to here.
7487         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Remove invocation of
7488         gl_UNISTD_H_DEFAULTS.
7489
7490 2008-10-25  Eric Blake  <ebb9@byu.net>
7491
7492         signbit: avoid spurious compiler failure
7493         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Move non-constant
7494         declarations inside function.
7495
7496 2008-10-24  Simon Josefsson  <simon@josefsson.org>
7497             Bruno Haible  <bruno@clisp.org>
7498
7499         * lib/stdlib.in.h (@GNULIB_RANDOM_R@): Include stdint.h.
7500         * modules/random_r (Depends-on): Add stdint.
7501
7502 2008-10-24  Bruno Haible  <bruno@clisp.org>
7503
7504         * modules/intprops (License): Change to LGPLv2+, with approval by Paul
7505         Eggert.
7506         * modules/strerror (License): Likewise.
7507
7508 2008-10-24  Jim Meyering  <meyering@redhat.com>
7509
7510         sys_socket: fix typo that inhibited expansion of @GNULIB_SEND@
7511         * modules/sys_socket (Depends-on) [Depends-on]: Fix typo.
7512
7513 2008-10-24  Eric Blake  <ebb9@byu.net>
7514
7515         getgroups: fix compilation when getgroups is available
7516         * lib/getgroups.c (includes): Include <unistd.h> for getgroups,
7517         but with <config.h> override of getgroups disabled.
7518
7519 2008-10-24  Simon Josefsson  <simon@josefsson.org>
7520
7521         * doc/gnulib.texi (Header files): Add note about C++ problems.
7522         Explained by Bruno Haible <bruno@clisp.org>.
7523
7524 2008-10-23  Bruno Haible  <bruno@clisp.org>
7525
7526         Define a dummy SA_NODEFER macro on Interix.
7527         * lib/signal.in.h (SA_NODEFER): Define fallback.
7528         Reported by Aleksey Cheusov <cheusov@tut.by> via
7529         Thomas Klausner <wiz@netbsd.org> and Eric Blake.
7530
7531 2008-10-23  Bruno Haible  <bruno@clisp.org>
7532
7533         * modules/freadahead (License): Change to LGPLv2+.
7534         Suggested by Simon Josefsson.
7535
7536 2008-10-23  Jim Meyering  <meyering@redhat.com>
7537
7538         random_r: new module
7539         * modules/random_r: New file.
7540         * m4/random_r.m4: New file.
7541         * lib/random_r.c: New file, from glibc.
7542         * modules/random_r-tests: New file.
7543         * tests/test-random_r.c: New file.
7544         * lib/stdlib.in.h (srandom_r, initstate_r, setstate_r, random_r):
7545          Declare.
7546         (RAND_MAX): Define.
7547         * m4/stdlib_h.m4: Define and AC_SUBST GNULIB_RANDOM_R and HAVE_RANDOM_R.
7548         * modules/stdlib: Substitute them, too.
7549         * MODULES.html.sh (Extra functions based on POSIX:2001) [Misc]: Add it.
7550         * doc/glibc-functions/initstate_r.texi: Mention the new module.
7551         * doc/glibc-functions/random_r.texi: Likewise.
7552         * doc/glibc-functions/setstate_r.texi: Likewise.
7553         * doc/glibc-functions/srandom_r.texi: Likewise.
7554         * config/srclist.txt: Mention it.
7555
7556 2008-10-23  David Lutterkort  <lutter@redhat.com>
7557
7558         * modules/selinux-h: Search for LIB_SELINUX and mark it as a
7559         link requirement
7560
7561 2008-10-23  Jim Meyering  <meyering@redhat.com>
7562
7563         selinux-h: mark parameters of stub functions as intentionally unused
7564         * lib/se-selinux.in.h: Mark parameters as _UNUSED_PARAMETER_.
7565         * lib/se-context.in.h: Likewise.
7566
7567 2008-10-22  Simon Josefsson  <simon@josefsson.org>
7568
7569         * lib/sys_socket.in.h (FD_ISSET): Fix warnings under mingw.
7570
7571 2008-10-22  Simon Josefsson  <simon@josefsson.org>
7572
7573         * m4/getgroups.m4: Avoid invoking test with wrong parameters.
7574
7575 2008-10-22  Eric Blake  <ebb9@byu.net>
7576
7577         glthread/thread: avoid compiler warning
7578         * lib/glthread/thread.c (gl_thread_exit_func) [USE_WIN32_THREADS]:
7579         Add unreachable abort to silence compiler.
7580
7581 2008-10-22  Eric Blake  <ebb9@byu.net>
7582
7583         netdb: also supply struct addrinfo for cygwin 1.5.x
7584         * m4/netdb_h.m4 (gl_HEADER_NETDB): Check for incomplete header on
7585         older cygwin.
7586         * lib/netdb.in.h [!HAVE_STRUCT_ADDRINFO]: Also supply contents for
7587         cygwin.
7588         * doc/posix-headers/netdb.texi (netdb.h): Document this.
7589
7590 2008-10-22  Bruno Haible  <bruno@clisp.org>
7591
7592         * users.txt: Update entry about pspp.
7593
7594 2008-10-21  Bruno Haible  <bruno@clisp.org>
7595
7596         Simplification.
7597         * lib/sys_socket.in.h (_gl_close_fd_maybe_socket): Remove declaration.
7598         * lib/close.c (_gl_close_fd_maybe_socket): Make static.
7599
7600         Simplification.
7601         * lib/ioctl.c (ioctl): Don't undefine.
7602         * lib/socket.c (socket): Don't undefine.
7603
7604         Remove unused module indicator macros.
7605         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Don't define
7606         GNULIB_$1 as a C macro.
7607
7608         * doc/posix-functions/close.texi: Undo last change.
7609         * doc/posix-functions/ioctl.texi: Merge the two paragraphs about
7610         Windows platforms.
7611
7612 2008-10-21  Bruno Haible  <bruno@clisp.org>
7613
7614         Add gethostname() declaration to <unistd.h>.
7615         * lib/unistd.in.h (gethostname): New declaration.
7616         * lib/gethostname.c: Include <unistd.h>.
7617         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Require
7618         gl_UNISTD_H_DEFAULTS. Set HAVE_GETHOSTNAME.
7619         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETHOSTNAME
7620         and HAVE_GETHOSTNAME.
7621         * modules/gethostname (Depends-on): Add unistd.
7622         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7623         (Include): Specify <unistd.h>.
7624         * modules/unistd (Makefile.am): Substitute GNULIB_GETHOSTNAME and
7625         HAVE_GETHOSTNAME.
7626         * tests/test-gethostname.c: Include <unistd.h> first.
7627
7628 2008-10-21  Bruno Haible  <bruno@clisp.org>
7629
7630         * modules/poll-tests (Depends-on): Add sys_ioctl, ioctl.
7631         * modules/select-tests (Depends-on): Likewise.
7632         Reported by Simon Josefsson.
7633
7634 2008-10-21  Simon Josefsson  <simon@josefsson.org>
7635
7636         * lib/close.c: Add _gl_close_fd_maybe_socket from winsock.c.
7637         * lib/accept.c: New file, based on winsock.c.
7638         * lib/bind.c: New file, based on winsock.c.
7639         * lib/connect.c: New file, based on winsock.c.
7640         * lib/getpeername.c: New file, based on winsock.c.
7641         * lib/getsockname.c: New file, based on winsock.c.
7642         * lib/getsockopt.c: New file, based on winsock.c.
7643         * lib/ioctl.c: New file, based on winsock.c.
7644         * lib/listen.c: New file, based on winsock.c.
7645         * lib/recv.c: New file, based on winsock.c.
7646         * lib/recvfrom.c: New file, based on winsock.c.
7647         * lib/send.c: New file, based on winsock.c.
7648         * lib/sendto.c: New file, based on winsock.c.
7649         * lib/setsockopt.c: New file, based on winsock.c.
7650         * lib/shutdown.c: New file, based on winsock.c.
7651         * lib/socket.c: New file, based on winsock.c.
7652         * lib/w32sock.h: New file, based on winsock.c.
7653         * lib/winsock.c: Remove file.
7654         * modules/accept: Likewise.
7655         * modules/bind: Likewise.
7656         * modules/connect: Likewise.
7657         * modules/getpeername: Likewise.
7658         * modules/getsockname: Likewise.
7659         * modules/getsockopt: Likewise.
7660         * modules/ioctl: Likewise.
7661         * modules/listen: Likewise.
7662         * modules/recv: Likewise.
7663         * modules/recvfrom: Likewise.
7664         * modules/send: Likewise.
7665         * modules/sendto: Likewise.
7666         * modules/setsockopt: Likewise.
7667         * modules/shutdown: Likewise.
7668         * modules/socket: Use socket.c instead of winsock.c.
7669         * modules/sys_socket: Remove (unneeded?) dependency on winsock.c.
7670         * doc/posix-functions/accept.texi: Doc fix.
7671         * doc/posix-functions/bind.texi: Doc fix.
7672         * doc/posix-functions/close.texi: Doc fix.
7673         * doc/posix-functions/connect.texi: Doc fix.
7674         * doc/posix-functions/getpeername.texi: Doc fix.
7675         * doc/posix-functions/getsockname.texi: Doc fix.
7676         * doc/posix-functions/getsockopt.texi: Doc fix.
7677         * doc/posix-functions/ioctl.texi: Doc fix.
7678         * doc/posix-functions/listen.texi: Doc fix.
7679         * doc/posix-functions/recv.texi: Doc fix.
7680         * doc/posix-functions/recvfrom.texi: Doc fix.
7681         * doc/posix-functions/send.texi: Doc fix.
7682         * doc/posix-functions/sendto.texi: Doc fix.
7683         * doc/posix-functions/setsockopt.texi: Doc fix.
7684         * doc/posix-functions/shutdown.texi: Doc fix.
7685         * doc/posix-functions/socket.texi: Doc fix.
7686
7687 2008-10-20  Bruno Haible  <bruno@clisp.org>
7688
7689         Take into account the role of SIGABRT_COMPAT on Windows 2008.
7690         * lib/sigprocmask.c (SIGABRT_COMPAT, SIGABRT_COMPAT_MASK): New macros.
7691         (sigismember, sigaddset, sigdelset, sigfillset, rpl_signal): Handle it
7692         as an alias for SIGABRT.
7693         * lib/sigaction.c (SIGABRT_COMPAT): New macro.
7694         (sigaction): Map it to SIGABRT.
7695         Reported by Ramiro Polla <ramiro.polla@gmail.com> via Eric Blake.
7696
7697 2008-10-20  Bruno Haible  <bruno@clisp.org>
7698
7699         * lib/fts.c: Don't include lstat.h.
7700         * lib/openat.c: Include <sys/stat.h> instead of lstat.h.
7701
7702         Move the lstat() declaration to <sys/stat.h>.
7703         * lib/lstat.h: Remove file.
7704         * lib/sys_stat.in.h: Add special invocation convention.
7705         (lstat): New declaration.
7706         * lib/lstat.c (orig_lstat): New function.
7707         (rpl_lstat): Use orig_lstat instead of lstat.
7708         * m4/lstat.m4 (gl_FUNC_LSTAT): Require gl_SYS_STAT_H_DEFAULTS and
7709         AC_C_INLINE. Set REPLACE_LSTAT.
7710         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LSTAT
7711         and REPLACE_LSTAT.
7712         * modules/lstat (Files): Remove lib/lstat.h.
7713         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
7714         (Include): Specify <sys/stat.h> instead of lstat.h.
7715         * modules/sys_stat (Makefile.am): Substitute GNULIB_LSTAT and
7716         REPLACE_LSTAT.
7717         * NEWS: Mention the change.
7718
7719 2008-10-20  Bruno Haible  <bruno@clisp.org>
7720
7721         * modules/posix_spawn-tests: New file.
7722         * tests/test-posix_spawn3.c: New file.
7723
7724 2008-10-20  Bruno Haible  <bruno@clisp.org>
7725
7726         * modules/posix_spawnp-tests (Depends-on): Add sys_wait.
7727         * tests/test-posix_spawn1.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
7728         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Remove fallback definitions.
7729         * tests/test-posix_spawn2.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
7730         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Likewise.
7731
7732 2008-10-20  Bruno Haible  <bruno@clisp.org>
7733
7734         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Test against another bug
7735         of posix_spawn on AIX 5.3.
7736
7737 2008-10-20  Bruno Haible  <bruno@clisp.org>
7738
7739         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Make the check on MacOS X.
7740
7741 2008-10-20  Bruno Haible  <bruno@clisp.org>
7742
7743         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Use AC_LANG_SOURCE instead
7744         of AC_LANG_PROGRAM.
7745
7746 2008-10-20  Simon Josefsson  <simon@josefsson.org>
7747
7748         * lib/netdb.in.h: Don't define GNU specific constants until they
7749         are supported or needed.  Reported by Bruno Haible
7750         <bruno@clisp.org>.
7751
7752 2008-10-20  Simon Josefsson  <simon@josefsson.org>
7753
7754         * lib/canon-host.c: Include netdb.h instead of getaddrinfo.h.
7755
7756 2008-10-20  Simon Josefsson  <simon@josefsson.org>
7757
7758         * lib/getaddrinfo.h: Remove file.
7759         * modules/getaddrinfo: Reflect move from getaddrinfo.h to netdb.h.
7760         * m4/getaddrinfo.m4: Call gl_HEADER_NETDB.  Don't check for netdb.h.
7761         * lib/netdb.in.h: Add declarations from getaddrinfo.h.
7762         * m4/netdb_h.m4: Initialize GNULIB_GETADDRINFO to 0.
7763         * modules/netdb: Substitute GNULIB_GETADDRINFO.
7764         * lib/getaddrinfo.c: Include netdb.h instead of getaddrinfo.h.
7765         * tests/test-getaddrinfo.c: Likewise.
7766         * lib/gai_strerror.c: Likewise.  Also drop HAVE_NETDB_H check.
7767         * NEWS: Mention change.
7768
7769 2008-10-19  Bruno Haible  <bruno@clisp.org>
7770
7771         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Remove unneeded code.
7772
7773 2008-10-19  Bruno Haible  <bruno@clisp.org>
7774
7775         * lib/wait-process.c: Include simply <sys/wait.h>.
7776         (waitpid, WTERMSIG, WCOREDUMP, WEXITSTATUS, WIFSIGNALED, WIFEXITED,
7777         WIFSTOPPED): Remove fallback definitions.
7778         * modules/wait-process (Depends-on): Add sys_wait.
7779
7780         New module 'sys_wait'.
7781         * modules/sys_wait: New file.
7782         * lib/sys_wait.in.h: New file, partially copied from
7783         lib/wait-process.c.
7784         * m4/sys_wait_h.m4: New file.
7785         * doc/posix-headers/sys_wait.texi: Mention the new module.
7786
7787 2008-10-19  Bruno Haible  <bruno@clisp.org>
7788
7789         * m4/wait-process.m4 (gl_WAIT_PROCESS): Remove test for unistd.h.
7790
7791 2008-10-19  Bruno Haible  <bruno@clisp.org>
7792
7793         Assume that waitpid() fills an 'int' status, not a 'union wait'.
7794         * lib/wait-process.c (WAIT_T): Remove type.
7795         (WTERMSIG, WCOREDUMP, WEXITSTATUS): Define fallbacks using bit masks.
7796         (wait_subprocess): Update.
7797
7798 2008-10-19  Bruno Haible  <bruno@clisp.org>
7799
7800         New module 'atoll'.
7801         * modules/atoll: New file.
7802         * lib/stdlib.in.h (atoll): New declaration.
7803         * lib/atoll.c: New file, from glibc with modifications.
7804         * m4/atoll.m4: New file.
7805         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_ATOLL,
7806         HAVE_ATOLL.
7807         * modules/stdlib (Makefile.am): Substitute GNULIB_ATOLL, HAVE_ATOLL.
7808         * doc/posix-functions/atoll.texi: Mention the new module.
7809
7810 2008-10-19  Bruno Haible  <bruno@clisp.org>
7811
7812         Add strtoull() declaration to <stdlib.h>.
7813         * lib/stdlib.in.h (strtoull): New declaration.
7814         * m4/strtoull.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
7815         Set HAVE_STRTOULL.
7816         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOULL,
7817         HAVE_STRTOULL.
7818         * modules/strtoull (Depends-on): Add stdlib.
7819         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7820         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOULL,
7821         HAVE_STRTOULL.
7822
7823 2008-10-19  Bruno Haible  <bruno@clisp.org>
7824
7825         Add strtoll() declaration to <stdlib.h>.
7826         * lib/stdlib.in.h (strtoll): New declaration.
7827         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
7828         Set HAVE_STRTOLL.
7829         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOLL,
7830         HAVE_STRTOLL.
7831         * modules/strtoll (Depends-on): Add stdlib.
7832         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7833         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOLL, HAVE_STRTOLL.
7834
7835 2008-10-19  Bruno Haible  <bruno@clisp.org>
7836
7837         * modules/bcopy (Depends-on): Add strings.
7838         (Include): Specify <strings.h>.
7839
7840 2008-10-19  Bruno Haible  <bruno@clisp.org>
7841
7842         * doc/posix-functions/atexit.texi: Update doc regarding mingw.
7843
7844 2008-10-19  Bruno Haible  <bruno@clisp.org>
7845
7846         * lib/openat-die.c (openat_save_fail, openat_restore_fail): Rename
7847         the parameter from 'errno' to 'errnum'. Fixes a compilation error on
7848         mingw.
7849
7850 2008-10-19  Bruno Haible  <bruno@clisp.org>
7851
7852         * lib/atanl.c: Don't include isnanl.h.
7853         * lib/cosl.c: Likewise.
7854         * lib/ldexpl.c: Likewise.
7855         * lib/logl.c: Likewise.
7856         * lib/sinl.c: Likewise.
7857         * lib/sqrtl.c: Likewise.
7858         * lib/tanl.c: Likewise.
7859
7860         Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
7861         * lib/isnanf.h: Remove file.
7862         * lib/isnand.h: Remove file.
7863         * lib/isnanl.h: Remove file.
7864         * lib/math.in.h: Include the contents of lib/isnanf.h, lib/isnand.h,
7865         lib/isnanl.h. Use HAVE_ISNANF, HAVE_ISNAND, HAVE_ISNANL as substituted
7866         macros.
7867         * m4/isnanf.m4 (gl_FUNC_ISNANF): Require gl_MATH_H_DEFAULTS. Set
7868         HAVE_ISNANF, don't define it as a C macro.
7869         * m4/isnand.m4 (gl_FUNC_ISNAND): Require gl_MATH_H_DEFAULTS. Set
7870         HAVE_ISNAND, don't define it as a C macro.
7871         * m4/isnanl.m4 (gl_FUNC_ISNANL): Require gl_MATH_H_DEFAULTS. Set
7872         HAVE_ISNANL, don't define it as a C macro.
7873         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_ISNAN[FDL] and
7874         HAVE_ISNAN[FDL].
7875         * modules/isnanf (Files): Remove lib/isnanf.h.
7876         (Depends-on): Add math.
7877         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
7878         (Include): Specify <math.h> instead of isnanf.h.
7879         * modules/isnand (Files): Remove lib/isnand.h.
7880         (Depends-on): Add math.
7881         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
7882         (Include): Specify <math.h> instead of isnand.h.
7883         * modules/isnanl (Files): Remove lib/isnanl.h.
7884         (Depends-on): Add math.
7885         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
7886         (Include): Specify <math.h> instead of isnanl.h.
7887         * modules/math (Makefile.am): Substitute GNULIB_ISNAN[FDL] and
7888         HAVE_ISNAN[FDL].
7889         * tests/test-isnanf.c: Include <math.h> instead of isnanf.h.
7890         * tests/test-isnand.c: Include <math.h> instead of isnand.h.
7891         * tests/test-isnanl.c: Include <math.h> instead of isnanl.h.
7892         * NEWS: Mention the change.
7893
7894 2008-10-18  Bruno Haible  <bruno@clisp.org>
7895
7896         Add getusershell(), setusershell(), endusershell() declarations to
7897         <unistd.h>.
7898         * lib/unistd.in.h (getusershell, setusershell, endusershell): New
7899         declarations.
7900         * lib/getusershell.c: Include unistd.h.
7901         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Require
7902         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
7903         HAVE_GETUSERSHELL.
7904         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETUSERSHELL
7905         and HAVE_GETUSERSHELL.
7906         * modules/getusershell (Depends-on): Add unistd, extensions.
7907         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7908         (Include): Specify <unistd.h>.
7909         * modules/unistd (Makefile.am): Substitute GNULIB_GETUSERSHELL and
7910         HAVE_GETUSERSHELL.
7911
7912 2008-10-18  Bruno Haible  <bruno@clisp.org>
7913
7914         Add a getloadavg() declaration to <stdlib.h>.
7915         * lib/stdlib.in.h; Include <sys/loadavg.h> when needed for the
7916         getloadavg declaration.
7917         (getloadavg): New declaration.
7918         * lib/getloadavg.c: Include <stdlib.h> first.
7919         * m4/getloadavg.m4 (gl_GETLOADAVG): Require gl_STDLIB_H_DEFAULTS and
7920         AC_USE_SYSTEM_EXTENSIONS. Test whether sys/loadavg.h exists. Set
7921         HAVE_SYS_LOADAVG_H and HAVE_DECL_GETLOADAVG.
7922         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GETLOADAVG,
7923         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
7924         * modules/getloadavg (Depends-on): Add stdlib, extensions.
7925         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
7926         (Include): Specify <stdlib.h>.
7927         * modules/stdlib (Makefile.am): Substitute GNULIB_GETLOADAVG,
7928         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
7929
7930 2008-10-18  Bruno Haible  <bruno@clisp.org>
7931
7932         * lib/dirchownmod.c: Don't include lchmod.h.
7933
7934         Move the lchmod() declaration to <sys/stat.h>.
7935         * lib/lchmod.h: Remove file.
7936         * lib/sys_stat.in.h: Add placeholder for GL_LINK_WARNING.
7937         (lchmod): New declaration, moved here from lib/lchown.h.
7938         * m4/lchmod.m4 (gl_FUNC_LCHMOD): Require gl_SYS_STAT_H_DEFAULTS and
7939         AC_USE_SYSTEM_EXTENSIONS. Set HAVE_LCHMOD.
7940         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LCHMOD
7941         and HAVE_LCHMOD.
7942         * modules/lchmod (Files): Remove lib/lchmod.h.
7943         (Depends-on): Add sys_stat, extensions.
7944         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
7945         (Include): Specify <sys/stat.h> instead of lchmod.h.
7946         * modules/sys_stat (Depends-on): Add link-warning.
7947         (Makefile.am): Substitute GNULIB_LCHMOD, HAVE_LCHMOD, and the
7948         definition of GL_LINK_WARNING.
7949         * NEWS: Mention the change.
7950
7951 2008-10-18  Bruno Haible  <bruno@clisp.org>
7952
7953         * lib/fchdir.c: Don't include dirfd.h.
7954         * lib/fts.c: Likewise.
7955         * lib/getcwd.c: Likewise.
7956         * lib/glob.c: Likewise.
7957
7958         Move the dirfd() declaration to <dirent.h>.
7959         * lib/dirfd.h: Remove file.
7960         * lib/dirent.in.h: Add placeholder for GL_LINK_WARNING.
7961         (dirfd): New declaration.
7962         * lib/dirfd.c: Include <dirent.h> instead of dirfd.h.
7963         * m4/dirfd.m4 (gl_FUNC_DIRFD): Require gl_DIRENT_H_DEFAULTS and
7964         AC_USE_SYSTEM_EXTENSIONS. Invoke gl_REPLACE_DIRENT_H. Set
7965         HAVE_DECL_DIRFD.
7966         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_DIRFD and
7967         HAVE_DECL_DIRFD.
7968         * modules/dirfd (Files): Remove lib/dirfd.h.
7969         (Depends-on): Add dirent, extensions.
7970         (configure.ac): Invoke gl_DIRENT_MODULE_INDICATOR.
7971         (Include): Specify <dirent.h> instead of dirfd.h.
7972         * modules/dirent (Depends-on): Add link-warning.
7973         (Makefile.am): Substitute GNULIB_DIRFD, HAVE_DECL_DIRFD, and
7974         definition of GL_LINK_WARNING.
7975         * NEWS: Mention the change.
7976
7977 2008-10-18  Bruno Haible  <bruno@clisp.org>
7978
7979         Move the euidaccess() declaration to <unistd.h>.
7980         * lib/euidaccess.h: Remove file.
7981         * lib/unistd.in.h (euidaccess): New declaration.
7982         * lib/euidaccess.c: Don't include euidaccess.h.
7983         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Require gl_UNISTD_H_DEFAULTS.
7984         Don't check whether euidaccess is declared. Set HAVE_EUIDACCESS.
7985         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_EUIDACCESS
7986         and HAVE_EUIDACCESS.
7987         * modules/euidaccess (Files): Remove lib/euidaccess.h.
7988         (Depends-on): Add unistd.
7989         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
7990         (Include): Specify <unistd.h> instead of euidaccess.h.
7991         * modules/unistd (Makefile.am): Substitute GNULIB_EUIDACCESS and
7992         HAVE_EUIDACCESS.
7993         * NEWS: Mention the change.
7994
7995 2008-10-18  Bruno Haible  <bruno@clisp.org>
7996
7997         * lib/xgetdomainname.c: Include <unistd.h> instead of getdomainname.h.
7998
7999         Move the getdomainname() declaration to <unistd.h>.
8000         * lib/getdomainname.h: Remove file.
8001         * lib/unistd.in.h (getdomainname): New declaration.
8002         * lib/getdomainname.c: Include <unistd.h> instead of getdomainname.h.
8003         * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Require
8004         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
8005         HAVE_GETDOMAINNAME.
8006         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
8007         GNULIB_GETDOMAINNAME and HAVE_GETDOMAINNAME.
8008         * modules/getdomainname (Files): Remove lib/getdomainname.h.
8009         (Depends-on): Add unistd, extensions.
8010         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
8011         (Includes): Specify <unistd.h> instead of getdomainname.h.
8012         * modules/unistd (Makefile.am): Substitute GNULIB_GETDOMAINNAME and
8013         HAVE_GETDOMAINNAME.
8014         * NEWS: Mention the change.
8015
8016 2008-10-18  Bruno Haible  <bruno@clisp.org>
8017
8018         * modules/dirent: New file.
8019         * m4/dirent_h.m4: New file.
8020         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_DIRENT_H_DEFAULTS.
8021         Invoke gl_REPLACE_DIRENT_H. Don't assign DIRENT_H directly.
8022         * modules/fchdir (Files): Remove lib/dirent.in.h.
8023         (Depends-on): Add dirent.
8024         (Makefile.am): Move rules to modules/dirent.
8025         * doc/posix-headers/dirent.texi: Mention the new module.
8026
8027 2008-10-18  Bruno Haible  <bruno@clisp.org>
8028
8029         Avoid -Wunused-parameter warnings in public gnulib header files.
8030         * m4/gnulib-common.m4 (gl_COMMON_BODY): Define _UNUSED_PARAMETER_ as a
8031         macro.
8032         * lib/unistr.h (u32_mbtouc_unsafe, u32_mbtouc): Use it.
8033
8034 2008-10-18  Bruno Haible  <bruno@clisp.org>
8035
8036         * doc/glibc-functions/dirfd.texi: Mention the module 'dirfd'.
8037         * doc/glibc-functions/error.texi: Mention the module 'error'.
8038         * doc/glibc-functions/euidaccess.texi: Mention the module 'euidaccess'.
8039         * doc/glibc-functions/getdomainname.texi: Mention the module
8040         'getdomainname'.
8041         * doc/glibc-functions/getloadavg.texi: Mention the module 'getloadavg'.
8042         * doc/glibc-functions/getpagesize.texi: Mention the module
8043         'getpagesize'.
8044         * doc/glibc-functions/getusershell.texi: Mention the module
8045         'getusershell'.
8046         * doc/glibc-functions/isnanl.texi: Mention the module 'isnanl'.
8047         * doc/glibc-functions/lchmod.texi: Mention the module 'lchmod'.
8048         * doc/glibc-functions/mempcpy.texi: Mention the module 'mempcpy'.
8049         * doc/glibc-functions/memrchr.texi: Mention the module 'memrchr'.
8050         * doc/glibc-functions/mkdtemp.texi: Mention the module 'mkdtemp'.
8051         * doc/glibc-functions/rpmatch.texi: Mention the module 'rpmatch'.
8052         * doc/glibc-functions/stpcpy.texi: Mention the module 'stpcpy'.
8053         * doc/glibc-functions/stpncpy.texi: Mention the module 'stpncpy'.
8054         * doc/glibc-functions/strchrnul.texi: Mention the module 'strchrnul'.
8055         * doc/glibc-functions/strndup.texi: Mention the module 'strndup'.
8056         * doc/glibc-functions/strnlen.texi: Mention the module 'strnlen'.
8057         * doc/glibc-functions/strsep.texi: Mention the module 'strsep'.
8058         * doc/glibc-functions/timegm.texi: Mention the module 'timegm'.
8059         * doc/glibc-functions/vasprintf.texi: Mention the module 'vasprintf'.
8060
8061 2008-10-17  Bruno Haible  <bruno@clisp.org>
8062
8063         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): On platforms other than
8064         HP-UX and IRIX, use -0.0L.
8065         * tests/test-ceill.c (minus_zero): Likewise.
8066         * tests/test-floorl.c (minus_zero): Likewise.
8067         * tests/test-frexpl.c (minus_zero): Likewise.
8068         * tests/test-isnan.c (minus_zerol): Likewise.
8069         * tests/test-isnanl.h (minus_zero): Likewise.
8070         * tests/test-ldexpl.c (minus_zero): Likewise.
8071         * tests/test-roundl.c (minus_zero): Likewise.
8072         * tests/test-signbit.c (minus_zerol): Likewise.
8073         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
8074         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
8075         * tests/test-truncl.c (minus_zero): Likewise.
8076         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
8077         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
8078         Reported by Markus Armbruster <armbru@redhat.com> via Jim Meyering
8079         and by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
8080
8081 2008-10-17  Bruno Haible  <bruno@clisp.org>
8082
8083         Avoid gcc warnings because of #pragma GCC system_header on older gcc.
8084         * lib/arpa_inet.in.h: Encloses reference to PRAGMA_SYSTEM_HEADER so
8085         that it gets activated only for gcc >= 3.0.
8086         * lib/dirent.in.h: Likewise.
8087         * lib/errno.in.h: Likewise.
8088         * lib/fcntl.in.h: Likewise.
8089         * lib/float.in.h: Likewise.
8090         * lib/iconv.in.h: Likewise.
8091         * lib/inttypes.in.h: Likewise.
8092         * lib/locale.in.h: Likewise.
8093         * lib/math.in.h: Likewise.
8094         * lib/netdb.in.h: Likewise.
8095         * lib/netinet_in.in.h: Likewise.
8096         * lib/search.in.h: Likewise.
8097         * lib/signal.in.h: Likewise.
8098         * lib/spawn.in.h: Likewise.
8099         * lib/stdarg.in.h: Likewise.
8100         * lib/stdint.in.h: Likewise.
8101         * lib/stdio.in.h: Likewise.
8102         * lib/stdlib.in.h: Likewise.
8103         * lib/string.in.h: Likewise.
8104         * lib/strings.in.h: Likewise.
8105         * lib/sys_file.in.h: Likewise.
8106         * lib/sys_ioctl.in.h: Likewise.
8107         * lib/sys_select.in.h: Likewise.
8108         * lib/sys_socket.in.h: Likewise.
8109         * lib/sys_stat.in.h: Likewise.
8110         * lib/sys_time.in.h: Likewise.
8111         * lib/sysexits.in.h: Likewise.
8112         * lib/time.in.h: Likewise.
8113         * lib/unistd.in.h: Likewise.
8114         * lib/wchar.in.h: Likewise.
8115         * lib/wctype.in.h: Likewise.
8116         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
8117
8118 2008-10-17  Jim Meyering  <meyering@redhat.com>
8119
8120         ignore-value: don't depend on inline module
8121         * modules/ignore-value (Depends-on): Remove 'inline'.
8122         (configure.ac): Instead, add AC_REQUIRE([AC_C_INLINE]) here.
8123         Suggestion from Bruno Haible.
8124
8125 2008-10-17  Bruno Haible  <bruno@clisp.org>
8126
8127         New implementation of condition variables for Win32.
8128         * lib/glthread/cond.h (struct gl_waitqueue_link): New type.
8129         (gl_linked_waitqueue_t): New type.
8130         (gl_cond_t): Use it.
8131         * lib/glthread/cond.c (struct gl_waitqueue_element): New type.
8132         (gl_waitqueue_init, gl_waitqueue_add, gl_waitqueue_remove,
8133         gl_waitqueue_notify_first, gl_waitqueue_notify_all): New functions.
8134         (glthread_cond_init_func, glthread_cond_wait_func,
8135         glthread_cond_timedwait_func, glthread_cond_signal_func,
8136         glthread_cond_broadcast_func, glthread_cond_destroy_func):
8137         Reimplemented on the basis of gl_linked_waitqueue_t.
8138         * lib/glthread/lock.h (gl_carray_waitqueue_t): Renamed from
8139         gl_waitqueue_t.
8140         (gl_rwlock_t): Update.
8141         * lib/glthread/lock.c (gl_waitqueue_t): Alias to gl_carray_waitqueue_t.
8142
8143 2008-10-17  Simon Josefsson  <simon@josefsson.org>
8144
8145         * modules/recvfrom (Depends-on): Add dependency on getpeername.
8146         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
8147
8148 2008-10-17  Jim Meyering  <meyering@redhat.com>
8149
8150         ignore-value: new module
8151         * modules/ignore-value: New file.
8152         * lib/ignore-value.h: New file.
8153         * MODULES.html.sh (Compiler warning management): New section,
8154         just for this module.  More to come.
8155
8156 2008-10-16  Paul Eggert  <eggert@cs.ucla.edu>
8157
8158         open-safer.c: avoid 'signed and unsigned in conditional...' warning
8159         * lib/open-safer.c (open_safer): Use an "if/else" statement in place
8160         of the ternary operator.  Reported by Reuben Thomas <rrt@sc3d.org>.
8161
8162 2008-10-16  Jim Meyering  <meyering@redhat.com>
8163
8164         openat-die.c: avoid 'no previous prototype' warning
8165         * lib/openat-die.c: Include "openat.h".
8166         Reported by Reuben Thomas <rrt@sc3d.org>.
8167
8168 2008-10-16  Simon Josefsson  <simon@josefsson.org>
8169
8170         * m4/netdb_h.m4: Assume that if netdb.h exists, it works.
8171         * lib/netdb.in.h: Fix typo.
8172         Reported by Bruno Haible  <bruno@clisp.org>
8173
8174         * lib/netdb.in.h: Include sys/socket.h for platforms without
8175         netdb.h, to get structures like hostent on MinGW.
8176         * modules/netdb (Depends-on): Add sys_socket.
8177
8178 2008-10-15  Simon Josefsson  <simon@josefsson.org>
8179
8180         * modules/netdb, modules/netdb-tests: New file.
8181         * m4/netdb_h.m4: New file.
8182         * lib/netdb.in.h: Add, currently just an empty file pending
8183         definitions.
8184         * tests/test-netdb.c: New file.
8185         * doc/posix-headers/netdb.texi: Mention that we replace it if
8186         needed.
8187         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
8188         netdb.
8189
8190 2008-10-15  Simon Josefsson  <simon@josefsson.org>
8191
8192         * doc/gnulib.texi (Getaddrinfo and WINVER): Sync documentation
8193         with code.
8194
8195 2008-10-13  Bruno Haible  <bruno@clisp.org>
8196
8197         * lib/glthread/cond.c (glthread_cond_wait_func,
8198         glthread_cond_timedwait_func): Add a comment.
8199
8200 2008-10-13  Yoann Vandoorselaere  <yoann@prelude-ids.org>
8201
8202         * tests/test-poll.c: Include <sys/ioctl.h>, for ioctl().
8203         * tests/test-select.c: Likewise,
8204
8205 2008-10-13  Bruno Haible  <bruno@clisp.org>
8206
8207         * lib/glthread/cond.c (glthread_cond_wait_func,
8208         glthread_cond_timedwait_func): Fix variable name.
8209         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
8210
8211 2008-10-13  Paolo Bonzini  <bonzini@gnu.org>
8212
8213         fix getaddrinfo emulation for systems with struct sockaddr.sa_len
8214         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect
8215         struct sockaddr.sa_len.
8216         * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
8217
8218 2008-10-13  Simon Josefsson  <simon@josefsson.org>
8219
8220         * build-aux/pmccabe2html: Add css and css_url parameters.
8221
8222 2008-10-12  Bruno Haible  <bruno@clisp.org>
8223
8224         * tests/test-sameacls.c (main) [AIX]: Clear type argument before
8225         calling aclx_get.
8226         Reported by Rainer Tammer <tammer@tammer.net>.
8227
8228 2008-10-12  Bruno Haible  <bruno@clisp.org>
8229
8230         Use msvcrt aware primitives for creation/termination of Win32 threads.
8231         * lib/glthread/thread.c: Include <process.h>.
8232         (glthread_create_func): Use _beginthreadex instead of CreateThread.
8233         (wrapper_func): Update signature.
8234         (gl_thread_exit_func): Use _endthreadex instead of EndThread.
8235
8236 2008-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
8237             Bruno Haible  <bruno@clisp.org>
8238
8239         Provide a Win32 implementation of the 'cond' module.
8240         * lib/glthread/cond.h [USE_WIN32]: New implementation.
8241         * lib/glthread/cond.c (glthread_cond_init_func,
8242         glthread_cond_wait_func, glthread_cond_timedwait_func,
8243         glthread_cond_signal_func, glthread_cond_broadcast_func,
8244         glthread_cond_destroy_func) [USE_WIN32]: New functions.
8245         * modules/cond (Dependencies): Add gettimeofday.
8246
8247 2008-10-11  Bruno Haible  <bruno@clisp.org>
8248
8249         Make sleep work on older versions of mingw.
8250         * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
8251         only whether it exists.
8252         * doc/posix-functions/sleep.texi: Mention the problem with older
8253         versions of mingw.
8254
8255 2008-10-11  Bruno Haible  <bruno@clisp.org>
8256
8257         New module 'shutdown'.
8258         * modules/shutdown: New file.
8259         * lib/sys_socket.in.h (shutdown): New declaration.
8260         * lib/winsock.c (shutdown): New function.
8261         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
8262         GNULIB_SHUTDOWN.
8263         * modules/sys_socket (Makefile.am): Substitute GNULIB_SHUTDOWN.
8264         * doc/posix-functions/shutdown.texi: Document the new module.
8265
8266 2008-10-11  Jim Meyering  <meyering@redhat.com>
8267
8268         * lib/fclose.c: Fix typo in comment: s/close/fclose/.
8269
8270 2008-10-11  Bruno Haible  <bruno@clisp.org>
8271
8272         New module 'fclose'.
8273         * modules/fclose: New file.
8274         * lib/stdio.in.h (fclose): New declaration.
8275         * lib/fclose.c: New file.
8276         * m4/fclose.m4: New file.
8277         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FCLOSE,
8278         REPLACE_FCLOSE.
8279         * m4/close.m4 (gl_REPLACE_CLOSE): Invoke gl_REPLACE_FCLOSE.
8280         * modules/stdio (Makefile.am): Substitute GNULIB_FCLOSE,
8281         REPLACE_FCLOSE.
8282         * modules/close (Depends-on): fclose.
8283         * doc/posix-functions/fclose.texi: Mention the problem on Windows.
8284
8285 2008-10-11  Bruno Haible  <bruno@clisp.org>
8286
8287         * lib/winsock.c (_gl_close_fd_maybe_socket): If closesocket fails,
8288         set errno and don't call _close.
8289
8290 2008-10-10  Bruno Haible  <bruno@clisp.org>
8291
8292         * lib/copy-acl.c (qcopy_acl) [CYGWIN]: Call chmod before setting the
8293         ACL, not afterwards. Fixes test failure on Cygwin.
8294
8295 2008-10-09  Ben Pfaff  <blp@gnu.org>
8296
8297         * build-aux/announce-gen: Fix gnulib version related part of usage
8298         message.  Die with a useful error message if no tarballs are
8299         found.
8300
8301 2008-10-10  Jim Meyering  <meyering@redhat.com>
8302
8303         bootstrap: use git's --depth=N option only if it's supported
8304         * build-aux/bootstrap: Work with git-1.4.4.4, which does not
8305         recognize the --depth option.  Reported by Pádraig Brady.
8306
8307 2008-10-09  Bruno Haible  <bruno@clisp.org>
8308
8309         New module 'ioctl'.
8310         * modules/ioctl: New file.
8311         * lib/sys_socket.in.h (ioctl): Remove declaration.
8312         * lib/winsock.c: Include <sys/ioctl.h>.
8313         (rpl_ioctl): Define only of the gnulib module 'ioctl' is present.
8314         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
8315         gl_SYS_IOCTL_H_DEFAULTS. Set also SYS_IOCTL_H_HAVE_WINSOCK2_H.
8316         * modules/sys_socket (Files): Add m4/sys_ioctl_h.m4.
8317         * doc/posix-functions/ioctl.texi: Mention the new module.
8318
8319 2008-10-09  Bruno Haible  <bruno@clisp.org>
8320
8321         New module 'sys_ioctl'.
8322         * lib/sys_ioctl.in.h: New file.
8323         * m4/sys_ioctl_h.m4: New file.
8324         * modules/sys_ioctl: New file.
8325         * doc/glibc-headers/sys_ioctl.texi: Mention the new module.
8326
8327 2008-10-09  Bruno Haible  <bruno@clisp.org>
8328
8329         * lib/sys_socket.in.h (ioctl): Make signature POSIX compliant.
8330         * lib/winsock.c: Include <stdarg.h>.
8331         (rpl_ioctl): Change to second argument 'int' and then varargs.
8332
8333 2008-10-09  Bruno Haible  <bruno@clisp.org>
8334
8335         * m4/close.m4 (gl_FUNC_CLOSE): Arrange to replace the close() function
8336         when the sys_socket module is present and the system has <winsock2.h>.
8337
8338 2008-10-09  Bruno Haible  <bruno@clisp.org>
8339
8340         * doc/posix-functions/close.texi: Mention module 'close' instead of
8341         module 'sys_socket'.
8342
8343 2008-10-09  Bruno Haible  <bruno@clisp.org>
8344
8345         * doc/glibc-headers/sys_ioctl.texi: New file.
8346         * doc/gnulib.texi: Include it.
8347
8348 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
8349             Bruno Haible  <bruno@clisp.org>
8350
8351         Combine the two replacements of 'close'.
8352         * lib/sys_socket.in.h (close): Define to a reminder to include
8353         <unistd.h>.
8354         (_gl_close_fd_maybe_socket): New declaration.
8355         (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): New macro.
8356         * lib/winsock.c (close): Remove undefinition.
8357         (_gl_close_fd_maybe_socket): Renamed from rpl_close. Define only when
8358         needed for the gnulib module 'close'.
8359         * lib/unistd.in.h (close): If the gnulib module 'close' is not used,
8360         define to an error symbol or to a warning, if suitable.
8361         * lib/close.c: Include <sys/socket.h>.
8362         (rpl_close): Invoke _gl_close_fd_maybe_socket when gnulib defines it.
8363         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Set also
8364         UNISTD_H_HAVE_WINSOCK2_H.
8365         (gl_SYS_SOCKET_H_DEFAULTS): Require gl_UNISTD_H_DEFAULTS.
8366         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
8367         UNISTD_H_HAVE_WINSOCK2_H.
8368         * modules/sys_socket (Files): Add m4/unistd_h.m4.
8369         (configure.ac): Set a module indicator.
8370         (Makefile.am): Substitute GNULIB_CLOSE.
8371         * modules/unistd (Makefile.am): Substitute UNISTD_H_HAVE_WINSOCK2_H.
8372         * modules/poll-tests (Depends-on): Add close.
8373         * modules/select-tests (Depends-on): Likewise.
8374
8375 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
8376             Bruno Haible  <bruno@clisp.org>
8377
8378         New module 'close'.
8379         * modules/close: New file.
8380         * lib/unistd.in.h (close): Move declaration out of the
8381         FCHDIR_REPLACEMENT scope.
8382         (_gl_unregister_fd): New declaration.
8383         * lib/close.c: New file.
8384         * lib/fchdir.c (rpl_close): Remove function.
8385         * m4/close.m4: New file.
8386         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
8387         close.
8388         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_CLOSE and
8389         REPLACE_CLOSE.
8390         * modules/unistd (Makefile.am): Substitute GNULIB_CLOSE and
8391         REPLACE_CLOSE.
8392         * modules/fchdir (Depends-on): Add close.
8393
8394 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
8395             Bruno Haible  <bruno@clisp.org>
8396
8397         * lib/fcntl.in.h (open): Simplify conditionals.
8398         (_gl_register_fd): New declaration.
8399         * lib/fchdir.c (rpl_open): Remove function.
8400         * lib/open.c: When FCHDIR_REPLACEMENT is defined, compile the file
8401         also.
8402         (open): When FCHDIR_REPLACEMENT is defined, invoke _gl_register_fd.
8403         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
8404         open.
8405
8406 2008-10-09  Jim Meyering  <meyering@redhat.com>
8407
8408         GNUmakefile: use the more name-space-friendly "_version"
8409         * top/GNUmakefile (_dummy): Update.
8410         (_version): Rename from "version".
8411
8412 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
8413             Bruno Haible  <bruno@clisp.org>
8414
8415         * lib/fchdir.c (_gl_unregister_fd): New functions, extracted from
8416         rpl_close.
8417         (_gl_register_fd): New function, extracted from rpl_open.
8418         (rpl_close, rpl_closedir): Use _gl_unregister_fd.
8419         (rpl_open, rpl_opendir): Use _gl_register_fd.
8420
8421 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
8422
8423         Fix organization of 'open' replacement.
8424         * m4/open.m4 (gl_REPLACE_OPEN): New macro.
8425         (gl_FUNC_OPEN): Use it.
8426         (gl_PREREQ_OPEN): Add a : to make the body non-empty.
8427
8428 2008-10-08  Bruno Haible  <bruno@clisp.org>
8429
8430         * modules/getdate-tests (test_getdata_LDADD): Add LIBINTL.
8431
8432 2008-10-08  Simon Josefsson  <simon@josefsson.org>
8433
8434         * m4/sys_socket_h.m4: Don't AC_LIBOBJ(winsock).  The file is
8435         AC_LIBOBJ'ed by each gnulib module that needs it (e.g., socket,
8436         listen).
8437
8438 2008-10-08  Eric Blake  <ebb9@byu.net>
8439
8440         GNUmakefile: add 'make version' target
8441         * top/GNUmakefile (_curr-ver): Split version update rules...
8442         (version): ...into a target.
8443
8444 2008-10-07  Bruno Haible  <bruno@clisp.org>
8445
8446         Use a more portable replacement expression for -0.0L.
8447         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Use -LDBL_MIN * LDBL_MIN
8448         instead of -0.0L. Fix m4 quotation.
8449
8450         * tests/test-signbit.c: Include <float.h>.
8451         (minus_zero): New variable.
8452         (test_signbitl): Use minus_zero instead of -zero.
8453         * modules/signbit-tests (Depends-on): Add float.
8454
8455         * tests/test-ceill.c: Include <float.h>.
8456         (zero): Remove variable.
8457         (minus_zero): New variable.
8458         (main): Use minus_zero instead of -zero.
8459         * modules/ceill-tests (Depends-on): Add float.
8460
8461         * tests/test-floorl.c: Include <float.h>.
8462         (zero): Remove variable.
8463         (minus_zero): New variable.
8464         (main): Use minus_zero instead of -zero.
8465         * modules/floorl-tests (Depends-on): Add float.
8466
8467         * tests/test-roundl.c: Include <float.h>.
8468         (zero): Remove variable.
8469         (minus_zero): New variable.
8470         (main): Use minus_zero instead of -zero.
8471         * modules/roundl-tests (Depends-on): Add float.
8472
8473         * tests/test-truncl.c: Include <float.h>.
8474         (zero): Remove variable.
8475         (minus_zero): New variable.
8476         (main): Use minus_zero instead of -zero.
8477         * modules/truncl-tests (Depends-on): Add float.
8478
8479         * tests/test-frexpl.c (zero): Remove variable.
8480         (minus_zero): New variable.
8481         (main): Use minus_zero instead of -zero.
8482         * modules/frexpl-tests (Depends-on): Add float.
8483
8484         * tests/test-isnan.c (zerol): Remove variable.
8485         (minus_zerol): New variable.
8486         (test_long_double): Use minus_zerol instead of -zerol.
8487         * modules/isnan-tests (Depends-on): Add float.
8488
8489         * tests/test-isnanl.h (zero): Remove variable.
8490         (minus_zero): New variable.
8491         (main): Use minus_zero instead of -zero.
8492         * modules/isnanl-nolibm-tests (Depends-on): Add float.
8493         * modules/isnanl-tests (Depends-on): Add float.
8494
8495         * tests/test-ldexpl.c (zero): Remove variable.
8496         (minus_zero): New variable.
8497         (main): Use minus_zero instead of -zero.
8498         * modules/ldexpl-tests (Depends-on): Add float.
8499
8500         * tests/test-snprintf-posix.h (zerol): Remove variable.
8501         (minus_zerol): New variable.
8502         (test_function): Use minus_zerol instead of -zerol.
8503         * modules/snprintf-posix-tests (Depends-on): Add float.
8504         * modules/vsnprintf-posix-tests (Depends-on): Add float.
8505
8506         * tests/test-sprintf-posix.h (zerol): Remove variable.
8507         (minus_zerol): New variable.
8508         (test_function): Use minus_zerol instead of -zerol.
8509         * modules/sprintf-posix-tests (Depends-on): Add float.
8510         * modules/vsprintf-posix-tests (Depends-on): Add float.
8511
8512         * tests/test-vasnprintf-posix.c (zerol): Remove variable.
8513         (minus_zerol): New variable.
8514         (test_function): Use minus_zerol instead of -zerol.
8515         * modules/vasnprintf-posix-tests (Depends-on): Add float.
8516
8517         * tests/test-vasprintf-posix.c (zerol): Remove variable.
8518         (minus_zerol): New variable.
8519         (test_function): Use minus_zerol instead of -zerol.
8520         * modules/vasprintf-posix-tests (Depends-on): Add float.
8521
8522 2008-10-07  Simon Josefsson  <simon@josefsson.org>
8523
8524         * MODULES.html.sh (Support for building documentation): Mention
8525         pmccabe2html.  Sort entries.
8526
8527         Add pmccabe2html module, from gnupdf.
8528         * build-aux/pmccabe.css: New file.
8529         * build-aux/pmccabe2html: New file.
8530         * m4/pmccabe2html.m4: New file.
8531         * modules/pmccabe2html: New file.
8532
8533 2008-10-07  Richard W.M. Jones <rjones@redhat.com>
8534
8535         flock: new module
8536         * MODULES.html.sh: Add to list of modules.
8537         * lib/flock.c: flock implementation for Windows and Unix systems
8538         which have fcntl.
8539         * doc/glibc-functions/flock.texi: Update documentation.
8540         * lib/sys_file.in.h: <sys/file.h> header file.
8541         * m4/flock.m4: M4 macros.
8542         * m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
8543         * modules/flock: flock module.
8544         * modules/flock-tests: flock tests module.
8545         * modules/sys_file: sys/file.h module.
8546         * tests/test-flock.c: test suite for flock.
8547
8548 2008-10-06  Jim Meyering  <meyering@redhat.com>
8549
8550         bootstrap: check for LT_INIT more portably still ;-)
8551         * build-aux/bootstrap: Don't rely on \>, since it's not portable.
8552         Spotted by Bruno Haible.
8553
8554 2008-10-06  Eric Blake  <ebb9@byu.net>
8555
8556         test-signbit: avoid tripping Irix cc bug on -0.0L
8557         * tests/test-signbit.c (minus_zerol): Delete, and replace with
8558         '-zerol'.  This may break on HP-UX/hppa, but at least makes the
8559         entire testsuite consistent and avoids an Irix 6.2 bug.
8560
8561 2008-10-05  Bruno Haible  <bruno@clisp.org>
8562             Jim Meyering  <jim@meyering.net>
8563
8564         Add an option for ignoring EPIPE during close_stdout.
8565         * lib/closeout.h: Include <stdbool.h>.
8566         (close_stdout_set_ignore_EPIPE): New declaration.
8567         * lib/closeout.c: Include <stdbool.h>.
8568         (ignore_EPIPE): New variable.
8569         (close_stdout_set_ignore_EPIPE): New function.
8570         (close_stdout): Ignore EPIPE error if ignore_EPIPE is set.
8571         * lib/close-stream.c (close_stream): Mention the possible EPIPE
8572         failure.
8573         * modules/closeout (Depends-on): Add stdbool.
8574
8575 2008-10-05  Bruno Haible  <bruno@clisp.org>
8576
8577         * modules/accept: New file.
8578         * modules/bind: New file.
8579         * modules/connect: New file.
8580         * modules/getpeername: New file.
8581         * modules/getsockname: New file.
8582         * modules/getsockopt: New file.
8583         * modules/listen: New file.
8584         * modules/recv: New file.
8585         * modules/recvfrom: New file.
8586         * modules/send: New file.
8587         * modules/sendto: New file.
8588         * modules/setsockopt: New file.
8589         * modules/socket: New file.
8590         * lib/sys_socket.in.h: Include the GL_LINK_WARNING definition.
8591         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
8592         listen, recv, send, recvfrom, sendto, setsockopt): Declare only when
8593         the particular module is requested. Add a link warning when the
8594         particular module is not requested.
8595         * lib/winsock.c (rpl_socket, rpl_connect, rpl_accept, rpl_bind,
8596         rpl_getpeername, rpl_getsockname, rpl_getsockopt, rpl_listen, rpl_recv,
8597         rpl_send, rpl_recvfrom, rpl_sendto, rpl_setsockopt): Define only when
8598         the particular module is requested.
8599         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR,
8600         gl_SYS_SOCKET_H_DEFAULTS): New macros.
8601         (gl_HEADER_SYS_SOCKET): Require gl_SYS_SOCKET_H_DEFAULTS.
8602         * modules/sys_socket (Depends-on): Add link-warning.
8603         (Makeifle.am): Substitute GNULIB_SOCKET, GNULIB_CONNECT, GNULIB_ACCEPT,
8604         GNULIB_BIND, GNULIB_GETPEERNAME, GNULIB_GETSOCKNAME, GNULIB_GETSOCKOPT,
8605         GNULIB_LISTEN, GNULIB_RECV, GNULIB_SEND, GNULIB_RECVFROM,
8606         GNULIB_SENDTO, GNULIB_SETSOCKOPT, and the definition of
8607         GL_LINK_WARNING.
8608         * doc/posix-functions/accept.texi: Mention the new module 'accept'.
8609         * doc/posix-functions/bind.texi: Mention the new module 'bind'.
8610         * doc/posix-functions/connect.texi: Mention the new module 'connect'.
8611         * doc/posix-functions/getpeername.texi: Mention the new module
8612         'getpeername'.
8613         * doc/posix-functions/getsockname.texi: Mention the new module
8614         'getsockname'.
8615         * doc/posix-functions/getsockopt.texi: Mention the new module
8616         'getsockopt'.
8617         * doc/posix-functions/listen.texi: Mention the new module 'listen'.
8618         * doc/posix-functions/recv.texi: Mention the new module 'recv'.
8619         * doc/posix-functions/recvfrom.texi: Mention the new module 'recvfrom'.
8620         * doc/posix-functions/send.texi: Mention the new module 'send'.
8621         * doc/posix-functions/sendto.texi: Mention the new module 'sendto'.
8622         * doc/posix-functions/setsockopt.texi: Mention the new module
8623         'setsockopt'.
8624         * doc/posix-functions/socket.texi: Mention the new module 'socket'.
8625         * modules/poll-tests (Depends-on): Add socket, bind, getsockopt,
8626         listen, connect, accept.
8627         * modules/select-tests (Depends-on): Likewise.
8628
8629 2008-10-05  Bruno Haible  <bruno@clisp.org>
8630
8631         * lib/winsock.c (strerror): Remove unused #undef.
8632         (rpl_close): Remove unused local variable.
8633
8634         * modules/sys_socket (Depends-on); Add errno.
8635
8636 2008-10-05  Bruno Haible  <bruno@clisp.org>
8637
8638         * lib/sys_select.in.h: Include the GL_LINK_WARNING definition.
8639         (select): Add a link warning when the 'select' module is not used.
8640         * modules/sys_select (Depends-on): Add link-warning.
8641         (Makefile.am): Substitute the definition of GL_LINK_WARNING.
8642         Suggested by Paolo Bonzini.
8643
8644 2008-10-05  Jim Meyering  <meyering@redhat.com>
8645
8646         bootstrap: check for LT_INIT more portably
8647         * build-aux/bootstrap: Avoid using grep -E, since it's not
8648         portable enough.  Suggestion from Bruno Haible.
8649
8650 2008-10-05  Bruno Haible  <bruno@clisp.org>
8651
8652         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem
8653         as being fixed by gnulib.
8654
8655 2008-10-05  Bruno Haible  <bruno@clisp.org>
8656
8657         * modules/select-tests: New file, mostly copied from
8658         modules/sys_select-tests.
8659         * tests/test-select.c: New file, mostly copied from
8660         tests/test-sys_select.c.
8661         * tests/test-sys_select.c: Move most of the code to tests/test-select.c.
8662         * modules/sys_select-tests (Depends-on): Remove all dependencies.
8663         (Makefile.am): Remove test_sys_select_LDADD.
8664
8665         * lib/sys_select.in.h (select): If GNULIB_SELECT is not set, define it
8666         to an undefined symbol, for an error message.
8667         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): New macro.
8668         (gl_SYS_SELECT_H_DEFAULTS): New macro.
8669         (gl_HEADER_SYS_SELECT): Require it. Don't require compilation of
8670         winsock-select.c here.
8671         * modules/sys_select (Files): Remove lib/winsock-select.c.
8672         (Depends-on): Remove alloca.
8673         (Makefile.am): Substitute GNULIB_SELECT.
8674         * modules/select: New file.
8675         * doc/posix-functions/select.texi: Update.
8676
8677 2008-10-05  Bruno Haible  <bruno@clisp.org>
8678
8679         * lib/spawn_faction_addclose.c (__sysconf): Use getdtablesize always.
8680         * lib/spawn_faction_adddup2.c (__sysconf): Likewise.
8681         * lib/spawn_faction_addopen.c (__sysconf): Likewise.
8682         * modules/posix_spawn_file_actions_addclose (Depends-on): Add
8683         getdtablesize.
8684         * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
8685         * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
8686
8687 2008-10-05  Bruno Haible  <bruno@clisp.org>
8688
8689         * modules/getdtablesize-tests: New file.
8690         * tests/test-getdtablesize.c: New file.
8691
8692         New module 'getdtablesize'.
8693         * lib/unistd.in.h (getdtablesize): New declaration.
8694         * lib/getdtablesize.c: New file.
8695         * m4/getdtablesize.m4: New file.
8696         * modules/getdtablesize: New file.
8697         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
8698         GNULIB_GETDTABLESIZE, HAVE_GETDTABLESIZE.
8699         * modules/unistd (Makefile.am): Substitute GNULIB_GETDTABLESIZE,
8700         HAVE_GETDTABLESIZE.
8701         * doc/glibc-functions/getdtablesize.texi: Mention the new module.
8702
8703 2008-10-05  Bruno Haible  <bruno@clisp.org>
8704
8705         * modules/sched (Makefile.am): Fix typo.
8706         Reported by Simon Josefsson.
8707
8708 2008-10-05  Jim Meyering  <meyering@redhat.com>
8709
8710         bootstrap: check for LT_INIT, too
8711         * build-aux/bootstrap: Both AC_PROG_LIBTOOL and AM_PROG_LIBTOOL
8712         are deprecated.  Suggestion from Ralf Wildenhues.
8713
8714 2008-10-05  Bruno Haible  <bruno@clisp.org>
8715
8716         * lib/spawn.in.h (POSIX_SPAWN_*): Use the system's values, rather than
8717         overriding them by ours.
8718         (POSIX_SPAWN_USEVFORK): Use the next free bit position.
8719
8720 2008-10-05  Jim Meyering  <meyering@redhat.com>
8721
8722         bootstrap: check for AC_PROG_LIBTOOL as well as AM_PROG_LIBTOOL
8723         * build-aux/bootstrap: Check for AC_PROG_LIBTOOL, as well as the
8724         obsolete AM_PROG_LIBTOOL.  Spotted by Debarshi Ray <rishi@gnu.org>.
8725
8726 2008-10-04  Bruno Haible  <bruno@clisp.org>
8727
8728         * modules/dup2 (License): Change to LGPLv2+.
8729         * modules/sleep (License): Likewise.
8730         * modules/perror (License): Likewise.
8731         * modules/fopen (License): Change to LGPLv2+, with approval by Eric
8732         Blake.
8733         * modules/signal (License): Likewise.
8734         * modules/sigprocmask (License): Likewise.
8735         * modules/raise (License): Change to LGPLv2+, with approval by Jim
8736         Meyering.
8737
8738 2008-10-04  Bruno Haible  <bruno@clisp.org>
8739
8740         * lib/spawn.in.h (POSIX_SPAWN_*): Undefine before redefining.
8741         Reported by Rainer Tammer <tammer@tammer.net>.
8742
8743 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
8744             Bruno Haible  <bruno@clisp.org>
8745
8746         * lib/errno.in.h (EWOULDBLOCK) [win32]: Define to EAGAIN.
8747         * lib/winsock.c (set_winsock_errno): Map WSAEWOULDBLOCK to EWOULDBLOCK.
8748         * lib/strerror.c (rpl_strerror): Remove error string for EWOULDBLOCK.
8749
8750 2008-10-03  Kamil Dudka  <kdudka@redhat.com>
8751
8752         filevercmp: new module
8753         * lib/filevercmp.h: New function filevercmp comparing version strings.
8754         * lib/filevercmp.c: Implementation of filevercmp function.
8755         * modules/filevercmp: Module metadata.
8756         * tests/test-filevercmp.c: Unit test for new module.
8757         * modules/filevercmp-tests: Unit test metadata.
8758         * MODULES.html.sh: Add filevercmp module.
8759
8760 2008-10-03  Bruno Haible  <bruno@clisp.org>
8761
8762         * lib/c-ctype.h: Add comment.
8763         Reported by Jim Meyering.
8764
8765 2008-10-02  Bruno Haible  <bruno@clisp.org>
8766
8767         * modules/posix_spawn-internal (Depends-on): Add 'open'.
8768
8769 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
8770
8771         * build-aux/bootstrap: Allow renaming bootstrap, and change the
8772         name of bootstrap.conf accordingly.
8773
8774 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
8775
8776         * build-aux/bootstrap: Install git-merge-changelog configuration
8777         items into .gitconfig if needed.
8778
8779 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
8780
8781         * build-aux/bootstrap: Recognize `gnulib' being a submodule in a
8782         git repository, and initialize/update it accordingly.
8783
8784 2008-10-02  Richard W.M. Jones  <rjones@redhat.com>
8785
8786         * modules/fsync-tests: New file.
8787         * tests/test-fsync.c: New file.
8788
8789         New module 'fsync'.
8790         * lib/fsync.c: New file.
8791         * m4/fsync.m4: New file.
8792         * modules/fsync: New file.
8793         * lib/unistd.in.h (fsync): New declaration.
8794         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST both
8795         GNULIB_FSYNC and HAVE_FSYNC.
8796         * modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
8797         * MODULES.html.sh (posix_functions): Add fsync.
8798         * doc/posix-functions/fsync.texi: Mention the new module.
8799
8800 2008-10-02  Jim Meyering  <meyering@redhat.com>
8801
8802         fts.c: sync with similar code from coreutils' remove.c
8803         * lib/fts.c (dirent_inode_sort_may_be_useful): Merge from coreutils.
8804         Guard also with "#if defined __linux__", since for now at least,
8805         this code is Linux-kernel-specific.
8806
8807 2008-10-02  Jim Meyering  <meyering@redhat.com>
8808
8809         fts: bug fixes
8810         * lib/fts.c: Remove unnecessary "defined" in cpp directive.
8811         Include <sys/vfs.h>, not <sys/statfs.h>.
8812
8813         * m4/fts.m4 (gl_FUNC_FTS_CORE): Fix typo s/vfs/vfs.h/.
8814         Include <sys/vfs.h>, not <sys/statfs.h>.
8815
8816 2008-10-01  Bruno Haible  <bruno@clisp.org>
8817
8818         Avoid the broken posix_spawn function on AIX 5.3 and 6.1.
8819         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): New macro.
8820         (gl_POSIX_SPAWN_BODY): Invoke it. Set REPLACE_POSIX_SPAWN if needed.
8821         * doc/posix-functions/posix_spawn.texi: Mention the AIX bugs.
8822         * doc/posix-functions/posix_spawnp.texi: Likewise.
8823         * m4/execute.m4 (gl_EXECUTE): Invoke gl_POSIX_SPAWN_WORKS, to check
8824         whether posix_spawn actually works.
8825         * m4/pipe.m4 (gl_PIPE): Likewise.
8826         * modules/execute (Files): Add m4/posix_spawn.m4.
8827         * modules/pipe (Files): Add m4/posix_spawn.m4.
8828         Reported and analyzed by Rainer Tammer <tammer@tammer.net>.
8829
8830 2008-10-01  Jim Meyering  <meyering@redhat.com>
8831
8832         remove trailing spaces
8833         * NEWS: Likewise.
8834         * lib/poll.c (poll): Likewise.
8835         * lib/sys_socket.in.h (SHUT_RDWR): Likewise.
8836         * lib/winsock.c (rpl_close): Likewise.
8837         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Likewise.
8838         * modules/yield: Likewise.
8839         * tests/test-poll.c (connect_to_socket, poll1): Likewise.
8840         * tests/test-sys_select.c (connect_to_socket): Likewise.
8841
8842         fts.c: adjust a new interface to be more generally useful
8843         * lib/fts.c (dirent_inode_sort_may_be_useful): Take an FD parameter.
8844         (fts_build): Adjust caller.
8845
8846 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
8847
8848         * modules/cond-tests: New file.
8849         * tests/test-cond.c: New file.
8850
8851 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
8852             Bruno Haible  <bruno@clisp.org>
8853
8854         * modules/cond (Dependencies): Add errno, time.
8855         * lib/glthread/cond.h: Include <time.h>.
8856         (gl_cond_define, gl_cond_define_initialized): Use the same definition
8857         across platforms.
8858
8859 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
8860             Bruno Haible  <bruno@clisp.org>
8861
8862         * m4/thread.m4 (gl_THREAD): Fix detection of pthread_atfork function.
8863
8864 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
8865             Bruno Haible  <bruno@clisp.org>
8866
8867         * modules/tls-tests (Depends-on): Add thread, yield.
8868         (configure.ac): Remove all checks.
8869         (test_tls_LDADD): Use YIELD_LIB instead of LIBSCHED.
8870         * tests/test-tls.c (gl_thread_t, gl_thread_join, gl_thread_yield,
8871         gl_thread_self): Remove definitions. Include glthread/thread.h and
8872         glthread/yield.h instead.
8873         (test_tls): Pass an additional NULL argument to gl_thread_join.
8874
8875 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
8876             Bruno Haible  <bruno@clisp.org>
8877
8878         * modules/lock-tests (Depends-on): Add thread, yield.
8879         (configure.ac): Remove all checks.
8880         (test_lock_LDADD): Use YIELD_LIB instead of LIBSCHED.
8881         * tests/test-lock.c (gl_thread_t, gl_thread_join, gl_thread_yield,
8882         gl_thread_self): Remove definitions. Include glthread/thread.h and
8883         glthread/yield.h instead.
8884         (test_lock, test_rwlock, test_recursive_lock, test_once): Pass an
8885         additional NULL argument to gl_thread_join.
8886
8887 2008-09-30  Bruno Haible  <bruno@clisp.org>
8888
8889         Fix the Win32 implementation of the 'thread' module.
8890         * lib/glthread/thread.h [USE_WIN32_THREADS] (gl_thread_t): Change to a
8891         pointer type.
8892         (gl_thread_self): Invoke gl_thread_self_func.
8893         (gl_thread_self_func): New declaration.
8894         * lib/glthread/thread.c [USE_WIN32_THREADS] (self_key): New variable.
8895         (do_init_self_key, init_self_key): New functions.
8896         (struct gl_thread_struct): Renamed from 'struct thread_extra'.
8897         Remove some fields.
8898         (running_threads, running_lock): Remove variables.
8899         (get_current_thread_handle): New function.
8900         (gl_thread_self_func, wrapper_func, glthread_create_func,
8901         glthread_join_func, gl_thread_exit_func): Largely rewritten and
8902         simplified.
8903
8904 2008-09-30  Bruno Haible  <bruno@clisp.org>
8905
8906         * lib/winsock-select.c (win32_poll_handle): Add shortcut for regular
8907         files.
8908
8909 2008-09-30  Jim Meyering  <meyering@redhat.com>
8910
8911         fts.m4: correct the test for statfs.f_type
8912         * m4/fts.m4 (gl_FUNC_FTS_CORE): Include <sys/statfs.h>
8913         when checking for statfs.f_type.
8914
8915 2008-09-15  Simon Josefsson  <simon@josefsson.org>
8916
8917         tests: avoid some compiler warnings
8918         * tests/test-memchr.c (main): Pass NULL indirectly.
8919         * tests/test-getdate.c (main): Remove unused variable 'ret'.
8920
8921 2008-09-29  OndÅ™ej Vašík  <ovasik@redhat.com>
8922
8923         getdate.y: disallow countable dayshifts like "4 yesterday ago"
8924         * lib/getdate.y (relative_time_table) [tDAY_SHIFT]: New type for
8925         exactly specified dayshifts.
8926         (dayshift): New rule.
8927         (rel): Add dayshift.
8928         (relative_time_table) [tomorrow, yesterday, today, now]:
8929         Use tDAY_SHIFT in place of tDAY_UNIT.
8930         * tests/test-getdate.c: Add tests for now-disallowed countable
8931         dayshifts, e.g., "4 yesterday ago".
8932
8933 2008-09-29  Bruno Haible  <bruno@clisp.org>
8934
8935         * tests/test-posix_spawn1.c: Renamed from tests/test-posix_spawn.c.
8936         * tests/test-posix_spawn1.in.sh: Renamed from
8937         tests/test-posix_spawn.in.sh.
8938         * tests/test-posix_spawn2.c: New file.
8939         * tests/test-posix_spawn2.in.sh: New file.
8940         * modules/posix_spawnp-tests (Files): Update.
8941         (Makefile.am): Update. Add test-posix_spawn2 to the tests.
8942
8943 2008-09-29  Bruno Haible  <bruno@clisp.org>
8944
8945         Propagate effects of putenv/setenv/unsetenv to child processes.
8946         * lib/execute.c (execute): Use spawnvpe instead of spawnvp.
8947         * lib/pipe.c (create_pipe): Likewise.
8948
8949 2008-09-29  Bruno Haible  <bruno@clisp.org>
8950
8951         Enable use of shell scripts as executables in mingw.
8952         * lib/execute.c (execute): When spawnv fails with error ENOEXEC,
8953         run the program as a shell script.
8954         * lib/pipe.c (create_pipe): Likewise.
8955         * lib/w32spawn.h (prepare_spawn): Add a hidden element in front of the
8956         resulting array.
8957
8958 2008-09-29  Eric Blake  <ebb9@byu.net>
8959
8960         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Fix typo.
8961
8962 2008-08-24  Paolo Bonzini  <bonzini@gnu.org>
8963
8964         * doc/posix-functions/accept.texi: Update mingw problems.
8965         * doc/posix-functions/bind.texi: Update mingw problems.
8966         * doc/posix-functions/close.texi: Update mingw problems.
8967         * doc/posix-functions/connect.texi: Update mingw problems.
8968         * doc/posix-functions/getpeername.texi: Update mingw problems.
8969         * doc/posix-functions/getsockname.texi: Update mingw problems.
8970         * doc/posix-functions/getsockopt.texi: Update mingw problems.
8971         * doc/posix-functions/ioctl.texi: Update mingw problems.
8972         * doc/posix-functions/listen.texi: Update mingw problems.
8973         * doc/posix-functions/recv.texi: Update mingw problems.
8974         * doc/posix-functions/recvfrom.texi: Update mingw problems.
8975         * doc/posix-functions/select.texi: Update mingw problems.
8976         * doc/posix-functions/send.texi: Update mingw problems.
8977         * doc/posix-functions/sendto.texi: Update mingw problems.
8978         * doc/posix-functions/setsockopt.texi: Update mingw problems.
8979         * doc/posix-functions/socket.texi: Update mingw problems.
8980
8981 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
8982             Bruno Haible  <bruno@clisp.org>
8983
8984         * lib/sys_select.in.h: Include sys/time.h.
8985         * m4/sys_select.h.m4: Test that struct timeval is fully defined.
8986         * modules/sys_select: Depend on sys_time.
8987         * tests/test-sys_select.c: Test that sys/select.h defines struct
8988         timeval fully.
8989
8990 2008-09-29  Bruno Haible  <bruno@clisp.org>
8991
8992         * lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
8993         * lib/sys_select.in.h: Likewise.
8994
8995 2008-09-29  Bruno Haible  <bruno@clisp.org>
8996
8997         * lib/winsock.c (rpl_close, rpl_socket): Remove unused variables.
8998
8999 2008-09-29  Bruno Haible  <bruno@clisp.org>
9000
9001         * m4/sockets.m4 (gl_SOCKETS): Check also for the need to use -lsocket.
9002         Set LIBSOCKET instead of augmenting LIBS.
9003         * modules/sockets (Link): New section.
9004         * modules/sockets-tests (test_sockets_LDADD): New variable.
9005         * modules/sys_select-tests (test_sys_select_LDADD): New variable.
9006         * modules/poll-tests (test_poll_LDADD): New variable.
9007         * NEWS: Document the change.
9008
9009 2008-09-29  Bruno Haible  <bruno@clisp.org>
9010
9011         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): New macro.
9012         * m4/inet_ntop.m4 (gl_INET_NTOP): Invoke it instead of assigning
9013         ARPA_INET_H directly.
9014         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
9015
9016 2008-09-28  Bruno Haible  <bruno@clisp.org>
9017
9018         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): New macro, extracted
9019         from gl_HEADER_SYS_SOCKET.
9020         (gl_HEADER_SYS_SOCKET): Invoke it.
9021         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
9022
9023 2008-09-28  Bruno Haible  <bruno@clisp.org>
9024
9025         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem.
9026         * tests/test-sys_select.c: Include <sys/time.h>, for struct timeval.
9027         Needed on OSF/1 4.0.
9028
9029 2008-09-28  Bruno Haible  <bruno@clisp.org>
9030
9031         Override open more carefully.
9032         * lib/open.c (orig_open): New function.
9033         (rpl_open): Use orig_open instead of open.
9034         * lib/fcntl.in.h: Add special invocation convention.
9035         * m4/open.m4 (gl_PREREQ_OPEN): New macro.
9036         (gl_FUNC_OPEN): Invoke it.
9037
9038         Override freopen more carefully.
9039         * lib/freopen.c (orig_freopen): New function.
9040         (rpl_freopen): Use orig_freopen instead of freopen.
9041         * m4/freopen.m4 (gl_PREREQ_FREOPEN): New macro.
9042         (gl_FUNC_FREOPEN): Invoke it.
9043
9044         Override fopen more carefully.
9045         * lib/fopen.c (orig_fopen): New function.
9046         (rpl_fopen): Use orig_fopen instead of fopen.
9047         * m4/fopen.m4 (gl_PREREQ_FOPEN): New macro.
9048         (gl_FUNC_FOPEN): Invoke it.
9049         Needed on AIX. Reported by Rainer Tammer <tammer@tammer.net>.
9050
9051 2008-09-28  Bruno Haible  <bruno@clisp.org>
9052
9053         * lib/pipe.h (create_pipe_out, create_pipe_bidi): Add comment about
9054         SIGPIPE.
9055
9056 2008-09-28  Bruno Haible  <bruno@clisp.org>
9057
9058         * tests/test-sigaction.c (handler, main): Disable the check whether
9059         SA_RESETHAND has reverted the installed handler to SIG_DFL. Needed on
9060         glibc systems with LinuxThreads.
9061
9062 2008-09-28  Bruno Haible  <bruno@clisp.org>
9063
9064         * doc/posix-functions/freopen.texi: Mention the trailing slash problem.
9065
9066         * lib/stdio.in.h (fopen, freopen): Undefine before redefining. Needed
9067         with AIX xlc.
9068         * lib/fcntl.in.h (open): Likewise.
9069         Reported by Rainer Tammer <tammer@tammer.net>.
9070
9071 2008-09-28  Bruno Haible  <bruno@clisp.org>
9072
9073         * modules/posix_spawnp-tests: New file.
9074         * tests/test-posix_spawn.c: New file.
9075         * tests/test-posix_spawn.in.sh: New file.
9076
9077         New module 'posix_spawnp'.
9078         * modules/posix_spawnp: New file.
9079         * lib/spawnp.c: New file, from GNU libc with modifications.
9080         * doc/posix-functions/posix_spawnp.texi: Mention the new module.
9081
9082         New module 'posix_spawn'.
9083         * modules/posix_spawn: New file.
9084         * lib/spawn.c: New file, from GNU libc with modifications.
9085         * doc/posix-functions/posix_spawn.texi: Mention the new module.
9086
9087         New module 'posix_spawnattr_destroy'.
9088         * modules/posix_spawnattr_destroy: New file.
9089         * lib/spawnattr_destroy.c: New file, from GNU libc with modifications.
9090         * doc/posix-functions/posix_spawnattr_destroy.texi: Mention the new
9091         module.
9092
9093         New module 'posix_spawnattr_setsigmask'.
9094         * modules/posix_spawnattr_setsigmask: New file.
9095         * lib/spawnattr_setsigmask.c: New file, from GNU libc with
9096         modifications.
9097         * doc/posix-functions/posix_spawnattr_setsigmask.texi: Mention the
9098         new module.
9099
9100         New module 'posix_spawnattr_getsigmask'.
9101         * modules/posix_spawnattr_getsigmask: New file.
9102         * lib/spawnattr_getsigmask.c: New file, from GNU libc with
9103         modifications.
9104         * doc/posix-functions/posix_spawnattr_getsigmask.texi: Mention the
9105         new module.
9106
9107         New module 'posix_spawnattr_setsigdefault'.
9108         * modules/posix_spawnattr_setsigdefault: New file.
9109         * lib/spawnattr_setdefault.c: New file, from GNU libc with
9110         modifications.
9111         * doc/posix-functions/posix_spawnattr_setsigdefault.texi: Mention the
9112         new module.
9113
9114         New module 'posix_spawnattr_getsigdefault'.
9115         * modules/posix_spawnattr_getsigdefault: New file.
9116         * lib/spawnattr_getdefault.c: New file, from GNU libc with
9117         modifications.
9118         * doc/posix-functions/posix_spawnattr_getsigdefault.texi: Mention the
9119         new module.
9120
9121         New module 'posix_spawnattr_setschedpolicy'.
9122         * modules/posix_spawnattr_setschedpolicy: New file.
9123         * lib/spawnattr_setschedpolicy.c: New file, from GNU libc with
9124         modifications.
9125         * doc/posix-functions/posix_spawnattr_setschedpolicy.texi: Mention the
9126         new module.
9127
9128         New module 'posix_spawnattr_getschedpolicy'.
9129         * modules/posix_spawnattr_getschedpolicy: New file.
9130         * lib/spawnattr_getschedpolicy.c: New file, from GNU libc with
9131         modifications.
9132         * doc/posix-functions/posix_spawnattr_getschedpolicy.texi: Mention the
9133         new module.
9134
9135         New module 'posix_spawnattr_setschedparam'.
9136         * modules/posix_spawnattr_setschedparam: New file.
9137         * lib/spawnattr_setschedparam.c: New file, from GNU libc with
9138         modifications.
9139         * doc/posix-functions/posix_spawnattr_setschedparam.texi: Mention the
9140         new module.
9141
9142         New module 'posix_spawnattr_getschedparam'.
9143         * modules/posix_spawnattr_getschedparam: New file.
9144         * lib/spawnattr_getschedparam.c: New file, from GNU libc with
9145         modifications.
9146         * doc/posix-functions/posix_spawnattr_getschedparam.texi: Mention the
9147         new module.
9148
9149         New module 'posix_spawnattr_setpgroup'.
9150         * modules/posix_spawnattr_setpgroup: New file.
9151         * lib/spawnattr_setpgroup.c: New file, from GNU libc with
9152         modifications.
9153         * doc/posix-functions/posix_spawnattr_setpgroup.texi: Mention the new
9154         module.
9155
9156         New module 'posix_spawnattr_getpgroup'.
9157         * modules/posix_spawnattr_getpgroup: New file.
9158         * lib/spawnattr_getpgroup.c: New file, from GNU libc with
9159         modifications.
9160         * doc/posix-functions/posix_spawnattr_getpgroup.texi: Mention the new
9161         module.
9162
9163         New module 'posix_spawnattr_setflags'.
9164         * modules/posix_spawnattr_setflags: New file.
9165         * lib/spawnattr_setflags.c: New file, from GNU libc with modifications.
9166         * doc/posix-functions/posix_spawnattr_setflags.texi: Mention the new
9167         module.
9168
9169         New module 'posix_spawnattr_getflags'.
9170         * modules/posix_spawnattr_getflags: New file.
9171         * lib/spawnattr_getflags.c: New file, from GNU libc with modifications.
9172         * doc/posix-functions/posix_spawnattr_getflags.texi: Mention the new
9173         module.
9174
9175         New module 'posix_spawnattr_init'.
9176         * modules/posix_spawnattr_init: New file.
9177         * lib/spawnattr_init.c: New file, from GNU libc with modifications.
9178         * doc/posix-functions/posix_spawnattr_init.texi: Mention the new
9179         module.
9180
9181         New module 'posix_spawn_file_actions_destroy'.
9182         * modules/posix_spawn_file_actions_destroy: New file.
9183         * lib/spawn_faction_destroy.c: New file, from GNU libc with
9184         modifications.
9185         * doc/posix-functions/posix_spawn_file_actions_destroy.texi: Mention
9186         the new module.
9187
9188         New module 'posix_spawn_file_actions_addopen'.
9189         * modules/posix_spawn_file_actions_addopen: New file.
9190         * lib/spawn_faction_addopen.c: New file, from GNU libc with
9191         modifications.
9192         * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
9193         the new module.
9194
9195         New module 'posix_spawn_file_actions_adddup2'.
9196         * modules/posix_spawn_file_actions_adddup2: New file.
9197         * lib/spawn_faction_adddup2.c: New file, from GNU libc with
9198         modifications.
9199         * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
9200         the new module.
9201
9202         New module 'posix_spawn_file_actions_addclose'.
9203         * modules/posix_spawn_file_actions_addclose: New file.
9204         * lib/spawn_faction_addclose.c: New file, from GNU libc with
9205         modifications.
9206         * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
9207         the new module.
9208
9209         New module 'posix_spawn_file_actions_init'.
9210         * modules/posix_spawn_file_actions_init: New file.
9211         * lib/spawn_faction_init.c: New file, from GNU libc with modifications.
9212         * doc/posix-functions/posix_spawn_file_actions_init.texi: Mention the
9213         new module.
9214
9215         New module 'posix_spawn-internal'.
9216         * modules/posix_spawn-internal: New file.
9217         * lib/spawn_int.h: New file, from GNU libc with modifications.
9218         * lib/spawni.c: New file, from GNU libc with modifications.
9219         * m4/posix_spawn.m4: New file.
9220
9221         New module 'spawn'.
9222         * modules/spawn: New file.
9223         * lib/spawn.in.h: New file, from GNU libc with modifications.
9224         * m4/spawn_h.m4: New file.
9225         * doc/posix-headers/spawn.texi: Mention the new module.
9226
9227 2008-09-28  Bruno Haible  <bruno@clisp.org>
9228
9229         * modules/sched-tests: New file.
9230         * tests/test-sched.c: New file.
9231
9232         New module 'sched'.
9233         * modules/sched: New file.
9234         * lib/sched.in.h: New file.
9235         * m4/sched_h.m4: New file.
9236         * doc/posix-headers/sched.texi: Mention the new module.
9237
9238 2008-09-27  Eric Blake  <ebb9@byu.net>
9239
9240         Fix previous patch, and tweak references to $0.
9241         * posix-modules: Call func_gnulib_dir before using $gnulib_dir.
9242         (func_version, func_gnulib_dir): Don't call this program
9243         gnulib-tool.
9244         (func_gnulib_dir, func_tmpdir, func_fatal_error): Avoid shell bugs
9245         with using $0 in function.
9246         * gnulib-tool (func_gnulib_dir, func_tmpdir): Likewise.
9247         (func_fatal_error): Reuse the name the user invoked us with.
9248
9249 2008-09-27  Bruno Haible  <bruno@clisp.org>
9250
9251         * m4/iconv_h.m4 (gl_REPLACE_ICONV_H): New macro.
9252         (gl_ICONV_H_DEFAULTS): Initialize ICONV_H here...
9253         (gl_ICONV_H): Not here.
9254         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
9255         instead of assigning ICONV_H directly.
9256
9257         * m4/wchar.m4 (gl_REPLACE_WCHAR_H): New macro.
9258         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Invoke it instead of assigning
9259         WCHAR_H directly.
9260
9261 2008-09-27  Bruno Haible  <bruno@clisp.org>
9262
9263         * lib/arpa_inet.in.h: Include the GL_LINK_WARNING anchor.
9264         * modules/arpa_inet (Depends-on): Add link-warning.
9265         (Makefile.am): Insert the definition of GL_LINK-WARNING.
9266         * modules/unistd (Makefile.am): Likewise.
9267
9268 2008-09-26  Bruno Haible  <bruno@clisp.org>
9269
9270         * posix-modules (cvsdatestamp, last_checkin_date, version): Remove
9271         variables.
9272         (func_version): Essentially copied from gnulib-tool.
9273         (func_exit, func_gnulib_dir, func_tmpdir, func_fatal_error,
9274         func_readlink): Copied from gnulib-tool.
9275
9276 2008-09-26  Bruno Haible  <bruno@clisp.org>
9277
9278         * gnulib-tool (func_version): Change directory to $gnulib_dir before
9279         invoking git-version-gen.
9280
9281 2008-09-26  Bruno Haible  <bruno@clisp.org>
9282
9283         * posix-modules: Update to directory names changed on 2008-01-19.
9284         Remove commas in output before splitting into words. No more need to
9285         avoid 'ftruncate' since 2007-02-19.
9286
9287 2008-09-26  Bruno Haible  <bruno@clisp.org>
9288
9289         * doc/posix-headers/errno.texi: Remove mention of module 'EOVERFLOW'.
9290
9291 2008-09-26  Bruno Haible  <bruno@clisp.org>
9292
9293         * lib/fwriteerror.c (do_fwriteerror): Ignore error EPIPE.
9294         * modules/fwriteerror (Depends-on): Add errno.
9295
9296 2008-09-26  Bruno Haible  <bruno@clisp.org>
9297
9298         * tests/test-vc-list-files-git.sh: Explain reason for skipping test.
9299         * tests/test-vc-list-files-cvs.sh: Likewise.
9300
9301 2008-09-26  Bruno Haible  <bruno@clisp.org>
9302
9303         * doc/posix-headers/sys_resource.texi: Reorder items.
9304
9305 2008-09-26  Jim Meyering  <meyering@redhat.com>
9306
9307         fts: tweak inode comparison function
9308         * lib/fts.c (fts_compare_ino): Sort on increasing, not decreasing
9309         inode numbers, as documented.
9310
9311         fts: sort dirent entries on inode number before traversing
9312         This avoids a quadratic, seek-related performance penalty when
9313         operating on a directory containing many entries (measurable at 10k;
9314         3.5 hours at 2 million entries with a cold cache) on certain types
9315         of file systems, including ext3 and ext4, but not tmpfs.
9316         * lib/fts.c (DT_MUST_BE, NOT_AN_INODE_NUMBER, D_INO): Define.
9317         (FTS_INODE_SORT_DIR_ENTRIES_THRESHOLD): Define if not defined.
9318         (S_MAGIC_TMPFS, S_MAGIC_NFS): Define.
9319         (fs_handles_readdir_ordered_dirents_efficiently): New function.
9320         (dirent_inode_sort_may_be_useful, fts_compare_ino): Likewise.
9321         (fts_build): Set the stat.st_ino member from D_INO.
9322         If it is likely to be useful, sort dirent entries on inode number.
9323
9324         * m4/fts.m4 (gl_FUNC_FTS_CORE): Check for fstatfs, sys/vfs.h,
9325         and the struct statfs.f_type member.
9326         * modules/fts (Depends-on): Add d-ino.
9327
9328 2008-09-26  Bruno Haible  <bruno@clisp.org>
9329
9330         * modules/sigpipe-die (Depends-on): Add sigpipe.
9331
9332         * lib/stdio.in.h (fprintf, vfprintf, printf, vprintf, fputc, putc,
9333         putchar, fputs, puts, fwrite): Replace when REPLACE_STDIO_WRITE_FUNCS
9334         and GNULIB_STDIO_H_SIGPIPE are set.
9335         * lib/stdio-write.c: New file.
9336         * m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FPRINTF, GNULIB_PRINTF,
9337         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
9338         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
9339         REPLACE_STDIO_WRITE_FUNCS.
9340         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FPRINTF, GNULIB_PRINTF,
9341         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
9342         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
9343         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
9344         * modules/stdio (Files): Add lib/stdio-write.c.
9345         (Makefile.am): Substitute GNULIB_FPRINTF, GNULIB_PRINTF,
9346         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
9347         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
9348         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
9349         * m4/fprintf-posix.m4 (gl_REPLACE_FPRINTF): Define
9350         REPLACE_FPRINTF_POSIX.
9351         * m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF): Define
9352         REPLACE_PRINTF_POSIX.
9353         * m4/vfprintf-posix.m4 (gl_REPLACE_VFPRINTF): Define
9354         REPLACE_VFPRINTF_POSIX.
9355         * m4/vprintf-posix.m4 (gl_REPLACE_VPRINTF): Define
9356         REPLACE_VPRINTF_POSIX.
9357         * doc/posix-functions/fprintf.texi: Mention the sigpipe module and the
9358         SIGPIPE issue.
9359         * doc/posix-functions/fputc.texi: Likewise.
9360         * doc/posix-functions/fputs.texi: Likewise.
9361         * doc/posix-functions/fwrite.texi: Likewise.
9362         * doc/posix-functions/printf.texi: Likewise.
9363         * doc/posix-functions/putc.texi: Likewise.
9364         * doc/posix-functions/putchar.texi: Likewise.
9365         * doc/posix-functions/puts.texi: Likewise.
9366         * doc/posix-functions/vfprintf.texi: Likewise.
9367         * doc/posix-functions/vprintf.texi: Likewise.
9368
9369         * modules/safe-write (Depends-on): Add write.
9370
9371         * modules/sigpipe-tests: New file.
9372         * tests/test-sigpipe.c: New file.
9373         * tests/test-sigpipe.sh: New file.
9374
9375         * modules/write: New file.
9376         * lib/unistd.in.h: Include <sys/types.h>.
9377         (write): New declaration.
9378         * lib/write.c: New file.
9379         * m4/write.m4: New file.
9380         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
9381         GNULIB_UNISTD_H_SIGPIPE, GNULIB_WRITE, REPLACE_WRITE.
9382         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_SIGPIPE,
9383         GNULIB_WRITE, REPLACE_WRITE.
9384         * doc/posix-functions/write.texi: Mention the write, sigpipe modules
9385         and the SIGPIPE issue.
9386
9387         * lib/signal.in.h (SIGPIPE): Define to a replacement value.
9388         (raise): New declaration.
9389         * lib/sigprocmask.c (SIGPIPE_handler): New variable.
9390         (ext_signal): New function.
9391         (rpl_raise): New function.
9392         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize
9393         GNULIB_SIGNAL_H_SIGPIPE.
9394         * modules/signal (Makefile.am): Substitute GNULIB_SIGNAL_H_SIGPIPE.
9395         * doc/posix-headers/signal.texi: Mention the SIGPIPE issue.
9396
9397         * modules/sigpipe: New file.
9398         * m4/sigpipe.m4: New file.
9399
9400 2008-09-25  Derek Price  <derek@ximbiot.com>
9401             Bruno Haible  <bruno@clisp.org>
9402
9403         * gnulib-tool (func_import): Report all license incompatibilities, not
9404         just the first one.
9405
9406 2008-09-25  Bruno Haible  <bruno@clisp.org>
9407
9408         * gnulib-tool (func_import): When computing the edits, consider not
9409         only the Makefile.ams that exist but also those that will be generated.
9410
9411 2008-09-25  Simon Josefsson  <simon@josefsson.org>
9412
9413         * modules/sys_select-tests (Depends-on): Remove sys_select itself,
9414         fixes gnulib-tool --test warning about duplicate dependency.
9415
9416 2008-09-25  Bruno Haible  <bruno@clisp.org>
9417
9418         * gnulib-tool: Don't ask the user to perform edits in the generated
9419         Makefile.ams.
9420         (func_emit_lib_Makefile_am): Emit empty SUBDIRS. Execute edits that
9421         apply to the Makefile.am being generated.
9422         (func_emit_tests_Makefile_am): Execute edits that apply to the
9423         Makefile.am being generated.
9424         (func_import): Setup list of Makefile.am edits before emitting the
9425         Makefile.ams, not at the end.
9426         (func_create_testdir): Update.
9427         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
9428
9429 2008-09-25  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9430
9431         * gnulib-tool (func_import): Store the --tests-base option in the
9432         comment in gnulib-cache.m4.
9433
9434 2008-09-24  Paolo Bonzini  <bonzini@gnu.org>
9435
9436         * NEWS: Document increased portability that sys_select now provides.
9437
9438         * lib/sys_select.in.h: Install select wrapper.
9439         * lib/sys_socket.in.h: Use more descriptive name when there is no
9440         select wrapper.
9441         * lib/winsock-select.c: New.
9442         * m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
9443         Require gl_HEADER_SYS_SOCKET.
9444         * modules/sys_select: Depend on alloca, add lib/winsock-select.c.
9445         * modules/sys_select-tests: Copy dependencies from modules/poll-tests.
9446         * tests/test-sys_select.c: Add functional tests.
9447
9448 2008-09-24  Eric Blake  <ebb9@byu.net>
9449
9450         open, fopen: close fd leak in last patch
9451         * lib/open.c (rpl_open): Close fd before returning error.
9452         * lib/fopen.c (rpl_fopen): Close fd before returning error.
9453         * doc/posix-functions/open.texi (open): Document that Irix also
9454         has the bug.
9455         * doc/posix-functions/fopen.texi (fopen): Likewise.
9456         Reported by Paolo Bonzini.
9457
9458 2008-09-24  Bruno Haible  <bruno@clisp.org>
9459
9460         Ensure that a filename ending in a slash cannot be used to access a
9461         non-directory.
9462         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
9463         to check whether it's really a directory.
9464         * lib/fopen.c: Include fcntl.h, unistd.h.
9465         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
9466         and fdopen().
9467         * modules/fopen (Depends-on): Add unistd.
9468         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
9469         * tests/test-fopen.c (main): Likewise.
9470         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
9471         * doc/posix-functions/fopen.texi: Likewise.
9472         Reported by Eric Blake.
9473
9474 2008-09-23  Eric Blake  <ebb9@byu.net>
9475
9476         c-stack: avoid compiler optimizations when provoking overflow
9477         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
9478         recursion harder to optimize, to ensure a stack overflow occurs.
9479         * tests/test-c-stack.c (recurse): Likewise.
9480         Borrowed from libsigsegv.
9481
9482         c-stack: work around Irix sigaltstack bug
9483         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
9484         whether sigaltstack uses wrong end of stack_t (copied in part from
9485         libsigsegv).
9486         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
9487         Irix bug, without requiring an over-allocation.
9488         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
9489         bug.
9490
9491         fopen: document mingw bug on directories
9492         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
9493         not allowing a stream visiting a directory, even though reading
9494         from such a stream is not portable.
9495
9496 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
9497
9498         * lib/poll.c: Rewrite.
9499         * modules/poll: Depend on alloca.
9500
9501 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
9502
9503         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
9504         instead define prototypes for a full set of wrappers.  Ensure
9505         that Cygwin does not use the compatibility code, which is only
9506         for MinGW.
9507         * lib/winsock.c: New.
9508         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
9509         * modules/sys_socket: Add lib/winsock.c.
9510
9511         * modules/poll-tests: Add errno and perror.
9512         * tests/test-poll.c: Use ioctl, not ioctlsocket.
9513
9514 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
9515
9516         * tests/test-poll.c: Downgrade minimum needed Winsock version.
9517
9518 2008-09-23  Bruno Haible  <bruno@clisp.org>
9519
9520         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
9521         * doc/glibc-functions/*: Likewise.
9522
9523 2008-09-23  Simon Josefsson  <simon@josefsson.org>
9524
9525         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
9526         success.
9527
9528 2008-09-22  Eric Blake  <ebb9@byu.net>
9529             Bruno Haible  <bruno@clisp.org>
9530
9531         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
9532         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
9533         supply %A but mishandle pseudo-NaN.
9534         Reported by Simon Josefsson.
9535
9536 2008-09-21  Bruno Haible  <bruno@clisp.org>
9537
9538         * tests/test-lock.c (main): Tweak skip message.
9539         * tests/test-tls.c (main): Likewise.
9540
9541 2008-09-21  Bruno Haible  <bruno@clisp.org>
9542
9543         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
9544         whether 'struct sigaction' has sa_sigaction here...
9545         (gl_PREREQ_SIG_HANDLER_H): ... not here.
9546         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
9547
9548 2008-09-21  Bruno Haible  <bruno@clisp.org>
9549
9550         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
9551         section.
9552         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
9553         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
9554         the new section.
9555         (Support for obsolete systems lacking POSIX:2001): New section.
9556         (String handling <string.h>): Move strdup to the new section.
9557         Suggested by Simon Josefsson and Paolo Bonzini.
9558
9559 2008-09-21  Bruno Haible  <bruno@clisp.org>
9560
9561         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
9562         exponents in %e and %g results on 'long double'. Needed for mingw's
9563         improved *printf functions.
9564         * tests/test-vasprintf-posix.c (test_function): Likewise.
9565         * tests/test-snprintf-posix.h (test_function): Likewise.
9566         * tests/test-sprintf-posix.h (test_function): Likewise.
9567         Reported by Eric Blake.
9568
9569 2008-09-21  Bruno Haible  <bruno@clisp.org>
9570
9571         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
9572         * tests/test-sprintf-posix.h (test_function): Likewise.
9573
9574 2008-09-21  Bruno Haible  <bruno@clisp.org>
9575
9576         * modules/getpass (Depends-on): Add strdup-posix.
9577
9578         New module 'strdup-posix'.
9579         * modules/strdup-posix: New file.
9580         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
9581         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
9582         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
9583         REPLACE_STRDUP.
9584         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
9585         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
9586         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
9587         strdup-posix.
9588
9589         * modules/strdup (Depends-on): Remove malloc-posix.
9590
9591 2008-09-20  Bruno Haible  <bruno@clisp.org>
9592
9593         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
9594         Wildenhues.
9595
9596 2008-09-20  Bruno Haible  <bruno@clisp.org>
9597
9598         Ensure that wint_t gets defined on IRIX 5.3.
9599         * lib/wchar.in.h (wint_t): Define if not defined by the system.
9600         * lib/wctype.in.h (wint_t): Likewise.
9601         (__wctype_wint_t): Remove type.
9602         (isw*): Use wint_t instead of __wctype_wint_t.
9603         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
9604         * modules/wchar (Files): Add m4/wint_t.m4.
9605         (Makefile.am): Substitute HAVE_WINT_T.
9606         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
9607         * tests/test-wctype.c: Check that wint_t is defined.
9608         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
9609         * doc/posix-headers/wctype.texi: Likewise.
9610         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
9611
9612 2008-09-18  Bruno Haible  <bruno@clisp.org>
9613
9614         * gnulib-tool (func_exit): Update comment.
9615
9616 2008-09-18  Simon Josefsson  <simon@josefsson.org>
9617
9618         * modules/getaddrinfo (Depends-on): Remove strdup, this module
9619         assumes strdup exists and does not depend on strdup to return
9620         ENOMEM on out of memory conditions.
9621
9622 2008-09-18  Bruno Haible  <bruno@clisp.org>
9623
9624         * lib/vasnprintf.c (VASNPRINTF): When printing Â±0.0L in
9625         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
9626         digits for the exponent.
9627
9628 2008-09-18  Jim Meyering  <meyering@redhat.com>
9629             Bruno Haible  <bruno@clisp.org>
9630
9631         * lib/vasnprintf.c (decimal_point_char): Define also if
9632         NEED_PRINTF_INFINITE_LONG_DOUBLE.
9633
9634 2008-09-16  Bruno Haible  <bruno@clisp.org>
9635         and Eric Blake  <ebb9@byu.net>
9636
9637         vasnprintf: support Irix 5.3
9638         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
9639         that mishandle long double infinity.
9640         Reported by Tom G. Christensen.
9641
9642 2008-09-16  Bruno Haible  <bruno@clisp.org>
9643
9644         * doc/glibc-functions/scandir.texi: Mention the function is missing on
9645         Solaris 9.
9646         * doc/glibc-functions/alphasort.texi: Likewise.
9647         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
9648
9649 2008-09-16  Jim Meyering  <meyering@redhat.com>
9650
9651         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
9652         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
9653         a umask modification leak out of a subshell.  Otherwise, the
9654         opensolaris /bin/sh would be accepted and thus cause unwarranted
9655         failures in the coreutils test suite.
9656
9657 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
9658
9659         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
9660         to succeed.
9661
9662 2008-09-16  Jim Meyering  <meyering@redhat.com>
9663
9664         avoid spurious test failure when library is built without ACL support
9665         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
9666         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
9667         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
9668         * tests/test-copy-acl.sh: Likewise.
9669
9670 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9671
9672         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
9673         based on character occurrence counts.
9674
9675 2008-09-15  Eric Blake  <ebb9@byu.net>
9676
9677         tests: avoid some compiler warnings
9678         * tests/test-memchr.c (main): Pass NULL indirectly.
9679         * tests/test-closein.c (main): Avoid unused variable.
9680
9681 2008-09-15  Bruno Haible  <bruno@clisp.org>
9682
9683         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
9684         are missing on OpenBSD 4.0 individually.
9685         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
9686
9687 2008-09-15  Bruno Haible  <bruno@clisp.org>
9688
9689         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
9690         * doc/posix-functions/strerror.texi: Mention also Cygwin.
9691         * doc/posix-functions/perror.texi: Likewise.
9692         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
9693         is missing.
9694         Reported by Eric Blake.
9695
9696         * lib/errno.in.h: Use replacement values >= 2000.
9697         Reported by Eric Blake.
9698
9699 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9700
9701         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
9702         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
9703         limit.
9704         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
9705         compareseq was aborted.
9706
9707 2008-09-14  Bruno Haible  <bruno@clisp.org>
9708
9709         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
9710         yvec_edit_count.
9711         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
9712         (fstrcmp_bounded): Simplify result computation accordingly.
9713
9714 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9715
9716         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
9717         (fstrcmp): Define in terms of fstrcmp_bounded.
9718         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
9719         lower_bound argument.
9720         Return quickly if the result is certainly < lower_bound.
9721         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
9722
9723 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9724
9725         * lib/diffseq.h (EARLY_ABORT): New macro.
9726         (compareseq): Change return type to bool. Return true when EARLY_ABORT
9727         evaluates to true.
9728
9729 2008-09-14  Bruno Haible  <bruno@clisp.org>
9730
9731         * modules/perror-tests: New file.
9732         * tests/test-perror.sh: New file.
9733         * tests/test-perror.c: New file.
9734
9735         New module 'perror'.
9736         * lib/stdio.in.h (perror): New declaration.
9737         * lib/perror.c: New file.
9738         * m4/perror.m4: New file.
9739         * modules/perror: New file.
9740         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
9741         * doc/posix-functions/perror.texi: Mention the perror module.
9742         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
9743         REPLACE_PERROR.
9744         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
9745         REPLACE_PERROR.
9746
9747 2008-09-14  Bruno Haible  <bruno@clisp.org>
9748
9749         * modules/stdio (Makefile.am): Reorder to match the order in
9750         lib/stdio.in.h.
9751         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
9752
9753 2008-09-13  Bruno Haible  <bruno@clisp.org>
9754
9755         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
9756
9757 2008-09-13  Bruno Haible  <bruno@clisp.org>
9758
9759         Extend strerror to cover the added errno values.
9760         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
9761         (rpl_strerror): Provide error messages for the added errno values and
9762         for the WSA* values.
9763         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
9764         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
9765         strerror.
9766         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
9767         * modules/strerror (Depends-on): Add errno.
9768         * doc/posix-functions/strerror.texi: Document the change.
9769         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
9770         and EOVERFLOW.
9771
9772 2008-09-13  Bruno Haible  <bruno@clisp.org>
9773
9774         * modules/EOVERFLOW: Remove file.
9775         * m4/eoverflow.m4: Remove file.
9776         * modules/EOVERFLOW-tests: Remove file.
9777         * tests/test-EOVERFLOW.c: Remove file.
9778         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
9779         * modules/ftell (Depends-on): Likewise.
9780         * modules/getdelim (Depends-on): Likewise.
9781         * modules/getugroups (Depends-on): Likewise.
9782         * modules/poll (Depends-on): Likewise.
9783         * modules/snprintf (Depends-on): Likewise.
9784         * modules/sprintf-posix (Depends-on): Likewise.
9785         * modules/vasnprintf (Depends-on): Likewise.
9786         * modules/vasprintf (Depends-on): Likewise.
9787         * modules/vfprintf-posix (Depends-on): Likewise.
9788         * modules/vsnprintf (Depends-on): Likewise.
9789         * modules/vsprintf-posix (Depends-on): Likewise.
9790         * modules/xvasprintf (Depends-on): Likewise.
9791         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
9792         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
9793         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
9794         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
9795         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
9796         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
9797         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
9798         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
9799         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
9800         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
9801         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
9802         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
9803         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
9804         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
9805         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
9806         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
9807         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
9808         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
9809         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
9810         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
9811         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
9812         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
9813         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
9814         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
9815         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
9816         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
9817         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
9818         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
9819         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
9820         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
9821         * MODULES.html.sh: Remove EOVERFLOW.
9822         * NEWS: Mention the change.
9823
9824 2008-09-13  Bruno Haible  <bruno@clisp.org>
9825
9826         * modules/errno-tests: New file.
9827         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
9828
9829         * lib/errno.in.h: New file.
9830         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
9831         * modules/errno: New file.
9832         * doc/posix-headers/errno.texi: Update documentation.
9833         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
9834
9835 2008-09-13  Bruno Haible  <bruno@clisp.org>
9836
9837         * tests/test-poll.c: Use #if for native Windows, rather than testing
9838         __MSVCRT__.
9839
9840 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9841             Bruno Haible  <bruno@clisp.org>
9842
9843         * lib/glob.c: Don't include <pwd.h> on native Windows.
9844         (WINDOWS32): New macro.
9845         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
9846
9847 2008-09-13  Bruno Haible  <bruno@clisp.org>
9848
9849         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
9850         (ETIMEDOUT): Remove macro.
9851         (glthread_cond_timedwait_multithreaded): New declaration.
9852         (glthread_cond_timedwait): Use it.
9853         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
9854         (glthread_cond_timedwait_multithreaded): New function.
9855
9856 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
9857
9858         * modules/poll-tests: Do not check for io.h.
9859         * tests/test-poll.c: Check for __MSVCRT__ instead.
9860
9861 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
9862
9863         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
9864         * modules/poll-tests: Add inet_pton, stdbool, sockets.
9865         * tests/test-poll.c: Use them.  Use _pipe on Windows.
9866
9867 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
9868
9869         * modules/poll-tests: New.
9870         * tests/test-poll.c: New.
9871
9872 2008-09-12  Eric Blake  <ebb9@byu.net>
9873
9874         frexp: test for NetBSD failure on -0.0
9875         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
9876         not all, bugs from NetBSD 3.0 have been fixed.
9877         * doc/posix-functions/frexp.texi (frexp): Document bug.
9878         Reported by Thomas Klausner.
9879
9880         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
9881         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
9882         literal -0.0.
9883         Reported by Jonathan C. Patschke <jp@centtech.com>.
9884
9885 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9886
9887         * lib/glthread/cond.h: Use dummy implementation also if
9888         USE_WIN32_THREADS.
9889
9890 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9891
9892         * modules/fnmatch-posix (License): Change to LGPLv2+.
9893         * modules/fnmatch-gnu (License): Likewise.
9894
9895 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
9896
9897         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
9898
9899 2008-09-11  Jim Meyering  <meyering@redhat.com>
9900
9901         * users.txt: Add gtk-vnc.
9902
9903 2008-09-08  Simon Josefsson  <simon@josefsson.org>
9904
9905         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
9906         rotate amounts.
9907
9908         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
9909         required for 16-bit and 8-bit rotates.
9910         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
9911         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
9912         UINT8_MAX instead of hard-coded constants.
9913         Suggested by Paul Eggert.
9914
9915 2008-09-07  Bruno Haible  <bruno@clisp.org>
9916
9917         * tests/test-striconveh.c (main): Check behaviour when converting from
9918         UTF-7.
9919
9920         Make striconveh work better with stateful encodings.
9921         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
9922         that iconv does not increment the inptr when returning -1/EINVAL.
9923
9924 2008-09-07  Bruno Haible  <bruno@clisp.org>
9925
9926         * build-aux/config.rpath: Update according to libtool-2.2.6.
9927         * build-aux/config.libpath: Likewise.
9928
9929 2008-09-06  Bruno Haible  <bruno@clisp.org>
9930
9931         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
9932         * lib/freadptr.c (freadptr): Likewise.
9933         * lib/freadseek.c (freadptrinc): Likewise.
9934         Reported by Simon Josefsson.
9935
9936 2008-09-06  Bruno Haible  <bruno@clisp.org>
9937
9938         * modules/freadptr (License): Change to LGPLv2+.
9939         * modules/freadseek (License): Likewise.
9940         Suggested by Eric Blake.
9941
9942         * modules/memchr2 (License): Change to LGPLv2+.
9943         Approved by Eric Blake.
9944
9945 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
9946             Bruno Haible  <bruno@clisp.org>
9947
9948         Make gnulib-tool work with native 'sed' on AIX.
9949         * gnulib-tool (sed_noop): New variable.
9950         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
9951         func_add_or_update, func_create_testdir): Use it to initialize sed
9952         script variables.
9953         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
9954
9955 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
9956             Bruno Haible  <bruno@clisp.org>
9957
9958         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
9959         also works after #include directives.
9960
9961 2008-09-04  OndÅ™ej Vašík  <ovasik@redhat.com>
9962
9963         getdate.y: reject an out-of-range timezone value
9964         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
9965         the range [-24...+24].  When specified with only one or two digits,
9966         * tests/test-getdate.c: Tests for the fix.
9967         * doc/getdate.texi: Document this change.
9968
9969 2008-09-03  Bruno Haible  <bruno@clisp.org>
9970
9971         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
9972
9973 2008-09-02  Simon Josefsson  <simon@josefsson.org>
9974
9975         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
9976         <bruce.korb@gmail.com> with ideas from Ben Pfaff
9977         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
9978         Blake <ebb9@byu.net>.
9979
9980         * tests/test-bitrotate.c: Add more test vectors.
9981
9982 2008-09-02  Eric Blake  <ebb9@byu.net>
9983
9984         vasnprintf-posix: handle large precision via %.*d
9985         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
9986         when handling it ourselves.
9987         * tests/test-vasnprintf-posix.c (test_function): Add test.
9988         * tests/test-snprintf-posix.h (test_function): Likewise.
9989         * tests/test-sprintf-posix.h (test_function): Likewise.
9990         * tests/test-vasprintf-posix.c (test_function): Likewise.
9991         Reported by Alain Guibert.
9992
9993 2008-09-01  Eric Blake  <ebb9@byu.net>
9994
9995         c-stack: make configure-time check more robust
9996         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
9997         successful sigaction call.
9998         Reported by Tom G. Christensen.
9999
10000 2008-09-01  Bruno Haible  <bruno@clisp.org>
10001
10002         New module 'findprog-lgpl'.
10003         * modules/findprog-lgpl: New file.
10004         * lib/findprog-lgpl.c: New file.
10005         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
10006         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
10007         to decide whether to use strdup or xstrdup, concatenated_filename or
10008         xconcatenated_filename.
10009
10010 2008-09-01  Bruno Haible  <bruno@clisp.org>
10011
10012         Split module 'concat-filename' into 'concat-filename' (LGPL) and
10013         'xconcat-filename' (GPL).
10014         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
10015         (License): Change to LGPLv2+.
10016         * modules/xconcat-filename: New file.
10017         * lib/concat-filename.h (concatenated_filename): Change specification.
10018         (xconcatenated_filename): New declaration.
10019         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
10020         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
10021         memory situations.
10022         * lib/xconcat-filename.c: New file.
10023         * NEWS: Mention the change.
10024         * lib/findprog.c: Include concat-filename.h, not filename.h.
10025         (find_in_path): Use xconcatenated_filename instead of
10026         concatenated_filename.
10027         * lib/javacomp.c: Include concat-filename.h, not filename.h.
10028         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
10029         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
10030         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
10031         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
10032         instead of concatenated_filename.
10033         * lib/javaexec.c: Include concat-filename.h, not filename.h.
10034         (execute_java_class): Use xconcatenated_filename instead of
10035         concatenated_filename.
10036         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
10037         * modules/javacomp (Depends-on): Likewise.
10038         * modules/javaexec (Depends-on): Likewise.
10039
10040 2008-09-01  Bruno Haible  <bruno@clisp.org>
10041
10042         Split module 'filename' into 'filename' and 'concat-filename'.
10043         * modules/filename: Keep only lib/filename.h.
10044         (License): Change to LGPLv2+.
10045         * modules/concat-filename: New file, extracted from modules/filename.
10046         * lib/filename.h (concatenated_filename): Remove declaration.
10047         * lib/concat-filename.h: New file, extracted from lib/filename.h.
10048         * lib/concat-filename.c: Include concat-filename.h.
10049         * NEWS: Mention the change.
10050
10051 2008-09-01  Simon Josefsson  <simon@josefsson.org>
10052
10053         * lib/bitrotate.h (rotl8, rotr8): Add.
10054
10055         * modules/bitrotate (configure.ac): Need
10056         AC_REQUIRE([AC_C_INLINE]).
10057         (Description): Mention stdint.h.  Reported by Bruno Haible
10058         <bruno@clisp.org>.
10059
10060         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
10061         Paolo Bonzini <bonzini@gnu.org>.
10062
10063 2008-08-31  Bruno Haible  <bruno@clisp.org>
10064
10065         Assume Solaris specific bi-arch conventions on Solaris systems.
10066         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
10067         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
10068         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
10069         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
10070         like acl_libdirstem.
10071         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
10072         acl_libdirstem.
10073         * NEWS: Mention the change.
10074         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
10075
10076 2008-08-31  Jim Meyering  <meyering@redhat.com>
10077
10078         * lib/strftime.h: Add comments describing the two added arguments.
10079
10080         remove duplicate #include directives
10081         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
10082         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
10083
10084 2008-08-31  Bruno Haible  <bruno@clisp.org>
10085
10086         New module 'sigpipe-die'.
10087         * modules/sigpipe-die: New file.
10088         * lib/sigpipe-die.h: New file.
10089         * lib/sigpipe-die.c: New file.
10090         * MODULES.html.sh (Signal handling): Add sigpipe-die.
10091
10092 2008-08-31  Bruno Haible  <bruno@clisp.org>
10093
10094         Don't override previously installed signal handlers.
10095         * lib/fatal-signal.c (saved_sigactions): New variable.
10096         (uninstall_handlers): Reset the signal to the saved handler, not
10097         to SIG_DFL (except when ignored).
10098         (install_handlers): Save the previous handlers.
10099
10100 2008-08-30  Bruno Haible  <bruno@clisp.org>
10101
10102         * gnulib-tool (func_reset_sigpipe): New function.
10103         (func_get_automake_snippet, func_modules_transitive_closure,
10104         func_import): Invoke it before a join command that reads from stdin,
10105         to avoid "echo: write error: Broken pipe" error messages on stderr.
10106         Reported by Sam Steingold <sds@gnu.org>.
10107
10108 2008-08-30  Bruno Haible  <bruno@clisp.org>
10109
10110         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
10111         Code copied from m4/open.m4.
10112         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
10113         access and the filename ends in a slash. Code copied from lib/open.c.
10114         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
10115         * tests/test-fopen.c (main): Check against bug with trailing slash.
10116
10117 2008-08-29  Bruno Haible  <bruno@clisp.org>
10118
10119         Avoid some "gcc -pedantic" warnings.
10120         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
10121         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
10122         * lib/dirent.in.h: Likewise.
10123         * lib/fcntl.in.h: Likewise.
10124         * lib/float.in.h: Likewise.
10125         * lib/iconv.in.h: Likewise.
10126         * lib/inttypes.in.h: Likewise.
10127         * lib/locale.in.h: Likewise.
10128         * lib/math.in.h: Likewise.
10129         * lib/netinet_in.in.h: Likewise.
10130         * lib/search.in.h: Likewise.
10131         * lib/signal.in.h: Likewise.
10132         * lib/stdarg.in.h: Likewise.
10133         * lib/stdint.in.h: Likewise.
10134         * lib/stdio.in.h: Likewise.
10135         * lib/stdlib.in.h: Likewise.
10136         * lib/string.in.h: Likewise.
10137         * lib/strings.in.h: Likewise.
10138         * lib/sys_select.in.h: Likewise.
10139         * lib/sys_socket.in.h: Likewise.
10140         * lib/sys_stat.in.h: Likewise.
10141         * lib/sys_time.in.h: Likewise.
10142         * lib/sysexits.in.h: Likewise.
10143         * lib/time.in.h: Likewise.
10144         * lib/unistd.in.h: Likewise.
10145         * lib/wchar.in.h: Likewise.
10146         * lib/wctype.in.h: Likewise.
10147         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
10148         * modules/fchdir (Makefile.am): Likewise.
10149         * modules/fcntl (Makefile.am): Likewise.
10150         * modules/float (Makefile.am): Likewise.
10151         * modules/iconv_open (Makefile.am): Likewise.
10152         * modules/inttypes (Makefile.am): Likewise.
10153         * modules/locale (Makefile.am): Likewise.
10154         * modules/math (Makefile.am): Likewise.
10155         * modules/netinet_in (Makefile.am): Likewise.
10156         * modules/search (Makefile.am): Likewise.
10157         * modules/signal (Makefile.am): Likewise.
10158         * modules/stdarg (Makefile.am): Likewise.
10159         * modules/stdint (Makefile.am): Likewise.
10160         * modules/stdio (Makefile.am): Likewise.
10161         * modules/stdlib (Makefile.am): Likewise.
10162         * modules/string (Makefile.am): Likewise.
10163         * modules/strings (Makefile.am): Likewise.
10164         * modules/sys_select (Makefile.am): Likewise.
10165         * modules/sys_socket (Makefile.am): Likewise.
10166         * modules/sys_stat (Makefile.am): Likewise.
10167         * modules/sys_time (Makefile.am): Likewise.
10168         * modules/sysexits (Makefile.am): Likewise.
10169         * modules/time (Makefile.am): Likewise.
10170         * modules/unistd (Makefile.am): Likewise.
10171         * modules/wchar (Makefile.am): Likewise.
10172         * modules/wctype (Makefile.am): Likewise.
10173         Reported by Reuben Thomas <rrt@sc3d.org>.
10174
10175 2008-08-29  Bruno Haible  <bruno@clisp.org>
10176
10177         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
10178         any more.
10179
10180 2008-08-29  Simon Josefsson  <simon@josefsson.org>
10181
10182         * MODULES.html.sh (Misc): Add bitrotate.
10183
10184         * modules/bitrotate: New file.
10185
10186         * lib/bitrotate.h: New file.
10187
10188         * modules/bitrotate-tests: New file.
10189
10190         * tests/test-bitrotate.c: New file.
10191
10192         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
10193         on the bitrotate module.
10194
10195         * lib/arctwo.c: Use new bitrotate module.
10196
10197 2008-08-29  Jim Meyering  <meyering@redhat.com>
10198
10199         bootstrap: merge changes from coreutils
10200         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
10201         of copied files.  Remove a kludge, now that this is fixed.
10202         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
10203         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
10204         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
10205
10206 2008-08-29  Bruno Haible  <bruno@clisp.org>
10207
10208         * MODULES.html.sh: Remove --cvs-urls option.
10209
10210 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
10211
10212         maint.mk: adjust to file name change
10213         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
10214
10215 2008-08-28  Jim Meyering  <meyering@redhat.com>
10216
10217         * modules/getndelim2 (License): Relicense to LGPLv2+.
10218         Approved by Richard Stallman for the version of 1995, and by
10219         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
10220
10221 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
10222
10223         * lib/getdelim.c (flockfile, funlockfile): Make all of them
10224         dummy if one is not available.  Do not touch them if
10225         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
10226         (getc_maybe_unlocked): New.
10227         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
10228
10229 2008-08-26  Eric Blake  <ebb9@byu.net>
10230
10231         doc/INSTALL: resync from autoconf
10232         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
10233         (INSTALL_PRELUDE): Delete; this is done more efficiently by
10234         moving...
10235         * install.texi [!autoconf]: ...here.  Resync from autoconf.
10236         * INSTALL: Regenerate.
10237         * INSTALL.ISO: New file.
10238         * INSTALL.UTF-8: Likewise.
10239
10240 2008-08-26  Jim Meyering  <meyering@redhat.com>
10241
10242         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
10243         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
10244         these definitions conditional, so that they may be overridden, too.
10245
10246 2008-08-26  Bruno Haible  <bruno@clisp.org>
10247
10248         Generate INSTALL file variants with prettier quotes.
10249         * doc/Makefile (INSTALL_PRELUDE): New macro.
10250         (INSTALL): Use it.
10251         (INSTALL.ISO, INSTALL.UTF-8): New rules.
10252
10253 2008-08-26  Bruno Haible  <bruno@clisp.org>
10254
10255         Run makeinfo in an English locale.
10256         * doc/Makefile (MAKEINFO): New variable.
10257
10258 2008-08-26  Bruno Haible  <bruno@clisp.org>
10259
10260         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
10261         Suggested by Eric Blake.
10262
10263 2008-08-25  Bruno Haible  <bruno@clisp.org>
10264
10265         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
10266
10267 2008-08-25  Eric Blake  <ebb9@byu.net>
10268
10269         c-stack: test that stack overflow can be caught
10270         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
10271         that platform allows handling stack overflow; at least OS/2 EMX
10272         has sigaltstack, but crashes before transferring control to
10273         handler on stack overflow.
10274         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
10275         check for HAVE_STACK_OVERFLOW_HANDLING.
10276         Reported by Elbert Pol.
10277
10278 2008-08-25  Bruno Haible  <bruno@clisp.org>
10279
10280         * doc/posix-functions/strftime.texi: Fix description of strftime
10281         module.
10282
10283 2008-08-24  Bruno Haible  <bruno@clisp.org>
10284
10285         * tests/uniwidth/test-uc_width2.c: New file.
10286         * tests/uniwidth/test-uc_width2.sh: New file.
10287         * modules/uniwidth/width-tests (Files): Add the new files.
10288         (TESTS): Add uniwidth/test-uc_width2.sh.
10289         (TESTS_ENVIRONMENT): New variable.
10290         (check_PROGRAMS): Add test-uc_width2.
10291         (test_uc_width2_SOURCES): New variable.
10292
10293         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
10294         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
10295         not 0x00AB.
10296         Reported by Alexander V. Lukyanov <lav@netis.ru>.
10297
10298 2008-08-22  Eric Blake  <ebb9@byu.net>
10299
10300         test-lock, test-tls: mention why a test is skipped
10301         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
10302         skipped.
10303         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
10304
10305         count-one-bits: relax license
10306         * modules/count-one-bits (License): Relicense to LGPLv2+.
10307         Suggested by Ludovic Courtès, approved by Ben Pfaff.
10308
10309 2008-08-22  Andreas Schwab  <schwab@suse.de>
10310
10311         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
10312         Remove spurious space in assignment.
10313
10314 2008-08-21  Simon Josefsson  <simon@josefsson.org>
10315
10316         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
10317         Paul Eggert <eggert@CS.UCLA.EDU>.
10318
10319 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
10320
10321         * modules/gettext: Add m4/threadlib.m4.
10322
10323 2008-08-19  Eric Blake  <ebb9@byu.net>
10324
10325         test-c-stack: fix compilation failure on FreeBSD 5.0
10326         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
10327         headers before <sys/resource.h>.
10328         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
10329         the bug.
10330         Reported by Nelson H. F. Beebe.
10331
10332         strverscmp: migrate from "strverscmp.h" to <string.h>
10333         * modules/string (Makefile.am): Add new hooks.
10334         * modules/strverscmp (Files): Remove strverscmp.h.
10335         (Depends-on): Add string.
10336         (configure.ac): Add indicator.
10337         (Include): Mention new header.
10338         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
10339         defaults.
10340         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
10341         results.
10342         * lib/strverscmp.h: Delete.
10343         * lib/string.in.h (strverscmp): Provide declaration, when needed.
10344         * tests/test-strverscmp.c (includes): Adjust client.
10345         * lib/check-version.c (includes): Likewise.
10346         * NEWS: Document the change.
10347
10348         strverscmp: add unit test
10349         * modules/strverscmp-tests: New file.
10350         * tests/test-strverscmp.c: Likewise.
10351
10352 2008-08-19  Simon Josefsson  <simon@josefsson.org>
10353
10354         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
10355         regarding Windows crypto stuff, from Mono.
10356
10357 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
10358
10359         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
10360         if present, for intel RND.  Return error on failures.
10361
10362 2008-08-18  Ben Pfaff  <blp@gnu.org>
10363
10364         gitlog-to-changelog: give better diagnostic for failed pipe-open
10365         * build-aux/gitlog-to-changelog: Improve error message: suggest
10366         that the version of Git may be too old.
10367
10368 2008-08-18  Simon Josefsson  <simon@josefsson.org>
10369
10370         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
10371         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
10372
10373 2008-08-18  Bruno Haible  <bruno@clisp.org>
10374
10375         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
10376         pthread_in_use().
10377
10378 2008-08-18  Bruno Haible  <bruno@clisp.org>
10379
10380         * lib/glthread/threadlib.c: Include <pthread.h>.
10381
10382 2008-08-18  Bruno Haible  <bruno@clisp.org>
10383
10384         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
10385         glthread_recursive_lock_* macros.
10386         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
10387         Fix syntax error.
10388
10389 2008-08-18  Bruno Haible  <bruno@clisp.org>
10390
10391         * lib/glthread/thread.c: Avoid forcing a context switch right after
10392         thread creation.
10393
10394 2008-08-17  Bruno Haible  <bruno@clisp.org>
10395
10396         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
10397         * lib/glthread/thread.h: Provide Win32 specific implementation.
10398         * modules/thread (Files): Add lib/glthread/thread.c.
10399         (Depends-on): Add lock.
10400         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
10401
10402 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10403
10404         New module 'yield'.
10405         * modules/yield: New file.
10406         * lib/glthread/yield.h: New file.
10407         * m4/yield.m4: New file.
10408         * MODULES.html.sh (Multithreading): Add yield.
10409
10410 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10411
10412         New module 'thread'.
10413         * modules/thread: New file.
10414         * lib/glthread/thread.h: New file.
10415         * m4/thread.m4: New file.
10416         * MODULES.html.sh (Multithreading): Add thread.
10417
10418 2008-08-17  Bruno Haible  <bruno@clisp.org>
10419
10420         * lib/glthread/lock.h: Include <stdlib.h> always.
10421         * lib/glthread/tls.h: Likewise.
10422         * lib/glthread/cond.h: Likewise.
10423
10424 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
10425
10426         New module 'cond'.
10427         * modules/cond: New file.
10428         * lib/glthread/cond.h: New file.
10429         * lib/glthread/cond.c: New file.
10430         * m4/cond.m4: New file.
10431         * MODULES.html.sh (Multithreading): Add cond.
10432
10433 2008-08-16  Eric Blake  <ebb9@byu.net>
10434
10435         c-stack: fix regression on Irix 5.3 from 2008-06-21
10436         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
10437         sa_sigaction...
10438         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
10439         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
10440         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
10441         * modules/signal (Makefile.am): Use the value.
10442         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
10443         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
10444         * doc/posix-headers/signal.texi (signal.h): Document this
10445         portability issue.
10446         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
10447         Reported by Tom G. Christensen.
10448
10449 2008-08-17  Bruno Haible  <bruno@clisp.org>
10450
10451         New module 'threadlib'.
10452         * modules/threadlib: New file.
10453         * lib/glthread/threadlib.c: New file, extracted from
10454         lib/glthread/lock.c.
10455         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
10456         functions.
10457         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
10458         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
10459         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
10460         macros.
10461         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
10462         (gl_DISABLE_THREADS): Remove macro.
10463         * modules/lock (Files): Remove build-aux/config.rpath.
10464         (Depends-on): Remove havelib. Add threadlib.
10465         (configure.ac-early): Remove section.
10466         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
10467         * modules/tls (Depends-on): Remove lock. Add threadlib.
10468         (Link): New section, copied from threadlib.
10469         * MODULES.html.sh (Multithreading): Add threadlib.
10470
10471 2008-08-14  Bruno Haible  <bruno@clisp.org>
10472
10473         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
10474         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
10475         glthread_rwlock_unlock, glthread_rwlock_destroy,
10476         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
10477         glthread_recursive_lock_destroy): Define as macros always.
10478         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
10479         glthread_lock_lock.
10480         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
10481         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
10482         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
10483         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
10484         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
10485         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
10486         (glthread_recursive_lock_lock_func): Renamed from
10487         glthread_recursive_lock_lock.
10488         (glthread_recursive_lock_unlock_func): Renamed from
10489         glthread_recursive_lock_unlock.
10490         (glthread_recursive_lock_destroy_func): Renamed from
10491         glthread_recursive_lock_destroy.
10492
10493 2008-08-14  Bruno Haible  <bruno@clisp.org>
10494
10495         * lib/glthread/lock.h: Renamed from lib/lock.h.
10496         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
10497         * lib/glthread/tls.h: Renamed from lib/tls.h.
10498         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
10499         * lib/fstrcmp.c: Update includes.
10500         * lib/strsignal.c: Update includes.
10501         * modules/lock (Files, Makefile.am): Update.
10502         (Include): Change to "glthread/lock.h".
10503         * modules/tls (Files, Makefile.am): Update.
10504         (Include): Change to "glthread/tls.h".
10505         * tests/test-lock.c: Update includes.
10506         * tests/test-tls.c: Update includes.
10507         * NEWS: Mention the renamed header files.
10508
10509 2008-08-11  Jim Meyering  <meyering@redhat.com>
10510
10511         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
10512
10513 2008-08-11  Eric Blake  <ebb9@byu.net>
10514
10515         test-c-stack: avoid C99-ism
10516         * tests/test-c-stack.c (main): Fix whitespace, move declaration
10517         before statement.
10518         Reported by Alain Guibert.
10519
10520 2008-08-10  Jim Meyering  <meyering@redhat.com>
10521
10522         ensure that return value of uinttostr et al are not ignored
10523         * lib/inttostr.h (__GNUC_PREREQ): Define.
10524         (__attribute_warn_unused_result__): Define.
10525         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
10526
10527 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
10528
10529         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
10530         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
10531
10532 2008-08-07  Jim Meyering  <meyering@redhat.com>
10533
10534         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
10535
10536         * modules/mkstemp (License): Relicense under LGPLv2+.
10537         * modules/tempname (License): Likewise.
10538
10539 2008-08-06  Bruno Haible  <bruno@clisp.org>
10540
10541         * lib/poll.c (poll): Further micro-optimization.
10542
10543 2008-08-06  Jim Meyering  <meyering@redhat.com>
10544
10545         inet_pton.c: use locale-independent tolower
10546         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
10547         (inet_pton6): Use c_tolower rather than tolower.
10548         * modules/inet_pton (Depends-on): Add c-ctype.
10549
10550 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
10551
10552         * lib/poll.c (poll): Avoid division when timeout is 0, cache
10553         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
10554
10555 2008-08-06  Jim Meyering  <meyering@redhat.com>
10556
10557         * modules/inet_pton (License): Relicense under LGPLv2+.
10558
10559 2008-08-03  Bruno Haible  <bruno@clisp.org>
10560
10561         Additional non-aborting API for lock and tls.
10562         * lib/lock.h: Include <errno.h>.
10563         (glthread_lock_init): New macro/function.
10564         (gl_lock_init): Define as wrapper around glthread_lock_init.
10565         (glthread_lock_lock): New macro/function.
10566         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
10567         (glthread_lock_unlock): New macro/function.
10568         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
10569         (glthread_lock_destroy): New macro/function.
10570         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
10571         (glthread_rwlock_init): New macro/function.
10572         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
10573         (glthread_rwlock_rdlock): New macro/function.
10574         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
10575         (glthread_rwlock_wrlock): New macro/function.
10576         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
10577         (glthread_rwlock_unlock): New macro/function.
10578         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
10579         (glthread_rwlock_destroy): New macro/function.
10580         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
10581         (glthread_recursive_lock_init): New macro/function.
10582         (gl_recursive_lock_init): Define as wrapper around
10583         glthread_recursive_lock_init.
10584         (glthread_recursive_lock_lock): New macro/function.
10585         (gl_recursive_lock_lock): Define as wrapper around
10586         glthread_recursive_lock_lock.
10587         (glthread_recursive_lock_unlock): New macro/function.
10588         (gl_recursive_lock_unlock): Define as wrapper around
10589         glthread_recursive_lock_unlock.
10590         (glthread_recursive_lock_destroy): New macro/function.
10591         (gl_recursive_lock_destroy): Define as wrapper around
10592         glthread_recursive_lock_destroy.
10593         (glthread_once): New macro/function.
10594         (gl_once): Define as wrapper around glthread_once.
10595         Update function declarations.
10596         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
10597         glthread_rwlock_init. Return error code.
10598         (glthread_rwlock_rdlock_multithreaded): Renamed from
10599         glthread_rwlock_rdlock. Return error code.
10600         (glthread_rwlock_wrlock_multithreaded): Renamed from
10601         glthread_rwlock_wrlock. Return error code.
10602         (glthread_rwlock_unlock_multithreaded): Renamed from
10603         glthread_rwlock_unlock. Return error code.
10604         (glthread_rwlock_destroy_multithreaded): Renamed from
10605         glthread_rwlock_destroy. Return error code.
10606         (glthread_recursive_lock_init_multithreaded): Renamed from
10607         glthread_recursive_lock_init. Return error code.
10608         (glthread_recursive_lock_lock_multithreaded): Renamed from
10609         glthread_recursive_lock_lock. Return error code.
10610         (glthread_recursive_lock_unlock_multithreaded): Renamed from
10611         glthread_recursive_lock_unlock. Return error code.
10612         (glthread_recursive_lock_destroy_multithreaded): Renamed from
10613         glthread_recursive_lock_destroy. Return error code.
10614         (glthread_once_call): Make static.
10615         (glthread_once_multithreaded): Renamed from glthread_once.
10616         * lib/tls.h: Include <errno.h>.
10617         (glthread_tls_key_init): New macro/function.
10618         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
10619         (glthread_tls_set): New macro/function.
10620         (gl_tls_set): Define as wrapper around glthread_tls_set.
10621         (glthread_tls_key_destroy): New macro/function.
10622         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
10623         Update function declarations.
10624         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
10625         glthread_tls_get.
10626         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
10627
10628 2008-08-04  Eric Blake  <ebb9@byu.net>
10629
10630         gnumakefile: use space, not TAB, outside of targets
10631         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
10632
10633 2008-08-02  Jim Meyering  <meyering@redhat.com>
10634
10635         getdate.y: avoid locale-dependent date parsing failure
10636         In Turkish locales, getdate would fail to recognize keywords
10637         containing a lowercase "i".  The solution is not to rely on
10638         locale-sensitive case-conversion.
10639         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
10640         (lookup_word): Use c_toupper in place of toupper.
10641         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
10642         Reported by Vefa Bicakci <bicave@superonline.com> in
10643         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
10644         * modules/getdate (Depends-on): Add c-ctype.
10645
10646 2008-08-02  Bruno Haible  <bruno@clisp.org>
10647
10648         * gnulib-tool (func_import): When updating or creating a .gitignore
10649         file, prepend each added line with a slash, and ignore leading slashes
10650         from the existing lines.
10651         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
10652
10653 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
10654
10655         Portability fix for GNU make 3.79.1.
10656         * top/GNUmakefile: Avoid 'else COND', which older GNU make
10657         versions do not understand.
10658
10659 2008-08-01  Bruno Haible  <bruno@clisp.org>
10660
10661         Work around bug of HP-UX 10.20 cc with -0.0 literal.
10662         * tests/test-isnanf.h (zero): New variable.
10663         (main): Avoid literal -0.0f.
10664         * tests/test-isnand.h (zero): New variable.
10665         (main): Avoid literal -0.0.
10666         * tests/test-isnanl.h (zero): New variable.
10667         (main): Avoid literal -0.0L.
10668         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
10669         (test_float, test_double, test_long_double): Avoid literals -0.0f,
10670         -0.0, -0.0L.
10671         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
10672         (test_signbitd): Avoid literal -0.0.
10673         (test_signbitl): Avoid literal -0.0L.
10674         * tests/test-ceilf1.c (zero): New variable.
10675         (main): Avoid literal -0.0f.
10676         * tests/test-ceill.c (zero): New variable.
10677         (main): Avoid literal -0.0L.
10678         * tests/test-floorf1.c (zero): New variable.
10679         (main): Avoid literal -0.0f.
10680         * tests/test-floorl.c (zero): New variable.
10681         (main): Avoid literal -0.0L.
10682         * tests/test-roundf1.c (zero): New variable.
10683         (main): Avoid literal -0.0f.
10684         * tests/test-round1.c (zero): New variable.
10685         (main): Avoid literal -0.0.
10686         * tests/test-roundl.c (zero): New variable.
10687         (main): Avoid literal -0.0L.
10688         * tests/test-truncf1.c (zero): New variable.
10689         (main): Avoid literal -0.0f.
10690         * tests/test-trunc1.c (zero): New variable.
10691         (main): Avoid literal -0.0.
10692         * tests/test-truncl.c (zero): New variable.
10693         (main): Avoid literal -0.0L.
10694         * tests/test-frexp.c (zero): New variable.
10695         (main): Avoid literal -0.0.
10696         * tests/test-frexpl.c (zero): New variable.
10697         (main): Avoid literal -0.0L.
10698         * tests/test-ldexpl.c (zero): New variable.
10699         (main): Avoid literal -0.0L.
10700         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
10701         (zerod, zerol): New variables.
10702         (test_function): Avoid literals -0.0, -0.0L.
10703         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
10704         (zerod, zerol): New variables.
10705         (test_function): Avoid literals -0.0, -0.0L.
10706         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
10707         (zerod, zerol): New variables.
10708         (test_function): Avoid literals -0.0, -0.0L.
10709         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
10710         (zerod, zerol): New variables.
10711         (test_function): Avoid literals -0.0, -0.0L.
10712         * tests/test-strtod.c (zero): New variable.
10713         (main): Avoid literal -0.0.
10714         Reported by Jonathan C. Patschke <jp@centtech.com>.
10715
10716 2008-07-31  Jim Meyering  <meyering@redhat.com>
10717
10718         sha256.h: correct definition of SHA224_DIGEST_SIZE
10719         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
10720         Reported by Paulie Pena IV <paulie4@gmail.com>.
10721         Define as 224 / 8, rather than as a literal.
10722         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
10723         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
10724         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
10725
10726 2008-07-31  Bruno Haible  <bruno@clisp.org>
10727
10728         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
10729         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
10730         Reported by Jonathan Patschke <jp@centtech.com>.
10731
10732 2008-07-31  Bruno Haible  <bruno@clisp.org>
10733
10734         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
10735         Reported by Paolo Bonzini <bonzini@gnu.org>.
10736
10737 2008-07-30  Eric Blake  <ebb9@byu.net>
10738
10739         test-strtod: allow compilation without -lm
10740         * tests/test-strtod.c (main): Avoid link dependence on fabs.
10741         Reported by Dennis Clarke <blastwave@gmail.com>.
10742
10743 2008-07-28  Jim Meyering  <meyering@redhat.com>
10744
10745         bootstrap: work also when there are no .po files in po/
10746         * build-aux/bootstrap (update_po_files): Complete the change
10747         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
10748
10749 2008-07-27  Jim Meyering  <meyering@redhat.com>
10750
10751         * users.txt: Add zile.
10752
10753 2008-07-26  Ben Pfaff  <blp@gnu.org>
10754
10755         Add missing dependencies on new m4/exponent[fdl].m4 files.
10756         * modules/isnanf-nolibm: Add m4/exponentf.m4.
10757         * modules/isnand-nolibm: Add m4/exponentd.m4.
10758         * modules/isnanl-nolibm: Add m4/exponentl.m4.
10759         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
10760         m4/isnan[fdl].m4, because the macros actually used moved.
10761         Reported by Jim Meyering.
10762
10763 2008-07-14  Ben Pfaff  <blp@gnu.org>
10764
10765         Add isinf module.
10766         * lib/isinf.c: New file.
10767         * lib/math.in.h: Define isinf macro if we have decided to replace
10768         it.
10769         * m4/isinf.m4: New file.
10770         * m4/math_h.m4: Initialize and substitute variables for isinf
10771         module.
10772         * modules/isinf: New file.
10773         * modules/isinf-tests: New file.
10774         * modules/math: Add substitutions for new module.
10775         * tests/test-isinf.c: New file.
10776         * doc/posix-functions/isinf.texi: Mention new module.
10777         * MODULES.html.sh: Mention new module.
10778
10779 2008-07-14  Ben Pfaff  <blp@gnu.org>
10780
10781         Factor out some macros for use by additional modules.
10782         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
10783         exponentf.m4.
10784         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
10785         exponentd.m4.
10786         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
10787         file exponentl.m4.
10788         * m4/exponentf.m4: New file.
10789         * m4/exponentd.m4: New file.
10790         * m4/exponentl.m4: New file.
10791         * modules/isnanf: Use new file m4/exponentf.m4.
10792         * modules/isnand: Use new file m4/exponentd.m4.
10793         * modules/isnanl: Use new file m4/exponentl.m4.
10794
10795 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
10796
10797         mktime.c: normalize tp->tm_isdst value to -1/0/1.
10798         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
10799         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
10800         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
10801
10802         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
10803         readlink on platforms without PATH_MAX.
10804
10805 2008-07-21  Eric Blake  <ebb9@byu.net>
10806
10807         Warn, not fail, on stale version.
10808         * top/GNUmakefile (_curr-ver): Tone down previous patch.
10809
10810         Don't allow installation with stale devel version number.
10811         * top/GNUmakefile (_is-install-target): New macro.
10812         (_curr-ver): Forbid installation with stale version number.
10813
10814 2008-07-20  Bruno Haible  <bruno@clisp.org>
10815
10816         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
10817         TESTS_ENVIRONMENT.
10818         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
10819
10820 2008-07-20  Bruno Haible  <bruno@clisp.org>
10821
10822         * lib/c-stack.h (c_stack_action): Add documentation.
10823         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
10824
10825 2008-07-20  Bruno Haible  <bruno@clisp.org>
10826
10827         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
10828         * modules/readlink (License): Likewise.
10829
10830 2008-07-17  Eric Blake  <ebb9@byu.net>
10831
10832         * modules/c-stack (Link): Fix typo.
10833
10834         Make c-stack use libsigsegv, when available.
10835         * modules/c-stack (Depends-on): Add libsigsegv.
10836         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
10837         needed.
10838         * lib/c-stack.c (SIGSTKSZ): Define fallback.
10839         (segv_handler, overflow_handler, c_stack_action)
10840         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
10841         implementation when libsigsegv is available, but only when using
10842         the library is necessary.
10843         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
10844         comment, explaining why XSI check fails on Linux.
10845         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
10846         * tests/test-c-stack2.sh: Tweak skip message.
10847         * NEWS: Document new link-time requirements.
10848
10849 2008-07-16  Eric Blake  <ebb9@byu.net>
10850
10851         c-stack: Expose false positives when not using libsigsegv.
10852         * modules/c-stack-tests (Files): Expand test.
10853         * tests/test-c-stack.c (main): Add means to conditionally trigger
10854         non-overflow SIGSEGV.
10855         * tests/test-c-stack2.sh: New file.
10856
10857 2008-07-14  Bruno Haible  <bruno@clisp.org>
10858
10859         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
10860         Reported by Eric Blake.
10861
10862 2008-07-14  Sam Steingold  <sds@gnu.org>
10863             Bruno Haible  <bruno@clisp.org>
10864
10865         New module libsigsegv.
10866         * modules/libsigsegv: New file.
10867         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
10868         modifications.
10869         * MODULES.html.sh (Signal handling): New section.
10870
10871 2008-07-14  Bruno Haible  <bruno@clisp.org>
10872
10873         * modules/unictype/ctype-* (Description): Add the word "function".
10874         Improves the resulting doc in MODULES.html.
10875
10876 2008-07-12  Ben Pfaff  <blp@gnu.org>
10877
10878         Add longlong module.
10879         * modules/longlong: New file.
10880
10881 2008-07-12  Bruno Haible  <bruno@clisp.org>
10882
10883         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
10884         to empty.
10885
10886 2008-07-10  Ben Pfaff  <blp@gnu.org>
10887
10888         Add isnan module.
10889         * doc/posix-functions/isnan.texi: Mention new module.
10890         * lib/math.in.h: Define isnan macro if we have decided to replace
10891         it.
10892         * m4/isnan.m4: New file.
10893         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
10894         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
10895         also.
10896         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
10897         redundancy.
10898         * m4/math_h.m4: Initialize and substitute variables for isnan
10899         module.
10900         * modules/isnan: New file.
10901         * modules/isnan-tests: New file.
10902         * modules/math: Add substitutions for new module.
10903         * tests/test-isnan.c: New file.
10904         * MODULES.html.sh: Mention new module.
10905
10906 2008-07-10  Ben Pfaff  <blp@gnu.org>
10907
10908         Add isnanf module.
10909         * lib/isnanf.m4: New file.
10910         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
10911         (gl_HAVE_ISNANF_IN_LIBM): New macro.
10912         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
10913         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
10914         * modules/isnanf: New file.
10915         * modules/isnanf-tests: New file.
10916         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
10917         files.
10918         * tests/test-isnanf-nolibm.c: factored most of its contents into
10919         new file tests/test-isnanf.h.
10920         * tests/test-isnanf.h: New file.
10921         * tests/test-isnanf.c: New file.
10922         * MODULES.html.sh: Mention new module.
10923         * doc/glibc-functions/isnanf.texi: Mention new module.
10924
10925 2008-07-10  Ben Pfaff  <blp@gnu.org>
10926
10927         Add isnand module.
10928         * lib/isnand.h: New file.
10929         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
10930         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
10931         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
10932         functionality also.
10933         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
10934         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
10935         (gl_HAVE_ISNAND_IN_LIBM): New macro.
10936         * modules/isnand: New file.
10937         * modules/isnand-tests: New file.
10938         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
10939         files.
10940         * tests/test-isnand-nolibm.c: factored most of its contents into
10941         new file tests/test-isnand.h.
10942         * tests/test-isnand.h: New file.
10943         * tests/test-isnand.c: New file.
10944         * MODULES.html.sh: Mention new module.
10945
10946 2008-07-10  Ben Pfaff  <blp@gnu.org>
10947
10948         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
10949         * lib/isnand.h: Rename lib/isnand-nolibm.h.
10950         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
10951         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
10952         * modules/isnanf-nolibm: Update references to renamed files.
10953         * modules/isnand-nolibm: Likewise.
10954         * modules/isnanf-nolibm-tests: Likewise.
10955         * modules/isnand-nolibm-tests: Likewise.
10956         * lib/frexp.c: Likewise.
10957         * lib/isfinite.c: Likewise.
10958         * lib/signbitd.c: Likewise.
10959         * lib/signbitf.c: Likewise.
10960         * lib/vasnprintf.c: Likewise.
10961         * tests/test-ceilf1.c: Likewise.
10962         * tests/test-ceilf2.c: Likewise.
10963         * tests/test-floorf1.c: Likewise.
10964         * tests/test-floorf2.c: Likewise.
10965         * tests/test-frexp.c: Likewise.
10966         * tests/test-round1.c: Likewise.
10967         * tests/test-round2.c: Likewise.
10968         * tests/test-roundf1.c: Likewise.
10969         * tests/test-strtod.c: Likewise.
10970         * tests/test-trunc1.c: Likewise.
10971         * tests/test-trunc2.c: Likewise.
10972         * tests/test-truncf1.c: Likewise.
10973         * tests/test-truncf2.c: Likewise.
10974         * NEWS: Mention the renamed header files.
10975
10976 2008-07-11  Jim Meyering  <meyering@redhat.com>
10977
10978         vc-list-files: make the last-resort awk code more portable
10979         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
10980         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
10981         does not support it.
10982
10983 2008-07-10  Eric Blake  <ebb9@byu.net>
10984
10985         Work with tar's bootstrap.
10986         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
10987         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
10988         an m4 comment.
10989
10990 2008-07-09  Jim Meyering  <meyering@redhat.com>
10991
10992         posix-shell.m4: fix typo that made this test malfunction
10993         * m4/posix-shell.m4: Remove capitalization in variable name.
10994
10995 2008-07-08  Bruno Haible  <bruno@clisp.org>
10996
10997         * m4/onceonly.m4: Update comments.
10998         Reported by Ben Pfaff <blp@cs.stanford.edu>.
10999
11000 2008-07-04  Jim Meyering  <meyering@redhat.com>
11001
11002         * users.txt: Add vc-dwim.
11003         (bison, coreutils): Use the gitweb URL.
11004
11005 2008-07-03  Jim Meyering  <meyering@redhat.com>
11006
11007         * users.txt: Add libffcall.  From Sam Steingold.
11008
11009 2008-07-03  OndÅ™ej Vašík  <ovasik@redhat.com>
11010
11011         getdate.y: do not ignore TZ with relative day, month or year offset
11012         * lib/getdate.y (get_date): Move the tz-handling block to follow the
11013         relative-date-handling, since otherwise, the latter would clobber the
11014         sole output (an updated Start value) of the tz-handling block.
11015         * tests/test-getdate.c: Tests for the fix
11016
11017 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11018
11019         Recognize 'foo_LIBRARIES += libgnu.a'.
11020         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
11021         makefile snippet has already specified an installation location,
11022         also using '+='.
11023
11024 2008-07-02  OndÅ™ej Vašík  <ovasik@redhat.com>
11025
11026         getdate.y: factor out common actions
11027         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
11028         Use them in place of open-coded actions.
11029
11030 2008-07-01  Simon Josefsson  <simon@josefsson.org>
11031
11032         Add self-test for getdate module.
11033         * modules/getdate-tests: New file.
11034         * tests/test-getdate.c: New file.
11035
11036 2008-06-29  Bruno Haible  <bruno@clisp.org>
11037
11038         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
11039         .gitignore.
11040         Reported by Sylvain Beucler <beuc@beuc.net>.
11041
11042 2008-06-29  Bruno Haible  <bruno@clisp.org>
11043
11044         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
11045         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
11046
11047 2008-06-29  Bruno Haible  <bruno@clisp.org>
11048
11049         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
11050         EXTRA_DIST.
11051         Reported by Sylvain Beucler <beuc@beuc.net>.
11052
11053 2008-06-26  Jim Meyering  <meyering@redhat.com>
11054
11055         make several modules depend on the "open" module
11056         This provides slightly increased consistency when opening-for-write
11057         the name of a non-directory spelled with a trailing slash.
11058         * modules/chdir-safer: Likewise.
11059         * modules/chown: Likewise.
11060         * modules/clean-temp: Likewise.
11061         * modules/copy-file: Likewise.
11062         * modules/fchdir: Likewise.
11063         * modules/fcntl-safer: Likewise.
11064         * modules/pipe: Likewise.
11065         * modules/utime: Likewise.
11066         Prompted by Eric Blake and Bruno Haible.
11067
11068 2008-06-24  Andreas Schwab  <schwab@suse.de>
11069
11070         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
11071         literals can be used as initializers for global variables.
11072
11073 2008-06-23  Eric Blake  <ebb9@byu.net>
11074
11075         Make gnulib-cache.m4 easier to diff.
11076         * gnulib-tool (func_import): Allow newlines when reading cached
11077         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
11078
11079 2008-06-23  Bruno Haible  <bruno@clisp.org>
11080
11081         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
11082         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
11083         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
11084         m4/signalblocking.m4.
11085         (gl_PREREQ_SIGACTION): Don't invoke it.
11086         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
11087         gl_PREREQ_SIG_HANDLER_H.
11088         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
11089         Don't check for sigaction here.
11090
11091 2008-06-23  Bruno Haible  <bruno@clisp.org>
11092
11093         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
11094         (install_handlers): Don't set the SA_RESETHAND flag.
11095
11096 2008-06-23  Bruno Haible  <bruno@clisp.org>
11097
11098         * m4/sigaction.m4: Comment fixes.
11099         * lib/signal.in.h: Likewise.
11100
11101 2008-06-23  Eric Blake  <ebb9@byu.net>
11102
11103         Fix typo.
11104         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
11105
11106         Avoid SA_ namespace.
11107         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
11108         Reported by Ralf Wildenhues.
11109
11110         Avoid test failure due to SA_RESTORER.
11111         * tests/test-sigaction.c (SA_MASK): New macro.
11112         (main): Avoid failing due to extension flags being set.
11113         Reported by Jim Meyering.
11114
11115         Revert use of sig-handler.h in sigprocmask.c.
11116         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
11117         it requires the existence of struct sigaction.
11118         * lib/sigprocmask.c (handler_t): Restore typedef.
11119         (rpl_signal, old_handlers): Use local type.
11120
11121 2008-06-22  Bruno Haible  <bruno@clisp.org>
11122
11123         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
11124         conditionally.
11125         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
11126
11127 2008-06-22  Bruno Haible  <bruno@clisp.org>
11128
11129         * doc/posix-functions/siginterrupt.texi: Move note.
11130
11131         * lib/signal.in.h (SA_RESTART): New macro.
11132         * lib/sigaction.c: Update comment.
11133
11134         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
11135
11136         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
11137         (gl_PREREQ_SIGPROCMASK): Invoke it.
11138         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
11139
11140         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
11141
11142         * lib/sigprocmask.c: Update a comment.
11143
11144 2008-06-21  Eric Blake  <ebb9@byu.net>
11145
11146         Use sigaction module rather than signal().
11147         * modules/c-stack (Depends-on): Add sigaction.
11148         * modules/fatal-signal (Depends-on): Likewise.
11149         * modules/nanosleep (Depends-on): Likewise.
11150         * modules/sigprocmask (Files): Add sig-handler.h.
11151         * modules/sigaction (Files): Likewise.
11152         * lib/sig-handler.h (get_handler): New file, suggested by Paul
11153         Eggert.
11154         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
11155         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
11156         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
11157         (init_fatal_signals): Likewise.
11158         * lib/nanosleep.c (rpl_nanosleep): Likewise.
11159         (siginterrupt): Delete fallback.
11160         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
11161         instead.
11162         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
11163         siginterrupt.
11164
11165         New module sigaction, for mingw.
11166         * modules/sigaction: New module...
11167         * modules/sigaction-tests: ...and its test.
11168         * m4/sigaction.m4: New file.
11169         * lib/sigaction.c: Likewise.
11170         * tests/test-sigaction.c: Likewise.
11171         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
11172         * modules/signal (Makefile.am): Likewise.
11173         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
11174         needed.
11175         * doc/posix-headers/signal.texi (signal.h): Mention provided
11176         types.
11177         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
11178         that sigaction is preferable.
11179         * doc/posix-functions/sigaction.texi (sigaction): Mention new
11180         module.
11181         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
11182         sigaction.
11183
11184         Improve robustness of sigprocmask by overriding signal.
11185         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
11186         is in use.
11187         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
11188         (SIGKILL, SIGSTOP): Provide fallbacks.
11189         (rpl_signal): Implement.
11190         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
11191         signal can be called inside handlers.
11192
11193         Fix nanosleep module on mingw.
11194         * modules/nanosleep (Depends-on): Add sys_select.
11195         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
11196
11197         Fix licensing of sigprocmask.
11198         * modules/raise (License): Relicense as LGPL.
11199
11200 2008-06-21  Bruno Haible  <bruno@clisp.org>
11201
11202         * lib/propername.c (proper_name_utf8): Don't use the transliterated
11203         result if it contains question marks.
11204         Reported by Michael Geng <linux@michaelgeng.de>.
11205
11206 2008-06-19  Bruno Haible  <bruno@clisp.org>
11207
11208         Fix CVS-ism.
11209         * doc/gnulib.texi: Include updated-stamp.texi.
11210         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
11211         (updated-stamp.texi): New rule.
11212         (gnulib.info): Depend on it.
11213         * doc/.gitignore: Add updated-stamp.texi.
11214         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
11215
11216 2008-06-19  Bruno Haible  <bruno@clisp.org>
11217
11218         * doc/Makefile (gnulib.info): Update and simplify dependencies.
11219         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
11220
11221 2008-06-19  Eric Blake  <ebb9@byu.net>
11222
11223         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
11224         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
11225         Reported by Stepan Kasal.
11226
11227 2008-06-18  Bruno Haible  <bruno@clisp.org>
11228
11229         * lib/fatal-signal.c (init_fatal_signals): Add comment.
11230         Reported by Eric Blake.
11231
11232 2008-06-18  Eric Blake  <ebb9@byu.net>
11233
11234         Work around cygwin 1.5.25 strsignal bug.
11235         * tests/test-strsignal.c: Allow for const char *.
11236         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
11237
11238 2008-06-18  Simon Josefsson  <simon@josefsson.org>
11239
11240         * users.txt: Update URL to article and add author/date
11241         information.
11242
11243 2008-06-17  Bruno Haible  <bruno@clisp.org>
11244
11245         New macro gl_DISABLE_THREADS.
11246         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
11247         if the user did not pass --enable-threads or --disable-threads option.
11248         (gl_DISABLE_THREADS): New macro.
11249         Reported by Eric Blake <ebb9@byu.net>.
11250
11251 2008-06-17  Bruno Haible  <bruno@clisp.org>
11252
11253         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
11254         when the macro ignores it.
11255         Based on a patch by Eric Blake <ebb9@byu.net>.
11256
11257 2008-06-17  Bruno Haible  <bruno@clisp.org>
11258
11259         * modules/tls (License): Change to LGPLv2+.
11260         Reported by Eric Blake.
11261
11262 2008-06-17  Eric Blake  <ebb9@byu.net>
11263
11264         Simplify c-stack prerequisites.
11265         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
11266         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
11267         no longer requires <ucontext.h> to exist.  Optimize setrlimit
11268         check.
11269         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
11270         <sys/resource.h>.
11271
11272         Move c-stack test into testsuite.
11273         * modules/c-stack-tests: New file.
11274         * lib/c-stack.c [DEBUG]: Move test program...
11275         * tests/test-c-stack.c: ...into this new file.  Skip rather than
11276         fail test if sigaltstack is lacking.
11277         * tests/test-c-stack.sh: New driver file.
11278
11279 2008-06-16  Eric Blake  <ebb9@byu.net>
11280
11281         Use raise module consistently.
11282         * modules/fatal-signal (Depends-on): Add raise.
11283         * modules/sigprocmask (Depends-on): Likewise.
11284         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
11285         * lib/sigprocmask.c (sigprocmask): Likewise.
11286         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
11287         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
11288
11289         Fix compliance bug in sigpending.
11290         * lib/sigprocmask.c (sigpending): Return pending array via
11291         parameter, not return value.
11292
11293 2008-06-14  Eric Blake  <ebb9@byu.net>
11294
11295         Improve obstack-printf test code.
11296         * tests/test-obstack-printf.c (test_function): Fix comment, and
11297         simplify usage of obstack_* in macros.  Add a test for coverage.
11298         Reported by Bruno Haible.
11299
11300 2008-06-14  Bruno Haible  <bruno@clisp.org>
11301
11302         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
11303         array size as a constant, not as a const variable.
11304         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
11305         AC_USE_SYSTEM_EXTENSIONS.
11306         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
11307         Test whether the obstack_printf function actually exists.
11308         * modules/obstack-printf (Depends-on): Add extensions.
11309         (Include): Remove obstack.h.
11310         * modules/obstack-printf-posix (Depends-on): Add extensions.
11311         (Include): Remove obstack.h.
11312
11313 2008-06-13  Eric Blake  <ebb9@byu.net>
11314
11315         Add obstack-printf and obstack-printf-posix modules.
11316         * modules/obstack-printf: New file.
11317         * modules/obstack-printf-posix: Likewise.
11318         * MODULES.html.sh (Misc): Mention them.
11319         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
11320         Likewise.
11321         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
11322         Likewise.
11323         * modules/stdio (Makefile.am): Accomodate new modules.
11324         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
11325         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
11326         Declare.
11327         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
11328         functions.
11329         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
11330         (gl_REPLACE_OBSTACK_PRINTF): New macros
11331         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
11332         * tests/test-obstack-printf.c: New file.
11333         * modules/obstack-printf-tests: Likewise.
11334         * modules/obstack-printf-posix-tests: Likewise.
11335
11336 2008-06-11  Bruno Haible  <bruno@clisp.org>
11337
11338         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
11339         * lib/open.c: Include errno.h.
11340         (open): Fail when attempting to write to a file that has a trailing
11341         slash.
11342         * tests/test-open.c (main): Test against trailing slash bug.
11343         * doc/posix-functions/open.texi: Mention the trailing slash bug.
11344
11345 2008-06-10  Bruno Haible  <bruno@clisp.org>
11346
11347         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
11348         for $? to work inside the trap command, with various /bin/sh-s.
11349         * tests/test-vc-list-files-cvs.sh: Likewise.
11350
11351 2008-06-10  Bruno Haible  <bruno@clisp.org>
11352
11353         * lib/acl-internal.h: Don't include gettext.h here.
11354         * lib/set-mode-acl.c: Include gettext.h here.
11355         * lib/copy-acl.c: Likewise.
11356
11357 2008-06-10  Bruno Haible  <bruno@clisp.org>
11358
11359         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
11360         * lib/wait-process.c (wait_subprocess): Likewise.
11361         * lib/execute.h (execute): Add termsigp argument.
11362         * lib/execute.c (execute): Likewise.
11363         * lib/csharpcomp.c (compile_csharp_using_pnet,
11364         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
11365         * lib/csharpexec.c (execute_csharp_using_pnet,
11366         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
11367         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
11368         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
11369         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
11370         is_jikes_present): Update.
11371         * lib/javaexec.c (execute_java_class): Update.
11372         * lib/javaversion.c (execute_and_read_line): Update.
11373         * NEWS: Document the changes.
11374         Reported by Eric Blake.
11375
11376 2008-06-10  Eric Blake  <ebb9@byu.net>
11377
11378         Add missing include.
11379         * tests/test-strstr.c (includes): Add <signal.h>.
11380         * tests/test-strcasestr.c (includes): Likewise.
11381         * tests/test-memmem.c (includes): Likewise.
11382
11383 2008-06-10  Bruno Haible  <bruno@clisp.org>
11384
11385         * lib/wait-process.c (wait_subprocess): Add an assertion.
11386
11387 2008-06-10  Bruno Haible  <bruno@clisp.org>
11388
11389         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
11390
11391 2008-06-10  Bruno Haible  <bruno@clisp.org>
11392
11393         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
11394         using alarm().
11395         * tests/test-strcasestr.c (main): Likewise.
11396         * tests/test-strstr.c (main): Likewise.
11397
11398 2008-06-09  Bruno Haible  <bruno@clisp.org>
11399
11400         Work around the Solaris 10 ACE ACLs ABI change.
11401         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
11402         declare if ACL_NO_TRIVIAL is present.
11403         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
11404         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
11405         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
11406         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
11407         define if ACL_NO_TRIVIAL is present.
11408         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
11409         and use the current ABI.
11410         (file_has_acl): Use same #if condition as elsewhere.
11411         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
11412         in use, and use the current ABI.
11413         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
11414         Reported by Jim Meyering.
11415
11416 2008-06-09  Eric Blake  <ebb9@byu.net>
11417
11418         Work around environments that (stupidly) ignore SIGALRM.
11419         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
11420         before using alarm().
11421         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
11422         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
11423         Reported by Ian Beckwith <ianb@erislabs.net>.
11424
11425         Produce autobuild blurb earlier in log.
11426         * modules/autobuild (configure.ac-early): Move AB_INIT here.
11427
11428 2008-06-09  Jim Meyering  <meyering@redhat.com>
11429         and OndÅ™ej Vašík  <ovasik@redhat.com>
11430
11431         utimens.c: correct kernel bug work-around
11432         OndÅ™ej Vašík found that the invalid return value of 280 indicates
11433         failure, not success, and the kernel bug we're trying to work
11434         around affects not just the utimensat call, but also the fallback
11435         futimens call.
11436         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
11437         not success.
11438         [HAVE_FUTIMENS]: Use the same work-around, here.
11439
11440 2008-06-09  Jim Meyering  <meyering@redhat.com>
11441
11442         add more guards around definition of ACE_-related code
11443         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
11444         ALLOW and ACE_OWNER are also defined.
11445
11446 2008-06-08  Bruno Haible  <bruno@clisp.org>
11447
11448         * lib/acl-internal.h: Add me as co-author.
11449         * lib/file-has-acl.c: Likewise.
11450         * lib/set-mode-acl.c: Likewise.
11451         * lib/copy-acl.c: Likewise.
11452
11453 2008-06-08  Bruno Haible  <bruno@clisp.org>
11454
11455         Add support for AIX ACLs.
11456         * lib/acl-internal.h (acl_nontrivial): New declaration.
11457         * lib/file-has-acl.c (acl_nontrivial): New function.
11458         (file_has_acl): Add implementation using AIX 4 ACL API.
11459         * lib/set-mode-acl.c (qset_acl): Likewise.
11460         * lib/copy-acl.c (qcopy_acl): Likewise.
11461
11462 2008-06-08  Bruno Haible  <bruno@clisp.org>
11463
11464         Add support for HP-UX ACLs.
11465         * lib/acl-internal.h (acl_nontrivial): New declaration.
11466         * lib/file-has-acl.c (acl_nontrivial): New function.
11467         (file_has_acl): Add implementation using HP-UX 11 ACL API.
11468         * lib/set-mode-acl.c (qset_acl): Likewise.
11469         * lib/copy-acl.c (qcopy_acl): Likewise.
11470
11471 2008-06-08  Bruno Haible  <bruno@clisp.org>
11472
11473         Add support for Cygwin ACLs.
11474         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
11475         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
11476         the chmod_or_fchmod call.
11477         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
11478
11479 2008-06-08  Bruno Haible  <bruno@clisp.org>
11480
11481         Fix bug with setuid modes in Solaris 10+ code.
11482         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
11483         succeeded, when the mode contains some special bits.
11484
11485 2008-06-08  Bruno Haible  <bruno@clisp.org>
11486
11487         Add support for Solaris 7..10 ACLs.
11488         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
11489         declarations.
11490         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
11491         functions.
11492         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
11493         * lib/set-mode-acl.c (qset_acl): Likewise.
11494         * lib/copy-acl.c (qcopy_acl): Likewise.
11495
11496 2008-06-08  Bruno Haible  <bruno@clisp.org>
11497
11498         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
11499         declaration.
11500         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
11501         (acl_access_nontrivial): Remove MacOS X case.
11502         (file_has_acl): Use acl_extended_nontrivial.
11503         * lib/copy-acl.c (qcopy_acl): Likewise.
11504
11505 2008-06-08  Bruno Haible  <bruno@clisp.org>
11506
11507         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
11508
11509 2008-06-08  Jim Meyering  <meyering@redhat.com>
11510
11511         * modules/acl (Maintainer): Add Bruno Haible.
11512
11513 2008-06-07  Bruno Haible  <bruno@clisp.org>
11514
11515         Improve support for Tru64 ACLs.
11516         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
11517         ACL on OSF/1.
11518
11519 2008-06-07  Bruno Haible  <bruno@clisp.org>
11520
11521         Add support for MacOS X ACLs.
11522         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
11523         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
11524         * lib/set-mode-acl.c (qset_acl): Likewise.
11525         * lib/copy-acl.c (qcopy_acl): Likewise.
11526
11527 2008-06-07  Bruno Haible  <bruno@clisp.org>
11528
11529         Fix memory leak introduced on 2008-05-22.
11530         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
11531         use.
11532
11533 2008-06-07  Bruno Haible  <bruno@clisp.org>
11534
11535         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
11536         to construct an empty ACL.
11537
11538 2008-06-07  Bruno Haible  <bruno@clisp.org>
11539
11540         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
11541         precisely.
11542         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
11543
11544 2008-06-07  Bruno Haible  <bruno@clisp.org>
11545
11546         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
11547         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
11548
11549 2008-06-07  Bruno Haible  <bruno@clisp.org>
11550
11551         * doc/posix-functions/_setjmp.texi: Explain the use of this function
11552         regardless of POSIX.
11553         * doc/posix-functions/_longjmp.texi: Likewise.
11554         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
11555         SystemV platform in this case.
11556
11557 2008-06-06  Eric Blake  <ebb9@byu.net>
11558
11559         Document abort() bugs.
11560         * doc/posix-functions/abort.texi (abort): Mention anomalies.
11561
11562         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
11563         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
11564         sigsetjmp.
11565         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
11566         siglongjmp, but only as a macro.
11567         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
11568         is obsolete.
11569         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
11570
11571         Tweak documentation to cover cygwin argz bugs.
11572         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
11573         argz bug fix; no code change needed since no cygwin releases
11574         occurred between the last fix and the bug being tested.
11575         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
11576         module and recently fixed cygwin bugs.
11577         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
11578         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
11579         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
11580         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
11581         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
11582         Likewise.
11583         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
11584         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
11585         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
11586         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
11587         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
11588         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
11589         Likewise.
11590
11591         Avoid gcc warning on cygwin.
11592         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
11593         !ACL_NO_TRIVIAL]: Avoid unused variable.
11594
11595 2008-06-05  Eric Blake  <ebb9@byu.net>
11596
11597         Be tolerant of UNKNOWN version in gnulib-tool test dir.
11598         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
11599         git-version-gen fails to come up with a version.
11600         Reported by Simon Josefsson.
11601
11602 2008-06-05  Jim Meyering  <meyering@redhat.com>
11603             Paul Eggert  <eggert@cs.ucla.edu>
11604
11605         utimens.c: work around a probable Linux kernel bug
11606         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
11607         appears to be a kernel bug that causes utimensat to return 280
11608         instead of 0, indicating success.
11609
11610 2008-06-04  Bruno Haible  <bruno@clisp.org>
11611
11612         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
11613         2008-06-01 commit.
11614
11615 2008-06-04  Bruno Haible  <bruno@clisp.org>
11616
11617         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
11618         * lib/file-has-acl.c (acl_access_nontrivial): New function.
11619         (file_has_acl): Use it. Save errno afterwards.
11620         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
11621
11622 2008-06-03  Bruno Haible  <bruno@clisp.org>
11623
11624         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
11625         draft code. Simplify #ifs.
11626         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
11627         Put Solaris code after POSIX-draft code. Fix comments regarding
11628         Solaris 10, HP-UX. Mention Cygwin.
11629         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
11630
11631 2008-06-03  Eric Blake  <ebb9@byu.net>
11632
11633         Provide fallback for older kernels.
11634         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
11635         Provide runtime fallback if kernel lacks support.
11636         Reported by Mike Frysinger.
11637
11638 2008-06-02  Bruno Haible  <bruno@clisp.org>
11639
11640         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
11641         it exists.
11642
11643 2008-06-02  Bruno Haible  <bruno@clisp.org>
11644
11645         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
11646         * lib/copy-acl.c (qcopy_acl): Update comment.
11647
11648 2008-06-02  Bruno Haible  <bruno@clisp.org>
11649
11650         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
11651         like ACL APIs.
11652
11653 2008-06-02  Bruno Haible  <bruno@clisp.org>
11654
11655         * tests/test-file-has-acl.sh: Use different code for Cygwin.
11656         * tests/test-set-mode-acl.sh: Likewise.
11657         * tests/test-copy-acl.sh: Likewise.
11658         * tests/test-copy-file.sh: Likewise.
11659
11660 2008-06-02  Bruno Haible  <bruno@clisp.org>
11661
11662         * tests/test-file-has-acl.sh: Remove unused code.
11663
11664 2008-06-01  Bruno Haible  <bruno@clisp.org>
11665
11666         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
11667         (copy_acl): Just a wrapper around qcopy_acl that emits the error
11668         messages.
11669         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
11670
11671 2008-06-01  Bruno Haible  <bruno@clisp.org>
11672
11673         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
11674         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
11675         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
11676         APIs.
11677         * modules/acl-tests (configure.ac): Remove tests now contained in
11678         m4/acl.m4.
11679
11680 2008-06-02  Jim Meyering  <meyering@redhat.com>
11681
11682         announce-gen: use a better key-server host name
11683         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
11684         it may be more consistently reliable.  Suggested by Werner Koch
11685         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
11686
11687 2008-06-01  Bruno Haible  <bruno@clisp.org>
11688
11689         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
11690         Reported by Voroskoi Andras <voroskoi@gmail.com>.
11691
11692 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
11693
11694         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
11695
11696 2008-06-01  Bruno Haible  <bruno@clisp.org>
11697
11698         New ACL tests.
11699         * tests/test-file-has-acl.sh: New file.
11700         * tests/test-file-has-acl.c: New file.
11701         * tests/test-set-mode-acl.sh: New file.
11702         * tests/test-set-mode-acl.c: New file.
11703         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
11704         * tests/test-copy-acl.c: New file.
11705         * modules/acl-tests: New file, based on modules/copy-file-tests.
11706         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
11707         (Depends-on): Add acl-tests.
11708         (configure.ac): Remove checks.
11709         (Makefile.am): Don't create test-sameacls program here any more.
11710
11711 2008-06-01  Bruno Haible  <bruno@clisp.org>
11712
11713         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
11714         * tests/test-sameacls.c: Include progname.h.
11715         (main): Invoke set_program_name. Portability fixes for MacOS X,
11716         Solaris, HP-UX.
11717
11718 2008-06-01  Bruno Haible  <bruno@clisp.org>
11719
11720         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
11721         function.
11722         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
11723
11724 2008-06-01  Bruno Haible  <bruno@clisp.org>
11725
11726         * modules/rpmatch (Depends-on): Add strdup.
11727
11728 2008-06-01  Bruno Haible  <bruno@clisp.org>
11729
11730         * lib/pipe.c: Include unistd-safer.h.
11731         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
11732         * modules/pipe (Depends-on): Add unistd-safer.
11733
11734 2008-05-30  Simon Josefsson  <simon@josefsson.org>
11735
11736         * modules/autobuild (configure.ac): Call AB_INIT.
11737
11738 2008-05-30  Simon Josefsson  <simon@josefsson.org>
11739
11740         * tests/test-getaddrinfo.c: Don't print debug messages by default.
11741         Suggested by Bruno Haible <bruno@clisp.org>.
11742
11743 2008-05-30  Simon Josefsson  <simon@josefsson.org>
11744
11745         * tests/test-base64.c: Cast size_t to unsigned long when invoking
11746         printf.  Use %lu instead of %d.  Reported by Bruno Haible
11747         <bruno@clisp.org>.
11748
11749 2008-05-29  Eric Blake  <ebb9@byu.net>
11750
11751         Prefer new POSIX 200x interfaces over futimesat.
11752         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
11753         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
11754         when available.
11755         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
11756
11757 2008-05-28  Bruno Haible  <bruno@clisp.org>
11758
11759         * modules/stpcpy (License): Change to LGPLv2+.
11760         Requested by David Lutterkort <dlutter@redhat.com>.
11761
11762 2008-05-27  Bruno Haible  <bruno@clisp.org>
11763
11764         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
11765         current mingw.
11766         Reported by Jose E. Marchesi <jemarch@gnu.org>.
11767
11768 2008-05-27  Bruno Haible  <bruno@clisp.org>
11769
11770         * modules/iconv_open (Link): New section, from module 'iconv'.
11771         * modules/striconv (Link): Likewise.
11772         * modules/striconveh (Link): Likewise.
11773         * modules/xstriconv (Link): Likewise.
11774         * modules/unicodeio (Link): Likewise.
11775         * modules/propername (Link): Likewise.
11776         Reported by Jim Meyering.
11777
11778 2008-05-26  Jim Meyering  <meyering@redhat.com>
11779
11780         sha256: do not artificially restrict buffer length to be < 2^32
11781         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
11782         uint32_t to size_t.
11783         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
11784         to match.
11785
11786         avoid unaligned access errors, e.g., on sparc
11787         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
11788         direct access through a possibly-unaligned uint64* pointer.
11789         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
11790         direct access through a possibly-unaligned uint32* pointer.
11791         Prompted by this patch from Tom "spot" Callaway:
11792         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
11793
11794         sha512.c: fix typo in comment
11795         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
11796
11797 2008-05-25  Bruno Haible  <bruno@clisp.org>
11798
11799         * lib/set-mode-acl.c: Renamed from lib/acl.c.
11800         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
11801         (Makefile.am): Update lib_SOURCES.
11802
11803 2008-05-25  Bruno Haible  <bruno@clisp.org>
11804
11805         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
11806
11807 2008-05-25  Jim Meyering  <meyering@redhat.com>
11808
11809         useless-if-before-free: freed expr may have white-space differences
11810         * build-aux/useless-if-before-free: Recognize cases in which the
11811         freed expression differs from the tested one in embedded white
11812         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
11813         $1 was used, so we can't make any regexp shy.  Improved tests now
11814         detect this.
11815
11816         useless-if-before-free: accept white space in the expression.
11817         * build-aux/useless-if-before-free: For now, any white space
11818         in the expression must be identical in the free argument.
11819
11820         useless-if-before-free: efficiency tweak
11821         * build-aux/useless-if-before-free: Make the expression-matching
11822         regexp "shy".
11823         Make the *outer* regexp shy, not the expr-matching one.
11824
11825         update code-in-comment to accept cast of free arg
11826         * build-aux/useless-if-before-free: Update regexp.
11827
11828 2008-05-25  Bruno Haible  <bruno@clisp.org>
11829
11830         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
11831         * modules/copy-file-tests (Files, Makefile.am): Update.
11832         * tests/test-copy-file.c (func_test_copy): Update.
11833
11834 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
11835
11836         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
11837
11838 2008-05-23  Bruno Haible  <bruno@clisp.org>
11839
11840         Improve support for ACLs on OSF/1.
11841         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
11842         Remove fallback for unknown flavors of ACLs.
11843
11844 2008-05-22  Bruno Haible  <bruno@clisp.org>
11845
11846         Add support for ACLs on OSF/1.
11847         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
11848         replacements.
11849         (acl_free_text): New macro fallback.
11850         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
11851         acl_free.
11852         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
11853         acl_free_text function. Require AC_C_INLINE.
11854
11855 2008-05-22  Bruno Haible  <bruno@clisp.org>
11856
11857         Make copy_acl work on MacOS X 10.5.
11858         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
11859         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
11860         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
11861         If MODE_INSIDE_ACL, don't assume that every system has the same text
11862         representation for ACLs as FreeBSD.
11863         * lib/copy-acl.c (copy_acl): Add support for platforms with
11864         !MODE_INSIDE_ACL.
11865         * lib/file-has-acl.c (file_has_acl): Likewise.
11866         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
11867         FreeBSD, MacOS X, or IRIX, respectively.
11868
11869 2008-05-22  Bruno Haible  <bruno@clisp.org>
11870
11871         * lib/acl.h: Don't include <sys/acl.h>.
11872         (GETACLCNT): Move fallback to lib/acl-internal.h.
11873         * lib/acl-internal.h: Include <sys/acl.h> here.
11874         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
11875
11876 2008-05-22  Bruno Haible  <bruno@clisp.org>
11877
11878         Split off copy_acl function to separate file.
11879         * lib/copy-acl.c: New file, extracted from lib/acl.c.
11880         * lib/acl.c (copy_acl): Moved function to separate file.
11881         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
11882         * modules/acl (Files): Add lib/copy-acl.c.
11883         (Makefiles.am): Augment lib_SOURCES.
11884
11885 2008-05-22  Bruno Haible  <bruno@clisp.org>
11886
11887         * modules/copy-file-tests: New file.
11888         * tests/test-copy-file.sh: New file.
11889         * tests/test-copy-file.c: New file.
11890         * tests/test-copy-file-sameacls.c: New file.
11891
11892 2008-05-22  Eric Blake  <ebb9@byu.net>
11893
11894         Avoid gcc warning.
11895         * tests/test-memcmp.c (main): Pass NULL indirectly.
11896
11897 2008-05-21  Bruno Haible  <bruno@clisp.org>
11898
11899         Add reference doc about ACLs.
11900         * doc/acl-resources.txt: New file.
11901         * doc/acl-cygwin.txt: New file.
11902
11903 2008-05-21  Bruno Haible  <bruno@clisp.org>
11904
11905         Avoid one more warning from gcc.
11906         * lib/vasnprintf.c (IF_LINT): Update comments.
11907         (VASNPRINTF): Use it also for the 'prefix' array initializer.
11908
11909 2008-05-21  Jim Meyering  <meyering@redhat.com>
11910
11911         avoid a warning from gcc
11912         * lib/vasnprintf.c (IF_LINT): Define.
11913         (scale10_round_decimal_long_double):
11914         Use it to avoid a "may be used uninitialized" warning.
11915         (scale10_round_decimal_double): Likewise.
11916
11917 2008-05-21  Simon Josefsson  <simon@josefsson.org>
11918
11919         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
11920         declared.
11921
11922 2008-05-20  Bruno Haible  <bruno@clisp.org>
11923
11924         * tests/test-memcmp.c (main): Test also the sign of the result. Test
11925         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
11926
11927 2008-05-20  Simon Josefsson  <simon@josefsson.org>
11928
11929         * modules/memcmp-tests: New file.
11930         * tests/test-memcmp.c: New file.
11931
11932 2008-05-19  Bruno Haible  <bruno@clisp.org>
11933
11934         * modules/propername (Notice, configure.ac): Put quoted "..." into
11935         --keyword option.
11936         * lib/propername.h: Update comments accordingly.
11937         Reported by Eric Blake.
11938
11939 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
11940
11941         * modules/getpass-gnu (Depends-on): Add fseeko.
11942
11943 2008-05-19  Simon Josefsson  <simon@josefsson.org>
11944
11945         * modules/base64-tests: New file.
11946
11947 2008-05-19  Bo Borgerson <gigabo@gmail.com>
11948
11949         * lib/base64.c (base64_decode_ctx): If a decode context structure
11950         was passed in use it to ignore newlines.  If a context structure
11951         was _not_ passed in, continue to treat newlines as garbage (this
11952         is the historical behavior).  Formerly base64_decode.
11953         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
11954         takes a decode context structure.
11955         * lib/base64.h (base64_decode): Macro for four-argument calls.
11956         (base64_decode_alloc): Likewise.
11957         * lib/base64.c (base64_decode_ctx): If a decode context structure
11958         was passed in use it to ignore newlines.  If a context structure
11959         was _not_ passed in, continue to treat newlines as garbage (this
11960         is the historical behavior).  Formerly base64_decode.
11961         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
11962         takes a decode context structure.
11963         * lib/base64.h (base64_decode): Macro for four-argument calls.
11964         (base64_decode_alloc): Likewise.
11965
11966 2008-05-19  Jim Meyering  <meyering@redhat.com>
11967
11968         avoid a warning from gcc
11969         * lib/trim.c (IF_LINT): Define.
11970         (trim2): Use it to avoid a "may be used uninitialized" warning.
11971
11972         Fix doc typo.
11973         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
11974
11975 2008-05-19  Bruno Haible  <bruno@clisp.org>
11976
11977         * doc/glibc-functions/getpass.texi: Document limits of other
11978         implementations.
11979
11980 2008-05-19  Simon Josefsson  <simon@josefsson.org>
11981             Bruno Haible <bruno@clisp.org>
11982
11983         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
11984
11985 2008-05-18  Bruno Haible  <bruno@clisp.org>
11986
11987         * modules/propername: New file, from GNU gettext.
11988         * lib/propername.h: New file, from GNU gettext.
11989         * lib/propername.c: New file, from GNU gettext.
11990         * MODULES.html.sh (Internationalization functions): Add propername.
11991
11992 2008-05-16  Jim Meyering  <meyering@redhat.com>
11993             Bruno Haible  <bruno@clisp.org>
11994
11995         Avoid some warnings from "gcc -Wshadow".
11996         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
11997
11998 2008-05-15  Eric Blake  <ebb9@byu.net>
11999
12000         Extend previous patch to cygwin 1.7.0.
12001         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
12002         fast implementation in cygwin >= 1.7.0.
12003         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
12004         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
12005
12006 2008-05-15  Bruno Haible  <bruno@clisp.org>
12007
12008         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
12009         implementation in glibc >= 2.9.
12010         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
12011         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
12012
12013 2008-05-15  Bruno Haible  <bruno@clisp.org>
12014
12015         * MODULES.html.sh (Internationalization functions): Remove linebreak.
12016         (Unicode string functions): Add unilbrk/*.
12017         Reported by Karl Berry.
12018
12019 2008-05-15  Eric Blake  <ebb9@byu.net>
12020
12021         Fix violation of <stdbool.h> replacement in regex.
12022         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
12023         * lib/regexec.c (re_search_internal): Likewise.
12024         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
12025
12026 2008-05-15  Jim Meyering  <meyering@redhat.com>
12027
12028         avoid distracting test output when git or cvs is not found
12029         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
12030         * tests/test-vc-list-files-git.sh: Likewise.
12031
12032 2008-05-15  Eric Blake  <ebb9@byu.net>
12033
12034         Glibc finally accepted the memmem speedup code, bugzilla #5514.
12035         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
12036         glibc version.
12037         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
12038         * doc/posix-functions/strstr.texi (strstr): Likewise.
12039         * lib/str-two-way.h (MAX): Sychronize with glibc.
12040
12041 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
12042
12043         * lib/regcomp.c (optimize_utf8): Add a note on why we test
12044         opr.ctx_type.
12045         (calc_first): Initialize constraint field.
12046         (duplicate_node_closure): Use it instead of special casing ANCHORS.
12047         Fix grammar.
12048         (duplicate_node): Merge constraint field for all node types.
12049         (calc_eclosure_iter): Look at constraint field for all node types.
12050         * lib/regex_internal.c (create_cd_newstate): Don't look at
12051         opr.ctx_type.
12052
12053 2008-05-14  Bruno Haible  <bruno@clisp.org>
12054
12055         Help GCC to do better code generation.
12056         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
12057         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
12058         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
12059         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
12060         Declare with attribute 'malloc' if supported.
12061
12062 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
12063
12064         use "echo STR|wc -c" rather than unportable "expr length STR"
12065         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
12066         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
12067
12068 2008-05-14  Jim Meyering  <meyering@redhat.com>
12069
12070         use dd ibs=$n count=1 ... rather than less-portable head -c$n
12071         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
12072         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
12073         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
12074         via Collin Lasse.
12075
12076 2008-05-14  Eric Blake  <ebb9@byu.net>
12077
12078         Avoid quadratic growth in gl_LIBSOURCES.
12079         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
12080         Suggested by Bruno Haible.
12081
12082         Test xmemdup0.
12083         * modules/xmemdup0-tests: New file.
12084         * tests/test-xmemdup0.c: Likewise.
12085
12086 2008-05-13  Eric Blake  <ebb9@byu.net>
12087
12088         Split xmemdup0 into its own module.
12089         * modules/xmemdup0: New file.
12090         * lib/xmemdup0.h: Likewise.
12091         * lib/xmemdup0.c: Likewise.
12092         * MODULES.html.sh (Memory management functions): Add xmemdup0.
12093         * lib/xalloc.h (xmemdup0): Remove.
12094         * lib/xmalloc.c (xmemdup0): Likewise.
12095
12096 2008-05-13  Eric Blake  <ebb9@byu.net>
12097             Bruno Haible  <bruno@clisp.org>
12098
12099         Reduce number of forks required during autoconf.
12100         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
12101         and gl_LIBSOURCES_DIR.
12102         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
12103         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
12104         m4_syscmd per file.
12105         <m4_foreach_w>: Move...
12106         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
12107
12108 2008-05-13  Eric Blake  <ebb9@byu.net>
12109
12110         * gnulib-tool: Fix various comment typos.
12111
12112 2008-05-12  Bruno Haible  <bruno@clisp.org>
12113
12114         Tailor the linebreaking algorithm.
12115         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
12116
12117 2008-05-12  Bruno Haible  <bruno@clisp.org>
12118
12119         Update to Unicode 5.0.0.
12120         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
12121         LBP_JV, LBP_JT. Redistribute values.
12122         (unilbrk_table): Change size.
12123         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
12124         Unicode TR#14 rev. 22.
12125         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
12126         LBP_JV, LBP_JT. Redistribute values.
12127         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
12128         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
12129         Update.
12130         * lib/unilbrk/lbrkprop1.h: Regenerated.
12131         * lib/unilbrk/lbrkprop2.h: Regenerated.
12132         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
12133         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
12134         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
12135         Likewise.
12136         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
12137         Likewise.
12138         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
12139         result.
12140         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
12141         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
12142         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
12143         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
12144         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
12145         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
12146
12147 2008-05-11  Bruno Haible  <bruno@clisp.org>
12148
12149         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
12150
12151 2008-05-11  Bruno Haible  <bruno@clisp.org>
12152
12153         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
12154         * modules/unilbrk/gen-lbrk: New file.
12155
12156 2008-05-11  Bruno Haible  <bruno@clisp.org>
12157
12158         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
12159         * m4/sha512.m4 (gl_SHA512): Likewise.
12160
12161 2008-05-11  Jim Meyering  <meyering@redhat.com>
12162
12163         New modules: crypto/sha256, crypto/sha512 (from coreutils)
12164         * modules/crypto/sha256: New file.
12165         * modules/crypto/sha512: Likewise.
12166         * lib/sha256.c: Likewise.
12167         * lib/sha256.h: Likewise.
12168         * lib/sha512.c: Likewise.
12169         * lib/sha512.h: Likewise.
12170         * lib/u64.h: Likewise.
12171         * m4/sha256.m4: Likewise.
12172         * m4/sha512.m4: Likewise.
12173         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
12174
12175 2008-05-10  Bruno Haible  <bruno@clisp.org>
12176
12177         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
12178         (Input/Output <stdio.h>): Add xprintf.
12179         (Signal handling <signal.h>): Add strsignal.
12180         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
12181         (Core language properties): Add func.
12182         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
12183         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
12184         strings.
12185         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
12186         (Input/output): New section.
12187         (File system functions): Add openat-die, stat-macros.
12188         (Networking functions): Add sockets.
12189         (Unicode string functions): Add unictype/*.
12190         (Support for building libraries and executables): Add gperf.
12191         (Support for building documentation): Add agpl-3.0.
12192         (Misc): Add nocrash.
12193
12194 2008-05-10  Bruno Haible  <bruno@clisp.org>
12195
12196         * modules/unictype/gen-ctype: New file.
12197
12198 2008-05-10  Jim Meyering  <meyering@redhat.com>
12199
12200         Make chdir-safer.c more efficient on a system with no symlinks.
12201         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
12202         also if ELOOP is zero.  Suggested by Bruno Haible.
12203
12204         Make chdir-safer.c slightly safer.
12205         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
12206         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
12207
12208         Avoid compile failure on systems without ELOOP (like mingw).
12209         * lib/chdir-safer.c (ELOOP): Define if not already defined.
12210         Reported by Bruno Haible.
12211
12212 2008-05-10  Bruno Haible  <bruno@clisp.org>
12213
12214         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
12215         (is_utf8_encoding): Use a case-insensitive comparison.
12216         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
12217         streq.
12218
12219 2008-05-10  Bruno Haible  <bruno@clisp.org>
12220
12221         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
12222         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
12223         * lib/unilbrk/ulc-common.h (iconv_string_length,
12224         iconv_string_keeping_offsets): Remove declarations.
12225         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
12226         Don't include <iconv.h>, streq.h, xsize.h.
12227         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
12228         conversion.
12229         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
12230         <iconv.h>, streq.h, xsize.h.
12231         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
12232         conversion.
12233         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
12234         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
12235         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
12236         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
12237
12238 2008-05-10  Bruno Haible  <bruno@clisp.org>
12239
12240         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
12241         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
12242
12243         * modules/unilbrk/u32-width-linebreaks-tests: New file.
12244         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
12245
12246         * modules/unilbrk/u16-width-linebreaks-tests: New file.
12247         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
12248
12249         * modules/unilbrk/u8-width-linebreaks-tests: New file.
12250         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
12251
12252         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
12253         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
12254
12255         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
12256         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
12257
12258         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
12259         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
12260
12261         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
12262         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
12263
12264 2008-05-10  Bruno Haible  <bruno@clisp.org>
12265
12266         Split up 'linebreak' module.
12267         * lib/unilbrk.h: New file, based on lib/linebreak.h.
12268         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
12269         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
12270         modifications.
12271         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
12272         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
12273         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
12274         lib/linebreak.c.
12275         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
12276         lib/linebreak.c.
12277         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
12278         lib/linebreak.c.
12279         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
12280         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
12281         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
12282         lib/linebreak.c.
12283         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
12284         lib/linebreak.c.
12285         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
12286         lib/linebreak.c.
12287         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
12288         lib/linebreak.c.
12289         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
12290         lib/linebreak.c.
12291         * modules/unilbrk/base: New file.
12292         * modules/unilbrk/tables: New file.
12293         * modules/unilbrk/u8-possible-linebreaks: New file.
12294         * modules/unilbrk/u16-possible-linebreaks: New file.
12295         * modules/unilbrk/u32-possible-linebreaks: New file.
12296         * modules/unilbrk/ulc-common: New file.
12297         * modules/unilbrk/ulc-possible-linebreaks: New file.
12298         * modules/unilbrk/u8-width-linebreaks: New file.
12299         * modules/unilbrk/u16-width-linebreaks: New file.
12300         * modules/unilbrk/u32-width-linebreaks: New file.
12301         * modules/unilbrk/ulc-width-linebreaks: New file.
12302         * lib/linebreak.h: Remove file.
12303         * lib/linebreak.c: Remove file.
12304         * m4/linebreak.m4: Remove file.
12305         * modules/linebreak: Remove file.
12306         * NEWS: Mention the changes.
12307
12308 2008-05-09  Eric Blake  <ebb9@byu.net>
12309
12310         Add xmemdup0.
12311         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
12312         implementation.
12313         * lib/xmalloc.c (xmemdup0): New C implementation.
12314
12315 2008-05-08  Bruno Haible  <bruno@clisp.org>
12316
12317         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
12318
12319 2008-05-07  Eric Blake  <ebb9@byu.net>
12320
12321         Support cross-compilation of <wctype.h>.
12322         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
12323         AC_CACHE_CHECK.
12324
12325 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
12326
12327         * build-aux/vc-list-files: Add support for bzr.
12328
12329 2008-05-03  Jim Meyering  <meyering@redhat.com>
12330
12331         avoid failed assertion with tight malloc
12332         * tests/test-getndelim2.c: Correct an off-by-one assertion.
12333
12334 2008-05-03  Simon Josefsson  <simon@josefsson.org>
12335
12336         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
12337         are needed from arpa/inet.h.
12338         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
12339         Reported by Bruno Haible.
12340
12341 2008-05-02  Jim Meyering  <meyering@redhat.com>
12342
12343         avoid compilation error on FreeBSD 6
12344         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
12345
12346 2008-05-01  Jim Meyering  <meyering@redhat.com>
12347
12348         useless-if-before-free: correct --help's exit status description
12349         * build-aux/useless-if-before-free (usage): Like grep, exit 0
12350         for one or more matches, etc.  Reported by Bruno Haible.
12351
12352         vc-list-files: make the stand-alone gnulib test work
12353         * modules/vc-list-files-tests (configure.ac):
12354         Define and AC_SUBST abs_aux_dir.
12355         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
12356         $(abs_top_srcdir) to each script and having each of them
12357         duplicate the work of setting PATH, set PATH here, using
12358         the new variable, abs_aux_dir instead.
12359         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
12360         * tests/test-vc-list-files-git.sh: Likewise.
12361         Reported by Bruno Haible.
12362
12363 2008-05-01  Bruno Haible  <bruno@clisp.org>
12364
12365         * lib/getndelim2.c (getndelim2): Fix newsize computation during
12366         reallocation. Rename 'done' to 'found_delimiter'.
12367
12368 2008-05-01  Jim Meyering  <meyering@redhat.com>
12369
12370         vc-list-files: accommodate /bin/sh like the one from Solaris 10
12371         * build-aux/vc-list-files: Use `...`, not $(...).
12372
12373 2008-04-30  Jim Meyering  <meyering@redhat.com>
12374
12375         add tests for vc-list-files
12376         * modules/vc-list-files-tests: New module.
12377         * tests/test-vc-list-files-cvs.sh: New file.
12378         * tests/test-vc-list-files-git.sh: New file.
12379
12380         avoid a warning from gcc
12381         * lib/getndelim2.c (IF_LINT): Define.
12382         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
12383
12384         vc-list-files: work properly with build-aux/cvsu, too
12385         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
12386         to all cvs-based clauses.
12387
12388         vc-list-files: work properly in the CVS+awk case, too
12389         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
12390
12391         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
12392         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
12393         take more than one file argument, so .  Add quotes, just in case $dir
12394         ever contains a shell meta-character.  Prompted by Soren Hansen in
12395         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
12396
12397 2008-04-29  Eric Blake  <ebb9@byu.net>
12398
12399         Optimize getndelim2 to use block operations when possible.
12400         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
12401         freadseek, and memchr2.
12402         * lib/getndelim2.c (getndelim2): Use them for block reads.
12403
12404 2008-04-29  Bruno Haible  <bruno@clisp.org>
12405
12406         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
12407         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
12408         * modules/inet_ntop (Depends-on): Add extensions.
12409         * modules/inet_pton (Depends-on): Likewise.
12410         Reported by Simon Josefsson.
12411
12412 2008-04-29  Jim Meyering  <meyering@redhat.com>
12413
12414         When the is more than one match in a block, match all of them.
12415         * build-aux/useless-if-before-free: Iterate through each block
12416         until there are no more matches.
12417
12418         Fix broken useless-if-before-free script.
12419         * build-aux/useless-if-before-free: Fix typo: missing "?" after
12420         the expression to match cast of argument to free-like function.
12421
12422 2008-04-29  Eric Blake  <ebb9@byu.net>
12423
12424         Use new header.
12425         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
12426
12427 2008-04-29  Jim Meyering  <meyering@redhat.com>
12428
12429         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
12430         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
12431         by gnulib to exist and to declare e.g., inet_ntop.
12432         Don't include "inet_ntop.h", now removed.
12433
12434         * m4/arpa_inet_h.m4: Remove trailing blanks.
12435
12436 2008-04-29  Eric Blake  <ebb9@byu.net>
12437
12438         Silence valgrind on safe reads beyond potential array bounds.
12439         * lib/rawmemchr.valgrind: New file.
12440         * lib/strchrnul.valgrind: Likewise.
12441         * modules/rawmemchr (Files): Distribute new file.
12442         * modules/strchrnul (Files): Likewise.
12443         Suggested by Bruno Haible.
12444
12445 2008-04-29  Bruno Haible  <bruno@clisp.org>
12446
12447         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
12448         (inet_ntop, inet_pton): Change portability warning's wording.
12449         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
12450         Invoke gl_CHECK_NEXT_HEADERS.
12451         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
12452         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
12453         set ARPA_INET_H.
12454         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
12455         * modules/arpa_inet (Description): No longer only for systems that
12456         lack it.
12457         (Depends-on): Add include_next.
12458         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
12459         HAVE_ARPA_INET_H.
12460
12461 2008-04-29  Jim Meyering  <meyering@redhat.com>
12462
12463         * modules/mkdir (License): Re-license as LGPLv2+.
12464
12465 2008-04-29  Bruno Haible  <bruno@clisp.org>
12466
12467         * modules/rawmemchr (Maintainer): Set to Eric.
12468         * modules/strchrnul (Maintainer): Likewise.
12469
12470 2008-04-29  Simon Josefsson  <simon@josefsson.org>
12471
12472         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
12473         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
12474
12475         * modules/arpa_inet (arpa/inet.h): Use them.
12476
12477 2008-04-28  Eric Blake  <ebb9@byu.net>
12478
12479         Test getndelim2.
12480         * modules/getndelim2-tests: New file.
12481         * tests/test-getndelim2.c: Likewise.
12482         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
12483         stream.
12484         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
12485
12486         * MODULES.html.sh: Document new module.
12487
12488 2008-04-20  Bruno Haible  <bruno@clisp.org>
12489
12490         * lib/c-stack.c (die): Use raise.
12491         * modules/c-stack (Depends-on): Add raise.
12492
12493 2008-04-28  Bruno Haible  <bruno@clisp.org>
12494
12495         Expect rpmatch to be declared.
12496         * lib/yesno.c (rpmatch): Remove declaration.
12497
12498         Declare rpmatch.
12499         * lib/stdlib.in.h (rpmatch): New declaration.
12500         * lib/rpmatch.c: Include <stdlib.h> first.
12501         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
12502         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
12503         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
12504         HAVE_RPMATCH.
12505         * modules/rpmatch (Depends-on): Add stdlib, extensions.
12506         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
12507         (Include): Set to <stdlib.h>.
12508         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
12509         HAVE_RPMATCH.
12510         * NEWS: Document the change.
12511
12512 2008-04-28  Bruno Haible  <bruno@clisp.org>
12513
12514         Change rpmatch to use nl_langinfo when appropriate.
12515         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
12516         (N_): New macro.
12517         (localized_pattern): New function/macro.
12518         (try): Remove match, nomatch arguments. Copy the pattern into safe
12519         memory before caching it.
12520         (rpmatch): Use localized_pattern. Add translator comments.
12521         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
12522         Suggested by Eric Blake.
12523         * modules/rpmatch (Depends-on): Add stdbool.
12524
12525 2008-04-28  Eric Blake  <ebb9@byu.net>
12526
12527         Add rawmemchr module, matching glibc.
12528         * modules/string (Makefile.am): New indicator.
12529         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
12530         * lib/string.in.h (rawmemchr): Declare when appropriate.
12531         * modules/rawmemchr: New file.
12532         * m4/rawmemchr.m4: Likewise.
12533         * lib/rawmemchr.c: Likewise.
12534         * modules/rawmemchr-tests: Likewise.
12535         * tests/test-rawmemchr.c: Likewise.
12536         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
12537         module.
12538         * modules/strchrnul (Depends-on): Add rawmemchr.
12539         * lib/strchrnul.c (strchrnul): Optimize a corner case.
12540
12541         Whitespace cleanup.
12542         * tests/test-strchrnul.c: Reindent.
12543         * lib/strchrnul.c: Likewise.
12544
12545         Optimize and test strchrnul.
12546         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
12547         * modules/strchrnul-tests: New file.
12548         * tests/test-strchrnul.c: Likewise.
12549
12550         Remove intprops dependency.
12551         * modules/memchr (Depends-on): Remove intprops.
12552         * modules/memrchr (Depends-on): Likewise.
12553         * modules/memchr2 (Depends-on): Likewise.
12554         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
12555         * lib/memrchr.c (__memrchr): Likewise.
12556         * lib/memrchr2.c (memchr2): Likewise.
12557         Reported by Simon Josefsson.
12558
12559 2008-04-28  Simon Josefsson  <simon@josefsson.org>
12560
12561         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
12562         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
12563
12564 2008-04-28  Simon Josefsson  <simon@josefsson.org>
12565
12566         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
12567
12568         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
12569
12570         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
12571
12572         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
12573         declarations.
12574         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
12575
12576         * m4/inet_pton.m4: Don't check for header files.
12577
12578         * m4/inet_ntop.m4: Don't check for header files.
12579
12580 2008-04-28  Simon Josefsson  <simon@josefsson.org>
12581
12582         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
12583         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
12584         trigger for cygwin).
12585         Reported by Bruno Haible  <bruno@clisp.org>.
12586
12587 2008-04-28  Bruno Haible  <bruno@clisp.org>
12588
12589         * doc/posix-functions/strdup.texi: Mention mingw problem.
12590
12591 2008-04-27  Bruno Haible  <bruno@clisp.org>
12592
12593         * modules/stat-time-tests (Depends-on): Add sleep.
12594         * tests/test-stat-time.c (force_unlink): New function.
12595         (cleanup): Use it.
12596         (test_mtime): Remove the ctime related tests.
12597         (test_ctime): New function, containing the ctime related tests.
12598         (main): Call test_ctime, except on native Windows platforms.
12599
12600 2008-04-27  Bruno Haible  <bruno@clisp.org>
12601
12602         * lib/rpmatch.c (rpmatch): Add some comments.
12603         Reported by James Youngman <jay@gnu.org>.
12604
12605 2008-04-27  Bruno Haible  <bruno@clisp.org>
12606
12607         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
12608         quiet NaNs.
12609
12610 2008-04-27  Bruno Haible  <bruno@clisp.org>
12611
12612         Make test-yesno.sh work on mingw.
12613         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
12614         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
12615         (main): Set stdin to binary mode.
12616         * modules/yesno-tests (Depends-on): Add binary-io.
12617
12618 2008-04-27  Bruno Haible  <bruno@clisp.org>
12619
12620         Fix 'isfinite' on x86, x86_64, ia64 platforms.
12621         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
12622         argument that lie outside the IEEE 854 domain.
12623         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
12624         (gl_ISFINITE): Use it.
12625         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
12626
12627 2008-04-27  Bruno Haible  <bruno@clisp.org>
12628
12629         Allow local renaming in config.h.
12630         * lib/memrchr.c (memrchr): Don't undefine outside libc.
12631
12632 2008-04-27  Bruno Haible  <bruno@clisp.org>
12633
12634         * lib/memchr.c (__memchr): Change type of 'i'.
12635         * lib/memchr2.c (memchr2): Likewise.
12636
12637 2008-04-26  Eric Blake  <ebb9@byu.net>
12638         and Bruno Haible  <bruno@clisp.org>
12639
12640         Optimize and test memrchr.
12641         * modules/memrchr (Depends-on): Add intprops.
12642         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
12643         * modules/memrchr-tests: New file.
12644         * tests/test-memrchr.c: New file.
12645
12646 2008-04-26  Bruno Haible  <bruno@clisp.org>
12647
12648         Add tentative support for DragonFly BSD.
12649         * lib/stdio-impl.h: Add macros for DragonFly BSD.
12650         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
12651         fp.
12652         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
12653         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
12654         * lib/fpurge.c (fpurge): Likewise.
12655         * lib/freadable.c (freaadable): Likewise.
12656         * lib/freadahead.c (freadahead): Likewise.
12657         * lib/freading.c (freading): Likewise.
12658         * lib/freadptr.c (freadptr): Likewise.
12659         * lib/freadseek.c (freadptrinc): Likewise.
12660         * lib/fseeko.c (fseeko): Likewise.
12661         * lib/fseterr.c (fseterr): Likewise.
12662         * lib/fwritable.c (fwritable): Likewise.
12663         * lib/fwriting.c (fwriting): Likewise.
12664
12665 2008-04-26  Bruno Haible  <bruno@clisp.org>
12666
12667         * lib/stdio-impl.h: New file.
12668         * lib/fbufmode.c: Include stdio-impl.h.
12669         (fbufmode): Use fp_, remove redundant #defines.
12670         * lib/fflush.c: Include stdio-impl.h.
12671         (clear_ungetc_buffer): Remove redundant #defines.
12672         * lib/fpurge.c: Include stdio-impl.h.
12673         (fpurge): Remove redundant #defines.
12674         * lib/freadable.c: Include stdio-impl.h.
12675         (freadable): Remove redundant #defines.
12676         * lib/freadahead.c: Include stdio-impl.h.
12677         (freadahead): Remove redundant #defines.
12678         * lib/freading.c: Include stdio-impl.h.
12679         (freading): Remove redundant #defines.
12680         * lib/freadptr.c: Include stdio-impl.h.
12681         (freadptr): Remove redundant #defines.
12682         * lib/freadseek.c: Include stdio-impl.h.
12683         (freadptrinc): Remove redundant #defines.
12684         * lib/fseeko.c: Include stdio-impl.h.
12685         (rpl_fseeko): Remove redundant #defines.
12686         * lib/fseterr.c: Include stdio-impl.h.
12687         (fseterr): Remove redundant #defines.
12688         * lib/fwritable.c: Include stdio-impl.h.
12689         (fwritable: Remove redundant #defines.
12690         * lib/fwriting.c: Include stdio-impl.h.
12691         (fwriting): Remove redundant #defines.
12692         * modules/fbufmode (Files): Add lib/stdio-impl.h.
12693         * modules/fflush (Files): Likewise.
12694         * modules/fpurge (Files): Likewise.
12695         * modules/freadable (Files): Likewise.
12696         * modules/freadahead (Files): Likewise.
12697         * modules/freading (Files): Likewise.
12698         * modules/freadptr (Files): Likewise.
12699         * modules/freadseek (Files): Likewise.
12700         * modules/fseeko (Files): Likewise.
12701         * modules/fseterr (Files): Likewise.
12702         * modules/fwritable (Files): Likewise.
12703         * modules/fwriting (Files): Likewise.
12704
12705 2008-04-26  Bruno Haible  <bruno@clisp.org>
12706
12707         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
12708         restore_seek_optimization, update_fpos_cache): New functions, extracted
12709         from rpl_fflush.
12710         (rpl_fflush): Use them.
12711         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
12712         (gl_REPLACE_FFLUSH): Use it.
12713
12714 2008-04-26  Bruno Haible  <bruno@clisp.org>
12715
12716         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
12717         on Solaris.
12718         * tests/test-xstrtoimax.sh: Likewise.
12719         * tests/test-xstrtoumax.sh: Likewise.
12720         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
12721
12722 2008-04-26  Bruno Haible  <bruno@clisp.org>
12723
12724         * modules/memchr-tests: New file.
12725         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
12726
12727 2008-04-26  Eric Blake  <ebb9@byu.net>
12728             Bruno Haible  <bruno@clisp.org>
12729
12730         * lib/memchr.c: Include intprops.h.
12731         (__memchr): Optimize parallel detection of matching bytes. Rename local
12732         variables. Add explanatory comments.
12733
12734 2008-04-26  Bruno Haible  <bruno@clisp.org>
12735
12736         Fix module 'memchr', broken since 2000-10-28.
12737         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
12738
12739 2008-04-26  Bruno Haible  <bruno@clisp.org>
12740
12741         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
12742         comments.
12743
12744 2008-04-25  Eric Blake  <ebb9@byu.net>
12745
12746         Use native fstatat on cygwin 1.7.0.
12747         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
12748         first.
12749
12750 2008-04-23  Eric Blake  <ebb9@byu.net>
12751
12752         Improve memchr2 performance.
12753         * lib/memchr2.c (memchr2): Further optimize parallel detection of
12754         NUL bytes.
12755         * modules/memchr2 (Depends-on): Use intprops.h.
12756
12757 2008-04-23  Simon Josefsson  <simon@josefsson.org>
12758
12759         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
12760         an inline function instead of a CPP macro.  Patch by Ben Pfaff
12761         <blp@cs.stanford.edu>.
12762
12763 2008-04-23  Simon Josefsson  <simon@josefsson.org>
12764
12765         * lib/arpa_inet.in.h: New file.
12766
12767         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
12768         (Makefile.am): Sed in substitute header file.
12769
12770         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
12771         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
12772
12773         * modules/inet_ntop (configure.ac): Use
12774         gl_ARPA_INET_MODULE_INDICATOR.
12775
12776         * modules/inet_pton (configure.ac): Use
12777         gl_ARPA_INET_MODULE_INDICATOR.
12778
12779 2008-04-22  Jim Meyering  <meyering@redhat.com>
12780
12781         * modules/verify (License): Re-license as LGPLv2+.
12782
12783 2008-04-22  Simon Josefsson  <simon@josefsson.org>
12784
12785         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
12786         parameter to void* as per POSIX standard (MinGW uses char*).
12787
12788 2008-04-21  Bruno Haible  <bruno@clisp.org>
12789
12790         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
12791         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
12792         Define to replacements if REPLACE_ISWCNTRL is 1.
12793         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
12794         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
12795         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
12796         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
12797         what it fixes.
12798         * doc/posix-functions/iswalpha.texi: Likewise.
12799         * doc/posix-functions/iswblank.texi: Likewise.
12800         * doc/posix-functions/iswcntrl.texi: Likewise.
12801         * doc/posix-functions/iswdigit.texi: Likewise.
12802         * doc/posix-functions/iswgraph.texi: Likewise.
12803         * doc/posix-functions/iswlower.texi: Likewise.
12804         * doc/posix-functions/iswprint.texi: Likewise.
12805         * doc/posix-functions/iswpunct.texi: Likewise.
12806         * doc/posix-functions/iswspace.texi: Likewise.
12807         * doc/posix-functions/iswupper.texi: Likewise.
12808         * doc/posix-functions/iswxdigit.texi: Likewise.
12809         Reported by Alain Guibert.
12810
12811 2008-04-21  Bruno Haible  <bruno@clisp.org>
12812
12813         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
12814         Patch by Alain Guibert.
12815
12816 2008-04-21  Bruno Haible  <bruno@clisp.org>
12817
12818         Fix test failures on mingw.
12819         * tests/test-xstrtol.c (print_no_progname): New function.
12820         (main): Install it in error_print_progname hook.
12821         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
12822         * tests/test-xstrtoimax.sh: Likewise.
12823         * tests/test-xstrtoumax.sh: Likewise.
12824
12825 2008-04-21  Bruno Haible  <bruno@clisp.org>
12826
12827         Fix test failure on mingw.
12828         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
12829
12830 2008-04-21  Bruno Haible  <bruno@clisp.org>
12831
12832         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
12833         Actually assign a value.
12834
12835 2008-04-20  Bruno Haible  <bruno@clisp.org>
12836
12837         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
12838         take 2.
12839         * lib/canonicalize.c (canonicalize_file_name): Elide if the
12840         'canonicalize-lgpl' module is also used.
12841         * lib/canonicalize-lgpl.c: Undo last change.
12842         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
12843
12844 2008-04-20  Bruno Haible  <bruno@clisp.org>
12845
12846         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
12847         config.h. Provide _mkdir based fallback for mingw.
12848         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
12849         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
12850         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
12851         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
12852         rather than defining mkdir in config.h.
12853         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
12854         (gl_SYS_STAT_H_DEFAULTS): New macro.
12855         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
12856         HAVE_IO_H any more.
12857         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
12858         HAVE_DECL_MKDIR and HAVE_IO_H.
12859
12860 2008-04-20  Bruno Haible  <bruno@clisp.org>
12861
12862         * lib/isapipe.c: Port to native Windows platforms.
12863
12864 2008-04-20  Bruno Haible  <bruno@clisp.org>
12865
12866         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
12867
12868 2008-04-21  Eric Blake  <ebb9@byu.net>
12869
12870         Work around preprocessors that don't handle UINTMAX_MAX.
12871         * lib/memchr2.c (memchr2): Avoid embedded #if.
12872         Reported by Alain Guibert, fix suggested by Bruno Haible.
12873
12874 2008-04-21  Simon Josefsson  <simon@josefsson.org>
12875
12876         * doc/posix-functions/strftime.texi (strftime): Explain better
12877         Windows incompatibility.  Suggested by Micah Cowan
12878         <micah@cowan.name>.
12879
12880 2008-04-20  Bruno Haible  <bruno@clisp.org>
12881
12882         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
12883         unistr/u8-mblen.
12884
12885 2008-04-20  Bruno Haible  <bruno@clisp.org>
12886
12887         Fix test failure on platforms with non-GNU iconv.
12888         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
12889         (U_TO_U8): Use it, rather than u16_to_u8.
12890         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
12891         units at the end of the input string.
12892         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
12893
12894 2008-04-20  Bruno Haible  <bruno@clisp.org>
12895
12896         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
12897         when the resulting length is 0.
12898         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
12899
12900 2008-04-20  Bruno Haible  <bruno@clisp.org>
12901
12902         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
12903         works.
12904         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
12905
12906 2008-04-20  Bruno Haible  <bruno@clisp.org>
12907
12908         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
12909         * modules/tsearch-tests (configure.ac): Test for initstate function.
12910
12911 2008-04-20  Bruno Haible  <bruno@clisp.org>
12912
12913         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
12914         for nlink_t if missing.
12915         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
12916
12917 2008-04-19  Bruno Haible  <bruno@clisp.org>
12918
12919         Work around snprintf bug on Linux libc5.
12920         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
12921         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
12922         gl_SNPRINTF_SIZE1.
12923         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
12924         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
12925         that test failed.
12926         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
12927         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
12928         * modules/snprintf (Files): Add m4/printf.m4.
12929         * modules/vsnprintf (Files): Likewise.
12930         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
12931         * doc/posix-functions/vsnprintf.texi: Likewise.
12932
12933 2008-04-19  Bruno Haible  <bruno@clisp.org>
12934
12935         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
12936         from 0.0058 to less than 10^-7.
12937
12938 2008-04-19  Bruno Haible  <bruno@clisp.org>
12939
12940         Fix rounding when a precision is given.
12941         * lib/vasnprintf.c (is_borderline): New function.
12942         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
12943         9...9x.
12944         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
12945         %e, %g.
12946         * tests/test-vasprintf-posix.c (test_function): Likewise.
12947         * tests/test-snprintf-posix.h (test_function): Likewise.
12948         * tests/test-sprintf-posix.h (test_function): Likewise.
12949         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
12950         * tests/test-printf-posix.h (test_function): Likewise.
12951         * tests/test-printf-posix.output: Update.
12952         Reported by John Darrington <john@darrington.wattle.id.au> via
12953         Ben Pfaff <blp@cs.stanford.edu>.
12954
12955 2008-04-18  Simon Josefsson  <simon@josefsson.org>
12956
12957         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
12958         Suggested by Bruno Haible <bruno@clisp.org>.
12959
12960 2008-04-17  Bruno Haible  <bruno@clisp.org>
12961
12962         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
12963         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
12964         implementation.
12965         Patch by Bruce Merry <bmerry@gmail.com>.
12966
12967 2008-04-17  Simon Josefsson  <simon@josefsson.org>
12968
12969         * doc/posix-functions/strftime.texi (strftime): Mention that %e
12970         doesn't work under Windows.
12971
12972 2008-04-16  Bruno Haible  <bruno@clisp.org>
12973
12974         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
12975         New macros.
12976         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
12977         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
12978         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
12979         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
12980         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
12981         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
12982         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
12983         macros.
12984         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
12985         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
12986         Northern Sotho, Uighur.
12987
12988 2008-04-16  Bruno Haible  <bruno@clisp.org>
12989
12990         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
12991         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
12992         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
12993         Reported by Daniel Bergström <daniel@octocode.com>.
12994
12995 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
12996             Bruno Haible  <bruno@clisp.org>
12997
12998         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
12999         function.
13000         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
13001         New functions, mostly extracted from gl_locale_name_default.
13002         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
13003
13004 2008-04-16  Eric Blake  <ebb9@byu.net>
13005
13006         Adjust strtod detection to catch glibc 2.7 bug.
13007         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
13008         Reported by John Gatewood Ham.
13009
13010 2008-04-16  Bruno Haible  <bruno@clisp.org>
13011
13012         Add tentative support for Linux libc5.
13013         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
13014         * lib/fpurge.c (fpurge): Likewise.
13015         * lib/freadable.c (freadable): Likewise.
13016         * lib/freadahead.c (freadahead): Likewise.
13017         * lib/freading.c (freading): Likewise.
13018         * lib/freadptr.c (freadptr): Likewise.
13019         * lib/freadseek.c (freadptrinc): Likewise.
13020         * lib/fseeko.c (rpl_fseeko): Likewise.
13021         * lib/fseterr.c (fseterr): Likewise.
13022         * lib/fwritable.c (fwritable): Likewise.
13023         * lib/fwriting.c (fwriting): Likewise.
13024         Reported by Alain Guibert <alguibert+bts@free.fr>.
13025
13026 2008-04-15  Bruno Haible  <bruno@clisp.org>
13027
13028         * modules/mathl (configure.ac): Define module indicator.
13029
13030 2008-04-15  Bruno Haible  <bruno@clisp.org>
13031
13032         * lib/logl.c (logl): Remove unused variables.
13033
13034 2008-04-15  Bruno Haible  <bruno@clisp.org>
13035
13036         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
13037         fails.
13038
13039 2008-04-15  Bruno Haible  <bruno@clisp.org>
13040
13041         * lib/trim.c (trim2): Fix argument of isspace() macro.
13042
13043 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
13044
13045         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
13046         to 0.
13047         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
13048
13049 2008-04-14  Bruno Haible  <bruno@clisp.org>
13050
13051         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
13052         AC_LANG_PROGRAM argument.
13053         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
13054         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
13055         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
13056         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
13057         * m4/math_h.m4 (gl_MATH_H): Likewise.
13058         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
13059         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
13060         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
13061         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
13062         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
13063         * m4/regex.m4 (gl_REGEX): Likewise.
13064         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
13065         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
13066         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
13067         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
13068         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
13069         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
13070         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
13071         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
13072
13073 2008-04-14  Jim Meyering  <meyering@redhat.com>
13074
13075         test-strtod: fix typos: s/abs/fabs/
13076         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
13077
13078 2008-04-13  Bruno Haible  <bruno@clisp.org>
13079
13080         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
13081         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
13082         module is also used and while not building the reloc-wrapper.
13083
13084 2008-04-13  Bruno Haible  <bruno@clisp.org>
13085
13086         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
13087
13088 2008-04-13  Bruno Haible  <bruno@clisp.org>
13089
13090         Fix AIX compilation failure introduced on 2008-04-02.
13091         * tests/test-frexp.c (exp): Undefine before redefining.
13092         * tests/test-frexpl.c (exp): Likewise.
13093
13094 2008-04-13  Bruno Haible  <bruno@clisp.org>
13095
13096         Work around a HP-UX stdio bug.
13097         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
13098         * tests/test-ftello.c (main): Likewise.
13099         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
13100         * doc/posix-functions/ftello.texi: Likewise.
13101
13102 2008-04-13  Bruno Haible  <bruno@clisp.org>
13103
13104         Make test-signbit pass on HP-UX/hppa.
13105         * tests/test-signbit.c (minus_zerol): New variable.
13106         (test_signbitl): Use it.
13107
13108 2008-04-13  Bruno Haible  <bruno@clisp.org>
13109
13110         Make truncl work on OSF/1 4.0.
13111         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
13112         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
13113         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
13114         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
13115         HAVE_DECL_TRUNCL.
13116         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
13117         HAVE_DECL_TRUNCL.
13118         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
13119
13120 2008-04-13  Bruno Haible  <bruno@clisp.org>
13121
13122         * lib/unictype.h: Remove trailing comma from enumeration definitions.
13123
13124 2008-04-13  Bruno Haible  <bruno@clisp.org>
13125
13126         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
13127         expression, so as to avoid HP-UX 11 cc compiler bug.
13128
13129 2008-04-13  Bruno Haible  <bruno@clisp.org>
13130
13131         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
13132
13133 2008-04-13  Bruno Haible  <bruno@clisp.org>
13134
13135         * lib/git-merge-changelog.c: Remove empty declaration outside of
13136         functions.
13137
13138 2008-04-13  Bruno Haible  <bruno@clisp.org>
13139
13140         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
13141
13142 2008-04-13  Bruno Haible  <bruno@clisp.org>
13143
13144         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
13145         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
13146         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
13147         also if it exists but lacks definitions of the SHUT_* macros.
13148         * modules/sys_socket (Description): Update.
13149         Reported by Elbert Pol <e.pol@chello.nl>.
13150
13151 2008-04-13  Bruno Haible  <bruno@clisp.org>
13152
13153         * lib/localcharset.c (OS2): Don't redefine if already defined.
13154         Reported by Elbert Pol <e.pol@chello.nl>.
13155
13156 2008-04-13  Bruno Haible  <bruno@clisp.org>
13157
13158         * lib/binary-io.h [__EMX__]: Include <io.h>.
13159         Reported by Elbert Pol <e.pol@chello.nl>.
13160
13161 2008-04-12  Bruno Haible  <bruno@clisp.org>
13162
13163         * lib/fpucw.h: Enable the definitions also for x86_64.
13164         Needed for NetBSD/x86_64.
13165         Reported by Thomas Klausner <tk@giga.or.at>.
13166
13167 2008-04-12  Bruno Haible  <bruno@clisp.org>
13168
13169         * tests/test-strtod.c: Include isnand.h.
13170         (main): Use isnand instead of isnan.
13171         Reported by Jim Meyering.
13172
13173 2008-04-12  Bruno Haible  <bruno@clisp.org>
13174
13175         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
13176         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
13177
13178 2008-04-12  Jim Meyering  <meyering@redhat.com>
13179
13180         * m4/math_h.m4 (gl_MATH_H): Fix typos.
13181
13182 2008-04-12  Bruno Haible  <bruno@clisp.org>
13183
13184         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
13185         Reported by Elbert Pol <e.pol@chello.nl>.
13186
13187 2008-04-12  Eric Blake  <ebb9@byu.net>
13188
13189         Work around Solaris 10 math.h bug.
13190         * m4/math_h.m4 (gl_MATH_H): Check for bug.
13191         (gl_MATH_H_DEFAULTS): Set up default.
13192         * modules/math (Makefile.am): Replace new indicators.
13193         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
13194         * tests/test-math.c (main): Test this.
13195         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
13196         * doc/posix-headers/math.texi (math.h): Mention bug.
13197         Reported by Nelson H. F. Beebe and Jim Meyering.
13198
13199 2008-04-11  Bruno Haible  <bruno@clisp.org>
13200
13201         Adapt to future versions of Apple GCC.
13202         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
13203         Reported by Peter O'Gorman <peter@pogma.com>.
13204
13205 2008-04-11  Bruno Haible  <bruno@clisp.org>
13206
13207         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
13208
13209 2008-04-11  Bruno Haible  <bruno@clisp.org>
13210
13211         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
13212
13213         * modules/getaddrinfo-tests (Makefile.am): Define
13214         test_getaddrinfo_LDADD.
13215
13216 2008-04-11  Bruno Haible  <bruno@clisp.org>
13217
13218         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
13219         (init): Fix syntax error.
13220         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
13221         is declared.
13222
13223 2008-04-11  Bruno Haible  <bruno@clisp.org>
13224
13225         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
13226         * modules/glob (Depends-on): Add stdbool.
13227
13228 2008-04-11  Bruno Haible  <bruno@clisp.org>
13229
13230         * lib/trim.c: Include <string.h>.
13231
13232 2008-04-11  Eric Blake  <ebb9@byu.net>
13233
13234         Avoid compile failure on OS/2.
13235         * lib/regex_internal.h (internal_function): Disable optimization
13236         on OS/2 (__EMX__), where it caused compiler error.
13237         Reported by Elbert Pol.
13238
13239 2008-04-11  Bruno Haible  <bruno@clisp.org>
13240
13241         Flush the standard error stream before aborting. Needed on mingw.
13242         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
13243         * tests/test-array_list.c (ASSERT): Likewise.
13244         * tests/test-array_oset.c (ASSERT): Likewise.
13245         * tests/test-avltree_list.c (ASSERT): Likewise.
13246         * tests/test-avltree_oset.c (ASSERT): Likewise.
13247         * tests/test-avltreehash_list.c (ASSERT): Likewise.
13248         * tests/test-binary-io.c (ASSERT): Likewise.
13249         * tests/test-byteswap.c (ASSERT): Likewise.
13250         * tests/test-c-ctype.c (ASSERT): Likewise.
13251         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
13252         * tests/test-c-strcasestr.c (ASSERT): Likewise.
13253         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
13254         * tests/test-c-strstr.c (ASSERT): Likewise.
13255         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
13256         * tests/test-canonicalize.c (ASSERT): Likewise.
13257         * tests/test-carray_list.c (ASSERT): Likewise.
13258         * tests/test-ceilf1.c (ASSERT): Likewise.
13259         * tests/test-ceilf2.c (ASSERT): Likewise.
13260         * tests/test-ceill.c (ASSERT): Likewise.
13261         * tests/test-count-one-bits.c (ASSERT): Likewise.
13262         * tests/test-fbufmode.c (ASSERT): Likewise.
13263         * tests/test-fflush2.c (ASSERT): Likewise.
13264         * tests/test-floorf1.c (ASSERT): Likewise.
13265         * tests/test-floorf2.c (ASSERT): Likewise.
13266         * tests/test-floorl.c (ASSERT): Likewise.
13267         * tests/test-fopen.c (ASSERT): Likewise.
13268         * tests/test-fpending.c (ASSERT): Likewise.
13269         * tests/test-fprintf-posix.c (ASSERT): Likewise.
13270         * tests/test-fpurge.c (ASSERT): Likewise.
13271         * tests/test-freadable.c (ASSERT): Likewise.
13272         * tests/test-freadahead.c (ASSERT): Likewise.
13273         * tests/test-freading.c (ASSERT): Likewise.
13274         * tests/test-freadptr.c (ASSERT): Likewise.
13275         * tests/test-freadptr2.c (ASSERT): Likewise.
13276         * tests/test-freadseek.c (ASSERT): Likewise.
13277         * tests/test-freopen.c (ASSERT): Likewise.
13278         * tests/test-frexp.c (ASSERT): Likewise.
13279         * tests/test-frexpl.c (ASSERT): Likewise.
13280         * tests/test-fseek.c (ASSERT): Likewise.
13281         * tests/test-fseeko.c (ASSERT): Likewise.
13282         * tests/test-fstrcmp.c (ASSERT): Likewise.
13283         * tests/test-ftell.c (ASSERT): Likewise.
13284         * tests/test-ftello.c (ASSERT): Likewise.
13285         * tests/test-func.c (ASSERT): Likewise.
13286         * tests/test-fwritable.c (ASSERT): Likewise.
13287         * tests/test-fwriting.c (ASSERT): Likewise.
13288         * tests/test-getdelim.c (ASSERT): Likewise.
13289         * tests/test-getline.c (ASSERT): Likewise.
13290         * tests/test-i-ring.c (ASSERT): Likewise.
13291         * tests/test-iconv-utf.c (ASSERT): Likewise.
13292         * tests/test-iconv.c (ASSERT): Likewise.
13293         * tests/test-isfinite.c (ASSERT): Likewise.
13294         * tests/test-isnand.c (ASSERT): Likewise.
13295         * tests/test-isnanf.c (ASSERT): Likewise.
13296         * tests/test-isnanl.h (ASSERT): Likewise.
13297         * tests/test-ldexpl.c (ASSERT): Likewise.
13298         * tests/test-linked_list.c (ASSERT): Likewise.
13299         * tests/test-linkedhash_list.c (ASSERT): Likewise.
13300         * tests/test-localename.c (ASSERT): Likewise.
13301         * tests/test-lseek.c (ASSERT): Likewise.
13302         * tests/test-mbscasecmp.c (ASSERT): Likewise.
13303         * tests/test-mbscasestr1.c (ASSERT): Likewise.
13304         * tests/test-mbscasestr2.c (ASSERT): Likewise.
13305         * tests/test-mbscasestr3.c (ASSERT): Likewise.
13306         * tests/test-mbscasestr4.c (ASSERT): Likewise.
13307         * tests/test-mbschr.c (ASSERT): Likewise.
13308         * tests/test-mbscspn.c (ASSERT): Likewise.
13309         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
13310         * tests/test-mbspbrk.c (ASSERT): Likewise.
13311         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
13312         * tests/test-mbsrchr.c (ASSERT): Likewise.
13313         * tests/test-mbsspn.c (ASSERT): Likewise.
13314         * tests/test-mbsstr1.c (ASSERT): Likewise.
13315         * tests/test-mbsstr2.c (ASSERT): Likewise.
13316         * tests/test-mbsstr3.c (ASSERT): Likewise.
13317         * tests/test-memchr2.c (ASSERT): Likewise.
13318         * tests/test-memmem.c (ASSERT): Likewise.
13319         * tests/test-open.c (ASSERT): Likewise.
13320         * tests/test-printf-frexp.c (ASSERT): Likewise.
13321         * tests/test-printf-frexpl.c (ASSERT): Likewise.
13322         * tests/test-printf-posix.c (ASSERT): Likewise.
13323         * tests/test-quotearg.c (ASSERT): Likewise.
13324         * tests/test-rbtree_list.c (ASSERT): Likewise.
13325         * tests/test-rbtree_oset.c (ASSERT): Likewise.
13326         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
13327         * tests/test-round1.c (ASSERT): Likewise.
13328         * tests/test-roundf1.c (ASSERT): Likewise.
13329         * tests/test-roundl.c (ASSERT): Likewise.
13330         * tests/test-signbit.c (ASSERT): Likewise.
13331         * tests/test-sleep.c (ASSERT): Likewise.
13332         * tests/test-snprintf-posix.c (ASSERT): Likewise.
13333         * tests/test-snprintf.c (ASSERT): Likewise.
13334         * tests/test-sprintf-posix.c (ASSERT): Likewise.
13335         * tests/test-stat-time.c (ASSERT): Likewise.
13336         * tests/test-strcasestr.c (ASSERT): Likewise.
13337         * tests/test-strerror.c (ASSERT): Likewise.
13338         * tests/test-striconv.c (ASSERT): Likewise.
13339         * tests/test-striconveh.c (ASSERT): Likewise.
13340         * tests/test-striconveha.c (ASSERT): Likewise.
13341         * tests/test-strsignal.c (ASSERT): Likewise.
13342         * tests/test-strstr.c (ASSERT): Likewise.
13343         * tests/test-strtod.c (ASSERT): Likewise.
13344         * tests/test-trunc1.c (ASSERT): Likewise.
13345         * tests/test-trunc2.c (ASSERT): Likewise.
13346         * tests/test-truncf1.c (ASSERT): Likewise.
13347         * tests/test-truncf2.c (ASSERT): Likewise.
13348         * tests/test-truncl.c (ASSERT): Likewise.
13349         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
13350         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
13351         * tests/test-vasnprintf.c (ASSERT): Likewise.
13352         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
13353         * tests/test-vasprintf.c (ASSERT): Likewise.
13354         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
13355         * tests/test-vprintf-posix.c (ASSERT): Likewise.
13356         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
13357         * tests/test-vsnprintf.c (ASSERT): Likewise.
13358         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
13359         * tests/test-wcwidth.c (ASSERT): Likewise.
13360         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
13361         * tests/test-xprintf-posix.c (ASSERT): Likewise.
13362         * tests/test-xvasprintf.c (ASSERT): Likewise.
13363         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
13364         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
13365         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
13366         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
13367         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
13368         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
13369         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
13370         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
13371         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
13372         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
13373         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
13374         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
13375         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
13376         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
13377         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
13378         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
13379         * tests/unictype/test-block_list.c (ASSERT): Likewise.
13380         * tests/unictype/test-block_of.c (ASSERT): Likewise.
13381         * tests/unictype/test-block_test.c (ASSERT): Likewise.
13382         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
13383         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
13384         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
13385         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
13386         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
13387         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
13388         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
13389         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
13390         * tests/unictype/test-combining.c (ASSERT): Likewise.
13391         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
13392         * tests/unictype/test-digit.c (ASSERT): Likewise.
13393         * tests/unictype/test-mirror.c (ASSERT): Likewise.
13394         * tests/unictype/test-numeric.c (ASSERT): Likewise.
13395         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
13396         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
13397         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
13398         * tests/unictype/test-scripts.c (ASSERT): Likewise.
13399         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
13400         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
13401         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
13402         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
13403         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
13404         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
13405         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
13406         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
13407         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
13408         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
13409         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
13410         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
13411         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
13412         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
13413         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
13414         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
13415         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
13416         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
13417         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
13418         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
13419         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
13420         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
13421         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
13422         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
13423         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
13424         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
13425         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
13426         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
13427         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
13428         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
13429         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
13430         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
13431         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
13432         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
13433         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
13434         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
13435         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
13436         Reported by Eric Blake.
13437
13438 2008-04-11  Bruno Haible  <bruno@clisp.org>
13439
13440         * lib/wchar.in.h: Tweak comment.
13441
13442 2008-04-11  Bruno Haible  <bruno@clisp.org>
13443
13444         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
13445         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
13446         gl_COMMON.
13447         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
13448
13449 2008-04-11  Bruno Haible  <bruno@clisp.org>
13450
13451         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
13452
13453 2008-04-11  Simon Josefsson  <simon@josefsson.org>
13454
13455         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
13456         of attempting to use non-existing /dev/*random.  Based on patch
13457         from Adam Strzelecki <ono@java.pl> in
13458         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
13459
13460 2008-04-08  Bruno Haible  <bruno@clisp.org>
13461
13462         Add tentative support for emx+gcc.
13463         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
13464         * lib/fpurge.c (fpurge): Likewise.
13465         * lib/freadable.c (freadable): Likewise.
13466         * lib/freadahead.c (freadahead): Likewise.
13467         * lib/freading.c (freading): Likewise.
13468         * lib/freadptr.c (freadptr): Likewise.
13469         * lib/freadseek.c (freadptrinc): Likewise.
13470         * lib/fseeko.c (rpl_fseeko): Likewise.
13471         * lib/fseterr.c (fseterr): Likewise.
13472         * lib/fwritable.c (fwritable): Likewise.
13473         * lib/fwriting.c (fwriting): Likewise.
13474         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
13475
13476 2008-04-09  Eric Blake  <ebb9@byu.net>
13477
13478         Avoid some autoconf warnings.
13479         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
13480         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
13481         * m4/afs.m4 (gl_AFS): Likewise.
13482         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
13483         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
13484         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
13485         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
13486         (gl_INTEGER_TYPE_SUFFIX): Likewise.
13487         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
13488         (AC_CHECK_DECLS_ONCE): Likewise.
13489         Rename file...
13490         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
13491         gnulib-tool requires autoconf 2.59 or better.
13492         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
13493
13494 2008-04-08  Eric Blake  <ebb9@byu.net>
13495
13496         Use 'git describe --match' if present (added in git 1.5.5).
13497         * build-aux/git-version-gen: Limit result to tags that match 'v*'
13498         if possible.
13499
13500 2008-04-08  Bruno Haible  <bruno@clisp.org>
13501
13502         Add tentative support for OpenServer.
13503         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
13504         _ptr, _cnt.
13505         * lib/fpurge.c (fpurge): Likewise.
13506         * lib/freadable.c (freadable): Likewise.
13507         * lib/freadahead.c (freadahead): Likewise.
13508         * lib/freading.c (freading): Likewise.
13509         * lib/freadptr.c (freadptr): Likewise.
13510         * lib/freadseek.c (freadptrinc): Likewise.
13511         * lib/fseeko.c (rpl_fseeko): Likewise.
13512         * lib/fseterr.c (fseterr): Likewise.
13513         * lib/fwritable.c (fwritable): Likewise.
13514         * lib/fwriting.c (fwriting): Likewise.
13515         Reported by Roger Cornelius <rac@tenzing.org> and
13516         Brian K. White <brian@aljex.com>.
13517
13518 2008-04-06  Jim Meyering  <meyering@redhat.com>
13519
13520         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
13521
13522 2008-04-06  Bruno Haible  <bruno@clisp.org>
13523
13524         Avoid possible error with non-ASCII bytes in UTF-8 locales.
13525         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
13526         * tests/test-printf-posix.sh: Likewise.
13527         * tests/test-vfprintf-posix.sh: Likewise.
13528         * tests/test-vprintf-posix.sh: Likewise.
13529         * tests/test-xprintf-posix.sh: Likewise.
13530
13531 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
13532
13533         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
13534         hide error from 'ls', needed on OS/2.
13535         Report by Elbert Pol <elbert.pol@gmail.com>.
13536
13537 2008-04-04  Eric Blake  <ebb9@byu.net>
13538
13539         Make test-fseeko.c failures meaningful.
13540         * tests/test-fseeko.c: Print line number on failure.
13541         * tests/test-fseek.c: Likewise.
13542         Reported by Nelson H. F. Beebe.
13543
13544         Improve strtod bug detection check.
13545         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
13546         required for Solaris 10.
13547         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
13548
13549 2008-04-04  Bruno Haible  <bruno@clisp.org>
13550
13551         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
13552         by m4/setenv.m4.
13553
13554 2008-04-03  Eric Blake  <ebb9@byu.net>
13555
13556         Ensure sane .version contents.
13557         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
13558         version string.
13559         * build-aux/git-version-gen: Improve documentation.
13560
13561         Make GNU make output nicer.
13562         * top/GNUmakefile [!_have-Makefile]: Add dependency on
13563         MAKECMDGOALS to enforce message for all command line targets.  Set
13564         srcdir for use in maint.mk.
13565
13566         Another maintainer tweak.
13567         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
13568         a target that regenerates version.
13569
13570 2008-04-03  Jim Meyering  <meyering@redhat.com>
13571
13572         vc-list-files: don't cause coreutils "make po-check" failure
13573         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
13574
13575 2008-04-03  Eric Blake  <ebb9@byu.net>
13576
13577         Allow VPATH usage of vc-list-files.
13578         * build-aux/vc-list-files (scriptversion): Add timestamp.
13579         (options): Add --help, --version, -C.
13580         (CVS): Support installed cvsu.
13581
13582 2008-04-02  Bruno Haible  <bruno@clisp.org>
13583
13584         Avoid some "statement with no effect" warnings from gcc.
13585         * tests/test-wctype.c (main): Explicitly ignore unused values.
13586         Reported by Jim Meyering.
13587
13588 2008-04-02  Jim Meyering  <meyering@redhat.com>
13589
13590         Avoid some warnings from "gcc -Wshadow".
13591         * tests/test-frexp.c (exp): Define to a different identifier.
13592         * tests/test-frexpl.c (exp): Likewise.
13593
13594 2008-04-03  Jim Meyering  <meyering@redhat.com>
13595
13596         bootstrap: remove dangling *.[ch] symlinks from lib
13597         * build-aux/bootstrap [dangling symlink removal]: Move find's
13598         -depth option to precede all others, to avoid a warning.
13599         Remove *.[ch] files too, and from "$source_base" (usually lib/).
13600
13601 2008-04-02  Bruno Haible  <bruno@clisp.org>
13602
13603         Avoid some warnings from "gcc -Wshadow".
13604         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
13605         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
13606         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
13607         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
13608         Reported by Jim Meyering.
13609
13610 2008-04-01  Bruno Haible  <bruno@clisp.org>
13611
13612         Fix test to work on IRIX 6.5 with cc.
13613         * tests/test-math.c (numeric_equal): New function.
13614         (main): Use it.
13615
13616 2008-04-01  Bruno Haible  <bruno@clisp.org>
13617
13618         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
13619
13620 2008-04-01  Bruno Haible  <bruno@clisp.org>
13621
13622         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
13623         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
13624         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
13625         (Depends-on): Remove math.
13626
13627         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
13628         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
13629         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
13630         (Depends-on): Remove math.
13631
13632         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
13633         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
13634         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
13635         (Depends-on): Remove math.
13636         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
13637         (Depends-on): Remove math.
13638
13639         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
13640         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
13641         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
13642         (Depends-on): Remove math.
13643         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
13644         (Depends-on): Remove math.
13645
13646         * tests/test-round1.c: Include nan.h.
13647         (main): Use NaNd instead of NAN.
13648         * modules/round-tests (Files): Add tests/nan.h.
13649
13650         * tests/test-trunc1.c: Include nan.h.
13651         (main): Use NaNd instead of NAN.
13652         * modules/trunc-tests (Files): Add tests/nan.h.
13653
13654         * tests/test-roundf1.c: Include nan.h.
13655         (main): Use NaNf instead of NAN.
13656         * modules/roundf-tests (Files): Add tests/nan.h.
13657
13658         * tests/test-truncf1.c: Include nan.h.
13659         (main): Use NaNf instead of NAN.
13660         * modules/truncf-tests (Files): Add tests/nan.h.
13661
13662         * tests/test-ceilf1.c: Include nan.h.
13663         (main): Use NaNf instead of NAN.
13664         * modules/ceilf-tests (Files): Add tests/nan.h.
13665
13666         * tests/test-floorf1.c: Include nan.h.
13667         (main): Use NaNf instead of NAN.
13668         * modules/floorf-tests (Files): Add tests/nan.h.
13669
13670         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
13671         (main): Use NaNf instead of NAN.
13672         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
13673
13674         * tests/test-isnand.c: Include nan.h instead of <math.h>.
13675         (main): Use NaNd instead of NAN.
13676         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
13677
13678         * tests/test-frexp.c: Include nan.h.
13679         (main): Use NaNd instead of NAN.
13680         * modules/frexp-tests (Files): Add tests/nan.h.
13681
13682         * lib/isnan.c: Don't include <math.h>.
13683         (FUNC): Don't use NAN macro.
13684         * modules/isnand-nolibm (Depends-on): Remove math.
13685         * modules/isnanf-nolibm (Depends-on): Remove math.
13686         * modules/isnanl (Depends-on): Remove math.
13687         * modules/isnanl-nolibm (Depends-on): Remove math.
13688
13689         * tests/nan.h: New file.
13690
13691 2008-04-01  Eric Blake  <ebb9@byu.net>
13692
13693         Fix typos.
13694         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
13695         values to be the right type.
13696
13697         For now, cater to gnulib strtod inaccuracies.
13698         * tests/test-strtod.c (main): Allow 1-ulp error on expected
13699         fractional results.  While not as nice from a QoI perspective, it
13700         is a quicker patch than correctly implementing decimal to binary
13701         rounding.
13702
13703 2008-03-31  Eric Blake  <ebb9@byu.net>
13704
13705         Guarantee a definition of NAN.
13706         * lib/math.in.h (NAN): Define if missing.
13707         * tests/test-math.c (main): Test it.
13708         * doc/posix-headers/math.texi (math.h): Document this.
13709         * lib/isnan.c (rpl_isnand): Use it.
13710         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
13711         * tests/test-floorf1.c (NaN): Likewise.
13712         * tests/test-frexp.c (NaN): Likewise.
13713         * tests/test-isnand.c (NaN): Likewise.
13714         * tests/test-isnanf.c (NaN): Likewise.
13715         * tests/test-round1.c (NaN): Likewise.
13716         * tests/test-roundf1.c (NaN): Likewise.
13717         * tests/test-snprintf-posix.h (NaN): Likewise.
13718         * tests/test-sprintf-posix.h (NaN): Likewise.
13719         * tests/test-trunc1.c (NaN): Likewise.
13720         * tests/test-truncf1.c (NaN): Likewise.
13721         * tests/test-vasnprintf-posix.c (NaN): Likewise.
13722         * tests/test-vasprintf-posix.c (NaN): Likewise.
13723         * modules/isnand-nolibm (Depends-on): Add math.
13724         * modules/isnanf-nolibm (Depends-on): Likewise.
13725         * modules/isnanl (Depends-on): Likewise.
13726         * modules/isnanl-nolibm (Depends-on): Likewise.
13727         * modules/snprintf-posix-tests (Depends-on): Likewise.
13728         * modules/sprintf-posix-tests (Depends-on): Likewise.
13729         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
13730         * modules/vsprintf-posix-tests (Depends-on): Likewise.
13731         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
13732         * modules/vasprintf-posix-tests (Depends-on): Likewise.
13733
13734 2008-03-31  Bruno Haible  <bruno@clisp.org>
13735
13736         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
13737         * doc/posix-functions/strtod.texi: Likewise.
13738
13739 2008-03-31  Bruno Haible  <bruno@clisp.org>
13740
13741         * tests/test-strtod.c (main): Don't use C99 syntax.
13742
13743 2008-03-31  Bruno Haible  <bruno@clisp.org>
13744
13745         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
13746         Reported by Eric Blake.
13747
13748 2008-03-31  Jim Meyering  <meyering@redhat.com>
13749
13750         Don't compare actual signbit return values.
13751         * tests/test-strtod.c (main): Rather, compare only their
13752         zero/non-zero nature.
13753
13754 2008-03-31  Eric Blake  <ebb9@byu.net>
13755
13756         More strtod documentation.
13757         * doc/posix-functions/strtod.texi (strtod): Interpret more test
13758         failures as distinct bugs.
13759
13760 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
13761
13762         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
13763         Problem reported by Erik Benada in
13764         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
13765
13766 2008-03-30  Bruno Haible  <bruno@clisp.org>
13767
13768         * tests/test-strtod.c: Add comments about which assertion fails on which
13769         platform.
13770         * doc/posix-functions/strtod.texi: Add info about many more platforms.
13771
13772 2008-03-30  Eric Blake  <ebb9@byu.net>
13773
13774         Test signbit behavior on zeros.
13775         * tests/test-signbit.c (test_signbitf): Add tests for zero.
13776         (test_signbitd, test_signbitl): Likewise.
13777
13778         More strtod touchups.
13779         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
13780         sign of negative underflow, for now.  Use .5, not .1.
13781         * doc/posix-functions/strtod.texi (strtod): Mention these
13782         limitations.
13783         Reported by Jim Meyering.
13784
13785 2008-03-30  Bruno Haible  <bruno@clisp.org>
13786
13787         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
13788         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
13789
13790 2008-03-30  Bruno Haible  <bruno@clisp.org>
13791
13792         Avoid failure when attempting to return empty iconv results on some
13793         platforms.
13794         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
13795         allocation, don't report ENOMEM when the resulting string is empty.
13796
13797 2008-03-30  Bruno Haible  <bruno@clisp.org>
13798
13799         Fix buffer overrun.
13800         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
13801         Don't consider the width for tmp_length. Check count against tmp_length
13802         before doing the padding. Ensure enough allocation during padding.
13803
13804 2008-03-30  Eric Blake  <ebb9@byu.net>
13805
13806         strtod touchups.
13807         * lib/strtod.c (strtod): Avoid compiler warnings.
13808         Reported by Jim Meyering.
13809
13810 2008-03-30  Bruno Haible  <bruno@clisp.org>
13811
13812         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
13813         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
13814         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
13815         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
13816         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
13817         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
13818         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
13819         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
13820
13821         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
13822         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
13823         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
13824         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
13825         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
13826         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
13827         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
13828         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
13829
13830         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
13831         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
13832         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
13833         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
13834         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
13835         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
13836         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
13837         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
13838
13839         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
13840         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
13841
13842         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
13843         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
13844
13845         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
13846         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
13847
13848         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
13849         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
13850         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
13851
13852         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
13853         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
13854         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
13855
13856         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
13857         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
13858         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
13859
13860         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
13861         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
13862         * modules/vasprintf (Depends-on): Add EOVERFLOW.
13863
13864         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
13865         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
13866         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
13867         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
13868         (Depends-on): Add EOVERFLOW.
13869         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
13870         (Depends-on): Add EOVERFLOW.
13871         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
13872         (Depends-on): Add EOVERFLOW.
13873         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
13874         (Depends-on): Add EOVERFLOW.
13875         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
13876         (Depends-on): Add EOVERFLOW.
13877         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
13878         (Depends-on): Add EOVERFLOW.
13879         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
13880         (Depends-on): Add EOVERFLOW.
13881         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
13882         (Depends-on): Add EOVERFLOW.
13883
13884         * lib/sprintf.c (EOVERFLOW): Remove fallback.
13885         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
13886         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
13887
13888         * lib/snprintf.c (EOVERFLOW): Remove fallback.
13889         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
13890         * modules/snprintf (Depends-on): Add EOVERFLOW.
13891
13892         * lib/poll.c (EOVERFLOW): Remove fallback.
13893         * modules/poll (Depends-on): Add EOVERFLOW.
13894
13895         * lib/getugroups.c (EOVERFLOW): Remove fallback.
13896         * modules/getugroups (Depends-on): Add EOVERFLOW.
13897
13898         * lib/getdelim.c (EOVERFLOW): Remove fallback.
13899         * modules/getdelim (Depends-on): Add EOVERFLOW.
13900
13901         * lib/ftell.c (EOVERFLOW): Remove fallback.
13902         * modules/ftell (Depends-on): Add EOVERFLOW.
13903
13904         * lib/fprintf.c (EOVERFLOW): Remove fallback.
13905         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
13906         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
13907
13908         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
13909
13910         * modules/EOVERFLOW-tests: New file.
13911         * tests/test-EOVERFLOW.c: New file.
13912
13913         * modules/EOVERFLOW: New file.
13914         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
13915
13916 2008-03-30  Bruno Haible  <bruno@clisp.org>
13917
13918         Fix bug introduced on 2007-06-10.
13919         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
13920         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
13921
13922 2008-03-30  Bruno Haible  <bruno@clisp.org>
13923
13924         Improve freadseek's efficiency after ungetc.
13925         * lib/freadseek.c: Include freadahead.h.
13926         (freadptrinc): New function, extracted from freadseek.
13927         (freadseek): Use it in a loop. Use freadahead to determine the number
13928         of loop iterations.
13929         * modules/freadseek (Depends-on): Add freadahead.
13930         (configure.ac): Require AC_C_INLINE.
13931
13932 2008-03-30  Bruno Haible  <bruno@clisp.org>
13933
13934         * lib/freadseek.c (freadseek): Don't ignore the return value of
13935         freadptr.
13936
13937 2008-03-29  Eric Blake  <ebb9@byu.net>
13938
13939         Add hex float support.
13940         * modules/strtod (Depends-on): Add c-ctype.
13941         (Link): Mention POW_LIB.
13942         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
13943         whitespace between 'e' and exponent.
13944         * tests/test-strtod.c (main): Enable hex float tests.
13945         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
13946         now provides.
13947
13948         Document various strtod bugs, with some fixes.
13949         * doc/posix-functions/strtod.texi (strtod): Document bugs with
13950         "-0x", "inf", "nan", and hex constants.
13951         * doc/posix-functions/atof.texi (atof): Likewise.
13952         * modules/stdlib (Makefile.am): Support strtod.
13953         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
13954         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
13955         detect additional strtod bugs.
13956         * lib/stdlib.in.h (rpl_strtod): Add declarations.
13957         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
13958         bool where appropriate.  Parse 'inf' and 'nan'.
13959         * tests/test-strtod.c: New file.
13960         * modules/strtod (Depends-on): Add stdbool, stdlib.
13961         (configure.ac): Turn on module indicator.
13962         * modules/strtod-tests: New module.
13963
13964 2008-03-29  Eric Blake  <ebb9@byu.net>
13965
13966         Fix ftell on mingw.
13967         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
13968         * modules/ftell-tests (Depends-on): Add binary-io.
13969         * modules/ftello-tests (Depends-on): Likewise.
13970         * tests/test-ftell.c (main): Enhance test to cover behavior after
13971         ungetc.  Enforce binary mode.
13972         * tests/test-ftello.c (main): Likewise.
13973
13974         Pass test-freadseek on cygwin.
13975         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
13976         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
13977         ungetc buffer.
13978
13979         * tests/test-fflush2.c (main): Fix typo.
13980
13981 2008-03-29  Bruno Haible  <bruno@clisp.org>
13982
13983         * tests/test-fflush2.c (main): Temporarily disable the contents of
13984         this test.
13985         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
13986         Reported by Eric Blake.
13987
13988 2008-03-28  Simon Josefsson  <simon@josefsson.org>
13989
13990         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
13991         (GC_SHA224_DIGEST_SIZE): Add.
13992
13993         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
13994         (gc_hash_digest_length): Likewise.
13995         (gc_hash_buffer): Likewise.
13996
13997 2008-03-25  Bruno Haible  <bruno@clisp.org>
13998
13999         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
14000         detail which gettext release to use.
14001         Reported by Simon Josefsson.
14002
14003 2008-03-26  Jim Meyering  <meyering@redhat.com>
14004
14005         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
14006         * modules/gnumakefile (clean-GNUmakefile): Also, use
14007         test ... && ... || : syntax rather than if-then ... fi.
14008
14009         gnumakefile: Don't double-quote-expand $(VPATH) value.
14010         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
14011
14012 2008-03-24  Eric Blake  <ebb9@byu.net>
14013
14014         Alter GNUmakefile to install into top directory.
14015         * modules/maintainer-makefile: Split, and add dependency...
14016         * modules/gnumakefile: to this new module.
14017         * build-aux/GNUmakefile: Move...
14018         * top/GNUmakefile: ...here.
14019         * build-aux/maint.mk: Move...
14020         * top/maint.mk: ...here.
14021         * MODULES.html.sh (Support for maintaining...): Document new
14022         module.
14023
14024 2008-03-23  Bruno Haible  <bruno@clisp.org>
14025
14026         * gnulib-tool: New options --vc-files, --no-vc-files.
14027         (func_usage): Document them.
14028         (vc_files): New variable.
14029         (func_import): Consider vc_files.
14030         (func_create_testdir): Set vc_files to empty.
14031         Suggested by Jim Meyering and Karl Berry.
14032
14033 2008-03-23  Bruno Haible  <bruno@clisp.org>
14034
14035         Fix regex compilation error on HP-UX 11.
14036         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
14037         * modules/regex (Files): Add m4/mbstate_t.m4.
14038         Reported by Ton Voon <ton.voon@altinity.com>.
14039
14040 2008-03-23  Bruno Haible  <bruno@clisp.org>
14041
14042         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
14043
14044 2008-03-23  Eric Blake  <ebb9@byu.net>
14045             Bruno Haible  <bruno@clisp.org>
14046
14047         Install files from top/ in the destination directory.
14048         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
14049         augmentation also for the files from top/.
14050         (func_import, func_create_testdir): Rewrite file names:
14051         top/filename -> filename.
14052
14053 2008-03-23  Bruno Haible  <bruno@clisp.org>
14054
14055         Tweak "gnulib --version" output.
14056         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
14057
14058 2008-03-23  Bruno Haible  <bruno@clisp.org>
14059
14060         Tweak "gnulib --version" output.
14061         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
14062         rather than contents of ChangeLog, when possible.
14063
14064 2008-03-21  Eric Blake  <ebb9@byu.net>
14065
14066         More --version tweaks.
14067         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
14068         date of last ChangeLog entry.
14069
14070 2008-03-21  Jim Meyering  <meyering@redhat.com>
14071
14072         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
14073
14074 2008-03-20  Eric Blake  <ebb9@byu.net>
14075
14076         VPATH fix.
14077         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
14078
14079 2008-03-20  Simon Josefsson  <simon@josefsson.org>
14080
14081         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
14082         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
14083
14084 2008-03-20  Eric Blake  <ebb9@byu.net>
14085
14086         Sync GNUmakefile with coreutils.
14087         * build-aux/GNUmakefile (have-Makefile): Rename...
14088         (_have-Makefile): ...to this, for namespace consideration.
14089         (GNUmakefile.cfg): Include, if present.
14090         (_autoreconf): Define a default.
14091         (_is-dist-target): New rule for rebuilds to pick up intra-release
14092         version.
14093         (maint-cfg.mk): Rename...
14094         (cfg.mk): ...to this.
14095
14096 2008-03-18  Jim Meyering  <meyering@redhat.com>
14097
14098         New script and module: mktempd
14099         * MODULES.html.sh (maint+release support): Add mktempd.
14100         * build-aux/mktempd: New file.
14101         * modules/mktempd: New file.
14102
14103 2008-03-15  Jim Meyering  <meyering@redhat.com>
14104
14105         Undo last change.
14106         * lib/sha1.c, lib/md5.c: 63 != ~63.
14107         Reported by Andreas Schwab.
14108
14109         sha1.c, md5.c: Hoist a redundant expression.
14110         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
14111         "ctx->buflen" only once, before calling *_process_block.
14112         * lib/md5.c (md5_process_bytes): Likewise.
14113
14114 2008-03-14  Eric Blake  <ebb9@byu.net>
14115
14116         Bump copyright year in files generated by gnulib-tool.
14117         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
14118         gnulib-tool, rather than hard-coding it.
14119
14120         Fix 'gnulib-tool --version' output to work with git.
14121         * gnulib-tool (func_gnulib_dir): New function, extracted from...
14122         (startup): ...here.
14123         (func_version): Use it to invoke git-version-gen, rather than
14124         relying on CVS keyword expansion.  Modernize wording.
14125         (cvsdatestamp, last_checkin_date, version): Kill unused
14126         variables.
14127
14128 2008-03-12  Jim Meyering  <meyering@redhat.com>
14129
14130         Recognize optional cast of the argument to free.
14131         * build-aux/useless-if-before-free: Update regexps.
14132
14133         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
14134
14135 2008-03-11  Bruno Haible  <bruno@clisp.org>
14136
14137         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
14138         by a single package.
14139         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
14140         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
14141         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
14142         Reported by Sam Steingold <sds@gnu.org>.
14143
14144 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
14145
14146         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
14147         repositories.
14148
14149 2008-03-11  Bruno Haible  <bruno@clisp.org>
14150
14151         Avoid conflicts between local macro definitions.
14152         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
14153         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
14154
14155 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
14156             Bruno Haible  <bruno@clisp.org>
14157
14158         Make va_copy work with some version of xlc on AIX 5.1.
14159         * lib/stdarg.in.h: New file.
14160         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
14161         On AIX, use a <stdarg.h> file substitute.
14162         * modules/stdarg (Files): Add lib/stdarg.in.h.
14163         (Depends-on): Add include_next.
14164         (Makefile.am): Build a stdarg.h substitute if requested.
14165         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
14166
14167 2008-03-10  Bruno Haible  <bruno@clisp.org>
14168
14169         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
14170         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
14171         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
14172
14173 2008-03-10  Bruno Haible  <bruno@clisp.org>
14174
14175         * modules/stdlib (Depends-on): Add include_next, remove
14176         absolute-header.
14177
14178 2008-03-09  Bruno Haible  <bruno@clisp.org>
14179
14180         * lib/freadahead.h (freadahead): Document more precisely.
14181         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
14182         the sum of both buffer sizes.
14183         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
14184         * NEWS: Document the change.
14185
14186 2008-03-09  Bruno Haible  <bruno@clisp.org>
14187
14188         Extend freadptr to return also the buffer size.
14189         * lib/freadptr.h (freadptr): Add sizep argument.
14190         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
14191         (freadptr): Add sizep argument. Determine buffer size like freadahead
14192         does.
14193         * tests/test-freadptr.c: Don't include freadahead.h.
14194         (main): Adapt for new calling convention of freadptr.
14195         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
14196         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
14197         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
14198         tests/test-freadptr2.sh.
14199         (Depends): Remove freadahead.
14200         (TESTS): Add test-freadptr2.sh.
14201         (check_PROGRAMS): Add test-freadptr2.
14202
14203 2008-03-09  Bruno Haible  <bruno@clisp.org>
14204
14205         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
14206         Report and solution by Simon Josefsson.
14207
14208 2008-03-06  Bruno Haible  <bruno@clisp.org>
14209
14210         Make fflush after ungetc work on BSD platforms.
14211         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
14212         * tests/test-fflush2.c: New file.
14213         * tests/test-fflush2.sh: New file.
14214         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
14215         tests/test-fflush2.c.
14216         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
14217         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
14218
14219 2008-03-06  Eric Blake  <ebb9@byu.net>
14220
14221         Likewise for ftello.
14222         * modules/ftello (Dependencies): Add extensions.
14223         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
14224
14225 2008-03-06  Bruno Haible  <bruno@clisp.org>
14226
14227         * modules/fseeko (Dependencies): Add extensions.
14228         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
14229         Needed on glibc systems.
14230
14231 2008-03-06  Bruno Haible  <bruno@clisp.org>
14232
14233         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
14234         email address.
14235         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
14236
14237 2008-03-06  Bruno Haible  <bruno@clisp.org>
14238
14239         * users.txt: Add libgnupdf.
14240
14241 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
14242
14243         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
14244         (Header File Substitutes, Function Substitutes,
14245         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
14246         (Build robot for gnulib): Fix typo.
14247
14248 2008-03-06  Bruno Haible  <bruno@clisp.org>
14249
14250         * doc/gnulib-tool.texi (VCS Issues): Small updates.
14251         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
14252
14253 2008-03-06  Bruno Haible  <bruno@clisp.org>
14254
14255         * doc/func.texi: New file, extracted from doc/gnulib.texi.
14256         * doc/gnulib.texi: Include it.
14257
14258 2008-03-06  Simon Josefsson  <simon@josefsson.org>
14259
14260         * modules/func (License): Change license to unlimited; there was
14261         no LGPL parts in the module anyway.
14262
14263 2008-03-06  Simon Josefsson  <simon@josefsson.org>
14264
14265         * modules/__func__: Renamed to modules/func.
14266         * modules/__func__-tests: Renamed to modules/func-tests.
14267         * tests/test-__func__.c: Renamed to tests/test-func.c.
14268         * m4/__func__.m4: Renamed to m4/func.m4.
14269         * doc/gnulib.texi (__func__): Section renamed to func.
14270         Suggested by Eric Blake <ebb9@byu.net>.
14271
14272 2008-03-06  Simon Josefsson  <simon@josefsson.org>
14273
14274         * doc/gnulib.texi (__func__): Use C99 terminology when talking
14275         about __func__.  Make example self-contained.  Suggested by Eric
14276         Blake <ebb9@byu.net>.
14277
14278         * tests/test-__func__.c (main): Avoid extraneous () around __func.
14279         Suggested by Eric Blake <ebb9@byu.net>.
14280
14281 2008-03-06  Simon Josefsson  <simon@josefsson.org>
14282
14283         * modules/__func__: New file.
14284         * modules/__func__-tests: New file.
14285         * tests/test-__func__.c: New file.
14286         * m4/__func__.m4: New file.
14287         * doc/gnulib.texi (__func__): Document __func__ module.
14288
14289 2008-03-05  Simon Josefsson  <simon@josefsson.org>
14290
14291         * modules/byteswap (License): Re-license as LGPLv2+.
14292
14293 2008-03-05  Simon Josefsson  <simon@josefsson.org>
14294
14295         * doc/Makefile: Add pdf target.
14296
14297 2008-03-05  Simon Josefsson  <simon@josefsson.org>
14298
14299         * modules/inline (License): Use 'unlimited', since there are only
14300         *.m4 files in this module.
14301
14302 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
14303             Bruno Haible  <bruno@clisp.org>
14304
14305         Add support for HP C 7.1 on OpenVMS 8.3.
14306         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
14307
14308 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
14309
14310         Update VMS specifics.
14311         * lib/getopt.c [VMS]: Remove include of unixlib.h.
14312
14313 2008-03-02  Jim Meyering  <meyering@redhat.com>
14314
14315         Remove the last dependency on the "free" module.
14316         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
14317         Reported by Bob Proulx.
14318
14319         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
14320
14321         Remove useless "if" tests before free.  Deprecate "free" module.
14322         * doc/posix-functions/free.texi: Mention that this
14323         module is no longer useful.
14324         * modules/free (Notice): Say this module is obsolete.
14325         * modules/readutmp (Depends-on): Remove free.
14326         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
14327         * lib/putenv.c (putenv): Likewise.
14328         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
14329         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
14330         * tests/test-c-strcasestr.c (main): Likewise.
14331         * tests/test-c-strstr.c (main): Likewise.
14332         * tests/test-mbscasestr1.c (main): Likewise.
14333         * tests/test-mbscasestr2.c (main): Likewise.
14334         * tests/test-mbsstr1.c (main): Likewise.
14335         * tests/test-mbsstr2.c (main): Likewise.
14336         * tests/test-memmem.c (main): Likewise.
14337         * tests/test-strcasestr.c (main): Likewise.
14338         * tests/test-striconv.c (main): Likewise.
14339         * tests/test-striconveh.c (main): Likewise.
14340         * tests/test-striconveha.c (main): Likewise.
14341         * tests/test-strstr.c (main): Likewise.
14342
14343         * build-aux/git-version-gen: Adjust a comment and the Usage string.
14344
14345         bootstrap: sync from coreutils again
14346         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
14347
14348 2008-03-01  Jim Meyering  <meyering@redhat.com>
14349
14350         bootstrap: sync from coreutils
14351         * build-aux/bootstrap (update_po_files): Copy a .po file into place
14352         also when the target doesn't exist.
14353
14354 2008-03-01  Eric Blake  <ebb9@byu.net>
14355
14356         Fix bugs in last patch.
14357         * lib/memchr2.c (memchr2): Fix typo.
14358         * tests/test-memchr2.c: Test previous bug, and don't use GNU
14359         extension.
14360         Reported by Bruce Korb.
14361
14362         New module 'memchr2'.
14363         * modules/memchr2: New file.
14364         * modules/memchr2-tests: Likewise.
14365         * lib/memchr2.h: Likewise.
14366         * lib/memchr2.c: Likewise, based on memchr.c.
14367         * tests/test-memchr2.c: New test.
14368         * MODULES.html.sh (String handling): Add memchr2.
14369
14370 2008-02-29  Bruno Haible  <bruno@clisp.org>
14371
14372         * modules/freadseek-tests: New file.
14373         * tests/test-freadseek.sh: New file.
14374         * tests/test-freadseek.c: New file.
14375
14376         New module 'freadseek'.
14377         * modules/freadseek: New file.
14378         * lib/freadseek.h: New file.
14379         * lib/freadseek.c: New file.
14380         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
14381
14382 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
14383
14384         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
14385         wydawca.
14386
14387         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
14388         program_invocation_name and program_invocation_short_name are
14389         present.
14390
14391 2008-02-28  Bruno Haible  <bruno@clisp.org>
14392
14393         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
14394         * tests/test-freadptr.sh: Also test non-seekable stdin.
14395
14396 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
14397
14398         * build-aux/bootstrap (source_base, m4_base)
14399         (doc_base, tests_base): New variables.
14400         (gnulib_tool_options): Do not hardcode base directories, use
14401         the above variables instead.
14402
14403 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
14404
14405         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
14406
14407 2008-02-28  Bruno Haible  <bruno@clisp.org>
14408
14409         * modules/freadptr-tests: New file.
14410         * tests/test-freadptr.sh: New file.
14411         * tests/test-freadptr.c: New file.
14412
14413         New module 'freadptr'.
14414         * modules/freadptr: New file.
14415         * lib/freadptr.h: New file.
14416         * lib/freadptr.c: New file.
14417         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
14418
14419 2008-02-26  Karl Berry  <karl@freefriends.org>
14420
14421         Sync from Libtool:
14422         * libltdl/argz.c (argz_add, argz_count): New functions.
14423         * libltdl/argz.in.h: Declare them.
14424         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
14425
14426 2008-02-22  Bruno Haible  <bruno@clisp.org>
14427
14428         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
14429         is a pointer type.  Needed for HP-UX 10.
14430         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
14431         * doc/posix-functions/gmtime_r.texi: Likewise.
14432         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
14433
14434 2008-02-24  Bruno Haible  <bruno@clisp.org>
14435
14436         * modules/environ-tests: New file.
14437         * tests/test-environ.c: New file.
14438
14439         New module 'environ'.
14440         * modules/environ: New file.
14441         * lib/unistd.in.h (environ): New declaration.
14442         * m4/environ.m4: New file.
14443         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
14444         after use.
14445         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
14446         HAVE_DECL_ENVIRON.
14447         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
14448         HAVE_DECL_ENVIRON.
14449         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
14450         wrong claim that 'environ' is missing on some systems.
14451         * modules/execute (Depends-on): Add environ.
14452         * lib/execute.c (environ): Remove fallback declaration.
14453         * modules/pipe (Depends-on): Add environ.
14454         * lib/pipe.c (environ): Remove fallback declaration.
14455         * modules/setenv (Depends-on): Add environ.
14456         * lib/setenv.c (environ): Remove fallback declaration.
14457         * modules/unsetenv (Depends-on): Add environ.
14458         * lib/unsetenv.c (environ): Remove fallback declaration.
14459         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
14460         m4/environ.m4.
14461         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
14462         (gl_PREREQ_UNSETENV): Likewise.
14463
14464 2008-02-24  Bruno Haible  <bruno@clisp.org>
14465
14466         * doc/posix-functions/environ.texi: Document the MacOS X problem.
14467
14468 2008-02-20  Bob Proulx  <bob@proulx.com>
14469
14470         Enable use of older two part flavor 'git describe'.
14471         * build-aux/git-version-gen: If using the older two part flavor of
14472         git version then recreate the third part now present in the
14473         newer three part flavor of git describe.
14474
14475 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
14476
14477         * lib/fts.c (fts_build): Typo correction to comment.
14478
14479 2008-02-17  Bruno Haible  <bruno@clisp.org>
14480
14481         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
14482         generating no-op conflicts.
14483
14484 2008-02-17  Bruno Haible  <bruno@clisp.org>
14485
14486         Speed up by 10%.
14487         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
14488         result_entries, rather than an index-based loop.
14489
14490 2008-02-17  Bruno Haible  <bruno@clisp.org>
14491
14492         Speed up by 25%.
14493         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
14494         'hashcode_cached'.
14495         (entry_create): New function.
14496         (entry_hashcode): Use the cached hashcode if possible.
14497         (read_changelog_file, try_split_merged_entry): Use entry_create.
14498
14499 2008-02-17  Bruno Haible  <bruno@clisp.org>
14500
14501         Speed up from O(n^2) to O(n) for long ChangeLog files.
14502         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
14503         (read_changelog_file): Change implementation of entries_reversed list
14504         to rbtreehash.
14505         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
14506
14507 2008-02-17  Bruno Haible  <bruno@clisp.org>
14508
14509         New option --split-merged-entry.
14510         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
14511         (find_paragraph_end, try_split_merged_entry): New functions.
14512         (long_options): Add option --split-merged-entry.
14513         (usage): Document option --split-merged-entry.
14514         (main): Implement option --split-merged-entry.
14515         Reported by Eric Blake.
14516
14517 2008-02-17  Bruno Haible  <bruno@clisp.org>
14518
14519         * lib/git-merge-changelog.c: Include c-strstr.h.
14520         (main): Support the "git pull --rebase" situation.
14521         * modules/git-merge-changelog (Depends-on): Add c-strstr.
14522         Reported by Eric Blake.
14523
14524 2008-02-16  Eric Blake  <ebb9@byu.net>
14525
14526         Avoid doubling \ in common case of "c-maybe" quoting style.
14527         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
14528         eliding outer quotes.
14529         * lib/quotearg.h: Document this.
14530         * tests/test-quotearg.c (result_strings, inputs, results_g)
14531         (flag_results, locale_results): Test it by adding a new string to
14532         each test group.
14533         (compare_strings): Test new string.
14534
14535 2008-02-13  Eric Blake  <ebb9@byu.net>
14536
14537         Avoid trigraph quoting in default output.
14538         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
14539         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
14540         unless explicitly requested.
14541         * tests/test-quotearg.c (flag_results, main): Add additional tests.
14542
14543 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
14544
14545         Don't rely on signed integer overflowing to negative value.
14546         * lib/getugroups.c (getugroups): Include <limits.h>.
14547         Instead, compare against INT_MAX, and increment only if the test passes.
14548
14549 2008-02-13  Jim Meyering  <meyering@redhat.com>
14550         and Eric Blake  <ebb9@byu.net>
14551
14552         Avoid shadowing warning and compile errors on Linux.
14553         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
14554         forwarding macros on Linux.
14555         (dcgettext): Define a stub, for Linux.
14556         (results_g, main): Avoid warnings.
14557
14558 2008-02-12  Eric Blake  <ebb9@byu.net>
14559
14560         Silence warning in last patch.
14561         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
14562
14563         Quotearg part 4: add tests, fix c-maybe colon quoting.
14564         * lib/quotearg.h: Improve documentation.
14565         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
14566         escapes when adding outer quotes.  When quoting trigraphs, use
14567         valid C notation.  When quoting NUL, omit extra characters if next
14568         character is not digit.  Alter prototype.
14569         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
14570         callers.
14571         * modules/quotearg-tests: New module.
14572         * tests/test-quotearg.c: New test.
14573
14574 2008-02-07  Eric Blake  <ebb9@byu.net>
14575
14576         Quotearg part 3: add flag to control outer quote elision.
14577         * lib/quotearg.h (c_maybe_quoting_style): New style.
14578         (enum quoting_flags): Better documentation of flags.
14579         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
14580         c-maybe style.
14581         (quotearg_buffer_restyled): Handle new flag to elide outer
14582         quotes.
14583
14584         Quotearg part 2: add flag that can control NUL elision.
14585         * lib/quotearg.h (set_quoting_flags): New prototype.
14586         * lib/quotearg.c (struct quoting_options): Add flag field.
14587         (set_quoting_flags): New function.
14588         (quotearg_buffer_restyled): Add flags parameter.
14589         (quotearg_alloc_mem): Set the flag if length cannot be returned.
14590         (quotearg_n_options): Set the flag, since length cannot be
14591         returned.
14592         (quoting_options_from_style): Default flags correctly.
14593
14594         Quotearg part 1: more wrappers, restore quotearg_char state.
14595         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
14596         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
14597         (quotearg_colon_mem): New wrappers.
14598         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
14599         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
14600         functions.
14601         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
14602         (quotearg_colon_mem): New functions.
14603
14604 2008-02-11  Bruno Haible  <bruno@clisp.org>
14605
14606         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
14607         library in the current directory: it does not work with parallel make.
14608         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
14609
14610 2008-02-11  Bruno Haible  <bruno@clisp.org>
14611
14612         * .gitattributes: New file.
14613
14614 2008-02-11  Jim Meyering  <meyering@redhat.com>
14615
14616         useless-if-before-free: Fix reversed exit values.
14617         * build-aux/useless-if-before-free: Use correct values
14618         for EXIT_MATCH and EXIT_NO_MATCH.
14619
14620         * build-aux/useless-if-before-free: Close stdout carefully.
14621
14622 2008-02-10  Bruno Haible  <bruno@clisp.org>
14623
14624         New module 'git-merge-changelog'.
14625         * modules/git-merge-changelog: New file.
14626         * lib/git-merge-changelog.c: New file.
14627
14628 2008-02-10  Jim Meyering  <meyering@redhat.com>
14629
14630         useless-if-before-free: New option: --list (-l).
14631
14632         useless-if-before-free: Don't exit immediately upon open failure.
14633         * build-aux/useless-if-before-free: Exit 2 for errors.
14634         Upon failure to open a file, don't exit immediately.
14635         Rather, just warn and continue with any remaining files.
14636
14637 2008-02-10  Bruno Haible  <bruno@clisp.org>
14638
14639         New abstract list operation 'node_set_value'.
14640         * lib/gl_list.h (gl_list_node_set_value): New function.
14641         (struct gl_list_implementation): New field node_set_value.
14642         * lib/gl_list.c (gl_list_node_set_value): New function.
14643         * lib/gl_array_list.c (gl_array_node_set_value): New function.
14644         (gl_array_list_implementation): Update.
14645         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
14646         (gl_carray_list_implementation): Update.
14647         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
14648         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
14649         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
14650         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
14651         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
14652         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
14653         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
14654         Update.
14655         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
14656         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
14657         (gl_sublist_list_implementation): Update.
14658
14659 2008-02-10  Bruno Haible  <bruno@clisp.org>
14660
14661         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
14662         Needed when ELEMENT is #defined to 'some_type *'.
14663
14664 2008-02-10  Jim Meyering  <meyering@redhat.com>
14665
14666         New script and module: useless-if-before-free
14667         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
14668         * build-aux/useless-if-before-free: New file.
14669         * modules/useless-if-before-free: New file.
14670
14671         * build-aux/gitlog-to-changelog: Use committer date, not author date.
14672
14673         xstrtol_error: Fix typo.
14674         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
14675         s/exit_failure/exit_status/.
14676
14677 2008-02-09  Jim Meyering  <meyering@redhat.com>
14678
14679         New script and module: gitlog-to-changelog
14680         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
14681         * modules/gitlog-to-changelog: New file.
14682         * build-aux/gitlog-to-changelog: New file.
14683
14684 2008-02-08  Jim Meyering  <meyering@redhat.com>
14685
14686         Avoid two "parameter unused" warnings.
14687         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
14688         Mark "st" as used.
14689
14690         Use "git COMMAND", not "git-COMMAND".
14691         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
14692         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
14693         * build-aux/git-version-gen: Use "git status", not "git-status".
14694
14695 2008-02-07  Bruno Haible  <bruno@clisp.org>
14696
14697         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
14698         Avoids a crash on Windows Vista.
14699         Reported by Adam Strzelecki <ono@java.pl> via
14700         Simon Josefsson <simon@josefsson.org>.
14701
14702 2008-02-06  Bruno Haible  <bruno@clisp.org>
14703
14704         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
14705         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
14706         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
14707         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
14708         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
14709         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
14710         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
14711         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
14712         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
14713         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
14714         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
14715         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
14716         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
14717         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
14718         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
14719         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
14720         left-adjust flag.
14721         * tests/test-snprintf-posix.h (test_function): Likewise.
14722         * tests/test-sprintf-posix.h (test_function): Likewise.
14723         * tests/test-vasprintf-posix.c (test_function): Likewise.
14724         * doc/posix-functions/fprintf.texi: Update.
14725         * doc/posix-functions/printf.texi: Update.
14726         * doc/posix-functions/snprintf.texi: Update.
14727         * doc/posix-functions/sprintf.texi: Update.
14728         * doc/posix-functions/vfprintf.texi: Update.
14729         * doc/posix-functions/vprintf.texi: Update.
14730         * doc/posix-functions/vsnprintf.texi: Update.
14731         * doc/posix-functions/vsprintf.texi: Update.
14732         Reported by Peter Fales <psfales@alcatel-lucent.com>.
14733
14734 2008-02-06  Bruno Haible  <bruno@clisp.org>
14735
14736         Fix bug introduced on 2008-01-26.
14737         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
14738
14739 2008-02-06  Bruno Haible  <bruno@clisp.org>
14740
14741         Fix bug introduced on 2007-06-10.
14742         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
14743         !NEED_PRINTF_FLAG_ZERO.
14744
14745 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
14746
14747         getloadavg: use libperfstat on AIX5
14748         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
14749
14750 2008-02-03  Bruno Haible  <bruno@clisp.org>
14751
14752         * lib/diffseq.h: Add comments about required #includes.
14753         Reported by Michael Biggs <gnulib@doubleplum.net>.
14754
14755 2008-02-01  Bruno Haible  <bruno@clisp.org>
14756
14757         * users.txt: Add gnuit.
14758
14759 2008-01-31  Bruno Haible  <bruno@clisp.org>
14760
14761         * lib/md4.c (set_uint32): Mark as inline.
14762         * lib/md5.c (set_uint32): Likewise.
14763         * lib/sha1.c (set_uint32): Likewise.
14764         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
14765         * m4/md5.m4 (gl_MD5): Likewise.
14766         * m4/sha1.m4 (gl_SHA1): Likewise.
14767
14768 2008-01-31  Jim Meyering  <meyering@redhat.com>
14769
14770         Use "sizeof VAR", rather than a literal "4".
14771         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
14772         * lib/md4.c (md4_read_ctx): Likewise.
14773         * lib/sha1.c (sha1_read_ctx): Likewise.
14774
14775 2008-01-31  Simon Josefsson  <simon@josefsson.org>
14776
14777         * tests/test-sha1.c: New file, based on test-md5.c.
14778
14779         * modules/crypto/sha1-tests: New file.
14780
14781 2008-01-31  Simon Josefsson  <simon@josefsson.org>
14782
14783         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
14784
14785 2008-01-31  Jim Meyering  <meyering@redhat.com>
14786
14787         Prefer "sizeof v" over the equivalent "4".
14788         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
14789         * lib/md5.c (set_uint32): Likewise.
14790         * lib/sha1.c (set_uint32): Likewise.
14791
14792 2008-01-31  Simon Josefsson  <simon@josefsson.org>
14793
14794         * lib/sha1.c (set_uint32): Mark function as static.
14795
14796 2008-01-31  Simon Josefsson  <simon@josefsson.org>
14797
14798         md2: clarify comments to say that alignment is not required.
14799         * lib/md2.h: Remove warning about alignment in comment.
14800         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
14801         never been required.
14802
14803 2008-01-31  Simon Josefsson  <simon@josefsson.org>
14804
14805         md4: adapt alignment constraint fix from sha1.
14806         * lib/md4.c (set_uint32): New function, from sha1.c
14807         (md4_read_ctx): Use it.
14808         (md4_finish_ctx): Doc fix.
14809         * lib/md4.h: Doc fix.
14810
14811 2008-01-31  Simon Josefsson  <simon@josefsson.org>
14812
14813         md5: adapt alignment constraint fix from sha1.
14814         * lib/md5.c (set_uint32): New function, from sha1.c
14815         (md5_read_ctx): Use it.
14816         (md5_finish_ctx): Doc fix.
14817         * lib/md5.h: Doc fix.
14818
14819 2008-01-30  Peter Palfrader  <weasel@debian.org>
14820
14821         sha1: remove the result buffer alignment constraint
14822         * lib/sha1.c (set_uint32): New function.
14823         (sha1_read_ctx): Rewrite to remove the result buffer alignment
14824         constraint.
14825         (sha1_finish_ctx): Remove comment warning about alignment constraint.
14826         * lib/sha1.h: Likewise.
14827
14828 2008-01-30  Andreas Schwab  <schwab@suse.de>
14829             Bruno Haible  <bruno@clisp.org>
14830
14831         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
14832         correct definition of LDBL_MIN_EXP.
14833
14834 2008-01-30  Karl Berry  <karl@gnu.org>
14835
14836         * config/srclist-update: try to preserve x bit on updates.
14837         * config/srclistvars.sh: update for karl.
14838
14839 2008-01-29  Jim Meyering  <meyering@redhat.com>
14840
14841         vasnprintf.c: Avoid warning about unused label
14842         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
14843         "overflow" label definition and associated code with the
14844         same cpp condition that guards the sole use of that label.
14845
14846 2008-01-26  Bruno Haible  <bruno@clisp.org>
14847
14848         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
14849         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
14850         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
14851         * lib/isnanl-nolibm.h (isnanl): Likewise.
14852         Reported by Paul Eggert <eggert@cs.ucla.edu>.
14853
14854 2008-01-26  Bruno Haible  <bruno@clisp.org>
14855
14856         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
14857         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
14858
14859 2008-01-26  Bruno Haible  <bruno@clisp.org>
14860
14861         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
14862         GCC >= 4.0 built-in.
14863         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
14864
14865 2008-01-26  Bruno Haible  <bruno@clisp.org>
14866
14867         Rename isnan, applicable to 'double' only, to isnand.
14868         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
14869         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
14870         (configure.ac): Update.
14871         (Include): Replace "isnan.h" with "isnand.h".
14872         * m4/isnand.m4: Renamed from m4/isnan.m4.
14873         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
14874         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
14875         instead of isnan.c.
14876         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
14877         instead of HAVE_ISNAN_IN_LIBC.
14878         (isnand): Renamed from isnan.
14879         * lib/isnand.c: New file.
14880         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
14881         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
14882         (Makefile.am): Update.
14883         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
14884         Include isnand.h instead of isnan.h.
14885         (main): Test isnand instead of isnan.
14886         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
14887         isnan-nolibm.
14888         * modules/frexp (Depends-on): Likewise.
14889         * modules/frexp-tests (Depends-on): Likewise.
14890         * modules/frexp-nolibm (Depends-on): Likewise.
14891         * modules/frexp-nolibm-tests (Depends-on): Likewise.
14892         * modules/isfinite (Depends-on): Likewise.
14893         * modules/round-tests (Depends-on): Likewise.
14894         * modules/signbit (Depends-on): Likewise.
14895         * modules/signbit-tests (Depends-on): Likewise.
14896         * modules/snprintf-posix (Depends-on): Likewise.
14897         * modules/sprintf-posix (Depends-on): Likewise.
14898         * modules/trunc-tests (Depends-on): Likewise.
14899         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
14900         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
14901         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
14902         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
14903         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
14904         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
14905         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
14906         * modules/vasnprintf-posix (Depends-on): Likewise.
14907         * modules/vasprintf-posix (Depends-on): Likewise.
14908         * modules/vfprintf-posix (Depends-on): Likewise.
14909         * modules/vsnprintf-posix (Depends-on): Likewise.
14910         * modules/vsprintf-posix (Depends-on): Likewise.
14911         * lib/frexp.c: Include isnand.h instead of isnan.h.
14912         (ISNAN): Set to isnand instead of isnan.
14913         * lib/isfinite.c: Include isnand.h instead of isnan.h.
14914         (gl_isfinited): Use isnand instead of isnan.
14915         * lib/signbitd.c: Include isnand.h instead of isnan.h.
14916         (gl_signbitd): Use isnand instead of isnan.
14917         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
14918         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
14919         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
14920         (main): Use isnand instead of isnan.
14921         * tests/test-round1.c: Include isnand.h.
14922         (main): Use isnand instead of isnan.
14923         * tests/test-round2.c: Include isnand.h instead of isnan.h.
14924         (ISNAN): Set to isnand instead of isnan.
14925         * tests/test-trunc1.c: Include isnand.h.
14926         (main): Use isnand instead of isnan.
14927         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
14928         (equal): Use isnand instead of isnan.
14929         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
14930         isnand-nolibm.
14931         * NEWS: Mention the change.
14932
14933 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
14934             Bruno Haible  <bruno@clisp.org>
14935
14936         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
14937         the GCC builtins for signbits are present and set
14938         REPLACE_SIGNBIT_USING_GCC if so.
14939         * lib/math.in.h (signbit): Define using GCC builtins if
14940         REPLACE_SIGNBIT_USING_GCC is set.
14941         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
14942         REPLACE_SIGNBIT_USING_GCC.
14943         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
14944
14945 2008-01-25  Jim Meyering  <meyering@redhat.com>
14946
14947         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
14948         * lib/poll.c: Include <config.h>, not "config.h".
14949         * tests/test-getaddrinfo.c: Likewise.
14950
14951 2008-01-25  Simon Josefsson  <simon@josefsson.org>
14952
14953         * modules/sockets-tests: New file.
14954
14955 2008-01-24  Simon Josefsson  <simon@josefsson.org>
14956
14957         * modules/sockets: New module, can be used to call WSA_Startup and
14958         WSA_Cleanup when needed.
14959
14960         * lib/sockets.h, lib/sockets.c: New files.
14961
14962         * m4/sockets.m4: New file.
14963
14964         * tests/test-sockets.c: New file.
14965
14966 2008-01-19  Bruno Haible  <bruno@clisp.org>
14967
14968         * doc/posix-headers: Renamed from doc/headers.
14969         * doc/posix-functions: Renamed from doc/functions.
14970         * doc/gnulib.texi: Update.
14971
14972 2008-01-19  Bruno Haible  <bruno@clisp.org>
14973
14974         * doc/glibc-functions/strcasestr.texi: Include contents of
14975         doc/functions/strcasestr.texi, fixing the list of platforms.
14976         * doc/functions/strcasestr.texi: Remove file.
14977
14978 2008-01-19  Bruno Haible  <bruno@clisp.org>
14979
14980         * doc/glibc-functions/memmem.texi: Include contents of
14981         doc/functions/memmem.texi.
14982         * doc/functions/memmem.texi: Remove file.
14983
14984 2008-01-18  Bruno Haible  <bruno@clisp.org>
14985
14986         * doc/glibc-functions/*.texi: New files.
14987         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
14988         to use the new files.
14989
14990 2008-01-17  Bruno Haible  <bruno@clisp.org>
14991
14992         * tests/test-gethostname.c (main): Fix printf statement.
14993
14994 2008-01-17  Simon Josefsson  <simon@josefsson.org>
14995
14996         * modules/gethostname-tests: New file.
14997
14998         * tests/test-gethostname.c: New file.
14999
15000 2008-01-17  Simon Josefsson  <simon@josefsson.org>
15001
15002         * lib/gethostname.c: Include string.h unconditionally, strncpy is
15003         used by the UNAME case.  Reported by Bruno Haible
15004         <bruno@clisp.org>.
15005
15006 2008-01-17  Eric Blake  <ebb9@byu.net>
15007
15008         Convert c-strcasestr to be more efficient.
15009         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
15010         (Depends-on): Add c-strcase, remove malloca, strnlen.
15011         * tests/test-c-strcasestr.c (main): Enhance test.
15012         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
15013
15014 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
15015
15016         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
15017         Use it in creating po/Makevars.
15018
15019 2008-01-15  Simon Josefsson  <simon@josefsson.org>
15020
15021         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
15022         Applications that requires it should initialize libgcrypt
15023         manually.
15024
15025 2008-01-16  Simon Josefsson  <simon@josefsson.org>
15026
15027         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
15028
15029 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
15030
15031         Fix problem with getdate on mingw32 reported by Simon Josefsson
15032         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
15033         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
15034         tzname", when deciding whether to declare tzname.
15035         * lib/strftime.c (tzname): Likewise.
15036
15037 2008-01-15  Bruno Haible  <bruno@clisp.org>
15038
15039         Work around a MacOS X 10.5 bug in frexpl().
15040         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
15041         * doc/functions/frexpl.texi: Document the bug.
15042         Reported by Elias Pipping <pipping@gentoo.org>.
15043
15044 2008-01-14  Eric Blake  <ebb9@byu.net>
15045
15046         Touch up previous patch.
15047         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
15048         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
15049
15050         Convert strcasestr module to use Two-Way algorithm.
15051         * modules/strcasestr-simple: New module, based on the old
15052         strcasestr, but with Two-Way rather than KMP.
15053         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
15054         * lib/string.in.h (rpl_strcasestr): Declare.
15055         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
15056         performance.
15057         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
15058         * modules/string (Makefile.am): Support strcasestr.
15059         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
15060         * modules/strcasestr-tests (Depends-on): Check for alarm.
15061         * tests/test-strcasestr.c: Augment test.
15062         * lib/str-two-way.h: Clean up stray macro.
15063         * NEWS: Document new module.
15064         * MODULES.html.sh (string handling): Likewise.
15065         * doc/functions/strcasestr.texi: New file.
15066         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
15067         here, since it is not a POSIX function.
15068
15069 2008-01-14  Colin Watson  <cjwatson@debian.org>
15070             Bruno Haible  <bruno@clisp.org>
15071
15072         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
15073         works fine; if not, set REPLACE_STRSIGNAL.
15074         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
15075         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
15076         REPLACE_STRSIGNAL.
15077         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
15078         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
15079         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
15080
15081 2008-01-14  Bruno Haible  <bruno@clisp.org>
15082
15083         * modules/strsignal (Include): Change to <string.h>.
15084
15085 2008-01-14  Colin Watson  <cjwatson@debian.org>
15086
15087         * modules/argp (Notice): Add a notice recommending to change
15088         XGETTEXT_OPTIONS.
15089         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
15090
15091 2008-01-13  Colin Watson  <cjwatson@debian.org>
15092
15093         * modules/strsignal-tests: New file.
15094         * tests/test-strsignal.c: New file.
15095
15096         * lib/strsignal.c: New file, from glibc with modifications.
15097         * lib/siglist.h: New file, from glibc with modifications.
15098         * lib/string.in.h (strsignal): New declaration.
15099         * m4/strsignal.m4: New file.
15100         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
15101         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
15102         * modules/strsignal: New file.
15103         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
15104         HAVE_DECL_STRSIGNAL.
15105
15106 2008-01-13  Bruno Haible  <bruno@clisp.org>
15107
15108         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
15109         locale encoding is not ASCII. Needed for OpenBSD 4.0.
15110         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
15111         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
15112
15113 2008-01-13  Bruno Haible  <bruno@clisp.org>
15114
15115         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
15116         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
15117         * lib/argp.h (__attribute__): Likewise.
15118         * lib/c-stack.c (__attribute__): Likewise.
15119         * lib/error.h (__attribute__): Likewise.
15120         * lib/fts.c (__attribute__): Likewise.
15121         * lib/openat.h (__attribute__): Likewise.
15122         * lib/stdio.in.h (__attribute__): Likewise.
15123         * lib/string.in.h (__attribute__): Likewise.
15124         * lib/utimens.c (__attribute__): Likewise.
15125         * lib/vasnprintf.h (__attribute__): Likewise.
15126         * lib/xalloc.h (__attribute__): Likewise.
15127         * lib/xprintf.h (__attribute__): Likewise.
15128         * lib/xstrtol.h (__attribute__): Likewise.
15129         * lib/xvasprintf.h (__attribute__): Likewise.
15130
15131 2008-01-12  Bruno Haible  <bruno@clisp.org>
15132
15133         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
15134         * doc/glibc-headers/a.out.texi: New file.
15135         * doc/glibc-headers/aliases.texi: New file.
15136         * doc/glibc-headers/alloca.texi: New file.
15137         * doc/glibc-headers/ar.texi: New file.
15138         * doc/glibc-headers/argp.texi: New file.
15139         * doc/glibc-headers/argz.texi: New file.
15140         * doc/glibc-headers/byteswap.texi: New file.
15141         * doc/glibc-headers/crypt.texi: New file.
15142         * doc/glibc-headers/endian.texi: New file.
15143         * doc/glibc-headers/envz.texi: New file.
15144         * doc/glibc-headers/err.texi: New file.
15145         * doc/glibc-headers/error.texi: New file.
15146         * doc/glibc-headers/execinfo.texi: New file.
15147         * doc/glibc-headers/fpu_control.texi: New file.
15148         * doc/glibc-headers/fstab.texi: New file.
15149         * doc/glibc-headers/fts.texi: New file.
15150         * doc/glibc-headers/getopt.texi: New file.
15151         * doc/glibc-headers/ieee754.texi: New file.
15152         * doc/glibc-headers/ifaddrs.texi: New file.
15153         * doc/glibc-headers/libintl.texi: New file.
15154         * doc/glibc-headers/mcheck.texi: New file.
15155         * doc/glibc-headers/mntent.texi: New file.
15156         * doc/glibc-headers/obstack.texi: New file.
15157         * doc/glibc-headers/paths.texi: New file.
15158         * doc/glibc-headers/printf.texi: New file.
15159         * doc/glibc-headers/pty.texi: New file.
15160         * doc/glibc-headers/resolv.texi: New file.
15161         * doc/glibc-headers/shadow.texi: New file.
15162         * doc/glibc-headers/sysexits.texi: New file.
15163         * doc/glibc-headers/ttyent.texi: New file.
15164
15165 2008-01-12  Jim Meyering  <meyering@redhat.com>
15166
15167         announce-gen: emit Gnulib's git-based version string.
15168         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
15169         New option --gnulib-version=V, where V is expected to be
15170         the output of running git describe in the gnulib directory.
15171         (get_tool_versions): Request feedback on xdelta.  I suspect it's
15172         not useful, and plan to stop publishing an xdelta file with each
15173         coreutils release.
15174
15175         * build-aux/announce-gen: Also check for lzma-compressed files.
15176
15177 2008-01-11  Bruno Haible  <bruno@clisp.org>
15178
15179         * tests/test-memmem.c (main): Increase maximum allowed time.
15180         * tests/test-strstr.c (main): Likewise.
15181
15182 2008-01-11  Bruno Haible  <bruno@clisp.org>
15183
15184         * doc/functions/memmem.texi: Add more precisions about platforms.
15185         * doc/functions/strstr.texi: Likewise.
15186
15187 2008-01-10  Eric Blake  <ebb9@byu.net>
15188
15189         * m4/strstr.m4: Delete cruft from copy-n-paste.
15190         Reported by Bruno Haible.
15191
15192 2008-01-10  Bruno Haible  <bruno@clisp.org>
15193
15194         Make c-strstr rely on strstr.
15195         * lib/c-strstr.c: Don't include str-kmp.h.
15196         (c_strstr): Define in terms of strstr.
15197         * modules/c-strstr (Files): Remove lib/str-kmp.h.
15198         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
15199
15200 2008-01-10  Bruno Haible  <bruno@clisp.org>
15201
15202         * doc/gnulib.texi (String Functions in C Locale): New section.
15203         * doc/c-ctype.texi: New file.
15204         * doc/c-strcase.texi: New file.
15205         * doc/c-strcaseeq.texi: New file.
15206         * doc/c-strcasestr.texi: New file.
15207         * doc/c-strstr.texi: New file.
15208         * doc/c-strtod.texi: New file.
15209         * doc/c-strtold.texi: New file.
15210
15211 2008-01-10  Eric Blake  <ebb9@byu.net>
15212
15213         * lib/relocatable.h: Fix a comment.
15214
15215 2008-01-10  Eric Blake  <ebb9@byu.net>
15216
15217         Share two-way algorithm.
15218         * lib/str-two-way.h: New file, merged from...
15219         * lib/memmem.c: ...here...
15220         * lib/strstr.c: ...and here.
15221         * modules/memmem (Files): Use it.
15222         * modules/strstr (Files): Likewise.
15223
15224         Avoid quadratic strstr implementations.
15225         * lib/strstr.c: New file.
15226         * m4/strstr.m4: Likewise.
15227         * modules/strstr: Likewise.
15228         * modules/strstr-tests: Likewise.
15229         * tests/test-strstr.c: Likewise.
15230         * lib/string.in.h (rpl_strstr): Declare.
15231         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
15232         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
15233         * modules/string (Makefile.am): Likewise.
15234         * MODULES.html.sh (string handling): Mention new module.
15235         * doc/functions/strstr.texi (strstr): Document the bug.
15236
15237 2008-01-10  Bruno Haible  <bruno@clisp.org>
15238
15239         * lib/relocatable.h (relocate): State whether result is freshly
15240         allocated or not.
15241         * lib/relocatable.c (relocate): Return a freshly allocated string
15242         instead of a pointer to a privately held string.
15243         Reported by Sylvain Beucler <beuc@gnu.org>.
15244
15245 2008-01-10  Colin Watson  <cjwatson@debian.org>
15246
15247         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
15248         s/S_ISNLK/S_ISLNK/.
15249
15250 2008-01-09  Bruno Haible  <bruno@clisp.org>
15251
15252         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
15253         and other files.
15254         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
15255         if it's only a guess.
15256         * modules/memmem: Simplify by depending on memmem-simple.
15257
15258 2008-01-09  Bruno Haible  <bruno@clisp.org>
15259
15260         Work around OpenBSD 4.0 tdelete() bug.
15261         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
15262         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
15263         macros and don't redefine the enum values.
15264         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
15265         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
15266         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
15267
15268 2008-01-09  Bruno Haible  <bruno@clisp.org>
15269
15270         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
15271         (main): Don't perform the tests if setlocale did not install a UTF-8
15272         locale. Needed on OpenBSD 4.0.
15273         * modules/wcwidth-tests (Depends-on): Add localcharset.
15274
15275 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
15276
15277         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
15278         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
15279         * NEWS: announce this.
15280         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
15281
15282 2008-01-09  Simon Josefsson  <simon@josefsson.org>
15283         and Eric Blake  <ebb9@byu.net>
15284
15285         Add memmem-simple module.
15286         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
15287         (gl_FUNC_MEMMEM): Separate performance from presence checks.
15288         * modules/memmem-simple: New file.
15289         * modules/memmem (Description): Tweak.
15290         * MODULES.html.sh (string handling): Mention new module.
15291         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
15292         addressed by memmem-simple.
15293         * NEWS: Document the difference.
15294
15295 2008-01-09  Eric Blake  <ebb9@byu.net>
15296
15297         Give gcc some memmem optimization hints.
15298         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
15299         (strcasestr): Declare as pure.
15300         * modules/memmem (Maintainer): Claim my implementation.
15301
15302 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15303
15304         Support AIX 6.1 and higher.
15305         * build-aux/config.libpath: Likewise.
15306         * build-aux/config.rpath: Likewise.
15307
15308 2008-01-08  Jim Meyering  <meyering@redhat.com>
15309             Bruno Haible  <bruno@clisp.org>
15310
15311         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
15312         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
15313         Reported by Peter Fales in
15314         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
15315
15316 2008-01-08  Bruno Haible  <bruno@clisp.org>
15317
15318         * modules/unictype/category-of (Depends-on): Add
15319         unictype/category-none.
15320         * modules/unictype/category-and-tests (Depends-on): Add
15321         unictype/category-{L,N,Lu,Nd}.
15322         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
15323         * modules/unictype/category-or-tests (Depends-on): Add
15324         unictype/category-{L,N}.
15325         * modules/unictype/category-name-tests (Depends-on): Add
15326         unictype/category-{Z,Nl}.
15327         Reported by Simon Josefsson.
15328
15329 2008-01-08  Bruno Haible  <bruno@clisp.org>
15330
15331         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
15332         convention better.
15333         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
15334         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
15335         Reported by Peter Miller <millerp@canb.auug.org.au>.
15336
15337 2008-01-08  Eric Blake  <ebb9@byu.net>
15338
15339         Rewrite memmem to guarantee linear complexity without malloc.
15340         * lib/memmem.c (memmem): Use Two-Way rather than
15341         Knuth-Morris-Pratt, to allow O(1) space usage.
15342         (critical_factorization, two_way_short_needle)
15343         (two_way_long_needle): New functions.
15344         (knuth_morris_pratt): Delete.
15345         * modules/memmem (Depends-on): No longer need malloca or stdbool.
15346         Add stdint.
15347         * tests/test-memmem.c (main): Add tests for periodic needle and
15348         sublinear performance.
15349         * doc/functions/memmem.texi (memmem): Document other deficiencies
15350         in cygwin and older glibc.
15351
15352 2008-01-08  Bruno Haible  <bruno@clisp.org>
15353
15354         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
15355         augmentation.
15356
15357 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
15358
15359         Add a configure time option: --disable-acl.
15360         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
15361         AC_ARG_ENABLE(acl).
15362
15363 2008-01-06  Simon Josefsson  <simon@josefsson.org>
15364
15365         * tests/test-localename.c: Don't include obsolete "setenv.h".
15366
15367         * modules/localename-tests (Depends-on): Need unsetenv.
15368
15369 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15370
15371         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
15372
15373 2008-01-06  Colin Watson  <cjwatson@debian.org>
15374
15375         * users.txt: Add man-db.
15376
15377 2008-01-07  Bruno Haible  <bruno@clisp.org>
15378
15379         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
15380         previous section name.
15381
15382 2008-01-07  Bruno Haible  <bruno@clisp.org>
15383
15384         * lib/progname.c (set_program_name): Don't strip off a leading
15385         "lt-" prefix outside a .libs directory.
15386         Suggested by Paul Eggert.
15387
15388 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
15389             Bruno Haible  <bruno@clisp.org>
15390
15391         Improve memory cleanup in 'relocatable' module.
15392         * lib/relocatable.h (compute_curr_prefix): Change return type to
15393         'char *'.
15394         * lib/relocatable.c (compute_curr_prefix): Change return type to
15395         'char *'. Free curr_installdir after use.
15396         (relocate): Free curr_prefix_better after use.
15397         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
15398
15399 2008-01-01  Bruno Haible  <bruno@clisp.org>
15400
15401         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
15402         failure on older glibc systems.
15403         Reported by Peter Fales <psfales@alcatel-lucent.com>.
15404
15405 2008-01-05  Eric Blake  <ebb9@byu.net>
15406
15407         Avoid quadratic system memmem.
15408         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
15409         Reported by Ralf Wildenhues.
15410
15411         Fix memmem test for mingw.
15412         * modules/memmem-tests (configure.ac): Check for alarm.
15413         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
15414         it.
15415         * doc/functions/memmem.texi: New file.
15416         * doc/gnulib.texi (Function Substitutes): Add memmem.
15417         Reported by Bruno Haible.
15418
15419 2008-01-04  Bruno Haible  <bruno@clisp.org>
15420
15421         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
15422         Require gl_HEADER_STRINGS_H_DEFAULTS, not
15423         gl_HEADER_STRING_H_DEFAULTS.
15424
15425 2008-01-04  Eric Blake  <ebb9@byu.net>
15426
15427         Shorten duration of memmem test.
15428         * tests/test-memmem.c (main): Use alarm to declare failure if test
15429         is taking too long.
15430         Reported by Ralf Wildenhues.
15431
15432 2007-12-21  Simon Josefsson  <simon@josefsson.org>
15433
15434         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
15435         string, needed by strerror.
15436
15437 2008-01-03  Colin Watson  <cjwatson@debian.org>
15438             Bruno Haible  <bruno@clisp.org>
15439
15440         * doc/gnulib-tool.texi (Localization): New section.
15441
15442 2008-01-02  Bruno Haible  <bruno@clisp.org>
15443
15444         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
15445         variables to 'unsigned char *' type.
15446         Reported by Paul Eggert.
15447
15448 2008-01-02  Jim Meyering  <jim@meyering.net>
15449
15450         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
15451
15452 2007-12-31  Jim Meyering  <jim@meyering.net>
15453
15454         Avoid use of private FTS type name.
15455         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
15456
15457 2007-12-30  Karl Berry  <karl@gnu.org>
15458
15459         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
15460         work around defect in Texinfo and/or the standalone Info browser.
15461
15462 2007-12-30  Bruno Haible  <bruno@clisp.org>
15463
15464         Unify 5 copies of the KMP code.
15465         * lib/str-kmp.h: New file.
15466         * lib/c-strcasestr.c: Include str-kmp.h.
15467         (knuth_morris_pratt): Remove function.
15468         (c_strcasestr): Update.
15469         * lib/c-strstr.c: Include str-kmp.h.
15470         (knuth_morris_pratt): Remove function.
15471         (c_strcasestr): Update.
15472         * lib/mbscasestr.c: Include str-kmp.h.
15473         (knuth_morris_pratt_unibyte): Remove function.
15474         * lib/mbsstr.c: Include str-kmp.h.
15475         (knuth_morris_pratt_unibyte): Remove function.
15476         * lib/strcasestr.c: Include str-kmp.h.
15477         (knuth_morris_pratt): Remove function.
15478         (strcasestr): Update.
15479         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
15480         * modules/c-strstr (Files): Likewise.
15481         * modules/mbscasestr (Files): Likewise.
15482         * modules/mbsstr (Files): Likewise.
15483         * modules/strcasestr (Files): Likewise.
15484         Suggested by Paul Eggert.
15485
15486 2007-12-30  Bruno Haible  <bruno@clisp.org>
15487
15488         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
15489         defined.
15490
15491 2007-12-30  Bruno Haible  <bruno@clisp.org>
15492
15493         * lib/xmalloca.h: Include xalloc.h.
15494         (xnmalloca): New macro.
15495
15496 2007-12-30  Bruno Haible  <bruno@clisp.org>
15497
15498         * lib/malloca.h (nmalloca): New macro.
15499         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
15500         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
15501         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
15502         knuth_morris_pratt_multibyte): Likewise.
15503         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
15504         knuth_morris_pratt_multibyte): Likewise.
15505         * lib/memmem.c (knuth_morris_pratt): Likewise.
15506         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
15507
15508 2007-12-25  Bruno Haible  <bruno@clisp.org>
15509
15510         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
15511         * lib/glob.c: Don't include openat.h.
15512         (link_exists2_p): Add back the code that deals with the
15513         !GLOB_ALTDIRFUNC case.
15514         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
15515         let it do the filename concatenation.
15516         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
15517         * modules/glob (Depends-on): Remove openat.
15518
15519 2007-12-31  Bruno Haible  <bruno@clisp.org>
15520
15521         * modules/dirfd (License): Change to LGPLv2+.
15522         Approved by Jim Meyering.
15523
15524 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
15525
15526         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
15527         when multiplying M by sizeof (size_t).
15528
15529 2007-12-10  Martin Lambers  <marlam@marlam.de>
15530
15531         Override getpagesize on mingw.
15532         * lib/getpagesize.c: New file.
15533         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
15534         * modules/getpagesize (Files): Add lib/getpagesize.c.
15535         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
15536         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
15537         REPLACE_GETPAGESIZE.
15538         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
15539
15540 2007-12-25  Bruno Haible  <bruno@clisp.org>
15541
15542         * modules/localcharset (Notice): New field.
15543         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
15544         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
15545
15546 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
15547             Bruno Haible  <bruno@clisp.org>
15548
15549         Avoid using the syntax symbol() in formatted documentation.
15550         * MODULES.html.sh (func_module): When replacing symbol() with a
15551         hyperlink, remove the parentheses. Show an error if some remain.
15552         Recognize and render the '...' syntax.
15553         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
15554         Rework. Add paragraph about GCC's inlining.
15555         * doc/alloca.texi: Likewise.
15556         * doc/error.texi: Remove parentheses from symbol reference.
15557         * doc/gnulib-intro.texi: Likewise.
15558         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
15559         * modules/fnmatch (Description): Reword to say "the ... function".
15560         * modules/full-read (Description): Likewise.
15561         * modules/full-write (Description): Likewise.
15562         * modules/safe-read (Description): Likewise.
15563         * modules/safe-write (Description): Likewise.
15564         * modules/strchrnul (Description): Likewise.
15565         * modules/trim (Description): Likewise.
15566         * modules/error (Description): Remove parentheses from symbol
15567         references.
15568         * modules/verror (Description): Likewise.
15569         Reported by Karl Berry.
15570
15571 2007-12-25  Bruno Haible  <bruno@clisp.org>
15572
15573         Fixup after 2007-10-16 commit.
15574         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
15575
15576 2007-12-24  Bruno Haible  <bruno@clisp.org>
15577
15578         Make --enable-relocatable work with DESTDIR.
15579         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
15580         to compute installdir from destprog.
15581         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
15582         also set the RELOC_DESTDIR variable.
15583         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
15584
15585 2007-12-24  Bruno Haible  <bruno@clisp.org>
15586
15587         Fix link error due to xalloc_die().
15588         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
15589         of xreadlink.
15590         * lib/relocwrapper.c: Update comments.
15591         * build-aux/install-reloc: Remove xreadlink.c from file list.
15592         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
15593         xreadlink.c.
15594         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
15595
15596 2007-12-24  Bruno Haible  <bruno@clisp.org>
15597
15598         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
15599         * lib/setenv.h: Remove file.
15600         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
15601         lib/setenv.h.
15602         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
15603         (Depends-on): Add stdlib.
15604         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
15605         gl_FUNC_UNSETENV.
15606         (Include): Replace setenv.h with <stdlib.h>.
15607         * modules/unsetenv: New file.
15608         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
15609         * lib/unsetenv.c: Include <stdlib.h> first.
15610         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
15611         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
15612         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
15613         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
15614         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
15615         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
15616         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
15617         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
15618         * doc/functions/unsetenv.texi: Update.
15619         * modules/xsetenv (Depends-on): Add unsetenv.
15620         * modules/getdate (Depends-on): Likewise.
15621         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
15622         * lib/xsetenv.c: Don't include setenv.h.
15623         * lib/getdate.y: Likewise.
15624         * lib/relocwrapper.c: Likewise.
15625         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
15626         (Depends-on): Add stdlib.
15627         * NEWS: Mention the changes.
15628         Reported by Ð›ÐµÐ²Ð°ÑˆÐµÐ² Ð˜Ð²Ð°Ð½ <octagram@bluebottle.com>.
15629
15630 2007-12-23  Bruno Haible  <bruno@clisp.org>
15631
15632         * lib/memmem.c (memmem): Use lowercase variable names. Tab
15633         indentation.
15634
15635 2007-12-23  Bruno Haible  <bruno@clisp.org>
15636
15637         * lib/c-strcasestr.c: Add more comments.
15638         * lib/c-strstr.c: Likewise.
15639         * lib/mbscasestr.c: Likewise.
15640         * lib/mbsstr.c: Likewise.
15641         * lib/strcasestr.c: Likewise.
15642         * lib/memmem.c: Likewise.
15643
15644 2007-12-23  Bruno Haible  <bruno@clisp.org>
15645
15646         * tests/test-memmem.c: Include <string.h> first.
15647
15648 2007-12-22  Bruno Haible  <bruno@clisp.org>
15649
15650         * gnulib-tool (func_create_testdir): Change $auxdir while generating
15651         the contents of $testsbase.
15652         Reported by Ralf Wildenhues.
15653
15654 2007-12-22  Bruno Haible  <bruno@clisp.org>
15655
15656         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
15657         two variables local_ldadd_before, local_ldadd_last.
15658
15659 2007-12-20  Eric Blake  <ebb9@byu.net>
15660
15661         Work around circular library issue when cross-compiling.
15662         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
15663         that progname.o does not need to pull in rpl_memcmp.
15664
15665 2007-12-19  Eric Blake  <ebb9@byu.net>
15666
15667         Fix memmem to avoid O(n^2) worst-case complexity.
15668         * lib/memmem.c (knuth_morris_pratt): New function.
15669         (memmem): Use it if first few naive iterations fail.
15670         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
15671         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
15672         * modules/memchr (License): Likewise.
15673         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
15674         malloca.
15675         * tests/test-memmem.c: Rewrite, borrowing ideas from
15676         test-mbsstr1.c; the old version wouldn't even compile!
15677         * modules/memmem-tests: New file.
15678         * lib/string.in.h (rpl_memmem): Add declaration.
15679         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
15680         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
15681         REPLACE_MEMMEM.
15682
15683 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
15684
15685         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
15686         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
15687         before any system include files, and undef after them all.  This
15688         should fix a problem on VMS reported by John E. Malmberg in
15689         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
15690
15691 2007-12-17  Eric Blake  <ebb9@byu.net>
15692
15693         Revert addition of verify, for BSD/OS.
15694         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
15695         can't handle large files, for the sake of obsolete platforms.
15696         * modules/fseeko (Depends-on): Remove verify.
15697         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
15698         * doc/functions/ftello.texi (ftello): Likewise.
15699         * doc/functions/fgetpos.texi (fgetpos): Likewise.
15700         Reported by Larry Jones.
15701
15702 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
15703
15704         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
15705         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
15706
15707 2007-12-17  Jim Meyering  <meyering@redhat.com>
15708
15709         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
15710         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
15711         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
15712         * modules/getcwd (Depends-on): Add openat.
15713         Reported by Petr Salinger.
15714
15715 2007-12-17  Bruno Haible  <bruno@clisp.org>
15716
15717         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
15718         avoid a segmentation fault of the configure test on x86_64 systems.
15719
15720 2007-12-15  Jim Meyering  <meyering@redhat.com>
15721
15722         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
15723
15724 2007-12-13  Eric Blake  <ebb9@byu.net>
15725
15726         Another fseek test.
15727         * tests/test-fseek.c (main): Also test ungetc handling.
15728         * tests/test-fseeko.c (main): Likewise.
15729         * modules/fseeko (Depends-on): Add verify.
15730         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
15731         large.
15732         Reported by Larry Jones.
15733
15734         Fix fseeko on mingw.
15735         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
15736         seek.
15737
15738         Beef up fseek tests.
15739         * tests/test-fseek.c (main): Also test eof handling.
15740         * tests/test-fseeko.c (main): Likewise.
15741         Reported by Larry Jones.
15742
15743 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
15744
15745         Fix fseeko on BSD-based platforms.
15746         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
15747         successful seek.
15748
15749 2007-12-12  Eric Blake  <ebb9@byu.net>
15750
15751         Allow circular dependency of separate libtests.a
15752         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
15753         when use_libtests.
15754
15755 2007-12-11  Eric Blake  <ebb9@byu.net>
15756
15757         Fix bug with -0.0L in previous patch.
15758         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
15759         * tests/test-isnan.c (main): Also test on zeroes.
15760         * tests/test-isnanf.c (main): Likewise.
15761         * tests/test-isnanl.h (main): Likewise.
15762
15763         Detect pseudo-denormals on x86 even when cross-compiling.
15764         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
15765         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
15766         invalid bit patterns that happen to satisfy ==.
15767
15768         Avoid link failures with separate libtests.a.
15769         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
15770         last, to satisfy circular dependencies.
15771
15772 2007-12-11  Eric Blake  <ebb9@byu.net>
15773         and Bruno Haible  <bruno@clisp.org>
15774
15775         Fix OpenBSD 4.0 <float.h> handling of long double.
15776         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
15777         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
15778         * doc/headers/float.texi (float.h): Document OpenBSD bug.
15779
15780 2007-12-11  Jim Meyering  <meyering@redhat.com>
15781
15782         * users.txt: Add libvirt.
15783
15784         Support versions of autoconf prior to 2.59c.
15785         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
15786         if it is not already defined.
15787
15788 2007-12-09  Bruno Haible  <bruno@clisp.org>
15789
15790         Let 'gnulib-tool --import' collect sources needed for the tests in
15791         tests/ rather than in lib/.
15792         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
15793         argument. If true, add rules to generate libtests.a, and put libtests.a
15794         into $(LDADD). Consider source files in subdirectories and set
15795         uses_subdirs.
15796         (func_emit_initmacro_start, func_emit_initmacro_end,
15797         func_emit_initmacro_done): Pass all arguments explicitly.
15798         (func_import): Determine two module lists main_modules,
15799         testsrelated_modules. Determine use_libtests. Determine two variables
15800         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
15801         instead of just sed_transform_lib_file. Determine two variables
15802         main_files and testsrelated_files. Compute 'files' as the union of
15803         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
15804         func_add_or_update. In the generated gnulib-comp.m4, collect the
15805         object files for tests/ in different variables than those for lib/.
15806         Substitute LIBTESTS_LIBDEPS.
15807         (func_create_testdir): Combine the uses_subdirs results from
15808         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
15809
15810 2007-12-09  Bruno Haible  <bruno@clisp.org>
15811
15812         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
15813         the build-aux directory.
15814
15815 2007-12-09  Bruno Haible  <bruno@clisp.org>
15816
15817         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
15818         introduced on 2006-09-09.
15819
15820 2007-12-07  Jim Meyering  <meyering@redhat.com>
15821
15822         Let these macros work also with autoconf-2.59.
15823         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
15824         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
15825         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
15826
15827 2007-12-06  Jim Meyering  <meyering@redhat.com>
15828
15829         Avoid a configure-time syntax error in gl_FUNC_ACL.
15830         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
15831         function in each branch, before testing the cache variable.
15832
15833 2007-12-04  Eric Blake  <ebb9@byu.net>
15834
15835         Make scripts executable.
15836         * build-aux/config.guess: Add execute permissions.
15837         * build-aux/config.sub: Likewise.
15838         * build-aux/gendocs.sh: Likewise.
15839
15840         Fix frexp on mingw.
15841         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
15842         cross-compiling.
15843         * doc/functions/frexp.texi (frexp): Document the bug.
15844
15845         Make cygwin fseeko check more reliable.
15846         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
15847         version numbers, rather than unrelated feature check.
15848         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
15849         * doc/functions/ftello.texi (ftello): Likewise.
15850         Reported by Bruno Haible.
15851
15852         * m4/strerror.m4: Bump version number.
15853
15854 2007-12-03  Bruno Haible  <bruno@clisp.org>
15855
15856         * doc/functions/mprotect.texi: Mention the mingw problem.
15857
15858 2007-12-03  Eric Blake  <ebb9@byu.net>
15859
15860         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
15861         REPLACE_STRERROR is initialized before this macro.
15862
15863 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
15864
15865         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
15866         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
15867         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
15868         put -lsec in even for programs other than 'ls'.  This fixes a problem
15869         for gettext reported by Bruno Haible in
15870         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
15871         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
15872         Add support for Solaris 10.  This isn't efficient, but should get the
15873         job done for now.
15874
15875 2007-12-03  James Youngman  <jay@gnu.org>
15876
15877         * doc/regexprops-generic.texi: change "an close-group" to "a
15878         close-group" and "illegal" to "not allowed".
15879
15880 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15881
15882         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
15883         pr_byname.h. Needed for the rare case when the maintainer has done
15884         "make maintainer-clean" in the source directory and then attempts a
15885         build outside the source directory.
15886         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
15887         scripts_byname.h.
15888
15889 2007-12-02  Martin Lambers <marlam@marlam.de>
15890             Bruno Haible  <bruno@clisp.org>
15891
15892         * lib/getpagesize.h: Remove file.
15893         * lib/unistd.in.h: Include declaration of getpagesize here.
15894         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
15895         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
15896         HAVE_SYS_PARAM_H.
15897         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
15898         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
15899         * modules/getpagesize (Files): Remove lib/getpagesize.h.
15900         (Depends-on): Add unistd.
15901         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
15902         (Include): Use <unistd.h> instead of getpagesize.h.
15903         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
15904         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
15905         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
15906         gl_GETPAGESIZE invocation, already handled by module dependency.
15907         * lib/pagealign_alloc.c: Don't include getpagesize.h.
15908
15909 2007-12-02  Bruno Haible  <bruno@clisp.org>
15910
15911         * modules/strings-tests: New file.
15912         * tests/test-strings.c: New file.
15913
15914         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
15915         * lib/strings.in.h: New file.
15916         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
15917         * m4/strings_h.m4: New file.
15918         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
15919         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
15920         * modules/strings: New file.
15921         * modules/string (Makefile.am): Update.
15922         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
15923         Reported by Karl Berry.
15924
15925 2007-12-01  Eric Blake  <ebb9@byu.net>
15926
15927         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
15928         accomodate fix in cygwin 1.5.25.
15929
15930 2007-12-01  Jim Meyering  <meyering@redhat.com>
15931
15932         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
15933         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
15934         that would inhibit utf8-optimization of a regexp containing line-
15935         or buffer-anchors, e.g., `^', `$'.
15936
15937 2007-11-30  Bruno Haible  <bruno@clisp.org>
15938
15939         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
15940         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
15941         glthread_recursive_lock_init.
15942         * lib/lock.c (glthread_recursive_lock_init)
15943         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
15944         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
15945
15946 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
15947
15948         New function qset_acl, like set_acl but with syscall semantics.
15949         * lib/acl.h (qset_acl): New decl.
15950         * lib/acl.c (qset_acl): New function.
15951         (set_acl): Use new function.  Use more-consistent diagnostics.
15952
15953 2007-11-28  Jim Meyering  <meyering@redhat.com>
15954
15955         * modules/physmem (License): Change from GPL to LGPLv2+.
15956
15957 2007-11-26  Bruno Haible  <bruno@clisp.org>
15958
15959         * lib/vasnprintf.c (decode_long_double): Don't abort if the
15960         'long double' type has excess precision.
15961         Reported by Jim Meyering in
15962         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
15963
15964 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15965
15966         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
15967         Sync from <http://gnu.org/licenses>.
15968         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
15969         with license text from same location.
15970         * doc/maintain.texi, doc/standards.texi:  Sync from
15971         <http://savannah.gnu.org/projects/gnustandards>.
15972
15973 2007-11-22  OndÅ™ej Vašík  <ovasik@redhat.com>
15974         and Jim Meyering  <meyering@redhat.com>
15975
15976         Adjust getdate' grammar to accept a slightly more regular language.
15977         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
15978         Before, the former was rejected.
15979         * lib/getdate.y (digits_to_date_time): New function, factored
15980         out of ...
15981         (number): ...here.  Just call digits_to_date_time.
15982         (hybrid): New non-terminal to handle an <unsigned number,
15983         signed relative offset> sequence consistently.
15984
15985 2007-11-18  Jim Meyering  <meyering@redhat.com>
15986
15987         Pull my changes from coreutils:
15988         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
15989         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
15990         use of $gnulib_tool_option_extras, so that it's separated from the
15991         preceding argument.
15992
15993         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
15994         * build-aux/bootstrap (cp_mark_as_generated): Create any required
15995         parent destination directories before copying a file into place.
15996
15997 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
15998
15999         bootstrap: work also with 4-argument variant of AC_INIT
16000         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
16001
16002 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
16003
16004         Port test-getaddrinfo to Solaris.
16005         Problem reported by Bruno Haible in
16006         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
16007         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
16008         explanation of setting 'hints'.
16009         Don't reject an implementation merely because it returns EAI_SERVICE.
16010         (EAI_SERVICE): Define to 0 if not defined.
16011
16012 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
16013
16014         The license of gnu-make and posix-shell is now "GPLed build tool".
16015         * modules/gnu-make (License): Likewise.
16016         * modules/posix-shell (License): Likewise.
16017
16018         New module posix-shell, for determining a POSIX shell
16019         or perhaps something that is close enough to a POSIX shell.
16020         * m4/posix-shell.m4: New file.
16021         * modules/posix-shell: New file.
16022
16023         * MODULES.html.sh: Mention new module.
16024
16025         New module gnu-make, for determining whether we're using GNU Make.
16026         * m4/gnu-make.m4: New file.
16027         * modules/gnu-make: New file.
16028         * MODULES.html.sh: Mention new module.
16029
16030 2007-11-14  Jim Meyering  <meyering@redhat.com>
16031
16032         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
16033         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
16034         use this macro to create a function _definition_.
16035         Remove useless "#undef ARGMATCH_DIE".
16036
16037 2007-11-14  Bruno Haible  <bruno@clisp.org>
16038
16039         * lib/config.charset: Update for OpenBSD 4.1.
16040         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
16041
16042 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
16043
16044         Document 64-bit #if problems in stdint.texi.
16045         * doc/headers/stdint.texi (stdint.h): Mention problems with
16046         64-bit-#if, and how to work around them.
16047
16048         Don't insist on 'long long int' support in the preprocessor.  It
16049         breaks too many things.  For example, PRIdMAX still uses a 'long
16050         long int' format with the latest Sun compiler, even though
16051         HAVE_LONG_LONG_INT isn't defined due to that compiler's
16052         preprocessor problem.  This causes the latest coreutils to dump
16053         core on Solaris 10 sparc with the Sun C compiler.
16054         Instead, fix the 2007-10-16 problem in a different way, by evaluating
16055         the troublesome expressions at configure-time, not at #if-time.
16056         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
16057         preprocessor.
16058         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
16059         compile-time C checks, done at 'configure'-time.
16060         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
16061         * modules/inttypes (Makefile): Substitute the new symbols that
16062         gl_INTTYPES_H now generates.
16063         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
16064
16065 2007-11-12  Bruno Haible  <bruno@clisp.org>
16066
16067         Tests for Unicode character classification functions.
16068
16069         * modules/unictype/bidicategory-byname-tests: New file.
16070         * modules/unictype/bidicategory-name-tests: New file.
16071         * modules/unictype/bidicategory-of-tests: New file.
16072         * modules/unictype/bidicategory-test-tests: New file.
16073         * modules/unictype/block-list-tests: New file.
16074         * modules/unictype/block-of-tests: New file.
16075         * modules/unictype/block-test-tests: New file.
16076         * modules/unictype/category-C-tests: New file.
16077         * modules/unictype/category-Cc-tests: New file.
16078         * modules/unictype/category-Cf-tests: New file.
16079         * modules/unictype/category-Cn-tests: New file.
16080         * modules/unictype/category-Co-tests: New file.
16081         * modules/unictype/category-Cs-tests: New file.
16082         * modules/unictype/category-L-tests: New file.
16083         * modules/unictype/category-Ll-tests: New file.
16084         * modules/unictype/category-Lm-tests: New file.
16085         * modules/unictype/category-Lo-tests: New file.
16086         * modules/unictype/category-Lt-tests: New file.
16087         * modules/unictype/category-Lu-tests: New file.
16088         * modules/unictype/category-M-tests: New file.
16089         * modules/unictype/category-Mc-tests: New file.
16090         * modules/unictype/category-Me-tests: New file.
16091         * modules/unictype/category-Mn-tests: New file.
16092         * modules/unictype/category-N-tests: New file.
16093         * modules/unictype/category-Nd-tests: New file.
16094         * modules/unictype/category-Nl-tests: New file.
16095         * modules/unictype/category-No-tests: New file.
16096         * modules/unictype/category-P-tests: New file.
16097         * modules/unictype/category-Pc-tests: New file.
16098         * modules/unictype/category-Pd-tests: New file.
16099         * modules/unictype/category-Pe-tests: New file.
16100         * modules/unictype/category-Pf-tests: New file.
16101         * modules/unictype/category-Pi-tests: New file.
16102         * modules/unictype/category-Po-tests: New file.
16103         * modules/unictype/category-Ps-tests: New file.
16104         * modules/unictype/category-S-tests: New file.
16105         * modules/unictype/category-Sc-tests: New file.
16106         * modules/unictype/category-Sk-tests: New file.
16107         * modules/unictype/category-Sm-tests: New file.
16108         * modules/unictype/category-So-tests: New file.
16109         * modules/unictype/category-Z-tests: New file.
16110         * modules/unictype/category-Zl-tests: New file.
16111         * modules/unictype/category-Zp-tests: New file.
16112         * modules/unictype/category-Zs-tests: New file.
16113         * modules/unictype/category-and-not-tests: New file.
16114         * modules/unictype/category-and-tests: New file.
16115         * modules/unictype/category-byname-tests: New file.
16116         * modules/unictype/category-name-tests: New file.
16117         * modules/unictype/category-none-tests: New file.
16118         * modules/unictype/category-of-tests: New file.
16119         * modules/unictype/category-or-tests: New file.
16120         * modules/unictype/category-test-withtable-tests: New file.
16121         * modules/unictype/combining-class-tests: New file.
16122         * modules/unictype/ctype-alnum-tests: New file.
16123         * modules/unictype/ctype-alpha-tests: New file.
16124         * modules/unictype/ctype-blank-tests: New file.
16125         * modules/unictype/ctype-cntrl-tests: New file.
16126         * modules/unictype/ctype-digit-tests: New file.
16127         * modules/unictype/ctype-graph-tests: New file.
16128         * modules/unictype/ctype-lower-tests: New file.
16129         * modules/unictype/ctype-print-tests: New file.
16130         * modules/unictype/ctype-punct-tests: New file.
16131         * modules/unictype/ctype-space-tests: New file.
16132         * modules/unictype/ctype-upper-tests: New file.
16133         * modules/unictype/ctype-xdigit-tests: New file.
16134         * modules/unictype/decimal-digit-tests: New file.
16135         * modules/unictype/digit-tests: New file.
16136         * modules/unictype/mirror-tests: New file.
16137         * modules/unictype/numeric-tests: New file.
16138         * modules/unictype/property-alphabetic-tests: New file.
16139         * modules/unictype/property-ascii-hex-digit-tests: New file.
16140         * modules/unictype/property-bidi-arabic-digit-tests: New file.
16141         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
16142         * modules/unictype/property-bidi-block-separator-tests: New file.
16143         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
16144         * modules/unictype/property-bidi-common-separator-tests: New file.
16145         * modules/unictype/property-bidi-control-tests: New file.
16146         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
16147         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
16148         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
16149         * modules/unictype/property-bidi-european-digit-tests: New file.
16150         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
16151         * modules/unictype/property-bidi-left-to-right-tests: New file.
16152         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
16153         * modules/unictype/property-bidi-other-neutral-tests: New file.
16154         * modules/unictype/property-bidi-pdf-tests: New file.
16155         * modules/unictype/property-bidi-segment-separator-tests: New file.
16156         * modules/unictype/property-bidi-whitespace-tests: New file.
16157         * modules/unictype/property-byname-tests: New file.
16158         * modules/unictype/property-combining-tests: New file.
16159         * modules/unictype/property-composite-tests: New file.
16160         * modules/unictype/property-currency-symbol-tests: New file.
16161         * modules/unictype/property-dash-tests: New file.
16162         * modules/unictype/property-decimal-digit-tests: New file.
16163         * modules/unictype/property-default-ignorable-code-point-tests: New file.
16164         * modules/unictype/property-deprecated-tests: New file.
16165         * modules/unictype/property-diacritic-tests: New file.
16166         * modules/unictype/property-extender-tests: New file.
16167         * modules/unictype/property-format-control-tests: New file.
16168         * modules/unictype/property-grapheme-base-tests: New file.
16169         * modules/unictype/property-grapheme-extend-tests: New file.
16170         * modules/unictype/property-grapheme-link-tests: New file.
16171         * modules/unictype/property-hex-digit-tests: New file.
16172         * modules/unictype/property-hyphen-tests: New file.
16173         * modules/unictype/property-id-continue-tests: New file.
16174         * modules/unictype/property-id-start-tests: New file.
16175         * modules/unictype/property-ideographic-tests: New file.
16176         * modules/unictype/property-ids-binary-operator-tests: New file.
16177         * modules/unictype/property-ids-trinary-operator-tests: New file.
16178         * modules/unictype/property-ignorable-control-tests: New file.
16179         * modules/unictype/property-iso-control-tests: New file.
16180         * modules/unictype/property-join-control-tests: New file.
16181         * modules/unictype/property-left-of-pair-tests: New file.
16182         * modules/unictype/property-line-separator-tests: New file.
16183         * modules/unictype/property-logical-order-exception-tests: New file.
16184         * modules/unictype/property-lowercase-tests: New file.
16185         * modules/unictype/property-math-tests: New file.
16186         * modules/unictype/property-non-break-tests: New file.
16187         * modules/unictype/property-not-a-character-tests: New file.
16188         * modules/unictype/property-numeric-tests: New file.
16189         * modules/unictype/property-other-alphabetic-tests: New file.
16190         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
16191         * modules/unictype/property-other-grapheme-extend-tests: New file.
16192         * modules/unictype/property-other-id-continue-tests: New file.
16193         * modules/unictype/property-other-id-start-tests: New file.
16194         * modules/unictype/property-other-lowercase-tests: New file.
16195         * modules/unictype/property-other-math-tests: New file.
16196         * modules/unictype/property-other-uppercase-tests: New file.
16197         * modules/unictype/property-paired-punctuation-tests: New file.
16198         * modules/unictype/property-paragraph-separator-tests: New file.
16199         * modules/unictype/property-pattern-syntax-tests: New file.
16200         * modules/unictype/property-pattern-white-space-tests: New file.
16201         * modules/unictype/property-private-use-tests: New file.
16202         * modules/unictype/property-punctuation-tests: New file.
16203         * modules/unictype/property-quotation-mark-tests: New file.
16204         * modules/unictype/property-radical-tests: New file.
16205         * modules/unictype/property-sentence-terminal-tests: New file.
16206         * modules/unictype/property-soft-dotted-tests: New file.
16207         * modules/unictype/property-space-tests: New file.
16208         * modules/unictype/property-terminal-punctuation-tests: New file.
16209         * modules/unictype/property-test-tests: New file.
16210         * modules/unictype/property-titlecase-tests: New file.
16211         * modules/unictype/property-unassigned-code-value-tests: New file.
16212         * modules/unictype/property-unified-ideograph-tests: New file.
16213         * modules/unictype/property-uppercase-tests: New file.
16214         * modules/unictype/property-variation-selector-tests: New file.
16215         * modules/unictype/property-white-space-tests: New file.
16216         * modules/unictype/property-xid-continue-tests: New file.
16217         * modules/unictype/property-xid-start-tests: New file.
16218         * modules/unictype/property-zero-width-tests: New file.
16219         * modules/unictype/scripts-tests: New file.
16220         * modules/unictype/syntax-c-ident-tests: New file.
16221         * modules/unictype/syntax-c-whitespace-tests: New file.
16222         * modules/unictype/syntax-java-ident-tests: New file.
16223         * modules/unictype/syntax-java-whitespace-tests: New file.
16224         * tests/unictype/test-bidi_byname.c: New file.
16225         * tests/unictype/test-bidi_name.c: New file.
16226         * tests/unictype/test-bidi_of.c: New file.
16227         * tests/unictype/test-bidi_test.c: New file.
16228         * tests/unictype/test-block_list.c: New file.
16229         * tests/unictype/test-block_of.c: New file.
16230         * tests/unictype/test-block_test.c: New file.
16231         * tests/unictype/test-categ_and.c: New file.
16232         * tests/unictype/test-categ_and_not.c: New file.
16233         * tests/unictype/test-categ_byname.c: New file.
16234         * tests/unictype/test-categ_name.c: New file.
16235         * tests/unictype/test-categ_none.c: New file.
16236         * tests/unictype/test-categ_of.c: New file.
16237         * tests/unictype/test-categ_or.c: New file.
16238         * tests/unictype/test-categ_test_withtable.c: New file.
16239         * tests/unictype/test-combining.c: New file.
16240         * tests/unictype/test-decdigit.c: New file.
16241         * tests/unictype/test-digit.c: New file.
16242         * tests/unictype/test-mirror.c: New file.
16243         * tests/unictype/test-numeric.c: New file.
16244         * tests/unictype/test-pr_byname.c: New file.
16245         * tests/unictype/test-pr_test.c: New file.
16246         * tests/unictype/test-predicate-part1.h: New file.
16247         * tests/unictype/test-predicate-part2.h: New file.
16248         * tests/unictype/test-scripts.c: New file.
16249         * tests/unictype/test-sy_c_ident.c: New file.
16250         * tests/unictype/test-sy_java_ident.c: New file.
16251
16252         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
16253         for Unicode 5.0.0.
16254         * tests/unictype/test-categ_Cc.c: Likewise.
16255         * tests/unictype/test-categ_Cf.c: Likewise.
16256         * tests/unictype/test-categ_Cn.c: Likewise.
16257         * tests/unictype/test-categ_Co.c: Likewise.
16258         * tests/unictype/test-categ_Cs.c: Likewise.
16259         * tests/unictype/test-categ_L.c: Likewise.
16260         * tests/unictype/test-categ_Ll.c: Likewise.
16261         * tests/unictype/test-categ_Lm.c: Likewise.
16262         * tests/unictype/test-categ_Lo.c: Likewise.
16263         * tests/unictype/test-categ_Lt.c: Likewise.
16264         * tests/unictype/test-categ_Lu.c: Likewise.
16265         * tests/unictype/test-categ_M.c: Likewise.
16266         * tests/unictype/test-categ_Mc.c: Likewise.
16267         * tests/unictype/test-categ_Me.c: Likewise.
16268         * tests/unictype/test-categ_Mn.c: Likewise.
16269         * tests/unictype/test-categ_N.c: Likewise.
16270         * tests/unictype/test-categ_Nd.c: Likewise.
16271         * tests/unictype/test-categ_Nl.c: Likewise.
16272         * tests/unictype/test-categ_No.c: Likewise.
16273         * tests/unictype/test-categ_P.c: Likewise.
16274         * tests/unictype/test-categ_Pc.c: Likewise.
16275         * tests/unictype/test-categ_Pd.c: Likewise.
16276         * tests/unictype/test-categ_Pe.c: Likewise.
16277         * tests/unictype/test-categ_Pf.c: Likewise.
16278         * tests/unictype/test-categ_Pi.c: Likewise.
16279         * tests/unictype/test-categ_Po.c: Likewise.
16280         * tests/unictype/test-categ_Ps.c: Likewise.
16281         * tests/unictype/test-categ_S.c: Likewise.
16282         * tests/unictype/test-categ_Sc.c: Likewise.
16283         * tests/unictype/test-categ_Sk.c: Likewise.
16284         * tests/unictype/test-categ_Sm.c: Likewise.
16285         * tests/unictype/test-categ_So.c: Likewise.
16286         * tests/unictype/test-categ_Z.c: Likewise.
16287         * tests/unictype/test-categ_Zl.c: Likewise.
16288         * tests/unictype/test-categ_Zp.c: Likewise.
16289         * tests/unictype/test-categ_Zs.c: Likewise.
16290         * tests/unictype/test-ctype_alnum.c: Likewise.
16291         * tests/unictype/test-ctype_alpha.c: Likewise.
16292         * tests/unictype/test-ctype_blank.c: Likewise.
16293         * tests/unictype/test-ctype_cntrl.c: Likewise.
16294         * tests/unictype/test-ctype_digit.c: Likewise.
16295         * tests/unictype/test-ctype_graph.c: Likewise.
16296         * tests/unictype/test-ctype_lower.c: Likewise.
16297         * tests/unictype/test-ctype_print.c: Likewise.
16298         * tests/unictype/test-ctype_punct.c: Likewise.
16299         * tests/unictype/test-ctype_space.c: Likewise.
16300         * tests/unictype/test-ctype_upper.c: Likewise.
16301         * tests/unictype/test-ctype_xdigit.c: Likewise.
16302         * tests/unictype/test-decdigit.h: Likewise.
16303         * tests/unictype/test-digit.h: Likewise.
16304         * tests/unictype/test-numeric.h: Likewise.
16305         * tests/unictype/test-pr_alphabetic.c: Likewise.
16306         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
16307         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
16308         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
16309         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
16310         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
16311         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
16312         * tests/unictype/test-pr_bidi_control.c: Likewise.
16313         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
16314         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
16315         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
16316         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
16317         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
16318         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
16319         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
16320         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
16321         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
16322         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
16323         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
16324         * tests/unictype/test-pr_combining.c: Likewise.
16325         * tests/unictype/test-pr_composite.c: Likewise.
16326         * tests/unictype/test-pr_currency_symbol.c: Likewise.
16327         * tests/unictype/test-pr_dash.c: Likewise.
16328         * tests/unictype/test-pr_decimal_digit.c: Likewise.
16329         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
16330         * tests/unictype/test-pr_deprecated.c: Likewise.
16331         * tests/unictype/test-pr_diacritic.c: Likewise.
16332         * tests/unictype/test-pr_extender.c: Likewise.
16333         * tests/unictype/test-pr_format_control.c: Likewise.
16334         * tests/unictype/test-pr_grapheme_base.c: Likewise.
16335         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
16336         * tests/unictype/test-pr_grapheme_link.c: Likewise.
16337         * tests/unictype/test-pr_hex_digit.c: Likewise.
16338         * tests/unictype/test-pr_hyphen.c: Likewise.
16339         * tests/unictype/test-pr_id_continue.c: Likewise.
16340         * tests/unictype/test-pr_id_start.c: Likewise.
16341         * tests/unictype/test-pr_ideographic.c: Likewise.
16342         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
16343         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
16344         * tests/unictype/test-pr_ignorable_control.c: Likewise.
16345         * tests/unictype/test-pr_iso_control.c: Likewise.
16346         * tests/unictype/test-pr_join_control.c: Likewise.
16347         * tests/unictype/test-pr_left_of_pair.c: Likewise.
16348         * tests/unictype/test-pr_line_separator.c: Likewise.
16349         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
16350         * tests/unictype/test-pr_lowercase.c: Likewise.
16351         * tests/unictype/test-pr_math.c: Likewise.
16352         * tests/unictype/test-pr_non_break.c: Likewise.
16353         * tests/unictype/test-pr_not_a_character.c: Likewise.
16354         * tests/unictype/test-pr_numeric.c: Likewise.
16355         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
16356         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
16357         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
16358         * tests/unictype/test-pr_other_id_continue.c: Likewise.
16359         * tests/unictype/test-pr_other_id_start.c: Likewise.
16360         * tests/unictype/test-pr_other_lowercase.c: Likewise.
16361         * tests/unictype/test-pr_other_math.c: Likewise.
16362         * tests/unictype/test-pr_other_uppercase.c: Likewise.
16363         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
16364         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
16365         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
16366         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
16367         * tests/unictype/test-pr_private_use.c: Likewise.
16368         * tests/unictype/test-pr_punctuation.c: Likewise.
16369         * tests/unictype/test-pr_quotation_mark.c: Likewise.
16370         * tests/unictype/test-pr_radical.c: Likewise.
16371         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
16372         * tests/unictype/test-pr_soft_dotted.c: Likewise.
16373         * tests/unictype/test-pr_space.c: Likewise.
16374         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
16375         * tests/unictype/test-pr_titlecase.c: Likewise.
16376         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
16377         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
16378         * tests/unictype/test-pr_uppercase.c: Likewise.
16379         * tests/unictype/test-pr_variation_selector.c: Likewise.
16380         * tests/unictype/test-pr_white_space.c: Likewise.
16381         * tests/unictype/test-pr_xid_continue.c: Likewise.
16382         * tests/unictype/test-pr_xid_start.c: Likewise.
16383         * tests/unictype/test-pr_zero_width.c: Likewise.
16384         * tests/unictype/test-sy_c_whitespace.c: Likewise.
16385         * tests/unictype/test-sy_java_whitespace.c: Likewise.
16386
16387 2007-11-12  Bruno Haible  <bruno@clisp.org>
16388
16389         Unicode character classification functions.
16390         * lib/unictype.h: New file.
16391         * modules/unictype/base: New file.
16392         * modules/unictype/category-L: New file.
16393         * modules/unictype/category-Lu: New file.
16394         * modules/unictype/category-Ll: New file.
16395         * modules/unictype/category-Lt: New file.
16396         * modules/unictype/category-Lm: New file.
16397         * modules/unictype/category-Lo: New file.
16398         * modules/unictype/category-M: New file.
16399         * modules/unictype/category-Mn: New file.
16400         * modules/unictype/category-Mc: New file.
16401         * modules/unictype/category-Me: New file.
16402         * modules/unictype/category-N: New file.
16403         * modules/unictype/category-Nd: New file.
16404         * modules/unictype/category-Nl: New file.
16405         * modules/unictype/category-No: New file.
16406         * modules/unictype/category-P: New file.
16407         * modules/unictype/category-Pc: New file.
16408         * modules/unictype/category-Pd: New file.
16409         * modules/unictype/category-Ps: New file.
16410         * modules/unictype/category-Pe: New file.
16411         * modules/unictype/category-Pi: New file.
16412         * modules/unictype/category-Pf: New file.
16413         * modules/unictype/category-Po: New file.
16414         * modules/unictype/category-S: New file.
16415         * modules/unictype/category-Sm: New file.
16416         * modules/unictype/category-Sc: New file.
16417         * modules/unictype/category-Sk: New file.
16418         * modules/unictype/category-So: New file.
16419         * modules/unictype/category-Z: New file.
16420         * modules/unictype/category-Zs: New file.
16421         * modules/unictype/category-Zl: New file.
16422         * modules/unictype/category-Zp: New file.
16423         * modules/unictype/category-C: New file.
16424         * modules/unictype/category-Cc: New file.
16425         * modules/unictype/category-Cf: New file.
16426         * modules/unictype/category-Cs: New file.
16427         * modules/unictype/category-Co: New file.
16428         * modules/unictype/category-Cn: New file.
16429         * modules/unictype/category-or: New file.
16430         * modules/unictype/category-of: New file.
16431         * modules/unictype/category-test: New file.
16432         * modules/unictype/category-test-withtable: New file.
16433         * modules/unictype/category-byname: New file.
16434         * modules/unictype/category-none: New file.
16435         * modules/unictype/category-and: New file.
16436         * modules/unictype/category-and-not: New file.
16437         * modules/unictype/category-name: New file.
16438         * modules/unictype/combining-class: New file.
16439         * modules/unictype/category-all: New file.
16440         * modules/unictype/bidicategory-all: New file.
16441         * modules/unictype/bidicategory-byname: New file.
16442         * modules/unictype/bidicategory-name: New file.
16443         * modules/unictype/bidicategory-of: New file.
16444         * modules/unictype/bidicategory-test: New file.
16445         * modules/unictype/decimal-digit: New file.
16446         * modules/unictype/digit: New file.
16447         * modules/unictype/numeric: New file.
16448         * modules/unictype/mirror: New file.
16449         * modules/unictype/property-white-space: New file.
16450         * modules/unictype/property-alphabetic: New file.
16451         * modules/unictype/property-other-alphabetic: New file.
16452         * modules/unictype/property-not-a-character: New file.
16453         * modules/unictype/property-default-ignorable-code-point: New file.
16454         * modules/unictype/property-other-default-ignorable-code-point: New
16455         file.
16456         * modules/unictype/property-deprecated: New file.
16457         * modules/unictype/property-logical-order-exception: New file.
16458         * modules/unictype/property-variation-selector: New file.
16459         * modules/unictype/property-private-use: New file.
16460         * modules/unictype/property-unassigned-code-value: New file.
16461         * modules/unictype/property-uppercase: New file.
16462         * modules/unictype/property-other-uppercase: New file.
16463         * modules/unictype/property-lowercase: New file.
16464         * modules/unictype/property-other-lowercase: New file.
16465         * modules/unictype/property-titlecase: New file.
16466         * modules/unictype/property-soft-dotted: New file.
16467         * modules/unictype/property-id-start: New file.
16468         * modules/unictype/property-other-id-start: New file.
16469         * modules/unictype/property-id-continue: New file.
16470         * modules/unictype/property-other-id-continue: New file.
16471         * modules/unictype/property-xid-start: New file.
16472         * modules/unictype/property-xid-continue: New file.
16473         * modules/unictype/property-pattern-white-space: New file.
16474         * modules/unictype/property-pattern-syntax: New file.
16475         * modules/unictype/property-join-control: New file.
16476         * modules/unictype/property-grapheme-base: New file.
16477         * modules/unictype/property-grapheme-extend: New file.
16478         * modules/unictype/property-other-grapheme-extend: New file.
16479         * modules/unictype/property-grapheme-link: New file.
16480         * modules/unictype/property-bidi-control: New file.
16481         * modules/unictype/property-bidi-left-to-right: New file.
16482         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
16483         * modules/unictype/property-bidi-arabic-right-to-left: New file.
16484         * modules/unictype/property-bidi-european-digit: New file.
16485         * modules/unictype/property-bidi-eur-num-separator: New file.
16486         * modules/unictype/property-bidi-eur-num-terminator: New file.
16487         * modules/unictype/property-bidi-arabic-digit: New file.
16488         * modules/unictype/property-bidi-common-separator: New file.
16489         * modules/unictype/property-bidi-block-separator: New file.
16490         * modules/unictype/property-bidi-segment-separator: New file.
16491         * modules/unictype/property-bidi-whitespace: New file.
16492         * modules/unictype/property-bidi-non-spacing-mark: New file.
16493         * modules/unictype/property-bidi-boundary-neutral: New file.
16494         * modules/unictype/property-bidi-pdf: New file.
16495         * modules/unictype/property-bidi-embedding-or-override: New file.
16496         * modules/unictype/property-bidi-other-neutral: New file.
16497         * modules/unictype/property-hex-digit: New file.
16498         * modules/unictype/property-ascii-hex-digit: New file.
16499         * modules/unictype/property-ideographic: New file.
16500         * modules/unictype/property-unified-ideograph: New file.
16501         * modules/unictype/property-radical: New file.
16502         * modules/unictype/property-ids-binary-operator: New file.
16503         * modules/unictype/property-ids-trinary-operator: New file.
16504         * modules/unictype/property-zero-width: New file.
16505         * modules/unictype/property-space: New file.
16506         * modules/unictype/property-non-break: New file.
16507         * modules/unictype/property-iso-control: New file.
16508         * modules/unictype/property-format-control: New file.
16509         * modules/unictype/property-dash: New file.
16510         * modules/unictype/property-hyphen: New file.
16511         * modules/unictype/property-punctuation: New file.
16512         * modules/unictype/property-line-separator: New file.
16513         * modules/unictype/property-paragraph-separator: New file.
16514         * modules/unictype/property-quotation-mark: New file.
16515         * modules/unictype/property-sentence-terminal: New file.
16516         * modules/unictype/property-terminal-punctuation: New file.
16517         * modules/unictype/property-currency-symbol: New file.
16518         * modules/unictype/property-math: New file.
16519         * modules/unictype/property-other-math: New file.
16520         * modules/unictype/property-paired-punctuation: New file.
16521         * modules/unictype/property-left-of-pair: New file.
16522         * modules/unictype/property-combining: New file.
16523         * modules/unictype/property-composite: New file.
16524         * modules/unictype/property-decimal-digit: New file.
16525         * modules/unictype/property-numeric: New file.
16526         * modules/unictype/property-diacritic: New file.
16527         * modules/unictype/property-extender: New file.
16528         * modules/unictype/property-ignorable-control: New file.
16529         * modules/unictype/property-test: New file.
16530         * modules/unictype/property-byname: New file.
16531         * modules/unictype/property-all: New file.
16532         * modules/unictype/scripts: New file.
16533         * modules/unictype/scripts-all: New file.
16534         * modules/unictype/block-of: New file.
16535         * modules/unictype/block-test: New file.
16536         * modules/unictype/block-list: New file.
16537         * modules/unictype/block-all: New file.
16538         * modules/unictype/syntax-c-whitespace: New file.
16539         * modules/unictype/syntax-java-whitespace: New file.
16540         * modules/unictype/syntax-c-ident: New file.
16541         * modules/unictype/syntax-java-ident: New file.
16542         * modules/unictype/ctype-alnum: New file.
16543         * modules/unictype/ctype-alpha: New file.
16544         * modules/unictype/ctype-cntrl: New file.
16545         * modules/unictype/ctype-digit: New file.
16546         * modules/unictype/ctype-graph: New file.
16547         * modules/unictype/ctype-lower: New file.
16548         * modules/unictype/ctype-print: New file.
16549         * modules/unictype/ctype-punct: New file.
16550         * modules/unictype/ctype-space: New file.
16551         * modules/unictype/ctype-upper: New file.
16552         * modules/unictype/ctype-xdigit: New file.
16553         * modules/unictype/ctype-blank: New file.
16554         * lib/unictype/bidi_byname.c: New file.
16555         * lib/unictype/bidi_name.c: New file.
16556         * lib/unictype/bidi_of.c: New file.
16557         * lib/unictype/bidi_test.c: New file.
16558         * lib/unictype/bitmap.h: New file.
16559         * lib/unictype/block_test.c: New file.
16560         * lib/unictype/blocks.c: New file.
16561         * lib/unictype/categ_C.c: New file.
16562         * lib/unictype/categ_Cc.c: New file.
16563         * lib/unictype/categ_Cf.c: New file.
16564         * lib/unictype/categ_Cn.c: New file.
16565         * lib/unictype/categ_Co.c: New file.
16566         * lib/unictype/categ_Cs.c: New file.
16567         * lib/unictype/categ_L.c: New file.
16568         * lib/unictype/categ_Ll.c: New file.
16569         * lib/unictype/categ_Lm.c: New file.
16570         * lib/unictype/categ_Lo.c: New file.
16571         * lib/unictype/categ_Lt.c: New file.
16572         * lib/unictype/categ_Lu.c: New file.
16573         * lib/unictype/categ_M.c: New file.
16574         * lib/unictype/categ_Mc.c: New file.
16575         * lib/unictype/categ_Me.c: New file.
16576         * lib/unictype/categ_Mn.c: New file.
16577         * lib/unictype/categ_N.c: New file.
16578         * lib/unictype/categ_Nd.c: New file.
16579         * lib/unictype/categ_Nl.c: New file.
16580         * lib/unictype/categ_No.c: New file.
16581         * lib/unictype/categ_P.c: New file.
16582         * lib/unictype/categ_Pc.c: New file.
16583         * lib/unictype/categ_Pd.c: New file.
16584         * lib/unictype/categ_Pe.c: New file.
16585         * lib/unictype/categ_Pf.c: New file.
16586         * lib/unictype/categ_Pi.c: New file.
16587         * lib/unictype/categ_Po.c: New file.
16588         * lib/unictype/categ_Ps.c: New file.
16589         * lib/unictype/categ_S.c: New file.
16590         * lib/unictype/categ_Sc.c: New file.
16591         * lib/unictype/categ_Sk.c: New file.
16592         * lib/unictype/categ_Sm.c: New file.
16593         * lib/unictype/categ_So.c: New file.
16594         * lib/unictype/categ_Z.c: New file.
16595         * lib/unictype/categ_Zl.c: New file.
16596         * lib/unictype/categ_Zp.c: New file.
16597         * lib/unictype/categ_Zs.c: New file.
16598         * lib/unictype/categ_and.c: New file.
16599         * lib/unictype/categ_and_not.c: New file.
16600         * lib/unictype/categ_byname.c: New file.
16601         * lib/unictype/categ_name.c: New file.
16602         * lib/unictype/categ_none.c: New file.
16603         * lib/unictype/categ_of.c: New file.
16604         * lib/unictype/categ_or.c: New file.
16605         * lib/unictype/categ_test.c: New file.
16606         * lib/unictype/combining.c: New file.
16607         * lib/unictype/ctype_alnum.c: New file.
16608         * lib/unictype/ctype_alpha.c: New file.
16609         * lib/unictype/ctype_blank.c: New file.
16610         * lib/unictype/ctype_cntrl.c: New file.
16611         * lib/unictype/ctype_digit.c: New file.
16612         * lib/unictype/ctype_graph.c: New file.
16613         * lib/unictype/ctype_lower.c: New file.
16614         * lib/unictype/ctype_print.c: New file.
16615         * lib/unictype/ctype_punct.c: New file.
16616         * lib/unictype/ctype_space.c: New file.
16617         * lib/unictype/ctype_upper.c: New file.
16618         * lib/unictype/ctype_xdigit.c: New file.
16619         * lib/unictype/decdigit.c: New file.
16620         * lib/unictype/digit.c: New file.
16621         * lib/unictype/identsyntaxmap.h: New file.
16622         * lib/unictype/mirror.c: New file.
16623         * lib/unictype/numeric.c: New file.
16624         * lib/unictype/pr_alphabetic.c: New file.
16625         * lib/unictype/pr_ascii_hex_digit.c: New file.
16626         * lib/unictype/pr_bidi_arabic_digit.c: New file.
16627         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
16628         * lib/unictype/pr_bidi_block_separator.c: New file.
16629         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
16630         * lib/unictype/pr_bidi_common_separator.c: New file.
16631         * lib/unictype/pr_bidi_control.c: New file.
16632         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
16633         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
16634         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
16635         * lib/unictype/pr_bidi_european_digit.c: New file.
16636         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
16637         * lib/unictype/pr_bidi_left_to_right.c: New file.
16638         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
16639         * lib/unictype/pr_bidi_other_neutral.c: New file.
16640         * lib/unictype/pr_bidi_pdf.c: New file.
16641         * lib/unictype/pr_bidi_segment_separator.c: New file.
16642         * lib/unictype/pr_bidi_whitespace.c: New file.
16643         * lib/unictype/pr_byname.c: New file.
16644         * lib/unictype/pr_byname.gperf: New file.
16645         * lib/unictype/pr_combining.c: New file.
16646         * lib/unictype/pr_composite.c: New file.
16647         * lib/unictype/pr_currency_symbol.c: New file.
16648         * lib/unictype/pr_dash.c: New file.
16649         * lib/unictype/pr_decimal_digit.c: New file.
16650         * lib/unictype/pr_default_ignorable_code_point.c: New file.
16651         * lib/unictype/pr_deprecated.c: New file.
16652         * lib/unictype/pr_diacritic.c: New file.
16653         * lib/unictype/pr_extender.c: New file.
16654         * lib/unictype/pr_format_control.c: New file.
16655         * lib/unictype/pr_grapheme_base.c: New file.
16656         * lib/unictype/pr_grapheme_extend.c: New file.
16657         * lib/unictype/pr_grapheme_link.c: New file.
16658         * lib/unictype/pr_hex_digit.c: New file.
16659         * lib/unictype/pr_hyphen.c: New file.
16660         * lib/unictype/pr_id_continue.c: New file.
16661         * lib/unictype/pr_id_start.c: New file.
16662         * lib/unictype/pr_ideographic.c: New file.
16663         * lib/unictype/pr_ids_binary_operator.c: New file.
16664         * lib/unictype/pr_ids_trinary_operator.c: New file.
16665         * lib/unictype/pr_ignorable_control.c: New file.
16666         * lib/unictype/pr_iso_control.c: New file.
16667         * lib/unictype/pr_join_control.c: New file.
16668         * lib/unictype/pr_left_of_pair.c: New file.
16669         * lib/unictype/pr_line_separator.c: New file.
16670         * lib/unictype/pr_logical_order_exception.c: New file.
16671         * lib/unictype/pr_lowercase.c: New file.
16672         * lib/unictype/pr_math.c: New file.
16673         * lib/unictype/pr_non_break.c: New file.
16674         * lib/unictype/pr_not_a_character.c: New file.
16675         * lib/unictype/pr_numeric.c: New file.
16676         * lib/unictype/pr_other_alphabetic.c: New file.
16677         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
16678         * lib/unictype/pr_other_grapheme_extend.c: New file.
16679         * lib/unictype/pr_other_id_continue.c: New file.
16680         * lib/unictype/pr_other_id_start.c: New file.
16681         * lib/unictype/pr_other_lowercase.c: New file.
16682         * lib/unictype/pr_other_math.c: New file.
16683         * lib/unictype/pr_other_uppercase.c: New file.
16684         * lib/unictype/pr_paired_punctuation.c: New file.
16685         * lib/unictype/pr_paragraph_separator.c: New file.
16686         * lib/unictype/pr_pattern_syntax.c: New file.
16687         * lib/unictype/pr_pattern_white_space.c: New file.
16688         * lib/unictype/pr_private_use.c: New file.
16689         * lib/unictype/pr_punctuation.c: New file.
16690         * lib/unictype/pr_quotation_mark.c: New file.
16691         * lib/unictype/pr_radical.c: New file.
16692         * lib/unictype/pr_sentence_terminal.c: New file.
16693         * lib/unictype/pr_soft_dotted.c: New file.
16694         * lib/unictype/pr_space.c: New file.
16695         * lib/unictype/pr_terminal_punctuation.c: New file.
16696         * lib/unictype/pr_test.c: New file.
16697         * lib/unictype/pr_titlecase.c: New file.
16698         * lib/unictype/pr_unassigned_code_value.c: New file.
16699         * lib/unictype/pr_unified_ideograph.c: New file.
16700         * lib/unictype/pr_uppercase.c: New file.
16701         * lib/unictype/pr_variation_selector.c: New file.
16702         * lib/unictype/pr_white_space.c: New file.
16703         * lib/unictype/pr_xid_continue.c: New file.
16704         * lib/unictype/pr_xid_start.c: New file.
16705         * lib/unictype/pr_zero_width.c: New file.
16706         * lib/unictype/scripts.c: New file.
16707         * lib/unictype/sy_c_ident.c: New file.
16708         * lib/unictype/sy_c_whitespace.c: New file.
16709         * lib/unictype/sy_java_ident.c: New file.
16710         * lib/unictype/sy_java_whitespace.c: New file.
16711
16712         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
16713         Unicode 5.0.0.
16714         * lib/unictype/blocks.h: Likewise.
16715         * lib/unictype/categ_C.h: Likewise.
16716         * lib/unictype/categ_Cc.h: Likewise.
16717         * lib/unictype/categ_Cf.h: Likewise.
16718         * lib/unictype/categ_Cn.h: Likewise.
16719         * lib/unictype/categ_Co.h: Likewise.
16720         * lib/unictype/categ_Cs.h: Likewise.
16721         * lib/unictype/categ_L.h: Likewise.
16722         * lib/unictype/categ_Ll.h: Likewise.
16723         * lib/unictype/categ_Lm.h: Likewise.
16724         * lib/unictype/categ_Lo.h: Likewise.
16725         * lib/unictype/categ_Lt.h: Likewise.
16726         * lib/unictype/categ_Lu.h: Likewise.
16727         * lib/unictype/categ_M.h: Likewise.
16728         * lib/unictype/categ_Mc.h: Likewise.
16729         * lib/unictype/categ_Me.h: Likewise.
16730         * lib/unictype/categ_Mn.h: Likewise.
16731         * lib/unictype/categ_N.h: Likewise.
16732         * lib/unictype/categ_Nd.h: Likewise.
16733         * lib/unictype/categ_Nl.h: Likewise.
16734         * lib/unictype/categ_No.h: Likewise.
16735         * lib/unictype/categ_P.h: Likewise.
16736         * lib/unictype/categ_Pc.h: Likewise.
16737         * lib/unictype/categ_Pd.h: Likewise.
16738         * lib/unictype/categ_Pe.h: Likewise.
16739         * lib/unictype/categ_Pf.h: Likewise.
16740         * lib/unictype/categ_Pi.h: Likewise.
16741         * lib/unictype/categ_Po.h: Likewise.
16742         * lib/unictype/categ_Ps.h: Likewise.
16743         * lib/unictype/categ_S.h: Likewise.
16744         * lib/unictype/categ_Sc.h: Likewise.
16745         * lib/unictype/categ_Sk.h: Likewise.
16746         * lib/unictype/categ_Sm.h: Likewise.
16747         * lib/unictype/categ_So.h: Likewise.
16748         * lib/unictype/categ_Z.h: Likewise.
16749         * lib/unictype/categ_Zl.h: Likewise.
16750         * lib/unictype/categ_Zp.h: Likewise.
16751         * lib/unictype/categ_Zs.h: Likewise.
16752         * lib/unictype/categ_of.h: Likewise.
16753         * lib/unictype/combining.h: Likewise.
16754         * lib/unictype/ctype_alnum.h: Likewise.
16755         * lib/unictype/ctype_alpha.h: Likewise.
16756         * lib/unictype/ctype_blank.h: Likewise.
16757         * lib/unictype/ctype_cntrl.h: Likewise.
16758         * lib/unictype/ctype_digit.h: Likewise.
16759         * lib/unictype/ctype_graph.h: Likewise.
16760         * lib/unictype/ctype_lower.h: Likewise.
16761         * lib/unictype/ctype_print.h: Likewise.
16762         * lib/unictype/ctype_punct.h: Likewise.
16763         * lib/unictype/ctype_space.h: Likewise.
16764         * lib/unictype/ctype_upper.h: Likewise.
16765         * lib/unictype/ctype_xdigit.h: Likewise.
16766         * lib/unictype/decdigit.h: Likewise.
16767         * lib/unictype/digit.h: Likewise.
16768         * lib/unictype/mirror.h: Likewise.
16769         * lib/unictype/numeric.h: Likewise.
16770         * lib/unictype/pr_alphabetic.h: Likewise.
16771         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
16772         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
16773         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
16774         * lib/unictype/pr_bidi_block_separator.h: Likewise.
16775         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
16776         * lib/unictype/pr_bidi_common_separator.h: Likewise.
16777         * lib/unictype/pr_bidi_control.h: Likewise.
16778         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
16779         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
16780         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
16781         * lib/unictype/pr_bidi_european_digit.h: Likewise.
16782         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
16783         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
16784         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
16785         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
16786         * lib/unictype/pr_bidi_pdf.h: Likewise.
16787         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
16788         * lib/unictype/pr_bidi_whitespace.h: Likewise.
16789         * lib/unictype/pr_combining.h: Likewise.
16790         * lib/unictype/pr_composite.h: Likewise.
16791         * lib/unictype/pr_currency_symbol.h: Likewise.
16792         * lib/unictype/pr_dash.h: Likewise.
16793         * lib/unictype/pr_decimal_digit.h: Likewise.
16794         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
16795         * lib/unictype/pr_deprecated.h: Likewise.
16796         * lib/unictype/pr_diacritic.h: Likewise.
16797         * lib/unictype/pr_extender.h: Likewise.
16798         * lib/unictype/pr_format_control.h: Likewise.
16799         * lib/unictype/pr_grapheme_base.h: Likewise.
16800         * lib/unictype/pr_grapheme_extend.h: Likewise.
16801         * lib/unictype/pr_grapheme_link.h: Likewise.
16802         * lib/unictype/pr_hex_digit.h: Likewise.
16803         * lib/unictype/pr_hyphen.h: Likewise.
16804         * lib/unictype/pr_id_continue.h: Likewise.
16805         * lib/unictype/pr_id_start.h: Likewise.
16806         * lib/unictype/pr_ideographic.h: Likewise.
16807         * lib/unictype/pr_ids_binary_operator.h: Likewise.
16808         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
16809         * lib/unictype/pr_ignorable_control.h: Likewise.
16810         * lib/unictype/pr_iso_control.h: Likewise.
16811         * lib/unictype/pr_join_control.h: Likewise.
16812         * lib/unictype/pr_left_of_pair.h: Likewise.
16813         * lib/unictype/pr_line_separator.h: Likewise.
16814         * lib/unictype/pr_logical_order_exception.h: Likewise.
16815         * lib/unictype/pr_lowercase.h: Likewise.
16816         * lib/unictype/pr_math.h: Likewise.
16817         * lib/unictype/pr_non_break.h: Likewise.
16818         * lib/unictype/pr_not_a_character.h: Likewise.
16819         * lib/unictype/pr_numeric.h: Likewise.
16820         * lib/unictype/pr_other_alphabetic.h: Likewise.
16821         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
16822         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
16823         * lib/unictype/pr_other_id_continue.h: Likewise.
16824         * lib/unictype/pr_other_id_start.h: Likewise.
16825         * lib/unictype/pr_other_lowercase.h: Likewise.
16826         * lib/unictype/pr_other_math.h: Likewise.
16827         * lib/unictype/pr_other_uppercase.h: Likewise.
16828         * lib/unictype/pr_paired_punctuation.h: Likewise.
16829         * lib/unictype/pr_paragraph_separator.h: Likewise.
16830         * lib/unictype/pr_pattern_syntax.h: Likewise.
16831         * lib/unictype/pr_pattern_white_space.h: Likewise.
16832         * lib/unictype/pr_private_use.h: Likewise.
16833         * lib/unictype/pr_punctuation.h: Likewise.
16834         * lib/unictype/pr_quotation_mark.h: Likewise.
16835         * lib/unictype/pr_radical.h: Likewise.
16836         * lib/unictype/pr_sentence_terminal.h: Likewise.
16837         * lib/unictype/pr_soft_dotted.h: Likewise.
16838         * lib/unictype/pr_space.h: Likewise.
16839         * lib/unictype/pr_terminal_punctuation.h: Likewise.
16840         * lib/unictype/pr_titlecase.h: Likewise.
16841         * lib/unictype/pr_unassigned_code_value.h: Likewise.
16842         * lib/unictype/pr_unified_ideograph.h: Likewise.
16843         * lib/unictype/pr_uppercase.h: Likewise.
16844         * lib/unictype/pr_variation_selector.h: Likewise.
16845         * lib/unictype/pr_white_space.h: Likewise.
16846         * lib/unictype/pr_xid_continue.h: Likewise.
16847         * lib/unictype/pr_xid_start.h: Likewise.
16848         * lib/unictype/pr_zero_width.h: Likewise.
16849         * lib/unictype/scripts.h: Likewise.
16850         * lib/unictype/scripts_byname.gperf: Likewise.
16851         * lib/unictype/sy_c_ident.h: Likewise.
16852         * lib/unictype/sy_c_whitespace.h: Likewise.
16853         * lib/unictype/sy_java_ident.h: Likewise.
16854         * lib/unictype/sy_java_whitespace.h: Likewise.
16855
16856         * lib/unictype/Makefile: New file.
16857         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
16858         glibc.
16859         * lib/unictype/3level.h: New file, copied from glibc.
16860         * lib/unictype/3levelbit.h: New file.
16861
16862 2007-11-11  Bruno Haible  <bruno@clisp.org>
16863
16864         * modules/gperf: New file.
16865         * modules/iconv_open (Depends-on): Add it.
16866         (Makefile.am): Remove the GPERF definition.
16867
16868 2007-11-11  Bruno Haible  <bruno@clisp.org>
16869
16870         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
16871         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
16872
16873 2007-11-11  Bruno Haible  <bruno@clisp.org>
16874
16875         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
16876         (usage): Remove function.
16877
16878 2007-11-11  Bruno Haible  <bruno@clisp.org>
16879
16880         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
16881         gl_FUNC_CEILF_LIBS.
16882         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
16883         gl_FUNC_CEIL_LIBS.
16884         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
16885         gl_FUNC_CEILL_LIBS.
16886         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
16887         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
16888         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
16889
16890 2007-11-11  Bruno Haible  <bruno@clisp.org>
16891
16892         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
16893         roundf were declared but do not exist on functions.
16894         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
16895         roundl were declared but do not exist on functions.
16896         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
16897         HAVE_FLOORL_AND_CEILL, respectively.
16898         Needed for Sun C on Solaris 10.
16899
16900 2007-11-11  Bruno Haible  <bruno@clisp.org>
16901
16902         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
16903         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
16904         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
16905         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
16906         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
16907         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
16908         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
16909         HAVE_DECL_ROUNDF.
16910         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
16911         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
16912         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
16913         of HAVE_DECL_ROUND*.
16914         * modules/math (Makefile.am): Update.
16915
16916 2007-11-10  Bruno Haible  <bruno@clisp.org>
16917
16918         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
16919         ptrdiff_t as m4/intl.m4.
16920
16921 2007-11-10  Jim Meyering  <meyering@redhat.com>
16922
16923         Avoid link failure for the argmatch test.
16924         * tests/test-argmatch.c (usage): Define function to avoid a link
16925         failure: argmatch_die requires a usage function.
16926
16927 2007-11-09  Bruno Haible  <bruno@clisp.org>
16928
16929         * doc/functions/snprintf.texi: Mention BeOS deficiency.
16930         * doc/functions/vsnprintf.texi: Likewise.
16931         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
16932         with a size argument < 2.
16933
16934 2007-11-09  Bruno Haible  <bruno@clisp.org>
16935
16936         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
16937         buffer. Fixes an inefficiency introduced on 2007-11-03.
16938
16939 2007-11-09  Bruno Haible  <bruno@clisp.org>
16940
16941         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
16942         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
16943
16944 2007-11-08  Jim Meyering  <meyering@redhat.com>
16945
16946         Change cache variable name prefix "jm_" to "gl_" everywhere.
16947         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
16948         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
16949         * m4/uptime.m4: s/gl_/jm_/
16950
16951 2007-11-07  Bruno Haible  <bruno@clisp.org>
16952
16953         Update to GNU gettext 0.17.
16954         * m4/intl.m4: Update to GNU gettext 0.17.
16955         * m4/po.m4: Likewise.
16956         * modules/gettext (Files): Remove m4/ulonglong.m4.
16957         (configure.ac): Require gettext infrastructure from version 0.17.
16958
16959 2007-11-06  Bruno Haible  <bruno@clisp.org>
16960
16961         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
16962         symbolic values are not defined in a public header.
16963         * lib/freadable.c (freadable) [QNX]: Likewise.
16964         * lib/freadahead.c (freadahead) [QNX]: Likewise.
16965         * lib/freading.c (freading) [QNX]: Likewise.
16966         * lib/fseterr.c (fseterr) [QNX]: Likewise.
16967         * lib/fwritable.c (fwritable) [QNX]: Likewise.
16968         * lib/fwriting.c (fwriting) [QNX]: Likewise.
16969         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
16970         Reported by Alain Magloire.
16971
16972         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
16973
16974 2007-11-05  Bruno Haible  <bruno@clisp.org>
16975
16976         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
16977         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
16978         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
16979         Reported by Eric Blake.
16980
16981 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16982             Bruno Haible  <bruno@clisp.org>
16983
16984         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
16985         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
16986         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
16987         (malloc): Undefine also before including <stdlib.h>.
16988         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
16989         Needed on OSF/1 4.0.
16990
16991 2007-11-05  Jim Meyering  <meyering@redhat.com>
16992
16993         git-version-gen: sync from coreutils.
16994         * build-aux/git-version-gen: Add comments.
16995         Change the first '-' to '.' in the snapshot version string,
16996         e.g., 6.9-377-08144 -> 6.9.377-08144
16997         Remove first parameter.
16998         Don't declare a version "-dirty" merely because a time
16999         stamp has changed.
17000
17001 2007-11-04  Bruno Haible  <bruno@clisp.org>
17002
17003         * lib/lock.h: Protect all macro definitions containing an 'if'
17004         statement through a "do { ... } while (0)".
17005         * lib/tls.h: Likewise.
17006
17007 2007-11-04  Bruno Haible  <bruno@clisp.org>
17008
17009         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
17010
17011 2007-11-04  Bruno Haible  <bruno@clisp.org>
17012
17013         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
17014         * modules/fprintf-posix (Depends-on): Add nocrash.
17015         * modules/snprintf-posix (Depends-on): Likewise.
17016         * modules/sprintf-posix (Depends-on): Likewise.
17017         * modules/vasnprintf-posix (Depends-on): Likewise.
17018         * modules/vasprintf-posix (Depends-on): Likewise.
17019         * modules/vfprintf-posix (Depends-on): Likewise.
17020         * modules/vsnprintf-posix (Depends-on): Likewise.
17021         * modules/vsprintf-posix (Depends-on): Likewise.
17022         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
17023         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
17024         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
17025         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
17026         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
17027         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
17028         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
17029
17030 2007-11-04  Bruno Haible  <bruno@clisp.org>
17031
17032         * modules/nocrash: New file.
17033         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
17034         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
17035
17036 2007-11-04  Bruno Haible  <bruno@clisp.org>
17037
17038         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
17039         precision handling.
17040         * tests/test-vasprintf-posix.c (test_function): Likewise.
17041         * tests/test-snprintf-posix.h (test_function): Likewise.
17042         * tests/test-sprintf-posix.h (test_function): Likewise.
17043
17044         Fix *printf behaviour for large precisions on mingw and BeOS.
17045         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
17046         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
17047         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
17048         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
17049         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
17050         gl_PRINTF_PRECISION and test its result. Invoke
17051         gl_PREREQ_VASNPRINTF_PRECISION.
17052         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
17053         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
17054         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
17055         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
17056         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
17057         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17058         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
17059         * doc/functions/fprintf.texi: Update.
17060         * doc/functions/printf.texi: Update.
17061         * doc/functions/snprintf.texi: Update.
17062         * doc/functions/sprintf.texi: Update.
17063         * doc/functions/vfprintf.texi: Update.
17064         * doc/functions/vprintf.texi: Update.
17065         * doc/functions/vsnprintf.texi: Update.
17066         * doc/functions/vsprintf.texi: Update.
17067
17068 2007-11-04  Bruno Haible  <bruno@clisp.org>
17069
17070         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
17071
17072 2007-11-04  Bruno Haible  <bruno@clisp.org>
17073
17074         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
17075         Reported by Sylvain Beucler <beuc@gnu.org>.
17076
17077 2007-11-03  Bruno Haible  <bruno@clisp.org>
17078
17079         * tests/test-fprintf-posix2.sh: New file.
17080         * tests/test-fprintf-posix2.c: New file.
17081         * modules/fprintf-posix-tests (Files): Add them.
17082         (TESTS): Add test-fprintf-posix2.sh.
17083         (configure.ac): Check for getrlimit and setrlimit.
17084         (check_PROGRAMS): Add test-fprintf-posix2.
17085
17086         * tests/test-printf-posix2.sh: New file.
17087         * tests/test-printf-posix2.c: New file.
17088         * modules/printf-posix-tests (Files): Add them.
17089         (TESTS): Add test-printf-posix2.sh.
17090         (configure.ac): Check for getrlimit and setrlimit.
17091         (check_PROGRAMS): Add test-printf-posix2.
17092
17093         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
17094         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
17095         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
17096         (decode_double): New function, copied from decode_long_double.
17097         (scale10_round_decimal_decoded): New function, extracted from
17098         scale10_round_decimal_long_double.
17099         (scale10_round_decimal_long_double): Use it.
17100         (scale10_round_decimal_double): New function.
17101         (floorlog10): New function.
17102         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
17103         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
17104         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
17105         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
17106         gl_PRINTF_ENOMEM and test its result. Invoke
17107         gl_PREREQ_VASNPRINTF_ENOMEM.
17108         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
17109         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
17110         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
17111         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
17112         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
17113         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
17114         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
17115         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
17116         * modules/snprintf-posix (Depends-on): Likewise.
17117         * modules/sprintf-posix (Depends-on): Likewise.
17118         * modules/vasnprintf-posix (Depends-on): Likewise.
17119         * modules/vasprintf-posix (Depends-on): Likewise.
17120         * modules/vfprintf-posix (Depends-on): Likewise.
17121         * modules/vsnprintf-posix (Depends-on): Likewise.
17122         * modules/vsprintf-posix (Depends-on): Likewise.
17123         * doc/functions/fprintf.texi: Update.
17124         * doc/functions/printf.texi: Update.
17125         * doc/functions/snprintf.texi: Update.
17126         * doc/functions/sprintf.texi: Update.
17127         * doc/functions/vfprintf.texi: Update.
17128         * doc/functions/vprintf.texi: Update.
17129         * doc/functions/vsnprintf.texi: Update.
17130         * doc/functions/vsprintf.texi: Update.
17131
17132 2007-11-03  Bruno Haible  <bruno@clisp.org>
17133
17134         * modules/frexp-nolibm-tests: New file.
17135
17136         * modules/frexp-nolibm: New file.
17137         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
17138
17139 2007-11-03  Bruno Haible  <bruno@clisp.org>
17140
17141         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
17142         value is C99 compliant.
17143         Needed for OSF/1 5.1.
17144
17145 2007-11-03  Bruno Haible  <bruno@clisp.org>
17146
17147         Fix out-of-memory handling of vasnprintf.
17148         * lib/printf-parse.c: Include <errno.h>.
17149         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
17150         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
17151         is already set.
17152
17153 2007-11-02  Eric Blake  <ebb9@byu.net>
17154
17155         Fix tests on cygwin.
17156         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
17157
17158 2007-11-01  Bruno Haible  <bruno@clisp.org>
17159
17160         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
17161         warning.
17162         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
17163         needed for POSIX compatibility.
17164
17165 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
17166
17167         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
17168         for compatibility with GNU.
17169
17170 2007-11-01  Bruno Haible  <bruno@clisp.org>
17171
17172         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
17173         (putenv): Renamed from rpl_putenv. Change argument type from
17174         'const char *' to 'char *'.
17175         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
17176         of defining putenv in config.h, just set REPLACE_PUTENV.
17177         * modules/putenv (Depends-on): Add stdlib.
17178         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
17179         (Include): Use <stdlib.h>.
17180         * lib/stdlib.in.h (putenv): New declaration.
17181         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
17182         REPLACE_PUTENV.
17183         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
17184         REPLACE_PUTENV.
17185         Needed for MacOS X 10.5.0.
17186         Reported by Peter O'Gorman <peter@pogma.com>.
17187
17188 2007-11-01  Jim Meyering  <meyering@redhat.com>
17189
17190         Treat an empty date string exactly like "0".
17191         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
17192         if the remaining date string (to be parsed) is empty, use "0".
17193         Reported by Mischa Molhoek and discussed in this thread:
17194         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
17195
17196 2007-10-31  Bruno Haible  <bruno@clisp.org>
17197
17198         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
17199         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
17200         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
17201         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
17202         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
17203         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
17204
17205 2007-10-31  Bruno Haible  <bruno@clisp.org>
17206
17207         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
17208         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
17209         (AC_TYPE_LONG_LONG_INT): Use it.
17210         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
17211         it as well.
17212         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
17213         to m4/longlong.m4.
17214         * modules/stdint (Files): Remove m4/ulonglong.m4.
17215         * modules/strtoull (Files): Use m4/longlong.m4 instead of
17216         m4/ulonglong.m4.
17217         * modules/strtoumax (Files): Likewise.
17218
17219 2007-10-30  Bruno Haible  <bruno@clisp.org>
17220
17221         * modules/xvasprintf-posix: New file.
17222         Suggested by Eric Blake.
17223
17224 2007-10-30  Bruno Haible  <bruno@clisp.org>
17225
17226         * modules/xprintf-posix-tests: New file.
17227         * tests/test-xprintf-posix.sh: New file.
17228         * tests/test-xprintf-posix.c: New file.
17229         * tests/test-xfprintf-posix.c: New file.
17230
17231         * modules/xprintf-posix: New file.
17232
17233 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17234
17235         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
17236         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
17237         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
17238
17239 2007-10-29  Bruno Haible  <bruno@clisp.org>
17240
17241         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
17242         contain the special marker '_cv_'.
17243         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
17244         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
17245         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
17246         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
17247         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
17248         Reported by Ralf Wildenhues.
17249
17250 2007-10-29  Bruno Haible  <bruno@clisp.org>
17251
17252         * gnulib-tool (func_import): When --lgpl is not specified, set
17253         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
17254         GPLv3.
17255         Reported by Simon Josefsson.
17256
17257 2007-10-28  Bruno Haible  <bruno@clisp.org>
17258
17259         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
17260         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
17261         HAVE_DECL_ISFINITE.
17262         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
17263         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
17264         HAVE_DECL_ISFINITE.
17265
17266 2007-10-28  Bruno Haible  <bruno@clisp.org>
17267
17268         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
17269         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
17270
17271 2007-10-28  Bruno Haible  <bruno@clisp.org>
17272
17273         Fix link errors with Sun C 5.0 on Solaris 10.
17274         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
17275         function is declared but not present in the compiler's libm.
17276         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
17277         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
17278         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
17279         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
17280         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
17281         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
17282         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
17283         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
17284         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
17285         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
17286         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
17287         HAVE_DECL_FLOORL.
17288
17289 2007-10-28  Bruno Haible  <bruno@clisp.org>
17290
17291         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
17292         gl_FUNC_FLOORL. Cache the result.
17293         (gl_FUNC_FLOORL): Use it.
17294         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
17295         gl_FUNC_CEILL. Cache the result.
17296         (gl_FUNC_CEILL): Use it.
17297
17298         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
17299         gl_FUNC_FLOOR. Cache the result.
17300         (gl_FUNC_FLOOR): Use it.
17301         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
17302         gl_FUNC_CEIL. Cache the result.
17303         (gl_FUNC_CEIL): Use it.
17304
17305         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
17306         gl_FUNC_FLOORF. Cache the result.
17307         (gl_FUNC_FLOORF): Use it.
17308         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
17309         gl_FUNC_CEILF. Cache the result.
17310         (gl_FUNC_CEILF): Use it.
17311
17312 2007-10-28  Bruno Haible  <bruno@clisp.org>
17313
17314         * gnulib-tool: Allow specifying the LGPL version number through
17315         --lgpl=2 or --lgpl=3.
17316         (func_usage): Document --lgpl with argument.
17317         Handle --lgpl=... arguments.
17318         (func_import): Recognize also gl_LGPL calls with an argument. When
17319         --lgpl=2 is used and the module's license is just LGPL, report an
17320         error. Set sed_transform_lib_file according to the lgpl variable. In
17321         the generated files, use --lgpl or gl_LGPL invocations with argument,
17322         if necessary.
17323         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
17324         an LGPv2+ license.
17325         * doc/gnulib-tool.texi (Modified imports): Update explanation of
17326         gl_LGPL macro.
17327
17328 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17329             Bruno Haible  <bruno@clisp.org>
17330
17331         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
17332         (u16_uctomb_aux): Likewise.
17333         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
17334         !HAVE_INLINE.
17335         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
17336
17337 2007-10-28  Bruno Haible  <bruno@clisp.org>
17338
17339         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
17340         Invoke AM_GETTEXT_OPTION if it exists.
17341         * modules/vasprintf: Likewise.
17342         * modules/verror: Likewise.
17343         * modules/xprintf: Likewise.
17344         * modules/xvasprintf: Likewise.
17345
17346 2007-10-27  Ben Pfaff  <blp@gnu.org>
17347
17348         * lib/math.in.h: Define isfinite macro and prototypes for
17349         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
17350         implementations.
17351         * m4/math_h.m4: New substitutions for isfinite module.
17352         * lib/isfinite.c: New file.
17353         * m4/isfinite.m4: New file.
17354         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
17355         * modules/isfinite: New file.
17356         * modules/isfinite-tests: New file.
17357         * tests/tests-isfinite.c: New file.
17358         * doc/functions/isfinite.texi: Mention isfinite module.
17359         * MODULES.html.sh: Mention new module.
17360
17361 2007-10-27  Ben Pfaff  <blp@gnu.org>
17362
17363         Ralf Wildenhues reported that Tru64 4.0D declares the round
17364         functions but does not have definitions.
17365         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
17366         cannot be found in any library, set the output variable to
17367         "missing" instead of "".
17368         * m4/round.m4: Also use our substitute if we cannot find round in
17369         any library, even if it is declared.
17370         * m4/roundf.m4: Likewise for roundf.
17371         * m4/roundl.m4: Likewise for roundl.
17372         * lib/math.in.h: Undefine roundf, round, roundl before defining
17373         their replacements, to allow for hypothetical systems where these
17374         may be defined as macros but not available in libraries.
17375
17376 2007-10-27  Bruno Haible  <bruno@clisp.org>
17377
17378         * doc/gnulib.texi: Invoke @firstparagraphindent.
17379         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
17380         changes in gnulib.
17381         (Source changes): New section.
17382
17383 2007-10-26  Bruno Haible  <bruno@clisp.org>
17384
17385         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
17386         borrowed from autoconf.
17387
17388 2007-10-26  Bruno Haible  <bruno@clisp.org>
17389
17390         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
17391         strerror returned the empty string. Needed on HP-UX 11.00.
17392
17393 2007-10-24  Micah Cowan  <micah@cowan.name>
17394
17395         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
17396         * build-aux/bootstrap: Remove support for now-unnecessary option,
17397         --cvs-user, and envvars CVS_USER, CVS_RSH.
17398
17399 2007-10-24  Jim Meyering  <meyering@redhat.com>
17400
17401         Avoid diagnostics from sha1sum when there is no cached checksum.
17402         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
17403         if the po.s1 file hasn't been created yet.
17404
17405         * build-aux/bootstrap: Sync from coreutils:
17406         2007-10-24  Jim Meyering  <meyering@redhat.com>
17407         Get gnulib from the git repository, not from an obsolete cvs one.
17408         * build-aux/bootstrap: Suggestion from Micah Cowan.
17409         2007-10-04  Jim Meyering  <jim@meyering.net>
17410         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
17411         (update_po_files): Work also when there are no .po files in po/.
17412
17413 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
17414
17415         * README: Append ".git" to git and cg examples.
17416         Problem reported by Benoit Sigoure.
17417
17418 2007-10-23  Micah Cowan  <micah@cowan.name>
17419
17420         * users.txt: Add wget.
17421
17422 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17423
17424         Fix linking of some unistdio tests on FreeBSD.
17425         * modules/unistdio/u16-vsnprintf-tests
17426         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
17427         * modules/unistdio/u16-vsprintf-tests
17428         (test_u16_vsnprintf1_LDADD): Likewise.
17429         * modules/unistdio/u32-vsnprintf-tests
17430         (test_u32_vsnprintf1_LDADD): Likewise.
17431         * modules/unistdio/u32-vsprintf-tests
17432         (test_u32_vsprintf1_LDADD): Likewise.
17433         * modules/unistdio/u8-vsnprintf-tests
17434         (test_u8_vsnprintf1_LDADD): Likewise.
17435         * modules/unistdio/u8-vsprintf-tests
17436         (test_u8_vsprintf1_LDADD): Likewise.
17437         * modules/unistdio/ulc-vsnprintf-tests
17438         (test_ulc_vsnprintf1_LDADD): Likewise.
17439         * modules/unistdio/ulc-vsprintf-tests
17440         (test_ulc_vsprintf1_LDADD): Likewise.
17441
17442         Fix linking of some uniconv tests on FreeBSD.
17443         * modules/uniconv/u16-conv-from-enc-tests
17444         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
17445         * modules/uniconv/u16-conv-to-enc-tests
17446         (test_u16_conv_to_enc_LDADD): Likewise.
17447         * modules/uniconv/u16-strconv-from-enc-tests
17448         (test_u16_strconv_from_enc_LDADD): Likewise.
17449         * modules/uniconv/u16-strconv-to-enc-tests
17450         (test_u16_strconv_to_enc_LDADD): Likewise.
17451         * modules/uniconv/u32-conv-from-enc-tests
17452         (test_u32_conv_from_enc_LDADD): Likewise.
17453         * modules/uniconv/u32-conv-to-enc-tests
17454         (test_u32_conv_to_enc_LDADD): Likewise.
17455         * modules/uniconv/u32-strconv-from-enc-tests
17456         (test_u32_strconv_from_enc_LDADD): Likewise.
17457         * modules/uniconv/u32-strconv-to-enc-tests
17458         (test_u32_strconv_to_enc_LDADD): Likewise.
17459         * modules/uniconv/u8-conv-from-enc-tests
17460         (test_u8_conv_from_enc_LDADD): Likewise.
17461         * modules/uniconv/u8-conv-to-enc-tests
17462         (test_u8_conv_to_enc_LDADD): Likewise.
17463         * modules/uniconv/u8-strconv-from-enc-tests
17464         (test_u8_strconv_from_enc_LDADD): Likewise.
17465         * modules/uniconv/u8-strconv-to-enc-tests
17466         (test_u8_strconv_to_enc_LDADD): Likewise.
17467
17468 2007-10-22  Bruno Haible  <bruno@clisp.org>
17469
17470         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
17471         size.
17472
17473 2007-10-22  Eric Blake  <ebb9@byu.net>
17474
17475         Tweak x*printf documentation.
17476         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
17477         variable name and comments.
17478         Suggested by Bruno Haible.
17479
17480 2007-10-22  Bruno Haible  <bruno@clisp.org>
17481
17482         * lib/acl.c (copy_acl): Fix file name in comment.
17483
17484 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
17485
17486         Fix Tru64 problem with stdbool.h.
17487         * lib/stdbool.in.h (false, true):
17488         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
17489         Don't declare as an enum in this situation; it runs afoul of Tru64.
17490         Problem reported by Steven M. Schweda in
17491         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
17492
17493 2007-10-22  Eric Blake  <ebb9@byu.net>
17494
17495         Also wrap vf?printf.
17496         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
17497         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
17498         (xvprintf, xvfprintf): New functions.
17499
17500 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17501
17502         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
17503         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
17504
17505         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
17506         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
17507
17508 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
17509
17510         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
17511         by Bruno Haible.
17512
17513 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17514
17515         * lib/getloadavg.c
17516         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
17517         Undef `sys' after including sys/table.h, for Tru64 4.0D.
17518
17519         * tests/test-i-ring.c: Work for C89.
17520
17521 2007-10-22  Bruno Haible  <bruno@clisp.org>
17522
17523         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
17524         -1u, in preprocessor expression, so that we don't test for the bug
17525         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
17526         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
17527
17528 2007-10-22  Eric Blake  <ebb9@byu.net>
17529
17530         * tests/test-yesno.sh: Silence stderr during test.
17531
17532 2007-10-22  Simon Josefsson  <simon@josefsson.org>
17533
17534         * modules/crypto/gc-camellia: New file.
17535
17536         * m4/gc-camellia.m4: New file.
17537
17538         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
17539
17540         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
17541
17542 2007-10-22  Simon Josefsson  <simon@josefsson.org>
17543
17544         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
17545         --help to stdout.  Reported by sms@antinode.org (Steven
17546         M. Schweda).
17547
17548 2007-10-22  Simon Josefsson  <simon@josefsson.org>
17549
17550         * users.txt: Fix link to libksba.
17551
17552 2007-10-21  Ben Pfaff  <blp@gnu.org>
17553
17554         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
17555         round.c roundf implementation that depends on floorf and ceilf to
17556         be tested unconditionally.
17557
17558 2007-10-21  Ben Pfaff  <blp@gnu.org>
17559
17560         * m4/check-libm-func.m4: Removed.
17561         * m4/check-math-lib.m4: New file.
17562         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
17563         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
17564         definition and lack of AC_LIBOBJ([roundf]).
17565         * m4/roundl.m4: Ditto, and similarly for roundl.
17566         * modules/round: Reference new m4 file.
17567         * modules/roundf: Ditto.
17568         * modules/roundl: Ditto.
17569         * tests/test-round2.c (main): Use ROUND instead of round.
17570         Bug report from Bruno Haible.
17571
17572 2007-10-21  Bruno Haible  <bruno@clisp.org>
17573
17574         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
17575         context.
17576
17577 2007-10-21  Bruno Haible  <bruno@clisp.org>
17578
17579         * tests/test-wcwidth.c (main): Allow negative result for some control
17580         characters.
17581
17582         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
17583         Needed on OSF/1 5.1.
17584
17585 2007-10-21  Bruno Haible  <bruno@clisp.org>
17586
17587         * tests/test-floorf1.c: Include isnanf.h.
17588         (main): Use isnanf() instead of isnan().
17589         * tests/test-ceilf1.c: Include isnanf.h.
17590         (main): Use isnanf() instead of isnan().
17591         * tests/test-truncf1.c: Include isnanf.h.
17592         (main): Use isnanf() instead of isnan().
17593         * tests/test-roundf1.c: Include isnanf.h.
17594         (main): Use isnanf() instead of isnan().
17595
17596 2007-10-21  Eric Blake  <ebb9@byu.net>
17597
17598         * users.txt: Update URL for m4.
17599
17600 2007-10-21  Bruno Haible  <bruno@clisp.org>
17601
17602         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
17603
17604 2007-10-21  Bruno Haible  <bruno@clisp.org>
17605
17606         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
17607         Git's management files if the CVS files are not present.
17608
17609 2007-10-20  Bruno Haible  <bruno@clisp.org>
17610
17611         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
17612         gcc-3.4.x.
17613
17614 2007-10-20  Ben Pfaff  <blp@gnu.org>
17615
17616         * lib/math.in.h: Declare round, roundf, roundl if we are providing
17617         implementations.
17618         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
17619         * lib/round.c: New file.
17620         * lib/roundf.c: New file.
17621         * lib/roundl.c: New file.
17622         * m4/round.m4: New file.
17623         * m4/roundf.m4: New file.
17624         * m4/roundl.m4: New file.
17625         * m4/check-libm-func-m4: New file.
17626         * modules/math: Replace round, roundf, roundl related @VARS@ in
17627         math.in.h.
17628         * modules/round: New file.
17629         * modules/round-tests: New file.
17630         * modules/roundf: New file.
17631         * modules/roundf-tests: New file.
17632         * modules/roundl: New file.
17633         * modules/roundl-tests: New file.
17634         * tests/test-round1.c: New file.
17635         * tests/test-round2.c: New file.
17636         * tests/test-roundf1.c: New file.
17637         * tests/test-roundf2.c: New file.
17638         * tests/test-roundl.c: New file.
17639         * doc/functions/round.texi: Mention round module.
17640         * doc/functions/roundf.texi: Mention roundf module.
17641         * doc/functions/roundl.texi: Mention roundl module.
17642         * MODULES.html.sh: Mention new modules.
17643         Thanks to Bruno Haible for suggestions.
17644
17645 2007-10-20  Jim Meyering  <meyering@redhat.com>
17646
17647         * lib/xprintf.c: Include <config.h> unconditionally.
17648
17649         Change xprintf's license to GPL.
17650         * modules/xprintf (License): s/LGPL/GPL/, since this module
17651         depends on modules (exit and exitfail) which are GPL.
17652         Suggestion from Bruno Haible.
17653
17654         xprintf fixes.
17655         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
17656         Use a clearer diagnostic.
17657         Patch from Bruno Haible.
17658
17659 2007-10-20  Bruno Haible  <bruno@clisp.org>
17660
17661         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
17662         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
17663         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17664
17665 2007-10-20  Bruno Haible  <bruno@clisp.org>
17666
17667         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
17668         precision in the comparison result > x - 1 or similar.
17669         * tests/test-ceilf2.c (correct_result_p): Likewise.
17670         * tests/test-truncf2.c (correct_result_p): Likewise.
17671         * tests/test-trunc2.c (correct_result_p): Likewise.
17672         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
17673
17674 2007-10-20  Bruno Haible  <bruno@clisp.org>
17675
17676         * modules/ceil: New file.
17677         * m4/ceil.m4: New file.
17678         * doc/functions/ceil.texi: Mention the 'ceil' module.
17679
17680 2007-10-20  Bruno Haible  <bruno@clisp.org>
17681
17682         * modules/floor: New file.
17683         * m4/floor.m4: New file.
17684         * doc/functions/floor.texi: Mention the 'floor' module.
17685
17686 2007-10-20  Bruno Haible  <bruno@clisp.org>
17687
17688         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
17689         of %a.
17690         * modules/floorf-tests (Depends-on): Likewise.
17691         * modules/truncf-tests (Depends-on): Likewise.
17692         * modules/trunc-tests (Depends-on): Likewise.
17693         Reported by Ben Pfaff.
17694
17695 2007-10-19  Jim Meyering  <meyering@redhat.com>
17696
17697         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
17698         Don't bother testing specific errno values.  Just test ferror.
17699
17700         New module: xprintf
17701         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
17702
17703 2007-10-19  Bruno Haible  <bruno@clisp.org>
17704
17705         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
17706         syntax.
17707         * modules/javaexec (Makefile.am): Likewise.
17708         * modules/relocatable-prog (Makefile.am): Likewise.
17709         Suggested by Jim Meyering.
17710
17711 2007-10-18  Bruno Haible  <bruno@clisp.org>
17712
17713         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
17714         Reported by Jim Meyering.
17715
17716 2007-10-18  Eric Blake  <ebb9@byu.net>
17717
17718         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
17719
17720 2007-10-18  Bruno Haible  <bruno@clisp.org>
17721
17722         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
17723         the format string into writable memory. Needed in Fortify conditions.
17724
17725 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
17726             Bruno Haible  <bruno@clisp.org>
17727
17728         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
17729         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
17730         * modules/trim (Depends-on): Add mbchar.
17731         (configure.ac): Add gl_FUNC_MBRTOWC.
17732         (Makefile.am): Augment lib_SOURCES.
17733
17734 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
17735
17736         Modify glob.c to use fstatat and dirfd, to simplify it.
17737         Suggested by Eric Blake.
17738         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
17739         Don't include <stdbool.h>; not used.
17740         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
17741         (link_exists_p): Simplify implementation, since we can now assume
17742         dirfd and fstatat.
17743         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
17744
17745 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17746
17747         * gnulib-tool (func_get_dependencies): Fix sed script to
17748         match only tests.
17749
17750 2007-10-17  Bruno Haible  <bruno@clisp.org>
17751
17752         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
17753         allow locale names without encoding suffix.
17754         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
17755         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
17756
17757 2007-10-16  Bruno Haible  <bruno@clisp.org>
17758
17759         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
17760         * lib/getgroups.c (getgroups): Likewise.
17761         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
17762
17763 2007-10-16  Bruno Haible  <bruno@clisp.org>
17764
17765         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
17766         * modules/malloc-posix (License): Likewise.
17767         * modules/realloc-posix (License): Likewise.
17768         * modules/calloc-posix (License): Likewise.
17769         * modules/intprops (License): Change from GPL to LGPL, with
17770         Paul Eggert's approval.
17771
17772 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
17773
17774         Merge glibc changes into lib/glob.c.
17775
17776         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
17777         2007-10-15 04:59:03 UTC.  Here are the changes:
17778
17779         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
17780
17781         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
17782
17783         * lib/glob.c: Add some branch prediction throughout.
17784
17785         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
17786
17787         [BZ #5103]
17788         * lib/glob.c (glob): Recognize patterns starting \/.
17789
17790         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
17791
17792         [BZ #3996]
17793         * lib/glob.c (attribute_hidden): Define if not defined.
17794         (glob): Unescape dirname, filename or username when needed and not
17795         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
17796         is NULL.  Handle unescaped [ in pattern without closing ].
17797         Don't pass GLOB_CHECK down to recursive glob for directories.
17798         (__glob_pattern_type): New function.
17799         (__glob_pattern_p): Implement using __glob_pattern_type.
17800         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
17801         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
17802         Remove unreachable code.
17803
17804         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
17805
17806         * lib/glob.c (glob_in_dir): Add some comments and asserts to
17807         explain why there are no leaks.
17808
17809         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
17810
17811         [BZ #3253]
17812         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
17813         time, rather allocate increasingly bigger arrays of pointers, if
17814         possible with alloca, if too large with malloc.
17815
17816 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
17817
17818         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
17819         Problem reported by H.Merijn Brand in
17820         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
17821         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
17822         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
17823
17824 2007-10-15  Bruno Haible  <bruno@clisp.org>
17825
17826         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
17827         with explicit rpl_ prefix.
17828         * lib/fopen.c (fopen): Likewise.
17829         * lib/freopen.c (freopen): Likewise.
17830         * lib/iconv.c (iconv): Likewise.
17831         * lib/iconv_close.c (iconv_close): Likewise.
17832
17833 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
17834
17835         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
17836
17837 2007-10-15  Bruno Haible  <bruno@clisp.org>
17838
17839         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
17840         <stddef.h> instead of <stdlib.h> since we only need NULL.
17841         Reported by Ben Pfaff <blp@cs.stanford.edu>.
17842
17843 2007-10-15  Bruno Haible  <bruno@clisp.org>
17844
17845         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
17846         Replace paragraph talking about LIBOBJS.
17847         Reported by Colin Watson <cjwatson@debian.org>.
17848
17849 2007-10-15  Bruno Haible  <bruno@clisp.org>
17850
17851         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
17852         <stdlib.h> before using NULL.
17853
17854 2007-10-15  Simon Josefsson  <simon@josefsson.org>
17855
17856         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
17857         Reported by Albert Chin <china@thewrittenword.com>.
17858
17859 2007-10-14  Bruno Haible  <bruno@clisp.org>
17860
17861         * modules/iconv_open-utf-tests: New file.
17862         * tests/test-iconv-utf.c: New file.
17863
17864         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
17865         * modules/iconv_open-utf: New file.
17866         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
17867         (iconv, iconv_close): New declarations.
17868         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
17869         be defined.
17870         (iconv_open): Add special handling of conversion between UTF-8 and
17871         UTF-{16,32}{BE,LE}.
17872         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
17873         * lib/iconv_close.c: New file.
17874         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
17875         gl_FUNC_ICONV_OPEN.
17876         (gl_FUNC_ICONV_OPEN): Use it.
17877         (gl_FUNC_ICONV_OPEN_UTF): New macro.
17878         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
17879         and REPLACE_ICONV_UTF.
17880         * modules/iconv_open (Depends-on): Add c-strcase.
17881         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
17882         ICONV_CONST.
17883         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
17884
17885 2007-10-13  Albert Chin  <china@thewrittenword.com>
17886             Bruno Haible  <bruno@clisp.org>
17887
17888         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
17889         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
17890
17891 2007-10-13  Bruno Haible  <bruno@clisp.org>
17892
17893         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
17894         defined, use the ISO C99 inline semantics.
17895         * lib/argp.h (ARGP_EI): Likewise.
17896
17897 2007-10-13  Bruno Haible  <bruno@clisp.org>
17898
17899         Handle 'inline' change in gcc 4.3.0.
17900         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
17901         argp_fmtstream_write, argp_fmtstream_set_lmargin,
17902         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
17903         argp_fmtstream_point): Disable 'extern' declaration if the function
17904         definition is going to be provided inline.
17905         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
17906         semantics, not the ISO C99 inline semantics.
17907         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
17908         'extern' declaration if the function definition is going to be provided
17909         inline.
17910         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
17911         the GNU C inline semantics, not the ISO C99 inline semantics. With
17912         GCC 4.2, avoid a warning.
17913
17914 2007-10-13  Bruno Haible  <bruno@clisp.org>
17915
17916         * lib/freading.h (freading): Enable the use of __freading for
17917         glibc >= 2.7.
17918         * lib/freading.c (freading): Likewise.
17919
17920 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
17921
17922         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
17923         "warning: C99 inline functions are not supported; using GNU89".
17924
17925 2007-10-12  Bruno Haible  <bruno@clisp.org>
17926
17927         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
17928         of 2.
17929         * tests/test-ceilf2.c: New file.
17930         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
17931
17932         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
17933         * modules/ceilf-tests: Update.
17934
17935 2007-10-12  Bruno Haible  <bruno@clisp.org>
17936
17937         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
17938         of 2.
17939         * tests/test-floorf2.c: New file.
17940         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
17941
17942         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
17943         * modules/floorf-tests: Update.
17944
17945 2007-10-12  Bruno Haible  <bruno@clisp.org>
17946
17947         * tests/test-trunc2.c: New file.
17948         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
17949
17950         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
17951         * modules/trunc-tests: Update.
17952
17953 2007-10-12  Bruno Haible  <bruno@clisp.org>
17954
17955         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
17956         of 2.
17957         * tests/test-truncf2.c: New file.
17958         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
17959
17960         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
17961         * modules/truncf-tests: Update.
17962
17963 2007-10-11  Eric Blake  <ebb9@byu.net>
17964
17965         Don't claim strerror is broken on Interix.
17966         * doc/functions/strerror.texi (strerror): Known broken systems are
17967         now Solaris 8, and not Interix.
17968         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
17969         Interix on cross-compile.
17970         Reported by Martin Koeppe in
17971         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
17972
17973 2007-10-11  Bruno Haible  <bruno@clisp.org>
17974
17975         * modules/i-ring-tests: New file.
17976         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
17977         instead of assert.
17978
17979 2007-10-11  Bruno Haible  <bruno@clisp.org>
17980
17981         * modules/filenamecat-tests: New file.
17982         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
17983         * lib/filenamecat.c: Remove test code.
17984
17985 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
17986
17987         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
17988
17989         * lib/strerror.c: Include <string.h> always, to test interface,
17990         and to remove the need for the dummy.
17991         Include intprops.h to compute width instead of doing it ourselves
17992         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
17993         (strerror): Define it to return NULL if there's no system strerror.
17994         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
17995         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
17996         ancient pre-strerror Unix systems well any more.  Saying "unknown
17997         system error" is enough.
17998         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
17999         simpler strerror.c implementation.
18000         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
18001         Simplify the tests to reflect the simpler strerror implementation.
18002         * modules/strerror (Depends-on): Add intprops.
18003
18004 2007-10-09  Eric Blake  <ebb9@byu.net>
18005
18006         Silence test-fpending.
18007         * modules/fpending-tests (Files): Add wrapper script.
18008         * tests/test-fpending.sh: New file.
18009
18010 2007-10-09  Bruno Haible  <bruno@clisp.org>
18011
18012         * MODULES.html.sh (func_module): Don't create a hyperlink for
18013         function names like 'printf_frexp'.
18014         (Misc): Add crc, memxor.
18015         (Characteristics of floating types): New section.
18016         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
18017         isnanf-nolibm, signbit, trunc, truncf, truncl.
18018         (Enhancements for ISO C 99 functions): New subsection Input/output.
18019         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
18020         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
18021         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
18022         (Compatibility checks for POSIX:2001 functions): Add clock-time.
18023         (Enhancements for POSIX:2001 functions): Add chdir-long.
18024         (File system functions): Add areadlink, chdir-safer, read-file.
18025         Remove cycle-check.
18026         (File system as inode set): New section.
18027         (Date and time): Add gethrxtime.
18028         (Multithreading): Add openmp.
18029         (Internationalization functions): Add localename.
18030         (Unicode string functions): Add unistr/u*-mbsnlen.
18031         (Support for maintaining and releasing projects): Add git-version-gen.
18032         (Lone files): Remove directories.
18033
18034 2007-10-08  Ben Pfaff  <blp@gnu.org>
18035
18036         * lib/xmalloca.h: Fix typo in comment.
18037
18038 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
18039
18040         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
18041         when avoiding problems with integer overflow.  Use a portable test
18042         instead.
18043
18044 2007-10-08  Simon Josefsson  <simon@josefsson.org>
18045
18046         * modules/dummy (License): Change to LGPLv2+.
18047         * modules/float (License): Likewise
18048         * modules/realloc (License): Likewise
18049         * modules/stdlib (License): Likewise
18050
18051 2007-10-07  Bruno Haible  <bruno@clisp.org>
18052
18053         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
18054         * floor.c (TWO_MANT_DIG): Likewise.
18055         * ceil.c (TWO_MANT_DIG): Likewise.
18056         Reported by Ben Pfaff.
18057
18058 2007-10-07  Bruno Haible  <bruno@clisp.org>
18059
18060         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
18061         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
18062         * lib/frexp.c (FUNC): Likewise.
18063         * lib/printf-frexp.h (printf_frexp): Likewise.
18064         * lib/printf-frexpl.h (printf_frexpl): Likewise.
18065         * lib/printf-frexp.c (FUNC): Likewise.
18066         Suggested by Jim Meyering.
18067
18068 2007-10-07  Jim Meyering  <meyering@redhat.com>
18069
18070         Make xnanosleep's integer overflow test more robust.
18071         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
18072         so that gcc-4.3.0 doesn't optimize away this test for overflow.
18073
18074 2007-10-07  Bruno Haible  <bruno@clisp.org>
18075
18076         * NEWS: Mention the license change.
18077
18078         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
18079         abbreviations in the modules files.
18080
18081         Change copyright notice from GPLv2+ to GPLv3+.
18082         * README: Change copyright notice.
18083         * MODULES.html.sh: Likewise.
18084         * build-aux/bootstrap.conf: Likewise.
18085         * build-aux/config.libpath: Likewise.
18086         * build-aux/csharpcomp.sh.in: Likewise.
18087         * build-aux/csharpexec.sh.in: Likewise.
18088         * build-aux/install-reloc: Likewise.
18089         * build-aux/javacomp.sh.in: Likewise.
18090         * build-aux/javaexec.sh.in: Likewise.
18091         * build-aux/ldd.sh.in: Likewise.
18092         * build-aux/reloc-ldflags: Likewise.
18093         * build-aux/relocatable.sh.in: Likewise.
18094         * build-aux/x-to-1.in: Likewise.
18095         * check-module: Likewise.
18096         * config/srclistvars.sh: Likewise.
18097         * gnulib-tool: Likewise.
18098         * lib/acl-internal.h: Likewise.
18099         * lib/acl.c: Likewise.
18100         * lib/acl.h: Likewise.
18101         * lib/acl_entries.c: Likewise.
18102         * lib/areadlink-with-size.c: Likewise.
18103         * lib/areadlink.c: Likewise.
18104         * lib/areadlink.h: Likewise.
18105         * lib/argmatch.c: Likewise.
18106         * lib/argmatch.h: Likewise.
18107         * lib/argp-ba.c: Likewise.
18108         * lib/argp-eexst.c: Likewise.
18109         * lib/argp-fmtstream.c: Likewise.
18110         * lib/argp-fmtstream.h: Likewise.
18111         * lib/argp-fs-xinl.c: Likewise.
18112         * lib/argp-help.c: Likewise.
18113         * lib/argp-namefrob.h: Likewise.
18114         * lib/argp-parse.c: Likewise.
18115         * lib/argp-pin.c: Likewise.
18116         * lib/argp-pv.c: Likewise.
18117         * lib/argp-pvh.c: Likewise.
18118         * lib/argp-xinl.c: Likewise.
18119         * lib/argp.h: Likewise.
18120         * lib/at-func.c: Likewise.
18121         * lib/atanl.c: Likewise.
18122         * lib/backupfile.c: Likewise.
18123         * lib/backupfile.h: Likewise.
18124         * lib/basename.c: Likewise.
18125         * lib/binary-io.h: Likewise.
18126         * lib/byteswap.in.h: Likewise.
18127         * lib/c-stack.c: Likewise.
18128         * lib/c-stack.h: Likewise.
18129         * lib/c-strcasestr.c: Likewise.
18130         * lib/c-strcasestr.h: Likewise.
18131         * lib/c-strstr.c: Likewise.
18132         * lib/c-strstr.h: Likewise.
18133         * lib/c-strtod.c: Likewise.
18134         * lib/calloc.c: Likewise.
18135         * lib/canon-host.c: Likewise.
18136         * lib/canon-host.h: Likewise.
18137         * lib/canonicalize-lgpl.c: Likewise.
18138         * lib/canonicalize.c: Likewise.
18139         * lib/canonicalize.h: Likewise.
18140         * lib/ceil.c: Likewise.
18141         * lib/ceilf.c: Likewise.
18142         * lib/ceill.c: Likewise.
18143         * lib/chdir-long.c: Likewise.
18144         * lib/chdir-long.h: Likewise.
18145         * lib/chdir-safer.c: Likewise.
18146         * lib/chdir-safer.h: Likewise.
18147         * lib/chown.c: Likewise.
18148         * lib/classpath.c: Likewise.
18149         * lib/classpath.h: Likewise.
18150         * lib/clean-temp.c: Likewise.
18151         * lib/clean-temp.h: Likewise.
18152         * lib/cloexec.c: Likewise.
18153         * lib/close-stream.c: Likewise.
18154         * lib/closein.c: Likewise.
18155         * lib/closein.h: Likewise.
18156         * lib/closeout.c: Likewise.
18157         * lib/closeout.h: Likewise.
18158         * lib/concat-filename.c: Likewise.
18159         * lib/copy-file.c: Likewise.
18160         * lib/copy-file.h: Likewise.
18161         * lib/count-one-bits.h: Likewise.
18162         * lib/crc.c: Likewise.
18163         * lib/crc.h: Likewise.
18164         * lib/creat-safer.c: Likewise.
18165         * lib/csharpcomp.c: Likewise.
18166         * lib/csharpcomp.h: Likewise.
18167         * lib/csharpexec.c: Likewise.
18168         * lib/csharpexec.h: Likewise.
18169         * lib/cycle-check.c: Likewise.
18170         * lib/cycle-check.h: Likewise.
18171         * lib/diacrit.c: Likewise.
18172         * lib/diacrit.h: Likewise.
18173         * lib/diffseq.h: Likewise.
18174         * lib/dirchownmod.c: Likewise.
18175         * lib/dirent.in.h: Likewise.
18176         * lib/dirfd.c: Likewise.
18177         * lib/dirfd.h: Likewise.
18178         * lib/dirname.c: Likewise.
18179         * lib/dirname.h: Likewise.
18180         * lib/dummy.c: Likewise.
18181         * lib/dup-safer.c: Likewise.
18182         * lib/dup2.c: Likewise.
18183         * lib/eealloc.h: Likewise.
18184         * lib/error.c: Likewise.
18185         * lib/error.h: Likewise.
18186         * lib/euidaccess.c: Likewise.
18187         * lib/exclude.c: Likewise.
18188         * lib/exclude.h: Likewise.
18189         * lib/execute.c: Likewise.
18190         * lib/execute.h: Likewise.
18191         * lib/exitfail.c: Likewise.
18192         * lib/exitfail.h: Likewise.
18193         * lib/expl.c: Likewise.
18194         * lib/fatal-signal.c: Likewise.
18195         * lib/fatal-signal.h: Likewise.
18196         * lib/fbufmode.c: Likewise.
18197         * lib/fbufmode.h: Likewise.
18198         * lib/fchdir.c: Likewise.
18199         * lib/fchmodat.c: Likewise.
18200         * lib/fchownat.c: Likewise.
18201         * lib/fcntl--.h: Likewise.
18202         * lib/fcntl-safer.h: Likewise.
18203         * lib/fcntl.in.h: Likewise.
18204         * lib/fd-safer.c: Likewise.
18205         * lib/fflush.c: Likewise.
18206         * lib/file-has-acl.c: Likewise.
18207         * lib/file-set.c: Likewise.
18208         * lib/file-type.c: Likewise.
18209         * lib/file-type.h: Likewise.
18210         * lib/fileblocks.c: Likewise.
18211         * lib/filemode.c: Likewise.
18212         * lib/filemode.h: Likewise.
18213         * lib/filename.h: Likewise.
18214         * lib/filenamecat.c: Likewise.
18215         * lib/filenamecat.h: Likewise.
18216         * lib/findprog.c: Likewise.
18217         * lib/findprog.h: Likewise.
18218         * lib/float.in.h: Likewise.
18219         * lib/floor.c: Likewise.
18220         * lib/floorf.c: Likewise.
18221         * lib/floorl.c: Likewise.
18222         * lib/fopen-safer.c: Likewise.
18223         * lib/fopen.c: Likewise.
18224         * lib/fpending.c: Likewise.
18225         * lib/fpending.h: Likewise.
18226         * lib/fprintf.c: Likewise.
18227         * lib/fprintftime.h: Likewise.
18228         * lib/fpucw.h: Likewise.
18229         * lib/fpurge.c: Likewise.
18230         * lib/fpurge.h: Likewise.
18231         * lib/freadable.c: Likewise.
18232         * lib/freadable.h: Likewise.
18233         * lib/freadahead.c: Likewise.
18234         * lib/freadahead.h: Likewise.
18235         * lib/freading.c: Likewise.
18236         * lib/freading.h: Likewise.
18237         * lib/free.c: Likewise.
18238         * lib/freopen.c: Likewise.
18239         * lib/frexp.c: Likewise.
18240         * lib/frexpl.c: Likewise.
18241         * lib/fseek.c: Likewise.
18242         * lib/fseterr.c: Likewise.
18243         * lib/fseterr.h: Likewise.
18244         * lib/fstatat.c: Likewise.
18245         * lib/fstrcmp.c: Likewise.
18246         * lib/fstrcmp.h: Likewise.
18247         * lib/fsusage.c: Likewise.
18248         * lib/fsusage.h: Likewise.
18249         * lib/ftell.c: Likewise.
18250         * lib/ftello.c: Likewise.
18251         * lib/fts-cycle.c: Likewise.
18252         * lib/fts.c: Likewise.
18253         * lib/fts_.h: Likewise.
18254         * lib/full-read.c: Likewise.
18255         * lib/full-read.h: Likewise.
18256         * lib/full-write.c: Likewise.
18257         * lib/full-write.h: Likewise.
18258         * lib/fwritable.c: Likewise.
18259         * lib/fwritable.h: Likewise.
18260         * lib/fwriteerror.c: Likewise.
18261         * lib/fwriteerror.h: Likewise.
18262         * lib/fwriting.c: Likewise.
18263         * lib/fwriting.h: Likewise.
18264         * lib/gcd.c: Likewise.
18265         * lib/gcd.h: Likewise.
18266         * lib/getcwd.c: Likewise.
18267         * lib/getdate.h: Likewise.
18268         * lib/getdate.y: Likewise.
18269         * lib/getdomainname.c: Likewise.
18270         * lib/getdomainname.h: Likewise.
18271         * lib/getgroups.c: Likewise.
18272         * lib/gethostname.c: Likewise.
18273         * lib/gethrxtime.c: Likewise.
18274         * lib/gethrxtime.h: Likewise.
18275         * lib/getloadavg.c: Likewise.
18276         * lib/getndelim2.c: Likewise.
18277         * lib/getndelim2.h: Likewise.
18278         * lib/getnline.c: Likewise.
18279         * lib/getnline.h: Likewise.
18280         * lib/getopt.c: Likewise.
18281         * lib/getopt.in.h: Likewise.
18282         * lib/getopt1.c: Likewise.
18283         * lib/getopt_int.h: Likewise.
18284         * lib/getpagesize.h: Likewise.
18285         * lib/getsubopt.c: Likewise.
18286         * lib/gettime.c: Likewise.
18287         * lib/getugroups.c: Likewise.
18288         * lib/getugroups.h: Likewise.
18289         * lib/getusershell.c: Likewise.
18290         * lib/gl_anyavltree_list1.h: Likewise.
18291         * lib/gl_anyavltree_list2.h: Likewise.
18292         * lib/gl_anyhash_list1.h: Likewise.
18293         * lib/gl_anyhash_list2.h: Likewise.
18294         * lib/gl_anylinked_list1.h: Likewise.
18295         * lib/gl_anylinked_list2.h: Likewise.
18296         * lib/gl_anyrbtree_list1.h: Likewise.
18297         * lib/gl_anyrbtree_list2.h: Likewise.
18298         * lib/gl_anytree_list1.h: Likewise.
18299         * lib/gl_anytree_list2.h: Likewise.
18300         * lib/gl_anytree_oset.h: Likewise.
18301         * lib/gl_anytreehash_list1.h: Likewise.
18302         * lib/gl_anytreehash_list2.h: Likewise.
18303         * lib/gl_array_list.c: Likewise.
18304         * lib/gl_array_list.h: Likewise.
18305         * lib/gl_array_oset.c: Likewise.
18306         * lib/gl_array_oset.h: Likewise.
18307         * lib/gl_avltree_list.c: Likewise.
18308         * lib/gl_avltree_list.h: Likewise.
18309         * lib/gl_avltree_oset.c: Likewise.
18310         * lib/gl_avltree_oset.h: Likewise.
18311         * lib/gl_avltreehash_list.c: Likewise.
18312         * lib/gl_avltreehash_list.h: Likewise.
18313         * lib/gl_carray_list.c: Likewise.
18314         * lib/gl_carray_list.h: Likewise.
18315         * lib/gl_linked_list.c: Likewise.
18316         * lib/gl_linked_list.h: Likewise.
18317         * lib/gl_linkedhash_list.c: Likewise.
18318         * lib/gl_linkedhash_list.h: Likewise.
18319         * lib/gl_list.c: Likewise.
18320         * lib/gl_list.h: Likewise.
18321         * lib/gl_oset.c: Likewise.
18322         * lib/gl_oset.h: Likewise.
18323         * lib/gl_rbtree_list.c: Likewise.
18324         * lib/gl_rbtree_list.h: Likewise.
18325         * lib/gl_rbtree_oset.c: Likewise.
18326         * lib/gl_rbtree_oset.h: Likewise.
18327         * lib/gl_rbtreehash_list.c: Likewise.
18328         * lib/gl_rbtreehash_list.h: Likewise.
18329         * lib/gl_sublist.c: Likewise.
18330         * lib/gl_sublist.h: Likewise.
18331         * lib/group-member.c: Likewise.
18332         * lib/group-member.h: Likewise.
18333         * lib/hard-locale.c: Likewise.
18334         * lib/hard-locale.h: Likewise.
18335         * lib/hash-pjw.c: Likewise.
18336         * lib/hash-pjw.h: Likewise.
18337         * lib/hash-triple.c: Likewise.
18338         * lib/hash.c: Likewise.
18339         * lib/hash.h: Likewise.
18340         * lib/human.c: Likewise.
18341         * lib/human.h: Likewise.
18342         * lib/i-ring.c: Likewise.
18343         * lib/i-ring.h: Likewise.
18344         * lib/idcache.c: Likewise.
18345         * lib/imaxabs.c: Likewise.
18346         * lib/imaxdiv.c: Likewise.
18347         * lib/inet_pton.c: Likewise.
18348         * lib/inet_pton.h: Likewise.
18349         * lib/intprops.h: Likewise.
18350         * lib/inttostr.c: Likewise.
18351         * lib/inttostr.h: Likewise.
18352         * lib/inttypes.in.h: Likewise.
18353         * lib/isapipe.c: Likewise.
18354         * lib/isdir.c: Likewise.
18355         * lib/isnan.c: Likewise.
18356         * lib/isnan.h: Likewise.
18357         * lib/isnanf.c: Likewise.
18358         * lib/isnanf.h: Likewise.
18359         * lib/isnanl-nolibm.h: Likewise.
18360         * lib/isnanl.c: Likewise.
18361         * lib/isnanl.h: Likewise.
18362         * lib/javacomp.c: Likewise.
18363         * lib/javacomp.h: Likewise.
18364         * lib/javaexec.c: Likewise.
18365         * lib/javaexec.h: Likewise.
18366         * lib/javaversion.c: Likewise.
18367         * lib/javaversion.h: Likewise.
18368         * lib/javaversion.java: Likewise.
18369         * lib/lbrkprop.h: Likewise.
18370         * lib/lchmod.h: Likewise.
18371         * lib/lchown.c: Likewise.
18372         * lib/ldexpl.c: Likewise.
18373         * lib/linebreak.c: Likewise.
18374         * lib/linebreak.h: Likewise.
18375         * lib/linebuffer.c: Likewise.
18376         * lib/linebuffer.h: Likewise.
18377         * lib/locale.in.h: Likewise.
18378         * lib/logl.c: Likewise.
18379         * lib/long-options.c: Likewise.
18380         * lib/long-options.h: Likewise.
18381         * lib/lstat.c: Likewise.
18382         * lib/lstat.h: Likewise.
18383         * lib/math.in.h: Likewise.
18384         * lib/mbchar.c: Likewise.
18385         * lib/mbchar.h: Likewise.
18386         * lib/mbfile.h: Likewise.
18387         * lib/mbiter.h: Likewise.
18388         * lib/mbscasecmp.c: Likewise.
18389         * lib/mbscasestr.c: Likewise.
18390         * lib/mbschr.c: Likewise.
18391         * lib/mbscspn.c: Likewise.
18392         * lib/mbslen.c: Likewise.
18393         * lib/mbsncasecmp.c: Likewise.
18394         * lib/mbsnlen.c: Likewise.
18395         * lib/mbspbrk.c: Likewise.
18396         * lib/mbspcasecmp.c: Likewise.
18397         * lib/mbsrchr.c: Likewise.
18398         * lib/mbssep.c: Likewise.
18399         * lib/mbsspn.c: Likewise.
18400         * lib/mbsstr.c: Likewise.
18401         * lib/mbstok_r.c: Likewise.
18402         * lib/mbswidth.c: Likewise.
18403         * lib/mbswidth.h: Likewise.
18404         * lib/mbuiter.h: Likewise.
18405         * lib/memcasecmp.c: Likewise.
18406         * lib/memcasecmp.h: Likewise.
18407         * lib/memchr.c: Likewise.
18408         * lib/memcmp.c: Likewise.
18409         * lib/memcoll.c: Likewise.
18410         * lib/memcoll.h: Likewise.
18411         * lib/memcpy.c: Likewise.
18412         * lib/memrchr.c: Likewise.
18413         * lib/mkancesdirs.c: Likewise.
18414         * lib/mkdir-p.c: Likewise.
18415         * lib/mkdir-p.h: Likewise.
18416         * lib/mkdir.c: Likewise.
18417         * lib/mkdirat.c: Likewise.
18418         * lib/mkdtemp.c: Likewise.
18419         * lib/mkstemp-safer.c: Likewise.
18420         * lib/mkstemp.c: Likewise.
18421         * lib/modechange.c: Likewise.
18422         * lib/modechange.h: Likewise.
18423         * lib/mountlist.c: Likewise.
18424         * lib/mountlist.h: Likewise.
18425         * lib/mpsort.c: Likewise.
18426         * lib/nanosleep.c: Likewise.
18427         * lib/obstack.c: Likewise.
18428         * lib/obstack.h: Likewise.
18429         * lib/open-safer.c: Likewise.
18430         * lib/open.c: Likewise.
18431         * lib/openat-die.c: Likewise.
18432         * lib/openat-priv.h: Likewise.
18433         * lib/openat-proc.c: Likewise.
18434         * lib/openat.c: Likewise.
18435         * lib/openat.h: Likewise.
18436         * lib/pagealign_alloc.c: Likewise.
18437         * lib/pagealign_alloc.h: Likewise.
18438         * lib/physmem.c: Likewise.
18439         * lib/physmem.h: Likewise.
18440         * lib/pipe-safer.c: Likewise.
18441         * lib/pipe.c: Likewise.
18442         * lib/pipe.h: Likewise.
18443         * lib/posixtm.c: Likewise.
18444         * lib/posixtm.h: Likewise.
18445         * lib/posixver.c: Likewise.
18446         * lib/printf-frexp.c: Likewise.
18447         * lib/printf-frexp.h: Likewise.
18448         * lib/printf-frexpl.c: Likewise.
18449         * lib/printf-frexpl.h: Likewise.
18450         * lib/printf.c: Likewise.
18451         * lib/progname.c: Likewise.
18452         * lib/progname.h: Likewise.
18453         * lib/progreloc.c: Likewise.
18454         * lib/putenv.c: Likewise.
18455         * lib/quote.c: Likewise.
18456         * lib/quote.h: Likewise.
18457         * lib/quotearg.c: Likewise.
18458         * lib/quotearg.h: Likewise.
18459         * lib/raise.c: Likewise.
18460         * lib/readline.c: Likewise.
18461         * lib/readline.h: Likewise.
18462         * lib/readlink.c: Likewise.
18463         * lib/readtokens.c: Likewise.
18464         * lib/readtokens.h: Likewise.
18465         * lib/readtokens0.c: Likewise.
18466         * lib/readtokens0.h: Likewise.
18467         * lib/readutmp.c: Likewise.
18468         * lib/readutmp.h: Likewise.
18469         * lib/realloc.c: Likewise.
18470         * lib/relocwrapper.c: Likewise.
18471         * lib/rename-dest-slash.c: Likewise.
18472         * lib/rename.c: Likewise.
18473         * lib/rmdir.c: Likewise.
18474         * lib/rpmatch.c: Likewise.
18475         * lib/safe-read.c: Likewise.
18476         * lib/safe-read.h: Likewise.
18477         * lib/safe-write.c: Likewise.
18478         * lib/safe-write.h: Likewise.
18479         * lib/same-inode.h: Likewise.
18480         * lib/same.c: Likewise.
18481         * lib/same.h: Likewise.
18482         * lib/save-cwd.c: Likewise.
18483         * lib/save-cwd.h: Likewise.
18484         * lib/savedir.c: Likewise.
18485         * lib/savedir.h: Likewise.
18486         * lib/savewd.c: Likewise.
18487         * lib/savewd.h: Likewise.
18488         * lib/search.in.h: Likewise.
18489         * lib/setenv.c: Likewise.
18490         * lib/setenv.h: Likewise.
18491         * lib/settime.c: Likewise.
18492         * lib/sh-quote.c: Likewise.
18493         * lib/sh-quote.h: Likewise.
18494         * lib/sig2str.c: Likewise.
18495         * lib/sig2str.h: Likewise.
18496         * lib/signal.in.h: Likewise.
18497         * lib/signbitd.c: Likewise.
18498         * lib/signbitf.c: Likewise.
18499         * lib/signbitl.c: Likewise.
18500         * lib/sigprocmask.c: Likewise.
18501         * lib/sincosl.c: Likewise.
18502         * lib/sleep.c: Likewise.
18503         * lib/sprintf.c: Likewise.
18504         * lib/sqrtl.c: Likewise.
18505         * lib/stat-time.h: Likewise.
18506         * lib/stdio--.h: Likewise.
18507         * lib/stdio-safer.h: Likewise.
18508         * lib/stdlib--.h: Likewise.
18509         * lib/stdlib-safer.h: Likewise.
18510         * lib/stdlib.in.h: Likewise.
18511         * lib/stpcpy.c: Likewise.
18512         * lib/stpncpy.c: Likewise.
18513         * lib/strchrnul.c: Likewise.
18514         * lib/strcspn.c: Likewise.
18515         * lib/strerror.c: Likewise.
18516         * lib/strftime.c: Likewise.
18517         * lib/strftime.h: Likewise.
18518         * lib/striconveh.c: Likewise.
18519         * lib/striconveh.h: Likewise.
18520         * lib/striconveha.c: Likewise.
18521         * lib/striconveha.h: Likewise.
18522         * lib/stripslash.c: Likewise.
18523         * lib/strnlen1.c: Likewise.
18524         * lib/strnlen1.h: Likewise.
18525         * lib/strtod.c: Likewise.
18526         * lib/strtoimax.c: Likewise.
18527         * lib/strtok_r.c: Likewise.
18528         * lib/strtol.c: Likewise.
18529         * lib/strtoll.c: Likewise.
18530         * lib/strtoul.c: Likewise.
18531         * lib/strtoull.c: Likewise.
18532         * lib/sysexits.in.h: Likewise.
18533         * lib/tempname.c: Likewise.
18534         * lib/tempname.h: Likewise.
18535         * lib/timespec.h: Likewise.
18536         * lib/tls.c: Likewise.
18537         * lib/tls.h: Likewise.
18538         * lib/tmpdir.c: Likewise.
18539         * lib/tmpdir.h: Likewise.
18540         * lib/tmpfile-safer.c: Likewise.
18541         * lib/tmpfile.c: Likewise.
18542         * lib/trigl.c: Likewise.
18543         * lib/trigl.h: Likewise.
18544         * lib/trim.c: Likewise.
18545         * lib/trim.h: Likewise.
18546         * lib/trunc.c: Likewise.
18547         * lib/truncf.c: Likewise.
18548         * lib/truncl.c: Likewise.
18549         * lib/tsearch.c: Likewise.
18550         * lib/unicodeio.c: Likewise.
18551         * lib/unicodeio.h: Likewise.
18552         * lib/unistd--.h: Likewise.
18553         * lib/unistd-safer.h: Likewise.
18554         * lib/unistdio/ulc-fprintf.c: Likewise.
18555         * lib/unistdio/ulc-vfprintf.c: Likewise.
18556         * lib/unlinkdir.c: Likewise.
18557         * lib/unlinkdir.h: Likewise.
18558         * lib/unlocked-io.h: Likewise.
18559         * lib/unsetenv.c: Likewise.
18560         * lib/userspec.c: Likewise.
18561         * lib/utime.c: Likewise.
18562         * lib/utimecmp.c: Likewise.
18563         * lib/utimecmp.h: Likewise.
18564         * lib/utimens.c: Likewise.
18565         * lib/verify.h: Likewise.
18566         * lib/verror.c: Likewise.
18567         * lib/verror.h: Likewise.
18568         * lib/version-etc-fsf.c: Likewise.
18569         * lib/version-etc.c: Likewise.
18570         * lib/version-etc.h: Likewise.
18571         * lib/vfprintf.c: Likewise.
18572         * lib/vprintf.c: Likewise.
18573         * lib/vsprintf.c: Likewise.
18574         * lib/w32spawn.h: Likewise.
18575         * lib/wait-process.c: Likewise.
18576         * lib/wait-process.h: Likewise.
18577         * lib/wcwidth.c: Likewise.
18578         * lib/write-any-file.c: Likewise.
18579         * lib/xalloc-die.c: Likewise.
18580         * lib/xalloc.h: Likewise.
18581         * lib/xasprintf.c: Likewise.
18582         * lib/xgetcwd.c: Likewise.
18583         * lib/xgetcwd.h: Likewise.
18584         * lib/xgetdomainname.c: Likewise.
18585         * lib/xgetdomainname.h: Likewise.
18586         * lib/xgethostname.c: Likewise.
18587         * lib/xmalloc.c: Likewise.
18588         * lib/xmalloca.c: Likewise.
18589         * lib/xmalloca.h: Likewise.
18590         * lib/xmemcoll.c: Likewise.
18591         * lib/xnanosleep.c: Likewise.
18592         * lib/xreadlink.c: Likewise.
18593         * lib/xreadlink.h: Likewise.
18594         * lib/xsetenv.c: Likewise.
18595         * lib/xsetenv.h: Likewise.
18596         * lib/xstriconv.c: Likewise.
18597         * lib/xstriconv.h: Likewise.
18598         * lib/xstrndup.c: Likewise.
18599         * lib/xstrndup.h: Likewise.
18600         * lib/xstrtod.c: Likewise.
18601         * lib/xstrtod.h: Likewise.
18602         * lib/xstrtol-error.c: Likewise.
18603         * lib/xstrtol.c: Likewise.
18604         * lib/xstrtol.h: Likewise.
18605         * lib/xtime.h: Likewise.
18606         * lib/xvasprintf.c: Likewise.
18607         * lib/xvasprintf.h: Likewise.
18608         * lib/yesno.c: Likewise.
18609         * lib/yesno.h: Likewise.
18610         * posix-modules: Likewise.
18611         * tests/test-alloca-opt.c: Likewise.
18612         * tests/test-arcfour.c: Likewise.
18613         * tests/test-arctwo.c: Likewise.
18614         * tests/test-argmatch.c: Likewise.
18615         * tests/test-argp-2.sh: Likewise.
18616         * tests/test-argp.c: Likewise.
18617         * tests/test-arpa_inet.c: Likewise.
18618         * tests/test-array_list.c: Likewise.
18619         * tests/test-array_oset.c: Likewise.
18620         * tests/test-atexit.c: Likewise.
18621         * tests/test-avltree_list.c: Likewise.
18622         * tests/test-avltree_oset.c: Likewise.
18623         * tests/test-avltreehash_list.c: Likewise.
18624         * tests/test-base64.c: Likewise.
18625         * tests/test-binary-io.c: Likewise.
18626         * tests/test-byteswap.c: Likewise.
18627         * tests/test-c-ctype.c: Likewise.
18628         * tests/test-c-strcasecmp.c: Likewise.
18629         * tests/test-c-strcasestr.c: Likewise.
18630         * tests/test-c-strncasecmp.c: Likewise.
18631         * tests/test-c-strstr.c: Likewise.
18632         * tests/test-canonicalize-lgpl.c: Likewise.
18633         * tests/test-canonicalize.c: Likewise.
18634         * tests/test-carray_list.c: Likewise.
18635         * tests/test-ceilf.c: Likewise.
18636         * tests/test-ceill.c: Likewise.
18637         * tests/test-count-one-bits.c: Likewise.
18638         * tests/test-crc.c: Likewise.
18639         * tests/test-dirname.c: Likewise.
18640         * tests/test-fbufmode.c: Likewise.
18641         * tests/test-fcntl.c: Likewise.
18642         * tests/test-fflush.c: Likewise.
18643         * tests/test-floorf.c: Likewise.
18644         * tests/test-floorl.c: Likewise.
18645         * tests/test-fopen.c: Likewise.
18646         * tests/test-fprintf-posix.c: Likewise.
18647         * tests/test-fprintf-posix.h: Likewise.
18648         * tests/test-fpurge.c: Likewise.
18649         * tests/test-freadable.c: Likewise.
18650         * tests/test-freadahead.c: Likewise.
18651         * tests/test-freading.c: Likewise.
18652         * tests/test-freopen.c: Likewise.
18653         * tests/test-frexp.c: Likewise.
18654         * tests/test-frexpl.c: Likewise.
18655         * tests/test-fseek.c: Likewise.
18656         * tests/test-fseeko.c: Likewise.
18657         * tests/test-fseterr.c: Likewise.
18658         * tests/test-fstrcmp.c: Likewise.
18659         * tests/test-ftell.c: Likewise.
18660         * tests/test-ftello.c: Likewise.
18661         * tests/test-fwritable.c: Likewise.
18662         * tests/test-fwriting.c: Likewise.
18663         * tests/test-getaddrinfo.c: Likewise.
18664         * tests/test-getpass.c: Likewise.
18665         * tests/test-gettimeofday.c: Likewise.
18666         * tests/test-hmac-md5.c: Likewise.
18667         * tests/test-hmac-sha1.c: Likewise.
18668         * tests/test-iconv.c: Likewise.
18669         * tests/test-iconvme.c: Likewise.
18670         * tests/test-inttypes.c: Likewise.
18671         * tests/test-isnan.c: Likewise.
18672         * tests/test-isnanf.c: Likewise.
18673         * tests/test-isnanl-nolibm.c: Likewise.
18674         * tests/test-isnanl.c: Likewise.
18675         * tests/test-isnanl.h: Likewise.
18676         * tests/test-ldexpl.c: Likewise.
18677         * tests/test-linked_list.c: Likewise.
18678         * tests/test-linkedhash_list.c: Likewise.
18679         * tests/test-locale.c: Likewise.
18680         * tests/test-localename.c: Likewise.
18681         * tests/test-lock.c: Likewise.
18682         * tests/test-lseek.c: Likewise.
18683         * tests/test-malloca.c: Likewise.
18684         * tests/test-math.c: Likewise.
18685         * tests/test-mbscasecmp.c: Likewise.
18686         * tests/test-mbscasestr1.c: Likewise.
18687         * tests/test-mbscasestr2.c: Likewise.
18688         * tests/test-mbscasestr3.c: Likewise.
18689         * tests/test-mbscasestr4.c: Likewise.
18690         * tests/test-mbschr.c: Likewise.
18691         * tests/test-mbscspn.c: Likewise.
18692         * tests/test-mbsncasecmp.c: Likewise.
18693         * tests/test-mbspbrk.c: Likewise.
18694         * tests/test-mbspcasecmp.c: Likewise.
18695         * tests/test-mbsrchr.c: Likewise.
18696         * tests/test-mbsspn.c: Likewise.
18697         * tests/test-mbsstr1.c: Likewise.
18698         * tests/test-mbsstr2.c: Likewise.
18699         * tests/test-mbsstr3.c: Likewise.
18700         * tests/test-md5.c: Likewise.
18701         * tests/test-memmem.c: Likewise.
18702         * tests/test-netinet_in.c: Likewise.
18703         * tests/test-open.c: Likewise.
18704         * tests/test-printf-frexp.c: Likewise.
18705         * tests/test-printf-frexpl.c: Likewise.
18706         * tests/test-printf-posix.c: Likewise.
18707         * tests/test-printf-posix.h: Likewise.
18708         * tests/test-rbtree_list.c: Likewise.
18709         * tests/test-rbtree_oset.c: Likewise.
18710         * tests/test-rbtreehash_list.c: Likewise.
18711         * tests/test-read-file.c: Likewise.
18712         * tests/test-rijndael.c: Likewise.
18713         * tests/test-search.c: Likewise.
18714         * tests/test-signbit.c: Likewise.
18715         * tests/test-sleep.c: Likewise.
18716         * tests/test-snprintf-posix.c: Likewise.
18717         * tests/test-snprintf-posix.h: Likewise.
18718         * tests/test-snprintf.c: Likewise.
18719         * tests/test-sprintf-posix.c: Likewise.
18720         * tests/test-sprintf-posix.h: Likewise.
18721         * tests/test-stat-time.c: Likewise.
18722         * tests/test-stdbool.c: Likewise.
18723         * tests/test-stdint.c: Likewise.
18724         * tests/test-stdio.c: Likewise.
18725         * tests/test-stdlib.c: Likewise.
18726         * tests/test-stpncpy.c: Likewise.
18727         * tests/test-strcasestr.c: Likewise.
18728         * tests/test-striconv.c: Likewise.
18729         * tests/test-striconveh.c: Likewise.
18730         * tests/test-striconveha.c: Likewise.
18731         * tests/test-string.c: Likewise.
18732         * tests/test-sys_select.c: Likewise.
18733         * tests/test-sys_socket.c: Likewise.
18734         * tests/test-sys_stat.c: Likewise.
18735         * tests/test-sys_time.c: Likewise.
18736         * tests/test-sysexits.c: Likewise.
18737         * tests/test-time.c: Likewise.
18738         * tests/test-tls.c: Likewise.
18739         * tests/test-trunc.c: Likewise.
18740         * tests/test-truncf.c: Likewise.
18741         * tests/test-truncl.c: Likewise.
18742         * tests/test-unistd.c: Likewise.
18743         * tests/test-vasnprintf-posix.c: Likewise.
18744         * tests/test-vasnprintf-posix2.c: Likewise.
18745         * tests/test-vasnprintf.c: Likewise.
18746         * tests/test-vasprintf-posix.c: Likewise.
18747         * tests/test-vasprintf.c: Likewise.
18748         * tests/test-verify.c: Likewise.
18749         * tests/test-vfprintf-posix.c: Likewise.
18750         * tests/test-vprintf-posix.c: Likewise.
18751         * tests/test-vsnprintf-posix.c: Likewise.
18752         * tests/test-vsnprintf.c: Likewise.
18753         * tests/test-vsprintf-posix.c: Likewise.
18754         * tests/test-wchar.c: Likewise.
18755         * tests/test-wctype.c: Likewise.
18756         * tests/test-wcwidth.c: Likewise.
18757         * tests/test-xstrtol.c: Likewise.
18758         * tests/test-xvasprintf.c: Likewise.
18759         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
18760         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
18761         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
18762         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
18763         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
18764         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
18765         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
18766         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
18767         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
18768         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
18769         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
18770         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
18771         * tests/uniname/test-uninames.c: Likewise.
18772         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
18773         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
18774         * tests/unistdio/test-u16-printf1.h: Likewise.
18775         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
18776         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
18777         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
18778         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
18779         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
18780         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
18781         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
18782         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
18783         * tests/unistdio/test-u32-printf1.h: Likewise.
18784         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
18785         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
18786         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
18787         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
18788         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
18789         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
18790         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
18791         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
18792         * tests/unistdio/test-u8-printf1.h: Likewise.
18793         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
18794         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
18795         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
18796         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
18797         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
18798         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
18799         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
18800         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
18801         * tests/unistdio/test-ulc-printf1.h: Likewise.
18802         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
18803         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
18804         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
18805         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
18806         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
18807         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
18808         * tests/uniwidth/test-u16-strwidth.c: Likewise.
18809         * tests/uniwidth/test-u16-width.c: Likewise.
18810         * tests/uniwidth/test-u32-strwidth.c: Likewise.
18811         * tests/uniwidth/test-u32-width.c: Likewise.
18812         * tests/uniwidth/test-u8-strwidth.c: Likewise.
18813         * tests/uniwidth/test-u8-width.c: Likewise.
18814         * tests/uniwidth/test-uc_width.c: Likewise.
18815         * config/srclist-update: Likewise.
18816         (fixlicense): Update to GPLv3+.
18817
18818         Change copyright notice from LGPLv2.1+ to LGPLv3+.
18819         * tests/test-tsearch.c: Change copyright notice.
18820
18821         Change copyright notice from LGPLv2.0+ to LGPLv3+.
18822         * lib/c-strcaseeq.h: Change copyright notice.
18823         * lib/streq.h: Likewise.
18824         * lib/uniconv.h: Likewise.
18825         * lib/uniconv/u-conv-from-enc.h: Likewise.
18826         * lib/uniconv/u-conv-to-enc.h: Likewise.
18827         * lib/uniconv/u-strconv-from-enc.h: Likewise.
18828         * lib/uniconv/u-strconv-to-enc.h: Likewise.
18829         * lib/uniconv/u16-conv-from-enc.c: Likewise.
18830         * lib/uniconv/u16-conv-to-enc.c: Likewise.
18831         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
18832         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
18833         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
18834         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
18835         * lib/uniconv/u32-conv-from-enc.c: Likewise.
18836         * lib/uniconv/u32-conv-to-enc.c: Likewise.
18837         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
18838         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
18839         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
18840         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
18841         * lib/uniconv/u8-conv-from-enc.c: Likewise.
18842         * lib/uniconv/u8-conv-to-enc.c: Likewise.
18843         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
18844         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
18845         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
18846         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
18847         * lib/uniname.h: Likewise.
18848         * lib/uniname/uniname.c: Likewise.
18849         * lib/unistdio.h: Likewise.
18850         * lib/unistdio/u-asnprintf.h: Likewise.
18851         * lib/unistdio/u-asprintf.h: Likewise.
18852         * lib/unistdio/u-printf-args.c: Likewise.
18853         * lib/unistdio/u-printf-args.h: Likewise.
18854         * lib/unistdio/u-printf-parse.h: Likewise.
18855         * lib/unistdio/u-snprintf.h: Likewise.
18856         * lib/unistdio/u-sprintf.h: Likewise.
18857         * lib/unistdio/u-vasprintf.h: Likewise.
18858         * lib/unistdio/u-vsnprintf.h: Likewise.
18859         * lib/unistdio/u-vsprintf.h: Likewise.
18860         * lib/unistdio/u16-asnprintf.c: Likewise.
18861         * lib/unistdio/u16-asprintf.c: Likewise.
18862         * lib/unistdio/u16-printf-parse.c: Likewise.
18863         * lib/unistdio/u16-snprintf.c: Likewise.
18864         * lib/unistdio/u16-sprintf.c: Likewise.
18865         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
18866         * lib/unistdio/u16-u16-asprintf.c: Likewise.
18867         * lib/unistdio/u16-u16-snprintf.c: Likewise.
18868         * lib/unistdio/u16-u16-sprintf.c: Likewise.
18869         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
18870         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
18871         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
18872         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
18873         * lib/unistdio/u16-vasnprintf.c: Likewise.
18874         * lib/unistdio/u16-vasprintf.c: Likewise.
18875         * lib/unistdio/u16-vsnprintf.c: Likewise.
18876         * lib/unistdio/u16-vsprintf.c: Likewise.
18877         * lib/unistdio/u32-asnprintf.c: Likewise.
18878         * lib/unistdio/u32-asprintf.c: Likewise.
18879         * lib/unistdio/u32-printf-parse.c: Likewise.
18880         * lib/unistdio/u32-snprintf.c: Likewise.
18881         * lib/unistdio/u32-sprintf.c: Likewise.
18882         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
18883         * lib/unistdio/u32-u32-asprintf.c: Likewise.
18884         * lib/unistdio/u32-u32-snprintf.c: Likewise.
18885         * lib/unistdio/u32-u32-sprintf.c: Likewise.
18886         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
18887         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
18888         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
18889         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
18890         * lib/unistdio/u32-vasnprintf.c: Likewise.
18891         * lib/unistdio/u32-vasprintf.c: Likewise.
18892         * lib/unistdio/u32-vsnprintf.c: Likewise.
18893         * lib/unistdio/u32-vsprintf.c: Likewise.
18894         * lib/unistdio/u8-asnprintf.c: Likewise.
18895         * lib/unistdio/u8-asprintf.c: Likewise.
18896         * lib/unistdio/u8-printf-parse.c: Likewise.
18897         * lib/unistdio/u8-snprintf.c: Likewise.
18898         * lib/unistdio/u8-sprintf.c: Likewise.
18899         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
18900         * lib/unistdio/u8-u8-asprintf.c: Likewise.
18901         * lib/unistdio/u8-u8-snprintf.c: Likewise.
18902         * lib/unistdio/u8-u8-sprintf.c: Likewise.
18903         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
18904         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
18905         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
18906         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
18907         * lib/unistdio/u8-vasnprintf.c: Likewise.
18908         * lib/unistdio/u8-vasprintf.c: Likewise.
18909         * lib/unistdio/u8-vsnprintf.c: Likewise.
18910         * lib/unistdio/u8-vsprintf.c: Likewise.
18911         * lib/unistdio/ulc-asnprintf.c: Likewise.
18912         * lib/unistdio/ulc-asprintf.c: Likewise.
18913         * lib/unistdio/ulc-printf-parse.c: Likewise.
18914         * lib/unistdio/ulc-snprintf.c: Likewise.
18915         * lib/unistdio/ulc-sprintf.c: Likewise.
18916         * lib/unistdio/ulc-vasnprintf.c: Likewise.
18917         * lib/unistdio/ulc-vasprintf.c: Likewise.
18918         * lib/unistdio/ulc-vsnprintf.c: Likewise.
18919         * lib/unistdio/ulc-vsprintf.c: Likewise.
18920         * lib/unistr.h: Likewise.
18921         * lib/unistr/u-cpy-alloc.h: Likewise.
18922         * lib/unistr/u-cpy.h: Likewise.
18923         * lib/unistr/u-endswith.h: Likewise.
18924         * lib/unistr/u-move.h: Likewise.
18925         * lib/unistr/u-set.h: Likewise.
18926         * lib/unistr/u-startswith.h: Likewise.
18927         * lib/unistr/u-stpcpy.h: Likewise.
18928         * lib/unistr/u-stpncpy.h: Likewise.
18929         * lib/unistr/u-strcat.h: Likewise.
18930         * lib/unistr/u-strcpy.h: Likewise.
18931         * lib/unistr/u-strcspn.h: Likewise.
18932         * lib/unistr/u-strdup.h: Likewise.
18933         * lib/unistr/u-strlen.h: Likewise.
18934         * lib/unistr/u-strncat.h: Likewise.
18935         * lib/unistr/u-strncpy.h: Likewise.
18936         * lib/unistr/u-strnlen.h: Likewise.
18937         * lib/unistr/u-strpbrk.h: Likewise.
18938         * lib/unistr/u-strspn.h: Likewise.
18939         * lib/unistr/u-strstr.h: Likewise.
18940         * lib/unistr/u-strtok.h: Likewise.
18941         * lib/unistr/u16-check.c: Likewise.
18942         * lib/unistr/u16-chr.c: Likewise.
18943         * lib/unistr/u16-cmp.c: Likewise.
18944         * lib/unistr/u16-cpy-alloc.c: Likewise.
18945         * lib/unistr/u16-cpy.c: Likewise.
18946         * lib/unistr/u16-endswith.c: Likewise.
18947         * lib/unistr/u16-mblen.c: Likewise.
18948         * lib/unistr/u16-mbsnlen.c: Likewise.
18949         * lib/unistr/u16-mbtouc-aux.c: Likewise.
18950         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
18951         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
18952         * lib/unistr/u16-mbtouc.c: Likewise.
18953         * lib/unistr/u16-mbtoucr.c: Likewise.
18954         * lib/unistr/u16-move.c: Likewise.
18955         * lib/unistr/u16-next.c: Likewise.
18956         * lib/unistr/u16-prev.c: Likewise.
18957         * lib/unistr/u16-set.c: Likewise.
18958         * lib/unistr/u16-startswith.c: Likewise.
18959         * lib/unistr/u16-stpcpy.c: Likewise.
18960         * lib/unistr/u16-stpncpy.c: Likewise.
18961         * lib/unistr/u16-strcat.c: Likewise.
18962         * lib/unistr/u16-strchr.c: Likewise.
18963         * lib/unistr/u16-strcmp.c: Likewise.
18964         * lib/unistr/u16-strcpy.c: Likewise.
18965         * lib/unistr/u16-strcspn.c: Likewise.
18966         * lib/unistr/u16-strdup.c: Likewise.
18967         * lib/unistr/u16-strlen.c: Likewise.
18968         * lib/unistr/u16-strmblen.c: Likewise.
18969         * lib/unistr/u16-strmbtouc.c: Likewise.
18970         * lib/unistr/u16-strncat.c: Likewise.
18971         * lib/unistr/u16-strncmp.c: Likewise.
18972         * lib/unistr/u16-strncpy.c: Likewise.
18973         * lib/unistr/u16-strnlen.c: Likewise.
18974         * lib/unistr/u16-strpbrk.c: Likewise.
18975         * lib/unistr/u16-strrchr.c: Likewise.
18976         * lib/unistr/u16-strspn.c: Likewise.
18977         * lib/unistr/u16-strstr.c: Likewise.
18978         * lib/unistr/u16-strtok.c: Likewise.
18979         * lib/unistr/u16-to-u32.c: Likewise.
18980         * lib/unistr/u16-to-u8.c: Likewise.
18981         * lib/unistr/u16-uctomb-aux.c: Likewise.
18982         * lib/unistr/u16-uctomb.c: Likewise.
18983         * lib/unistr/u32-check.c: Likewise.
18984         * lib/unistr/u32-chr.c: Likewise.
18985         * lib/unistr/u32-cmp.c: Likewise.
18986         * lib/unistr/u32-cpy-alloc.c: Likewise.
18987         * lib/unistr/u32-cpy.c: Likewise.
18988         * lib/unistr/u32-endswith.c: Likewise.
18989         * lib/unistr/u32-mblen.c: Likewise.
18990         * lib/unistr/u32-mbsnlen.c: Likewise.
18991         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
18992         * lib/unistr/u32-mbtouc.c: Likewise.
18993         * lib/unistr/u32-mbtoucr.c: Likewise.
18994         * lib/unistr/u32-move.c: Likewise.
18995         * lib/unistr/u32-next.c: Likewise.
18996         * lib/unistr/u32-prev.c: Likewise.
18997         * lib/unistr/u32-set.c: Likewise.
18998         * lib/unistr/u32-startswith.c: Likewise.
18999         * lib/unistr/u32-stpcpy.c: Likewise.
19000         * lib/unistr/u32-stpncpy.c: Likewise.
19001         * lib/unistr/u32-strcat.c: Likewise.
19002         * lib/unistr/u32-strchr.c: Likewise.
19003         * lib/unistr/u32-strcmp.c: Likewise.
19004         * lib/unistr/u32-strcpy.c: Likewise.
19005         * lib/unistr/u32-strcspn.c: Likewise.
19006         * lib/unistr/u32-strdup.c: Likewise.
19007         * lib/unistr/u32-strlen.c: Likewise.
19008         * lib/unistr/u32-strmblen.c: Likewise.
19009         * lib/unistr/u32-strmbtouc.c: Likewise.
19010         * lib/unistr/u32-strncat.c: Likewise.
19011         * lib/unistr/u32-strncmp.c: Likewise.
19012         * lib/unistr/u32-strncpy.c: Likewise.
19013         * lib/unistr/u32-strnlen.c: Likewise.
19014         * lib/unistr/u32-strpbrk.c: Likewise.
19015         * lib/unistr/u32-strrchr.c: Likewise.
19016         * lib/unistr/u32-strspn.c: Likewise.
19017         * lib/unistr/u32-strstr.c: Likewise.
19018         * lib/unistr/u32-strtok.c: Likewise.
19019         * lib/unistr/u32-to-u16.c: Likewise.
19020         * lib/unistr/u32-to-u8.c: Likewise.
19021         * lib/unistr/u32-uctomb.c: Likewise.
19022         * lib/unistr/u8-check.c: Likewise.
19023         * lib/unistr/u8-chr.c: Likewise.
19024         * lib/unistr/u8-cmp.c: Likewise.
19025         * lib/unistr/u8-cpy-alloc.c: Likewise.
19026         * lib/unistr/u8-cpy.c: Likewise.
19027         * lib/unistr/u8-endswith.c: Likewise.
19028         * lib/unistr/u8-mblen.c: Likewise.
19029         * lib/unistr/u8-mbsnlen.c: Likewise.
19030         * lib/unistr/u8-mbtouc-aux.c: Likewise.
19031         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
19032         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
19033         * lib/unistr/u8-mbtouc.c: Likewise.
19034         * lib/unistr/u8-mbtoucr.c: Likewise.
19035         * lib/unistr/u8-move.c: Likewise.
19036         * lib/unistr/u8-next.c: Likewise.
19037         * lib/unistr/u8-prev.c: Likewise.
19038         * lib/unistr/u8-set.c: Likewise.
19039         * lib/unistr/u8-startswith.c: Likewise.
19040         * lib/unistr/u8-stpcpy.c: Likewise.
19041         * lib/unistr/u8-stpncpy.c: Likewise.
19042         * lib/unistr/u8-strcat.c: Likewise.
19043         * lib/unistr/u8-strchr.c: Likewise.
19044         * lib/unistr/u8-strcmp.c: Likewise.
19045         * lib/unistr/u8-strcpy.c: Likewise.
19046         * lib/unistr/u8-strcspn.c: Likewise.
19047         * lib/unistr/u8-strdup.c: Likewise.
19048         * lib/unistr/u8-strlen.c: Likewise.
19049         * lib/unistr/u8-strmblen.c: Likewise.
19050         * lib/unistr/u8-strmbtouc.c: Likewise.
19051         * lib/unistr/u8-strncat.c: Likewise.
19052         * lib/unistr/u8-strncmp.c: Likewise.
19053         * lib/unistr/u8-strncpy.c: Likewise.
19054         * lib/unistr/u8-strnlen.c: Likewise.
19055         * lib/unistr/u8-strpbrk.c: Likewise.
19056         * lib/unistr/u8-strrchr.c: Likewise.
19057         * lib/unistr/u8-strspn.c: Likewise.
19058         * lib/unistr/u8-strstr.c: Likewise.
19059         * lib/unistr/u8-strtok.c: Likewise.
19060         * lib/unistr/u8-to-u16.c: Likewise.
19061         * lib/unistr/u8-to-u32.c: Likewise.
19062         * lib/unistr/u8-uctomb-aux.c: Likewise.
19063         * lib/unistr/u8-uctomb.c: Likewise.
19064         * lib/unitypes.h: Likewise.
19065         * lib/uniwidth.h: Likewise.
19066         * lib/uniwidth/cjk.h: Likewise.
19067         * lib/uniwidth/u16-strwidth.c: Likewise.
19068         * lib/uniwidth/u16-width.c: Likewise.
19069         * lib/uniwidth/u32-strwidth.c: Likewise.
19070         * lib/uniwidth/u32-width.c: Likewise.
19071         * lib/uniwidth/u8-strwidth.c: Likewise.
19072         * lib/uniwidth/u8-width.c: Likewise.
19073         * lib/uniwidth/width.c: Likewise.
19074
19075 2007-10-07  Bruno Haible  <bruno@clisp.org>
19076
19077         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
19078         The file is still under LGPL (see modules/inttypes).
19079
19080 2007-10-06  Bruno Haible  <bruno@clisp.org>
19081
19082         * modules/trunc (Dependencies): Add 'extensions'.
19083         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
19084         Reported by Ben Pfaff <blp@gnu.org>.
19085
19086 2007-10-06  Bruno Haible  <bruno@clisp.org>
19087
19088         * modules/freopen-tests: New file.
19089         * tests/test-freopen.c: New file.
19090
19091         * modules/fopen-tests: New file.
19092         * tests/test-fopen.c: New file.
19093
19094         * modules/fopen: New file.
19095         * lib/fopen.c: New file.
19096         * m4/fopen.m4: New file.
19097         * modules/freopen: New file.
19098         * lib/freopen.c: New file.
19099         * m4/freopen.m4: New file.
19100         * lib/stdio.in.h (fopen, freopen): New declarations.
19101         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
19102         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
19103         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
19104         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
19105         * doc/functions/fopen.texi: Mention the 'fopen' module.
19106         * doc/functions/freopen.texi: Mention the 'freopen' module.
19107
19108 2007-10-06  Bruno Haible  <bruno@clisp.org>
19109
19110         * modules/open-tests: New file.
19111         * tests/test-open.c: New file.
19112
19113         * modules/open: New file.
19114         * lib/open.c: New file.
19115         * m4/open.m4: New file.
19116         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
19117         lib/open.c does.
19118         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
19119         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
19120         macros.
19121         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
19122         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
19123         REPLACE_OPEN.
19124         * doc/functions/open.texi: Mention the 'open' module.
19125
19126 2007-10-04  Bruno Haible  <bruno@clisp.org>
19127
19128         * modules/ceill-tests: New file.
19129         * tests/test-ceill.c: New file.
19130
19131         * modules/ceill: New file.
19132         * lib/ceill.c: Replace entire file.
19133         * m4/ceill.m4: New file.
19134         * lib/math.in.h (ceill): Replace declaration.
19135         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
19136         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
19137         * doc/functions/ceill.texi: Mention the 'ceill' module.
19138         * modules/mathl (Files): Remove lib/ceill.c.
19139         (Depends-on): Add ceill.
19140
19141 2007-10-04  Bruno Haible  <bruno@clisp.org>
19142
19143         * modules/ceilf-tests: New file.
19144         * tests/test-ceilf.c: New file.
19145
19146         * modules/ceilf: New file.
19147         * lib/ceil.c: New file.
19148         * lib/ceilf.c: New file.
19149         * m4/ceilf.m4: New file.
19150         * lib/math.in.h (ceilf): New declaration.
19151         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
19152         HAVE_DECL_CEILF.
19153         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
19154         HAVE_DECL_CEILF.
19155         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
19156
19157 2007-10-04  Bruno Haible  <bruno@clisp.org>
19158
19159         * modules/floorl-tests: New file.
19160         * tests/test-floorl.c: New file.
19161
19162         * modules/floorl: New file.
19163         * lib/floorl.c: Replace entire file.
19164         * m4/floorl.m4: New file.
19165         * lib/math.in.h (floorl): Replace declaration.
19166         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
19167         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
19168         * doc/functions/floorl.texi: Mention the 'floorl' module.
19169         * modules/mathl (Files): Remove lib/floorl.c.
19170         (Depends-on): Add floorl.
19171
19172 2007-10-04  Bruno Haible  <bruno@clisp.org>
19173
19174         * modules/floorf-tests: New file.
19175         * tests/test-floorf.c: New file.
19176
19177         * modules/floorf: New file.
19178         * lib/floor.c: New file.
19179         * lib/floorf.c: New file.
19180         * m4/floorf.m4: New file.
19181         * lib/math.in.h (floorf): New declaration.
19182         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
19183         HAVE_DECL_FLOORF.
19184         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
19185         HAVE_DECL_FLOORF.
19186         * doc/functions/floorf.texi: Mention the 'floorf' module.
19187
19188 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
19189             Bruno Haible  <bruno@clisp.org>
19190
19191         Advertise for the Git server instead of the CVS server.
19192         * doc/gnulib-intro.texi (Steady Development): Mention the Git
19193         repository instead of the CVS one.
19194         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
19195         about all VCS systems generically.
19196         * doc/gnulib.texi (Introduction): Capitalize `Git'.
19197
19198 2007-10-04  Bruno Haible  <bruno@clisp.org>
19199
19200         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
19201         means.
19202         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
19203
19204 2007-10-04  Bruno Haible  <bruno@clisp.org>
19205
19206         * modules/truncl-tests: New file.
19207         * tests/test-truncl.c: New file.
19208
19209         * modules/truncl: New file.
19210         * lib/truncl.c: New file.
19211         * m4/truncl.m4: New file.
19212         * lib/math.in.h (truncl): New declaration.
19213         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
19214         HAVE_DECL_TRUNCL.
19215         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
19216         HAVE_DECL_TRUNCL.
19217         * doc/functions/truncl.texi: Mention the 'truncl' module.
19218
19219 2007-10-04  Bruno Haible  <bruno@clisp.org>
19220
19221         * modules/truncf-tests: New file.
19222         * tests/test-truncf.c: New file.
19223
19224         * modules/truncf: New file.
19225         * lib/trunc.c: Make paramerizable through USE_* macros.
19226         * lib/truncf.c: New file.
19227         * m4/truncf.m4: New file.
19228         * lib/math.in.h (truncf): New declaration.
19229         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
19230         HAVE_DECL_TRUNCF.
19231         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
19232         HAVE_DECL_TRUNCF.
19233         * doc/functions/truncf.texi: Mention the 'truncf' module.
19234
19235 2007-10-03  Bruno Haible  <bruno@clisp.org>
19236
19237         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
19238         augmentation also for tests modules.
19239         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
19240         * modules/atexit-tests (Makefile.am): Likewise.
19241         * modules/binary-io-tests (Makefile.am): Likewise.
19242         * modules/c-strcase-tests (Makefile.am): Likewise.
19243         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
19244         * modules/canonicalize-tests (Makefile.am): Likewise.
19245         * modules/closein-tests (Makefile.am): Likewise.
19246         * modules/fprintf-posix-tests (Makefile.am): Likewise.
19247         * modules/freadahead-tests (Makefile.am): Likewise.
19248         * modules/fseek-tests (Makefile.am): Likewise.
19249         * modules/fseeko-tests (Makefile.am): Likewise.
19250         * modules/ftell-tests (Makefile.am): Likewise.
19251         * modules/ftello-tests (Makefile.am): Likewise.
19252         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
19253         * modules/isnanl-tests (Makefile.am): Likewise.
19254         * modules/lseek-tests (Makefile.am): Likewise.
19255         * modules/mbscasecmp-tests (Makefile.am): Likewise.
19256         * modules/mbscasestr-tests (Makefile.am): Likewise.
19257         * modules/mbschr-tests (Makefile.am): Likewise.
19258         * modules/mbscspn-tests (Makefile.am): Likewise.
19259         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
19260         * modules/mbspbrk-tests (Makefile.am): Likewise.
19261         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
19262         * modules/mbsrchr-tests (Makefile.am): Likewise.
19263         * modules/mbsspn-tests (Makefile.am): Likewise.
19264         * modules/mbsstr-tests (Makefile.am): Likewise.
19265         * modules/printf-posix-tests (Makefile.am): Likewise.
19266         * modules/snprintf-posix-tests (Makefile.am): Likewise.
19267         * modules/sprintf-posix-tests (Makefile.am): Likewise.
19268         * modules/tsearch-tests (Makefile.am): Likewise.
19269         * modules/uniname/uniname-tests (Makefile.am): Likewise.
19270         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
19271         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
19272         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
19273         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
19274         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
19275         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
19276         * modules/vprintf-posix-tests (Makefile.am): Likewise.
19277         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
19278         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
19279         * modules/xstrtoimax-tests (Makefile.am): Likewise.
19280         * modules/xstrtol-tests (Makefile.am): Likewise.
19281         * modules/xstrtoumax-tests (Makefile.am): Likewise.
19282         * modules/yesno-tests (Makefile.am): Likewise.
19283
19284 2007-10-03  Bruno Haible  <bruno@clisp.org>
19285
19286         * modules/trunc-tests: New file.
19287         * tests/test-trunc.c: New file.
19288
19289         * modules/trunc: New file.
19290         * lib/trunc.c: New file.
19291         * m4/trunc.m4: New file.
19292         * lib/math.in.h (trunc): New declaration.
19293         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
19294         HAVE_DECL_TRUNC.
19295         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
19296         HAVE_DECL_TRUNC.
19297         * doc/functions/trunc.texi: Mention the 'trunc' module.
19298
19299 2007-10-03  Bruno Haible  <bruno@clisp.org>
19300
19301         * tests/test-fpending.c: New file, mostly copied
19302         from coreutils/lib/t-fpending.c.
19303         * modules/fpending-tests: New file.
19304
19305 2007-10-03  Bruno Haible  <bruno@clisp.org>
19306
19307         Port the stdio extensions to QNX (untested).
19308         * lib/fseterr.c (fseterr): Add support for QNX.
19309         * lib/fbufmode.c (fbufmode): Likewise.
19310         * lib/freadable.c (freadable): Likewise.
19311         * lib/fwritable.c (fwritable): Likewise.
19312         * lib/freading.c (freading): Likewise.
19313         * lib/fwriting.c (fwriting): Likewise.
19314         * lib/freadahead.c (freadahed): Likewise.
19315         * lib/fpurge.c (fpurge): Likewise.
19316         * lib/fseeko.c (rpl_fseeko): Likewise.
19317
19318 2007-10-03  Bruno Haible  <bruno@clisp.org>
19319             Jim Meyering  <jim@meyering.net>
19320             Eric Blake  <ebb9@byu.net>
19321
19322         * doc/relocatable.texi: Use @command instead of @program.
19323
19324 2007-10-02  Jim Meyering  <jim@meyering.net>
19325
19326         Perform one more "_.h" -> ".in.h" substitution.
19327         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
19328         instead of unistd_.h here, too.
19329
19330 2007-10-01  Bruno Haible  <bruno@clisp.org>
19331
19332         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
19333         Needed for the alloca-opt module.
19334
19335 2007-09-30  Bruno Haible  <bruno@clisp.org>
19336
19337         * lib/alloca.in.h: Renamed from lib/alloca_.h.
19338         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
19339         alloca_.h.
19340         * lib/argz.in.h: Renamed from lib/argz_.h.
19341         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
19342         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
19343         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
19344         byteswap_.h.
19345         * lib/dirent.in.h: Renamed from lib/dirent_.h.
19346         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
19347         dirent_.h.
19348         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
19349         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
19350         fcntl_.h.
19351         * lib/float.in.h: Renamed from lib/float_.h.
19352         * modules/float (Files, Makefile.am): Use float.in.h instead of
19353         float_.h.
19354         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
19355         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
19356         fnmatch_.h.
19357         * lib/getopt.in.h: Renamed from lib/getopt_.h.
19358         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
19359         getopt_.h.
19360         * lib/glob.in.h: Renamed from lib/glob_.h.
19361         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
19362         * lib/iconv.in.h: Renamed from lib/iconv_.h.
19363         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
19364         iconv_.h.
19365         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
19366         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
19367         inttypes_.h.
19368         * lib/locale.in.h: Renamed from lib/locale_.h.
19369         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
19370         locale_.h.
19371         * lib/math.in.h: Renamed from lib/math_.h.
19372         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
19373         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
19374         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
19375         of netinet_in_.h. Add dependency.
19376         * lib/poll.in.h: Renamed from lib/poll_.h.
19377         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
19378         * lib/search.in.h: Renamed from lib/search_.h.
19379         * modules/search (Files, Makefile.am): Use search.in.h instead of
19380         search_.h.
19381         * lib/signal.in.h: Renamed from lib/signal_.h.
19382         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
19383         _signal.h.
19384         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
19385         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
19386         stdbool_.h.
19387         * lib/stdint.in.h: Renamed from lib/stdint_.h.
19388         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
19389         stdint_.h.
19390         * lib/stdio.in.h: Renamed from lib/stdio_.h.
19391         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
19392         stdio_.h.
19393         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
19394         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
19395         stdlib_.h.
19396         * lib/string.in.h: Renamed from lib/string_.h.
19397         * modules/string (Files, Makefile.am): Use string.in.h instead of
19398         string_.h.
19399         * doc/gnulib-tool.texi (Initial import): Update.
19400         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
19401         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
19402         of sys_select_.h. Add dependency.
19403         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
19404         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
19405         of sys_socket_.h.
19406         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
19407         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
19408         sys_stat_.h.
19409         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
19410         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
19411         sys_time_.h.
19412         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
19413         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
19414         sysexits_.h.
19415         * lib/time.in.h: Renamed from lib/time_.h.
19416         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
19417         * lib/unistd.in.h: Renamed from lib/unistd_.h.
19418         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
19419         unistd_.h.
19420         * lib/wchar.in.h: Renamed from lib/wchar_.h.
19421         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
19422         wchar_.h.
19423         * lib/wctype.in.h: Renamed from lib/wctype_.h.
19424         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
19425         wctype_.h.
19426         * build-aux/bootstrap (slurp): Update.
19427         * lib/.cppi-disable: Update.
19428
19429 2007-09-30  Bruno Haible  <bruno@clisp.org>
19430
19431         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
19432         Needed on BeOS.
19433
19434 2007-09-30  Bruno Haible  <bruno@clisp.org>
19435
19436         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
19437
19438 2007-09-29  Bruno Haible  <bruno@clisp.org>
19439
19440         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
19441
19442 2007-09-29  Bruno Haible  <bruno@clisp.org>
19443
19444         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
19445         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
19446         * build-aux/install-reloc: Compile also areadlink.c.
19447         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
19448
19449 2007-09-29  Bruno Haible  <bruno@clisp.org>
19450
19451         * gnulib-tool (func_emit_initmacro_done): Indentation.
19452
19453 2007-09-29  Bruno Haible  <bruno@clisp.org>
19454
19455         * README: Add CVS checkout update instructions.
19456         Info from Bob Proulx <bob@proulx.com>.
19457
19458 2007-09-28  Eric Blake  <ebb9@byu.net>
19459
19460         Provide move-if-change.
19461         * build-aux/move-if-change: New file, based on best practice
19462         rather than any canonical upstream location.
19463
19464 2007-09-28  Jim Meyering  <jim@meyering.net>
19465
19466         Fix canonicalize loop-detection corner case.
19467         Do not attempt to stat the symlink values stored via seen_triple.
19468         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
19469         on linux-2.6.18, (but not 2.6.22).
19470         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
19471         triple_compare.  The former compares dev,ino,filename, while the latter
19472         would actually stat dirname(filename) when dev and ino were equal.
19473         * lib/hash-triple.c: Install <string.h>.
19474         (STREQ): Define.
19475         (triple_compare_ino_str): New function.
19476         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
19477
19478 2007-09-28  Eric Blake  <ebb9@byu.net>
19479
19480         Enforce that AC_REPLACE_FUNCS files exist.
19481         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
19482         override check for typos.
19483
19484         Fix test-closein on Solaris 10.
19485         * tests/test-closein.c (main): Don't assume stdin can be inherited
19486         closed on all systems.
19487         * tests/test-closein.sh: Likewise.
19488         Reported by Piotr Tarnowski.
19489
19490 2007-09-28  Jim Meyering  <jim@meyering.net>
19491
19492         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
19493
19494 2007-09-27  Jim Meyering  <jim@meyering.net>
19495
19496         canonicalize: Avoid a false-positive cycle failure.
19497         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
19498         Sort.  Remove cycle-check.
19499         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
19500         not cycle-check.h.
19501         (seen_triple): New function.
19502         (canonicalize_filename_mode): Use it instead of cycle-check.
19503         * tests/test-canonicalize.c: Add a test for this bug.
19504         * tests/test-canonicalize.sh: Set up and run the test.
19505
19506         New module, file-set, from coreutils.
19507         * modules/file-set: Define it.
19508         * lib/file-set.c, lib/file-set.h: Implement.
19509
19510         New module, hash-triple, from coreutils.
19511         * modules/hash-triple: Define it.
19512         * lib/hash-triple.c, lib/hash-triple.h: Implement.
19513
19514 2007-09-25  Eric Blake  <ebb9@byu.net>
19515
19516         Fix strerror on Interix.
19517         * lib/string_.h (strerror): Declare replacement.
19518         * doc/functions/strerror.texi (strerror): Document the Interix
19519         shortcoming.
19520         * modules/string (Makefile.am): Support new hooks.
19521         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
19522         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
19523         gl_FUNC_STRERROR_SEPARATE.
19524         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
19525         * lib/strerror.c (rpl_strerror): Provide replacement.
19526         * modules/strerror (Depends-on): Add string.
19527         (configure.ac): Detect use of module.
19528         * tests/test-strerror.c: New file.
19529         * modules/strerror-tests: New test module.
19530         * modules/argp (Depends-on): Add strerror.
19531         * modules/error (Depends-on): Likewise.
19532         Reported by Martin Koeppe.
19533
19534 2007-09-24  Bruno Haible  <bruno@clisp.org>
19535
19536         * README: Update git instructions.
19537
19538 2007-09-24  Eric Blake  <ebb9@byu.net>
19539
19540         Revert fpending breakage from 2007-09-08.
19541         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
19542         __fpending.c.
19543
19544 2007-09-24  Jim Meyering  <jim@meyering.net>
19545
19546         filenamecat.c: Add a test.
19547         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
19548         showing how the function works when DIR is the empty string.
19549
19550 2007-09-21  Simon Josefsson  <simon@josefsson.org>
19551
19552         * tests/test-canonicalize.sh: Turn on executable bit.
19553
19554 2007-09-19  Eric Blake  <ebb9@byu.net>
19555
19556         * README: Update CVS instructions.
19557
19558 2007-09-18  Bruno Haible  <bruno@clisp.org>
19559
19560         * modules/areadlink: New file.
19561         * lib/areadlink.h (areadlink): New declaration.
19562         * lib/areadlink.c: New file, based on lib/xreadlink.c.
19563
19564 2007-09-17  Jim Meyering  <jim@meyering.net>
19565
19566         * lib/savewd.c (ESTALE) [!defined]: Define.
19567         Reported to be required on Interix by Martin Koeppe.
19568
19569 2007-09-17  Bruno Haible  <bruno@clisp.org>
19570
19571         * gnulib-tool (func_version): Use $version.
19572
19573 2007-09-16  Bruno Haible  <bruno@clisp.org>
19574
19575         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
19576         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
19577         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
19578         Reported by Greg Schafer <gschafer@zip.com.au>.
19579
19580 2007-09-15  Bruno Haible  <bruno@clisp.org>
19581
19582         * gnulib-tool (sed): Try a little harder to make bash understand the
19583         alias.
19584         Reported by Bruce Korb <bruce.korb@gmail.com>.
19585
19586 2007-09-13  Eric Blake  <ebb9@byu.net>
19587
19588         * ChangeLog: Remove conflict markers.
19589
19590 2007-09-13  Simon Josefsson  <simon@josefsson.org>
19591
19592         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
19593         Reported by Bruno Haible <bruno@clisp.org>.
19594
19595 2007-09-12  Bruno Haible  <bruno@clisp.org>
19596
19597         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
19598         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
19599         is not defined.
19600
19601 2007-09-12  Eric Blake  <ebb9@byu.net>
19602
19603         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
19604         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
19605         Autoconf definition.
19606         * modules/euidaccess (Depends-on): Add extensions, for
19607         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
19608         * modules/fnmatch (Depends-on): Likewise.
19609         * modules/getaddrinfo (Depends-on): Likewise.
19610         * modules/getdelim (Depends-on): Likewise.
19611         * modules/getline (Depends-on): Likewise.
19612         * modules/getsubopt (Depends-on): Likewise.
19613         * modules/gettext (Depends-on): Likewise.
19614         * modules/group-member (Depends-on): Likewise.
19615         * modules/mbchar (Depends-on): Likewise.
19616         * modules/memmem (Depends-on): Likewise.
19617         * modules/mempcpy (Depends-on): Likewise.
19618         * modules/memrchr (Depends-on): Likewise.
19619         * modules/pagealign_alloc (Depends-on): Likewise.
19620         * modules/readutmp (Depends-on): Likewise.
19621         * modules/stpcpy (Depends-on): Likewise.
19622         * modules/stpncpy (Depends-on): Likewise.
19623         * modules/strchrnul (Depends-on): Likewise.
19624         * modules/strndup (Depends-on): Likewise.
19625         * modules/strsep (Depends-on): Likewise.
19626         * modules/strverscmp (Depends-on): Likewise.
19627         * modules/vasprintf (Depends-on): Likewise.
19628         * modules/wcwidth (Depends-on): Likewise.
19629         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
19630         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
19631         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
19632         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
19633         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
19634         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
19635         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
19636         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
19637         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
19638         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
19639         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
19640         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
19641         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
19642         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
19643         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
19644         * m4/readutmp.m4 (gl_READUTMP): Likewise.
19645         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
19646         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
19647         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
19648         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
19649         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
19650         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
19651         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
19652         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
19653         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
19654         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
19655         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
19656         so that lock.m4 can be used in gettext without extensions module.
19657
19658 2007-09-11  Bruno Haible  <bruno@clisp.org>
19659
19660         * m4/isc-posix.m4: Remove file.
19661         Suggested by Eric Blake.
19662
19663 2007-09-11  Eric Blake  <ebb9@byu.net>
19664
19665         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
19666
19667 2007-09-10  Bruno Haible  <bruno@clisp.org>
19668
19669         * posix-modules: Fix typo in error message.
19670         Reported by Matt <mkraai@beckman.com>.
19671
19672 2007-09-09  Bruno Haible  <bruno@clisp.org>
19673
19674         * doc/functions/getdelim.texi: Update list of platforms lacking the
19675         function.
19676         * doc/functions/getline.texi: Likewise.
19677
19678 2007-09-09  Jim Meyering  <jim@meyering.net>
19679
19680         * lib/hash.c (hash_initialize): Detect calloc failure.
19681         Reported by Bruno Haible.
19682
19683 2007-09-09  Bruno Haible  <bruno@clisp.org>
19684
19685         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
19686         malloc or realloc fails.
19687
19688 2007-09-09  Bruno Haible  <bruno@clisp.org>
19689
19690         * modules/getcwd (Depends-on): Add malloc-posix.
19691         * modules/glob (Depends-on): Likewise.
19692         * modules/putenv (Depends-on): Likewise.
19693         * modules/strdup (Depends-on): Likewise.
19694         * modules/getdelim (Depends-on): Add realloc-posix.
19695         * modules/read-file (Depends-on): Likewise.
19696
19697 2007-09-09  Bruno Haible  <bruno@clisp.org>
19698
19699         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
19700         (gl_FUNC_MALLOC_POSIX): Require it.
19701         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
19702         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
19703         * modules/realloc (Files): Add m4/malloc.m4.
19704         * modules/calloc (Files): Likewise.
19705
19706 2007-09-09  Bruno Haible  <bruno@clisp.org>
19707
19708         * modules/malloc-posix: New file.
19709         * modules/malloc (Depends-on): Add malloc-posix.
19710         * lib/malloc.c: Include errno.h.
19711         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
19712         and a POSIX-compatible malloc into a single function. Set ENOMEM
19713         when returning NULL.
19714         * m4/malloc.m4: New file.
19715         * doc/functions/malloc.texi: Mention the malloc-posix module.
19716         * lib/stdlib_.h (malloc): New declaration.
19717         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
19718         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
19719         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
19720         and HAVE_MALLOC_POSIX.
19721
19722 2007-09-09  Bruno Haible  <bruno@clisp.org>
19723
19724         * modules/realloc-posix: New file.
19725         * modules/realloc (Depends-on): Add realloc-posix.
19726         * lib/realloc.c: Include errno.h.
19727         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
19728         and a POSIX-compatible realloc into a single function. Set ENOMEM
19729         when returning NULL.
19730         * m4/realloc.m4: New file.
19731         * doc/functions/realloc.texi: Mention the realloc-posix module.
19732         * lib/stdlib_.h (realloc): New declaration.
19733         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
19734         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
19735         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
19736         and HAVE_REALLOC_POSIX.
19737
19738 2007-09-09  Bruno Haible  <bruno@clisp.org>
19739
19740         * modules/calloc-posix: New file.
19741         * modules/calloc (Depends-on): Add calloc-posix.
19742         * lib/calloc.c: Include errno.h.
19743         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
19744         and a POSIX-compatible calloc into a single function. Set ENOMEM
19745         when returning NULL.
19746         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
19747         * doc/functions/calloc.texi: Mention the calloc-posix module.
19748         * lib/stdlib_.h (calloc): New declaration.
19749         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
19750         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
19751         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
19752         and HAVE_CALLOC_POSIX.
19753
19754 2007-09-09  Bruno Haible  <bruno@clisp.org>
19755
19756         Allow for modules to show an arbitrary notice.
19757         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
19758         * gnulib-tool: New option --extract-notice.
19759         (func_usage): Document it.
19760         (sed_extract_prog): Update.
19761         (func_get_notice): New function.
19762         (func_modules_notice): New function.
19763         (func_import, func_create_testdir): Invoke it.
19764         Suggested by Jim Meyering.
19765
19766 2007-09-09  Bruno Haible  <bruno@clisp.org>
19767
19768         * gnulib-tool: New options --verbose, --quiet.
19769         (func_usage): Document them.
19770         (verbose): New variable.
19771         (func_execute_command): New function.
19772         (func_import): Don't show the module list and the file list if
19773         $verbose < 0.
19774         (func_create_testdir): Likewise. Use func_execute_command.
19775         (func_create_megatestdir): Use func_execute_command.
19776
19777 2007-09-08  Bruno Haible  <bruno@clisp.org>
19778
19779         * gnulib-tool (func_import): Prefer rsync over wget when available,
19780         for fetching the PO files.
19781
19782 2007-09-08  Bruno Haible  <bruno@clisp.org>
19783
19784         * posix-modules: New file. Portions copied from gnulib-tool.
19785         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
19786
19787 2007-09-08  Jim Meyering  <jim@meyering.net>
19788
19789         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
19790         * lib/fpending.h: Rename from __fpending.h.
19791         * lib/fpending.c: Rename from __fpending.c.
19792         Include "fpending.h", not "__fpending.h".
19793         * lib/__fpending.h, lib/__fpending.c: Remove files.
19794         * modules/fpending (Files): Reflect new file names.
19795         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
19796
19797 2007-09-08  Bruno Haible  <bruno@clisp.org>
19798
19799         * m4/inttypes-h.m4: Remove stub file.
19800
19801 2007-09-07  Simon Josefsson  <simon@josefsson.org>
19802
19803         * doc/headers/stdint.texi: Discuss #include_next issue.
19804
19805 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
19806
19807         * build-aux/bootstrap: Remove obsolete comment about wget --help.
19808
19809 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
19810
19811         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
19812         in variable name.
19813
19814 2007-09-03  Jim Meyering  <jim@meyering.net>
19815
19816         New module: git-version-gen.
19817         * modules/git-version-gen: New file.
19818
19819         Import changes from coreutils for bootstrap script.
19820
19821         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
19822
19823         bootstrap: uses rsync to download the .po files
19824         * build-aux/bootstrap (po_download_command_format): New global.
19825         (download_po_files): Use rsync.
19826         (update_po_files): Don't remove .po files after download,
19827         so future rsync runs can take advantage of the copies.
19828
19829         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
19830
19831         Solve the unnecessary-.po-file-regeneration problem once and for all.
19832         * build-aux/bootstrap (download_po_files): New function, renamed from
19833         get_translations.  Now, downloads, but doesn't update LINGUAS.
19834         (update_po_files): New function.
19835
19836         bootstrap: Ignore more.
19837         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
19838         uniwidth to e.g., lib/.gitignore.
19839         (slurp): Handle the sys_stat_.h -> sys mapping, too.
19840
19841         * build-aux/bootstrap: New setting: vc_ignore.
19842         (insert_sorted_if_absent): Create $file if absent.
19843         Adapt to new, possibly empty, list: $vc_ignore.
19844
19845         bootstrap: generate more ignorable names
19846         * build-aux/bootstrap (slurp): When generating ignorable names,
19847         also map .sin to .sed, .gperf to .c, and .y to .c.
19848
19849 2007-09-03  Jim Meyering  <jim@meyering.net>
19850
19851         * build-aux/git-version-gen: New file, from coreutils.  For details, see
19852         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
19853
19854 2007-09-02  Bruno Haible  <bruno@clisp.org>
19855
19856         Fix mis-recognition of 'mcs' on QNX 6.
19857         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
19858         output contains the string "Mono".
19859         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
19860         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
19861
19862 2007-09-01  Bruno Haible  <bruno@clisp.org>
19863
19864         Fix collision between uniwidth/* and linebreak modules.
19865         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
19866         u32_width): Remove declarations.
19867         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
19868         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
19869         streq3, streq2, streq1, streq0): Remove functions.
19870         (STREQ): Remove macro.
19871         (is_cjk_encoding): Remove function.
19872         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
19873         (uc_width, u8_width, u16_width, u32_width): Remove functions.
19874         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
19875         * NEWS: Document the change.
19876
19877 2007-09-01  Bruno Haible  <bruno@clisp.org>
19878
19879         * lib/streq.h: Add double-inclusion guard.
19880
19881 2007-09-01  Karl Berry  <karl@gnu.org>
19882
19883         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
19884
19885 2007-08-28  Jim Meyering  <jim@meyering.net>
19886
19887         Rename mreadlink_with_size to areadlink_with_size.
19888         * NEWS: Document the change.
19889         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
19890         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
19891         * lib/mreadlink.h: Rename this to...
19892         * lib/areadlink.h: ...this.
19893         * modules/mreadlink-with-size: Rename this to...
19894         * modules/areadlink-with-size: ...this.
19895         * lib/canonicalize.c: Reflect the renaming.
19896         * modules/canonicalize: Likewise.
19897
19898 2007-08-26  Bruno Haible  <bruno@clisp.org>
19899
19900         * gnulib-tool (func_import): When deciding which files to remove,
19901         consider also dangling symbolic links.
19902         Reported by Eric Blake.
19903
19904 2007-08-26  Bruno Haible  <bruno@clisp.org>
19905
19906         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
19907
19908 2007-08-23  Simon Josefsson  <simon@josefsson.org>
19909
19910         * lib/readline.c: Don't include getline.h, the prototype is now
19911         found in stdio.h.
19912
19913 2007-08-23  Jim Meyering  <jim@meyering.net>
19914
19915         Getdelim touchup.
19916         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
19917         around the funlockfile call, since funlockfile never sets errno.
19918         Don't set errno upon failed realloc.
19919
19920 2007-08-22  Eric Blake  <ebb9@byu.net>
19921
19922         Getline touchups.
19923         * lib/getdelim.c (getdelim): Revert regression that required *n to
19924         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
19925         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
19926         getdelim, rather than whether implementation is missing.
19927         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
19928         * lib/stdio_.h (getline): Also declare if replacement is
19929         required.
19930         * doc/functions/getdelim.texi: New file.
19931         * doc/functions/getline.texi: Likewise.
19932         * doc/gnulib.texi (Function Substitutes): Add new files.
19933         Reported by Bruno Haible.
19934
19935 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
19936
19937         * users.txt: Add Guile.
19938
19939 2007-08-22  Eric Blake  <ebb9@byu.net>
19940
19941         * tests/test-getdelim.c (main): Use remove, not unlink.
19942         * tests/test-getline.c (main): Likewise.
19943
19944         Move getline and getdelim into stdio.h, per POSIX 200x.
19945         * modules/getline (Files): Remove getline.h.
19946         (Depends-on): Add stdio.
19947         (configure.ac): Add module indicator.
19948         * modules/getdelim (Files): Remove getdelim.h.
19949         (Depends-on): Add stdio.
19950         (configure.ac): Add module indicator.
19951         * modules/stdio (Makefile.am): Work with new indicators.
19952         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
19953         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
19954         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
19955         * lib/getdelim.h: Delete.
19956         * lib/getline.h: Delete.
19957         * lib/stdio_.h (getdelim, getline): Declare.
19958         * modules/getdelim-tests: New module.
19959         * modules/getline-tests: Likewise.
19960         * tests/test-getdelim.c: New file.
19961         * tests/test-getline.c: Likewise.
19962         * NEWS: Document the change.
19963         * lib/getline.c: Update choice of header.
19964         * lib/csharpcomp.c: Likewise.
19965         * lib/getpass.c: Likewise.
19966         * lib/javacomp.c: Likewise.
19967         * lib/javaversion.c: Likewise.
19968         * lib/yesno.c: Likewise.
19969         * lib/getdelim.c: Likewise.
19970         (getdelim): Set errno on failure, and avoid memory leak.
19971
19972 2007-08-19  Bruno Haible  <bruno@clisp.org>
19973
19974         * modules/closein (Depends-on): Add freadahead.
19975         * lib/closein.c: Include freadahead.h.
19976         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
19977         is zero.
19978
19979 2007-08-19  Bruno Haible  <bruno@clisp.org>
19980
19981         * modules/freadahead-tests: New file.
19982         * tests/test-freadahead.sh: New file.
19983         * tests/test-freadahead.c: New file.
19984
19985         * modules/freadahead: New file.
19986         * lib/freadahead.h: New file.
19987         * lib/freadahead.c: New file.
19988         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
19989         fbufmode, fpurge, freadable, fwritable.
19990
19991 2007-08-19  Eric Blake  <ebb9@byu.net>
19992
19993         Test yesno in combination with closein.
19994         * lib/yesno.c (yesno): Document use of stdin.
19995         * modules/yesno-tests (Files): New module.
19996         * tests/test-yesno.c (main): New file.
19997         * tests/test-yesno.sh: Likewise.
19998
19999 2007-08-19  Bruno Haible  <bruno@clisp.org>
20000
20001         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
20002         * lib/fseeko.c (rpl_fseeko): Likewise.
20003         * lib/fseterr.c (fseterr): Likewise.
20004
20005 2007-08-19  Bruno Haible  <bruno@clisp.org>
20006
20007         * tests/test-lseek.c (main): Disable a test for BeOS.
20008         * doc/functions/lseek.texi: Document the BeOS bug.
20009
20010 2007-08-19  Bruno Haible  <bruno@clisp.org>
20011             Eric Blake  <ebb9@byu.net>
20012
20013         * lib/lseek.c: Include <sys/stat.h>.
20014         (rpl_lseek): Add workaround code also for Unix platforms.
20015         Needed for BeOS.
20016         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
20017         * doc/functions/lseek.texi: Document BeOS definiency.
20018
20019 2007-08-18  Bruno Haible  <bruno@clisp.org>
20020
20021         * modules/fstrcmp-tests: New file.
20022         * tests/test-fstrcmp.c: New file.
20023
20024 2007-08-18  Bruno Haible  <bruno@clisp.org>
20025
20026         * modules/fstrcmp: New file, from GNU gettext with modifications.
20027         * lib/fstrcmp.h: New file, from GNU gettext.
20028         * lib/fstrcmp.c: New file, from GNU gettext.
20029         * MODULES.html.sh (String handling): Add fstrcmp.
20030
20031 2007-08-18  Bruno Haible  <bruno@clisp.org>
20032
20033         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
20034         'bool'.
20035         (diag, compareseq): Remove const from the ctxt argument.
20036         (USE_HEURISTIC): Undefine at the end.
20037
20038 2007-08-18  Jim Meyering  <jim@meyering.net>
20039
20040         New file: lib/idcache.h
20041         * NEWS: Mention the addition.
20042         * modules/idcache (Files): Add lib/idcache.h
20043         * lib/idcache.c: Include "idcache.h".
20044         Don't include <sys/types.h>.
20045         Add a FIXME comment.
20046         Move file-scoped "static" declarations to the top.
20047         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
20048
20049 2007-08-17  Bruno Haible  <bruno@clisp.org>
20050         and Paul Eggert  <eggert@cs.ucla.edu>
20051
20052         * MODULES.html.sh: Add diffseq.
20053         * modules/diffseq: New file.
20054         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
20055         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
20056
20057 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
20058
20059         Import changes from coreutils for bootstrap script.
20060
20061         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
20062
20063         * build-aux/bootstrap (slurp): Work even in environments where
20064         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
20065         current code does not slurp files whose names start with ".", and
20066         this looks like it might be a troublesome area.
20067
20068         2007-07-11  Jim Meyering  <jim@meyering.net>
20069
20070         If there's a GPL vN copyright comment, require that N == 3.
20071
20072         2007-07-08  Jim Meyering  <jim@meyering.net>
20073
20074         Run the coreutils-specific code only if tests/Makefile.am.in exists.
20075         * build-aux/bootstrap (mam_template): Move definition out of loop.
20076
20077         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
20078
20079         * build-aux/bootstrap (symlink_to_dir): Rename function from
20080         symlink_to_gnulib.  Add a directory parameter.  Update all
20081         callers.
20082         (cp_mark_as_generated): Also check for -- and link to -- files in
20083         gl/.
20084
20085         2007-07-08  Jim Meyering  <jim@meyering.net>
20086
20087         Adapt to deeper hierarchy in gnulib.
20088         * build-aux/bootstrap (symlink_to_dir): If the destination
20089         directory doesn't exist, create it. This is required at least for
20090         "lib/uniwidth/cjk.h".
20091
20092         2007-05-15  Jim Meyering  <jim@meyering.net>
20093
20094         * build-aux/bootstrap: Now that generated Makefile.am files
20095         are no longer under version control, they must be created at
20096         bootstrap time.
20097
20098 2007-08-14  Ben Pfaff  <blp@gnu.org>
20099
20100         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
20101
20102 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
20103
20104         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
20105         given the changes below.
20106         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
20107         even on hosts that have padding bits beyond the supported 64.
20108
20109 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
20110
20111         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
20112         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
20113         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
20114         depends on it.
20115         (xstrtol_error): Remove.
20116         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
20117         but with a different signature.
20118         (ATTRIBUTE_NORETURN, __attribute__): New macros.
20119         * lib/xstrtol-error.c: Include exitfail.h.
20120         (xstrtol_fatal): New function, with a different signature from the
20121         old xstrtol_error, so that the caller need not worry about passing
20122         in an exit status, or about storage management of the option argument.
20123         (xstrtol_error): Now a static function.  Redo signature to
20124         implement xstrtol_fatal.  Output the correct number of hyphens in
20125         front of the option so that the caller need not worry about
20126         storage management.
20127         (N_): New macro.
20128         (_): Remove; not used now.
20129         * modules/xstrtol: Depend on getopt.
20130         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
20131         of old STRTOL_FATAL_ERROR macro.
20132         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
20133         of test program.
20134         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
20135         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
20136
20137 2007-08-08  Eric Blake  <ebb9@byu.net>
20138
20139         * lib/xstrtol-error.c: Add missing include.
20140
20141         Move xstrtol messages into gnulib domain, when --pobase is used.
20142         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
20143         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
20144         * modules/xstrtol (Files): Distribute new file.
20145         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
20146         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
20147         * tests/test-xstrtol.c: ...into new file.
20148         * tests/test-xstrtoul.c: Also test xstrtoul.
20149         * tests/test-xstrtoimax.c: Also test xstrtoimax.
20150         * tests/test-xstrtoumax.c: Also test xstrtoumax.
20151         * tests/test-xstrtol.sh: Drive the tests.
20152         * tests/test-xstrtoimax.sh: Likewise.
20153         * tests/test-xstrtoumax.sh: Likewise.
20154         * modules/xstrtol-tests: New module.
20155         * modules/xstrtoimax-tests: Likewise.
20156         * modules/xstrtoumax-tests: Likewise.
20157
20158 2007-08-08  Jim Meyering  <jim@meyering.net>
20159
20160         New function: mfile_name_concat.
20161         * lib/filenamecat.c (mfile_name_concat): New function, just like
20162         file_name_concat, but return NULL upon failure rather than exiting
20163         with a diagnostic.
20164         * lib/filenamecat.h: Declare it.
20165
20166 2007-08-07  Bruno Haible  <bruno@clisp.org>
20167
20168         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
20169         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
20170         warning from gcc.
20171         Reported by Eric Blake.
20172
20173 2007-08-07  Simon Josefsson  <simon@josefsson.org>
20174
20175         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
20176         * modules/crypto/arcfour (License): Likewise.
20177         * modules/crypto/des-tests (License): Likewise.
20178         * modules/crypto/gc-arctwo-tests (License): Likewise.
20179         * modules/crypto/gc-des-tests (License): Likewise.
20180         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
20181         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
20182         * modules/crypto/gc-md2-tests (License): Likewise.
20183         * modules/crypto/gc-md4-tests (License): Likewise.
20184         * modules/crypto/gc-md5-tests (License): Likewise.
20185         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
20186         * modules/crypto/gc-rijndael-tests (License): Likewise.
20187         * modules/crypto/gc-sha1-tests (License): Likewise.
20188         * modules/crypto/gc-tests (License): Likewise.
20189         * modules/crypto/hmac-md5 (License): Likewise.
20190         * modules/crypto/hmac-sha1 (License): Likewise.
20191         * modules/crypto/md2-tests (License): Likewise.
20192         * modules/crypto/md4-tests (License): Likewise.
20193         * modules/crypto/md5 (License): Likewise.
20194         * modules/crypto/rijndael (License): Likewise.
20195         * modules/crypto/sha1 (License): Likewise.
20196         * modules/memxor (License): Likewise.
20197
20198 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
20199         and Bruno Haible  <bruno@clisp.org>
20200
20201         * NEWS: Describe interface changes to human, xstrtol.
20202         * lib/human.h: Include <xstrtol.h>.
20203         (human_options): Return enum strtol_error, not int.  Remove
20204         bool arg; take int * instead.
20205         * lib/human.c: Don't include "gettext.h".
20206         (_): Remove; no longer used.
20207         Don't include <xstrtol.h>, since human.h does it.
20208         (human_options): Adjust to abovementioned interface changes.
20209         Do not report error to stderr; that's now the caller's
20210         responsibility.
20211         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
20212         interface change.
20213         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
20214         Str, Argument_type_string.  All uses changed.  Put " argument"
20215         in diagnostics to make them clearer.  Change wording of suffix
20216         message for clarity.
20217         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
20218         Argument_type_string.
20219         (STRTOL_FATAL_WARN): Remove; no longer used.
20220         * modules/human (Depends-on): Remove gettext-h.
20221
20222 2007-08-06  Simon Josefsson  <simon@josefsson.org>
20223
20224         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
20225
20226 2007-07-31  Bruno Haible  <bruno@clisp.org>
20227
20228         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
20229         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
20230         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
20231
20232 2007-07-31  Bruno Haible  <bruno@clisp.org>
20233
20234         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
20235         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
20236
20237 2007-07-30  Bruno Haible  <bruno@clisp.org>
20238
20239         * modules/base64 (License): Use the synonymous term "LGPLv2+".
20240         * modules/c-ctype (License): Likewise.
20241         * modules/c-strcase (License): Likewise.
20242         * modules/check-version (License): Likewise.
20243         * modules/iconv (License): Likewise.
20244         * modules/iconv_open (License): Likewise.
20245         * modules/read-file (License): Likewise.
20246         * modules/striconv (License): Likewise.
20247         * modules/strverscmp (License): Likewise.
20248         * modules/vasprintf (License): Likewise.
20249         * modules/crypto/des (License): Likewise.
20250         * modules/crypto/gc (License): Likewise.
20251         * modules/crypto/gc-arcfour (License): Likewise.
20252         * modules/crypto/gc-arctwo (License): Likewise.
20253         * modules/crypto/gc-des (License): Likewise.
20254         * modules/crypto/gc-hmac-md5 (License): Likewise.
20255         * modules/crypto/gc-hmac-sha1 (License): Likewise.
20256         * modules/crypto/gc-md2 (License): Likewise.
20257         * modules/crypto/gc-md4 (License): Likewise.
20258         * modules/crypto/gc-md5 (License): Likewise.
20259         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
20260         * modules/crypto/gc-random (License): Likewise.
20261         * modules/crypto/gc-rijndael (License): Likewise.
20262         * modules/crypto/gc-sha1 (License): Likewise.
20263         * modules/crypto/md2 (License): Likewise.
20264         * modules/crypto/md4 (License): Likewise.
20265
20266 2007-07-30  Jim Meyering  <jim@meyering.net>
20267
20268         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
20269         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
20270         it has valid stat data.  This bug would cause du not to count the
20271         sizes of inaccessible directories.
20272         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
20273         in <http://bugzilla.redhat.com/250077>.
20274
20275 2007-07-25  Peter O'Gorman  <peter@pogma.com>
20276             Bruno Haible  <bruno@clisp.org>
20277
20278         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
20279         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
20280         #include_next, gives a diagnostic about it, but reports no error in
20281         the exit code.
20282         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
20283
20284 2007-07-24  Ben Pfaff  <blp@gnu.org>
20285
20286         Improve name: "count-one-bits" is better than "popcount".
20287         * MODULES.html.sh: Update name.
20288         * lib/popcount.h: Renamed lib/count-one-bits.h.
20289         (popcount): Renamed count_one_bits.
20290         (popcountl): Renamed count_one_bits_l.
20291         (popcountll): Renamed count_one_bits_ll.
20292         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
20293         * modules/popcount: Renamed module/count-one-bits.
20294         * modules/popcount-tests: Renamed module/count-one-bits-tests.
20295         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
20296
20297 2007-07-23  Ben Pfaff  <blp@gnu.org>
20298
20299         * lib/popcount.h (popcount32): Reduce size of constants, to allow
20300         better code generation, and add U to large constants to avoid
20301         warnings, in non-GCC case.
20302         Suggested by Bruno Haible.
20303
20304 2007-07-23  Ben Pfaff  <blp@gnu.org>
20305
20306         * lib/popcount.h: Use verify_true instead of if...abort.
20307         * modules/popcount: Depend on verify module.
20308         Suggested by Jim Meyering.
20309
20310 2007-07-23  Bruno Haible  <bruno@clisp.org>
20311
20312         * gnulib-tool (func_import): Create a .cvsignore file also when the
20313         directory is not yet in CVS but the toplevel directory is. When
20314         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
20315         Reported by Karl Berry.
20316
20317 2007-07-22  Ben Pfaff  <blp@gnu.org>
20318
20319         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
20320         case.
20321         Suggested by Eric Blake.
20322
20323 2007-07-22  Ben Pfaff  <blp@gnu.org>
20324
20325         New module: popcount.
20326         * MODULES.html.sh: Add popcount.
20327         * modules/popcount: New file.
20328         * modules/popcount-tests: New file.
20329         * tests/test-popcount.c: New file.
20330         * lib/popcount.h: New file.
20331         * m4/popcount.m4: New file.
20332
20333 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
20334
20335         * build-aux/announce-gen: Update to GPLv3.
20336
20337         * build-aux/config.guess: Update from config.
20338
20339 2007-07-21  Bruno Haible  <bruno@clisp.org>
20340
20341         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
20342         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
20343
20344 2007-07-20  Jim Meyering  <jim@meyering.net>
20345
20346         * check-module: Diagnose a self-dependency.
20347
20348 2007-07-19  Bruno Haible  <bruno@clisp.org>
20349
20350         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
20351         empty.
20352         Reported by Eric Blake.
20353
20354 2007-07-18  Bruno Haible  <bruno@clisp.org>
20355
20356         * gnulib-tool: New options --po-base, --po-domain.
20357         (func_usage): Document them.
20358         (pobase, po_domain): New variables.
20359         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
20360         DEFAULT_TEXT_DOMAIN.
20361         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
20362         (func_import): Consider pobase and po_domain. Create a po/ directory.
20363         (func_create_testdir): Set pobase and po_domain to empty.
20364         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
20365         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
20366
20367 2007-07-18  Bruno Haible  <bruno@clisp.org>
20368
20369         * gnulib-tool (func_get_automake_snippet): Synthesize also an
20370         EXTRA_DIST augmentation for files in build-aux/.
20371
20372 2007-07-16  Bruno Haible  <bruno@clisp.org>
20373
20374         * modules/lseek (License): Use the synonymous term "LGPLv2+".
20375         * modules/getdelim (License): Likewise.
20376
20377 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
20378
20379         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
20380         * modules/d-type (License): Likewise.
20381         * modules/extensions (License): Likewise.
20382         * modules/fnmatch (License): Likewise.
20383         * modules/fseeko (License): Likewise.
20384         * modules/getaddrinfo (License): Likewise.
20385         * modules/getline (License): Likewise.
20386         * modules/getlogin_r (License): Likewise.
20387         * modules/getpass (License): Likewise.
20388         * modules/gettimeofday (License): Likewise.
20389         * modules/glob (License): Likewise.
20390         * modules/inet_ntop (License): Likewise.
20391         * modules/malloc (License): Likewise.
20392         * modules/malloca (License): Likewise.
20393         * modules/memmem (License): Likewise.
20394         * modules/mempcpy (License): Likewise.
20395         * modules/memset (License): Likewise.
20396         * modules/minmax (License): Likewise.
20397         * modules/mktime (License): Likewise.
20398         * modules/netinet_in (License): Likewise.
20399         * modules/pathmax (License): Likewise.
20400         * modules/poll (License): Likewise.
20401         * modules/regex (License): Likewise.
20402         * modules/snprintf (License): Likewise.
20403         * modules/stdbool (License): Likewise.
20404         * modules/stdint (License): Likewise.
20405         * modules/stdio (License): Likewise.
20406         * modules/strcase (License): Likewise.
20407         * modules/strcasestr (License): Likewise.
20408         * modules/strdup (License): Likewise.
20409         * modules/string (License): Likewise.
20410         * modules/strndup (License): Likewise.
20411         * modules/strnlen (License): Likewise.
20412         * modules/strpbrk (License): Likewise.
20413         * modules/strptime (License): Likewise.
20414         * modules/strsep (License): Likewise.
20415         * modules/sys_select (License): Likewise.
20416         * modules/sys_socket (License): Likewise.
20417         * modules/sys_stat (License): Likewise.
20418         * modules/sys_time (License): Likewise.
20419         * modules/time (License): Likewise.
20420         * modules/time_r (License): Likewise.
20421         * modules/timegm (License): Likewise.
20422         * modules/unistd (License): Likewise.
20423         * modules/vsnprintf (License): Likewise.
20424         * modules/wctype (License): Likewise.
20425
20426 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20427
20428         * modules/argz (License): LGPLv2+.
20429
20430 2007-07-15  Karl Berry  <karl@gnu.org>
20431
20432         * doc/gnulib.texi: revise node structure per new fdl.texi.
20433
20434 2007-07-14  Bruno Haible  <bruno@clisp.org>
20435
20436         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
20437         the output file.
20438         * lib/uniname/uninames.h: Regenerated.
20439
20440 2007-07-14  Karl Berry  <karl@gnu.org>
20441
20442         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
20443         omitting sectioning and index commands.
20444
20445 2007-07-13  Bruno Haible  <bruno@clisp.org>
20446
20447         New gnulib-tool option --more-symlinks.
20448         * gnulib-tool (func_usage): Document --more-symlinks.
20449         (do_copyrights): New variable.
20450         Recognize option --more-symlinks.
20451         (func_import): Don't add a copyright notice transform to
20452         sed_transform_lib_file if do_copyrights is empty.
20453
20454 2007-07-13  Bruno Haible  <bruno@clisp.org>
20455
20456         * lib/vasnprintf.c (decimal_point_char): Define also if
20457         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
20458         && !NEED_PRINTF_DIRECTIVE_A.
20459         Reported by Clemens Koller <clemens.koller@anagramm.de> via
20460         Gary V. Vaughan <gary@gnu.org>.
20461
20462 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
20463
20464         * lib/inttypes_.h: Undo previous change, since it was fixed
20465         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
20466
20467 2007-07-13  Bruno Haible  <bruno@clisp.org>
20468
20469         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
20470         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
20471
20472 2007-07-13  Jim Meyering  <jim@meyering.net>
20473
20474         df: Don't fail for Tru64's "file-on-file mount".
20475         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
20476         so we fall through and use statfs instead.  Details here:
20477         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
20478         Reported by Albert Chin.
20479
20480 2007-07-13  Bruno Haible  <bruno@clisp.org>
20481
20482         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
20483         * modules/configmake (License): Likewise.
20484         * modules/gettext (License): Likewise.
20485         * modules/gettext-h (License): Likewise.
20486         * modules/include_next (License): Likewise.
20487         * modules/link-warning (License): Likewise.
20488         * modules/localcharset (License): Likewise.
20489         * modules/localename (License): Likewise.
20490         * modules/lock (License): Likewise.
20491         * modules/relocatable-lib-lgpl (License): Likewise.
20492         * modules/size_max (License): Likewise.
20493         * modules/vasnprintf (License): Likewise.
20494         * modules/wchar (License): Likewise.
20495         * modules/xsize (License): Likewise.
20496
20497 2007-07-13  Bruno Haible  <bruno@clisp.org>
20498
20499         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
20500         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
20501
20502 2007-07-12  Bruno Haible  <bruno@clisp.org>
20503
20504         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
20505         in the modules files.
20506
20507 2007-07-11  Karl Berry  <karl@gnu.org>
20508
20509         * MODULES.html.sh (func_module): use
20510          sed -e '\|^'"${includefile}"'$|d'
20511          instead of /.../d, to avoid errors on $includefile's containing /.
20512
20513 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
20514
20515         * gnulib-tool (func_import): Avoid duplication of --avoid
20516         statements
20517         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
20518         names to `_' in variable names.
20519
20520 2007-07-10  Eric Blake  <ebb9@byu.net>
20521
20522         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
20523         * NEWS: Document this change.
20524
20525 2007-07-08  Bruno Haible  <bruno@clisp.org>
20526
20527         Update to Unicode 5.0.
20528         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
20529         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
20530         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
20531         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
20532         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
20533         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
20534         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
20535         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
20536         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
20537         U+10A3F, U+1D242..U+1D244.
20538         (nonspacing_table_ind): Update.
20539         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
20540         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
20541
20542 2007-07-08  Bruno Haible  <bruno@clisp.org>
20543
20544         Update to Unicode 5.0.
20545         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
20546         code transform. Extend the name index field of unicode_name_to_code and
20547         unicode_code_to_name from 16 to 24 bits.
20548         * lib/uniname/uniname.c (unicode_character_name,
20549         unicode_name_character): Add the range 0x12xxx to the code transform.
20550         * lib/uniname/uninames.h: Regenerated.
20551         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
20552
20553 2007-07-07  Bruno Haible  <bruno@clisp.org>
20554
20555         * modules/wcwidth-tests: New file.
20556         * tests/test-wcwidth.c: New file.
20557
20558         Work around MacOS X wcwidth() bug.
20559         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
20560         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
20561         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
20562         original wcwidth in non-UTF-8 locales.
20563         * modules/wcwidth (Depends-on): Add localcharset, streq,
20564         uniwidth/width.
20565         * doc/functions/wcwidth.texi: Update.
20566
20567 2007-07-07  Bruno Haible  <bruno@clisp.org>
20568
20569         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
20570         (wcwidth): New declaration.
20571         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
20572         macros.
20573         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
20574         here. Prepare for creating <wchar.h> unconditionally.
20575         * modules/wchar (Depends-on): Add link-warning.
20576         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
20577         REPLACE_WCWIDTH, and GL_LINK_WARNING.
20578         * lib/wcwidth.h: Remove file.
20579         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
20580         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
20581         * modules/wcwidth (Files): Remove lib/wcwidth.h.
20582         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
20583         (Include): Replace wcwidth.h with <wchar.h>.
20584         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
20585         * lib/mbchar.h: Don't include wcwidth.h.
20586         * lib/mbswidth.c: Likewise.
20587         * NEWS: Mention the change.
20588
20589 2007-07-07  Bruno Haible  <bruno@clisp.org>
20590
20591         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
20592         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
20593         definition with an external declaration.
20594         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
20595         defined as a function. Remove AC_C_INLINE requirement.
20596         * modules/wcwidth (Files): Add lib/wcwidth.c.
20597         (Makefile.am): Remove redundant statement.
20598
20599 2007-07-07  Bruno Haible  <bruno@clisp.org>
20600
20601         * MODULES.html.sh (Unicode string functions): Add the new modules.
20602
20603         * tests/uniwidth/test-u32-strwidth.c: New file.
20604         * modules/uniwidth/u32-strwidth-tests: New file.
20605
20606         * lib/uniwidth/u32-strwidth.c: New file.
20607         * modules/uniwidth/u32-strwidth: New file.
20608
20609         * tests/uniwidth/test-u16-strwidth.c: New file.
20610         * modules/uniwidth/u16-strwidth-tests: New file.
20611
20612         * lib/uniwidth/u16-strwidth.c: New file.
20613         * modules/uniwidth/u16-strwidth: New file.
20614
20615         * tests/uniwidth/test-u8-strwidth.c: New file.
20616         * modules/uniwidth/u8-strwidth-tests: New file.
20617
20618         * lib/uniwidth/u8-strwidth.c: New file.
20619         * modules/uniwidth/u8-strwidth: New file.
20620
20621         * tests/uniwidth/test-u32-width.c: New file.
20622         * modules/uniwidth/u32-width-tests: New file.
20623
20624         * lib/uniwidth/u32-width.c: New file.
20625         * modules/uniwidth/u32-width: New file.
20626
20627         * tests/uniwidth/test-u16-width.c: New file.
20628         * modules/uniwidth/u16-width-tests: New file.
20629
20630         * lib/uniwidth/u16-width.c: New file.
20631         * modules/uniwidth/u16-width: New file.
20632
20633         * tests/uniwidth/test-u8-width.c: New file.
20634         * modules/uniwidth/u8-width-tests: New file.
20635
20636         * lib/uniwidth/u8-width.c: New file.
20637         * modules/uniwidth/u8-width: New file.
20638
20639         * tests/uniwidth/test-uc_width.c: New file.
20640         * modules/uniwidth/width-tests: New file.
20641
20642         * lib/uniwidth/width.c: New file, from GNU libiconv.
20643         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
20644         * modules/uniwidth/width: New file.
20645
20646         * lib/uniwidth.h: New file, from GNU libiconv.
20647         * modules/uniwidth/base: New file.
20648
20649 2007-07-07  Bruno Haible  <bruno@clisp.org>
20650
20651         * lib/uniname.h: New file, from GNU gettext.
20652         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
20653         * lib/uniname/uninames.h: New file, from GNU gettext.
20654         * lib/uniname/uniname.c: New file, from GNU gettext.
20655         * tests/uniname/test-uninames.sh: New file.
20656         * tests/uniname/test-uninames.c: New file, from GNU gettext.
20657         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
20658         * modules/uniname/base: New file.
20659         * modules/uniname/uniname: New file.
20660         * modules/uniname/uniname-tests: New file.
20661         * MODULES.html.sh (Unicode string functions): Add the new modules.
20662
20663 2007-07-06  Bruno Haible  <bruno@clisp.org>
20664
20665         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
20666
20667 2007-07-06  Bruno Haible  <bruno@clisp.org>
20668
20669         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
20670         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
20671         includes <cygwin/sys_time.h> which includes <sys/select.h> which
20672         include <sys/time.h>.
20673         Reported by Eric Blake.
20674
20675 2007-07-06  Eric Blake  <ebb9@byu.net>
20676
20677         Fix testing canonicalize on cygwin.
20678         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
20679         Revert patch from 2007-06-19.
20680         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
20681         canonicalize module is also in use.
20682         * tests/test-canonicalize.c: New file.
20683         * tests/test-canonicalize.sh: Likewise.
20684         * modules/canonicalize-tests: Likewise.
20685
20686 2007-07-06  Jim Meyering  <jim@meyering.net>
20687
20688         * lib/getugroups.c (getugroups): Detect getgrent failure.
20689         Adjust comment to reflect reality: this function may return -1.
20690
20691 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
20692
20693         * build-aux/bootstrap (TP_URL,get_translations): Update to use
20694         the new TP address.
20695         (usage): Fix typo
20696         (gnulib_mk): New variable.
20697
20698 2007-07-05  Jim Meyering  <jim@meyering.net>
20699
20700         Don't let endgrent clobber errno, no matter how improbable.
20701         * lib/getugroups.c (getugroups): Save and restore errno around
20702         endgrent call.
20703
20704         Close the group DB even when failing with 2^31 or more members.
20705         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
20706
20707 2007-07-04  Jim Meyering  <jim@meyering.net>
20708
20709         * lib/getugroups.h: New file.
20710         * lib/getugroups.c: Include "getugroups.h".
20711         Remove uses of "register" keyword.
20712         Move local variable, "cp", down into scope where used.
20713         Give "username" parameter the "const" attribute.
20714         * modules/getugroups (Files): Add lib/getugroups.h
20715
20716 2007-07-04  Karl Berry  <karl@gnu.org>
20717
20718         * MODULES.html.sh (func_all_modules): Complete rename of
20719         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
20720
20721 2007-07-02  Bruno Haible  <bruno@clisp.org>
20722
20723         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
20724         mode, when inttypes.h comes from gnulib.
20725         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
20726
20727 2007-07-02  Simon Josefsson  <simon@josefsson.org>
20728
20729         * NEWS: Mention lgpl module name change.
20730
20731         * modules/lgpl-2.1: Renamed from lgpl.
20732
20733         * NEWS: Mention gpl module name change.
20734
20735         * modules/gpl-3.0: New file, based on gpl-2.0.
20736
20737         * modules/gpl-2.0: Renamed from gpl.
20738
20739         * modules/gpl: Fix filename, doc/gpl.texi is now found at
20740         doc/gpl-2.0.texi.
20741
20742 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
20743
20744         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
20745         #define __STDC_LIMIT_MACROS temporarily while including
20746         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
20747         Problem reported by Joel E. Denny in
20748         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
20749
20750 2007-07-01  Bruno Haible  <bruno@clisp.org>
20751
20752         * lib/unistdio.h: New file.
20753         * lib/unistdio/u-asnprintf.h: New file.
20754         * lib/unistdio/u-asprintf.h: New file.
20755         * lib/unistdio/u-printf-args.c: New file.
20756         * lib/unistdio/u-printf-args.h: New file.
20757         * lib/unistdio/u-printf-parse.h: New file.
20758         * lib/unistdio/u-snprintf.h: New file.
20759         * lib/unistdio/u-sprintf.h: New file.
20760         * lib/unistdio/u-vasprintf.h: New file.
20761         * lib/unistdio/u-vsnprintf.h: New file.
20762         * lib/unistdio/u-vsprintf.h: New file.
20763         * lib/unistdio/ulc-asnprintf.c: New file.
20764         * lib/unistdio/ulc-asprintf.c: New file.
20765         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
20766         * lib/unistdio/ulc-printf-parse.c: New file.
20767         * lib/unistdio/ulc-snprintf.c: New file.
20768         * lib/unistdio/ulc-sprintf.c: New file.
20769         * lib/unistdio/ulc-vasnprintf.c: New file.
20770         * lib/unistdio/ulc-vasprintf.c: New file.
20771         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
20772         * lib/unistdio/ulc-vsnprintf.c: New file.
20773         * lib/unistdio/ulc-vsprintf.c: New file.
20774         * lib/unistdio/u8-asnprintf.c: New file.
20775         * lib/unistdio/u8-asprintf.c: New file.
20776         * lib/unistdio/u8-printf-parse.c: New file.
20777         * lib/unistdio/u8-snprintf.c: New file.
20778         * lib/unistdio/u8-sprintf.c: New file.
20779         * lib/unistdio/u8-vasnprintf.c: New file.
20780         * lib/unistdio/u8-vasprintf.c: New file.
20781         * lib/unistdio/u8-vsnprintf.c: New file.
20782         * lib/unistdio/u8-vsprintf.c: New file.
20783         * lib/unistdio/u8-u8-asnprintf.c: New file.
20784         * lib/unistdio/u8-u8-asprintf.c: New file.
20785         * lib/unistdio/u8-u8-snprintf.c: New file.
20786         * lib/unistdio/u8-u8-sprintf.c: New file.
20787         * lib/unistdio/u8-u8-vasnprintf.c: New file.
20788         * lib/unistdio/u8-u8-vasprintf.c: New file.
20789         * lib/unistdio/u8-u8-vsnprintf.c: New file.
20790         * lib/unistdio/u8-u8-vsprintf.c: New file.
20791         * lib/unistdio/u16-asnprintf.c: New file.
20792         * lib/unistdio/u16-asprintf.c: New file.
20793         * lib/unistdio/u16-printf-parse.c: New file.
20794         * lib/unistdio/u16-snprintf.c: New file.
20795         * lib/unistdio/u16-sprintf.c: New file.
20796         * lib/unistdio/u16-vasnprintf.c: New file.
20797         * lib/unistdio/u16-vasprintf.c: New file.
20798         * lib/unistdio/u16-vsnprintf.c: New file.
20799         * lib/unistdio/u16-vsprintf.c: New file.
20800         * lib/unistdio/u16-u16-asnprintf.c: New file.
20801         * lib/unistdio/u16-u16-asprintf.c: New file.
20802         * lib/unistdio/u16-u16-snprintf.c: New file.
20803         * lib/unistdio/u16-u16-sprintf.c: New file.
20804         * lib/unistdio/u16-u16-vasnprintf.c: New file.
20805         * lib/unistdio/u16-u16-vasprintf.c: New file.
20806         * lib/unistdio/u16-u16-vsnprintf.c: New file.
20807         * lib/unistdio/u16-u16-vsprintf.c: New file.
20808         * lib/unistdio/u32-asnprintf.c: New file.
20809         * lib/unistdio/u32-asprintf.c: New file.
20810         * lib/unistdio/u32-printf-parse.c: New file.
20811         * lib/unistdio/u32-snprintf.c: New file.
20812         * lib/unistdio/u32-sprintf.c: New file.
20813         * lib/unistdio/u32-vasnprintf.c: New file.
20814         * lib/unistdio/u32-vasprintf.c: New file.
20815         * lib/unistdio/u32-vsnprintf.c: New file.
20816         * lib/unistdio/u32-vsprintf.c: New file.
20817         * lib/unistdio/u32-u32-asnprintf.c: New file.
20818         * lib/unistdio/u32-u32-asprintf.c: New file.
20819         * lib/unistdio/u32-u32-snprintf.c: New file.
20820         * lib/unistdio/u32-u32-sprintf.c: New file.
20821         * lib/unistdio/u32-u32-vasnprintf.c: New file.
20822         * lib/unistdio/u32-u32-vasprintf.c: New file.
20823         * lib/unistdio/u32-u32-vsnprintf.c: New file.
20824         * lib/unistdio/u32-u32-vsprintf.c: New file.
20825         * tests/unistdio/test-ulc-asnprintf1.c: New file.
20826         * tests/unistdio/test-ulc-asnprintf1.h: New file.
20827         * tests/unistdio/test-ulc-printf1.h: New file.
20828         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
20829         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
20830         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
20831         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
20832         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
20833         * tests/unistdio/test-ulc-vasprintf1.c: New file.
20834         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
20835         * tests/unistdio/test-ulc-vsprintf1.c: New file.
20836         * tests/unistdio/test-u8-asnprintf1.c: New file.
20837         * tests/unistdio/test-u8-asnprintf1.h: New file.
20838         * tests/unistdio/test-u8-printf1.h: New file.
20839         * tests/unistdio/test-u8-vasnprintf1.c: New file.
20840         * tests/unistdio/test-u8-vasnprintf2.c: New file.
20841         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
20842         * tests/unistdio/test-u8-vasnprintf3.c: New file.
20843         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
20844         * tests/unistdio/test-u8-vasprintf1.c: New file.
20845         * tests/unistdio/test-u8-vsnprintf1.c: New file.
20846         * tests/unistdio/test-u8-vsprintf1.c: New file.
20847         * tests/unistdio/test-u16-asnprintf1.c: New file.
20848         * tests/unistdio/test-u16-asnprintf1.h: New file.
20849         * tests/unistdio/test-u16-printf1.h: New file.
20850         * tests/unistdio/test-u16-vasnprintf1.c: New file.
20851         * tests/unistdio/test-u16-vasnprintf2.c: New file.
20852         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
20853         * tests/unistdio/test-u16-vasnprintf3.c: New file.
20854         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
20855         * tests/unistdio/test-u16-vasprintf1.c: New file.
20856         * tests/unistdio/test-u16-vsnprintf1.c: New file.
20857         * tests/unistdio/test-u16-vsprintf1.c: New file.
20858         * tests/unistdio/test-u32-asnprintf1.c: New file.
20859         * tests/unistdio/test-u32-asnprintf1.h: New file.
20860         * tests/unistdio/test-u32-printf1.h: New file.
20861         * tests/unistdio/test-u32-vasnprintf1.c: New file.
20862         * tests/unistdio/test-u32-vasnprintf2.c: New file.
20863         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
20864         * tests/unistdio/test-u32-vasnprintf3.c: New file.
20865         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
20866         * tests/unistdio/test-u32-vasprintf1.c: New file.
20867         * tests/unistdio/test-u32-vsnprintf1.c: New file.
20868         * tests/unistdio/test-u32-vsprintf1.c: New file.
20869         * modules/unistdio/base: New file.
20870         * modules/unistdio/u-printf-args: New file.
20871         * modules/unistdio/ulc-asnprintf: New file.
20872         * modules/unistdio/ulc-asprintf: New file.
20873         * modules/unistdio/ulc-fprintf: New file.
20874         * modules/unistdio/ulc-printf-parse: New file.
20875         * modules/unistdio/ulc-snprintf: New file.
20876         * modules/unistdio/ulc-sprintf: New file.
20877         * modules/unistdio/ulc-vasnprintf: New file.
20878         * modules/unistdio/ulc-vasprintf: New file.
20879         * modules/unistdio/ulc-vfprintf: New file.
20880         * modules/unistdio/ulc-vsnprintf: New file.
20881         * modules/unistdio/ulc-vsprintf: New file.
20882         * modules/unistdio/u8-asnprintf: New file.
20883         * modules/unistdio/u8-asprintf: New file.
20884         * modules/unistdio/u8-printf-parse: New file.
20885         * modules/unistdio/u8-snprintf: New file.
20886         * modules/unistdio/u8-sprintf: New file.
20887         * modules/unistdio/u8-vasnprintf: New file.
20888         * modules/unistdio/u8-vasprintf: New file.
20889         * modules/unistdio/u8-vsnprintf: New file.
20890         * modules/unistdio/u8-vsprintf: New file.
20891         * modules/unistdio/u8-u8-asnprintf: New file.
20892         * modules/unistdio/u8-u8-asprintf: New file.
20893         * modules/unistdio/u8-u8-snprintf: New file.
20894         * modules/unistdio/u8-u8-sprintf: New file.
20895         * modules/unistdio/u8-u8-vasnprintf: New file.
20896         * modules/unistdio/u8-u8-vasprintf: New file.
20897         * modules/unistdio/u8-u8-vsnprintf: New file.
20898         * modules/unistdio/u8-u8-vsprintf: New file.
20899         * modules/unistdio/u16-asnprintf: New file.
20900         * modules/unistdio/u16-asprintf: New file.
20901         * modules/unistdio/u16-printf-parse: New file.
20902         * modules/unistdio/u16-snprintf: New file.
20903         * modules/unistdio/u16-sprintf: New file.
20904         * modules/unistdio/u16-vasnprintf: New file.
20905         * modules/unistdio/u16-vasprintf: New file.
20906         * modules/unistdio/u16-vsnprintf: New file.
20907         * modules/unistdio/u16-vsprintf: New file.
20908         * modules/unistdio/u16-u16-asnprintf: New file.
20909         * modules/unistdio/u16-u16-asprintf: New file.
20910         * modules/unistdio/u16-u16-snprintf: New file.
20911         * modules/unistdio/u16-u16-sprintf: New file.
20912         * modules/unistdio/u16-u16-vasnprintf: New file.
20913         * modules/unistdio/u16-u16-vasprintf: New file.
20914         * modules/unistdio/u16-u16-vsnprintf: New file.
20915         * modules/unistdio/u16-u16-vsprintf: New file.
20916         * modules/unistdio/u32-asnprintf: New file.
20917         * modules/unistdio/u32-asprintf: New file.
20918         * modules/unistdio/u32-printf-parse: New file.
20919         * modules/unistdio/u32-snprintf: New file.
20920         * modules/unistdio/u32-sprintf: New file.
20921         * modules/unistdio/u32-vasnprintf: New file.
20922         * modules/unistdio/u32-vasprintf: New file.
20923         * modules/unistdio/u32-vsnprintf: New file.
20924         * modules/unistdio/u32-vsprintf: New file.
20925         * modules/unistdio/u32-u32-asnprintf: New file.
20926         * modules/unistdio/u32-u32-asprintf: New file.
20927         * modules/unistdio/u32-u32-snprintf: New file.
20928         * modules/unistdio/u32-u32-sprintf: New file.
20929         * modules/unistdio/u32-u32-vasnprintf: New file.
20930         * modules/unistdio/u32-u32-vasprintf: New file.
20931         * modules/unistdio/u32-u32-vsnprintf: New file.
20932         * modules/unistdio/u32-u32-vsprintf: New file.
20933         * modules/unistdio/ulc-asnprintf-tests: New file.
20934         * modules/unistdio/ulc-vasnprintf-tests: New file.
20935         * modules/unistdio/ulc-vasprintf-tests: New file.
20936         * modules/unistdio/ulc-vsnprintf-tests: New file.
20937         * modules/unistdio/ulc-vsprintf-tests: New file.
20938         * modules/unistdio/u8-asnprintf-tests: New file.
20939         * modules/unistdio/u8-vasnprintf-tests: New file.
20940         * modules/unistdio/u8-vasprintf-tests: New file.
20941         * modules/unistdio/u8-vsnprintf-tests: New file.
20942         * modules/unistdio/u8-vsprintf-tests: New file.
20943         * modules/unistdio/u16-asnprintf-tests: New file.
20944         * modules/unistdio/u16-vasnprintf-tests: New file.
20945         * modules/unistdio/u16-vasprintf-tests: New file.
20946         * modules/unistdio/u16-vsnprintf-tests: New file.
20947         * modules/unistdio/u16-vsprintf-tests: New file.
20948         * modules/unistdio/u32-asnprintf-tests: New file.
20949         * modules/unistdio/u32-vasnprintf-tests: New file.
20950         * modules/unistdio/u32-vasprintf-tests: New file.
20951         * modules/unistdio/u32-vsnprintf-tests: New file.
20952         * modules/unistdio/u32-vsprintf-tests: New file.
20953         * MODULES.html.sh (Unicode string functions): Add the new modules.
20954
20955 2007-07-01  Bruno Haible  <bruno@clisp.org>
20956
20957         * lib/sprintf.c (sprintf): Limit the available length estimation,
20958         to avoid address wraparound.
20959         * lib/vsprintf.c (vsprintf): Likewise.
20960         * modules/sprintf-posix (Dependencies): Add stdint.
20961         * modules/vsprintf-posix (Dependencies): Likewise.
20962
20963 2007-07-01  Bruno Haible  <bruno@clisp.org>
20964
20965         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
20966         Windows PATH as well. Conservative double-quoting. Comments.
20967
20968 2007-07-01  Bruno Haible  <bruno@clisp.org>
20969             Eric Blake  <ebb9@byu.net>
20970             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20971
20972         * gnulib-tool (self_abspathname): Fix algorithm to cope with
20973         empty components in $PATH, denoting '.'.
20974
20975 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20976
20977         * gnulib-tool: Fix indentation.
20978         (func_create_megatestdir): Likewise.
20979         Report by Bruno Haible.
20980
20981 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20982
20983         Sync from Automake.
20984         * build-aux/gnupload: Fix shell portability issues with for loops.
20985         Report by Karl Berry.
20986
20987 2007-06-29  Simon Josefsson  <simon@josefsson.org>
20988
20989         * build-aux/maint.mk (POURL): Use translationproject.org.
20990
20991 2007-06-27  Simon Josefsson  <simon@josefsson.org>
20992             Bruno Haible  <bruno@clisp.org>
20993
20994         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
20995         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
20996         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
20997         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
20998         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
20999
21000 2007-06-27  Bruno Haible  <bruno@clisp.org>
21001
21002         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
21003         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
21004
21005 2007-06-26  Karl Berry  <karl@gnu.org>
21006
21007         * MODULES.html.sh: remove xreadlink-with-size.
21008
21009 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
21010
21011         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
21012         method that I hope also handles the double-include problem noted
21013         by Bruno Haible in
21014         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
21015
21016 2007-06-23  Bruno Haible  <bruno@clisp.org>
21017
21018         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
21019         Don't let the 'mostlyclean' target fail if the last subdirectory could
21020         not be removed.
21021         Reported by Karl Berry.
21022
21023 2007-06-23  Bruno Haible  <bruno@clisp.org>
21024
21025         * gnulib-tool (echo): Add a speedier workaround for ksh.
21026         * tests/test-echo.sh: Likewise.
21027
21028 2007-06-23  Bruno Haible  <bruno@clisp.org>
21029
21030         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
21031         * tests/test-echo.sh: Likewise.
21032
21033 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21034
21035         * gnulib-tool (IFS): Initialize early, so we don't set it to
21036         empty later.
21037         (self_abspathname): Rewrite algorithm to set it, reindent.
21038         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
21039         (func_create_megatestdir): Merge some sed scripts.
21040
21041 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
21042
21043         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
21044         exposed by Sun Studio 11 cc on Solaris 8.
21045
21046 2007-06-22  Bruno Haible  <bruno@clisp.org>
21047
21048         * gnulib-tool (echo): Ensure the echo primitive does not interpret
21049         backslashes.
21050         * tests/test-echo.sh: New file.
21051
21052 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
21053
21054         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
21055         simplify `sed_replace_build_aux' scripts, they are portable but
21056         echoing them with `echo' is not.
21057         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
21058
21059 2007-06-21  Karl Berry  <karl@gnu.org>
21060
21061         * config/srclist.txt: guess we can't handle the licenses via
21062         srclist at the moment.
21063
21064 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
21065
21066         * MODULES.html.sh: Add include_next.
21067         * modules/include_next: New file.
21068
21069 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
21070
21071         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
21072         INCLUDE_NEXT.
21073         (gl_CHECK_NEXT_HEADERS): New macro.
21074         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
21075         the obsolescent gl_ABSOLUTE_HEADER.
21076         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
21077         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
21078         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
21079         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
21080         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
21081         * m4/math_h.m4 (gl_MATH_H): Likewise.
21082         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
21083         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
21084         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
21085         * m4/stdint.m4 (gl_STDINT_H): Likewise.
21086         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
21087         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
21088         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
21089         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
21090         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
21091         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
21092         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
21093         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
21094         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
21095         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
21096         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
21097         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
21098         * m4/inttypes.m4 (gl_INTTYPES_H): Define
21099         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
21100         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
21101         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
21102         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
21103         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
21104         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
21105         * lib/float_.h: Likewise.
21106         * lib/inttypes_.h: Likewise.
21107         * lib/math_.h: Likewise.
21108         * lib/search_.h: Likewise.
21109         * lib/signal_.h: Likewise.
21110         * lib/stdint_.h: Likewise.
21111         * lib/stdio_.h: Likewise.
21112         * lib/stdlib_.h: Likewise.
21113         * lib/string_.h: Likewise.
21114         * lib/sys_stat_.h: Likewise.
21115         * lib/sys_time_.h: Likewise.
21116         * lib/time_.h: Likewise.
21117         * lib/unistd_.h: Likewise.
21118         * lib/wchar_.h: Likewise.
21119         * lib/wctype_.h: Likewise.
21120         * lib/dirent_.h: Likewise.
21121         * lib/iconv_.h: Likewise.
21122         * lib/locale_.h: Likewise.
21123         * lib/netinet_in_.h: Likewise.
21124         * lib/sys_select_.h: Likewise.
21125         * lib/sys_socket_.h: Likewise.
21126         * lib/sysexits_.h: Likewise.
21127         * modules/fcntl (Depends-on): Depend on include_next, not
21128         absolute_header.
21129         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
21130         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
21131         * modules/fchdir: Likewise.
21132         * modules/float: Likewise.
21133         * modules/iconv_open: Likewise.
21134         * modules/inttypes: Likewise.
21135         * modules/locale: Likewise.
21136         * modules/math: Likewise.
21137         * modules/netinet_in: Likewise.
21138         * modules/search: Likewise.
21139         * modules/signal: Likewise.
21140         * modules/stdint: Likewise.
21141         * modules/stdio: Likewise.
21142         * modules/stdlib: Likewise.
21143         * modules/string: Likewise.
21144         * modules/sys_select: Likewise.
21145         * modules/sys_socket: Likewise.
21146         * modules/sys_stat: Likewise.
21147         * modules/sys_time: Likewise.
21148         * modules/sysexits: Likewise.
21149         * modules/time: Likewise.
21150         * modules/unistd: Likewise.
21151         * modules/wchar: Likewise.
21152         * modules/wctype: Likewise.
21153         * modules/sys_stat: Change maintainer to "all".
21154         * modules/unistd: Likewise.
21155
21156 2007-06-20  Karl Berry  <karl@gnu.org>
21157
21158         * config/srclist.txt: track www changes in license files.
21159
21160 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
21161
21162         * build-aux/bootstrap: Remove stray dot.
21163         Make sure build_aux settings are honored when linking
21164         gnulib_extra_files.
21165
21166 2007-06-19  Eric Blake  <ebb9@byu.net>
21167
21168         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
21169         Allow compilation on cygwin.
21170
21171 2007-06-19  Jim Meyering  <jim@meyering.net>
21172
21173         xreadlink-with-size: Remove module.  No longer used.
21174         Ex-callers now use xreadlink or mreadlink-with-size.
21175         * modules/xreadlink-with-size: Remove module.
21176         * lib/xreadlink-with-size.c: Remove file.
21177         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
21178         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
21179         just before the function definition *is* accurate.
21180
21181         Eliminate one way canonicalize_filename_mode could exit.
21182         * lib/canonicalize.c (canonicalize_filename_mode):
21183         Use mreadlink_with_size, not xreadlink_with_size.
21184
21185 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
21186
21187         Detect porting problems to FreeBSD/arm, which has time_t wider than
21188         long int.  Original problem reported for GNU diff by Xin Li in
21189         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
21190         * modules/getdate (Depends-on): Add intprops, verify.
21191         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
21192         is an integer type no wider than long int.
21193
21194 2007-06-18  Jim Meyering  <jim@meyering.net>
21195
21196         New module: mreadlink-with-size.
21197         * MODULES.html.sh: Add mreadlink-with-size.
21198         * modules/mreadlink-with-size: New module
21199         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
21200         not xreadlink-with-size.
21201         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
21202
21203 2007-06-16  Bruno Haible  <bruno@clisp.org>
21204
21205         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
21206         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
21207         Reported by Gary V. Vaughan <gary@gnu.org>.
21208
21209 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
21210
21211         Revamp lchown so that it lives in unistd.h where it belongs.
21212         * lib/lchown.h: Remove.
21213         * lib/dirchownmod.c: Don't include lib/lchown.h.
21214         * lib/fchownat.c: Likewise.
21215         * lib/openat.c: Likewise.
21216         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
21217         does not follow symlinks.
21218         (EOPNOTSUPP): Define if not defined.
21219         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
21220         is defined to 0.
21221         (lchown): New decl.
21222         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
21223         Do not check for lchown decl.
21224         Set REPLACE_LCHOWN.
21225         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
21226         REPLACE_LCHOWN.
21227         * modules/chown: Make it clear it follows symlinks.
21228         * modules/lchown: Make it clear it doesn't follow symlinks.
21229         (Files): Remove lib/lchown.h
21230         (Depends-on): Add unistd.
21231         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
21232         (Include): Include <unistd.h>, not "lchown.h".
21233         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
21234         REPLACE_LCHOWN.
21235
21236 2007-06-15  Jim Meyering  <jim@meyering.net>
21237
21238         Change license (GPL to LGPL) of fsusage and dependents.
21239         * modules/fsusage (License): Change to LGPL.
21240         * modules/full-read (License): Likewise.
21241         * modules/full-write (License): Likewise.
21242         * modules/safe-read (License): Likewise.
21243         * modules/safe-write (License): Likewise.
21244
21245 2007-06-14  Ben Pfaff  <blp@gnu.org>
21246
21247         Missing part of allocsa -> malloca transition.
21248         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
21249         gl_MALLOCA.
21250
21251 2007-06-12  Bruno Haible  <bruno@clisp.org>
21252
21253         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
21254         to ia64, x86_64, i386.
21255         Reported by Eric Blake.
21256
21257 2007-06-12  Bruno Haible  <bruno@clisp.org>
21258
21259         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
21260         cross-compiling to x86_64.
21261
21262 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
21263
21264         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
21265         glitch reported by Ralf Wildenhues in
21266         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
21267
21268         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
21269         Vin Shelton.
21270
21271 2007-06-11  Bruno Haible  <bruno@clisp.org>
21272
21273         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
21274         replacement string.
21275         Reported by Eric Blake.
21276
21277 2007-06-10  Bruno Haible  <bruno@clisp.org>
21278
21279         Prepare vasnprintf code for use with Unicode strings.
21280         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
21281         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
21282         TYPE_U32_STRING.
21283         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
21284         a_u32_string variants.
21285         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
21286         * lib/printf-args.c: Don't include config.h and the specification
21287         header if PRINTF_FETCHARGS is already defined.
21288         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
21289         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
21290         TYPE_U16_STRING, TYPE_U32_STRING.
21291         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
21292         u16_directive, u16_directives, u32_directive, u32_directives): New
21293         types.
21294         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
21295         New declarations.
21296         * lib/printf-parse.c: Don't include config.h and the specification
21297         header if PRINTF_PARSE is already defined. Eliminate the set of
21298         parameters for WIDE_CHAR_VERSION; the user of this file must provide
21299         them now. Include c-ctype.h.
21300         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
21301         directive and CHAR_T_ONLY_ASCII.
21302         * lib/vasnprintf.c: Don't include config.h and the specification header
21303         if VASNPRINTF is already defined.
21304         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
21305         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
21306         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
21307         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
21308         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
21309         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
21310         code accordingly.
21311         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
21312         pad_ourselves also in this case, with the 'c' and 's' directives, and
21313         with a different notion of "width".
21314         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
21315
21316 2007-06-10  Bruno Haible  <bruno@clisp.org>
21317
21318         * modules/unistr/u32-mbsnlen: New file.
21319         * lib/unistr/u32-mbsnlen.c: New file.
21320
21321         * modules/unistr/u16-mbsnlen: New file.
21322         * lib/unistr/u16-mbsnlen.c: New file.
21323
21324         * modules/unistr/u8-mbsnlen: New file.
21325         * lib/unistr/u8-mbsnlen.c: New file.
21326
21327         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
21328         declarations.
21329
21330 2007-06-10  Bruno Haible  <bruno@clisp.org>
21331
21332         * lib/string_.h (mbsnlen): New declaration.
21333         * lib/mbsnlen.c: New file.
21334         * m4/mbsnlen.m4: New file.
21335         * modules/mbsnlen: New file.
21336         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
21337         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
21338         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
21339
21340 2007-06-10  Bruno Haible  <bruno@clisp.org>
21341
21342         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
21343
21344 2007-06-10  Bruno Haible  <bruno@clisp.org>
21345
21346         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
21347         * lib/mbuiter.h: Likewise.
21348
21349 2007-06-10  Bruno Haible  <bruno@clisp.org>
21350
21351         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
21352         declaration.
21353
21354 2007-06-10  Karl Berry  <karl@gnu.org>
21355
21356         * config/srclist.txt: remove gettext entries, Bruno prefers
21357         to update individually.
21358
21359 2007-06-10  Bruno Haible  <bruno@clisp.org>
21360
21361         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
21362         'maxlen'. Ensure only length + width bytes are allocated, not
21363         length + 1 + width.
21364
21365 2007-06-09  Bruno Haible  <bruno@clisp.org>
21366
21367         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
21368         (CHAR_T): Remove macro.
21369         (VASNPRINTF): Update.
21370
21371 2007-06-09  Bruno Haible  <bruno@clisp.org>
21372
21373         * MODULES.html.sh (Unicode string functions): Add the new modules.
21374
21375         * modules/uniconv/u32-conv-to-enc: New file.
21376         * lib/uniconv/u32-conv-to-enc.c: New file.
21377         * modules/uniconv/u32-conv-to-enc-tests: New file.
21378         * tests/uniconv/test-u32-conv-to-enc.c: New file.
21379
21380         * modules/uniconv/u16-conv-to-enc: New file.
21381         * lib/uniconv/u16-conv-to-enc.c: New file.
21382         * lib/uniconv/u-conv-to-enc.h: New file.
21383         * modules/uniconv/u16-conv-to-enc-tests: New file.
21384         * tests/uniconv/test-u16-conv-to-enc.c: New file.
21385
21386         * modules/uniconv/u8-conv-to-enc: New file.
21387         * lib/uniconv/u8-conv-to-enc.c: New file.
21388         * modules/uniconv/u8-conv-to-enc-tests: New file.
21389         * tests/uniconv/test-u8-conv-to-enc.c: New file.
21390
21391         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
21392         u32_conv_to_encoding): New declarations.
21393
21394 2007-06-09  Bruno Haible  <bruno@clisp.org>
21395
21396         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
21397
21398 2007-06-09  Bruno Haible  <bruno@clisp.org>
21399
21400         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
21401         * modules/malloca: Renamed from modules/allocsa, updated.
21402         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
21403         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
21404         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
21405         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
21406         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
21407         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
21408         * modules/xmalloca: Renamed from modules/xallocsa, updated.
21409         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
21410         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
21411         * modules/c-strcasestr (Depends-on): Update.
21412         * lib/c-strcasestr.c: Update.
21413         * modules/c-strstr (Depends-on): Update.
21414         * lib/c-strstr.c: Update.
21415         * modules/canonicalize-lgpl (Depends-on): Update.
21416         * lib/canonicalize-lgpl.c: Update.
21417         * modules/clean-temp (Depends-on): Update.
21418         * lib/clean-temp.c: Update.
21419         * modules/csharpcomp (Depends-on): Update.
21420         * lib/csharpcomp.c: Update.
21421         * modules/csharpexec (Depends-on): Update.
21422         * lib/csharpexec.c: Update.
21423         * modules/javacomp (Depends-on): Update.
21424         * lib/javacomp.c: Update.
21425         * modules/javaexec (Depends-on): Update.
21426         * lib/javaexec.c: Update.
21427         * modules/mbscasestr (Depends-on): Update.
21428         * lib/mbscasestr.c: Update.
21429         * modules/mbsstr (Depends-on): Update.
21430         * lib/mbsstr.c: Update.
21431         * modules/setenv (Depends-on): Update.
21432         * lib/setenv.c: Update.
21433         * modules/strcasestr (Depends-on): Update.
21434         * lib/strcasestr.c: Update.
21435         * modules/striconveha (Depends-on): Update.
21436         * lib/striconveha.c: Update.
21437         * modules/relocatable-prog-wrapper (Files): Update.
21438         * lib/relocwrapper.c: Update.
21439         * build-aux/install-reloc: Update.
21440         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
21441
21442 2007-06-08  Bruno Haible  <bruno@clisp.org>
21443
21444         Port to uClibc.
21445         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
21446         * lib/fpurge.c (fpurge): Likewise.
21447         * lib/freading.c (freading): Likewise.
21448         * lib/fseeko.c (rpl_fseeko): Likewise.
21449         * lib/fseterr.c (fseterr): Likewise.
21450         * lib/fwriting.c (fwriting): Likewise.
21451         * tests/test-fflush.c (main): Avoid a failure on uClibc.
21452
21453 2007-06-08  Bruno Haible  <bruno@clisp.org>
21454
21455         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
21456         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
21457         * modules/gettext (Files): Add m4/intlmacosx.m4.
21458
21459 2007-06-07  Bruno Haible  <bruno@clisp.org>
21460
21461         * modules/localename-tests: New file.
21462         * tests/test-localename.c: New file.
21463
21464         New module 'localename'.
21465         * lib/localename.h: New file.
21466         * lib/localename.c: New file, from GNU gettext.
21467         * m4/localename.m4: New file.
21468         * modules/localename: New file.
21469
21470 2007-06-07  Bruno Haible  <bruno@clisp.org>
21471
21472         Work around the lack of <wchar.h> on some builds of uClibc.
21473         * doc/headers/wchar.texi: Update.
21474         * lib/wchar_.h: Include <wchar.h> only if it exists.
21475         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
21476         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
21477         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
21478         doesn't exist.
21479         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
21480         * modules/mbfile (Depends-on): Add wchar.
21481         * modules/mbiter (Depends-on): Likewise.
21482         * modules/mbuiter (Depends-on): Likewise.
21483         Reported by Simon Josefsson.
21484
21485 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
21486
21487         Work around problem reported by Steven M. Schweda in
21488         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
21489         Tru64 5.1B with the Compaq compiler environment installed declares
21490         an 'isblank' function but does not define it in the C library.
21491         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
21492         * lib/regex_internal.h (isblank): Likewise.
21493         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
21494         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
21495
21496 2007-06-05  Bruno Haible  <bruno@clisp.org>
21497
21498         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
21499         ia64.
21500         * modules/printf-safe: New file.
21501         * modules/fprintf-posix (Depends-on): Add printf-safe.
21502         * modules/printf-posix (Depends-on): Likewise.
21503         * modules/snprintf-posix (Depends-on): Likewise.
21504         * modules/sprintf-posix (Depends-on): Likewise.
21505         * modules/vasnprintf-posix (Depends-on): Likewise.
21506         * modules/vasprintf-posix (Depends-on): Likewise.
21507         * modules/vfprintf-posix (Depends-on): Likewise.
21508         * modules/vprintf-posix (Depends-on): Likewise.
21509         * modules/vsnprintf-posix (Depends-on): Likewise.
21510         * modules/vsprintf-posix (Depends-on): Likewise.
21511         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
21512         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
21513         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
21514         "no" on i386, x86_64, ia64.
21515         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
21516         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
21517         on i386, x86_64, ia64.
21518         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
21519         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
21520         on i386, x86_64, ia64.
21521         * tests/test-vasnprintf-posix.c: Include float.h.
21522         (LDBL80_WORDS): New macro.
21523         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
21524         on i386, x86_64, ia64.
21525         * tests/test-vasprintf-posix.c: Include float.h.
21526         (LDBL80_WORDS): New macro.
21527         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
21528         on i386, x86_64, ia64.
21529         * tests/test-snprintf-posix.c: Include float.h.
21530         * tests/test-sprintf-posix.c: Likewise.
21531         * tests/test-vsnprintf-posix.c: Likewise.
21532         * tests/test-vsprintf-posix.c: Likewise.
21533
21534 2007-06-05  Bruno Haible  <bruno@clisp.org>
21535
21536         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
21537         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
21538         non-IEEE numbers on i386, x86_64, ia64.
21539         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
21540         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
21541         * tests/test-isnanl.h: Include float.h.
21542         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
21543
21544 2007-06-05  Bruno Haible  <bruno@clisp.org>
21545
21546         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
21547         also the %a / %A. Handle the %a / %A code before this extra handling.
21548
21549 2007-06-05  Bruno Haible  <bruno@clisp.org>
21550
21551         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
21552         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
21553
21554 2007-06-05  Bruno Haible  <bruno@clisp.org>
21555
21556         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
21557         typo in variable name.
21558
21559 2007-06-05  Eric Blake  <ebb9@byu.net>
21560
21561         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
21562         Reported by Simon Josefsson.
21563
21564 2007-06-04  Bruno Haible  <bruno@clisp.org>
21565
21566         Avoid test failures on some PowerPC platforms.
21567         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
21568         Define differently for PowerPC.
21569         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
21570         Reported by Gary V. Vaughan <gary@gnu.org>.
21571
21572 2007-06-02  Bruno Haible  <bruno@clisp.org>
21573
21574         Fix test-stdint failure on FreeBSD/ia64.
21575         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
21576         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
21577         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
21578         * doc/headers/stdint.texi: Update.
21579
21580 2007-06-01  Bruno Haible  <bruno@clisp.org>
21581
21582         * tests/test-binary-io.c (main): Pass a third argument to open().
21583         Reported by Gary V. Vaughan <gary@gnu.org>.
21584
21585 2007-06-01  Bruno Haible  <bruno@clisp.org>
21586
21587         * doc/functions/frexpl.texi: Update for mingw.
21588
21589 2007-06-01  Bruno Haible  <bruno@clisp.org>
21590
21591         * tests/test-lseek.c (main): Disable test of errno for invalid third
21592         argument.
21593         * doc/functions/lseek.texi: Update.
21594         Reported by Gary V. Vaughan <gary@gnu.org>.
21595
21596 2007-05-28  Bruno Haible  <bruno@clisp.org>
21597
21598         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
21599
21600 2007-05-31  Eric Blake  <ebb9@byu.net>
21601
21602         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
21603         cross compiling.
21604
21605 2007-05-30  Eric Blake  <ebb9@byu.net>
21606         and Bruno Haible  <bruno@clisp.org>
21607
21608         Work around mingw test failures exposed by m4-1.4.9b.
21609         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
21610         * tests/test-unistd.c: Disable uid_t and git_t tests for the
21611         moment.
21612
21613 2007-05-30  Bruno Haible  <bruno@clisp.org>
21614
21615         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
21616         assuming that they are closed. Needed on HP-UX 11.
21617
21618 2007-05-29  Bruno Haible  <bruno@clisp.org>
21619
21620         Fix a problem with #include_next.
21621         * lib/dirent_.h: Split the double-inclusion guard.
21622         * lib/fcntl_.h: Likewise.
21623         * lib/float_.h: Likewise.
21624         * lib/iconv_.h: Likewise.
21625         * lib/inttypes_.h: Likewise.
21626         * lib/locale_.h: Likewise.
21627         * lib/math_.h: Likewise.
21628         * lib/netinet_in_.h: Likewise.
21629         * lib/search_.h: Likewise.
21630         * lib/signal_.h: Likewise.
21631         * lib/stdint_.h: Likewise.
21632         * lib/stdio_.h: Likewise.
21633         * lib/stdlib_.h: Likewise.
21634         * lib/string_.h: Likewise.
21635         * lib/sys_select_.h: Likewise.
21636         * lib/sys_socket_.h: Likewise.
21637         * lib/sys_stat_.h: Likewise.
21638         * lib/sys_time_.h: Likewise.
21639         * lib/sysexits_.h: Likewise.
21640         * lib/time_.h: Likewise.
21641         * lib/unistd_.h: Likewise.
21642         * lib/wchar_.h: Likewise.
21643         * lib/wctype_.h: Likewise.
21644
21645 2007-05-29  Bruno Haible  <bruno@clisp.org>
21646
21647         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
21648         for the moment.
21649
21650 2007-05-29  Bruno Haible  <bruno@clisp.org>
21651
21652         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
21653         invocation.
21654         Reported by Eric Blake.
21655
21656 2007-05-29  Bruno Haible  <bruno@clisp.org>
21657
21658         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
21659         compiling case.
21660
21661 2007-05-29  Eric Blake  <ebb9@byu.net>
21662             Bruno Haible  <bruno@clisp.org>
21663
21664         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
21665         cross compiles.
21666
21667 2007-05-28  Eric Blake  <ebb9@byu.net>
21668
21669         * modules/closein-tests (test_closein_LDADD): Support test on
21670         cygwin with libtool.
21671
21672 2007-05-28  Bruno Haible  <bruno@clisp.org>
21673
21674         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
21675         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
21676         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
21677         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
21678         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
21679         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
21680         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
21681         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
21682         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
21683
21684 2007-05-28  Eric Blake  <ebb9@byu.net>
21685
21686         Unconditionally include <config.h> in unit tests.
21687         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
21688         * tests/test-allocsa.c, tests/test-arcfour.c,
21689         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
21690         tests/test-array_list.c, tests/test-array_oset.c,
21691         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
21692         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
21693         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
21694         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
21695         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
21696         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
21697         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
21698         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
21699         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
21700         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
21701         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
21702         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
21703         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
21704         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
21705         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
21706         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
21707         test-md5.c, test-memmem.c, test-printf-posix.c,
21708         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
21709         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
21710         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
21711         test-strcasestr.c, test-striconv.c, test-striconveh.c,
21712         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
21713         test-vasnprintf-posix2.c, test-vasnprintf.c,
21714         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
21715         test-vfprintf-posix.c, test-vprintf-posix.c,
21716         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
21717         test-xvasprintf.c: Likewise.
21718
21719 2007-05-28  Bruno Haible  <bruno@clisp.org>
21720
21721         * gnulib-tool (func_import): Remember the --with-tests command-line
21722         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
21723         Reported by Eric Blake.
21724
21725 2007-05-28  Bruno Haible  <bruno@clisp.org>
21726
21727         * modules/ftell-tests: New file.
21728         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
21729         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
21730
21731         * lib/ftell.c: New file.
21732         * modules/ftell: New file.
21733         * m4/ftell.m4: New file.
21734         * doc/functions/ftell.texi: Update.
21735         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
21736         REPLACE_FTELL.
21737         * lib/stdio_.h (rpl_ftell): New declaration.
21738         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
21739         REPLACE_FTELL.
21740
21741 2007-05-28  Eric Blake  <ebb9@byu.net>
21742
21743         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
21744
21745 2007-05-28  Bruno Haible  <bruno@clisp.org>
21746
21747         * modules/fseek-tests: New file.
21748         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
21749         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
21750
21751         * lib/fseek.c: New file.
21752         * modules/fseek: New file.
21753         * m4/fseek.m4: New file.
21754         * doc/functions/fseek.texi: Update.
21755         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
21756         REPLACE_FSEEK.
21757         * lib/stdio_.h (rpl_fseek): New declaration.
21758         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
21759         REPLACE_FSEEK.
21760
21761 2007-05-28  Bruno Haible  <bruno@clisp.org>
21762
21763         * lib/stdio_.h (fflush): More comments.
21764
21765 2007-05-28  Bruno Haible  <bruno@clisp.org>
21766
21767         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
21768         runtime test.
21769
21770 2007-05-28  Eric Blake  <ebb9@byu.net>
21771
21772         Improve lseek module.
21773         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
21774         * lib/unistd_.h (lseek): Scale back link warning message.
21775         * tests/test-lseek.c: Beef up test.
21776         * tests/test-lseek.sh: Exercise more facets of lseek.
21777         Reported by Bruno Haible.
21778
21779 2007-05-28  Bruno Haible  <bruno@clisp.org>
21780
21781         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
21782         to define.
21783
21784 2007-05-27  Bruno Haible  <bruno@clisp.org>
21785
21786         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
21787
21788 2007-05-27  Bruno Haible  <bruno@clisp.org>
21789
21790         * modules/openmp: New file.
21791         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
21792         Noah Misch.
21793
21794 2007-05-26  Bruno Haible  <bruno@clisp.org>
21795
21796         * modules/chdir-long (Depends-on): Add fchdir.
21797         * modules/chdir-safer (Depends-on): Likewise.
21798         * modules/fts (Depends-on): Likewise.
21799         * modules/fts-lgpl (Depends-on): Likewise.
21800         * modules/openat (Depends-on): Likewise.
21801         * modules/savewd (Depends-on): Likewise.
21802
21803 2007-05-24  Eric Blake  <ebb9@byu.net>
21804
21805         Fix lseek on mingw.
21806         * modules/lseek: New module.
21807         * m4/lseek.m4: New file.
21808         * lib/lseek.c: New file.
21809         * modules/lseek-tests: New file.
21810         * tests/test-lseek.c: New file.
21811         * tests/test-lseek.sh: New file.
21812         * MODULES.html.sh: Document lseek module.
21813         * modules/fflush (Depends-on): Add lseek, fseeko.
21814         * modules/fseeko (Depends-on): Likewise.
21815         * modules/ftello (Depends-on): Likewise.
21816         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
21817         broken.
21818         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
21819         broken.
21820         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
21821         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
21822         * lib/ftello.c (rpl_ftello): Likewise.
21823         * tests/test-fseeko.c (main): Test this.
21824         * tests/test-fseeko.sh: Likewise.
21825         * tests/test-ftello.c (main): Likewise.
21826         * tests/test-ftello.sh: Likewise.
21827         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
21828         implies replacing fseek.
21829         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
21830         HAVE_FTELLO.
21831         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
21832         * modules/unistd (Makefile.am): Likewise.
21833         * lib/unistd_.h (lseek): Declare a replacement.
21834         * doc/functions/lseek.texi (lseek): Document this fix.
21835         * doc/functions/fseek.texi (fseek): Likewise.
21836         * doc/functions/ftell.texi (ftell): Likewise.
21837
21838 2007-05-24  Bruno Haible  <bruno@clisp.org>
21839
21840         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
21841         in the printed representation of a NaN.
21842         * tests/test-vasprintf-posix.c (test_function): Likewise.
21843         * tests/test-snprintf-posix.h (test_function): Likewise.
21844         * tests/test-sprintf-posix.h (test_function): Likewise.
21845         Reported by Eric Blake.
21846
21847 2007-05-23  Eric Blake  <ebb9@byu.net>
21848
21849         Fix fseeko/ftello on cygwin 1.5.24.
21850         * doc/functions/fseeko.texi (fseeko): Document the fix.
21851         * doc/functions/ftello.texi (ftello): Document the fix.
21852         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
21853         * doc/functions/stdout.text (stdout): New file.
21854         * doc/functions/stderr.text (stderr): New file.
21855         * doc/gnulib.texi (Function Substitutes): Use new files.
21856         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
21857         prior to 1.7.0.
21858         * tests/test-ftello.c (main): Likewise for ftello.
21859         * tests/test-fseeko.sh: New file.
21860         * tests/test-ftello.sh: New file.
21861         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
21862         with seekable stdin.
21863         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
21864         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
21865         (gl_REPLACE_FSEEKO): New macro.
21866         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
21867         * modules/fseeko (Files): Distribute fseeko.c.
21868         * modules/ftello (Files): Distribute ftello.c.
21869         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
21870         mode.
21871         * lib/ftello.c (rpl_ftello): New file.
21872         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
21873         fseeko, ftello.
21874         (gl_STDIN_LARGE_OFFSET): New macro.
21875         * modules/stdio (Makefile.am): Perform the replacement.
21876         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
21877
21878 2007-05-23  Bruno Haible  <bruno@clisp.org>
21879
21880         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
21881         GNULIB_POSIXCHECK is defined.
21882
21883 2007-05-21  Bruno Haible  <bruno@clisp.org>
21884
21885         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
21886         Check also the output for NaN arguments. When cross-compiling, guess
21887         no on IRIX.
21888         * lib/vasnprintf.c: Update comments.
21889         * tests/test-vasnprintf-posix.c (strisnan): New function.
21890         (test_function): Use it.
21891         * tests/test-vasprintf-posix.c (strisnan): New function.
21892         (test_function): Use it.
21893         * tests/test-snprintf-posix.h (strisnan): New function.
21894         (test_function): Use it.
21895         * tests/test-sprintf-posix.h (strisnan): New function.
21896         (test_function): Use it.
21897         Reported by Eric Blake.
21898
21899 2007-05-20  Bruno Haible  <bruno@clisp.org>
21900
21901         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
21902         numbers that fails on BeOS.
21903         * doc/functions/frexpl.texi: Update.
21904
21905 2007-05-20  Jim Meyering  <jim@meyering.net>
21906
21907         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
21908         forced upon us by glibc-2.6.
21909
21910 2007-05-20  Bruno Haible  <bruno@clisp.org>
21911
21912         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
21913         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
21914         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
21915         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
21916         NEED_PRINTF_INFINITE.
21917         (is_infinitel): New function.
21918         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
21919         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
21920         gl_PREREQ_VASNPRINTF_INFINITE.
21921         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
21922         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
21923         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
21924         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
21925         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
21926         gl_PREREQ_VASNPRINTF_INFINITE.
21927         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
21928         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
21929         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
21930         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
21931         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
21932         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
21933         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
21934         * doc/functions/fprintf.texi: Update.
21935         * doc/functions/printf.texi: Update.
21936         * doc/functions/snprintf.texi: Update.
21937         * doc/functions/sprintf.texi: Update.
21938         * doc/functions/vfprintf.texi: Update.
21939         * doc/functions/vprintf.texi: Update.
21940         * doc/functions/vsnprintf.texi: Update.
21941         * doc/functions/vsprintf.texi: Update.
21942
21943 2007-05-20  Bruno Haible  <bruno@clisp.org>
21944
21945         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
21946         was not found in libc.
21947         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
21948
21949 2007-05-20  Bruno Haible  <bruno@clisp.org>
21950
21951         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
21952         printed as "-nan" instead of "nan".
21953         * tests/test-vasprintf-posix.c (test_function): Likewise.
21954         * tests/test-snprintf-posix.h (test_function): Likewise.
21955         * tests/test-sprintf-posix.h (test_function): Likewise.
21956         Needed for HP-UX 11.
21957
21958 2007-05-20  Jim Meyering  <jim@meyering.net>
21959
21960         Fix buggy test for the fchownat-deref bug.
21961         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
21962         symlink required for the run-test.  Without it, this test would
21963         always declare that fchownat doesn't work, and client code would
21964         unnecessarily use the replacement function with fixed libc.
21965         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
21966         Reported by Greg Schafer.
21967
21968 2007-05-19  Bruno Haible  <bruno@clisp.org>
21969
21970         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
21971         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
21972         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
21973         Needed for IRIX 6.5 and Solaris 2.5.1.
21974
21975 2007-05-19  Bruno Haible  <bruno@clisp.org>
21976
21977         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
21978         (test_function): Skip tests involving -0.0 on platforms where
21979         -0.0 = 0.0.
21980         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
21981         (test_function): Skip tests involving -0.0 on platforms where
21982         -0.0 = 0.0.
21983         * tests/test-snprintf-posix.h (have_minus_zero): New function.
21984         (test_function): Skip tests involving -0.0 on platforms where
21985         -0.0 = 0.0.
21986         * tests/test-sprintf-posix.h (have_minus_zero): New function.
21987         (test_function): Skip tests involving -0.0 on platforms where
21988         -0.0 = 0.0.
21989         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
21990         tests.
21991         * tests/test-printf-posix.h (test_function): Likewise.
21992         * tests/test-printf-posix.output: Remove all -0.0 related results.
21993         Needed for IRIX 6.5.
21994
21995 2007-05-19  Bruno Haible  <bruno@clisp.org>
21996
21997         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
21998         printed as "nan0x7fffffff" instead of "nan".
21999         * tests/test-vasprintf-posix.c (test_function): Likewise.
22000         * tests/test-snprintf-posix.h (test_function): Likewise.
22001         * tests/test-sprintf-posix.h (test_function): Likewise.
22002         * tests/test-fprintf-posix.h (NaN): Remove macro.
22003         (test_function): Remove all NaN related tests.
22004         * tests/test-printf-posix.h (NaN): Remove macro.
22005         (test_function): Remove all NaN related tests.
22006         * tests/test-printf-posix.output: Remove all NaN related results.
22007         Needed for IRIX 6.5.
22008
22009 2007-05-19  Bruno Haible  <bruno@clisp.org>
22010
22011         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
22012         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
22013
22014 2007-05-19  Bruno Haible  <bruno@clisp.org>
22015
22016         * lib/float_.h: New file.
22017         * m4/float_h.m4: New file.
22018         * modules/float: New file.
22019         * modules/isnanl (Dependencies): Add float.
22020         * modules/isnanl-nolibm (Dependencies): Likewise.
22021         * modules/mathl (Dependencies): Likewise.
22022         * modules/printf-frexpl (Dependencies): Likewise.
22023         * modules/signbit (Dependencies): Likewise.
22024         * modules/vasnprintf (Dependencies): Likewise.
22025         * doc/headers/float.texi: Update.
22026
22027 2007-05-19  Jim Meyering  <jim@meyering.net>
22028
22029         * lib/utimens.c (gl_futimens): Rename from futimens,
22030         now that glibc-2.6 declares futimens.
22031         * lib/utimens.h: Likewise.
22032
22033 2007-05-19  Bruno Haible  <bruno@clisp.org>
22034
22035         Avoid test failures on mingw.
22036         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
22037         * tests/test-printf-posix.sh: Likewise.
22038         * tests/test-vfprintf-posix.sh: Likewise.
22039         * tests/test-vprintf-posix.sh: Likewise.
22040
22041 2007-05-19  Bruno Haible  <bruno@clisp.org>
22042
22043         Fix *printf result for NaN, Inf, -0.0 on mingw.
22044         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
22045         * lib/vasnprintf.c: Include math.h and isnan.h.
22046         (is_infinite_or_zero): New function.
22047         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
22048         values in the %f, %F, %e, %E, %g, %G directives.
22049         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
22050         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
22051         gl_PRINTF_INFINITE and test its result. Invoke
22052         gl_PREREQ_VASNPRINTF_INFINITE.
22053         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
22054         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
22055         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
22056         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
22057         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
22058         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
22059         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
22060         * doc/functions/fprintf.texi: Update.
22061         * doc/functions/printf.texi: Update.
22062         * doc/functions/snprintf.texi: Update.
22063         * doc/functions/sprintf.texi: Update.
22064         * doc/functions/vfprintf.texi: Update.
22065         * doc/functions/vprintf.texi: Update.
22066         * doc/functions/vsnprintf.texi: Update.
22067         * doc/functions/vsprintf.texi: Update.
22068
22069 2007-05-19  Bruno Haible  <bruno@clisp.org>
22070
22071         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
22072         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
22073         Instead of multiplying with 10^k, set extra_zeroes to k.
22074         (scale10_round_long_double): Remove function.
22075
22076 2007-05-18  Bruno Haible  <bruno@clisp.org>
22077
22078         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
22079         introduced on 2007-05-06.
22080
22081 2007-05-18  Bruno Haible  <bruno@clisp.org>
22082
22083         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
22084         %g directives.
22085         * tests/test-vasprintf-posix.c (test_function): Likewise.
22086         * tests/test-snprintf-posix.h (test_function): Likewise.
22087         * tests/test-sprintf-posix.h (test_function): Likewise.
22088
22089 2007-05-18  Bruno Haible  <bruno@clisp.org>
22090
22091         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
22092         (strmatch): New function.
22093         (test_function): Test the %f directive on numbers of various exponents.
22094         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
22095         (strmatch): New function.
22096         (test_function): Test the %f directive on numbers of various exponents.
22097         * tests/test-snprintf-posix.h (strmatch): New function.
22098         (test_function): Test the %f directive on numbers of various exponents.
22099         * tests/test-sprintf-posix.h (strmatch): New function.
22100         (test_function): Test the %f directive on numbers of various exponents.
22101         * tests/test-snprintf-posix.c (SIZEOF): New macro.
22102         * tests/test-sprintf-posix.c (SIZEOF): New macro.
22103         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
22104         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
22105
22106 2007-05-18  Bruno Haible  <bruno@clisp.org>
22107
22108         Add support for 'long double' number output.
22109         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
22110         * lib/vasnprintf.c: Include math.h and float+.h.
22111         (mp_limb_t): New type.
22112         (GMP_LIMB_BITS): New macro.
22113         (mp_twolimb_t): New type.
22114         (GMP_TWOLIMB_BITS): New macro.
22115         (mpn_t): New type.
22116         (multiply, divide, convert_to_decimal, decode_long_double,
22117         scale10_round_long_double, scale10_round_decimal_long_double,
22118         floorlog10l): New functions.
22119         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
22120         for the %f, %F, %e, %E, %g, %G directives.
22121         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
22122         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
22123         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
22124         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
22125         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
22126         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
22127         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
22128         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
22129         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
22130         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
22131         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
22132         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
22133         * modules/snprintf-posix (Depends-on): Likewise.
22134         * modules/sprintf-posix (Depends-on): Likewise.
22135         * modules/vasnprintf-posix (Depends-on): Likewise.
22136         * modules/vasprintf-posix (Depends-on): Likewise.
22137         * modules/vfprintf-posix (Depends-on): Likewise.
22138         * modules/vsnprintf-posix (Depends-on): Likewise.
22139         * modules/vsprintf-posix (Depends-on): Likewise.
22140         * modules/vasnprintf (Files): Add lib/float+.h.
22141         * doc/functions/fprintf.texi: Update.
22142         * doc/functions/printf.texi: Update.
22143         * doc/functions/snprintf.texi: Update.
22144         * doc/functions/sprintf.texi: Update.
22145         * doc/functions/vfprintf.texi: Update.
22146         * doc/functions/vprintf.texi: Update.
22147         * doc/functions/vsnprintf.texi: Update.
22148         * doc/functions/vsprintf.texi: Update.
22149
22150 2007-05-18  Bruno Haible  <bruno@clisp.org>
22151
22152         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
22153
22154 2007-05-18  Bruno Haible  <bruno@clisp.org>
22155
22156         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
22157         for printing 64-bit integers. Needed for mingw.
22158
22159 2007-05-18  Bruno Haible  <bruno@clisp.org>
22160
22161         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
22162         gl_FUNC_FREXPL_WORKS.
22163         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
22164
22165 2007-05-18  Bruno Haible  <bruno@clisp.org>
22166
22167         * modules/frexpl-nolibm-tests: New file.
22168
22169         * modules/frexpl-nolibm: New file.
22170         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
22171
22172 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
22173
22174         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
22175         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
22176         GCC 4.2, which otherwise issues a lot of warnings.
22177         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
22178         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
22179         Likewise.
22180         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
22181         * modules/iconv_open (iconv.h): Likewise.
22182         * modules/locale (locale.h): Likewise.
22183         * modules/netinet_in (netinet/in.h): Likewise.
22184         * modules/sys_select (sys_select.h): Likewise.
22185         * modules/sys_socket (sys/socket.h): Likewise.
22186         * modules/sys_stat (sys/stat.h): Likewise.
22187         * modules/sysexits (sysexits.h): Likewise.
22188         * modules/unistd (unistd.h): Likewise.
22189
22190 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22191
22192         * modules/closein-tests (Makefile.am): Distribute
22193         `test-closein.sh'.
22194
22195 2007-05-17  Bruno Haible  <bruno@clisp.org>
22196
22197         * tests/test-printf-posix.output: Renamed from
22198         tests/test-fprintf-posix.out.
22199         * modules/fprintf-posix-tests: Update.
22200         * modules/printf-posix-tests: Update.
22201         * modules/vfprintf-posix-tests: Update.
22202         * modules/vprintf-posix-tests: Update.
22203         * tests/test-fprintf-posix.sh: Update.
22204         * tests/test-printf-posix.sh: Update.
22205         * tests/test-vfprintf-posix.sh: Update.
22206         * tests/test-vprintf-posix.sh: Update.
22207         Reported by Ralf Wildenhues.
22208
22209 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
22210
22211         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
22212         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
22213         GCC 4.2, which otherwise issues a lot of warnings.
22214         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
22215         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
22216         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
22217         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
22218         it should no longer be needed.
22219         * lib/string_.h: Likewise.
22220         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
22221         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
22222         * modules/inttypes (inttypes.h): Likewise.
22223         * modules/math (math.h): Likewise.
22224         * modules/search (search.h): Likewise.
22225         * modules/signal (signal.h): Likewise.
22226         * modules/stdint (stdint.h): Likewise.
22227         * modules/stdio (stdio.h): Likewise.
22228         * modules/stdlib (stdlib.h): Likewise.
22229         * modules/string (string.h): Likewise.
22230         * modules/sys_time (sys/time.h): Likewise.
22231         * modules/time (time.h): Likewise.
22232         * modules/wchar (wchar.h): Likewise.
22233         * modules/wctype (wtype.h): Likewise.
22234
22235 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
22236
22237         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
22238
22239 2007-05-13  Bruno Haible  <bruno@clisp.org>
22240
22241         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
22242         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
22243         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
22244         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
22245         (gl_PREREQ_STRTOK_R): Don't require it here.
22246
22247 2007-05-13  Bruno Haible  <bruno@clisp.org>
22248
22249         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
22250         when used in C++ mode.
22251
22252 2007-05-12  Bruno Haible  <bruno@clisp.org>
22253
22254         * lib/linebuffer.h: Tweak doc.
22255         * lib/linebuffer.c: Likewise.
22256
22257 2007-05-12  James Youngman  <jay@gnu.org>
22258
22259         * lib/linebuffer.c (readlinebuffer_delim): New function,
22260         like readlinebuffer, but use a caller-specified delimiter.
22261         (readlinebuffer): Just call readlinebuffer_delim with '\n'
22262         as the delimiter.
22263         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
22264
22265 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
22266
22267         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
22268         * modules/openat (Files): Remove openat-die.c.
22269         (Depends-on): Add openat-die.
22270         * modules/openat-die: New module.
22271
22272 2007-05-06  Bruno Haible  <bruno@clisp.org>
22273
22274         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
22275         Update with info about Cygwin.
22276         * doc/functions/fprintf.texi: Update.
22277         * doc/functions/printf.texi: Update.
22278         * doc/functions/snprintf.texi: Update.
22279         * doc/functions/sprintf.texi: Update.
22280         * doc/functions/vfprintf.texi: Update.
22281         * doc/functions/vprintf.texi: Update.
22282         * doc/functions/vsnprintf.texi: Update.
22283         * doc/functions/vsprintf.texi: Update.
22284         Reported by Eric Blake.
22285
22286 2007-05-06  Bruno Haible  <bruno@clisp.org>
22287
22288         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
22289         padding ourselves for the floating-point directives.
22290         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
22291         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
22292         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
22293         gl_PRINTF_FLAG_ZERO and test its result. Invoke
22294         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
22295         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
22296         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
22297         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
22298         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
22299         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
22300         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
22301         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
22302         * tests/test-snprintf-posix.h (test_function): Also check the width
22303         and some flags in the %f directive.
22304         * tests/test-sprintf-posix.h (test_function): Likewise.
22305         * tests/test-vasnprintf-posix.c (test_function): Likewise.
22306         * tests/test-vasprintf-posix.c (test_function): Likewise.
22307         * doc/functions/fprintf.texi: Update.
22308         * doc/functions/printf.texi: Update.
22309         * doc/functions/snprintf.texi: Update.
22310         * doc/functions/sprintf.texi: Update.
22311         * doc/functions/vfprintf.texi: Update.
22312         * doc/functions/vprintf.texi: Update.
22313         * doc/functions/vsnprintf.texi: Update.
22314         * doc/functions/vsprintf.texi: Update.
22315
22316 2007-05-06  Bruno Haible  <bruno@clisp.org>
22317
22318         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
22319         pass the ' flag character to sprintf or snprintf.
22320         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
22321         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
22322         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
22323         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
22324         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
22325         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
22326         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
22327         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
22328         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
22329         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
22330         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
22331         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
22332         * tests/test-snprintf-posix.h (test_function): Also check the grouping
22333         flag.
22334         * tests/test-sprintf-posix.h (test_function): Likewise.
22335         * tests/test-vasnprintf-posix.c (test_function): Likewise.
22336         * tests/test-vasprintf-posix.c (test_function): Likewise.
22337         * doc/functions/fprintf.texi: Update.
22338         * doc/functions/printf.texi: Update.
22339         * doc/functions/snprintf.texi: Update.
22340         * doc/functions/sprintf.texi: Update.
22341         * doc/functions/vfprintf.texi: Update.
22342         * doc/functions/vprintf.texi: Update.
22343         * doc/functions/vsnprintf.texi: Update.
22344         * doc/functions/vsprintf.texi: Update.
22345
22346 2007-05-01  Bruno Haible  <bruno@clisp.org>
22347
22348         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
22349
22350 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
22351
22352         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
22353         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
22354
22355 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
22356
22357         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
22358         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
22359         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
22360
22361 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
22362
22363         * lib/argp-help.c (struct hol_entry): New member `ord'.
22364         (HOL_ENTRY_PTRCMP): Use ord for comparison
22365         (hol_sort): Initialize ord.
22366
22367 2007-05-01  Bruno Haible  <bruno@clisp.org>
22368
22369         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
22370         Reported by Eric Blake.
22371         * doc/gnulib.texi (Function Substitutes): Update.
22372
22373 2007-05-01  Bruno Haible  <bruno@clisp.org>
22374
22375         * doc/functions.texi: Remove file, now redundant through
22376         doc/functions/*.texi.
22377
22378 2007-05-01  Bruno Haible  <bruno@clisp.org>
22379
22380         * modules/argp (Depends-on): Add sleep.
22381
22382 2007-05-01  Bruno Haible  <bruno@clisp.org>
22383
22384         * modules/sleep-tests: New file.
22385         * tests/test-sleep.c: New file.
22386
22387         * modules/sleep: New file.
22388         * lib/sleep.c: New file.
22389         * m4/sleep.m4: New file.
22390         * lib/unistd_.h (sleep): New declaration.
22391         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
22392         HAVE_SLEEP.
22393         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
22394         * doc/functions/sleep.texi: Document the sleep module.
22395
22396 2007-05-01  Bruno Haible  <bruno@clisp.org>
22397
22398         * lib/sigprocmask.h: Remove file.
22399         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
22400         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
22401         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
22402         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
22403         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
22404         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
22405         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
22406         HAVE_SIGSET_T as a shell variable.
22407         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
22408         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
22409         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
22410         (Depends-on): Add signal. Remove verify.
22411         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
22412         (Include): Mention <signal.h> instead of sigprocmask.h.
22413         * NEWS: Mention the change.
22414         * lib/fatal-signal.c: Don't include sigprocmask.h.
22415
22416 2007-05-01  Bruno Haible  <bruno@clisp.org>
22417
22418         * modules/signal: New file.
22419         * lib/signal_.h: New file.
22420         * m4/signal_h.m4: New file.
22421
22422 2007-05-01  Bruno Haible  <bruno@clisp.org>
22423
22424         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
22425         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
22426         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
22427         HAVE_WCTYPE_CTMP_BUG into wctype.h.
22428
22429 2007-05-01  Bruno Haible  <bruno@clisp.org>
22430
22431         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
22432         configure time.
22433         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
22434         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
22435         * modules/sys_stat (Makefile.am): Substitute their values into
22436         sys/stat.h.
22437
22438 2007-05-01  Bruno Haible  <bruno@clisp.org>
22439
22440         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
22441         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
22442         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
22443
22444 2007-05-01  Bruno Haible  <bruno@clisp.org>
22445
22446         * doc/header/assert.texi: Undo last change: don't mention the gnulib
22447         'assert' module here.
22448
22449 2007-05-01  Bruno Haible  <bruno@clisp.org>
22450
22451         * doc/functions/*.texi: New files.
22452         * doc/functions/google-ranking.txt: New file.
22453         * doc/gnulib.texi (Function Substitutes): New chapter.
22454         (ctime, inet_ntoa): Remove sections.
22455         * doc/ctime.texi: Remove file.
22456         * doc/inet_ntoa.texi: Remove file.
22457         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
22458         dependencies.
22459         (%.info): New rule, specifying a --reference-limit.
22460
22461 2007-05-01  Bruno Haible  <bruno@clisp.org>
22462
22463         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
22464
22465 2007-05-01  Bruno Haible  <bruno@clisp.org>
22466
22467         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
22468         the portability of 'mkdir' to mingw systems.
22469
22470 2007-05-01  Bruno Haible  <bruno@clisp.org>
22471
22472         * doc/headers/google-ranking.txt: New file.
22473
22474 2007-04-30  Eric Blake  <ebb9@byu.net>
22475
22476         Prefer fseeko to fseek.
22477         * modules/getpass (Depends-on): Add fseeko.
22478         * lib/getpass.c (getpass): Use fseeko, not fseek.
22479
22480 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
22481
22482         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
22483         assumes the sorting is stable, while most qsort implementations
22484         are not.  Use argument addresses to ensure they never compare as
22485         equal.
22486
22487         * tests/test-argp-2.sh (usage-indent test): Fix output
22488         (func_compare): Restore diff options
22489         * tests/test-argp.c: Restore #include "progname.h"
22490
22491 2007-04-29  Bruno Haible  <bruno@clisp.org>
22492
22493         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
22494         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
22495         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
22496         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
22497         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
22498         (configure.ac): Define CHECK_SNPRINTF_POSIX.
22499         (TESTS, check_PROGRAMS): Add test-snprintf.
22500         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
22501         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
22502         (TESTS, check_PROGRAMS): Add test-vsnprintf.
22503         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
22504         assertions that fail on HP-UX, OSF/1, or IRIX.
22505         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
22506
22507 2007-04-29  Bruno Haible  <bruno@clisp.org>
22508
22509         * MODULES.html.sh (posix_functions): Remove 'contents'.
22510
22511 2007-04-29  Karl Berry  <karl@gnu.org>
22512
22513         * config/srclist.txt (gendocs_template_min): new entry.
22514
22515 2007-04-29  Bruno Haible  <bruno@clisp.org>
22516
22517         Work around fpurge bug on BSD systems.
22518         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
22519         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
22520         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
22521         fpurge to rpl_fpurge if the system already has this function.
22522         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
22523         the case where the system already has this function. Correct invariants
22524         on BSD systems.
22525         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
22526         BSD systems.
22527
22528 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
22529
22530         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
22531         proposed by Sven Verdoolaege.
22532
22533         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
22534         options.
22535         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
22536         (usage and help tests): Update
22537
22538 2007-04-29  Bruno Haible  <bruno@clisp.org>
22539
22540         * tests/test-fflush.c (main): Use a file of size 17, not 10.
22541         Print more information in case of failure. Disable a test on BeOS.
22542
22543 2007-04-29  Bruno Haible  <bruno@clisp.org>
22544
22545         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
22546         This helps debugging on systems on which no gdb is available.
22547
22548 2007-04-29  Bruno Haible  <bruno@clisp.org>
22549
22550         * lib/freading.h: Improve comments.
22551         * lib/fwriting.h: Likewise.
22552         * tests/test-freading.c (main): Don't check freading immediately after
22553         repositioning. Needed for glibc.
22554
22555 2007-04-29  Bruno Haible  <bruno@clisp.org>
22556
22557         * lib/freading.c (freading): Trivial simplification.
22558
22559 2007-04-28  Bruno Haible  <bruno@clisp.org>
22560
22561         * tests/test-fwriting.c (main): Also test the interaction between
22562         fflush and fwriting.
22563         * modules/fwriting-tests (Depends-on): Add fflush.
22564
22565         * tests/test-freading.c (main): Also test the interaction between
22566         fflush and freading.
22567         * modules/freading-tests (Depends-on): Add fflush.
22568
22569 2007-04-28  Bruno Haible  <bruno@clisp.org>
22570
22571         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
22572         fseeko and ftello.
22573         Suggested by Eric Blake.
22574
22575 2007-04-28  Jim Meyering  <jim@meyering.net>
22576
22577         Avoid false-negative in gl_STDINT_H's C99 conformance test.
22578         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
22579         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
22580
22581 2007-04-27  Eric Blake  <ebb9@byu.net>
22582
22583         * doc/headers/assert.texi (assert.h): Document assert module use.
22584
22585 2007-04-27  Bruno Haible  <bruno@clisp.org>
22586
22587         * doc/headers/*.texi: New files.
22588         * doc/gnulib.texi (Header File Substitutes): New chapter.
22589         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
22590         dependencies.
22591         (standards.info ,standards.html, standards.dvi): Update dependencies.
22592         (mostlyclean, clean): New targets.
22593
22594 2007-04-27  Bruno Haible  <bruno@clisp.org>
22595
22596         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
22597         * modules/sysexits (Files, Makefile.am): Update.
22598
22599         * lib/sys_socket_.h: Renamed from lib/socket_.h.
22600         * modules/sys_socket (Files, Makefile.am): Update.
22601
22602         * lib/sys_stat_.h: Renamed from lib/stat_.h.
22603         * modules/sys_stat (Files, Makefile.am): Update.
22604
22605 2007-04-27  Eric Blake  <ebb9@byu.net>
22606
22607         * lib/freading.h: Improve comments.
22608         * lib/fwriting.h: Likewise.
22609         * lib/fflush.c: Likewise.
22610
22611         Fix closein for mingw.
22612         * modules/closein-tests: Add tests for closein.
22613         * tests/test-closein.c: New file.
22614         * tests/test-closein.sh: Likewise.
22615         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
22616         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
22617
22618 2007-04-27  Bruno Haible  <bruno@clisp.org>
22619
22620         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
22621         version is < 6.
22622         * lib/math_.h [__DECC]: Likewise.
22623         * lib/stdio_.h [__DECC]: Likewise.
22624         * lib/stdlib_.h [__DECC]: Likewise.
22625         * lib/string_.h [__DECC]: Likewise.
22626         * lib/time_.h [__DECC]: Likewise.
22627         * lib/wchar_.h [__DECC]: Likewise.
22628         * lib/wctype_.h [__DECC]: Likewise.
22629
22630 2007-04-27  Bruno Haible  <bruno@clisp.org>
22631
22632         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
22633
22634 2007-04-27  Bruno Haible  <bruno@clisp.org>
22635
22636         * lib/fflush.c: Add comments.
22637         * modules/fpurge-tests (Depends-on): Add fflush.
22638         * modules/freadable-tests (Depends-on): Likewise.
22639         * modules/fwritable-tests (Depends-on): Likewise.
22640
22641 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
22642
22643         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
22644         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
22645         Report by Bruno Haible <bruno@clisp.org>.
22646
22647 2007-04-26  Eric Blake  <ebb9@byu.net>
22648
22649         Fix fflush on mingw.
22650         * modules/fflush (Depends-on): Add freading.
22651         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
22652         but unread data.
22653
22654 2007-04-26  Eric Blake  <ebb9@byu.net>
22655         and Bruno Haible  <bruno@clisp.org>
22656
22657         Implement freading and fwriting.
22658         * lib/freading.c: New file.
22659         * lib/freading.h: Likewise.
22660         * m4/freading.m4: Likewise.
22661         * modules/freading: Likewise.
22662         * modules/freading-tests: Likewise.
22663         * tests/test-freading.c: Likewise.
22664         * lib/fwriting.c: New file.
22665         * lib/fwriting.h: Likewise.
22666         * m4/fwriting.m4: Likewise.
22667         * modules/fwriting: Likewise.
22668         * modules/fwriting-tests: Likewise.
22669         * tests/test-fwriting.c: Likewise.
22670         * MODULES.html.sh (File stream based Input/Output): Mention them.
22671
22672 2007-04-26  Bruno Haible  <bruno@clisp.org>
22673
22674         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
22675         'long' when we assume it.
22676         Suggested by Eric Blake.
22677
22678 2007-04-26  Bruno Haible  <bruno@clisp.org>
22679
22680         Ensure fseeko, ftello are declared on glibc systems.
22681         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
22682         * modules/fseeko (configure.ac-early): Likewise.
22683         * modules/ftello (configure.ac-early): Likewise.
22684         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
22685         AC_FUNC_FSEEKO for this.
22686         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
22687         (gl_CHECK_FSEEKO): Remove macro.
22688
22689 2007-04-26  Bruno Haible  <bruno@clisp.org>
22690
22691         * tests/test-fflush.c (main): Also check the ftell result after
22692         fflush and fseek/fseeko.
22693         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
22694         file descriptor position cache in the stream.
22695         * lib/fseeko.c (rpl_fseeko): Likewise.
22696
22697 2007-04-26  Bruno Haible  <bruno@clisp.org>
22698
22699         * modules/fflush-tests (Depends-on): Add fseeko.
22700
22701 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
22702             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22703
22704         * lib/argz_.h: ensure error_t definition is obtained in same
22705         mechanism system argz.h would have.
22706         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
22707         argz facilities are known bad.  Err on the side of caution if
22708         cross-compiling.
22709
22710 2007-04-25  Eric Blake  <ebb9@byu.net>
22711
22712         * lib/fpurge.c (includes): Use stdlib.h for free.
22713         * tests/test-fflush.c (main): Also test fflush-fseeko.
22714
22715 2007-04-25  Bruno Haible  <bruno@clisp.org>
22716
22717         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
22718         * lib/fseeko.c: New file.
22719         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
22720         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
22721         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
22722         gl_FUNC_FSEEKO.
22723         (gl_FUNC_FSEEKO): Invoke it.
22724         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
22725         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
22726         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
22727
22728 2007-04-25  Bruno Haible  <bruno@clisp.org>
22729
22730         * modules/fflush (Depends-on): Add ftello.
22731
22732 2007-04-25  Bruno Haible  <bruno@clisp.org>
22733
22734         * modules/ftello-tests: New file.
22735         * tests/test-ftello.c: New file.
22736
22737         * modules/ftello: New file.
22738         * m4/ftello.m4: New file.
22739         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
22740         HAVE_FTELLO.
22741         * lib/stdio_.h (ftello): New declaration.
22742         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
22743         HAVE_FTELLO.
22744
22745 2007-04-25  Bruno Haible  <bruno@clisp.org>
22746
22747         * modules/fseeko-tests: New file.
22748         * tests/test-fseeko.c: New file.
22749
22750         * modules/fseeko: New file.
22751         * m4/fseeko.m4: New file.
22752         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
22753         HAVE_FSEEKO.
22754         * lib/stdio_.h (fseeko): New declaration.
22755         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
22756         HAVE_FSEEKO.
22757
22758 2007-04-25  Bruno Haible  <bruno@clisp.org>
22759
22760         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
22761
22762 2007-04-25  Bruno Haible  <bruno@clisp.org>
22763
22764         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
22765         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
22766         * tests/test-unistd.c: Likewise.
22767         * tests/test-fcntl.c: Likewise.
22768
22769 2007-04-23  Eric Blake  <ebb9@byu.net>
22770
22771         * lib/fflush.c: Fix missing include.
22772         Reported by Bruno Haible.
22773
22774 2007-04-23  Bruno Haible  <bruno@clisp.org>
22775
22776         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
22777         Reported by Eric Blake.
22778
22779 2007-04-23  Bruno Haible  <bruno@clisp.org>
22780
22781         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
22782
22783 2007-04-23  Bruno Haible  <bruno@clisp.org>
22784
22785         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
22786
22787 2007-04-23  Bruno Haible  <bruno@clisp.org>
22788
22789         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
22790         Needed on HP-UX 11.
22791
22792 2007-04-16  Eric Blake  <ebb9@byu.net>
22793
22794         Make fflush rely on fpurge.
22795         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
22796         open coding all variants.
22797         * modules/fflush (Depends-on): Add fpurge and unistd.
22798         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
22799         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
22800
22801         Fix --with-tests compilation on cygwin.
22802         * modules/argmatch-tests (Makefile.am): List gnulib library first
22803         in LDADD.
22804         * modules/argp-tests (Makefile.am): Likewise.
22805         * modules/array-list-tests (Makefile.am): Likewise.
22806         * modules/array-oset-tests (Makefile.am): Likewise.
22807         * modules/avltree-list-tests (Makefile.am): Likewise.
22808         * modules/avltree-oset-tests (Makefile.am): Likewise.
22809         * modules/avltreehash-list-tests (Makefile.am): Likewise.
22810         * modules/carray-list-tests (Makefile.am): Likewise.
22811         * modules/dirname-tests (Makefile.am): Likewise.
22812         * modules/frexp-tests (Makefile.am): Likewise.
22813         * modules/isnanl-tests (Makefile.am): Likewise.
22814         * modules/linked-list-tests (Makefile.am): Likewise.
22815         * modules/linkedhash-list-tests (Makefile.am): Likewise.
22816         * modules/lock-tests (Makefile.am): Likewise.
22817         * modules/rbtree-list-tests (Makefile.am): Likewise.
22818         * modules/rbtree-oset-tests (Makefile.am): Likewise.
22819         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
22820         * modules/tls-tests (Makefile.am): Likewise.
22821         * modules/tsearch-tests (Makefile.am): Likewise.
22822         * modules/xvasprintf-tests (Makefile.am): Likewise.
22823
22824         Fix fpurge for cygwin.
22825         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
22826         value.
22827         * modules/fpurge-tests (Depends-on): Clean up trash.
22828
22829 2007-04-16  Simon Josefsson  <simon@josefsson.org>
22830
22831         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
22832
22833         * m4/autobuild.m4: Re-indent.
22834
22835 2007-04-13  Bruno Haible  <bruno@clisp.org>
22836
22837         * modules/fpurge-tests: New file.
22838         * tests/test-fpurge.c: New file.
22839
22840         * modules/fpurge: New file.
22841         * lib/fpurge.h: New file.
22842         * lib/fpurge.c: New file.
22843         * m4/fpurge.m4: New file.
22844
22845 2007-04-13  Bruno Haible  <bruno@clisp.org>
22846
22847         * modules/fbufmode-tests: New file.
22848         * tests/test-fbufmode.c: New file.
22849
22850         * modules/fbufmode: New file.
22851         * lib/fbufmode.h: New file.
22852         * lib/fbufmode.c: New file.
22853         * m4/fbufmode.m4: New file.
22854
22855 2007-04-13  Bruno Haible  <bruno@clisp.org>
22856
22857         * modules/fwritable-tests: New file.
22858         * tests/test-fwritable.c: New file.
22859
22860         * modules/fwritable: New file.
22861         * lib/fwritable.h: New file.
22862         * lib/fwritable.c: New file.
22863         * m4/fwritable.m4: New file.
22864
22865 2007-04-13  Bruno Haible  <bruno@clisp.org>
22866
22867         * modules/freadable-tests: New file.
22868         * tests/test-freadable.c: New file.
22869
22870         * modules/freadable: New file.
22871         * lib/freadable.h: New file.
22872         * lib/freadable.c: New file.
22873         * m4/freadable.m4: New file.
22874
22875 2007-04-13  Bruno Haible  <bruno@clisp.org>
22876
22877         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
22878         MOSTLYCLEANFILES.
22879
22880 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
22881
22882         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
22883         gzip bootstrap.conf to avoid dragging in i18n machinery.
22884         (gnulib_tool_option): Use it.
22885
22886 2007-04-13  Bruno Haible  <bruno@clisp.org>
22887
22888         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
22889         %F directives.
22890         * tests/test-vasprintf-posix.c (test_function): Likewise.
22891         * tests/test-snprintf-posix.h (test_function): Likewise.
22892         * tests/test-sprintf-posix.h (test_function): Likewise.
22893         * tests/test-fprintf-posix.h (test_function): Likewise.
22894         * tests/test-printf-posix.h (test_function): Likewise.
22895         * tests/test-fprintf-posix.out: Likewise.
22896
22897 2007-04-13  Bruno Haible  <bruno@clisp.org>
22898
22899         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
22900         * modules/tls-tests (configure.ac): Likewise.
22901         Reported by Arto C. Nirkko <anirkko@insel.ch>.
22902
22903 2007-04-13  Bruno Haible  <bruno@clisp.org>
22904
22905         * lib/tls.c (glthread_tls_get): Fix return type.
22906         Patch by Arto C. Nirkko <anirkko@insel.ch>.
22907
22908 2007-04-12  Eric Blake  <ebb9@byu.net>
22909
22910         * modules/gettime (Depends-on): Remove gettime.
22911         Reported by Dmitry V. Levin.
22912
22913 2007-04-12  Bruno Haible  <bruno@clisp.org>
22914
22915         * modules/fflush (Include): Mention <stdio.h>.
22916         * modules/strtoimax (Include): Mention <inttypes.h>.
22917         * modules/strtoumax (Include): Likewise.
22918
22919 2007-04-12  Eric Blake  <ebb9@byu.net>
22920
22921         * .cvsignore: New file.
22922         * .gitignore: Likewise.
22923
22924 2007-04-12  Bruno Haible  <bruno@clisp.org>
22925
22926         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
22927         not before, since $(LDADD) often contains libgnu.a.
22928         * modules/striconv-tests (test_striconv_LDADD): Likewise.
22929         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
22930         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
22931         Needed on Cygwin.
22932
22933 2007-04-12  Eric Blake  <ebb9@byu.net>
22934
22935         Work around glibc's failure to flush stdin on fclose.
22936         * lib/closein.c (close_stdin): Flush stdin before closing.
22937
22938         Work around glibc's failure to reset seekable stdin on exit.
22939         * modules/closein: New module.
22940         * lib/closein.c: New file.
22941         * lib/closein.h: Likewise.
22942         * m4/closein.m4: Likewise.
22943         * MODULES.html.sh (File stream based Input/Output): Document it.
22944
22945 2007-04-12  Simon Josefsson  <simon@josefsson.org>
22946
22947         * gnulib-tool: Rename generated 'autobuild' script to
22948         'do-autobuild' in --create-megatestdir output.
22949
22950         * doc/gnulib.texi (Build robot for gnulib): Fix.
22951
22952 2007-04-12  Simon Josefsson  <simon@josefsson.org>
22953
22954         * modules/sysexits (Depends-on): Add absolute-header.
22955
22956 2007-04-12  Eric Blake  <ebb9@byu.net>
22957
22958         No need to preserve errno on success.
22959         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
22960         Reported by Bruno Haible.
22961
22962 2007-04-12  Simon Josefsson  <simon@josefsson.org>
22963
22964         * MODULES.html.sh (Support for maintaining and releasing
22965         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
22966
22967 2007-04-12  Simon Josefsson  <simon@josefsson.org>
22968
22969         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
22970
22971 2007-04-12  Simon Josefsson  <simon@josefsson.org>
22972
22973         * modules/autobuild: New module.
22974
22975         * m4/autobuild.m4: New file.
22976
22977 2007-04-11  Bruno Haible  <bruno@clisp.org>
22978
22979         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
22980         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
22981         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
22982         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
22983         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
22984         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
22985         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
22986         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
22987         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
22988         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
22989         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
22990         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
22991         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
22992         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
22993         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
22994         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
22995         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
22996         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
22997         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
22998         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
22999         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
23000         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
23001         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
23002         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
23003         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
23004         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
23005         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
23006         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
23007         Reported by Eric Blake.
23008
23009 2007-04-11  Bruno Haible  <bruno@clisp.org>
23010
23011         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
23012
23013 2007-04-10  Bruno Haible  <bruno@clisp.org>
23014
23015         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
23016         for NaN and Infinity. Needed on FreeBSD 6.1.
23017         * tests/test-vasnprintf-posix.c (test_function): Undo last change
23018         regarding results for "%010a" of Infinity and NaN.
23019         * tests/test-vasprintf-posix.c (test_function): Likewise.
23020         * tests/test-snprintf-posix.h (test_function): Likewise.
23021         * tests/test-sprintf-posix.h (test_function): Likewise.
23022         * tests/test-fprintf-posix.h (test_function): Likewise.
23023         * tests/test-printf-posix.h (test_function): Likewise.
23024         * tests/test-fprintf-posix.out: Likewise.
23025
23026 2007-04-10  Bruno Haible  <bruno@clisp.org>
23027
23028         * modules/locale-tests: New file.
23029         * tests/test-locale.c: New file.
23030
23031         * modules/locale: New file.
23032         * lib/locale_.h: New file.
23033         * m4/locale_h.m4: New file.
23034
23035 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
23036             Bruno Haible  <bruno@clisp.org>
23037
23038         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
23039         be determined, test for availability of the copysignf, copysign,
23040         copysignl functions.
23041         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
23042         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
23043         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
23044
23045 2007-04-09  Eric Blake  <ebb9@byu.net>
23046
23047         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
23048         * modules/stdio (Makefile.am): Support fflush.
23049         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
23050         * modules/fflush: New file.
23051         * lib/fflush.c: Likewise.
23052         * m4/fflush.m4: Likewise.
23053         * modules/fflush-tests: New test.
23054         * tests/test-fflush.c: Likewise.
23055         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
23056
23057 2007-04-06  Bruno Haible  <bruno@clisp.org>
23058
23059         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
23060         (VASNPRINTF): Use signbit for faster determination whether to print a
23061         minus sign.
23062         * modules/vasnprintf (Files): Remove lib/float+.h.
23063         * modules/fprintf-posix (Depends-on): Add signbit.
23064         * modules/snprintf-posix (Depends-on): Likewise.
23065         * modules/sprintf-posix (Depends-on): Likewise.
23066         * modules/vasnprintf-posix (Depends-on): Likewise.
23067         * modules/vasprintf-posix (Depends-on): Likewise.
23068         * modules/vfprintf-posix (Depends-on): Likewise.
23069         * modules/vsnprintf-posix (Depends-on): Likewise.
23070         * modules/vsprintf-posix (Depends-on): Likewise.
23071
23072 2007-04-06  Bruno Haible  <bruno@clisp.org>
23073
23074         * tests/test-frexp.c (main): Test also the sign bit of zero results.
23075         * tests/test-frexpl.c (main): Likewise.
23076         * tests/test-ldexpl.c (main): Likewise.
23077         * modules/frexp-tests (Depends-on): Add signbit.
23078         * modules/frexpl-tests (Depdends-on): Likewise.
23079         * modules/ldexpl-tests (Depdends-on): Likewise.
23080
23081 2007-04-06  Bruno Haible  <bruno@clisp.org>
23082
23083         * modules/signbit-tests: New file.
23084         * tests/test-signbit.c: New file.
23085
23086         * modules/signbit: New file.
23087         * lib/signbitf.c: New file.
23088         * lib/signbitd.c: New file.
23089         * lib/signbitl.c: New file.
23090         * m4/signbit.m4: New file.
23091         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
23092         (signbit): New macro.
23093         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
23094         REPLACE_SIGNBIT.
23095         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
23096         REPLACE_FREXPL into math.h.
23097
23098 2007-04-06  Bruno Haible  <bruno@clisp.org>
23099
23100         * modules/isnanf-nolibm-tests: New file.
23101         * tests/test-isnanf.c: New file.
23102
23103         * modules/isnanf-nolibm: New file.
23104         * lib/isnanf.h: New file.
23105         * lib/isnanf.c: New file.
23106         * lib/isnan.c: Consider the USE_FLOAT macro.
23107         * m4/isnanf.m4: New file.
23108
23109 2007-04-06  Bruno Haible  <bruno@clisp.org>
23110
23111         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
23112         (Link): New section.
23113
23114         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
23115
23116 2007-04-06  Bruno Haible  <bruno@clisp.org>
23117
23118         Assume the 'long double' type.
23119         * m4/longdouble.m4: Remove file.
23120         * config/srclist.txt: Don't mention longdouble.m4.
23121         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
23122         * lib/float+.h: Likewise.
23123         * lib/frexp.c: Likewise.
23124         * lib/printf-args.h: Likewise.
23125         * lib/printf-args.c: Likewise.
23126         * lib/printf-frexp.c: Likewise.
23127         * lib/printf-parse.c: Likewise.
23128         * lib/vasnprintf.c: Likewise.
23129         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
23130         * m4/intl.m4: Likewise.
23131         * m4/isnanl.m4: Likewise.
23132         * m4/printf.m4: Likewise.
23133         * m4/printf-frexpl.m4: Likewise.
23134         * m4/vasnprintf.m4: Likewise.
23135         * modules/allocsa (Files): Remove m4/longdouble.m4.
23136         * modules/gettext (Files): Likewise.
23137         * modules/relocatable-prog-wrapper (Files): Likewise.
23138         * modules/vasnprintf (Files): Likewise.
23139         * modules/isnanl (Files): Likewise.
23140         (Include): Simplify.
23141         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
23142         (Include): Simplify.
23143         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
23144         (Include): Simplify.
23145         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
23146         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
23147         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
23148         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
23149         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
23150         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
23151         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
23152         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
23153         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
23154         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
23155         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
23156         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
23157         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
23158         * tests/test-isnanl.c: Likewise.
23159         * tests/test-snprintf-posix.h: Likewise.
23160         * tests/test-sprintf-posix.h: Likewise.
23161         * tests/test-vasnprintf-posix.c: Likewise.
23162         * tests/test-vasnprintf-posix2.c: Likewise.
23163         * tests/test-vasprintf-posix.c: Likewise.
23164
23165 2007-04-06  Bruno Haible  <bruno@clisp.org>
23166
23167         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
23168         * lib/math_.h [__DECC]: Include the overridden include file through
23169         #include_next, outside the double-inclusion guard.
23170         * lib/stdio_.h [__DECC]: Likewise.
23171         * lib/stdlib_.h [__DECC]: Likewise.
23172         * lib/string_.h [__DECC]: Likewise.
23173         * lib/time_.h [__DECC]: Likewise.
23174         * lib/wchar_.h [__DECC]: Likewise.
23175         * lib/wctype_.h [__DECC]: Likewise.
23176         * lib/inttypes_.h [__DECC]: Likewise.
23177         Reported by Albert Chin <china@thewrittenword.com> in
23178         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
23179
23180 2007-04-04  Eric Blake  <ebb9@byu.net>
23181
23182         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
23183         1.5.x.
23184
23185 2007-04-04  Bruno Haible  <bruno@clisp.org>
23186
23187         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
23188         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
23189
23190 2007-04-04  Bruno Haible  <bruno@clisp.org>
23191
23192         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
23193         results for "%010a" of Infinity and NaN.
23194         * tests/test-vasprintf-posix.c (test_function): Likewise.
23195         * tests/test-snprintf-posix.h (test_function): Likewise.
23196         * tests/test-sprintf-posix.h (test_function): Likewise.
23197         * tests/test-fprintf-posix.h (test_function): Remove these tests.
23198         * tests/test-printf-posix.h (test_function): Likewise.
23199         * tests/test-fprintf-posix.out: Update.
23200         Needed for FreeBSD 6.1.
23201
23202 2007-04-04  Bruno Haible  <bruno@clisp.org>
23203
23204         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
23205         directly used by the gnulib modules nor by gnulib-tool.
23206
23207 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
23208
23209         * DEPENDENCIES: Give overall description of version dependency
23210         desirability.  Use more-typical names for apps.
23211         Add shell, coreutils, diffutils, grep, tar, gzip.
23212
23213 2007-04-04  Simon Josefsson  <simon@josefsson.org>
23214
23215         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
23216
23217 2007-04-04  Karl Berry  <karl@gnu.org>
23218
23219         * MODULES.html.sh (func_module): missing '.
23220
23221 2007-04-03  Bruno Haible  <bruno@clisp.org>
23222
23223         * modules/argmatch-tests (Makefile.am): New variable
23224         test_argmatch_LDADD.
23225         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
23226         * modules/array-list-tests (Makefile.am): New variable
23227         test_array_list_LDADD.
23228         * modules/array-oset-tests (Makefile.am): New variable
23229         test_array_oset_LDADD.
23230         * modules/avltree-list-tests (Makefile.am): New variable
23231         test_avltree_list_LDADD.
23232         * modules/avltree-oset-tests (Makefile.am): New variable
23233         test_avltree_oset_LDADD.
23234         * modules/avltreehash-list-tests (Makefile.am): New variable
23235         test_avltreehash_list_LDADD.
23236         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
23237         test_canonicalize_lgpl_LDADD.
23238         * modules/carray-list-tests (Makefile.am): New variable
23239         test_carray_list_LDADD.
23240         * modules/dirname-tests (Makefile.am): New variable
23241         test_dirname_LDADD.
23242         * modules/linked-list-tests (Makefile.am): New variable
23243         test_linked_list_LDADD.
23244         * modules/linkedhash-list-tests (Makefile.am): New variable
23245         test_linkedhash_list_LDADD.
23246         * modules/rbtree-list-tests (Makefile.am): New variable
23247         test_rbtree_list_LDADD.
23248         * modules/rbtree-oset-tests (Makefile.am): New variable
23249         test_rbtree_oset_LDADD.
23250         * modules/rbtreehash-list-tests (Makefile.am): New variable
23251         test_rbtreehash_list_LDADD.
23252         * modules/xvasprintf-tests (Makefile.am): New variable
23253         test_xvasprintf_LDADD.
23254         Reported by Eric Blake.
23255
23256 2007-04-03  Eric Blake  <ebb9@byu.net>
23257
23258         * DEPENDENCIES: Weaken m4 requirements.
23259
23260 2007-04-03  Bruno Haible  <bruno@clisp.org>
23261
23262         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
23263         * modules/isnanl-tests (configure.ac): Likewise.
23264
23265 2007-04-03  Ben Pfaff  <blp@gnu.org>
23266
23267         * modules/iconv_open: Add $(srcdir)/ to source directory
23268         references in Makefile fragments that call gperf, to fix VPATH
23269         builds.
23270
23271 2007-04-03  Bruno Haible  <bruno@clisp.org>
23272
23273         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
23274         * lib/ldexpl.c: Undo last change.
23275
23276 2007-04-03  Bruno Haible  <bruno@clisp.org>
23277
23278         * modules/printf-frexpl (Depends-on): Undo last change.
23279         (Files): Add m4/ldexpl.m4.
23280
23281 2007-04-03  Bruno Haible  <bruno@clisp.org>
23282
23283         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
23284         * modules/isnanl (Link): New section.
23285
23286         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
23287         * modules/frexp (Link): New section.
23288
23289         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
23290         * modules/frexpl (Link): New section.
23291
23292         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
23293         * modules/ldexpl (Link): New section.
23294
23295 2007-04-03  Bruno Haible  <bruno@clisp.org>
23296
23297         * modules/TEMPLATE-EXTENDED: New file.
23298         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
23299
23300 2007-04-03  Bruno Haible  <bruno@clisp.org>
23301
23302         * DEPENDENCIES: New file.
23303         Suggested by Simon Josefsson.
23304
23305 2007-04-03  Bruno Haible  <bruno@clisp.org>
23306
23307         * doc/gnulib.texi: Escape @.
23308
23309 2007-04-03  James Youngman  <jay@gnu.org>
23310         and Paul Eggert  <eggert@cs.ucla.edu>
23311
23312         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
23313         birthtime on all systems that have birthtime, not just those which
23314         use st_birthtimensec rather than st_birthtim.  Putting zero in
23315         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
23316         that the birth time is not available for files on an NFS mount.
23317
23318 2007-04-03  Simon Josefsson  <simon@josefsson.org>
23319
23320         * modules/memxor: Move back from crypto/, suggested by Bruno.
23321         * modules/crypto/hmac-sha1: Fix memxor dependency.
23322
23323         * modules/crypto/gc: Moved from ../.
23324
23325 2007-04-02  Eric Blake  <ebb9@byu.net>
23326
23327         * lib/ldexpl.c (includes): Avoid libm.
23328
23329         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
23330
23331 2007-04-02  Bruno Haible  <bruno@clisp.org>
23332
23333         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
23334         on IRIX.
23335
23336 2007-04-02  Bruno Haible  <bruno@clisp.org>
23337
23338         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
23339         x86 or x86_64 platforms running MacOS X.
23340         Reported by Ryan Schmidt <@ryandesign.com>.
23341
23342 2007-04-02  Bruno Haible  <bruno@clisp.org>
23343
23344         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
23345         i386.
23346
23347 2007-04-01  Simon Josefsson  <simon@josefsson.org>
23348
23349         * modules/crypto/arcfour: Moved from ../.
23350         * modules/crypto/arcfour-tests: Moved from ../.
23351         * modules/crypto/arctwo: Moved from ../.
23352         * modules/crypto/arctwo-tests: Moved from ../.
23353         * modules/crypto/des: Moved from ../.
23354         * modules/crypto/des-tests: Moved from ../.
23355         * modules/crypto/gc-arcfour: Moved from ../.
23356         * modules/crypto/gc-arcfour-tests: Moved from ../.
23357         * modules/crypto/gc-arctwo: Moved from ../.
23358         * modules/crypto/gc-arctwo-tests: Moved from ../.
23359         * modules/crypto/gc-des: Moved from ../.
23360         * modules/crypto/gc-des-tests: Moved from ../.
23361         * modules/crypto/gc-hmac-md5: Moved from ../.
23362         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
23363         * modules/crypto/gc-hmac-sha1: Moved from ../.
23364         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
23365         * modules/crypto/gc-md2: Moved from ../.
23366         * modules/crypto/gc-md2-tests: Moved from ../.
23367         * modules/crypto/gc-md4: Moved from ../.
23368         * modules/crypto/gc-md4-tests: Moved from ../.
23369         * modules/crypto/gc-md5: Moved from ../.
23370         * modules/crypto/gc-md5-tests: Moved from ../.
23371         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
23372         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
23373         * modules/crypto/gc-random: Moved from ../.
23374         * modules/crypto/gc-rijndael: Moved from ../.
23375         * modules/crypto/gc-rijndael-tests: Moved from ../.
23376         * modules/crypto/gc-sha1: Moved from ../.
23377         * modules/crypto/gc-sha1-tests: Moved from ../.
23378         * modules/crypto/gc-tests: Moved from ../.
23379         * modules/crypto/hmac-md5: Moved from ../.
23380         * modules/crypto/hmac-md5-tests: Moved from ../.
23381         * modules/crypto/hmac-sha1: Moved from ../.
23382         * modules/crypto/hmac-sha1-tests: Moved from ../.
23383         * modules/crypto/md2: Moved from ../.
23384         * modules/crypto/md2-tests: Moved from ../.
23385         * modules/crypto/md4: Moved from ../.
23386         * modules/crypto/md4-tests: Moved from ../.
23387         * modules/crypto/md5: Moved from ../.
23388         * modules/crypto/md5-tests: Moved from ../.
23389         * modules/crypto/memxor: Moved from ../.
23390         * modules/crypto/rijndael: Moved from ../.
23391         * modules/crypto/rijndael-tests: Moved from ../.
23392         * modules/crypto/sha1: Moved from ../.
23393
23394 2007-03-30  James Youngman  <jay@gnu.org>
23395
23396         * tests/test-stat-time.c (prepare_test): use chmod() rather than
23397         rename() to change the ctime of a file (because ctime is unaffected
23398         by rename on jfs2 on AIX 5.1).
23399         (main): Start by doing cleanup, in case a previous run failed leaving
23400         test files behind.
23401
23402 2007-03-31  Bruno Haible  <bruno@clisp.org>
23403
23404         Support old proprietary implementations of iconv.
23405         * modules/iconv_open: New file.
23406         * lib/iconv_.h: New file.
23407         * m4/iconv_h.m4: New file.
23408         * lib/iconv_open.c: New file.
23409         * lib/iconv_open-aix.gperf: New file.
23410         * lib/iconv_open-hpux.gperf: New file.
23411         * lib/iconv_open-irix.gperf: New file.
23412         * lib/iconv_open-osf.gperf: New file.
23413         * m4/iconv_open.m4: New file.
23414         * modules/linebreak (Depends-on): Add iconv_open.
23415         * modules/striconv (Depends-on): Likewise.
23416         * modules/striconveh (Depends-on): Likewise.
23417         * modules/unicodeio (Depends-on): Likewise.
23418         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
23419         (iconv_t)(-1).
23420         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
23421         conversion if cd is (iconv_t)(-1).
23422         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
23423         is not possible.
23424
23425 2007-03-31  Bruno Haible  <bruno@clisp.org>
23426
23427         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
23428         work on Solaris either. Protect also second use of "autodetect_jp".
23429
23430 2007-03-31  Bruno Haible  <bruno@clisp.org>
23431
23432         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
23433         the function is not present.
23434
23435 2007-03-31  Bruno Haible  <bruno@clisp.org>
23436
23437         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
23438         the function is not present.
23439
23440 2007-03-31  Bruno Haible  <bruno@clisp.org>
23441
23442         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
23443         a bug in HP-UX iconv_open().
23444
23445 2007-03-31  Bruno Haible  <bruno@clisp.org>
23446
23447         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
23448         (Mathematics <math.h>): New section, add fpieee.
23449         (Input/output <stdio.h>): Add fseterr.
23450         (Mathematics <math.h>): New section, add printf-frexp.
23451         (Container data structures): Add sublist.
23452         (Core language properties): Add fpucw, inline.
23453         (Functions for greatest-width integer types <inttypes.h>): Add
23454         imaxabs, imaxdiv, inttypes.
23455         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
23456         isnanl-nolibm, ldexp.
23457         (Mathematics <math.h>): New section, add printf-frexpl.
23458         (Support for systems lacking POSIX:2001): Add fprintf-posix,
23459         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
23460         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
23461         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
23462         (Unicode string functions): Add unistr/u*-mbtoucr.
23463         (Java): Add javacomp-script, javaexec-script.
23464         (C#): Add csharpcomp-script, csharpexec-script.
23465         (Support for building libraries and executables): Add havelib,
23466         relocatable-*.
23467         (Support for maintaining and releasing projects): Renamed from
23468         'Support for maintaining and release projects'. Add announce-gen.
23469
23470 2007-03-31  Bruno Haible  <bruno@clisp.org>
23471
23472         * README: Talk primarily about git.
23473         (git and CVS): Renamed from CVS.
23474         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
23475         gnulib is available through git.
23476         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
23477
23478 2007-03-30  Bruno Haible  <bruno@clisp.org>
23479
23480         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
23481         * lib/poll_.h: Likewise.
23482         * lib/stat_.h: Likewise.
23483         * lib/sys_time_.h: Likewise.
23484         * lib/sysexit_.h: Likewise.
23485         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
23486         * lib/stdbool_.h: Likewise.
23487         * lib/byteswap_.h: Add double-inclusion guard.
23488
23489 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
23490
23491         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
23492
23493 2007-03-30  Karl Berry  <karl@gnu.org>
23494
23495         * config/srclist-update: double space after USA in the license
23496         substitution, since that's how it's usually (?) written.
23497
23498 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
23499
23500         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
23501         reported by Bruno Haible.
23502
23503 2007-03-29  Bruno Haible  <bruno@clisp.org>
23504
23505         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
23506         a bug in AIX iconv().
23507
23508 2007-03-29  Bruno Haible  <bruno@clisp.org>
23509
23510         * modules/ldexpl-tests: New file.
23511         * tests/test-ldexpl.c: New file.
23512
23513 2007-03-29  Bruno Haible  <bruno@clisp.org>
23514
23515         * lib/ldexpl.c: Include fpucw.h.
23516         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
23517         multiplication.
23518         * modules/ldexpl (Depends-on): Add fpucw.
23519
23520 2007-03-29  Bruno Haible  <bruno@clisp.org>
23521
23522         * modules/ldexpl: New file.
23523         * m4/ldexpl.m4: New file.
23524         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
23525         set.
23526         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
23527         REPLACE_LDEXPL.
23528         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
23529         REPLACE_LDEXPL.
23530         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
23531         gl_FUNC_LDEXPL_WORKS.
23532         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
23533         * modules/mathl (Files): Remove lib/ldexpl.c.
23534         (Depends-on): Add ldexpl.
23535
23536 2007-03-29  Bruno Haible  <bruno@clisp.org>
23537
23538         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
23539
23540 2007-03-29  Bruno Haible  <bruno@clisp.org>
23541
23542         * tests/test-striconveh.c (main): Don't assume that a direct conversion
23543         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
23544         and possibly also HP-UX.
23545         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
23546         work on AIX, IRIX, HP-UX, OSF/1.
23547         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
23548         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
23549         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
23550         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
23551         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
23552         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
23553
23554 2007-03-29  Bruno Haible  <bruno@clisp.org>
23555
23556         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
23557
23558 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
23559
23560         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
23561         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
23562
23563 2007-03-29  Eric Blake  <ebb9@byu.net>
23564
23565         * lib/acl-internal.h: Remove redundant include.
23566         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
23567         Cygwin when a file is locked.
23568
23569 2007-03-29  Bruno Haible  <bruno@clisp.org>
23570
23571         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
23572         file.
23573         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
23574
23575 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
23576
23577         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
23578         try to remove a parent directory if the child couldn't be removed
23579         (except for the first rmdir, which could fail because the child
23580         doesn't exist).  Problem reported by Jeff Blaine in
23581         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
23582
23583 2007-03-28  Bruno Haible  <bruno@clisp.org>
23584
23585         * lib/striconveh.c (utf8conv_carefully): New function.
23586         (mem_cd_iconveh_internal): Invoke it.
23587
23588 2007-03-28  Bruno Haible  <bruno@clisp.org>
23589
23590         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
23591         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
23592         input.
23593         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
23594         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
23595         unistr/u8-uctomb.
23596
23597 2007-03-28  Bruno Haible  <bruno@clisp.org>
23598
23599         * modules/unistr/u8-mbtoucr: New file.
23600         * lib/unistr/u8-mbtoucr.c: New file.
23601         * modules/unistr/u16-mbtoucr: New file.
23602         * lib/unistr/u16-mbtoucr.c: New file.
23603         * modules/unistr/u16-mbtoucr: New file.
23604         * lib/unistr/u16-mbtoucr.c: New file.
23605         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
23606
23607 2007-03-27  Simon Josefsson  <simon@josefsson.org>
23608             Bruno Haible  <bruno@clisp.org>
23609
23610         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
23611         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
23612         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
23613
23614         * m4/stdio_h.m4: Add stubs for vasprintf too.
23615
23616         * modules/stdio: Support vasprintf in sed command.
23617
23618         * modules/vasprintf: Depend on stdio for prototypes.  Remove
23619         vasprintf.h.  Add stdio module indicator.
23620
23621         * lib/stdio_.h: Declare asprintf and vasprintf, based on
23622         vasprintf.h.
23623
23624         * lib/vasprintf.h: File removed.
23625
23626         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
23627         * lib/vasprintf.c: Ditto.
23628         * lib/xvasprintf.c: Ditto.
23629         * tests/test-vasprintf-posix.c: Ditto.
23630         * tests/test-vasprintf.c: Ditto.
23631
23632 2007-03-27  Bruno Haible  <bruno@clisp.org>
23633
23634         Make vasnprintf multithread-safe.
23635         * lib/vasnprintf.c (decimal_point_char): New function.
23636         (VASNPRINTF): Use it.
23637         Suggested by Simon Josefsson.
23638
23639 2007-03-27  Eric Blake  <ebb9@byu.net>
23640
23641         Support sub-second birthtime on cygwin.
23642         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
23643         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
23644         (get_stat_birthtime): Also work with st_birthtim.
23645
23646 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
23647
23648         * lib/stat-time.h (USE_BIRTHTIME): Remove.
23649         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
23650         (get_stat_birthtime_ns): Do not try to use "spare" fields.
23651         (get_stat_birthtime_ns): Simplify compile-time tests.
23652         (get_stat_birthtime): Change the API to look like
23653         get_stat_mtime etc., except return a negative tv_nsec on error.
23654         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
23655         Don't check for "spare" fields.
23656         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
23657         or for struct stat.st_birthtime, as these tests aren't used.
23658         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
23659
23660 2007-03-27  Bruno Haible  <bruno@clisp.org>
23661
23662         * lib/stat-time.h: Include <sys/stat.h>.
23663
23664 2007-03-27  James Youngman  <jay@gnu.org>
23665
23666         * lib/stat-time.h (get_stat_birthtime): New function for
23667           retrieving st_birthtime as provided by UFS2 (hence *BSD).
23668         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
23669           and its variants.
23670         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
23671         * modules/stat-time-test: New file.
23672         * tests/test-stat-time.c: New test, devised by Bruno Haible.
23673
23674 2007-03-26  Bruno Haible  <bruno@clisp.org>
23675
23676         Better support of signalling NaNs.
23677         * lib/atanl.c: Include isnanl.h.
23678         (atanl): Perform test for NaN at the beginning of the function and
23679         through a call to isnanl.
23680         * lib/cosl.c: Include isnanl.h.
23681         (cosl): Perform test for NaN at the beginning of the function and
23682         through a call to isnanl.
23683         * lib/ldexpl.c: Include isnanl.h.
23684         (ldexpl): Perform test for NaN through a call to isnanl.
23685         * lib/logl.c: Include isnanl.h.
23686         (logl): Perform test for NaN at the beginning of the function and
23687         through a call to isnanl.
23688         * lib/sinl.c: Include isnanl.h.
23689         (sinl): Perform test for NaN at the beginning of the function and
23690         through a call to isnanl.
23691         * lib/sqrtl.c: Include isnanl.h.
23692         (sqrtl): Perform test for NaN at the beginning of the function and
23693         through a call to isnanl.
23694         * lib/tanl.c: Include isnanl.h.
23695         (tanl): Perform test for NaN at the beginning of the function and
23696         through a call to isnanl.
23697         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
23698         * modules/mathl (Depends-on): Add isnanl.
23699
23700 2007-03-26  Eric Blake  <ebb9@byu.net>
23701
23702         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
23703         regression in logic sense of previous patch.
23704
23705 2007-03-26  Bruno Haible  <bruno@clisp.org>
23706
23707         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
23708         unportable shell command "if ! ...".
23709         Reported by Ralf Wildenhues.
23710
23711 2007-03-25  Bruno Haible  <bruno@clisp.org>
23712
23713         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
23714         <sysexits.h> file, and only add EX_CONFIG.
23715         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
23716         absolute file name and whether it is sufficient. Substitute also
23717         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
23718         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
23719         ABSOLUTE_SYSEXITS_H into sysexits.h.
23720
23721 2007-03-25  Bruno Haible  <bruno@clisp.org>
23722
23723         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
23724         hints is NULL.
23725
23726 2007-03-25  Bruno Haible  <bruno@clisp.org>
23727
23728         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
23729         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
23730
23731 2007-03-25  Bruno Haible  <bruno@clisp.org>
23732
23733         * lib/vasnprintf.c: Include langinfo.h.
23734         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
23735         multithread-safe.
23736         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
23737         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
23738         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
23739         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
23740         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
23741         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
23742         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
23743         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
23744         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
23745         Reported by Simon Josefsson.
23746
23747 2007-03-25  Bruno Haible  <bruno@clisp.org>
23748
23749         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
23750         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
23751         * modules/vasnprintf (Depends-on): Add stdint.
23752
23753 2007-03-25  Bruno Haible  <bruno@clisp.org>
23754
23755         * modules/fpieee: New file.
23756         * m4/fpieee.m4: New file.
23757         * modules/isnan-nolibm (Depends-on): Add fpieee.
23758         * modules/isnanl-nolibm (Depends-on): Add fpieee.
23759         * modules/isnanl (Depends-on): Add fpieee.
23760
23761 2007-03-25  Bruno Haible  <bruno@clisp.org>
23762
23763         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
23764
23765 2007-03-25  Bruno Haible  <bruno@clisp.org>
23766
23767         Avoid test failures on IRIX 6.5.
23768         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
23769         (main): Use it.
23770         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
23771         macros.
23772         (main): Use them.
23773
23774 2007-03-25  Bruno Haible  <bruno@clisp.org>
23775
23776         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
23777         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
23778         exists but doesn't work.
23779         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
23780         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
23781         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
23782         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
23783
23784 2007-03-25  Bruno Haible  <bruno@clisp.org>
23785
23786         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
23787         returns inf. Needed on IRIX 6.5.
23788
23789 2007-03-25  Bruno Haible  <bruno@clisp.org>
23790
23791         * tests/test-frexpl.c: Include isnanl-nolibm.h.
23792         (main): Use isnanl instead of x != x idiom.
23793         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
23794
23795         * tests/test-frexp.c: Include isnan.h.
23796         (main): Use isnan instead of x != x idiom.
23797         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
23798
23799 2007-03-25  Bruno Haible  <bruno@clisp.org>
23800
23801         * tests/test-frexp.c (NaN): New function/macro.
23802         (main): Use it instead of 0.0 / 0.0.
23803         * tests/test-isnan.c (NaN): New function/macro.
23804         (main): Use it instead of 0.0 / 0.0.
23805         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
23806         (test_function): Use it instead of 0.0 / 0.0.
23807         * tests/test-vasprintf-posix.c (NaN): New function/macro.
23808         (test_function): Use it instead of 0.0 / 0.0.
23809         * tests/test-snprintf-posix.h (NaN): New function/macro.
23810         (test_function): Use it instead of 0.0 / 0.0.
23811         * tests/test-sprintf-posix.h (NaN): New function/macro.
23812         (test_function): Use it instead of 0.0 / 0.0.
23813         * tests/test-fprintf-posix.h (NaN): New function/macro.
23814         (test_function): Use it instead of 0.0 / 0.0.
23815         * tests/test-printf-posix.h (NaN): New function/macro.
23816         (test_function): Use it instead of 0.0 / 0.0.
23817
23818         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
23819
23820 2007-03-25  Bruno Haible  <bruno@clisp.org>
23821
23822         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
23823
23824 2007-03-25  Bruno Haible  <bruno@clisp.org>
23825
23826         * lib/regexec.c (merge_state_with_log): Make static.
23827
23828 2007-03-25  Bruno Haible  <bruno@clisp.org>
23829
23830         * lib/trigl.c (kernel_rem_pio2): Make static.
23831
23832 2007-03-25  Bruno Haible  <bruno@clisp.org>
23833
23834         * lib/sincosl.c (sincosl_table): Make static.
23835
23836 2007-03-25  Bruno Haible  <bruno@clisp.org>
23837
23838         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
23839         if the compiler does not support C99.
23840
23841 2007-03-25  Bruno Haible  <bruno@clisp.org>
23842
23843         * modules/time (Makefile.am): Ensure all rule action lines start with a
23844         tab.
23845
23846 2007-03-24  Bruno Haible  <bruno@clisp.org>
23847
23848         * modules/tsearch-tests: New file.
23849         * tests/test-tsearch.sh: New file.
23850         * tests/test-tsearch.c: New file, mostly copied from glibc.
23851
23852         * modules/search-tests: New file.
23853         * tests/test-search.c: New file.
23854
23855         * modules/search: New file.
23856         * lib/search_.h: New file, incorporating lib/tsearch.h.
23857         * m4/search_h.m4: New file.
23858         * lib/tsearch.h: Remove file.
23859         * lib/tsearch.c: Include search.h instead of tsearch.h.
23860         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
23861         HAVE_TSEARCH.
23862         * modules/tsearch (Files): Remove lib/tsearch.h.
23863         (Depends-on): Add search.
23864         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
23865         (Include): Change tsearch.h into search.h.
23866
23867 2007-03-24  Bruno Haible  <bruno@clisp.org>
23868
23869         * modules/fpucw: New file.
23870         * lib/fpucw.h: New file.
23871         * lib/frexp.c: Include fpucw.h.
23872         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
23873         (FUNC): Use them.
23874         * lib/printf-frexp.c: Include fpucw.h.
23875         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
23876         (FUNC): Use them.
23877         * lib/vasnprintf.c: Include fpucw.h.
23878         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
23879         'long double' calculations.
23880         * tests/test-frexpl.c: Include fpucw.h.
23881         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
23882         * tests/test-printf-frexpl.c: Include fpucw.h.
23883         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
23884         * modules/frexpl (Depends-on): Add fpucw.
23885         * modules/printf-frexpl (Depends-on): Likewise.
23886         * modules/fprintf-posix (Depends-on): Likewise.
23887         * modules/snprintf-posix (Depends-on): Likewise.
23888         * modules/sprintf-posix (Depends-on): Likewise.
23889         * modules/vasnprintf-posix (Depends-on): Likewise.
23890         * modules/vasprintf-posix (Depends-on): Likewise.
23891         * modules/vfprintf-posix (Depends-on): Likewise.
23892         * modules/vsnprintf-posix (Depends-on): Likewise.
23893         * modules/vsprintf-posix (Depends-on): Likewise.
23894         * modules/frexpl-tests (Depends-on): Likewise.
23895         * modules/printf-frexpl-tests (Depends-on): Likewise.
23896
23897 2007-03-24  Bruno Haible  <bruno@clisp.org>
23898
23899         * lib/float+.h: New file.
23900         * lib/isnan.c: Include float+.h.
23901         (SIZE): New macro.
23902         (FUNC): Compare only SIZE bytes of the value.
23903         * lib/vasnprintf.c: Include float+.h.
23904         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
23905         SIZEOF_LDBL or SIZEOF_DBL bytes.
23906         * modules/isnan-nolibm (Files): Add lib/float+.h.
23907         * modules/isnanl-nolibm (Files): Add lib/float+.h.
23908         * modules/isnanl (Files): Add lib/float+.h.
23909         * modules/vasnprintf (Files): Add lib/float+.h.
23910
23911 2007-03-24  Bruno Haible  <bruno@clisp.org>
23912
23913         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
23914         include isnanl-nolibm.h.
23915
23916 2007-03-24  Bruno Haible  <bruno@clisp.org>
23917
23918         * tests/test-read-file.c (main): Don't produce spurious output for
23919         expected situations. Make the test fail if it encountered unexpected
23920         results.
23921
23922 2007-03-24  Bruno Haible  <bruno@clisp.org>
23923
23924         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
23925         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
23926
23927 2007-03-24  Bruno Haible  <bruno@clisp.org>
23928
23929         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
23930
23931 2007-03-24  Bruno Haible  <bruno@clisp.org>
23932
23933         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
23934         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
23935
23936         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
23937         * modules/utf8-ucs4: Turn into a symbolic link to module
23938         unistr/u8-mbtouc.
23939
23940         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
23941         utf8-ucs4-unsafe.
23942         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
23943         unistr/u8-mbtouc-unsafe.
23944
23945         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
23946         * modules/utf16-ucs4: Turn into a symbolic link to module
23947         unistr/u16-mbtouc.
23948
23949         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
23950         utf16-ucs4-unsafe.
23951         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
23952         unistr/u16-mbtouc-unsafe.
23953
23954         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
23955         * modules/ucs4-utf8: Turn into a symbolic link to module
23956         unistr/u8-ubtomb.
23957
23958         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
23959         * modules/ucs4-utf16: Turn into a symbolic link to module
23960         unistr/u16-ubtomb.
23961
23962 2007-03-24  Bruno Haible  <bruno@clisp.org>
23963
23964         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
23965         Enable the function only if HAVE_INLINE.
23966         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
23967         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
23968         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
23969         Enable the function only if HAVE_INLINE.
23970         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
23971         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
23972         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
23973         Enable the function only if HAVE_INLINE.
23974         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
23975         Enable the function only if HAVE_INLINE.
23976         * modules/utf8-ucs4: Update.
23977         * modules/utf8-ucs4-unsafe: Update.
23978         * modules/utf16-ucs4: Update.
23979         * modules/utf16-ucs4-unsafe: Update.
23980         * modules/ucs4-utf8: Update.
23981         * modules/ucs4-utf16: Update.
23982
23983 2007-03-24  Bruno Haible  <bruno@clisp.org>
23984
23985         * lib/utf8-ucs4.h: Remove file.
23986         * lib/utf8-ucs4-unsafe.h: Remove file.
23987         * lib/utf16-ucs4.h: Remove file.
23988         * lib/utf16-ucs4-unsafe.h: Remove file.
23989         * lib/ucs4-utf8.h: Remove file.
23990         * lib/ucs4-utf16.h: Remove file.
23991         * lib/unistr.h: Include their previous contents.
23992         * m4/utf-ucs4.m4: Remove file.
23993         * m4/ucs4-utf.m4: Remove file.
23994         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
23995         (Depends-on): Add unistr/base.
23996         (configure.ac): Remove gl_UTF_UCS4.
23997         (Makefile.am): Update.
23998         (Include): Change to unistr.h.
23999         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
24000         (Depends-on): Add unistr/base.
24001         (configure.ac): Remove gl_UTF_UCS4.
24002         (Makefile.am): Update.
24003         (Include): Change to unistr.h.
24004         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
24005         (Depends-on): Add unistr/base.
24006         (configure.ac): Remove gl_UTF_UCS4.
24007         (Makefile.am): Update.
24008         (Include): Change to unistr.h.
24009         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
24010         (Depends-on): Add unistr/base.
24011         (configure.ac): Remove gl_UTF_UCS4.
24012         (Makefile.am): Update.
24013         (Include): Change to unistr.h.
24014         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
24015         (Depends-on): Add unistr/base.
24016         (configure.ac): Remove gl_UCS4_UTF.
24017         (Makefile.am): Update.
24018         (Include): Change to unistr.h.
24019         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
24020         (Depends-on): Add unistr/base.
24021         (configure.ac): Remove gl_UCS4_UTF.
24022         (Makefile.am): Update.
24023         (Include): Change to unistr.h.
24024         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
24025         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
24026         utf8-ucs4-unsafe.h.
24027         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
24028         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
24029         utf16-ucs4-unsafe.h.
24030         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
24031         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
24032         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
24033         * lib/unistr/u8-strchr.c: Likewise.
24034         * lib/unistr/u8-strrchr.c: Likewise.
24035         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
24036         * lib/unistr/u16-strchr.c: Likewise.
24037         * lib/unistr/u16-strrchr.c: Likewise.
24038         * lib/striconveh.c: Update.
24039         * lib/linebreak.c: Update.
24040
24041 2007-03-24  Bruno Haible  <bruno@clisp.org>
24042
24043         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
24044         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
24045
24046 2007-03-22  Bruno Haible  <bruno@clisp.org>
24047
24048         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
24049
24050 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
24051
24052         * MODULES.html.sh (File system functions): New module write-any-file.
24053         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
24054         * m4/write-any-file.m4: New files.
24055
24056 2007-03-23  Eric Blake  <ebb9@byu.net>
24057
24058         * gnulib-tool: Rearrange space-tab sequences, since some editors
24059         like to eat them.
24060
24061 2007-03-23  Eric Blake  <ebb9@byu.net>
24062
24063         * lib/version-etc.c (version_etc_va): Update license wording to
24064         be more concise.  Recommended by Richard Stallman.
24065
24066 2007-03-22  Bruno Haible  <bruno@clisp.org>
24067
24068         * lib/poll.c (MSG_PEEK): New fallback definition.
24069
24070 2007-03-22  Bruno Haible  <bruno@clisp.org>
24071
24072         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
24073         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
24074         (main): Update.
24075         Fixes a compilation error on BeOS.
24076
24077 2007-03-22  Bruno Haible  <bruno@clisp.org>
24078
24079         * modules/frexpl-tests: New file.
24080         * tests/test-frexpl.c: New file.
24081
24082         * modules/frexpl: New file.
24083         * m4/frexpl.m4: New file.
24084         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
24085         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
24086         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
24087         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
24088         (Depends-on): Add frexpl. Remove isnanl-nolibm.
24089         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
24090
24091 2007-03-22  Bruno Haible  <bruno@clisp.org>
24092
24093         * lib/frexpl.c: Share code with lib/frexp.c.
24094         * modules/mathl (Files): Add lib/frexp.c.
24095         (Depends-on): Add isnanl-nolibm.
24096
24097 2007-03-22  Bruno Haible  <bruno@clisp.org>
24098
24099         * modules/printf-frexp (Files): Add m4/frexp.m4.
24100         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
24101         only if the found frexp function actually works.
24102
24103 2007-03-22  Bruno Haible  <bruno@clisp.org>
24104
24105         * lib/frexp.c: Remove older implementation that uses divisions.
24106
24107 2007-03-21  Bruno Haible  <bruno@clisp.org>
24108
24109         * modules/frexp-tests: New file.
24110         * tests/test-frexp.c: New file.
24111
24112         * modules/frexp: New file.
24113         * lib/frexp.c: New file.
24114         * m4/frexp.m4: New file.
24115         * lib/math_.h (frexp): New declaration.
24116         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
24117         REPLACE_FREXP.
24118         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
24119
24120 2007-03-21  Bruno Haible  <bruno@clisp.org>
24121
24122         * modules/isnanl-tests: New file.
24123         * tests/test-isnanl.c: New file.
24124
24125         * modules/isnanl: New file.
24126         * lib/isnanl.h: New file.
24127         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
24128         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
24129         gl_FUNC_ISNANL_WORKS.
24130         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
24131         New macros.
24132
24133 2007-03-21  Bruno Haible  <bruno@clisp.org>
24134
24135         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
24136         lib/isnanl.h.
24137         (Include): Update.
24138         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
24139         * lib/vasnprintf.c: Update.
24140         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
24141         tests/test-isnanl.h, remove tests/test-isnanl.c.
24142         (Makefile.am): Update.
24143         * tests/test-isnanl-nolibm.c: New file.
24144         * tests/test-isnanl.h: New file.
24145         * tests/test-isnanl.c: Remove file.
24146
24147 2007-03-21  Jim Meyering  <jim@meyering.net>
24148
24149         When trying to open ".", treat ESTALE like EACCES.
24150         * lib/savewd.c (savewd_save): Resort to forking not just upon
24151         failure with EACCES, but also when errno is ESTALE.
24152
24153 2007-03-20  Bruno Haible  <bruno@clisp.org>
24154
24155         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
24156         Needed on AIX 5.1. Reported by Matthew Woehlke.
24157
24158 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
24159
24160         Suggestions by Bruno Haible:
24161         * lib/acl-internal.h: Include "gettext.h" rather than rolling
24162         our own.
24163         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
24164         * modules/acl (Depends-on): Add gettext.
24165
24166 2007-03-19  Bruno Haible  <bruno@clisp.org>
24167
24168         * modules/iconvme: Remove file.
24169         * lib/iconvme.h: Remove file.
24170         * lib/iconvme.c: Remove file.
24171         * m4/iconvme.m4: Remove file.
24172
24173 2007-03-19  Bruno Haible  <bruno@clisp.org>
24174
24175         * doc/relocatable-maint.texi: Break long shell script line.
24176         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
24177
24178 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
24179
24180         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
24181         handle file_has_acl.
24182         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
24183         * lib/acl.c: Move header inclusions and related macro defns into
24184         lib/acl-internal.h.
24185         (S_ISLNK): Remove defn, since that's now done for us.
24186         (file_has_acl): Move to lib/file-has-acl.c.
24187         Call acl_trivial if available.  This is the crucial part of the fix.
24188         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
24189         shared within the library.  Rewrite a bit, partly to make it compatible
24190         with the GNU coding style.
24191         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
24192         Remove unnecessary double-quotes.
24193         Don't test for acl_to_text; the build will catch that.
24194         Replace acl_entries if it doesn't exist and it is needed.
24195         Check for -lsec and acl_trivial (as used on Solaris 10).
24196         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
24197         lib/file-has-acl.c.
24198         (Depends-on): Add sys_stat, for S_ISLNK.
24199
24200 2007-03-19  Ben Pfaff  <blp@gnu.org>
24201
24202         * doc/gnulib.texi: Fix typos.
24203         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
24204
24205 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
24206
24207         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
24208         If size is zero here, buf must be zero.
24209
24210 2007-03-19  Simon Josefsson  <simon@josefsson.org>
24211
24212         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
24213         <bruno@clisp.org>.
24214
24215 2007-03-18  Bruno Haible  <bruno@clisp.org>
24216
24217         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
24218         Suggested by Eric Blake.
24219
24220 2007-03-18  Ben Pfaff  <blp@gnu.org>
24221
24222         * doc/relocatable.texi: Recommend using as prefix a directory
24223         that does not exist and will never be created.  Based on
24224         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
24225         and others.
24226
24227 2007-03-17  Bruno Haible  <bruno@clisp.org>
24228
24229         * lib/fchownat.c: Include lchown.h.
24230
24231 2007-03-17  Bruno Haible  <bruno@clisp.org>
24232
24233         Fix endless loop when the given allocated size was > INT_MAX.
24234         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
24235         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
24236         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
24237         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
24238         * lib/sprintf.c (sprintf): Likewise.
24239
24240 2007-03-17  Bruno Haible  <bruno@clisp.org>
24241
24242         * tests/test-argp-2.sh (func_compare): Output a context diff.
24243
24244 2007-03-17  Bruno Haible  <bruno@clisp.org>
24245
24246         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
24247         locale's decimal-point character.
24248
24249 2007-03-17  Bruno Haible  <bruno@clisp.org>
24250
24251         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
24252         before comparing it. Needed because on some platforms (e.g. x86) a
24253         'long double' occupies less bytes than sizeof (long double).
24254
24255 2007-03-17  Bruno Haible  <bruno@clisp.org>
24256
24257         * tests/test-crc.c (main): Make printf statements 64-bit clean.
24258         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
24259         * tests/test-getaddrinfo.c (simple): Likewise.
24260         * tests/test-read-file.c (main): Likewise.
24261
24262 2007-03-17  Bruno Haible  <bruno@clisp.org>
24263
24264         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
24265
24266 2007-03-17  Bruno Haible  <bruno@clisp.org>
24267
24268         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
24269         unused variable.
24270
24271 2007-03-17  Bruno Haible  <bruno@clisp.org>
24272
24273         * tests/test-c-strcasecmp.c: Include c-strcase.h.
24274         * tests/test-c-strncasecmp.c: Likewise.
24275
24276 2007-03-17  Bruno Haible  <bruno@clisp.org>
24277
24278         * modules/stdlib (Depends-on): Add unistd.
24279         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
24280         Needed for MacOS X 10.3.
24281
24282 2007-03-17  Bruno Haible  <bruno@clisp.org>
24283
24284         * lib/unistr/u-strdup.h: Include <stdlib.h>.
24285
24286 2007-03-17  Bruno Haible  <bruno@clisp.org>
24287
24288         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
24289
24290 2007-03-17  Bruno Haible  <bruno@clisp.org>
24291
24292         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
24293         to reflect files copied from gnulib (with or without modifications).
24294         Suggested by Jim Meyering.
24295
24296 2007-03-17  Eric Blake  <ebb9@byu.net>
24297
24298         * NEWS: Document stdlib change from 2007-02-18.
24299
24300 2007-03-17  Jim Meyering  <jim@meyering.net>
24301
24302         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
24303         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
24304         someone uses a name containing shell meta-characters.
24305         Reported by Alfred M. Szmidt.
24306
24307         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
24308
24309 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
24310
24311         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
24312         and copy gettext configuration files only if configure.ac contains
24313         a use of AM_GNU_GETTEXT_VERSION.
24314
24315 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
24316
24317         * build-aux/bootstrap (gnulib_name): New variable.
24318         (gnulib_tool_options): Use it.
24319
24320 2007-03-13  Simon Josefsson  <simon@josefsson.org>
24321
24322         * tests/test-des.c: Use new namespace.
24323
24324 2007-03-15  Bruno Haible  <bruno@clisp.org>
24325
24326         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
24327         Reported by James Youngman <jay@gnu.org>.
24328
24329 2007-03-15  Bruno Haible  <bruno@clisp.org>
24330
24331         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
24332         declared prototype. Needed with cc on OSF/1 5.1.
24333
24334 2007-03-15  Bruno Haible  <bruno@clisp.org>
24335
24336         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
24337         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
24338         (struct gl_list_implementation): Add dispose_fn argument to the
24339         'create_empty', 'create' methods.
24340         (struct gl_list_impl_base): Add field 'dispose_fn'.
24341         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
24342         argument.
24343         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
24344         dispose_fn argument.
24345         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
24346         dispose_fn on the dropped values.
24347         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
24348         dispose_fn argument.
24349         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
24350         dropped values.
24351         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
24352         (gl_tree_remove_node): Call dispose_fn on the dropped value.
24353         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
24354         (gl_tree_remove_node): Call dispose_fn on the dropped value.
24355         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
24356         argument.
24357         (gl_tree_list_free): Call dispose_fn on the dropped values.
24358         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
24359         the dropped values.
24360         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
24361         Add dispose_fn argument.
24362         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
24363         Call dispose_fn on the dropped values.
24364         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
24365         Add dispose_fn argument.
24366         (gl_sublist_create): Initialize the 'dispose_fn' field.
24367         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
24368         * tests/test-array_list.c (main): Update.
24369         * tests/test-carray_list.c (main): Update.
24370         * tests/test-avltree_list.c (main): Update.
24371         * tests/test-rbtree_list.c (main): Update.
24372         * tests/test-avltreehash_list.c (main): Update.
24373         * tests/test-rbtreehash_list.c (main): Update.
24374         * tests/test-linked_list.c (main): Update.
24375         * tests/test-linkedhash_list.c (main): Update.
24376         * tests/test-array_oset.c (main): Update.
24377
24378 2007-03-15  Bruno Haible  <bruno@clisp.org>
24379
24380         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
24381         (gl_oset_create_empty): Add dispose_fn argument.
24382         (struct gl_oset_implementation): Add dispose_fn argument to
24383         'create_empty' method.
24384         (struct gl_oset_impl_base): Add dispose_fn field.
24385         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
24386         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
24387         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
24388         values.
24389         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
24390         (gl_tree_oset_free): Call dispose_fn on the dropped values.
24391         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
24392         dropped value.
24393         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
24394         dropped value.
24395         * tests/test-array_oset.c (main): Update.
24396         * tests/test-avltree_oset.c (main): Update.
24397         * tests/test-rbtree_oset.c (main): Update.
24398         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
24399
24400 2007-03-13  Bruno Haible  <bruno@clisp.org>
24401
24402         * tests/test-stdbool.c (i): Update after last patch.
24403
24404 2007-03-12  Bruno Haible  <bruno@clisp.org>
24405
24406         * lib/quotearg.c: Include <wctype.h> early, before the definition of
24407         the iswprint macro. Needed on Solaris 2.5.1.
24408
24409 2007-03-12  Bruno Haible  <bruno@clisp.org>
24410
24411         * tests/test-printf-frexp.c (main): Declare x as volatile.
24412
24413 2007-03-12  Simon Josefsson  <simon@josefsson.org>
24414
24415         * doc/gnulib.texi (Build robot for gnulib): New section.
24416
24417 2007-03-12  Jim Meyering  <jim@meyering.net>
24418
24419         * build-aux/bootstrap: New file.
24420         * build-aux/bootstrap.conf: New file, from coreutils.
24421
24422 2007-03-11  Bruno Haible  <bruno@clisp.org>
24423
24424         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
24425
24426 2007-03-12  Simon Josefsson  <simon@josefsson.org>
24427
24428         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
24429         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
24430         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
24431
24432 2007-03-11  Bruno Haible  <bruno@clisp.org>
24433
24434         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
24435         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
24436
24437 2007-03-11  Bruno Haible  <bruno@clisp.org>
24438
24439         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
24440         formula. Needed for SunPRO C 5.0.
24441
24442 2007-03-11  Bruno Haible  <bruno@clisp.org>
24443
24444         * modules/long-options (Depends-on): Add getopt.
24445
24446 2007-03-11  Bruno Haible  <bruno@clisp.org>
24447
24448         * modules/modechange (Depends-on): Add stdbool.
24449
24450 2007-03-11  Bruno Haible  <bruno@clisp.org>
24451
24452         * modules/i-ring (Depends-on): Add stdbool.
24453
24454 2007-03-11  Bruno Haible  <bruno@clisp.org>
24455
24456         * modules/gc-des (Depends-on): Add stdbool.
24457
24458 2007-03-11  Bruno Haible  <bruno@clisp.org>
24459
24460         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
24461
24462 2007-03-11  Bruno Haible  <bruno@clisp.org>
24463
24464         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
24465
24466 2007-03-11  Bruno Haible  <bruno@clisp.org>
24467
24468         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
24469
24470 2007-03-11  Bruno Haible  <bruno@clisp.org>
24471
24472         * lib/vasnprintf.c (sprintf): Undefine.
24473
24474 2007-03-11  Bruno Haible  <bruno@clisp.org>
24475
24476         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
24477         initializers in SunPRO C and Compaq C compilers.
24478
24479 2007-03-11  Bruno Haible  <bruno@clisp.org>
24480
24481         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
24482         decrementing code ANSI C compliant.
24483
24484 2007-03-11  Bruno Haible  <bruno@clisp.org>
24485
24486         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
24487         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
24488
24489 2007-03-11  Bruno Haible  <bruno@clisp.org>
24490
24491         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
24492         <stdbool.h> substitute doesn't pass.
24493
24494 2007-03-11  Bruno Haible  <bruno@clisp.org>
24495
24496         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
24497
24498 2007-03-11  Bruno Haible  <bruno@clisp.org>
24499
24500         * gnulib-tool (func_create_megatestdir): Create also an autobuild
24501         script, for submission to autobuild.josefsson.org.
24502
24503 2007-03-10  Bruno Haible  <bruno@clisp.org>
24504
24505         * modules/canonicalize-lgpl-tests: New file.
24506         * tests/test-canonicalize-lgpl.sh: New file.
24507         * tests/test-canonicalize-lgpl.c: New file.
24508
24509         * modules/c-strcase-tests: New file.
24510         * tests/test-c-strcase.sh: New file.
24511         * tests/test-c-strcasecmp.c: New file.
24512         * tests/test-c-strncasecmp.c: New file.
24513
24514         * modules/atexit-tests: New file.
24515         * tests/test-atexit.sh: New file.
24516         * tests/test-atexit.c: New file.
24517
24518 2007-03-10  Bruno Haible  <bruno@clisp.org>
24519
24520         * tests/test-binary-io.sh: Use temporary filenames that are not so
24521         likely to clash with those of other tests (in a parallel make).
24522         * tests/test-binary-io.c: Likewise.
24523
24524 2007-03-10  Bruno Haible  <bruno@clisp.org>
24525
24526         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
24527         fallback; use #error instead.
24528         Suggested by Simon Josefsson.
24529
24530 2007-03-10  Bruno Haible  <bruno@clisp.org>
24531
24532         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
24533         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
24534         first and the last.
24535
24536 2007-03-10  Bruno Haible  <bruno@clisp.org>
24537
24538         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
24539
24540 2007-03-10  Bruno Haible  <bruno@clisp.org>
24541
24542         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
24543         "make distcheck".
24544         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
24545         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
24546         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
24547
24548 2007-03-10  Bruno Haible  <bruno@clisp.org>
24549
24550         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
24551         variable.
24552         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
24553         variable.
24554
24555 2007-03-09  Eric Blake  <ebb9@byu.net>
24556         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
24557
24558         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
24559         types are not being provided by gnulib.
24560         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
24561         types are supported.
24562
24563 2007-03-10  Bruno Haible  <bruno@clisp.org>
24564
24565         * lib/stdio_.h (__attribute__): New macro.
24566         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
24567         vsprintf): Specify __attribute__ __format__ for GCC.
24568         Suggested by Eric Blake.
24569
24570 2007-03-09  Bruno Haible  <bruno@clisp.org>
24571
24572         * modules/printf-posix-tests: New file.
24573         * tests/test-printf-posix.sh: New file.
24574         * tests/test-printf-posix.c: New file.
24575
24576         * modules/printf-posix: New file.
24577         * lib/printf.c: New file.
24578         * m4/printf-posix-rpl.m4: New file.
24579         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
24580         REPLACE_PRINTF.
24581         * lib/stdio_.h (printf): New declaration.
24582         (format, __format__, ____printf____, ____scanf____, ____strftime____,
24583         ____strfmon____): New macros.
24584         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
24585         REPLACE_PRINTF.
24586
24587 2007-03-09  Bruno Haible  <bruno@clisp.org>
24588
24589         * tests/test-vasnprintf-posix2.sh: New file.
24590         * tests/test-vasnprintf-posix2.c: New file.
24591         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
24592         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
24593         (Makefile.am): Activate test-vasnprintf-posix2.sh.
24594
24595         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
24596         a locale dependent decimal point, rather than always '.'.
24597
24598 2007-03-09  Eric Blake  <ebb9@byu.net>
24599
24600         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
24601         spite of platforms like Tandem/NSK that define it to -1.
24602
24603 2007-03-08  Bruno Haible  <bruno@clisp.org>
24604
24605         * modules/vprintf-posix-tests: New file.
24606         * tests/test-vprintf-posix.sh: New file.
24607         * tests/test-vprintf-posix.c: New file.
24608         * tests/test-printf-posix.h: New file.
24609
24610         * modules/vprintf-posix: New file.
24611         * lib/vprintf.c: New file.
24612         * m4/vprintf-posix.m4: New file.
24613         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
24614         REPLACE_VPRINTF.
24615         * lib/stdio_.h (vprintf): New declaration.
24616         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
24617         REPLACE_VPRINTF.
24618
24619 2007-03-08  Bruno Haible  <bruno@clisp.org>
24620
24621         * modules/fprintf-posix-tests: New file.
24622         * tests/test-fprintf-posix.sh: New file.
24623         * tests/test-fprintf-posix.c: New file.
24624
24625         * modules/fprintf-posix: New file.
24626         * lib/fprintf.c: New file.
24627         * m4/fprintf-posix.m4: New file.
24628         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
24629         REPLACE_FPRINTF.
24630         * lib/stdio_.h (fprintf): New declaration.
24631         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
24632         REPLACE_FPRINTF.
24633
24634 2007-03-08  Bruno Haible  <bruno@clisp.org>
24635
24636         * modules/vfprintf-posix-tests: New file.
24637         * tests/test-vfprintf-posix.sh: New file.
24638         * tests/test-vfprintf-posix.c: New file.
24639         * tests/test-fprintf-posix.h: New file.
24640         * tests/test-fprintf-posix.out: New file.
24641
24642         * modules/vfprintf-posix: New file.
24643         * lib/vfprintf.c: New file.
24644         * m4/vfprintf-posix.m4: New file.
24645         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
24646         REPLACE_VFPRINTF.
24647         * lib/stdio_.h (vfprintf): New declaration.
24648         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
24649         REPLACE_VFPRINTF.
24650
24651 2007-03-08  Bruno Haible  <bruno@clisp.org>
24652
24653         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
24654
24655 2007-03-08  Bruno Haible  <bruno@clisp.org>
24656
24657         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
24658         instead of 'expr' invocations.
24659         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
24660         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
24661         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
24662         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
24663         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
24664         Suggested by Paul Eggert.
24665
24666 2007-03-08  Bruno Haible  <bruno@clisp.org>
24667
24668         * modules/fseterr-tests: New file.
24669         * tests/test-fseterr.c: New file.
24670
24671         * modules/fseterr: New file.
24672         * lib/fseterr.h: New file.
24673         * lib/fseterr.c: New file.
24674
24675 2007-03-08  Bruno Haible  <bruno@clisp.org>
24676
24677         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
24678         * lib/getopt_.h: Likewise.
24679         * lib/mbswidth.h: Likewise.
24680         * lib/setenv.h: Likewise.
24681         * lib/vasnprintf.h: Likewise.
24682         * lib/vasprintf.h: Likewise.
24683         * lib/verror.h: Likewise.
24684         * lib/xsetenv.h: Likewise.
24685         * lib/xvasprintf.h: Likewise.
24686
24687 2007-03-08  Jim Meyering  <jim@meyering.net>
24688
24689         * users.txt: Add parted.
24690
24691         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
24692
24693 2007-03-07  Bruno Haible  <bruno@clisp.org>
24694
24695         * m4/printf.m4: Make the shell script snippets copy&pastable.
24696
24697 2007-03-02  Bruno Haible  <bruno@clisp.org>
24698
24699         * lib/netinet_in_.h: New file.
24700         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
24701         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
24702         * modules/netinet_in (Files): Add lib/netinet_in_.h.
24703         (Depends-on): Add absolute-header.
24704         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
24705         into netinet/in.h.
24706
24707 2007-03-03  Bruno Haible  <bruno@clisp.org>
24708
24709         * lib/sys_select_.h: New file.
24710         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
24711         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
24712         * modules/sys_select (Files): Add lib/sys_select_.h.
24713         (Depends-on): Add absolute-header.
24714         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
24715         into sys/select.h.
24716
24717 2007-03-02  Bruno Haible  <bruno@clisp.org>
24718
24719         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
24720         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
24721         values.
24722         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
24723         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
24724         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
24725         * modules/sys_socket (Depends-on): Add absolute-header.
24726         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
24727         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
24728         (Include): Remove requirement of inclusion of <sys/types.h>.
24729
24730 2007-03-02  Bruno Haible  <bruno@clisp.org>
24731
24732         * lib/byteswap_.h (bswap_32): Fix formula.
24733
24734 2007-03-06  Bruno Haible  <bruno@clisp.org>
24735
24736         * modules/sprintf-posix-tests: New file.
24737         * tests/test-sprintf-posix.c: New file.
24738
24739         * modules/sprintf-posix: New file.
24740         * lib/sprintf.c: New file.
24741         * m4/sprintf-posix.m4: New file.
24742         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
24743         REPLACE_SPRINTF.
24744         * lib/stdio_.h (sprintf): New declaration.
24745         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
24746         REPLACE_SPRINTF.
24747
24748 2007-03-06  Bruno Haible  <bruno@clisp.org>
24749
24750         * modules/vsprintf-posix-tests: New file.
24751         * tests/test-vsprintf-posix.c: New file.
24752         * tests/test-sprintf-posix.h: New file.
24753
24754         * modules/vsprintf-posix: New file.
24755         * lib/vsprintf.c: New file.
24756         * m4/vsprintf-posix.m4: New file.
24757         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
24758         REPLACE_VSPRINTF.
24759         * lib/stdio_.h (vsprintf): New declaration.
24760         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
24761         REPLACE_VSPRINTF.
24762
24763 2007-03-06  Bruno Haible  <bruno@clisp.org>
24764
24765         * modules/vsnprintf (Depend-on): Remove minmax.
24766
24767 2007-03-06  Bruno Haible  <bruno@clisp.org>
24768
24769         * modules/snprintf-posix-tests: New file.
24770         * tests/test-snprintf-posix.c: New file.
24771
24772         * modules/snprintf-posix: New file.
24773         * m4/snprintf-posix.m4: New file.
24774         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
24775         gl_FUNC_SNPRINTF.
24776         (gl_FUNC_SNPRINTF): Invoke it.
24777         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
24778         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
24779         is set.
24780         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
24781
24782 2007-03-06  Bruno Haible  <bruno@clisp.org>
24783
24784         * modules/vsnprintf-posix-tests: New file.
24785         * tests/test-vsnprintf-posix.c: New file.
24786         * tests/test-snprintf-posix.h: New file.
24787
24788         * modules/vsnprintf-posix: New file.
24789         * m4/vsnprintf-posix.m4: New file.
24790         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
24791         gl_FUNC_VSNPRINTF.
24792         (gl_FUNC_VSNPRINTF): Invoke it.
24793         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
24794         * lib/stdio_.h (vsnprintf): Define as a replacement if
24795         REPLACE_VSNPRINTF is set.
24796         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
24797
24798 2007-03-06  Bruno Haible  <bruno@clisp.org>
24799
24800         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
24801         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
24802
24803 2007-03-06  Bruno Haible  <bruno@clisp.org>
24804
24805         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
24806         (asinl): Declare also if HAVE_DECL_ASINL is set.
24807         (atanl): Declare also if HAVE_DECL_ATANL is set.
24808         (ceill): Declare also if HAVE_DECL_CEILL is set.
24809         (cosl): Declare also if HAVE_DECL_COSL is set.
24810         (expl): Declare also if HAVE_DECL_EXPL is set.
24811         (floorl): Declare also if HAVE_DECL_FLOORL is set.
24812         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
24813         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
24814         (logl): Declare also if HAVE_DECL_LOGL is set.
24815         (sinl): Declare also if HAVE_DECL_SINL is set.
24816         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
24817         (tanl): Declare also if HAVE_DECL_TANL is set.
24818         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
24819         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
24820         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
24821         declaration of frexpl, ldexpl.
24822         * modules/printf-frexpl (Depends-on): Add math.
24823         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
24824
24825 2007-03-05  Bruno Haible  <bruno@clisp.org>
24826
24827         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
24828         frexpl and ldexpl are declared.
24829         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
24830
24831 2007-03-05  Bruno Haible  <bruno@clisp.org>
24832
24833         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
24834         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
24835
24836 2007-03-05  Bruno Haible  <bruno@clisp.org>
24837
24838         * lib/stdio_.h: Include <stddef.h>.
24839
24840 2007-03-05  Bruno Haible  <bruno@clisp.org>
24841
24842         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
24843
24844 2007-03-05  Bruno Haible  <bruno@clisp.org>
24845
24846         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
24847         NetBSD 4, from Ralf Wildenhues.
24848
24849 2007-03-04  Bruno Haible  <bruno@clisp.org>
24850
24851         * lib/vasprintf.h: Update #if logic for the case when the functions
24852         exist but are overridden.
24853
24854 2007-03-04  Bruno Haible  <bruno@clisp.org>
24855
24856         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
24857         implementations: glibc-2.4 and MacOS X 10.3.
24858         * tests/test-vasnprintf-posix.c (test_function): Test also the case
24859         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
24860         * tests/test-vasprintf-posix.c (test_function): Likewise.
24861
24862 2007-03-04  Bruno Haible  <bruno@clisp.org>
24863
24864         * modules/vasprintf-posix-tests: New file.
24865         * tests/test-vasprintf-posix.c: New file.
24866
24867         * modules/vasprintf-posix: New file.
24868         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
24869         defined.
24870         * m4/vasprintf-posix.m4: New file.
24871         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
24872         gl_FUNC_VASPRINTF.
24873         (gl_FUNC_VASPRINTF): Invoke it.
24874         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
24875         here.
24876         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
24877
24878 2007-03-04  Bruno Haible  <bruno@clisp.org>
24879
24880         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
24881         REPLACE_GETTIMEOFDAY.
24882         * modules/sys_time (Makefile.am): Likewise.
24883         * m4/sys_time_h.m4: Likewise.
24884         * m4/gettimeofday.m4: Likewise.
24885
24886 2007-03-04  Bruno Haible  <bruno@clisp.org>
24887
24888         * modules/vasnprintf-posix-tests: New file.
24889         * tests/test-vasnprintf-posix.c: New file.
24890
24891         * modules/vasnprintf-posix: New file.
24892         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
24893         printf-frexpl.h.
24894         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
24895         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
24896         REPLACE_VASNPRINTF is defined.
24897         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
24898         gl_FUNC_VASNPRINTF.
24899         (gl_FUNC_VASNPRINTF): Invoke it.
24900         * m4/vasnprintf-posix.m4: New file.
24901         * m4/printf.m4: New file.
24902
24903 2007-03-04  Bruno Haible  <bruno@clisp.org>
24904
24905         Compile progreloc.c only if --enable-relocatable is specified.
24906         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
24907         if --enable-relocatable was specified.
24908         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
24909         lib_SOURCES.
24910
24911 2007-03-04  Jim Meyering  <jim@meyering.net>
24912
24913         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
24914         Use it consistently, rather than enumerating errno constants.
24915
24916 2007-03-04  Bruno Haible  <bruno@clisp.org>
24917
24918         * modules/xvasprintf-tests: New file.
24919         * tests/test-xvasprintf.c: New file.
24920
24921         * modules/vasprintf-tests: New file.
24922         * tests/test-vasprintf.c: New file.
24923
24924         * modules/vasnprintf-tests: New file.
24925         * tests/test-vasnprintf.c: New file.
24926
24927         * modules/vsnprintf-tests: New file.
24928         * tests/test-vsnprintf.c: New file.
24929
24930         * modules/snprintf-tests: New file.
24931         * tests/test-snprintf.c: New file.
24932
24933 2007-03-04  Bruno Haible  <bruno@clisp.org>
24934
24935         Compile relocatable.c only if --enable-relocatable is specified.
24936         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
24937         gl_RELOCATABLE_LIBRARY.
24938         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
24939         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
24940         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
24941         gl_RELOCATABLE_LIBRARY.
24942         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
24943         (Makefile.am): Remove lib_SOURCES.
24944         * modules/relocatable-lib-lgpl (configure.ac): Invoke
24945         gl_RELOCATABLE_LIBRARY.
24946         (Makefile.am): Remove lib_SOURCES.
24947         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
24948         always.
24949         * modules/relocatable-prog-wrapper (configure.ac): Invoke
24950         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
24951
24952 2007-03-04  Bruno Haible  <bruno@clisp.org>
24953
24954         * modules/argmatch-tests: New file.
24955         * tests/test-argmatch.c: New file.
24956
24957         * tests/test-allocsa.c (main): Halve the number of loop runs.
24958
24959         * modules/alloca-opt-tests: New file.
24960         * tests/test-alloca-opt.c: New file.
24961
24962 2007-03-04  Jim Meyering  <jim@meyering.net>
24963
24964         Work around difference between Linux ACLs and Solaris 10 ZFS.
24965         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
24966         for EINVAL.
24967
24968 2007-03-03  Bruno Haible  <bruno@clisp.org>
24969
24970         * modules/relocatable-prog (Depends-on): Add back progreloc's
24971         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
24972
24973 2007-03-03  Bruno Haible  <bruno@clisp.org>
24974
24975         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
24976         * modules/relocatable-lib: New file.
24977
24978 2007-03-03  Bruno Haible  <bruno@clisp.org>
24979
24980         * modules/relocatable-prog: Renamed from modules/relocatable.
24981         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
24982
24983 2007-03-03  Bruno Haible  <bruno@clisp.org>
24984
24985         * modules/relocatable-script (Files): Add doc/relocatable.texi,
24986         m4/relocatable-lib.m4.
24987         (Depends-on): Remove 'relocatable'.
24988         (configure.ac): Add gl_RELOCATABLE_NOP.
24989
24990 2007-03-03  Bruno Haible  <bruno@clisp.org>
24991
24992         * modules/relocatable-prog-wrapper: New file.
24993         * modules/relocatable (Depends-on): Add it. Remove all other
24994         dependencies except progname.
24995         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
24996
24997         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
24998         (gl_FUNC_STRERROR): Nop.
24999         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
25000
25001         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
25002         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
25003
25004         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
25005         (gl_FUNC_READLINK): Update.
25006
25007         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
25008
25009 2007-03-03  Bruno Haible  <bruno@clisp.org>
25010
25011         * lib/xreadlink.c: Include <unistd.h> unconditionally.
25012         * modules/xreadlink (Depends-on): Add unistd.
25013         * modules/xreadlink-with-size (Depends-on): Likewise.
25014
25015 2007-03-03  Bruno Haible  <bruno@clisp.org>
25016
25017         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
25018         extracted from gt_FUNC_SETENV.
25019         (gt_FUNC_SETENV): Remove macro.
25020         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
25021         remove gt_FUNC_SETENV.
25022
25023 2007-03-03  Bruno Haible  <bruno@clisp.org>
25024
25025         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
25026         ENABLE_RELOCATABLE here.
25027         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
25028
25029 2007-03-03  Bruno Haible  <bruno@clisp.org>
25030
25031         * modules/rbtreehash-list-tests (Depends-on): Add progname.
25032         * tests/test-rbtreehash_list.c: Include progname.h.
25033         (main): Call set_program_name.
25034
25035         * modules/rbtree-oset-tests (Depends-on): Add progname.
25036         * tests/test-rbtree_oset.c: Include progname.h.
25037         (main): Call set_program_name.
25038
25039         * modules/rbtree-list-tests (Depends-on): Add progname.
25040         * tests/test-rbtree_list.c: Include progname.h.
25041         (main): Call set_program_name.
25042
25043         * modules/linked-list-tests (Depends-on): Add progname.
25044         * tests/test-linked_list.c: Include progname.h.
25045         (main): Call set_program_name.
25046
25047 2007-03-03  Bruno Haible  <bruno@clisp.org>
25048
25049         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
25050         All uses of __restrict changed to _Restrict_.
25051         * lib/glob_.h (__restrict): Remove macro.
25052
25053 2007-03-02  Bruno Haible  <bruno@clisp.org>
25054
25055         * modules/gettext (configure.ac): Require gettext infrastructure
25056         from version 0.16.1.
25057
25058 2007-03-02  Bruno Haible  <bruno@clisp.org>
25059
25060         * modules/linkedhash-list-tests (Depends-on): Add progname.
25061         * tests/test-linkedhash_list.c: Include progname.h.
25062         (main): Call set_program_name.
25063
25064         * modules/carray-list-tests (Depends-on): Add progname.
25065         * tests/test-carray_list.c: Include progname.h.
25066         (main): Call set_program_name.
25067
25068         * modules/avltreehash-list-tests (Depends-on): Add progname.
25069         * tests/test-avltreehash_list.c: Include progname.h.
25070         (main): Call set_program_name.
25071
25072         * modules/avltree-oset-tests (Depends-on): Add progname.
25073         * tests/test-avltree_oset.c: Include progname.h.
25074         (main): Call set_program_name.
25075
25076         * modules/avltree-list-tests (Depends-on): Add progname.
25077         * tests/test-avltree_list.c: Include progname.h.
25078         (main): Call set_program_name.
25079
25080         * modules/array-oset-tests (Depends-on): Add progname.
25081         * tests/test-array_oset.c: Include progname.h.
25082         (main): Call set_program_name.
25083
25084         * modules/array-list-tests (Depends-on): Add progname.
25085         * tests/test-array_list.c: Include progname.h.
25086         (main): Call set_program_name.
25087
25088         * modules/argp-tests (Depends-on): Add progname.
25089         * tests/test-argp.c: Include argp.h first. Include progname.h.
25090         (main): Call set_program_name.
25091
25092 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
25093
25094         * doc/gnulib-tool.texi (Initial import): Reword description of
25095         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
25096         limited effect even if defined after the first system include.
25097
25098 2007-03-01  Bruno Haible  <bruno@clisp.org>
25099
25100         * build-aux/config.libpath: Update to libtool-1.5.22.
25101         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
25102
25103 2007-03-01  Bruno Haible  <bruno@clisp.org>
25104
25105         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
25106         foo_CFLAGS.
25107         Reported by Ralf Wildenhues.
25108
25109 2007-03-01  Bruno Haible  <bruno@clisp.org>
25110
25111         * build-aux/install-reloc: Remove object files left over by some
25112         compilers.
25113         Reported by Ralf Wildenhues.
25114
25115 2007-03-01  Bruno Haible  <bruno@clisp.org>
25116
25117         * build-aux/install-reloc: Break long lines.
25118
25119 2007-03-01  Bruno Haible  <bruno@clisp.org>
25120
25121         * doc/relocatable.texi: Document that it may not work on OpenBSD.
25122         Reported by Ralf Wildenhues.
25123
25124 2007-03-01  Bruno Haible  <bruno@clisp.org>
25125
25126         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
25127         include ordering constraints.
25128
25129 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
25130
25131         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
25132         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
25133         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
25134         as another example.
25135         * lib/time_.h: Fix misspelling.
25136         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
25137         Require gl_HEADER_TIME_H_DEFAULTS.
25138         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
25139         * m4/time_r.m4 (gl_TIME_R): Likewise.
25140         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
25141
25142 2007-03-01  Bruno Haible  <bruno@clisp.org>
25143
25144         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
25145         * m4/utimens.m4 (gl_UTIMENS): Likewise.
25146
25147 2007-03-01  Jim Meyering  <jim@meyering.net>
25148
25149         * modules/xreadlink (Maintainer): Add my name.
25150         * modules/xreadlink-with-size (Depends-on): Alphabetize.
25151
25152 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
25153             Bruno Haible  <bruno@clisp.org>
25154
25155         * build-aux/install-reloc: Compile also c-ctype.c.
25156         * build-aux/relocatable.sh.in: New file.
25157         * doc/relocatable.texi: New file.
25158         * doc/relocatable-maint.texi: New file.
25159         * doc/gnulib.texi: Include relocatable-maint.texi.
25160         * lib/progreloc.c: Include unistd.h unconditionally.
25161         * lib/relocwrapper.c: Include unistd.h unconditionally.
25162         Include c-ctype.h.
25163         (add_dotbin): Use c_tolower.
25164         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
25165         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
25166         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
25167         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
25168         to m4/relocatable-lib.m4.
25169         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
25170         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
25171         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
25172         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
25173         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
25174         * modules/relocatable: New file.
25175         * modules/relocatable-lib: New file.
25176         * modules/relocatable-script: New file.
25177
25178 2007-02-28  Bruno Haible  <bruno@clisp.org>
25179
25180         Import --enable-relocatable infrastructure.
25181         * build-aux/config.libpath: New file, from GNU gettext.
25182         * build-aux/install-reloc: New file, from GNU gettext.
25183         * build-aux/reloc-ldflags: New file, from GNU gettext.
25184         * lib/relocatable.h: New file, from GNU gettext.
25185         * lib/relocatable.c: New file, from GNU gettext.
25186         * lib/relocwrapper.c: New file, from GNU gettext.
25187         * m4/relocatable.m4: New file, from GNU gettext.
25188
25189 2007-02-28  Bruno Haible  <bruno@clisp.org>
25190
25191         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
25192
25193         * modules/xreadlink: New file, from GNU gettext with modifications.
25194         * lib/xreadlink.c: New file, from GNU gettext.
25195         * lib/xreadlink.h: Add comments.
25196         (xreadlink): New declaration.
25197
25198         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
25199         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
25200         lib/xreadlink-with-size.c.
25201         (configure.ac): Remove gl_XREADLINK invocation.
25202         (Makefile.am): Augment lib_SOURCES.
25203         * m4/xreadlink.m4: Remove file.
25204         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
25205         (xreadlink_with_size): Renamed from xreadink.
25206         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
25207         * modules/canonicalize (Depends-on): Replace xreadlink with
25208         xreadlink-with-size.
25209         * lib/canonicalize.c (canonicalize_filename_mode): Update.
25210
25211 2007-02-25  Jim Meyering  <jim@meyering.net>
25212
25213         * build-aux/announce-gen: When complaining about excess arguments,
25214         list them.
25215
25216 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
25217
25218         * README: Document signed integer overflow situation more
25219         accurately.
25220
25221 2007-02-25  Bruno Haible  <bruno@clisp.org>
25222
25223         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
25224         'a' or 'A' conversion.
25225
25226 2007-02-25  Bruno Haible  <bruno@clisp.org>
25227
25228         * modules/filename: Renamed from modules/pathname.
25229         (Files): Replace lib/pathname.h with lib/filename.h. Replace
25230         lib/concatpath.c with lib/concat-filename.c.
25231         (Makefile.am): Update.
25232         (Include): Replace pathname.h with filename.h.
25233         * lib/filename.h: Renamed from lib/pathname.h.
25234         (concatenated_filename): Renamed from concatenated_pathname.
25235         * lib/concat-filename.c: Renamed from lib/concatpath.c.
25236         (concatenated_filename): Renamed from concatenated_pathname.
25237         * lib/findprog.c: Include filename.h instead of pathname.h.
25238         (find_in_path): Update.
25239         * lib/javacomp.c: Include filename.h instead of pathname.h.
25240         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
25241         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
25242         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
25243         is_oldgcj_14_13_usable, is_javac_usable): Update.
25244         * lib/javaexec.c: Include filename.h instead of pathname.h.
25245         (execute_java_class): Update.
25246         * modules/findprog: Update.
25247         * modules/javacomp: Update.
25248         * modules/javaexec: Update.
25249         * MODULES.html.sh (File system functions): Add 'filename', remove
25250         'pathname'.
25251
25252 2007-02-25  Bruno Haible  <bruno@clisp.org>
25253
25254         * modules/printf-frexpl-tests: New file.
25255         * tests/test-printf-frexpl.c: New file.
25256
25257         * modules/printf-frexpl: New file.
25258         * lib/printf-frexpl.h: New file.
25259         * lib/printf-frexpl.c: New file.
25260         * m4/printf-frexpl.m4: New file.
25261
25262 2007-02-25  Bruno Haible  <bruno@clisp.org>
25263
25264         * modules/printf-frexp-tests: New file.
25265         * tests/test-printf-frexp.c: New file.
25266
25267         * modules/printf-frexp: New file.
25268         * lib/printf-frexp.h: New file.
25269         * lib/printf-frexp.c: New file.
25270         * m4/printf-frexp.m4: New file.
25271
25272 2007-02-25  Bruno Haible  <bruno@clisp.org>
25273
25274         Assume automake >= 1.10 for the tests.
25275         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
25276         * modules/arctwo-tests: Likewise.
25277         * modules/argp-tests: Likewise.
25278         * modules/avltree-list-tests: Likewise.
25279         * modules/avltree-oset-tests: Likewise.
25280         * modules/avltreehash-list-tests: Likewise.
25281         * modules/carray-list-tests: Likewise.
25282         * modules/crc-tests: Likewise.
25283         * modules/des-tests: Likewise.
25284         * modules/gc-arcfour-tests: Likewise.
25285         * modules/gc-arctwo-tests: Likewise.
25286         * modules/gc-des-tests: Likewise.
25287         * modules/gc-hmac-md5-tests: Likewise.
25288         * modules/gc-hmac-sha1-tests: Likewise.
25289         * modules/gc-md2-tests: Likewise.
25290         * modules/gc-md4-tests: Likewise.
25291         * modules/gc-md5-tests: Likewise.
25292         * modules/gc-pbkdf2-sha1-tests: Likewise.
25293         * modules/gc-rijndael-tests: Likewise.
25294         * modules/gc-sha1-tests: Likewise.
25295         * modules/gc-tests: Likewise.
25296         * modules/getaddrinfo-tests: Likewise.
25297         * modules/hmac-md5-tests: Likewise.
25298         * modules/hmac-sha1-tests: Likewise.
25299         * modules/linked-list-tests: Likewise.
25300         * modules/linkedhash-list-tests: Likewise.
25301         * modules/lock-tests: Likewise.
25302         * modules/md2-tests: Likewise.
25303         * modules/md4-tests: Likewise.
25304         * modules/md5-tests: Likewise.
25305         * modules/rbtree-list-tests: Likewise.
25306         * modules/rbtree-oset-tests: Likewise.
25307         * modules/rbtreehash-list-tests: Likewise.
25308         * modules/read-file-tests: Likewise.
25309         * modules/rijndael-tests: Likewise.
25310         * modules/stdint-tests: Likewise.
25311         * modules/tls-tests: Likewise.
25312
25313 2007-02-24  Bruno Haible  <bruno@clisp.org>
25314
25315         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
25316         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
25317         function; instead check whether isnan with a double argument links.
25318         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
25319         function; instead check whether isnan with a 'long double' argument
25320         links.
25321         Reported by Eric Blake <ebb9@byu.net>.
25322
25323 2007-02-24  Bruno Haible  <bruno@clisp.org>
25324
25325         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
25326         defined.
25327         * lib/isnanl.c: Remove all code. Just include isnan.c.
25328         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
25329
25330 2007-02-25  Jim Meyering  <jim@meyering.net>
25331
25332         Avoid conflicting types for 'unsetenv' on FreeBSD.
25333         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
25334         conflicting with FreeBSD's (5.0 and 6.1) function declaration
25335         in stdlib.h.
25336
25337 2007-02-24  Bruno Haible  <bruno@clisp.org>
25338
25339         * modules/isnanl-nolibm-tests: New file.
25340         * tests/test-isnanl.c: New file.
25341
25342         * modules/isnanl-nolibm: New file.
25343         * lib/isnanl.h: New file.
25344         * lib/isnanl.c: New file.
25345         * m4/isnanl.m4: New file.
25346
25347 2007-02-24  Bruno Haible  <bruno@clisp.org>
25348
25349         * modules/isnan-nolibm-tests: New file.
25350         * tests/test-isnan.c: New file.
25351
25352         * modules/isnan-nolibm: New file.
25353         * lib/isnan.h: New file.
25354         * lib/isnan.c: New file.
25355         * m4/isnan.m4: New file.
25356
25357 2007-02-24  Bruno Haible  <bruno@clisp.org>
25358
25359         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
25360         assume that an exponent fits in 20 bits.
25361
25362 2007-02-24  Jim Meyering  <jim@meyering.net>
25363
25364         * m4/regex.m4: Update the description of the configure-time option,
25365         --without-included-regex, to state accurately what the defaults are,
25366         and perhaps to give people an idea why using this option is risky.
25367
25368 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
25369
25370         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
25371         loops on small arguments.  This attempts to avoid the problem
25372         Bruno Haible reported for AIX 4.3.2 in
25373         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
25374
25375 2007-02-23  Bruno Haible  <bruno@clisp.org>
25376
25377         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
25378         Needed for help2man.
25379
25380 2007-02-23  Karl Berry  <karl@gnu.org>
25381
25382         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
25383         exists, foo.h should be cvs-ignored, not committed.
25384
25385 2007-02-23  Eric Blake  <ebb9@byu.net>
25386
25387         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
25388         * lib/stat-time.h (includes): Likewise.
25389         * lib/utimecmp.c (includes): Likewise.
25390         * lib/utimens.h (includes): Likewise.
25391         * lib/getdate.y (includes): Also include "timespec.h" for use
25392         internal to the module.
25393         * modules/utimens (Depends-on): Revert yesterday's patch.
25394         * modules/nanosleep (Depends-on): Add missing dependency.
25395
25396 2007-02-22  Bruno Haible  <bruno@clisp.org>
25397
25398         * lib/glob.c: Don't include getlogin_r.h.
25399
25400 2007-02-22  Jim Meyering  <jim@meyering.net>
25401
25402         * modules/utimens (Depends-on): Add timespec, required for
25403         utimens.h's inclusion of timespec.h.
25404
25405 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
25406
25407         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
25408         long unreadable paths in GNU/Linux.  Problem reported by Andreas
25409         Schwab in
25410         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
25411         I'll try to think of a better way to fix the Solaris problem.
25412
25413         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
25414         like glibc; on Solaris 10, it fails with errno == EINVAL.
25415         POSIX says the behavior is unspecified if the first argument is NULL,
25416         so play it safe and never pass NULL to the system getcwd.
25417
25418 2007-02-21  Jim Meyering  <jim@meyering.net>
25419
25420         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
25421         of gettimeofday.  It would conflict with the one now always
25422         provided via sys_time_.h.  Reported by Matthew Woehlke, as
25423         an IRIX 6.5 build failure.
25424
25425 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
25426
25427         Minor fixups to port to Solaris 10 with Sun C 5.8.
25428         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
25429         * modules/getcwd (Depends-on): Add dirfd.
25430         * lib/putenv.c (putenv): #undef it.
25431         (rpl_putenv): New decl.
25432         (malloc, free): Include <stdlib.h> rather than prototyping separately.
25433
25434 2007-02-20  Bruno Haible  <bruno@clisp.org>
25435
25436         * modules/stdio-tests: New file.
25437         * tests/test-stdio.c: New file.
25438
25439         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
25440         (Depends-on): Add stdio.
25441         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
25442         (Include): Use <stdio.h> instead of vsnprintf.h.
25443         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
25444         HAVE_DECL_VSNPRINTF.
25445         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
25446
25447         * modules/snprintf (Files): Remove lib/snprintf.h.
25448         (Depends-on): Add stdio.
25449         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
25450         (Include): Use <stdio.h> instead of snprintf.h.
25451         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
25452         HAVE_DECL_SNPRINTF.
25453         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
25454         * lib/getaddrinfo.c: Likewise.
25455
25456         * modules/stdio: New file.
25457         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
25458         * lib/snprintf.h: Remove file.
25459         * lib/vsnprintf.h: Remove file.
25460         * lib/.cppi-disable: Remove snprintf.h.
25461         * m4/stdio_h.m4: New file.
25462         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
25463
25464 2007-02-20  Jim Meyering  <jim@meyering.net>
25465
25466         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
25467         used by e.g., mingw.  From Bruno Haible.
25468
25469 2007-02-19  Bruno Haible  <bruno@clisp.org>
25470
25471         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
25472         warnings.
25473         Reported by Ben Pfaff <blp@cs.stanford.edu>.
25474
25475 2007-02-19  Bruno Haible  <bruno@clisp.org>
25476
25477         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
25478         from mingw users.
25479
25480 2007-02-19  Bruno Haible  <bruno@clisp.org>
25481
25482         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
25483         warnings.
25484         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
25485
25486 2007-02-19  Jim Meyering  <jim@meyering.net>
25487
25488         Don't use FD after a successful "fdopendir (fd)".
25489         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
25490         Reset it by calling dirfd on the just-obtained DIR*.
25491
25492         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
25493         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
25494
25495 2007-02-18  Bruno Haible  <bruno@clisp.org>
25496
25497         * lib/readlink.c: Include <unistd.h>.
25498         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
25499         HAVE_READLINK.
25500         * modules/readlink (Depends-on): Add unistd.
25501         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
25502         (Include): Add <unistd.h>.
25503
25504         * lib/getlogin_r.h: Remove file.
25505         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
25506         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
25507         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
25508         HAVE_DECL_GETLOGIN_R.
25509         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
25510         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
25511         (Include): Use <unistd.h> instead of getlogin_r.h.
25512
25513         * lib/getcwd.h: Remove file.
25514         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
25515         * lib/xgetcwd.c: Likewise.
25516         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
25517         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
25518         * modules/getcwd (Files): Remove lib/getcwd.h.
25519         (Depends-on): Add unistd.
25520         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
25521         (Include): Use <unistd.h> instad of getcwd.h.
25522
25523         * lib/ftruncate.c: Include <unistd.h> first.
25524         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
25525         Set HAVE_FTRUNCATE.
25526         * modules/ftruncate (Depends-on): Add unistd.
25527         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
25528
25529         * lib/fchdir.c: Include <unistd.h> first.
25530         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
25531         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
25532         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
25533         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
25534         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
25535
25536         * lib/dup2.c: Include <unistd.h> first.
25537         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
25538         HAVE_DUP2.
25539         * modules/dup2 (Depends-on): Add unistd.
25540         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
25541
25542         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
25543         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
25544         REPLACE_CHOWN. Don't define chown as a macro here.
25545         * modules/chown (Depends-on): Add unistd.
25546         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
25547
25548         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
25549         Add definition for GL_LINK_WARNING.
25550         (chown, dup2): New declarations.
25551         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
25552         link warning.
25553         (ftruncate): New declaration.
25554         (getcwd): New declaration, taken from old getcwd.h.
25555         (getlogin_r): New declaration, taken from old getlogin_r.h.
25556         (readlink): New declaration.
25557         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
25558         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
25559         (gl_PREREQ_UNISTD): Remove macro.
25560         (gl_UNISTD_MODULE_INDICATOR): New macro.
25561         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
25562         many new variables. Don't set UNISTD_H.
25563         * modules/unistd (Description): Change.
25564         (Depends-on): Add link-warning.
25565         (configure.ac): Update.
25566         (Makefile.am): Create unistd.h always. Substitute many new variables
25567         into it.
25568
25569 2007-02-18  Bruno Haible  <bruno@clisp.org>
25570
25571         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
25572         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
25573         HAVE_GETSUBOPT.
25574         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
25575         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
25576         * lib/getsubopt.h: Remove file.
25577         * modules/getsubopt (Files): Remove lib/getsubopt.h.
25578         (Depends-on): Add stdlib.
25579         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
25580         (Includes): Use <stdlib.h> instead of getsubopt.h.
25581         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
25582         Set HAVE_GETSUBOPT.
25583         * lib/getsubopt.c: Don't include getsubopt.h.
25584
25585 2007-02-18  Bruno Haible  <bruno@clisp.org>
25586
25587         * modules/fchdir (Depends-on): Add dup2.
25588
25589 2007-02-18  Bruno Haible  <bruno@clisp.org>
25590
25591         * lib/stdlib_.h: Handle glibc's special invocation convention
25592         specially.
25593
25594 2007-02-18  Bruno Haible  <bruno@clisp.org>
25595
25596         * modules/stdlib-tests: New file.
25597         * tests/test-stdlib.c: New file.
25598
25599         * modules/mkstemp (Files): Remove lib/mkstemp.h.
25600         (Depends-on): Add stdlib.
25601         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
25602         (Includes): Use <stdlib.h> instead of mkstemp.h.
25603         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
25604         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
25605         * lib/mkstemp.c: Don't include mkstemp.h.
25606         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
25607         * lib/stdlib--.h: Don't include mkstemp.h.
25608
25609         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
25610         (Depends-on): Add stdlib.
25611         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
25612         (Includes): Use <stdlib.h> instead of mkdtemp.h.
25613         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
25614         HAVE_MKDTEMP.
25615         * lib/mkdtemp.c: Don't include mkdtemp.h.
25616         * lib/clean-temp.c: Don't include mkdtemp.h.
25617
25618         * modules/exit (Files): Remove lib/exit.h.
25619         (Depends-on): Add stdlib.
25620         (Makefile.am): Remove lib_SOURCES.
25621         (Include): Use <stdlib.h> instead of exit.h.
25622         * lib/argmatch.c: Don't include exit.h.
25623         * lib/execute.c: Likewise.
25624         * lib/pagealign_alloc.c: Likewise.
25625         * lib/pipe.c: Likewise.
25626         * lib/wait-process.c: Likewise.
25627         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
25628         * lib/exitfail.c: Likewise.
25629         * lib/savewd.c: Likewise.
25630         * lib/xsetenv.c: Likewise.
25631
25632         * modules/stdlib: New file.
25633         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
25634         and extra comments about mkstemp().
25635         * lib/exit.h: Remove file.
25636         * lib/mkdtemp.h: Remove file.
25637         * lib/mkstemp.h: Remove file.
25638         * m4/stdlib_h.m4: New file.
25639         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
25640
25641 2007-02-18  Bruno Haible  <bruno@clisp.org>
25642
25643         * modules/math-tests: New file.
25644         * tests/test-math.c: New file.
25645
25646         * modules/math: New file.
25647         * modules/mathl (Files): Remove lib/mathl.h.
25648         (Depends-on): Add math.
25649         (Makefile.am): Don't mention mathl.h.
25650         (Include): Use <math.h> instead of mathl.h.
25651         * lib/math_.h: New file.
25652         * lib/mathl.h: Remove file.
25653         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
25654         mathl.h.
25655         * lib/asinl.c: Likewise.
25656         * lib/atanl.c: Likewise.
25657         * lib/ceill.c: Likewise.
25658         * lib/cosl.c: Likewise.
25659         * lib/expl.c: Likewise.
25660         * lib/floorl.c: Likewise.
25661         * lib/frexpl.c: Likewise.
25662         * lib/ldexpl.c: Likewise.
25663         * lib/logl.c: Likewise.
25664         * lib/sincosl.c: Likewise.
25665         * lib/sinl.c: Likewise.
25666         * lib/sqrtl.c: Likewise.
25667         * lib/tanl.c: Likewise.
25668         * lib/trigl.c: Likewise.
25669         * m4/math_h.m4: New file.
25670         * MODULES.html.sh (Mathematics): Add math.
25671
25672 2007-02-17  Bruno Haible  <bruno@clisp.org>
25673
25674         * modules/wctype-tests: New file.
25675         * tests/test-wctype.c: New file.
25676
25677         * modules/wchar-tests: New file.
25678         * tests/test-wchar.c: New file.
25679
25680         * modules/unistd-tests: New file.
25681         * tests/test-unistd.c: New file.
25682
25683         * modules/time-tests: New file.
25684         * tests/test-time.c: New file.
25685
25686         * modules/sysexits-tests: New file.
25687         * tests/test-sysexits.c: New file.
25688
25689         * modules/sys_time-tests: New file.
25690         * tests/test-sys_time.c: New file.
25691
25692         * modules/sys_stat-tests: New file.
25693         * tests/test-sys_stat.c: New file.
25694
25695         * modules/sys_socket-tests: New file.
25696         * tests/test-sys_socket.c: New file.
25697
25698         * modules/sys_select-tests: New file.
25699         * tests/test-sys_select.c: New file.
25700
25701         * modules/string-tests: New file.
25702         * tests/test-string.c: New file.
25703
25704         * modules/stdbool-tests: New file.
25705         * tests/test-stdbool.c: New file.
25706
25707         * modules/netinet_in-tests: New file.
25708         * tests/test-netinet_in.c: New file.
25709
25710         * modules/inttypes-tests: New file.
25711         * tests/test-inttypes.c: New file.
25712
25713         * modules/fcntl-tests: New file.
25714         * tests/test-fcntl.c: New file.
25715
25716         * modules/byteswap-tests: New file.
25717         * tests/test-byteswap.c: New file.
25718
25719         * modules/arpa_inet-tests: New file.
25720         * tests/test-arpa_inet.c: New file.
25721
25722 2007-02-17  Bruno Haible  <bruno@clisp.org>
25723
25724         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
25725         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
25726         if the corresponding module is not enabled. Emit link warnings if
25727         the function is used nevertheless.
25728         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
25729         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
25730         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
25731         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
25732         * modules/inttypes (Depends-on): Add link-warning.
25733         (Makefile.am): Copy the contents of build-aux/link-warning.h into
25734         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
25735         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
25736         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
25737         * modules/imaxdiv (configure.ac): Likewise.
25738         * modules/strtoimax (configure.ac): Likewise.
25739         * modules/strtoumax (configure.ac): Likewise.
25740
25741 2007-02-17  Bruno Haible  <bruno@clisp.org>
25742
25743         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
25744         gl_STRING_MODULE_INDICATOR_DEFAULTS.
25745         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
25746         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
25747
25748 2007-02-17  Bruno Haible  <bruno@clisp.org>
25749
25750         * modules/link-warning: New file.
25751         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
25752         * lib/string_.h (GL_LINK_WARNING): Remove definition.
25753         * modules/string (Depends-on): Add link-warning.
25754         (Makefile.am): Copy the contents of build-aux/link-warning.h into
25755         string.h.
25756         * MODULES.html.sh (Support for building libraries and executables): Add
25757         link-warning.
25758
25759 2007-02-17  Bruno Haible  <bruno@clisp.org>
25760
25761         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
25762         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
25763         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
25764         long lines.
25765
25766 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
25767             Bruno Haible  <bruno@clisp.org>
25768
25769         * modules/tmpfile: New file.
25770         * lib/tmpfile.c: New file.
25771         * m4/tmpfile.m4: New file.
25772         * MODULES.html.sh (func_all_modules): New section "Input/output".
25773
25774 2007-02-15  Bruno Haible  <bruno@clisp.org>
25775
25776         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
25777         (supports_delete_on_close): New function.
25778         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
25779
25780 2007-02-14  Bruno Haible  <bruno@clisp.org>
25781
25782         * modules/mbspcasecmp-tests: New file.
25783         * tests/test-mbspcasecmp.sh: New file.
25784         * tests/test-mbspcasecmp.c: New file.
25785
25786         New module mbspcasecmp.
25787         * modules/mbspcasecmp: New file.
25788         * lib/mbspcasecmp.c: New file.
25789         * lib/string_.h (strncasecmp): Change warning message.
25790         (mbspcasecmp): New declaration.
25791         * m4/mbspcasecmp.m4: New file.
25792         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
25793         GNULIB_MBSPCASECMP.
25794         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
25795         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
25796
25797 2007-02-14  Bruno Haible  <bruno@clisp.org>
25798
25799         * modules/mbsncasecmp-tests: New file.
25800         * tests/test-mbsncasecmp.sh: New file.
25801         * tests/test-mbsncasecmp.c: New file.
25802
25803         New module mbsncasecmp.
25804         * modules/mbsncasecmp: New file.
25805         * lib/mbsncasecmp.c: New file.
25806         * lib/string_.h (mbsncasecmp): New declaration.
25807         * m4/mbsncasecmp.m4: New file.
25808         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
25809         GNULIB_MBSNCASECMP.
25810         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
25811         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
25812
25813 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
25814
25815         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
25816         Verify that it doesn't overlap with our flags.
25817         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
25818         do not have the desired effect in multibyte locales; instead, use
25819         mbscasecmp.
25820         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
25821         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
25822         we don't require GNU fnmatch ourselves (if our users require it, they
25823         should do so explicitly).
25824
25825         Fix regex code so it doesn't rely on strcasecmp.
25826         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
25827         Otherwise, include gnulib's langinfo.h.
25828         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
25829         undesirable behavior in non-C locales.  Instead, rely on localecharset.
25830         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
25831         * modules/regex (FILES): Remove m4/codeset.m4.
25832         (Depends-on): Add localcharset.  Remove strcase.
25833
25834 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
25835
25836         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
25837         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
25838
25839 2007-02-13  Bruno Haible  <bruno@clisp.org>
25840
25841         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
25842         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25843
25844 2007-02-12  Bruno Haible  <bruno@clisp.org>
25845
25846         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
25847         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
25848         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
25849         time warning rather than a link error.
25850
25851 2007-02-12  Bruno Haible  <bruno@clisp.org>
25852
25853         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
25854         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
25855         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25856
25857 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
25858
25859         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
25860         args, not 2.
25861
25862 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
25863
25864         New module 'time', so that apps can include <time.h> as per
25865         POSIX and GNU instead of separate include files like time_r.h
25866         and timegm.h.  This implementation tries out a simpler approach
25867         for replacing decls in standard include files (as compared to
25868         the string module), somewhat as an experiment.
25869
25870         * config/srclist.txt: Comment out mktime.c for now.
25871         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
25872         since it doesn't apply any more.  Use generic wording instead.
25873         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
25874         'time'.
25875         * lib/time_.h, m4/time_h.m4, modules/time: New files.
25876         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
25877         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
25878         Don't include <sys/types.h>; no longer needed since we assume C89.
25879         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
25880         * lib/strftime.c: Likewise.
25881         * lib/time_r.c: Likewise.
25882         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
25883         * lib/nanosleep.c: Include <time.h> first, to check interface.
25884         * lib/strptime.c: Likewise.
25885         * lib/time_r.c: Likewise.
25886         * lib/timegm.c: Likewise.
25887         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
25888         needed.
25889         * lib/timegm.c: Don't include timegm.h; no longer needed.
25890         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
25891         time.h now handles any problems in that area.
25892         (struct timespec, nanosleep): Remove; time.h now arranges for these.
25893         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
25894         that time.h defines struct timespec.
25895         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
25896         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
25897         handles that.
25898         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
25899         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
25900         needed.  Set REPLACE_LOCALTIME.
25901         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
25902         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
25903         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
25904         nanosleep; time_h.m4 now does that.  Don't require
25905         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
25906         module handles this now.
25907         * modules/getdate (Depends-on): Remove timespec.  Add time.
25908         * modules/nanosleep (Depends-on): Likewise.
25909         * modules/stat-time (Depends-on): Likewise.
25910         * modules/nanosleep (Include): Include time.h, not timespec.h.
25911         * modules/strptime (Files): Remove lib/strptime.h.
25912         (Depends-on): Add extensions, time.
25913         (Include): Include time.h, not strptime.h.
25914         * modules/time_r (Files): Remove lib/time_r.h.
25915         (Depends-on): Add time.
25916         (Include): Include time.h, not time_r.h.
25917         * modules/timegm: Likewise.
25918         * modules/timespec (Description): Now does timespec-related decls
25919         of our own, instead of struct timespec itself.
25920         (Depends-on): Add time; remove extensions.
25921         (Maintainer): Add self.
25922         * modules/utimecmp (Depends-on): Add time; remove timespec.
25923         * modules/utimens (Depends-on): Likewise.
25924         * modules/xnanosleep (Depends-on): Likewise.
25925
25926 2007-02-11  Bruno Haible  <bruno@clisp.org>
25927
25928         * lib/c-strstr.c: Include allocsa.h.
25929         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
25930         * lib/c-strcasestr.c: Include allocsa.h.
25931         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
25932         * lib/strcasestr.c: Include allocsa.h.
25933         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
25934         * lib/mbsstr.c: Include allocsa.h.
25935         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
25936         allocsa/freesa instead of malloc/free.
25937         * lib/mbscasestr.c: Include allocsa.h.
25938         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
25939         allocsa/freesa instead of malloc/free.
25940         * modules/c-strstr (Depends-on): Add allocsa.
25941         * modules/c-strcasestr (Depends-on): Likewise.
25942         * modules/strcasestr (Depends-on): Likewise.
25943         * modules/mbsstr (Depends-on): Likewise.
25944         * modules/mbscasestr (Depends-on): Likewise.
25945
25946 2007-02-11  Bruno Haible  <bruno@clisp.org>
25947
25948         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
25949
25950         * modules/mbsspn-tests: New file.
25951         * tests/test-mbsspn.sh: New file.
25952         * tests/test-mbsspn.c: New file.
25953
25954 2007-02-11  Bruno Haible  <bruno@clisp.org>
25955
25956         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
25957
25958         * modules/mbspbrk-tests: New file.
25959         * tests/test-mbspbrk.sh: New file.
25960         * tests/test-mbspbrk.c: New file.
25961
25962 2007-02-11  Bruno Haible  <bruno@clisp.org>
25963
25964         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
25965         unneeded cast.
25966
25967         * modules/mbscspn-tests: New file.
25968         * tests/test-mbscspn.sh: New file.
25969         * tests/test-mbscspn.c: New file.
25970
25971 2007-02-11  Bruno Haible  <bruno@clisp.org>
25972
25973         * modules/mbscasecmp-tests: New file.
25974         * tests/test-mbscasecmp.sh: New file.
25975         * tests/test-mbscasecmp.c: New file.
25976
25977 2007-02-11  Bruno Haible  <bruno@clisp.org>
25978
25979         Ensure O(n) worst-case complexity of mbscasestr.
25980         * lib/mbscasestr.c: Include stdbool.h.
25981         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
25982         functions.
25983         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
25984         the bookkeeping indicates that it's worth it.
25985         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
25986
25987         * modules/mbscasestr-tests: New file.
25988         * tests/test-mbscasestr1.c: New file.
25989         * tests/test-mbscasestr2.sh: New file.
25990         * tests/test-mbscasestr2.c: New file.
25991         * tests/test-mbscasestr3.sh: New file.
25992         * tests/test-mbscasestr3.c: New file.
25993         * tests/test-mbscasestr4.sh: New file.
25994         * tests/test-mbscasestr4.c: New file.
25995         * m4/locale-tr.m4: New file.
25996
25997 2007-02-11  Bruno Haible  <bruno@clisp.org>
25998
25999         Ensure O(n) worst-case complexity of mbsstr.
26000         * lib/mbsstr.c: Include stdbool.h.
26001         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
26002         functions.
26003         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
26004         bookkeeping indicates that it's worth it.
26005         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
26006
26007         * modules/mbsstr-tests: New file.
26008         * tests/test-mbsstr1.c: New file.
26009         * tests/test-mbsstr2.sh: New file.
26010         * tests/test-mbsstr2.c: New file.
26011         * tests/test-mbsstr3.sh: New file.
26012         * tests/test-mbsstr3.c: New file.
26013         * m4/locale-fr.m4: New file.
26014
26015 2007-02-11  Bruno Haible  <bruno@clisp.org>
26016
26017         * lib/mbsrchr.c (mbsrchr): Fix bug.
26018
26019         * modules/mbsrchr-tests: New file.
26020         * tests/test-mbsrchr.sh: New file.
26021         * tests/test-mbsrchr.c: New file.
26022
26023 2007-02-11  Bruno Haible  <bruno@clisp.org>
26024
26025         * lib/mbschr.c (mbschr): Fix bug.
26026
26027         * modules/mbschr-tests: New file.
26028         * tests/test-mbschr.sh: New file.
26029         * tests/test-mbschr.c: New file.
26030         * m4/locale-zh.m4: New file.
26031
26032 2007-02-11  Bruno Haible  <bruno@clisp.org>
26033
26034         Support for copying multibyte string iterators.
26035         * lib/mbiter.h: Include <string.h>.
26036         (mbiter_multi_copy): New function.
26037         (mbi_copy): New macro.
26038         * lib/mbuiter.h: Include <string.h>.
26039         (mbuiter_multi_copy): New function.
26040         (mbui_copy): New macro.
26041
26042 2007-02-11  Bruno Haible  <bruno@clisp.org>
26043
26044         New module mbslen.
26045         * modules/mbslen: New file.
26046         * lib/mbslen.c: New file.
26047         * lib/string_.h (mbslen): New declaration.
26048         * m4/mbslen.m4: New file.
26049         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
26050         GNULIB_MBSLEN.
26051         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
26052         * MODULES.html.sh (Internationalization functions): Add mbslen.
26053
26054 2007-02-11  Bruno Haible  <bruno@clisp.org>
26055
26056         Ensure O(n) worst-case complexity of strcasestr substitute.
26057         * lib/strcasestr.c: Include stdbool.h.
26058         (knuth_morris_pratt): New function.
26059         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
26060         bookkeeping indicates that it's worth it.
26061         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
26062
26063         * modules/strcasestr-tests: New file.
26064         * tests/test-strcasestr.c: New file.
26065
26066 2007-02-11  Bruno Haible  <bruno@clisp.org>
26067
26068         Ensure O(n) worst-case complexity of c_strcasestr.
26069         * lib/c-strcasestr.c: Include stdbool.h, string.h.
26070         (knuth_morris_pratt): New function.
26071         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
26072         the bookkeeping indicates that it's worth it.
26073         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
26074
26075         * modules/c-strcasestr-tests: New file.
26076         * tests/test-c-strcasestr.c: New file.
26077
26078 2007-02-11  Bruno Haible  <bruno@clisp.org>
26079
26080         Ensure O(n) worst-case complexity of c_strstr.
26081         * lib/c-strstr.c: Include stdbool.h, string.h.
26082         (knuth_morris_pratt): New function.
26083         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
26084         bookkeeping indicates that it's worth it.
26085         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
26086
26087         * lib/c-strstr.c: Complete rewrite for maintainability.
26088
26089         * modules/c-strstr-tests: New file.
26090         * tests/test-c-strstr.c: New file.
26091
26092 2007-02-11  Bruno Haible  <bruno@clisp.org>
26093
26094         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
26095         5.2.1 and earlier, whereby \055 was treated just like the range
26096         delimiter '-'.
26097         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
26098
26099 2007-02-08  Bruno Haible  <bruno@clisp.org>
26100
26101         * modules/regex (Depends-on): Add stdbool.
26102         Reported by Dalibor Topic <robilad@kaffe.org>.
26103
26104 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
26105
26106         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
26107         Prefer returning from main to exiting from it.
26108         Remove unnecessary parens after sizeof.
26109
26110 2007-02-05  Bruno Haible  <bruno@clisp.org>
26111
26112         New module mbssep.
26113         * modules/mbssep: New file.
26114         * lib/mbssep.c: New file.
26115         * lib/string_.h (strsep): Add a conditional link warning.
26116         (mbssep): New declaration.
26117         * m4/mbssep.m4: New file.
26118         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
26119         GNULIB_MBSSEP.
26120         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
26121         * MODULES.html.sh (Internationalization functions): Add mbssep.
26122
26123 2007-02-05  Bruno Haible  <bruno@clisp.org>
26124
26125         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
26126         Optimize search in case of 1 delimiter.
26127
26128 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
26129
26130         * lib/acl.h: Include sys/types.h before sys/acl.h.
26131
26132 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
26133
26134         Merge upstream fix for glibc bugzilla #3957:
26135
26136         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
26137
26138         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
26139         bit for RE_HAT_LISTS_NOT_NEWLINE.
26140         (build_charclass_op): Remove bogus comment.
26141
26142 2007-02-05  Simon Josefsson  <simon@josefsson.org>
26143
26144         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
26145
26146 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
26147
26148         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
26149         * lib/memmem.c [!defined _LIBC]: Include config.h.
26150
26151 2007-02-04  Bruno Haible  <bruno@clisp.org>
26152
26153         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
26154         warning message.
26155
26156 2007-02-04  Bruno Haible  <bruno@clisp.org>
26157
26158         New module mbstok_r.
26159         * modules/mbstok_r: New file.
26160         * lib/mbstok_r.c: New file.
26161         * lib/string_.h (strtok_r): Change argument names to match the
26162         comments. Add a conditional link warning.
26163         (mbstok_r): New declaration.
26164         * m4/mbstok_r.m4: New file.
26165         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
26166         GNULIB_MBSTOK_R.
26167         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
26168         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
26169
26170 2007-02-04  Bruno Haible  <bruno@clisp.org>
26171
26172         New module mbsspn.
26173         * modules/mbsspn: New file.
26174         * lib/mbsspn.c: New file.
26175         * lib/string_.h (strspn): Add a conditional link warning.
26176         (mbsspn): New declaration.
26177         * m4/mbsspn.m4: New file.
26178         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
26179         GNULIB_MBSSPN.
26180         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
26181         * MODULES.html.sh (Internationalization functions): Add mbsspn.
26182
26183 2007-02-04  Bruno Haible  <bruno@clisp.org>
26184
26185         New module mbspbrk.
26186         * modules/mbspbrk: New file.
26187         * lib/mbspbrk.c: New file.
26188         * lib/string_.h (strpbrk): Add a conditional link warning.
26189         (mbspbrk): New declaration.
26190         * m4/mbspbrk.m4: New file.
26191         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
26192         GNULIB_MBSPBRK.
26193         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
26194         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
26195
26196 2007-02-04  Bruno Haible  <bruno@clisp.org>
26197
26198         New module mbscspn.
26199         * modules/mbscspn: New file.
26200         * lib/mbscspn.c: New file.
26201         * lib/string_.h (strcspn): Add a conditional link warning.
26202         (mbscspn): New declaration.
26203         * m4/mbscspn.m4: New file.
26204         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
26205         GNULIB_MBSCSPN.
26206         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
26207         * MODULES.html.sh (Internationalization functions): Add mbscspn.
26208
26209 2007-02-04  Bruno Haible  <bruno@clisp.org>
26210
26211         New module mbscasestr, reduced goal of strcasestr.
26212         * modules/mbscasestr: New file.
26213         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
26214         (mbscasestr): Renamed from strcasestr.
26215         * lib/strcasestr.c: Don't include mbuiter.h.
26216         (strcasestr): Remove support for multibyte locales.
26217         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
26218         Change the conditional link warning.
26219         (mbscasestr): New declaration.
26220         * m4/mbscasestr.m4: New file.
26221         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
26222         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
26223         REPLACE_STRCASESTR.
26224         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
26225         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
26226         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
26227         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
26228         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
26229         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
26230         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
26231         (Depends-on): Remove mbuiter.
26232         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
26233
26234 2007-02-04  Bruno Haible  <bruno@clisp.org>
26235
26236         Simplify handling of strncasecmp.
26237         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
26238         the conditional link warning.
26239         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
26240         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
26241         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
26242         * modules/strcase (configure.ac): Don't invoke
26243         gl_STRING_MODULE_INDICATOR.
26244         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
26245
26246 2007-02-04  Bruno Haible  <bruno@clisp.org>
26247
26248         New module mbscasecmp, reduced goal of strcasecmp.
26249         * modules/mbscasecmp: New file.
26250         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
26251         (mbscasecmp): Renamed from strcasecmp.
26252         * lib/strcasecmp.c: Don't include mbuiter.h.
26253         (strcasecmp): Remove support for multibyte locales.
26254         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
26255         Change the conditional link warning.
26256         (mbscasecmp): New declaration.
26257         * m4/mbscasecmp.m4: New file.
26258         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
26259         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
26260         REPLACE_STRCASECMP.
26261         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
26262         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
26263         GNULIB_MBSCASECMP.
26264         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
26265         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
26266         * modules/strcase (Files): Remove m4/mbrtowc.m4.
26267         (Depends-on): Remove mbuiter.
26268         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
26269
26270 2007-02-04  Bruno Haible  <bruno@clisp.org>
26271
26272         New module mbsstr. Remove module strstr.
26273         * modules/mbsstr: New file.
26274         * modules/strstr: Remove file.
26275         * lib/mbsstr.c: Renamed from lib/strstr.c.
26276         (mbsstr): Renamed from strstr.
26277         * lib/string_.h (strstr): Remove declaration. Change the conditional
26278         link warning.
26279         (mbsstr): New declaration.
26280         * m4/mbsstr.m4: New file.
26281         * m4/strstr.m4: Remove file.
26282         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
26283         REPLACE_STRSTR.
26284         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
26285         Don't initialize GNULIB_STRSTR.
26286         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
26287         substitute GNULIB_STRSTR and REPLACE_STRSTR.
26288         * MODULES.html.sh (Internationalization functions): Add mbsstr.
26289         (Support for systems lacking ANSI C 89): Remove strstr.
26290
26291 2007-02-04  Bruno Haible  <bruno@clisp.org>
26292
26293         New module mbsrchr.
26294         * modules/mbsrchr: New file.
26295         * lib/mbsrchr.c: New file.
26296         * lib/string_.h (strrchr): Add a conditional link warning.
26297         (mbsrchr): New declaration.
26298         * m4/mbsrchr.m4: New file.
26299         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
26300         GNULIB_MBSRCHR.
26301         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
26302         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
26303
26304 2007-02-04  Bruno Haible  <bruno@clisp.org>
26305
26306         New module mbschr.
26307         * modules/mbschr: New file.
26308         * lib/mbschr.c: New file.
26309         * lib/string_.h (strchr): Add a conditional link warning.
26310         (mbschr): New declaration.
26311         * m4/mbschr.m4: New file.
26312         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
26313         GNULIB_MBSCHR.
26314         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
26315         * MODULES.html.sh (Internationalization functions): Add mbschr.
26316
26317 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
26318
26319         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
26320
26321         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
26322
26323 2007-02-04  Bruno Haible  <bruno@clisp.org>
26324
26325         New module description section 'configure.ac-early'.
26326         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
26327         (func_get_autoconf_early_snippet): New function.
26328         (func_import, func_create_testdir): Use it. Remove special cases for
26329         modules 'extensions' and 'lock'.
26330         * modules/extensions (configure.ac-early): Require
26331         gl_USE_SYSTEM_EXTENSIONS.
26332         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
26333
26334 2007-02-04  Bruno Haible  <bruno@clisp.org>
26335
26336         Make use of gcj-4.3's -fsource and -ftarget option.
26337         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
26338         and if so try the options -fsource and -ftarget.
26339         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
26340         source_version, ftarget_option, target_version arguments.
26341         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
26342         (is_envjavac_oldgcj_14_14_usable): Renamed from
26343         is_envjavac_gcj_14_14_usable.
26344         (is_envjavac_oldgcj_14_13_usable): Renamed from
26345         is_envjavac_gcj_14_13_usable.
26346         (is_gcj_present): Update.
26347         (is_gcj_43, is_gcj43_usable): New functions.
26348         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
26349         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
26350         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
26351         try the options -fsource and -ftarget.
26352
26353 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
26354
26355         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
26356         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
26357         larger value.
26358
26359 2007-02-03  Jim Meyering  <jim@meyering.net>
26360
26361         Give tools a better chance to allocate space for very large buffers.
26362         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
26363
26364         Make pwd and readlink work also when run with an unreadable parent dir
26365         on systems with openat support.
26366         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
26367         provided getcwd function, even when we have openat support.
26368         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
26369
26370 2007-02-02  Bruno Haible  <bruno@clisp.org>
26371
26372         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
26373         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
26374         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
26375         portability problems if one of these functions is only used on specific
26376         platforms.
26377         Reported by Paul Eggert.
26378
26379 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
26380
26381         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
26382         is causing more trouble than it's curing.
26383         * lib/regex_internal.h (__mempcpy): Remove.
26384         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
26385         (and make the code a tad smaller to boot).
26386         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
26387
26388 2007-02-02  Jim Meyering  <jim@meyering.net>
26389
26390         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
26391         section, not in the Makefile.am: one.
26392
26393 2007-02-02  Eric Blake  <ebb9@byu.net>
26394
26395         * lib/strchrnul.c: Always include config.h first.
26396
26397         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
26398         gnulib strstr is not necessary here.
26399
26400 2007-02-02  Simon Josefsson  <simon@josefsson.org>
26401
26402         * m4/socklen.m4: Fix typo.
26403
26404 2007-02-02  Eric Blake  <ebb9@byu.net>
26405
26406         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
26407         * modules/netinet_in (Makefile.am): Likewise.
26408
26409 2007-02-01  Bruno Haible  <bruno@clisp.org>
26410
26411         * lib/string_.h (GL_LINK_WARNING): New macro.
26412         (strcasecmp, strstr, strcasestr): If provided by the system,
26413         conditionally define as a macro that leads to a warning instead of to
26414         an error.
26415         (strncasecmp): Conditionally define as a macro that leads to a warning.
26416
26417 2007-02-01  Karl Berry  <karl@gnu.org>
26418
26419         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
26420
26421 2007-02-01  Bruno Haible  <bruno@clisp.org>
26422
26423         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
26424         renamings.
26425
26426 2007-02-01  Eric Blake  <ebb9@byu.net>
26427
26428         * modules/regex (Depends-on): Revert dependence on mempcpy.
26429         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
26430         module's definition of mempcpy.
26431         Reported by Paul Eggert.
26432
26433 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
26434
26435         * lib/string_.h: If the gnulib module XYZ is not present, undefine
26436         the symbol XYZ before redefining it.  This fixes a problem with
26437         programs that don't use XYZ, when compiled on systems that define
26438         XYZ to something else.
26439
26440 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
26441
26442         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
26443         occurs when "mkdir -m foo" creates a setgid directory that is (1)
26444         writeable to group or other and (2) is intended to have a special
26445         mode bit that is set or cleared.  In such a case, the directory
26446         should be neither group- nor other-writeable until the special
26447         mode bits are right.
26448
26449 2007-01-31  Eric Blake  <ebb9@byu.net>
26450
26451         * modules/mountlist (Depends-on): Add strstr.
26452
26453         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
26454         bug.
26455         * modules/string (Makefile.am): Remove redundant replacement.
26456         * modules/regex (Depends-on): Add mempcpy.
26457
26458 2007-01-31  Bruno Haible  <bruno@clisp.org>
26459
26460         New module description field 'Link'.
26461         * gnulib-tool (func_usage): Document --extract-link-directive.
26462         (sed_extract_prog): Recognize 'Link' directive.
26463         (func_get_link_directive): New function.
26464         (func_import): Show summary of link directives.
26465         Handle --extract-link-directive option.
26466         * modules/acl (Link): New section.
26467         * modules/clock-time (Link): New section.
26468         * modules/euidaccess (Link): New section.
26469         * modules/gettext (Link): New section.
26470         * modules/iconv (Link): New section.
26471         * modules/lock (Link): New section.
26472         * modules/nanosleep (Link): New section.
26473         * modules/readline (Link): New section.
26474
26475 2007-01-27  Bruno Haible  <bruno@clisp.org>
26476
26477         Enforce the use of gnulib modules for unportable <string.h> functions.
26478         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
26479         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
26480         (gl_HEADER_STRING_H_BODY): Require it.
26481         * lib/string_.h: If the gnulib module XYZ is not present, redefine
26482         the symbol XYZ to one that gives a link error.
26483         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
26484         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
26485         * modules/mempcpy (configure.ac): Likewise.
26486         * modules/memrchr (configure.ac): Likewise.
26487         * modules/stpcpy (configure.ac): Likewise.
26488         * modules/stpncpy (configure.ac): Likewise.
26489         * modules/strcase (configure.ac): Likewise.
26490         * modules/strcasestr (configure.ac): Likewise.
26491         * modules/strchrnul (configure.ac): Likewise.
26492         * modules/strdup (configure.ac): Likewise.
26493         * modules/strndup (configure.ac): Likewise.
26494         * modules/strnlen (configure.ac): Likewise.
26495         * modules/strpbrk (configure.ac): Likewise.
26496         * modules/strsep (configure.ac): Likewise.
26497         * modules/strstr (configure.ac): Likewise.
26498         * modules/strtok_r (configure.ac): Likewise.
26499
26500 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
26501
26502         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
26503
26504 2007-01-30  Jim Meyering  <jim@meyering.net>
26505
26506         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
26507
26508 2007-01-29  Bruno Haible  <bruno@clisp.org>
26509
26510         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
26511         * lib/execute.c: Likewise.
26512         * lib/pipe.c: Likewise.
26513         * lib/printf-args.h: Likewise.
26514         * lib/printf-args.c: Likewise.
26515         * lib/printf-parse.c: Likewise.
26516         * lib/vasnprintf.c: Likewise.
26517
26518 2007-01-29  Eric Blake  <ebb9@byu.net>
26519
26520         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
26521         declaration.
26522
26523 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
26524
26525         * lib/strptime.h (strptime): Use 'restrict' for args where
26526         POSIX requires this.
26527         * lib/strptime.c (strptime): Likewise.
26528         Change license notice from LGPL to GPL, since gnulib-tool will
26529         change this as needed.
26530         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
26531         defined.
26532         Include "strptime.h" first, to check interface.
26533         Do not #undef _LIBC and _NL_CURRENT.
26534         Do not include <stdlib.h>; no longer needed.
26535         Include "time_r.h" and declare ptime_locale_status
26536         only if _LIBC is not defined.
26537         (__P): Remove unused macro.
26538         (match_string): Bring back glibc version, but use it only if _LIBC
26539         is defined.
26540         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
26541         Remove unnecessary assertion and abort() call.
26542         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
26543         * m4/strptime.m4: Fix serial number comment.
26544         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
26545         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
26546         (Depends-on): Add time_r.
26547
26548 2007-01-29  Bruno Haible  <bruno@clisp.org>
26549
26550         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
26551         strptime.
26552         * modules/strptime (Depends-on): Add stdbool.
26553         * lib/strptime.h: Include <time.h> always. Add comments.
26554
26555 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
26556
26557         * modules/strptime: New file.
26558         * lib/strptime.h: New file.
26559         * lib/strptime.c: New file.
26560         * m4/strptime.m4: New file.
26561
26562 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
26563
26564         * MODULES.html.sh: New module mpsort.
26565         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
26566
26567         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
26568         a circularity problem with HP-UX ia64 reported by Bob Proulx in
26569         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
26570         All uses changed.
26571         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
26572         All uses changed.
26573         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
26574         to _Restrict_.
26575         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
26576         the parameter matches the prototype.
26577
26578 2007-01-28  Jim Meyering  <jim@meyering.net>
26579
26580         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
26581         sys/time.h here, reverting that part of the previous patch:
26582         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
26583
26584 2007-01-28  Bruno Haible  <bruno@clisp.org>
26585
26586         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
26587         value of $(SYS_TIME_H).
26588         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
26589         remove it conditionally, too. [added by Jim Meyering]
26590         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
26591         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
26592         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
26593         GETTIMEOFDAY_REPLACEMENT to 1.
26594
26595 2007-01-28  Bruno Haible  <bruno@clisp.org>
26596
26597         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
26598         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
26599         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
26600         Set UNISTD_H instead of UNISTD_H2.
26601         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
26602
26603 2007-01-28  Bruno Haible  <bruno@clisp.org>
26604
26605         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
26606         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
26607
26608 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26609
26610         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
26611         (func_create_testdir): Ensure C locale for `grep' and `tr'
26612         character ranges.
26613         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
26614         ACLOCAL_AMFLAGS parsing state machine.
26615
26616 2007-01-27  Bruno Haible  <bruno@clisp.org>
26617
26618         * modules/unistr/base: Update.
26619
26620 2007-01-27  Bruno Haible  <bruno@clisp.org>
26621
26622         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
26623         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
26624         * modules/unistr/u32-mbtouc-unsafe: Renamed from
26625         modules/unistr/u32-mbtouc.
26626         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
26627         * lib/unistr.h: Update.
26628         * lib/linebreak.c: Update.
26629         * modules/unistr/u32-mbtouc: Renamed from
26630         modules/unistr/u32-mbtouc-safe.
26631         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
26632         * lib/unistr.h: Update.
26633         * lib/unistr/u32-to-u8.c: Update.
26634         * lib/unistr/u32-to-u16.c: Update.
26635
26636 2007-01-27  Bruno Haible  <bruno@clisp.org>
26637
26638         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
26639         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
26640         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
26641         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
26642         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
26643         * modules/unistr/u16-mbtouc-unsafe: Renamed from
26644         modules/unistr/u16-mbtouc.
26645         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
26646         * lib/unistr.h: Update.
26647         * lib/linebreak.c: Update.
26648         * modules/linebreak: Update.
26649         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
26650         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
26651         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
26652         * modules/unistr/u16-mbtouc: Renamed from
26653         modules/unistr/u16-mbtouc-safe.
26654         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
26655         * lib/unistr.h: Update.
26656         * lib/unistr/u16-to-u8.c: Update.
26657         * modules/unistr/u16-to-u8: Update.
26658         * lib/unistr/u16-to-u32.c: Update.
26659         * modules/unistr/u16-to-u32: Update.
26660
26661 2007-01-27  Bruno Haible  <bruno@clisp.org>
26662
26663         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
26664         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
26665         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
26666         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
26667         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
26668         * modules/unistr/u8-mbtouc-unsafe: Renamed from
26669         modules/unistr/u8-mbtouc.
26670         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
26671         * lib/unistr.h: Update.
26672         * lib/striconveh.c: Update.
26673         * modules/striconveh: Update.
26674         * lib/linebreak.c: Update.
26675         * modules/linebreak: Update.
26676         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
26677         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
26678         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
26679         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
26680         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
26681         * lib/unistr.h: Update.
26682         * lib/striconveh.c: Update.
26683         * modules/striconveh: Update.
26684         * lib/unistr/u8-to-u16.c: Update.
26685         * modules/unistr/u8-to-u16: Update.
26686         * lib/unistr/u8-to-u32.c: Update.
26687         * modules/unistr/u8-to-u32: Update.
26688
26689 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26690
26691         Sync from Libtool.
26692         * lib/argz.c: Do not include strings.h nor memory.h, include
26693         string.h unconditionally.  Patch by Simon Josefsson.
26694
26695 2007-01-27  Bruno Haible  <bruno@clisp.org>
26696
26697         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
26698         from gl_HEADER_STRING_H_BODY.
26699         (gl_HEADER_STRING_H_BODY): Require it.
26700         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
26701         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
26702         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
26703         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
26704         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
26705         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
26706         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
26707         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
26708         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
26709         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
26710         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
26711         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
26712         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
26713         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
26714         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
26715
26716 2007-01-27  Bruno Haible  <bruno@clisp.org>
26717
26718         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
26719         check_PROGRAMS into noinst_PROGRAMS.
26720         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
26721         check_PROGRAMS in this case.
26722         (func_import): Set for_test to false.
26723         (func_create_testdir): Set for_test to true.
26724
26725 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
26726             Bruno Haible  <bruno@clisp.org>
26727
26728         * modules/strcasestr (Files): Remove lib/strcasestr.h.
26729         (Depends-on): Add string.
26730         (Includes): Use <string.h> instead of strcasestr.h.
26731         * modules/string (Makefile.am): Also substitute the value of
26732         REPLACE_STRCASESTR.
26733         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
26734         assume strcasestr is declared in <string.h> not <strings.h>. Also
26735         set REPLACE_STRCASESTR.
26736         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
26737         REPLACE_STRCASESTR.
26738         * lib/strcasestr.h: Remove file.
26739         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
26740         * lib/string_.h (strcasestr): New declaration.
26741
26742 2007-01-27  Bruno Haible  <bruno@clisp.org>
26743
26744         * lib/string_.h: Use 'extern'.
26745
26746 2007-01-27  Jim Meyering  <jim@meyering.net>
26747
26748         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
26749         of set-but-not-used local, "q".
26750
26751         * lib/mempcpy.c: Include <config.h> before <string.h>.
26752         This fixes a compilation error on HP-UX, due to the system's
26753         "restrict"-using mempcpy prototype.
26754
26755 2007-01-26  Bruno Haible  <bruno@clisp.org>
26756
26757         Small optimization.
26758         * lib/javacomp.c: Include c-strstr.h.
26759          (is_envjavac_gcj): Use c_strstr instead of strstr.
26760         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
26761
26762 2007-01-26  Bruno Haible  <bruno@clisp.org>
26763
26764         * MODULES.html.sh (Unicode string functions): Add the new modules.
26765
26766         * modules/uniconv/u32-strconv-to-locale: New file.
26767         * lib/uniconv/u32-strconv-to-locale.c: New file.
26768
26769         * modules/uniconv/u16-strconv-to-locale: New file.
26770         * lib/uniconv/u16-strconv-to-locale.c: New file.
26771
26772         * modules/uniconv/u8-strconv-to-locale: New file.
26773         * lib/uniconv/u8-strconv-to-locale.c: New file.
26774
26775         * modules/uniconv/u32-strconv-from-locale: New file.
26776         * lib/uniconv/u32-strconv-from-locale.c: New file.
26777
26778         * modules/uniconv/u16-strconv-from-locale: New file.
26779         * lib/uniconv/u16-strconv-from-locale.c: New file.
26780
26781         * modules/uniconv/u8-strconv-from-locale: New file.
26782         * lib/uniconv/u8-strconv-from-locale.c: New file.
26783
26784         * modules/uniconv/u32-strconv-to-enc: New file.
26785         * lib/uniconv/u32-strconv-to-enc.c: New file.
26786         * modules/uniconv/u32-strconv-to-enc-tests: New file.
26787         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
26788
26789         * modules/uniconv/u16-strconv-to-enc: New file.
26790         * lib/uniconv/u16-strconv-to-enc.c: New file.
26791         * lib/uniconv/u-strconv-to-enc.h: New file.
26792         * modules/uniconv/u16-strconv-to-enc-tests: New file.
26793         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
26794
26795         * modules/uniconv/u8-strconv-to-enc: New file.
26796         * lib/uniconv/u8-strconv-to-enc.c: New file.
26797         * modules/uniconv/u8-strconv-to-enc-tests: New file.
26798         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
26799
26800         * modules/uniconv/u32-strconv-from-enc: New file.
26801         * lib/uniconv/u32-strconv-from-enc.c: New file.
26802         * modules/uniconv/u32-strconv-from-enc-tests: New file.
26803         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
26804
26805         * modules/uniconv/u16-strconv-from-enc: New file.
26806         * lib/uniconv/u16-strconv-from-enc.c: New file.
26807         * modules/uniconv/u16-strconv-from-enc-tests: New file.
26808         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
26809
26810         * modules/uniconv/u8-strconv-from-enc: New file.
26811         * lib/uniconv/u8-strconv-from-enc.c: New file.
26812         * lib/uniconv/u-strconv-from-enc.h: New file.
26813         * modules/uniconv/u8-strconv-from-enc-tests: New file.
26814         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
26815
26816         * modules/uniconv/u32-conv-from-enc: New file.
26817         * lib/uniconv/u32-conv-from-enc.c: New file.
26818         * modules/uniconv/u32-conv-from-enc-tests: New file.
26819         * tests/uniconv/test-u32-conv-from-enc.c: New file.
26820
26821         * modules/uniconv/u16-conv-from-enc: New file.
26822         * lib/uniconv/u16-conv-from-enc.c: New file.
26823         * lib/uniconv/u-conv-from-enc.h: New file.
26824         * modules/uniconv/u16-conv-from-enc-tests: New file.
26825         * tests/uniconv/test-u16-conv-from-enc.c: New file.
26826
26827         * modules/uniconv/u8-conv-from-enc: New file.
26828         * lib/uniconv/u8-conv-from-enc.c: New file.
26829         * modules/uniconv/u8-conv-from-enc-tests: New file.
26830         * tests/uniconv/test-u8-conv-from-enc.c: New file.
26831
26832         * modules/uniconv/base: New file.
26833         * lib/uniconv.h: New file.
26834
26835 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
26836
26837         * doc/gnulib-tool.texi (Initial import): Update to match current
26838         behavior with strdup module.
26839         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
26840         * lib/memmem.h: Remove; all uses removed.  This is now done
26841         by <string.h>.
26842         * lib/mempcpy.h: Likewise.
26843         * lib/memrchr.h: Likewise.
26844         * lib/stpcpy.h: Likewise.
26845         * lib/stpncpy.h: Likewise.
26846         * lib/strcase.h: Likewise.
26847         * lib/strchrnul.h: Likewise.
26848         * lib/strdup.h: Likewise.
26849         * lib/strndup.h: Likewise.
26850         * lib/strnlen.h: Likewise.
26851         * lib/strpbrk.h: Likewise.
26852         * lib/strsep.h: Likewise.
26853         * lib/strstr.h: Likewise.
26854         * lib/strtok_r.h: Likewise.
26855         * lib/string_.h: New file.
26856         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
26857         Rely on <string.h> instead.
26858         * lib/canon-host.c: Likewise.
26859         * lib/chdir-long.c: Likewise.
26860         * lib/concatpath.c: Likewise.
26861         * lib/exclude.c: Likewise.
26862         * lib/fchdir.c: Likewise.
26863         * lib/getaddrinfo.c: Likewise.
26864         * lib/getcwd.c: Likewise.
26865         * lib/getsubopt.c: Likewise.
26866         * lib/glob.c: Likewise.
26867         * lib/hard-locale.c: Likewise.
26868         * lib/iconvme.c: Likewise.
26869         * lib/javacomp.c: Likewise.
26870         * lib/mempcpy.c: Likewise.
26871         * lib/memrchr.c: Likewise.
26872         * lib/regex_internal.h: Likewise.
26873         * lib/stpncpy.c: Likewise.
26874         * lib/strcasecmp.c: Likewise.
26875         * lib/strchrnul.c: Likewise.
26876         * lib/strdup.c: Likewise.
26877         * lib/striconv.c: Likewise.
26878         * lib/striconveh.c: Likewise.
26879         * lib/striconveha.c: Likewise.
26880         * lib/strncasecmp.c: Likewise.
26881         * lib/strndup.c: Likewise.
26882         * lib/strnlen.c: Likewise.
26883         * lib/strsep.c: Likewise.
26884         * lib/strstr.c: Likewise.
26885         * lib/strtok_r.c: Likewise.
26886         * lib/userspec.c: Likewise.
26887         * lib/w32spawn.h: Likewise.
26888         * lib/xstrndup.c: Likewise.
26889         * lib/mountlist.c (strstr): Remove decl.
26890         * m4/string_h.m4: New file.
26891         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
26892         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
26893         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
26894         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
26895         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
26896         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
26897         Set REPLACE_STRCASECMP if necessary.
26898         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
26899         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
26900         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
26901         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
26902         HAVE_DECL_STRDUP if necessary.
26903         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
26904         since gl_FUNC_STRNDUP does that now.
26905         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
26906         Check for decl here...
26907         (gl_PREREQ_STRNLEN): ... not here.
26908         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
26909         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
26910         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
26911         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
26912         necessary.
26913         * modules/string: New file.
26914         * modules/memmem (Files): Remove special-purpose include file.
26915         (Depends-on): Add string.
26916         (Include): Include <string.h>, not the removed file.
26917         * modules/mempcpy: Likewise.
26918         * modules/memrchr: Likewise.
26919         * modules/stpcpy: Likewise.
26920         * modules/stpncpy: Likewise.
26921         * modules/strcase: Likewise.
26922         * modules/strchrnul: Likewise.
26923         * modules/strdup: Likewise.
26924         * modules/strndup: Likewise.
26925         * modules/strnlen: Likewise.
26926         * modules/strpbrk: Likewise.
26927         * modules/strsep: Likewise.
26928         * modules/strstr: Likewise.
26929         * modules/strtok_r: Likewise.
26930         * tests/test-dirname.c: Don't include "strdup.h", since
26931         <string.h> now suffices.
26932         * tests/test-memmem.c: Don't include "memmem.h", since
26933         <string.h> now suffices.
26934
26935 2007-01-25  Bruno Haible  <bruno@clisp.org>
26936
26937         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
26938         *resultp is 0.
26939
26940         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
26941         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
26942         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
26943         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
26944
26945         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
26946         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
26947         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
26948         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
26949         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
26950         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
26951
26952 2007-01-24  Bruno Haible  <bruno@clisp.org>
26953
26954         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
26955         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
26956         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
26957         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
26958         gl_FUNC_FTS_CORE.
26959         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
26960         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
26961         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
26962         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
26963         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
26964         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
26965         gl_FUNC_FCHOWNAT.
26966         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
26967         gl_FUNC_STRFTIME.
26968         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
26969         Reported by Ralf Wildenhues.
26970
26971 2007-01-24  Bruno Haible  <bruno@clisp.org>
26972
26973         Drop AC_REQUIRE calls that are redundant with the module dependencies.
26974         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
26975         gl_GETADDRINFO.
26976         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
26977         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
26978         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
26979
26980 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
26981
26982         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
26983         Don't use 'exit'; just return from 'main'.
26984         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
26985
26986         * lib/fnmatch_.h: Readjust white space and comments to match
26987         glibc, to avoid spurious diffs.
26988
26989 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
26990
26991         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
26992         2004-12-01 change by Jakub Jelinek, since this code won't compile
26993         if !LIBC.  Problem reported by Bob Proulx.
26994
26995 2007-01-23  Bruno Haible  <bruno@clisp.org>
26996
26997         * lib/striconveh.c: Include c-strcaseeq.h.
26998         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
26999         * modules/striconveh (Depends-on): Add c-strcaseeq.
27000
27001 2007-01-23  Bruno Haible  <bruno@clisp.org>
27002
27003         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
27004
27005         * modules/c-strcaseeq: New file.
27006         * lib/c-strcaseeq.h: New file.
27007
27008         * modules/streq: New file.
27009         * lib/streq.h: New file.
27010
27011 2007-01-23  Bruno Haible  <bruno@clisp.org>
27012
27013         * modules/striconveha-tests: New file.
27014         * tests/test-striconveha.c: New file.
27015
27016         * lib/striconveha.h: Include <stdbool.h>.
27017         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
27018         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
27019         (mem_iconveha_notranslit): Renamed from mem_iconveha.
27020         (mem_iconveha): New function.
27021         (str_iconveha_notranslit): Renamed from str_iconveha.
27022         (str_iconveha): New function.
27023         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
27024         c-strcase.
27025
27026 2007-01-23  Bruno Haible  <bruno@clisp.org>
27027
27028         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
27029         encodings without forgiving before trying any encoding with handler.
27030         (str_iconveha): Try all encodings without forgiving before trying any
27031         encoding with handler.
27032
27033 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
27034
27035         Import the following changes from libc.
27036
27037         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
27038
27039         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
27040
27041         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
27042
27043         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
27044         normal_bracket label.
27045
27046         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
27047
27048         [BZ #361]
27049         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
27050         to normal_bracket after fetching the next character.
27051
27052 2007-01-22  Bruno Haible  <bruno@clisp.org>
27053
27054         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
27055         argument.
27056         * lib/striconveh.c (iconv_carefully_1): New function.
27057         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
27058         argument.
27059         (str_cd_iconveh): Update.
27060         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
27061         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
27062         * tests/test-striconveh.c (MAGIC): New macro.
27063         (new_offsets): New function.
27064         (main): Test call with and without offsets.
27065
27066 2007-01-22  Bruno Haible  <bruno@clisp.org>
27067
27068         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
27069         * modules/sys_select (Makefile.am): Likewise.
27070         * modules/sys_socket (Makefile.am): Likewise.
27071         * modules/sys_time (Makefile.am): Likewise.
27072
27073 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
27074
27075         * modules/gettimeofday (License): Change from GPL to LGPL, since
27076         gettimeofday is a library function.
27077
27078 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
27079
27080         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
27081
27082 2007-01-21  Bruno Haible  <bruno@clisp.org>
27083
27084         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
27085
27086 2007-01-21  Bruno Haible  <bruno@clisp.org>
27087
27088         * modules/striconveha: New file.
27089         * lib/striconveha.h: New file.
27090         * lib/striconveha.c: New file.
27091         * MODULES.html.sh (Internationalization functions): Add striconveha.
27092         * lib/striconv.c (str_iconv): Optimize the case of an empty input
27093         string.
27094         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
27095
27096 2007-01-21  Bruno Haible  <bruno@clisp.org>
27097
27098         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
27099         * lib/striconveh.c (str_iconveh): Likewise.
27100
27101 2007-01-21  Bruno Haible  <bruno@clisp.org>
27102
27103         * lib/striconveh.h (mem_iconveh): New declaration.
27104         * lib/striconveh.c (mem_iconveh): New function.
27105         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
27106
27107 2007-01-21  Bruno Haible  <bruno@clisp.org>
27108
27109         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
27110
27111         * lib/striconveh.h (mem_cd_iconveh): Change specification.
27112         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
27113         original result buffer.
27114         (str_cd_iconveh): Update.
27115         * tests/test-striconveh.c (main): Update.
27116
27117         * lib/striconv.h (mem_cd_iconv): Change specification.
27118         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
27119         result buffer.
27120         (str_cd_iconv): Update.
27121         * tests/test-striconv.c (main): Update.
27122
27123 2007-01-21  Bruno Haible  <bruno@clisp.org>
27124
27125         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
27126
27127 2007-01-20  Jim Meyering  <jim@meyering.net>
27128
27129         * lib/userspec.c (parse_with_separator): If a user or group string
27130         starts with "+", skip the corresponding name-to-ID look-up, since
27131         such a look-up must fail: user and group names may not include "+".
27132
27133 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
27134
27135         * lib/poll.c: Include sys/time.h and time.h unconditionally,
27136         since we now assume the sys_time module.
27137         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
27138         check for sys/time.h; no longer needed.
27139         * modules/poll (Depends-on): Depend on sys_time.
27140
27141 2007-01-18  Bruno Haible  <bruno@clisp.org>
27142
27143         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
27144         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
27145
27146         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
27147         gettimeofday.
27148
27149         * tests/test-gettimeofday.c: Include <time.h>.
27150         (dummy): Remove variable.
27151
27152         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
27153         gl_HEADER_SYS_TIME_H.
27154         (gl_HEADER_SYS_TIME_H): New macro.
27155
27156         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
27157         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
27158         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
27159         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
27160         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
27161         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
27162         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
27163         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
27164         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
27165         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
27166         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
27167
27168         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
27169         last change; it caused a compilation error when cross-compiling to
27170         Cygwin.
27171
27172 2007-01-18  Jim Meyering  <jim@meyering.net>
27173
27174         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
27175         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
27176         than the race-prone "test -d sys || mkdir sys".
27177         (configure.ac): Use AC_PROG_MKDIR_P.
27178         * modules/sys_select: Likewise.
27179         * modules/sys_socket: Likewise.
27180         * modules/sys_time: Likewise.
27181
27182 2007-01-18  Eric Blake  <ebb9@byu.net>
27183
27184         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
27185         replace gettimeofday.
27186         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
27187         name, to avoid infinite recursion.
27188
27189 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
27190
27191         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
27192         module sys_time.
27193         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
27194         assume timespec.h defines struct timeval.
27195         * lib/settime.c: Likewise.
27196         * lib/utimens.c: Likewise.
27197         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
27198         since we now assume the gettimeofday module.
27199         * lib/tempname.c (__gen_tempname): Likewise.
27200         * lib/gettimeofday.h: Remove.
27201         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
27202         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
27203         Include <time.h>, for 'time()'.
27204         (localtime_buffer_addr): Also use this workaround if
27205         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
27206         to simplify the uses.  All uses changed.
27207         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
27208         that #undef is inside {}, and 'const' follows type name consistently.
27209         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
27210         (gettimeofday): Do not use the maximum possible value for
27211         tv->tv_usec, since that might break usages other than ls.c.
27212         Instead, we'll leave ls.c alone.  This undoes today's patch
27213         by Bruno.  Add a compile-time warning for 1s-clock resolution;
27214         we've never observed the problem but might as well keep the
27215         canary.
27216         * lib/nanosleep.c: Include timespec.h first, for interface check.
27217         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
27218         now assume the sys_time module.
27219         * lib/tempname.c: Likewise.
27220         * lib/timespec.h: Likewise.
27221         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
27222         needed.
27223         * lib/strftime.c: Likewise.
27224         * lib/timespec.h: Likewise.
27225         * lib/posixtm.c: Include posixtm.h first, for interface check.
27226         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
27227         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
27228         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
27229         * lib/sys_time_.h: New file.
27230         * lib/timespec.h (struct timespec): Use long int, not long.
27231         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
27232         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
27233         Remove obsolescent call to AC_HEADER_TIME.
27234         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
27235         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
27236         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
27237         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
27238         Likewise.
27239         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
27240         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
27241         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
27242         into the sys_time module.  Check for gettimeofday just once.
27243         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
27244         for gettimeofday signature to just check the signature.  Merely
27245         compile it, since linking doesn't test signature.  Improve test for
27246         whether gettimeofday.o is actually needed.
27247         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
27248         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
27249         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
27250         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
27251         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
27252         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
27253         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
27254         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
27255         than worrying about sys/time.h.
27256         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
27257         Don't bother worrying about TIME_WITH_SYS_TIME.
27258         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
27259         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
27260         * m4/sys_time_h.m4: New file.
27261         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
27262         Don't include sys/time.h.  Return from main rather than exiting.
27263         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
27264         all uses changed.
27265         * modules/gethrxtime (Depends-on): Add sys_time.
27266         * modules/gettime (Depends-on): Likewise.
27267         * modules/gettimeofday (Depends-on): Likewise.
27268         * modules/nanosleep (Depends-on): Likewise.
27269         * modules/settime (Depends-on): Likewise.
27270         * modules/tempname (Depends-on): Likewise.
27271         * modules/utimens (Depends-on): Likewise.
27272         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
27273         (Include:) Change back to <sys/time.h>.
27274         (Maintainer:) Add self.
27275         * modules/sys_time: New file.
27276         * modules/tempname (Depends-on): Add gettimeofday.
27277         * tests/test-gettimeofday.c: Include <sys/time.h>
27278         rather than gettimeofday.h.
27279
27280 2007-01-17  Bruno Haible  <bruno@clisp.org>
27281
27282         * gnulib-tool (func_get_license): Revert last patch. Instead, let
27283         the license default to GPL.
27284         (func_create_testdir): Don't complain if a module is LGPL and its
27285         tests module depends on GPLed modules.
27286
27287 2007-01-17  Bruno Haible  <bruno@clisp.org>
27288
27289         * lib/gettimeofday.c (gettimeofday): Add code for the case
27290         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
27291         maximum possible value for tv->tv_usec, rather than the minimum one.
27292
27293 2005-10-08  Martin Lambers  <marlam@marlam.de>
27294 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
27295 2007-01-16  Bruno Haible  <bruno@clisp.org>
27296
27297         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
27298         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
27299         gl_FUNC_GETTIMEOFDAY.
27300         (Include): Add gettimeofday.h.
27301         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
27302         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
27303         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
27304         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
27305         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
27306         * lib/gettimeofday.h: New file.
27307         * lib/gettimeofday.c: Include <sys/timeb.h>.
27308         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
27309         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
27310         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
27311         fall back on time().
27312
27313         * tests/test-gettimeofday.c: New file.
27314         * modules/gettimeofday-tests: New file.
27315
27316 2007-01-16  Eric Blake  <ebb9@byu.net>
27317
27318         * modules/fnmatch (Depends-on): Depend on wchar.
27319         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
27320         * m4/fnmatch.m4: Likewise.
27321         * modules/mbchar (Makefile.am): Assume <wchar.h>.
27322         * m4/mbchar.m4: Likewise.
27323         * modules/mbswidth (Depends-on): Depend on wchar.
27324         * lib/mbswidth.c: Assume <wchar.h>.
27325         * m4/mbswidth.m4: Likewise.
27326         * modules/quotearg (Depends-on): Depend on wchar.
27327         * lib/quotearg.c: Assume <wchar.h>.
27328         * m4/quotearg.m4: Likewise.
27329         * modules/regex (Depends-on): Depend on wchar.
27330         * lib/regex_internal.h: Assume <wchar.h>.
27331         * m4/regex.m4: Likewise.
27332         * modules/stdint (Depends-on): Depend on wchar.
27333         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
27334         * m4/stdint.m4: Likewise.
27335         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
27336         * modules/strftime (Depends-on): Depend on wchar.
27337         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
27338         * modules/strtol (Depends-on): Depend on wchar.
27339         * lib/strtol.c: Assume <wchar.h>.
27340         * modules/wcwidth (Depends-on): Depend on wchar.
27341         * lib/wcwidth.h: Assume <wchar.h>.
27342         * m4/wcwidth.m4: Likewise.
27343
27344 2007-01-16  Bruno Haible  <bruno@clisp.org>
27345
27346         * modules/csharpexec-script: New, created from...
27347         * modules/csharpexec: ... this.
27348
27349 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
27350
27351         * modules/javaexec-script: New, created from...
27352         * modules/javaexec: ... this.
27353
27354 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
27355
27356         * modules/poll (Dependencies): Add sys_select.
27357
27358 2007-01-15  Jim Meyering  <jim@meyering.net>
27359
27360         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
27361         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
27362         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
27363         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
27364
27365 2007-01-15  Bruno Haible  <bruno@clisp.org>
27366
27367         * modules/striconveh: New file.
27368         * lib/striconveh.h: New file.
27369         * lib/striconveh.c: New file.
27370         * MODULES.html.sh (Internationalization functions): Add striconveh.
27371
27372         * modules/striconveh-tests: New file.
27373         * tests/test-striconveh.c: New file.
27374
27375 2007-01-15  Bruno Haible  <bruno@clisp.org>
27376
27377         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
27378         not from GNU libiconv or GNU libc.
27379
27380 2007-01-15  Bruno Haible  <bruno@clisp.org>
27381
27382         * doc/gnulib-intro.texi (Copyright): Explain the different license
27383         terms for module descriptions, autoconf macros, tests, documentation.
27384
27385 2007-01-14  Bruno Haible  <bruno@clisp.org>
27386
27387         * modules/striconv-tests: New file.
27388         * tests/test-striconv.c: New file.
27389
27390 2007-01-14  Bruno Haible  <bruno@clisp.org>
27391
27392         * modules/iconv-tests: New file.
27393         * tests/test-iconv.c: New file.
27394
27395 2007-01-14  Bruno Haible  <bruno@clisp.org>
27396
27397         * gnulib-tool (func_get_license): For test modules, use the license of
27398         the main module.
27399
27400 2007-01-14  Bruno Haible  <bruno@clisp.org>
27401
27402         * modules/iconv (Include): Clarify that <iconv.h> can only be included
27403         if iconv is found to exist.
27404
27405 2007-01-14  Bruno Haible  <bruno@clisp.org>
27406
27407         * modules/c-ctype-tests: New file.
27408         * tests/test-c-ctype.c: New file.
27409
27410 2007-01-14  Bruno Haible  <bruno@clisp.org>
27411
27412         * modules/binary-io-tests: New file.
27413         * tests/test-binary-io.sh: New file.
27414         * tests/test-binary-io.c: New file.
27415
27416 2007-01-14  Bruno Haible  <bruno@clisp.org>
27417
27418         * modules/array-oset-tests: New file.
27419         * tests/test-array_oset.c: New file.
27420
27421 2007-01-14  Bruno Haible  <bruno@clisp.org>
27422
27423         * modules/array-list-tests: New file.
27424         * tests/test-array_list.c: New file.
27425
27426 2007-01-14  Bruno Haible  <bruno@clisp.org>
27427
27428         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
27429         and make.
27430         Reported by Simon Josefsson in
27431         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
27432
27433 2007-01-14  Bruno Haible  <bruno@clisp.org>
27434
27435         * modules/allocsa-tests: New file.
27436         * tests/test-allocsa.c: New file.
27437
27438 2007-01-14  Bruno Haible  <bruno@clisp.org>
27439
27440         * modules/fchdir (Depends-on): Add absolute-header.
27441         * modules/unistd (Depends-on): Likewise.
27442
27443 2006-12-30  Bruno Haible  <bruno@clisp.org>
27444
27445         * modules/fchdir: New file.
27446         * modules/unistd (Files): Add lib/unistd_.h.
27447         (Makefile.am): Generate unistd.h from unistd_.h.
27448         * lib/fchdir.c: New file.
27449         * lib/dirent_.h: New file.
27450         * lib/unistd_.h: New file.
27451         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
27452         * m4/fchdir.m4: New file.
27453         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
27454         (gl_HEADER_UNISTD): Invoke it.
27455         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
27456         function.
27457         * lib/backupfile.c (opendir, closedir): Undefine.
27458         * lib/chown.c (open, close): Undefine.
27459         * lib/clean-temp.c (open, close): Undefine.
27460         * lib/copy-file.c (open, close): Undefine.
27461         * lib/execute.c (open, close): Undefine.
27462         * lib/fsusage.c (open, close): Undefine.
27463         * lib/gc-gnulib.c (open, close): Undefine.
27464         * lib/getcwd.c (opendir, closedir): Undefine.
27465         * lib/glob.c (opendir, closedir): Undefine.
27466         * lib/javacomp.c (open, close): Undefine.
27467         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
27468         * lib/openat-proc.c (open, close): Undefine.
27469         * lib/pagealign_alloc.c (open, close): Undefine.
27470         * lib/pipe.c (open, close): Undefine.
27471         * lib/progreloc.c (open, close): Undefine.
27472         * lib/savedir.c (opendir, closedir): Undefine.
27473         * lib/utime.c (open, close): Undefine.
27474         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
27475
27476 2007-01-10  Bruno Haible  <bruno@clisp.org>
27477
27478         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
27479
27480 2007-01-12  Eric Blake  <ebb9@byu.net>
27481
27482         Provide a robust <wchar.h>.  Further simplifications are now
27483         possible in other modules, but not included here.
27484         * modules/wchar: New module.
27485         * m4/wchar.m4: New file.
27486         * lib/wchar_.h: Likewise.
27487         * modules/mbchar (Depends-on): Depend on wchar, as the first use
27488         of the new module.
27489         * MODULES.html.sh (Extended multibyte and wide character utilities):
27490         New section.
27491
27492 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
27493
27494         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
27495         to a reasonable default for memory allocation.
27496         (xreadlink): Don't allocate a huge buffer, to work around a buggy
27497         file system that reports garbage st_size values for symlinks.
27498         Problem reported by Liyang Hu.
27499
27500 2007-01-11  Simon Josefsson  <simon@josefsson.org>
27501
27502         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
27503         Emacs .#* auto-save files).
27504
27505 2007-01-11  Bruno Haible  <bruno@clisp.org>
27506
27507         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
27508         directory.
27509
27510 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
27511
27512         Use @...@ consistently in lib/wctype_.h.
27513         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
27514         on it being set to 1 or 0.
27515         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
27516         go back to AC_SUBSTing it.
27517         * modules/wctype (Makefile.am): Undo previous change.
27518
27519 2007-01-10  Eric Blake  <ebb9@byu.net>
27520
27521         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
27522         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
27523         * modules/wctype (Makefile.am): Likewise.
27524         Reported by Chris McGuire.
27525
27526 2007-01-10  Jim Meyering  <jim@meyering.net>
27527
27528         fts.c: a small readability/maintainability improvement
27529         * lib/fts.c (fts_read): Make this code slightly more readable and
27530         maintainable by hoisting the "sp->fts_cur = p" assignments to
27531         immediately follow the statements that set P.  Derived from
27532         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
27533
27534 2007-01-10  Eric Blake  <ebb9@byu.net>
27535
27536         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
27537         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
27538         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
27539         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
27540         Reported by Chris McGuire.
27541
27542 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
27543
27544         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
27545         in sed script.
27546
27547 2007-01-09  Bruno Haible  <bruno@clisp.org>
27548
27549         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
27550         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
27551         variables.
27552         (func_module): Use them.
27553
27554 2007-01-09  Bruno Haible  <bruno@clisp.org>
27555
27556         * modules/unistr/base: New file.
27557         * lib/unistr.h: New file.
27558
27559         * modules/unistr/u8-to-u16: New file.
27560         * lib/unistr/u8-to-u16.c: New file.
27561
27562         * modules/unistr/u8-to-u32: New file.
27563         * lib/unistr/u8-to-u32.c: New file.
27564
27565         * modules/unistr/u16-to-u8: New file.
27566         * lib/unistr/u16-to-u8.c: New file.
27567
27568         * modules/unistr/u16-to-u32: New file.
27569         * lib/unistr/u16-to-u32.c: New file.
27570
27571         * modules/unistr/u32-to-u8: New file.
27572         * lib/unistr/u32-to-u8.c: New file.
27573
27574         * modules/unistr/u32-to-u16: New file.
27575         * lib/unistr/u32-to-u16.c: New file.
27576
27577         * modules/unistr/u8-check: New file.
27578         * modules/unistr/u16-check: New file.
27579         * modules/unistr/u32-check: New file.
27580         * lib/unistr/u8-check.c: New file.
27581         * lib/unistr/u16-check.c: New file.
27582         * lib/unistr/u32-check.c: New file.
27583
27584         * modules/unistr/u8-chr: New file.
27585         * modules/unistr/u16-chr: New file.
27586         * modules/unistr/u32-chr: New file.
27587         * lib/unistr/u8-chr.c: New file.
27588         * lib/unistr/u16-chr.c: New file.
27589         * lib/unistr/u32-chr.c: New file.
27590
27591         * modules/unistr/u8-cmp: New file.
27592         * modules/unistr/u16-cmp: New file.
27593         * modules/unistr/u32-cmp: New file.
27594         * lib/unistr/u8-cmp.c: New file.
27595         * lib/unistr/u16-cmp.c: New file.
27596         * lib/unistr/u32-cmp.c: New file.
27597
27598         * modules/unistr/u8-cpy: New file.
27599         * modules/unistr/u16-cpy: New file.
27600         * modules/unistr/u32-cpy: New file.
27601         * lib/unistr/u8-cpy.c: New file.
27602         * lib/unistr/u16-cpy.c: New file.
27603         * lib/unistr/u32-cpy.c: New file.
27604         * lib/unistr/u-cpy.h: New file.
27605
27606         * modules/unistr/u8-cpy-alloc: New file.
27607         * modules/unistr/u16-cpy-alloc: New file.
27608         * modules/unistr/u32-cpy-alloc: New file.
27609         * lib/unistr/u8-cpy-alloc.c: New file.
27610         * lib/unistr/u16-cpy-alloc.c: New file.
27611         * lib/unistr/u32-cpy-alloc.c: New file.
27612         * lib/unistr/u-cpy-alloc.h: New file.
27613
27614         * modules/unistr/u8-endswith: New file.
27615         * modules/unistr/u16-endswith: New file.
27616         * modules/unistr/u32-endswith: New file.
27617         * lib/unistr/u8-endswith.c: New file.
27618         * lib/unistr/u16-endswith.c: New file.
27619         * lib/unistr/u32-endswith.c: New file.
27620         * lib/unistr/u-endswith.h: New file.
27621
27622         * modules/unistr/u8-mblen: New file.
27623         * modules/unistr/u16-mblen: New file.
27624         * modules/unistr/u32-mblen: New file.
27625         * lib/unistr/u8-mblen.c: New file.
27626         * lib/unistr/u16-mblen.c: New file.
27627         * lib/unistr/u32-mblen.c: New file.
27628
27629         * modules/unistr/u8-mbtouc: New file.
27630         * modules/unistr/u16-mbtouc: New file.
27631         * modules/unistr/u32-mbtouc: New file.
27632         * lib/unistr/u8-mbtouc.c: New file.
27633         * lib/unistr/u16-mbtouc.c: New file.
27634         * lib/unistr/u32-mbtouc.c: New file.
27635
27636         * modules/unistr/u8-mbtouc-safe: New file.
27637         * modules/unistr/u16-mbtouc-safe: New file.
27638         * modules/unistr/u32-mbtouc-safe: New file.
27639         * lib/unistr/u8-mbtouc-safe.c: New file.
27640         * lib/unistr/u16-mbtouc-safe.c: New file.
27641         * lib/unistr/u32-mbtouc-safe.c: New file.
27642
27643         * modules/unistr/u8-move: New file.
27644         * modules/unistr/u16-move: New file.
27645         * modules/unistr/u32-move: New file.
27646         * lib/unistr/u8-move.c: New file.
27647         * lib/unistr/u16-move.c: New file.
27648         * lib/unistr/u32-move.c: New file.
27649         * lib/unistr/u-move.h: New file.
27650
27651         * modules/unistr/u8-next: New file.
27652         * modules/unistr/u16-next: New file.
27653         * modules/unistr/u32-next: New file.
27654         * lib/unistr/u8-next.c: New file.
27655         * lib/unistr/u16-next.c: New file.
27656         * lib/unistr/u32-next.c: New file.
27657
27658         * modules/unistr/u8-prev: New file.
27659         * modules/unistr/u16-prev: New file.
27660         * modules/unistr/u32-prev: New file.
27661         * lib/unistr/u8-prev.c: New file.
27662         * lib/unistr/u16-prev.c: New file.
27663         * lib/unistr/u32-prev.c: New file.
27664
27665         * modules/unistr/u8-set: New file.
27666         * modules/unistr/u16-set: New file.
27667         * modules/unistr/u32-set: New file.
27668         * lib/unistr/u8-set.c: New file.
27669         * lib/unistr/u16-set.c: New file.
27670         * lib/unistr/u32-set.c: New file.
27671         * lib/unistr/u-set.h: New file.
27672
27673         * modules/unistr/u8-startswith: New file.
27674         * modules/unistr/u16-startswith: New file.
27675         * modules/unistr/u32-startswith: New file.
27676         * lib/unistr/u8-startswith.c: New file.
27677         * lib/unistr/u16-startswith.c: New file.
27678         * lib/unistr/u32-startswith.c: New file.
27679         * lib/unistr/u-startswith.h: New file.
27680
27681         * modules/unistr/u8-stpcpy: New file.
27682         * modules/unistr/u16-stpcpy: New file.
27683         * modules/unistr/u32-stpcpy: New file.
27684         * lib/unistr/u8-stpcpy.c: New file.
27685         * lib/unistr/u16-stpcpy.c: New file.
27686         * lib/unistr/u32-stpcpy.c: New file.
27687         * lib/unistr/u-stpcpy.h: New file.
27688
27689         * modules/unistr/u8-stpncpy: New file.
27690         * modules/unistr/u16-stpncpy: New file.
27691         * modules/unistr/u32-stpncpy: New file.
27692         * lib/unistr/u8-stpncpy.c: New file.
27693         * lib/unistr/u16-stpncpy.c: New file.
27694         * lib/unistr/u32-stpncpy.c: New file.
27695         * lib/unistr/u-stpncpy.h: New file.
27696
27697         * modules/unistr/u8-strcat: New file.
27698         * modules/unistr/u16-strcat: New file.
27699         * modules/unistr/u32-strcat: New file.
27700         * lib/unistr/u8-strcat.c: New file.
27701         * lib/unistr/u16-strcat.c: New file.
27702         * lib/unistr/u32-strcat.c: New file.
27703         * lib/unistr/u-strcat.h: New file.
27704
27705         * modules/unistr/u8-strchr: New file.
27706         * modules/unistr/u16-strchr: New file.
27707         * modules/unistr/u32-strchr: New file.
27708         * lib/unistr/u8-strchr.c: New file.
27709         * lib/unistr/u16-strchr.c: New file.
27710         * lib/unistr/u32-strchr.c: New file.
27711
27712         * modules/unistr/u8-strcmp: New file.
27713         * modules/unistr/u16-strcmp: New file.
27714         * modules/unistr/u32-strcmp: New file.
27715         * lib/unistr/u8-strcmp.c: New file.
27716         * lib/unistr/u16-strcmp.c: New file.
27717         * lib/unistr/u32-strcmp.c: New file.
27718
27719         * modules/unistr/u8-strcpy: New file.
27720         * modules/unistr/u16-strcpy: New file.
27721         * modules/unistr/u32-strcpy: New file.
27722         * lib/unistr/u8-strcpy.c: New file.
27723         * lib/unistr/u16-strcpy.c: New file.
27724         * lib/unistr/u32-strcpy.c: New file.
27725         * lib/unistr/u-strcpy.h: New file.
27726
27727         * modules/unistr/u8-strcspn: New file.
27728         * modules/unistr/u16-strcspn: New file.
27729         * modules/unistr/u32-strcspn: New file.
27730         * lib/unistr/u8-strcspn.c: New file.
27731         * lib/unistr/u16-strcspn.c: New file.
27732         * lib/unistr/u32-strcspn.c: New file.
27733         * lib/unistr/u-strcspn.h: New file.
27734
27735         * modules/unistr/u8-strdup: New file.
27736         * modules/unistr/u16-strdup: New file.
27737         * modules/unistr/u32-strdup: New file.
27738         * lib/unistr/u8-strdup.c: New file.
27739         * lib/unistr/u16-strdup.c: New file.
27740         * lib/unistr/u32-strdup.c: New file.
27741         * lib/unistr/u-strdup.h: New file.
27742
27743         * modules/unistr/u8-strlen: New file.
27744         * modules/unistr/u16-strlen: New file.
27745         * modules/unistr/u32-strlen: New file.
27746         * lib/unistr/u8-strlen.c: New file.
27747         * lib/unistr/u16-strlen.c: New file.
27748         * lib/unistr/u32-strlen.c: New file.
27749         * lib/unistr/u-strlen.h: New file.
27750
27751         * modules/unistr/u8-strmblen: New file.
27752         * modules/unistr/u16-strmblen: New file.
27753         * modules/unistr/u32-strmblen: New file.
27754         * lib/unistr/u8-strmblen.c: New file.
27755         * lib/unistr/u16-strmblen.c: New file.
27756         * lib/unistr/u32-strmblen.c: New file.
27757
27758         * modules/unistr/u8-strmbtouc: New file.
27759         * modules/unistr/u16-strmbtouc: New file.
27760         * modules/unistr/u32-strmbtouc: New file.
27761         * lib/unistr/u8-strmbtouc.c: New file.
27762         * lib/unistr/u16-strmbtouc.c: New file.
27763         * lib/unistr/u32-strmbtouc.c: New file.
27764
27765         * modules/unistr/u8-strncat: New file.
27766         * modules/unistr/u16-strncat: New file.
27767         * modules/unistr/u32-strncat: New file.
27768         * lib/unistr/u8-strncat.c: New file.
27769         * lib/unistr/u16-strncat.c: New file.
27770         * lib/unistr/u32-strncat.c: New file.
27771         * lib/unistr/u-strncat.h: New file.
27772
27773         * modules/unistr/u8-strncmp: New file.
27774         * modules/unistr/u16-strncmp: New file.
27775         * modules/unistr/u32-strncmp: New file.
27776         * lib/unistr/u8-strncmp.c: New file.
27777         * lib/unistr/u16-strncmp.c: New file.
27778         * lib/unistr/u32-strncmp.c: New file.
27779
27780         * modules/unistr/u8-strncpy: New file.
27781         * modules/unistr/u16-strncpy: New file.
27782         * modules/unistr/u32-strncpy: New file.
27783         * lib/unistr/u8-strncpy.c: New file.
27784         * lib/unistr/u16-strncpy.c: New file.
27785         * lib/unistr/u32-strncpy.c: New file.
27786         * lib/unistr/u-strncpy.h: New file.
27787
27788         * modules/unistr/u8-strnlen: New file.
27789         * modules/unistr/u16-strnlen: New file.
27790         * modules/unistr/u32-strnlen: New file.
27791         * lib/unistr/u8-strnlen.c: New file.
27792         * lib/unistr/u16-strnlen.c: New file.
27793         * lib/unistr/u32-strnlen.c: New file.
27794         * lib/unistr/u-strnlen.h: New file.
27795
27796         * modules/unistr/u8-strpbrk: New file.
27797         * modules/unistr/u16-strpbrk: New file.
27798         * modules/unistr/u32-strpbrk: New file.
27799         * lib/unistr/u8-strpbrk.c: New file.
27800         * lib/unistr/u16-strpbrk.c: New file.
27801         * lib/unistr/u32-strpbrk.c: New file.
27802         * lib/unistr/u-strpbrk.h: New file.
27803
27804         * modules/unistr/u8-strrchr: New file.
27805         * modules/unistr/u16-strrchr: New file.
27806         * modules/unistr/u32-strrchr: New file.
27807         * lib/unistr/u8-strrchr.c: New file.
27808         * lib/unistr/u16-strrchr.c: New file.
27809         * lib/unistr/u32-strrchr.c: New file.
27810
27811         * modules/unistr/u8-strspn: New file.
27812         * modules/unistr/u16-strspn: New file.
27813         * modules/unistr/u32-strspn: New file.
27814         * lib/unistr/u8-strspn.c: New file.
27815         * lib/unistr/u16-strspn.c: New file.
27816         * lib/unistr/u32-strspn.c: New file.
27817         * lib/unistr/u-strspn.h: New file.
27818
27819         * modules/unistr/u8-strstr: New file.
27820         * modules/unistr/u16-strstr: New file.
27821         * modules/unistr/u32-strstr: New file.
27822         * lib/unistr/u8-strstr.c: New file.
27823         * lib/unistr/u16-strstr.c: New file.
27824         * lib/unistr/u32-strstr.c: New file.
27825         * lib/unistr/u-strstr.h: New file.
27826
27827         * modules/unistr/u8-strtok: New file.
27828         * modules/unistr/u16-strtok: New file.
27829         * modules/unistr/u32-strtok: New file.
27830         * lib/unistr/u8-strtok.c: New file.
27831         * lib/unistr/u16-strtok.c: New file.
27832         * lib/unistr/u32-strtok.c: New file.
27833         * lib/unistr/u-strtok.h: New file.
27834
27835         * modules/unistr/u8-uctomb: New file.
27836         * modules/unistr/u16-uctomb: New file.
27837         * modules/unistr/u32-uctomb: New file.
27838         * lib/unistr/u8-uctomb.c: New file.
27839         * lib/unistr/u16-uctomb.c: New file.
27840         * lib/unistr/u32-uctomb.c: New file.
27841
27842         * MODULES.html.sh (Unicode string functions): Add the new modules.
27843
27844 2007-01-08  Bruno Haible  <bruno@clisp.org>
27845
27846         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
27847         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
27848         subdirectories.
27849
27850 2007-01-08  Karl Berry  <karl@gnu.org>
27851
27852         * doc/error.texi: mention that main() fns must set program_name
27853         when progname is used.
27854
27855 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
27856
27857         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
27858         WCTYPE_H is empty, for the benefit of builds from non-distclean
27859         directories.  Problem reported by Eric Blake in
27860         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
27861
27862 2007-01-08  Bruno Haible  <bruno@clisp.org>
27863
27864         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
27865         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
27866         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
27867         PROVIDE_CANONICALIZE_FILENAME_MODE.
27868         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
27869
27870 2007-01-08  Bruno Haible  <bruno@clisp.org>
27871
27872         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
27873         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
27874         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
27875         * lib/fts.c: Likewise.
27876         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
27877
27878 2006-12-25  Bruno Haible  <bruno@clisp.org>
27879
27880         * modules/utf8-ucs4-safe: New file.
27881         * lib/utf8-ucs4-safe.h: New file.
27882         * lib/unistr/utf8-ucs4-safe.c: New file.
27883
27884         * modules/utf16-ucs4-safe: New file.
27885         * lib/utf16-ucs4-safe.h: New file.
27886         * lib/unistr/utf16-ucs4-safe.c: New file.
27887
27888         * MODULES.html.sh (Unicode string functions): Add the new modules.
27889
27890 2007-01-08  Bruno Haible  <bruno@clisp.org>
27891
27892         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
27893         (Depends-on): Add unitypes.
27894         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
27895         (u8_mbtouc_aux): Move out to separate file.
27896         (u8_mbtouc): Use ucs4_t, uint8_t types.
27897         * lib/unistr/utf8-ucs4.c: New file.
27898
27899         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
27900         (Depends-on): Add unitypes.
27901         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
27902         (u16_mbtouc_aux): Move out to separate file.
27903         (u16_mbtouc): Use ucs4_t, uint16_t types.
27904         * lib/unistr/utf16-ucs4.c: New file.
27905
27906         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
27907         (Depends-on): Add unitypes.
27908         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
27909         (u8_uctomb_aux): Move out to separate file.
27910         (u8_uctomb): Use ucs4_t, uint8_t types.
27911         * lib/unistr/ucs4-utf8.c: New file.
27912
27913         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
27914         (Depends-on): Add unitypes.
27915         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
27916         (u16_uctomb_aux): Move out to separate file.
27917         (u16_uctomb): Use ucs4_t, uint16_t types.
27918         * lib/unistr/ucs4-utf16.c: New file.
27919
27920 2006-12-25  Bruno Haible  <bruno@clisp.org>
27921
27922         * modules/unitypes: New file.
27923         * lib/unitypes.h: New file.
27924         * MODULES.html.sh (func_all_modules): New section "Unicode string
27925         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
27926         this section. Add unitypes.
27927
27928 2007-01-08  Bruno Haible  <bruno@clisp.org>
27929
27930         Avoid variable names that conflict with those from libtool.
27931         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
27932         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
27933         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
27934         library_names_spec to acl_library_names_spec, hardcode_* to
27935         acl_hardcode_*.
27936         Reported by Ralf Wildenhues.
27937
27938 2007-01-08  Bruno Haible  <bruno@clisp.org>
27939
27940         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
27941         definition.
27942         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
27943         definition.
27944         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
27945         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
27946         definition.
27947         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
27948         definition.
27949         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
27950         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
27951         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
27952         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
27953         definition.
27954         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
27955         definition.
27956         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
27957         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
27958         GC_USE_<algorithm>.
27959         * lib/gc-libgcrypt.c: Likewise.
27960         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
27961         * modules/gc-arctwo (configure.ac): Likewise.
27962         * modules/gc-des (configure.ac): Likewise.
27963         * modules/gc-hmac-md5 (configure.ac): Likewise.
27964         * modules/gc-hmac-sha1 (configure.ac): Likewise.
27965         * modules/gc-md2 (configure.ac): Likewise.
27966         * modules/gc-md4 (configure.ac): Likewise.
27967         * modules/gc-md5 (configure.ac): Likewise.
27968         * modules/gc-random (configure.ac): Likewise.
27969         * modules/gc-rijndael (configure.ac): Likewise.
27970         * modules/gc-sha1 (configure.ac): Likewise.
27971
27972 2007-01-08  Bruno Haible  <bruno@clisp.org>
27973
27974         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
27975         macro definition.
27976         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
27977         definition.
27978         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
27979         definition.
27980         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
27981         * modules/fcntl-safer (configure.ac): Likewise.
27982         * modules/fopen-safer (configure.ac): Likewise.
27983         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
27984         GNULIB_FWRITEERROR macro definition.
27985
27986 2007-01-08  Bruno Haible  <bruno@clisp.org>
27987
27988         * m4/gnulib-common.m4: New file.
27989         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
27990         (func_get_filelist): Add m4/gnulib-common.m4.
27991
27992 2007-01-08  Bruno Haible  <bruno@clisp.org>
27993
27994         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
27995         command.
27996
27997 2007-01-08  Jim Meyering  <jim@meyering.net>
27998
27999         Use a more robust test for a "can't happen" condition.
28000         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
28001         narrowed the st_size value.  Presuming the "can't happen" condition
28002         is true, that narrowing could conceivably convert an invalid st_size
28003         value into a valid one.  Instead, use a change based on Matthew
28004         Woehlke's original patch.
28005
28006         Slight readability improvement: use an assert-like macro
28007         in place of literal "abort ()" uses.
28008         * lib/fts.c (fts_assert): Define.
28009         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
28010         Use this macro instead of a bare 'abort'.
28011
28012 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
28013
28014         Don't worry about using IRIX 5.3's wctype.h broken definitions;
28015         simply work around them.
28016         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
28017         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
28018         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
28019         declaring.
28020         Don't bother to define as macros, since the standard doesn't require it.
28021         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
28022         longer worry about IRIX 5.3.
28023         (HAVE_WCTYPE_CTMP_BUG): Remove.
28024
28025 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
28026
28027         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
28028         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
28029         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
28030         Problems reported by Georg Schwarz for IRIX 5.3.
28031
28032         * gnulib-tool (autoconf_minversion): Take the maximum version number
28033         found, not the minimum.  Problem reported by James Youngman.
28034
28035 2007-01-03  Karl Berry  <karl@gnu.org>
28036
28037         * doc/error.texi: new file, explaining interaction with progname.
28038         * doc/gnulib.texi: include it.  Update copyright.
28039
28040 2007-01-03  Simon Josefsson  <simon@josefsson.org>
28041
28042         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
28043         AC_CANONICAL_HOST, to improve autobuild outputs.
28044
28045 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
28046             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
28047
28048         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
28049         sockets, server sockets, and other file descriptors.  Count errors
28050         to compute the return value.  Reorder the code a bit to be easier
28051         to follow.  Don't set event bits that were not requested (except
28052         POLLERR and POLLHUP).
28053
28054 2007-01-01  Bruno Haible  <bruno@clisp.org>
28055
28056         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
28057
28058 2007-01-03  Jim Meyering  <jim@meyering.net>
28059
28060         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
28061
28062 2007-01-02  Bruno Haible  <bruno@clisp.org>
28063
28064         * modules/settime (Include): Require timespec.h.
28065         * modules/nanosleep (Include): Likewise.
28066
28067 2007-01-01  Bruno Haible  <bruno@clisp.org>
28068
28069         * gnulib-tool (func_emit_copyright_notice): Bump year.
28070         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
28071
28072 2007-01-01  Bruno Haible  <bruno@clisp.org>
28073
28074         Improve support for OpenBSD.
28075         * build-aux/config.rpath (libname_spec): Export.
28076         (library_names_spec): New variable. Export.
28077         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
28078         library_names_spec from the config.rpath output. Locate shared library
28079         through the name pattern in library_names_spec.
28080
28081 2007-01-01  Eric Blake  <ebb9@byu.net>
28082
28083         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
28084
28085 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
28086
28087         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
28088         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
28089         assume the C locale, and avoid an "eval" that could cause trouble.
28090         Problem with SORT reported by Bob Proulx.
28091
28092         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
28093         Define.  Trivial patch from Henning Nielsen Lund, originally
28094         sent to bug-grep@gnu.org today.
28095
28096 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
28097
28098         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
28099         struct stat.  Problem reported by Henning Nielsen Lund.
28100         * lib/acl.c: Include acl.h first, to check interface.  Don't
28101         bother to include sys/types.h and sys/stat.h again.
28102
28103 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
28104
28105         Import the following change from libc; problem reported by
28106         Sven Verdoolaege.
28107
28108         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
28109
28110         [BZ #1373]
28111         * lib/argp.h: Remove __NTH for __argp_usage inline function.
28112
28113 2006-12-28  Jim Meyering  <jim@meyering.net>
28114
28115         * build-aux/announce-gen: Do not assume that the package
28116         builds any of tar.gz, tar.bz2, and .xdelta files.
28117         Suggestion from Simon Josefsson.
28118
28119 2006-12-28  Simon Josefsson  <simon@josefsson.org>
28120
28121         * modules/announce-gen: New file.
28122
28123 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
28124
28125         * lib/mbchar.h: Just include <wctype.h>; the wctype module
28126         handles its gotchas now.
28127         * lib/mbswidth.c: Likewise.
28128         * lib/wcwidth.h: Likewise.
28129         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
28130         and iswcntrl; the wctype module does this stuff now.
28131         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
28132         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
28133         * modules/mbchar (Depends-on): Add wctype.
28134         * modules/mbswidth (Depends-on): Likewise.
28135         * modules/wcwidth (Depends-on): Likewise.
28136
28137 2006-12-27  Eric Blake  <ebb9@byu.net>
28138
28139         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
28140         module uses more than what <wctype.h> is required to provide.
28141
28142 2006-12-26  Eric Blake  <ebb9@byu.net>
28143
28144         * gnulib-tool (sed_extract_prog): Avoid space-tab.
28145
28146 2006-12-26  Eric Blake  <ebb9@byu.net>
28147
28148         * modules/absolute-header: New module.
28149         * modules/fcntl (Depends-on): Depend on it.
28150         * modules/inttypes (Depends-on): Likewise.
28151         * modules/stdint (Depends-on): Likewise.
28152         * modules/sys_stat (Depends-on): Likewise.
28153         * modules/wctype (Depends-on): Likewise.
28154         * MODULES.html.sh (Support for building libraries and
28155         executables): Document it.
28156
28157 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
28158
28159         * gnulib-tool (SED): Remove, undoing previous change.
28160         The problem was that it broke coreutils on Solaris, because
28161         "sed --posix" leaked into a makefile.
28162         (sed): New alias, if 'alias' and GNU sed.
28163
28164 2006-12-24  Jim Meyering  <jim@meyering.net>
28165
28166         Work around an fchownat bug in glibc-2.4:
28167         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
28168         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
28169         in spite of the -P option.
28170         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
28171         New macros.
28172         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
28173         * modules/openat (Files): Add lib/fchownat.c.
28174         * lib/openat.c (fchownat): Don't define here.  Move to...
28175         * lib/fchownat.c: ...this new file.
28176
28177 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
28178
28179         Fix bug reported by Bruno Haible in
28180         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
28181         where quotearg.c didn't compile on Mac OS X 10.2 because it
28182         lacks <wchar.h> and wint_t.
28183         * lib/wctype_.h (__wctype_wint_t): New type.
28184         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
28185         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
28186         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
28187         Arg is now of type __wctype_wint_t, not wint_t.
28188         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
28189         substitute HAVE_WINT_T.
28190         * modules/wctype (Files): Add m4/wint_t.m4.
28191         (wctype.h): Substitute HAVE_WINT_T.
28192
28193 2006-12-23  Bruno Haible  <bruno@clisp.org>
28194
28195         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
28196
28197 2006-12-23  Bruno Haible  <bruno@clisp.org>
28198
28199         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
28200         S_ISLNK.
28201         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
28202         mingw.
28203
28204 2006-12-22  Bruno Haible  <bruno@clisp.org>
28205
28206         * lib/copy-file.c: Include acl.h.
28207         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
28208         Close the file descriptors only after being done with copy_acl.
28209         * modules/copy-file (Depends-on): Add acl.
28210
28211 2006-12-22  Bruno Haible  <bruno@clisp.org>
28212
28213         * gnulib-tool (SED): New variable.
28214         Use $SED instead of sed everywhere.
28215
28216 2006-12-22  Bruno Haible  <bruno@clisp.org>
28217
28218         * modules/no-c++: New file.
28219         * m4/no-c++.m4: New file.
28220         * MODULES.html.sh (Support for building libraries and executables):
28221         Add no-c++.
28222
28223 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
28224
28225         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
28226         Include <limits.h>, and use its INT_MAX to rewrite the
28227         j loop so that it does not overflow 'int'.  Problem reported by
28228         Ralf Wildenhues in
28229         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
28230         Play it safe by shifting left by 1 rather than multiplying by 2,
28231         as GCC is less likely to optimize this away when the value
28232         is signed (when it assumes overflow leads to undefined behavior).
28233         Also, don't assume time_t uses two's complement.
28234
28235 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
28236
28237         * MODULES.html.sh: New module wctype.
28238         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
28239         * lib/fnmatch.c: Don't bother to include <wchar.h> before
28240         <wctype.h>, since the new wctype module should fix this.
28241         * lib/quotearg.c: Include <wctype.h> unconditionally, since
28242         the wctype module should arrange for it.
28243         * lib/regex_internal.h: Likewise.
28244         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
28245         since the wctype module should handle this now.
28246         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
28247         * modules/fnmatch (Depends-on): Add wctype.
28248         * modules/quotearg (Depends-on): Likewise.
28249         * modules/regex (Depends-on): Likewise.
28250
28251 2006-12-19  Bruno Haible  <bruno@clisp.org>
28252
28253         * lib/strdup.h [C++]: Wrap definitions in extern "C".
28254         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
28255
28256 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28257
28258         * modules/savewd (Depends-on): Fix dependency on fcntl.
28259
28260 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
28261
28262         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
28263         conforms to C99, rather than relying on the user's environment
28264         setting of STDINT_H.
28265
28266 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
28267         and Eric Blake  <ebb9@byu.net>
28268
28269         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
28270         This is more consistent with the other defines here.
28271         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
28272         Port to z/OS.  Problem reported by Paul Gilmartin.
28273         Change local vars to use gl_ prefix rather than ac_.
28274         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
28275         with other defines.
28276         * modules/double-slash-root: New module.
28277         * modules/dirname (Files): Remove m4/double-slash-root.m4.
28278         (Depends-on): Add double-slash-root.
28279         * MODULES.html.sh (File system functions): Mention new module.
28280
28281 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
28282
28283         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
28284         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
28285         This is for the benefit of gzip, which doesn't do i18n.
28286
28287 2006-12-12  Jim Meyering  <jim@meyering.net>
28288
28289         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
28290         Reported by Andreas Schwab <schwab@suse.de>.
28291
28292 2006-12-12  Bruno Haible  <bruno@clisp.org>
28293
28294         Merge these changes.
28295         2006-09-05  Bruno Haible  <bruno@clisp.org>
28296         * lib/iconvme.c (iconv_string): No need to save and restore errno when
28297         iconv_alloc succeeded.
28298         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
28299         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
28300         test for " && dest " at the end - dest is always != NULL there. Call
28301         iconv with 4xNULL arguments initially, to reset the state. Call iconv
28302         with 2xNULL arguments, also to flush the state storage. Handle the
28303         IRIX iconv behaviour. Realloc the final result, to throw away unused
28304         memory.
28305
28306 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
28307
28308         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
28309         and fchmodat unconditionally, since glibc 2.4 has them.
28310         Problem reported by Arkadiusz Miskiewicz.
28311
28312 2006-12-10  Bruno Haible  <bruno@clisp.org>
28313
28314         * gnulib-tool (func_import): Show the include files only for those
28315         modules that are copied and specified.
28316         Reported by Karl Berry.
28317
28318 2006-12-08  Jim Meyering  <jim@meyering.net>
28319
28320         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
28321         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
28322
28323         * build-aux/announce-gen: Add two new options, both optional:
28324         --bootstrap-tools=TOOL_LIST
28325               a comma-separated list of tools, e.g.,
28326               autoconf,automake,bison,gnulib
28327         --gnulib-snapshot-date=DATE
28328               if gnulib is in the bootstrap tool list,
28329               then report this as the snapshot date.
28330               If not specified, use the current date/time.
28331               If you specify a date here, be sure it's UTC.
28332
28333 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28334
28335         * tests/test-argp-2.sh: Fix test to match actual output.
28336         (func_compare): Fix sed script to be portable.
28337
28338 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
28339
28340         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
28341         workaround for this case.  It is not autoconfigured now; offhand
28342         it's hard to see how to autoconfigure it.
28343
28344 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
28345
28346         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
28347         a directory that is about to be chowned.  Such a directory's
28348         initial file permissions should permit the owner only and this
28349         should not be changed until after the chown, since the group and
28350         other bits would be incorrect if they granted permission before
28351         the chown.
28352
28353         Fix porting problem for iswctype reported by Georg Schwarz in:
28354         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
28355         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
28356         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
28357         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
28358         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
28359
28360 2006-12-03  Jim Meyering  <jim@meyering.net>
28361
28362         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
28363         p->fts_statp may not yet be defined.
28364         (fts_read): Instead, set it in the caller, once p->fts_statp is
28365         sure to be defined, and corresponds to a top-level directory.
28366         This bug made du -x fail.  Here's the coreutils test case:
28367         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
28368         Reported by Mike Frysinger.
28369
28370 2006-12-01  Jim Meyering  <jim@meyering.net>
28371
28372         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
28373         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
28374         Reported by Simon Josefsson.
28375
28376 2006-11-30  Jim Meyering  <jim@meyering.net>
28377
28378         * m4/warning.m4: Use the all-permissive copyright notice
28379         recommended by RMS (rather than LGPL).
28380         * m4/vararrays.m4: Likewise.
28381         * m4/flexmember.m4: Likewise.
28382
28383 2006-11-29  Bruno Haible  <bruno@clisp.org>
28384
28385         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
28386         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
28387         using +=.
28388         Reported by Simon Josefsson <simon@josefsson.org>.
28389
28390 2006-11-28  James Youngman <jay@gnu.org>
28391
28392         * README: Advise users that they might find the bug-gnulib@gnu.org
28393         and autotools-announce@gnu.org mailing lists useful.
28394
28395 2006-11-28  Bruno Haible  <bruno@clisp.org>
28396
28397         * m4/ptrdiff_max.m4: Remove file.
28398
28399 2006-11-21  Bruno Haible  <bruno@clisp.org>
28400
28401         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
28402         _AC_COMPUTE_INT.
28403         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
28404         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
28405         _AC_COMPUTE_INT.
28406         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
28407         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
28408         _AC_COMPUTE_INT.
28409         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
28410
28411 2006-11-28  Jim Meyering  <jim@meyering.net>
28412
28413         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
28414         warning from "gcc -Wshadow" about shadowing the builtin.
28415
28416 2006-11-27  Bruno Haible  <bruno@clisp.org>
28417
28418         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
28419         _AC_COMPUTE_INT.
28420         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
28421
28422 2006-11-27  Bruno Haible  <bruno@clisp.org>
28423             Paul Eggert  <eggert@cs.ucla.edu>
28424
28425         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
28426
28427 2006-11-26  Bruno Haible  <bruno@clisp.org>
28428
28429         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
28430         noinst_LTLIBRARIES.
28431
28432 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
28433             Bruno Haible  <bruno@clisp.org>
28434
28435         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
28436         if compiling with "gcc -ansi".
28437
28438 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
28439
28440         Fix some incompatibilities with gcc -ansi -pedantic.
28441         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
28442         if compiling pedantically with GCC, unless it's C99 or later.
28443         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
28444         it mishandles gcc -ansi -pedantic as well.
28445         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
28446         if gcc -pedantic.
28447         * lib/regexec.c (check_node_accept_bytes): Don't use auto
28448         initializers for struct if -pedantic, unless it's C99 or later.
28449
28450 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
28451
28452         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
28453         Don't close an fd more than once. Identical atimes indicate
28454         success, not failure.
28455
28456 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
28457
28458         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
28459
28460 2006-11-23  Jim Meyering  <jim@meyering.net>
28461
28462         * build-aux/announce-gen: New file.  From coreutils.
28463
28464 2006-11-22  Jim Meyering  <jim@meyering.net>
28465
28466         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
28467         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
28468         (fts_read): Use a temporary to narrow the overused st_size member
28469         before using it in a switch statement.  Reported by Matthew Woehlke.
28470
28471         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
28472         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
28473
28474 2006-11-20  Bruno Haible  <bruno@clisp.org>
28475
28476         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
28477         changequote instead of pairs of brackets.
28478         Reported by Andreas Schwab <schwab@suse.de>.
28479
28480 2006-11-21  Jim Meyering  <jim@meyering.net>
28481
28482         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
28483         so as to remain compatible with older compilers.
28484         Patch from Michael Deutschmann.
28485
28486 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
28487
28488         * MODULES.html.sh (File system functions): Add openat.
28489
28490         * lib/openat.h (rpl_fstatat): New macro, if
28491         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
28492         (fstatat): Define to rpl_fstatat under the same conditions,
28493         unless COMPILING_FSTATAT.
28494         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
28495         seems to have the bug.
28496         * lib/fstatat.c: New file.
28497         * modules/openat (Files): Add it.
28498
28499 2006-11-20  Bruno Haible  <bruno@clisp.org>
28500
28501         * Makefile: New file.
28502
28503 2006-11-20  Jim Meyering  <jim@meyering.net>
28504
28505         The beginnings of syntax-related checks for gnulib.
28506         * lib/Makefile: New file.
28507         * lib/t-idcache: New script.  Ensure that the two halves of
28508         idcache.c stay in sync.
28509
28510         * lib/idcache.c: Adjust comments in user- and group- portions to
28511         be more accurate, and to be consistent with one another.
28512
28513 2006-11-20  Jim Meyering  <jim@meyering.net>
28514
28515         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
28516         continue using the flexible array member (thus, this module performs
28517         half as many malloc calls), with the addition that...
28518         (getgroup, getuser): Consistently record a non-match via an empty
28519         "name" string, and map an empty string match to a NULL return value.
28520         * modules/idcache (Depends-on): Re-add flexmember.
28521
28522         * lib/idcache.c (getuser): Remove all uses of the register keyword.
28523         (getuidbyname, getgroup, getgidbyname): Likewise.
28524
28525         Use cleaner syntax: NULL rather than 0.
28526         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
28527
28528 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
28529
28530         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
28531         It mishandled the case where the group was missing.
28532         Problem reported by Greg Schafer.
28533         * modules/idcache: Likewise.
28534
28535 2006-11-18  Jim Meyering  <jim@meyering.net>
28536
28537         * check-module (%exempt_header): Add exception for some
28538         conditionally-included headers.
28539
28540         * modules/i-ring (Depends-on): Add verify.
28541         (License): Change to LGPL.
28542
28543 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
28544
28545         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
28546         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
28547         and inttostr.h.  Use snprintf rather than uinttostr, so that
28548         LGPLed code doesn't depend on GPLed.
28549
28550 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
28551
28552         * modules/inline (License): Change from GPL to LGPL.
28553
28554 2006-11-17  Jim Meyering  <jim@meyering.net>
28555
28556         * modules/d-type (License): Switch to LGPL.
28557
28558 2006-11-15  Bruno Haible  <bruno@clisp.org>
28559
28560         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
28561
28562 2006-11-15  Eric Blake  <ebb9@byu.net>
28563
28564         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
28565         the module dependency.
28566
28567 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
28568             Bruno Haible  <bruno@clisp.org>
28569
28570         * gnulib-tool (func_create_testdir): Add license consistency check.
28571
28572 2006-11-15  Eric Blake  <ebb9@byu.net>
28573
28574         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
28575         random "(cached)" in configure output.
28576
28577 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28578
28579         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
28580         test for conforming inttypes.h is both announced and cached.
28581
28582         * MODULES.html.sh (seen_modules, seen_files): New variables.
28583         (func_module): Rewrite to use a few less gnulib-tool and sed
28584         invocations.  Avoid a couple of quadratic algorithms for ...
28585         (missed_modules, missed_files): ... these, with ...
28586         (func_append, func_tmpdir): ... these new functions, from
28587         gnulib-tool.  Analogously, install traps for cleanup.
28588
28589         * tests/test-gc.c (main): Remove unused variables.
28590         * tests/test-read-file.c: Include stdlib.h, for 'free'.
28591
28592 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
28593
28594         * modules/inttostr (License): Change to LGPL.
28595
28596 2006-11-14  Eric Blake  <ebb9@byu.net>
28597
28598         * modules/tempname (License): Change to LGPL.
28599
28600 2006-11-14  Eric Blake  <ebb9@byu.net>
28601
28602         * doc/functions.texi (Function Portability): *printf functions on
28603         Cygwin now understand all POSIX size specifiers.
28604
28605 2006-11-14  Bruno Haible  <bruno@clisp.org>
28606
28607         * modules/c-ctype (License): Change to LGPL.
28608
28609 2006-11-12  Bruno Haible  <bruno@clisp.org>
28610
28611         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
28612         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
28613         for GNOME libraries, for which the include files are installed in
28614         subdirectories of $prefix/include.
28615
28616 2006-11-12  Bruno Haible  <bruno@clisp.org>
28617
28618         * m4/lib-link.m4: Require at least autoconf-2.54.
28619         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
28620         name to underscores for the --with option.
28621
28622 2006-11-13  Bruno Haible  <bruno@clisp.org>
28623
28624         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
28625         the tests directory.
28626         Reported by Ralf Wildenhues.
28627
28628 2006-11-13  Bruno Haible  <bruno@clisp.org>
28629
28630         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
28631         (func_emit_initmacro_end): Undo the override here.
28632         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
28633         Works around the famous automake error in coreutils.
28634
28635 2006-11-13  Eric Blake  <ebb9@byu.net>
28636
28637         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
28638         element, not its node.
28639
28640 2006-11-12  Bruno Haible  <bruno@clisp.org>
28641
28642         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
28643         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
28644
28645 2006-11-12  Bruno Haible  <bruno@clisp.org>
28646
28647         * gnulib-tool: New option --local-symlink.
28648         (func_usage): Document it.
28649         (lsymbolic): New variable.
28650         (func_import, func_create_testdir): If --symlink was not specified,
28651         test whether --local-symlink was specified and the file comes from
28652         the local_gnulib_dir.
28653
28654 2006-11-12  Bruno Haible  <bruno@clisp.org>
28655
28656         * gnulib-tool (func_ln): New function.
28657         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
28658
28659 2006-11-12  Bruno Haible  <bruno@clisp.org>
28660
28661         Finish support for source files in subdirectories.
28662         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
28663         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
28664         AUTOMAKE_OPTIONS.
28665         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
28666
28667 2006-11-12  Bruno Haible  <bruno@clisp.org>
28668
28669         * gnulib-tool (func_get_automake_snippet): Synthesize also an
28670         EXTRA_lib_SOURCES augmentation.
28671         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
28672
28673 2006-11-12  Jim Meyering  <jim@meyering.net>
28674
28675         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
28676         file descriptors.  This also averts a failure on systems with
28677         native openat support when a traversed directory lacks "x" access.
28678         * lib/fts_.h: Include "i-ring.h"
28679         (struct FTS) [fts_fd_ring]: New member.
28680         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
28681         (FCHDIR): Add parentheses.
28682         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
28683         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
28684         When descending, rather than simply closing the previous
28685         fts_cwd_fd value, push that file descriptor onto the ring.
28686         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
28687         (fts_open): Initialize the new fd_ring member.
28688         (fts_close): Clear the ring.
28689         (fts_safe_changedir): When possible, use our new fd_ring to skip
28690         the diropen and fstat and dev/ino comparison that would normally
28691         accompany a virtual `chdir ("..")'.
28692
28693         * modules/fts (Depends-on): Add i-ring.
28694         * modules/i-ring: New module.
28695         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
28696         * m4/i-ring.m4: New file.
28697
28698 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28699
28700         * gnulib-tool (func_create_testdir): Fix replacement of
28701         `build-aux' in configure.ac.  Run autotools in gltests
28702         subdirectory.
28703         (func_create_testdir, func_create_megatestdir, test): There is
28704         no need for '--force' in most autotool invocations in a new
28705         tree.  Actually fail the whole test if any of the tools, or the
28706         configure or make stages fail.
28707
28708         Sync from Automake.
28709         * build-aux/gnupload: Revert last change.  Add pointer to upload
28710         instructions of the GNU Maintenance Instructions.
28711         Suggestion by Karl Berry.
28712
28713 2006-11-10  Jim Meyering  <jim@meyering.net>
28714
28715         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
28716
28717 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
28718
28719         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
28720         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
28721         (bind_textdomain_codeset) [! ENABLE_NLS]:
28722         Evaluate all the arguments.  That way, callers get compatible behavior
28723         if the arguments have side effects.  Also, it avoids some GCC
28724         diagnostics in some cases; Joel E. Denny reported problems when Bison
28725         was configured with --enable-gcc-warnigs.
28726
28727 2006-11-10  Jim Meyering  <jim@meyering.net>
28728
28729         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
28730         relevant options in CFLAGS (like -O, -fno-inline) are taken into
28731         account.
28732
28733 2006-11-10  Jim Meyering  <jim@meyering.net>
28734
28735         * modules/inline: New file/module.
28736         * modules/xalloc (Files): Remove m4/inline.m4.
28737         (Depends-on): Add inline, instead.
28738         * modules/oset: Likewise.
28739         * modules/list: Likewise.
28740
28741 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
28742
28743         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
28744         Problem reported by Matthew Woehlke.
28745
28746 2006-11-09  Bruno Haible  <bruno@clisp.org>
28747
28748         * lib/tempname.c (gen_tempname): Remove variant that invokes
28749         __gen_tempname.
28750         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
28751         __gen_tempname.
28752
28753 2006-11-08  Bruno Haible  <bruno@clisp.org>
28754
28755         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
28756         to 'yes' instead of 'cross-compiling'.
28757
28758 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
28759
28760         * lib/quotearg.h (quotearg_free): New decl.
28761         * lib/quotearg.c (quotearg_free): New function.
28762         (slot0, nslots, slotvec0, slotvec):
28763         Now file-scope so that quotearg_free can get at them.
28764
28765 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28766
28767         Sync from Automake.
28768         * build-aux/gnupload: Add missing 'gnu' to example URL.
28769         Report by Karl Berry.
28770
28771 2006-11-08  Bruno Haible  <bruno@clisp.org>
28772
28773         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
28774         Suggested by Paul Eggert.
28775
28776 2006-11-08  Jim Meyering  <jim@meyering.net>
28777
28778         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
28779         It's already included if !_LIBC.
28780         (fts_safe_changedir): Add a comment.
28781
28782 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
28783
28784         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
28785         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
28786         Matthew Woehlke.
28787
28788         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
28789         definitions up, to avoid colliding with change below.
28790         (static_inline) [HAVE_INLINE]: New macro.
28791         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
28792         Provide extern decls when !HAVE_INLINE.  Do not define unless
28793         static_inline is defined, either by us or by xmalloc.c.  Use
28794         static_inline rather than static inline.
28795         (XCALLOC): Optimize sizeof(T) = 1 case.
28796         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
28797
28798 2006-11-07  Bruno Haible  <bruno@clisp.org>
28799
28800         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
28801         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
28802         AC_C_INLINE.
28803         * modules/xalloc (Files): Add m4/inline.m4.
28804
28805 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28806
28807         * README: Fix typo.
28808         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
28809         (Miscellanous Notes): ...from this.
28810
28811 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
28812
28813         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
28814         Mention that offsetof should be used instead of sizeof.
28815         From Bruno Haible.
28816
28817 2006-11-07  Bruno Haible  <bruno@clisp.org>
28818
28819         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
28820
28821 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
28822
28823         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
28824         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
28825         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
28826         (gl_tree_add_before, gl_tree_add_after):
28827         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
28828         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
28829         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
28830         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
28831         (gl_linked_add_after, gl_linked_add_at): Likewise.
28832         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
28833         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
28834         (gl_tree_add_before, gl_tree_add_after): Likewise.
28835         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
28836         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
28837         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
28838
28839 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28840
28841         * lib/gl_oset.h: Use C comment style, not C++ comment style.
28842
28843 2006-11-06  Bruno Haible  <bruno@clisp.org>
28844
28845         * m4/inline.m4: New file.
28846         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
28847         * modules/list (Files): Add m4/inline.m4.
28848         * modules/oset (Files): Likewise.
28849
28850 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
28851
28852         * lib/idcache.c: Include <stddef.h>, for offsetof.
28853         (struct userid.name): Change from char * to a flexible array member.
28854         All uses changed.
28855         * modules/idcache (Depends-on): Add flexmember.
28856
28857         * MODULES.html.sh (Core language properties): New module flexmember.
28858         * modules/flexmember, m4/flexmember.m4: New files.
28859
28860         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
28861         inline functions that are identical with the old xnmalloc_inline,
28862         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
28863         that we can avoid some unnecessary integer multiplications and
28864         divisions in the common case where the element size is known at
28865         compile time.
28866         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
28867         needed.
28868         (xnboundedmalloc): Remove.
28869         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
28870         arguments, for consistency with rest of this header.
28871         (xcharalloc): Rewrite using XNMALLOC.
28872         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
28873         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
28874         versions have been moved to lib/xalloc.h and renamed to be the
28875         non-*_inline versions.
28876         (xmalloc, xrealloc): Implement without reference to the xnmalloc
28877         and xnrealloc functions, since those functions are now inline and
28878         now call us.
28879         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
28880         renaming described above.
28881         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
28882         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
28883         captures the dependency in AC_C_INLINE.
28884
28885         New module canonicalize-lgpl, proposed by Charles Wilson in
28886         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
28887         with a few small changes afterwards.
28888         * MODULES.html.sh (File system functions): New module
28889         canonicalize-lgpl.
28890         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
28891         and canonicalize_file_name.
28892         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
28893         * modules/canonicalize-lgpl: New files.
28894
28895 2006-11-05  Bruno Haible  <bruno@clisp.org>
28896
28897         * gnulib-tool (func_import, func_create_testdir): Create directories
28898         also for files in subdirectories of lib/.
28899
28900 2006-11-05  Bruno Haible  <bruno@clisp.org>
28901
28902         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
28903         ANSI C compliant.
28904
28905 2006-11-03  Bruno Haible  <bruno@clisp.org>
28906
28907         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
28908         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
28909         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
28910         (xnboundedmalloc): New inline function.
28911         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
28912         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
28913         xmalloc.
28914         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
28915         xmalloc.
28916         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
28917         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
28918         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
28919         xmalloc.
28920         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
28921         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
28922         xmalloc.
28923         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
28924         gl_tree_add_after): Use XMALLOC instead of xmalloc.
28925         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
28926         xmalloc.
28927         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
28928         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
28929         gl_tree_add_after): Use XMALLOC instead of xmalloc.
28930         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
28931         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
28932         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
28933         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
28934
28935 2006-11-03  Bruno Haible  <bruno@clisp.org>
28936
28937         * lib/c-ctype.h [C++]: Define functions without name mangling.
28938         * lib/fwriteerror.h [C++]: Likewise.
28939         * lib/gcd.h [C++]: Likewise.
28940         * lib/linebreak.h [C++]: Likewise.
28941
28942 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
28943
28944         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
28945         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
28946         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
28947         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
28948         Check for functions and headers just once.
28949         Check for declaration of canonicalize_file_name.
28950         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
28951
28952 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
28953
28954         * gnulib-tool (func_import): Fix typo in actioncmd.
28955
28956 2006-11-02  Bruno Haible  <bruno@clisp.org>
28957
28958         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
28959         newline sequence in the Makefile.am snippet as a space, like "make"
28960         does.
28961         Reported by Roger Persson <perrog@gmail.com>.
28962
28963 2006-11-01  Bruno Haible  <bruno@clisp.org>
28964
28965         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
28966         already declared in <string.h>.
28967         * lib/strcase.h (strncasecmp): Don't declare it if yes.
28968
28969 2006-11-01  Bruno Haible  <bruno@clisp.org>
28970
28971         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
28972         * lib/strcase.h: Include <string.h>.
28973         (strcasecmp): Define to rpl_strcasecmp here.
28974
28975 2006-11-01  Bruno Haible  <bruno@clisp.org>
28976
28977         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
28978
28979 2006-11-01  Eric Blake  <ebb9@byu.net>
28980
28981         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
28982
28983         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
28984
28985 2006-10-29  Bruno Haible  <bruno@clisp.org>
28986
28987         Make it compile in C++ mode.
28988         * lib/full-write.c (full_rw): Add a cast.
28989
28990 2006-11-01  Bruno Haible  <bruno@clisp.org>
28991
28992         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
28993         be POSIX compliant.
28994         Reported by Roger Persson <perrog@gmail.com>.
28995
28996 2006-11-01  Eric Blake  <ebb9@byu.net>
28997
28998         * lib/getopt_.h: Fix comments.
28999
29000 2006-10-31  Eric Blake  <ebb9@byu.net>
29001
29002         * modules/tmpdir (Depends-on): Add sys_stat.
29003         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
29004         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
29005         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
29006         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
29007         tempname.
29008
29009 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
29010
29011         Avoid some C++ diagnostics reported by Bruno Haible.
29012         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
29013         xmalloc.
29014         (quotearg_alloc): Use xcharalloc rather than xmalloc.
29015         (struct slotvec): Move to top level.
29016         (quotearg_n_options): Rewrite to avoid xmalloc.
29017         * lib/xalloc.h (xcharalloc): New function.
29018         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
29019         [defined __cplusplus]: Add function template that provides result
29020         type propagation.  This part of the change is from Bruno Haible.
29021
29022 2006-10-29  Bruno Haible  <bruno@clisp.org>
29023
29024         Make it compile in C++ mode.
29025         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
29026         * lib/strnlen1.c (strnlen1): Cast memchr result.
29027         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
29028         * lib/clean-temp.c (string_equals, string_hash): Add casts.
29029         (create_temp_dir): Rename local variable 'template'.
29030         (compile_csharp_using_sscli): Add cast.
29031         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
29032         * lib/findprog.c (find_in_path): Likewise.
29033         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
29034         * lib/wait-process.c (register_slave_subprocess): Likewise.
29035
29036 2006-10-22  Bruno Haible  <bruno@clisp.org>
29037
29038         * modules/tsearch: New file.
29039         * lib/tsearch.h: New file.
29040         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
29041         * m4/tsearch.m4: New file.
29042         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
29043
29044 2006-10-29  Eric Blake  <ebb9@byu.net>
29045
29046         * lib/arcfour.c: Assume config.h.
29047         * lib/arctwo.c: Likewise.
29048         * lib/base64.c: Likewise.
29049         * lib/check-version.c: Likewise.
29050         * lib/crc.c: Likewise.
29051         * lib/des.c: Likewise.
29052         * lib/gc-gnulib.c: Likewise.
29053         * lib/gc-libgcrypt.c: Likewise.
29054         * lib/gc-pbkdf2-sha1.c: Likewise.
29055         * lib/getaddrinfo.c: Likewise.
29056         * lib/getdelim.c: Likewise.
29057         * lib/getline.c: Likewise.
29058         * lib/hmac-md5.c: Likewise.
29059         * lib/hmac-sha1.c: Likewise.
29060         * lib/iconvme.c: Likewise.
29061         * lib/md2.c: Likewise.
29062         * lib/md4.c: Likewise.
29063         * lib/memxor.c: Likewise.
29064         * lib/read-file.c: Likewise.
29065         * lib/readline.c: Likewise.
29066         * lib/rijndael-alg-fst.c: Likewise.
29067         * lib/rijndael-api-fst.c: Likewise.
29068         * lib/xgetdomainname.c: Likewise.
29069
29070 2006-10-28  Eric Blake  <ebb9@byu.net>
29071
29072         * lib/xstrndup.c: Assume config.h.
29073
29074 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
29075
29076         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
29077         stat-macros.h is now for our own macros, whereas stat_h is for
29078         macros in the <sys/stat.h> name space.
29079         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
29080         (STAT_MACROS_H): Remove.
29081         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
29082         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
29083         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
29084         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
29085         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
29086         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
29087         Move these macros to ...
29088         * lib/stat_.h: here.  Don't include stat-macros.h.
29089         * lib/canonicalize.c: Don't include stat-macros.h.
29090         * lib/chown.c: Likewise.
29091         * lib/euidaccess.c: Likewise.
29092         * lib/file-type.c: Likewise.
29093         * lib/filemode.c: Likewise.
29094         * lib/glob.c: Likewise.
29095         * lib/isapipe.c: Likewise.
29096         * lib/lchown.c: Likewise.
29097         * lib/lstat.c: Likewise.
29098         * lib/mkdir-p.c: Likewise.
29099         * lib/rmdir.c: Likewise.
29100         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
29101         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
29102         unless mkdir isn't declared, to speed up 'configure'.
29103         Always create sys/stat.h, since it's unlikely any real sys/stat.h
29104         would define all the S_* symbols.
29105         * modules/canonicalize (Depends-on):
29106         Depend on sys_stat, not stat-macros.
29107         * modules/chown: Likewise.
29108         * modules/euidaccess: Likewise.
29109         * modules/filemode: Likewise.
29110         * modules/file-type: Likewise.
29111         * modules/glob: Likewise.
29112         * modules/isapipe: Likewise.
29113         * modules/lchown: Likewise.
29114         * modules/lstat: Likewise.
29115         * modules/mkancesdirs: Likewise.
29116         * modules/rmdir: Likewise.
29117         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
29118         * modules/modechange: Likewise.
29119         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
29120         (configure.ac): Remove gl_STAT_MACROS.
29121         * modules/sys_stat (Depends-on): Remove stat-macros.
29122
29123 2006-10-27  Bruno Haible  <bruno@clisp.org>
29124
29125         * m4/signed.m4: Remove file.
29126         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
29127         invocation.
29128         * modules/vasnprintf (Files): Remove m4/signed.m4.
29129
29130 2006-10-27  Bruno Haible  <bruno@clisp.org>
29131
29132         Update to GNU gettext 0.16.
29133         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
29134         m4/inttypes-h.m4, m4/signed.m4.
29135         * m4/gettext.m4: Update to GNU gettext 0.16.
29136         * m4/intl.m4: New file, from GNU gettext.
29137         * m4/intldir.m4: New file, from GNU gettext.
29138         * config/srclist.txt: Update
29139
29140 2006-10-27  Eric Blake  <ebb9@byu.net>
29141
29142         * MODULES.html.sh: Document tempname.
29143         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
29144         dependencies.
29145         (Files): Move lib/tempname.c...
29146         * modules/tempname: ...to this new module.
29147         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
29148         (gl_PREREQ_TEMPNAME): Move...
29149         * m4/tempname.m4: ...to this new file.
29150         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
29151         * modules/sys_stat (Depends-on): Add stat-macros.
29152         * lib/stat_.h (includes): Pick up stat macros.
29153         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
29154         if stat macros are broken.
29155         * lib/tempname.c (includes): No need to include "stat-macros.h".
29156         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
29157         (direxists, __path_search) [!_LIBC]: Don't compile these in
29158         gnulib; the tmpdir module covers that.
29159         * lib/tempname.h: New file.
29160
29161 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
29162
29163         * COPYING: Explain how gnulib-tool converts licence headers.
29164         Almost all wording by Eric Blake.
29165
29166 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
29167
29168         * lib/mbchar.h (is_basic_table): Make read-only.
29169         * lib/mbchar.c (is_basic_table): Likewise.
29170         Reported by John Darrington.
29171
29172 2006-10-25  Bruno Haible  <bruno@clisp.org>
29173
29174         * lib/progname.h (set_program_name): Undefine before defining.
29175
29176 2006-10-25  Bruno Haible  <bruno@clisp.org>
29177
29178         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
29179         false for non-gcc C++ compilers.
29180         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
29181
29182 2006-10-24  Bruno Haible  <bruno@clisp.org>
29183
29184         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
29185         iconv implementations like Irix iconv.
29186
29187 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
29188
29189         * modules/vararrays: New file.
29190         * m4/vararrays.m4: New file, taken from diffutils.
29191         * MODULES.html.sh: New module vararrays.
29192
29193 2006-10-24  Karl Berry  <karl@gnu.org>
29194
29195         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
29196         Don't call GNU Unix.
29197
29198 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29199
29200         * users.txt: Add Libtool.
29201
29202         Sync from Libtool:
29203
29204         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
29205
29206         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
29207         to gnulib's policy of including config.h unconditionally.
29208
29209 2006-10-24  Bruno Haible  <bruno@clisp.org>
29210
29211         * modules/wcwidth (Files): Add m4/wint_t.m4.
29212         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
29213         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
29214
29215 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
29216
29217         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
29218         to pacify GCC with some -W flags enabled.  Problem reported by
29219         Bruno Haible.
29220
29221 2006-10-24  Jim Meyering  <jim@meyering.net>
29222
29223         * MODULES.html.sh: Remove uinttostr.  It's not a module.
29224         Reported by Karl Berry.
29225
29226 2006-10-23  Bruno Haible  <bruno@clisp.org>
29227
29228         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
29229
29230 2006-10-24  Bruno Haible  <bruno@clisp.org>
29231
29232         * lib/gl_list.h: Use C comment style, not C++ comment style.
29233
29234 2006-10-23  Eric Blake  <ebb9@byu.net>
29235
29236         * lib/getaddrinfo.c (includes): Add missing include.
29237
29238 2006-10-23  Bruno Haible  <bruno@clisp.org>
29239             Paul Eggert  <eggert@cs.ucla.edu>
29240
29241         Ability to rename obstack_free.
29242         * lib/obstack.h (__obstack_free): New macro. Declare instead of
29243         obstack_free.
29244         (obstack_free): Invoke the __obstack_free macro.
29245         * lib/obstack.c (obstack_free): Use __obstack_free macro.
29246
29247 2006-10-23  Bruno Haible  <bruno@clisp.org>
29248             Paul Eggert  <eggert@cs.ucla.edu>
29249
29250         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
29251         __argc, __argv from the declaration. (They are defined as macros on
29252         mingw.)
29253
29254 2006-10-22  Bruno Haible  <bruno@clisp.org>
29255
29256         * doc/gnulib-intro.texi: New file.
29257         * doc/gnulib.texi: Include it.
29258
29259 2006-10-21  Bruno Haible  <bruno@clisp.org>
29260
29261         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
29262         "Introduction", "Miscellanous Notes", "Particular Modules".
29263
29264 2006-10-21  Bruno Haible  <bruno@clisp.org>
29265
29266         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
29267         Change mostlyclean-local rule to avoid sh syntax error from bash
29268         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
29269
29270 2006-10-23  Jim Meyering  <jim@meyering.net>
29271
29272         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
29273         in place of snprintf.
29274
29275         * modules/inttostr (Files): Add lib/uinttostr.c.
29276         * lib/uinttostr.c (inttostr): New file/function.
29277         * lib/inttostr.h (uinttostr): Declare.
29278         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
29279         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
29280         Add uinttostr.
29281         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
29282
29283 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
29284
29285         * lib/canonicalize.c (ELOOP): Define if not already defined.
29286         Problem reported by Bruno Haible in
29287         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
29288
29289 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
29290
29291         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
29292         Problem reported by Perry Smith and Ville Laurikari.
29293
29294         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
29295         uses.
29296
29297 2006-10-19  Bruno Haible  <bruno@clisp.org>
29298
29299         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
29300         for mingw.
29301
29302 2006-10-19  Bruno Haible  <bruno@clisp.org>
29303
29304         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
29305         Needed for mingw.
29306
29307 2006-10-19  Bruno Haible  <bruno@clisp.org>
29308
29309         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
29310
29311 2006-10-19  Bruno Haible  <bruno@clisp.org>
29312
29313         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
29314         it.
29315
29316 2006-10-19  Bruno Haible  <bruno@clisp.org>
29317
29318         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
29319         invocation.
29320
29321 2006-10-19  Bruno Haible  <bruno@clisp.org>
29322
29323         * gnulib-tool (func_create_testdir): Don't include ftruncate and
29324         mountlist by default.
29325
29326 2006-10-16  Bruno Haible  <bruno@clisp.org>
29327
29328         * lib/c-strstr.c: Include c-strstr.h.
29329
29330 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
29331
29332         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
29333         in a slash.
29334
29335 2006-10-18  Bruno Haible  <bruno@clisp.org>
29336
29337         * lib/lock.h [C++]: Wrap definitions in extern "C".
29338
29339 2006-10-18  Bruno Haible  <bruno@clisp.org>
29340
29341         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
29342         gl_LIBOBJS list.
29343
29344 2006-10-18  Bruno Haible  <bruno@clisp.org>
29345
29346         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
29347
29348 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
29349
29350         * lib/xstrtol.h: Include gettext.h.
29351         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
29352         Problem reported by Eric Blake.
29353         * modules/xstrtol (Depends-on): Add gettext-h.
29354
29355 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
29356
29357         * lib/strftime.c (advance): New macro.
29358         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
29359         incomplete type, so you can't add 0 to it.  Problem and patch
29360         reported by Eelco Dolstra for dietlibc.
29361
29362 2006-10-18  Jim Meyering  <jim@meyering.net>
29363
29364         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
29365         type for a local, and rename it: s/up/user_proc/.
29366
29367 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
29368
29369         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
29370         READ_UTMP_USER_PROCESS.
29371         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
29372
29373 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
29374
29375         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
29376         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
29377
29378 2006-10-17  Eric Blake  <ebb9@byu.net>
29379
29380         * lib/sigprocmask.c (sigprocmask): Fix typo.
29381
29382         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
29383
29384         * modules/clean-temp (Makefile.am): Don't add to make output...
29385         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
29386         config.h.
29387
29388 2006-10-17  Bruno Haible  <bruno@clisp.org>
29389
29390         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
29391         differently if DEFAULT_TEXT_DOMAIN is set.
29392
29393 2006-10-16  Bruno Haible  <bruno@clisp.org>
29394
29395         * lib/clean-temp.c: Include fwriteerror.h.
29396
29397 2006-10-16  Bruno Haible  <bruno@clisp.org>
29398
29399         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
29400
29401 2006-10-16  Bruno Haible  <bruno@clisp.org>
29402
29403         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
29404         * lib/sigprocmask.h: Include <sys/types.h>.
29405         (sigset_t): Use the system's definition if present.
29406
29407 2006-10-17  Eric Blake  <ebb9@byu.net>
29408
29409         * lib/xvasprintf.c (includes): Assume config.h.
29410         * lib/xasprintf.c (includes): Likewise.
29411
29412 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
29413
29414         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
29415         at least as wide as intmax_t.
29416
29417 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
29418
29419         (Imported from Automake.)
29420         * build-aux/gnupload: Update to version 1.1 of directive file.
29421
29422 2006-10-16  Eric Blake  <ebb9@byu.net>
29423
29424         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
29425         match Automake 1.10a.
29426
29427 2006-10-14  Bruno Haible  <bruno@clisp.org>
29428
29429         * modules/sigprocmask: New file.
29430         * lib/sigprocmask.h: New file.
29431         * lib/sigprocmask.c: New file.
29432         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
29433         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
29434         request sigprocmask.o.
29435         (gl_PREREQ_SIGPROCMASK): New macro.
29436         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
29437         (Depends-on): Add sigprocmask.
29438         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
29439         gt_SIGNALBLOCKING. Test for 'raise' only once.
29440         * lib/fatal-signal.c: Include sigprocmask.h.
29441         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
29442         unblock_fatal_signals): Define always.
29443         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
29444         sigprocmask.
29445
29446 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
29447
29448         Sync from Automake.
29449         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
29450         which incorrectly sets the mode of an existing destination
29451         directory.  In some cases the unpatched install-sh could do the
29452         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
29453         system.  We hope this is rare in practice, but it's clearly worth
29454         fixing.  Problem reported by Alex Unleashed in
29455         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
29456         Also, don't bother to check for -m bugs unless we're using -m;
29457         suggested by Stepan Kasal.
29458
29459 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29460
29461         Sync from Automake.
29462         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
29463         `-c' flag, so they appear at the same position as in %FASTDEP%
29464         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
29465         which ignores unknown options only after the first non-option.
29466         Bug report against M4 by Nelson H. F. Beebe.
29467
29468 2006-10-13  Jim Meyering  <jim@meyering.net>
29469
29470         Fix a bug in yesterday's change.
29471         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
29472         p->fts_statp->st_dev would be used uninitialized.
29473         Ensures that we always call fts_stat on the very first entry.
29474         Miklos Szeredi reported that find -xdev stopped working.
29475
29476 2006-10-12  Bruno Haible  <bruno@clisp.org>
29477
29478         * gnulib-tool (func_get_automake_snippet): Append an automatically
29479         computed EXTRA_DIST augmentation.
29480         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
29481         * modules/alloca-opt (Makefile.am): Likewise.
29482         * modules/allocsa (Makefile.am): Likewise.
29483         * modules/arcfour (Makefile.am): Likewise.
29484         * modules/arctwo (Makefile.am): Likewise.
29485         * modules/argmatch (Makefile.am): Likewise.
29486         * modules/argz (Makefile.am): Likewise.
29487         * modules/atexit (Makefile.am): Likewise.
29488         * modules/backupfile (Makefile.am): Likewise.
29489         * modules/byteswap (Makefile.am): Likewise.
29490         * modules/c-strtod (Makefile.am): Likewise.
29491         * modules/c-strtold (Makefile.am): Likewise.
29492         * modules/calloc (Makefile.am): Likewise.
29493         * modules/canon-host (Makefile.am): Likewise.
29494         * modules/canonicalize (Makefile.am): Likewise.
29495         * modules/chdir-long (Makefile.am): Likewise.
29496         * modules/chdir-safer (Makefile.am): Likewise.
29497         * modules/check-version (Makefile.am): Likewise.
29498         * modules/chown (Makefile.am): Likewise.
29499         * modules/cloexec (Makefile.am): Likewise.
29500         * modules/close-stream (Makefile.am): Likewise.
29501         * modules/closeout (Makefile.am): Likewise.
29502         * modules/crc (Makefile.am): Likewise.
29503         * modules/csharpexec (Makefile.am): Likewise.
29504         * modules/cycle-check (Makefile.am): Likewise.
29505         * modules/des (Makefile.am): Likewise.
29506         * modules/dev-ino (Makefile.am): Likewise.
29507         * modules/dirfd (Makefile.am): Likewise.
29508         * modules/dirname (Makefile.am): Likewise.
29509         * modules/dup2 (Makefile.am): Likewise.
29510         * modules/eealloc (Makefile.am): Likewise.
29511         * modules/error (Makefile.am): Likewise.
29512         * modules/euidaccess (Makefile.am): Likewise.
29513         * modules/exclude (Makefile.am): Likewise.
29514         * modules/exitfail (Makefile.am): Likewise.
29515         * modules/fcntl-safer (Makefile.am): Likewise.
29516         * modules/fcntl (Makefile.am): Likewise.
29517         * modules/file-type (Makefile.am): Likewise.
29518         * modules/fileblocks (Makefile.am): Likewise.
29519         * modules/filemode (Makefile.am): Likewise.
29520         * modules/filenamecat (Makefile.am): Likewise.
29521         * modules/fnmatch (Makefile.am): Likewise.
29522         * modules/fopen-safer (Makefile.am): Likewise.
29523         * modules/fpending (Makefile.am): Likewise.
29524         * modules/fprintftime (Makefile.am): Likewise.
29525         * modules/free (Makefile.am): Likewise.
29526         * modules/fsusage (Makefile.am): Likewise.
29527         * modules/ftruncate (Makefile.am): Likewise.
29528         * modules/fts (Makefile.am): Likewise.
29529         * modules/gc-arcfour (Makefile.am): Likewise.
29530         * modules/gc-des (Makefile.am): Likewise.
29531         * modules/gc-hmac-md5 (Makefile.am): Likewise.
29532         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
29533         * modules/gc-md4 (Makefile.am): Likewise.
29534         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
29535         * modules/gc-sha1 (Makefile.am): Likewise.
29536         * modules/gc (Makefile.am): Likewise.
29537         * modules/getaddrinfo (Makefile.am): Likewise.
29538         * modules/getcwd (Makefile.am): Likewise.
29539         * modules/getdelim (Makefile.am): Likewise.
29540         * modules/getdomainname (Makefile.am): Likewise.
29541         * modules/getgroups (Makefile.am): Likewise.
29542         * modules/gethostname (Makefile.am): Likewise.
29543         * modules/gethrxtime (Makefile.am): Likewise.
29544         * modules/getline (Makefile.am): Likewise.
29545         * modules/getloadavg (Makefile.am): Likewise.
29546         * modules/getlogin_r (Makefile.am): Likewise.
29547         * modules/getndelim2 (Makefile.am): Likewise.
29548         * modules/getopt (Makefile.am): Likewise.
29549         * modules/getpagesize (Makefile.am): Likewise.
29550         * modules/getpass-gnu (Makefile.am): Likewise.
29551         * modules/getpass (Makefile.am): Likewise.
29552         * modules/getsubopt (Makefile.am): Likewise.
29553         * modules/gettime (Makefile.am): Likewise.
29554         * modules/gettimeofday (Makefile.am): Likewise.
29555         * modules/getugroups (Makefile.am): Likewise.
29556         * modules/getusershell (Makefile.am): Likewise.
29557         * modules/glob (Makefile.am): Likewise.
29558         * modules/group-member (Makefile.am): Likewise.
29559         * modules/hard-locale (Makefile.am): Likewise.
29560         * modules/hash (Makefile.am): Likewise.
29561         * modules/hmac-md5 (Makefile.am): Likewise.
29562         * modules/hmac-sha1 (Makefile.am): Likewise.
29563         * modules/human (Makefile.am): Likewise.
29564         * modules/idcache (Makefile.am): Likewise.
29565         * modules/imaxabs (Makefile.am): Likewise.
29566         * modules/imaxdiv (Makefile.am): Likewise.
29567         * modules/inet_ntop (Makefile.am): Likewise.
29568         * modules/inet_pton (Makefile.am): Likewise.
29569         * modules/intprops (Makefile.am): Likewise.
29570         * modules/inttostr (Makefile.am): Likewise.
29571         * modules/inttypes (Makefile.am): Likewise.
29572         * modules/isapipe (Makefile.am): Likewise.
29573         * modules/javaversion (Makefile.am): Likewise.
29574         * modules/lchmod (Makefile.am): Likewise.
29575         * modules/lchown (Makefile.am): Likewise.
29576         * modules/localcharset (Makefile.am): Likewise.
29577         * modules/long-options (Makefile.am): Likewise.
29578         * modules/lstat (Makefile.am): Likewise.
29579         * modules/malloc (Makefile.am): Likewise.
29580         * modules/mathl (Makefile.am): Likewise.
29581         * modules/mbchar (Makefile.am): Likewise.
29582         * modules/md2 (Makefile.am): Likewise.
29583         * modules/md4 (Makefile.am): Likewise.
29584         * modules/md5 (Makefile.am): Likewise.
29585         * modules/memcasecmp (Makefile.am): Likewise.
29586         * modules/memchr (Makefile.am): Likewise.
29587         * modules/memcmp (Makefile.am): Likewise.
29588         * modules/memcoll (Makefile.am): Likewise.
29589         * modules/memcpy (Makefile.am): Likewise.
29590         * modules/memmem (Makefile.am): Likewise.
29591         * modules/memmove (Makefile.am): Likewise.
29592         * modules/mempcpy (Makefile.am): Likewise.
29593         * modules/memrchr (Makefile.am): Likewise.
29594         * modules/memset (Makefile.am): Likewise.
29595         * modules/memxor (Makefile.am): Likewise.
29596         * modules/mkancesdirs (Makefile.am): Likewise.
29597         * modules/mkdir-p (Makefile.am): Likewise.
29598         * modules/mkdir (Makefile.am): Likewise.
29599         * modules/mkdtemp (Makefile.am): Likewise.
29600         * modules/mkstemp (Makefile.am): Likewise.
29601         * modules/mktime (Makefile.am): Likewise.
29602         * modules/modechange (Makefile.am): Likewise.
29603         * modules/mountlist (Makefile.am): Likewise.
29604         * modules/nanosleep (Makefile.am): Likewise.
29605         * modules/obstack (Makefile.am): Likewise.
29606         * modules/openat (Makefile.am): Likewise.
29607         * modules/pagealign_alloc (Makefile.am): Likewise.
29608         * modules/pathmax (Makefile.am): Likewise.
29609         * modules/physmem (Makefile.am): Likewise.
29610         * modules/poll (Makefile.am): Likewise.
29611         * modules/posixtm (Makefile.am): Likewise.
29612         * modules/posixver (Makefile.am): Likewise.
29613         * modules/putenv (Makefile.am): Likewise.
29614         * modules/quote (Makefile.am): Likewise.
29615         * modules/quotearg (Makefile.am): Likewise.
29616         * modules/raise (Makefile.am): Likewise.
29617         * modules/read-file (Makefile.am): Likewise.
29618         * modules/readline (Makefile.am): Likewise.
29619         * modules/readlink (Makefile.am): Likewise.
29620         * modules/readtokens (Makefile.am): Likewise.
29621         * modules/readutmp (Makefile.am): Likewise.
29622         * modules/realloc (Makefile.am): Likewise.
29623         * modules/regex (Makefile.am): Likewise.
29624         * modules/rename-dest-slash (Makefile.am): Likewise.
29625         * modules/rename (Makefile.am): Likewise.
29626         * modules/rijndael (Makefile.am): Likewise.
29627         * modules/rmdir (Makefile.am): Likewise.
29628         * modules/rpmatch (Makefile.am): Likewise.
29629         * modules/safe-read (Makefile.am): Likewise.
29630         * modules/safe-write (Makefile.am): Likewise.
29631         * modules/same-inode (Makefile.am): Likewise.
29632         * modules/same (Makefile.am): Likewise.
29633         * modules/save-cwd (Makefile.am): Likewise.
29634         * modules/savedir (Makefile.am): Likewise.
29635         * modules/setenv (Makefile.am): Likewise.
29636         * modules/settime (Makefile.am): Likewise.
29637         * modules/sha1 (Makefile.am): Likewise.
29638         * modules/sig2str (Makefile.am): Likewise.
29639         * modules/snprintf (Makefile.am): Likewise.
29640         * modules/stat-macros (Makefile.am): Likewise.
29641         * modules/stat-time (Makefile.am): Likewise.
29642         * modules/stdbool (Makefile.am): Likewise.
29643         * modules/stdint (Makefile.am): Likewise.
29644         * modules/stdlib-safer (Makefile.am): Likewise.
29645         * modules/stpcpy (Makefile.am): Likewise.
29646         * modules/stpncpy (Makefile.am): Likewise.
29647         * modules/strcase (Makefile.am): Likewise.
29648         * modules/strcasestr (Makefile.am): Likewise.
29649         * modules/strchrnul (Makefile.am): Likewise.
29650         * modules/strcspn (Makefile.am): Likewise.
29651         * modules/strdup (Makefile.am): Likewise.
29652         * modules/strerror (Makefile.am): Likewise.
29653         * modules/strftime (Makefile.am): Likewise.
29654         * modules/strndup (Makefile.am): Likewise.
29655         * modules/strnlen (Makefile.am): Likewise.
29656         * modules/strpbrk (Makefile.am): Likewise.
29657         * modules/strsep (Makefile.am): Likewise.
29658         * modules/strstr (Makefile.am): Likewise.
29659         * modules/strtod (Makefile.am): Likewise.
29660         * modules/strtoimax (Makefile.am): Likewise.
29661         * modules/strtok_r (Makefile.am): Likewise.
29662         * modules/strtol (Makefile.am): Likewise.
29663         * modules/strtoll (Makefile.am): Likewise.
29664         * modules/strtoul (Makefile.am): Likewise.
29665         * modules/strtoull (Makefile.am): Likewise.
29666         * modules/strtoumax (Makefile.am): Likewise.
29667         * modules/strverscmp (Makefile.am): Likewise.
29668         * modules/sys_socket (Makefile.am): Likewise.
29669         * modules/sys_stat (Makefile.am): Likewise.
29670         * modules/sysexits (Makefile.am): Likewise.
29671         * modules/time_r (Makefile.am): Likewise.
29672         * modules/timegm (Makefile.am): Likewise.
29673         * modules/timespec (Makefile.am): Likewise.
29674         * modules/tmpfile-safer (Makefile.am): Likewise.
29675         * modules/trim (Makefile.am): Likewise.
29676         * modules/unistd-safer (Makefile.am): Likewise.
29677         * modules/unlinkdir (Makefile.am): Likewise.
29678         * modules/unlocked-io (Makefile.am): Likewise.
29679         * modules/userspec (Makefile.am): Likewise.
29680         * modules/utime (Makefile.am): Likewise.
29681         * modules/utimecmp (Makefile.am): Likewise.
29682         * modules/utimens (Makefile.am): Likewise.
29683         * modules/vasnprintf (Makefile.am): Likewise.
29684         * modules/vasprintf (Makefile.am): Likewise.
29685         * modules/vsnprintf (Makefile.am): Likewise.
29686         * modules/xalloc (Makefile.am): Likewise.
29687         * modules/xgetcwd (Makefile.am): Likewise.
29688         * modules/xnanosleep (Makefile.am): Likewise.
29689         * modules/xreadlink (Makefile.am): Likewise.
29690         * modules/xstrtod (Makefile.am): Likewise.
29691         * modules/xstrtol (Makefile.am): Likewise.
29692         * modules/xstrtold (Makefile.am): Likewise.
29693         * modules/yesno (Makefile.am): Likewise.
29694         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
29695
29696 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
29697
29698         * modules/error (Makefile.am): Distribute files through
29699         EXTRA_DIST, not lib_SOURCES.
29700
29701 2006-10-12  Eric Blake  <ebb9@byu.net>
29702
29703         * modules/error (Makefile.am): Distribute files in /lib.
29704         * modules/obstack (Makefile.am): Likewise.
29705
29706 2006-10-12  Bruno Haible  <bruno@clisp.org>
29707
29708         * modules/acl (Makefile.am): Distribute all files in lib/ through
29709         EXTRA_DIST.
29710         * modules/arcfour (Makefile.am): Likewise.
29711         * modules/arctwo (Makefile.am): Likewise.
29712         * modules/argmatch (Makefile.am): Likewise.
29713         * modules/argz (Makefile.am): Likewise.
29714         * modules/atexit (Makefile.am): Likewise.
29715         * modules/backupfile (Makefile.am): Likewise.
29716         * modules/c-strtod (Makefile.am): Likewise.
29717         * modules/c-strtold (Makefile.am): Likewise.
29718         * modules/calloc (Makefile.am): Likewise.
29719         * modules/canon-host (Makefile.am): Likewise.
29720         * modules/canonicalize (Makefile.am): Likewise.
29721         * modules/chdir-long (Makefile.am): Likewise.
29722         * modules/chdir-safer (Makefile.am): Likewise.
29723         * modules/check-version (Makefile.am): Likewise.
29724         * modules/chown (Makefile.am): Likewise.
29725         * modules/cloexec (Makefile.am): Likewise.
29726         * modules/close-stream (Makefile.am): Likewise.
29727         * modules/closeout (Makefile.am): Likewise.
29728         * modules/crc (Makefile.am): Likewise.
29729         * modules/cycle-check (Makefile.am): Likewise.
29730         * modules/des (Makefile.am): Likewise.
29731         * modules/dirfd (Makefile.am): Likewise.
29732         * modules/dirname (Makefile.am): Likewise.
29733         * modules/dup2 (Makefile.am): Likewise.
29734         * modules/euidaccess (Makefile.am): Likewise.
29735         * modules/exclude (Makefile.am): Likewise.
29736         * modules/exitfail (Makefile.am): Likewise.
29737         * modules/fcntl-safer (Makefile.am): Likewise.
29738         * modules/file-type (Makefile.am): Likewise.
29739         * modules/fileblocks (Makefile.am): Likewise.
29740         * modules/filemode (Makefile.am): Likewise.
29741         * modules/filenamecat (Makefile.am): Likewise.
29742         * modules/fnmatch (Makefile.am): Likewise.
29743         * modules/fopen-safer (Makefile.am): Likewise.
29744         * modules/fpending (Makefile.am): Likewise.
29745         * modules/fprintftime (Makefile.am): Likewise.
29746         * modules/free (Makefile.am): Likewise.
29747         * modules/fsusage (Makefile.am): Likewise.
29748         * modules/ftruncate (Makefile.am): Likewise.
29749         * modules/fts (Makefile.am): Likewise.
29750         * modules/gc (Makefile.am): Likewise.
29751         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
29752         * modules/getaddrinfo (Makefile.am): Likewise.
29753         * modules/getcwd (Makefile.am): Likewise.
29754         * modules/getdelim (Makefile.am): Likewise.
29755         * modules/getdomainname (Makefile.am): Likewise.
29756         * modules/getgroups (Makefile.am): Likewise.
29757         * modules/gethostname (Makefile.am): Likewise.
29758         * modules/gethrxtime (Makefile.am): Likewise.
29759         * modules/getline (Makefile.am): Likewise.
29760         * modules/getloadavg (Makefile.am): Likewise.
29761         * modules/getlogin_r (Makefile.am): Likewise.
29762         * modules/getopt (Makefile.am): Likewise.
29763         * modules/getpass (Makefile.am): Likewise.
29764         * modules/getpass-gnu (Makefile.am): Likewise.
29765         * modules/getsubopt (Makefile.am): Likewise.
29766         * modules/gettime (Makefile.am): Likewise.
29767         * modules/gettimeofday (Makefile.am): Likewise.
29768         * modules/getugroups (Makefile.am): Likewise.
29769         * modules/getusershell (Makefile.am): Likewise.
29770         * modules/glob (Makefile.am): Likewise.
29771         * modules/group-member (Makefile.am): Likewise.
29772         * modules/hard-locale (Makefile.am): Likewise.
29773         * modules/hash (Makefile.am): Likewise.
29774         * modules/hmac-md5 (Makefile.am): Likewise.
29775         * modules/hmac-sha1 (Makefile.am): Likewise.
29776         * modules/human (Makefile.am): Likewise.
29777         * modules/idcache (Makefile.am): Likewise.
29778         * modules/imaxabs (Makefile.am): Likewise.
29779         * modules/imaxdiv (Makefile.am): Likewise.
29780         * modules/inet_ntop (Makefile.am): Likewise.
29781         * modules/inet_pton (Makefile.am): Likewise.
29782         * modules/inttostr (Makefile.am): Likewise.
29783         * modules/isapipe (Makefile.am): Likewise.
29784         * modules/lchown (Makefile.am): Likewise.
29785         * modules/long-options (Makefile.am): Likewise.
29786         * modules/lstat (Makefile.am): Likewise.
29787         * modules/malloc (Makefile.am): Likewise.
29788         * modules/mathl (Makefile.am): Likewise.
29789         * modules/mbchar (Makefile.am): Likewise.
29790         * modules/md2 (Makefile.am): Likewise.
29791         * modules/md4 (Makefile.am): Likewise.
29792         * modules/md5 (Makefile.am): Likewise.
29793         * modules/memcasecmp (Makefile.am): Likewise.
29794         * modules/memchr (Makefile.am): Likewise.
29795         * modules/memcmp (Makefile.am): Likewise.
29796         * modules/memcoll (Makefile.am): Likewise.
29797         * modules/memcpy (Makefile.am): Likewise.
29798         * modules/memmem (Makefile.am): Likewise.
29799         * modules/memmove (Makefile.am): Likewise.
29800         * modules/mempcpy (Makefile.am): Likewise.
29801         * modules/memrchr (Makefile.am): Likewise.
29802         * modules/memset (Makefile.am): Likewise.
29803         * modules/memxor (Makefile.am): Likewise.
29804         * modules/mkancesdirs (Makefile.am): Likewise.
29805         * modules/mkdir (Makefile.am): Likewise.
29806         * modules/mkdir-p (Makefile.am): Likewise.
29807         * modules/mkdtemp (Makefile.am): Likewise.
29808         * modules/mkstemp (Makefile.am): Likewise.
29809         * modules/mktime (Makefile.am): Likewise.
29810         * modules/modechange (Makefile.am): Likewise.
29811         * modules/mountlist (Makefile.am): Likewise.
29812         * modules/nanosleep (Makefile.am): Likewise.
29813         * modules/openat (Makefile.am): Likewise.
29814         * modules/pagealign_alloc (Makefile.am): Likewise.
29815         * modules/physmem (Makefile.am): Likewise.
29816         * modules/poll (Makefile.am): Likewise.
29817         * modules/posixtm (Makefile.am): Likewise.
29818         * modules/posixver (Makefile.am): Likewise.
29819         * modules/putenv (Makefile.am): Likewise.
29820         * modules/quote (Makefile.am): Likewise.
29821         * modules/quotearg (Makefile.am): Likewise.
29822         * modules/raise (Makefile.am): Likewise.
29823         * modules/read-file (Makefile.am): Likewise.
29824         * modules/readline (Makefile.am): Likewise.
29825         * modules/readlink (Makefile.am): Likewise.
29826         * modules/readtokens (Makefile.am): Likewise.
29827         * modules/readutmp (Makefile.am): Likewise.
29828         * modules/realloc (Makefile.am): Likewise.
29829         * modules/regex (Makefile.am): Likewise.
29830         * modules/rename (Makefile.am): Likewise.
29831         * modules/rename-dest-slash (Makefile.am): Likewise.
29832         * modules/rijndael (Makefile.am): Likewise.
29833         * modules/rmdir (Makefile.am): Likewise.
29834         * modules/rpmatch (Makefile.am): Likewise.
29835         * modules/safe-read (Makefile.am): Likewise.
29836         * modules/safe-write (Makefile.am): Likewise.
29837         * modules/same (Makefile.am): Likewise.
29838         * modules/save-cwd (Makefile.am): Likewise.
29839         * modules/savedir (Makefile.am): Likewise.
29840         * modules/setenv (Makefile.am): Likewise.
29841         * modules/settime (Makefile.am): Likewise.
29842         * modules/sha1 (Makefile.am): Likewise.
29843         * modules/sig2str (Makefile.am): Likewise.
29844         * modules/snprintf (Makefile.am): Likewise.
29845         * modules/stdlib-safer (Makefile.am): Likewise.
29846         * modules/stpcpy (Makefile.am): Likewise.
29847         * modules/stpncpy (Makefile.am): Likewise.
29848         * modules/strcase (Makefile.am): Likewise.
29849         * modules/strcasestr (Makefile.am): Likewise.
29850         * modules/strchrnul (Makefile.am): Likewise.
29851         * modules/strcspn (Makefile.am): Likewise.
29852         * modules/strdup (Makefile.am): Likewise.
29853         * modules/strerror (Makefile.am): Likewise.
29854         * modules/strftime (Makefile.am): Likewise.
29855         * modules/strndup (Makefile.am): Likewise.
29856         * modules/strnlen (Makefile.am): Likewise.
29857         * modules/strpbrk (Makefile.am): Likewise.
29858         * modules/strsep (Makefile.am): Likewise.
29859         * modules/strstr (Makefile.am): Likewise.
29860         * modules/strtod (Makefile.am): Likewise.
29861         * modules/strtoimax (Makefile.am): Likewise.
29862         * modules/strtok_r (Makefile.am): Likewise.
29863         * modules/strtol (Makefile.am): Likewise.
29864         * modules/strtoll (Makefile.am): Likewise.
29865         * modules/strtoul (Makefile.am): Likewise.
29866         * modules/strtoull (Makefile.am): Likewise.
29867         * modules/strtoumax (Makefile.am): Likewise.
29868         * modules/strverscmp (Makefile.am): Likewise.
29869         * modules/time_r (Makefile.am): Likewise.
29870         * modules/timegm (Makefile.am): Likewise.
29871         * modules/tmpfile-safer (Makefile.am): Likewise.
29872         * modules/unistd-safer (Makefile.am): Likewise.
29873         * modules/unlinkdir (Makefile.am): Likewise.
29874         * modules/userspec (Makefile.am): Likewise.
29875         * modules/utime (Makefile.am): Likewise.
29876         * modules/utimecmp (Makefile.am): Likewise.
29877         * modules/utimens (Makefile.am): Likewise.
29878         * modules/vasnprintf (Makefile.am): Likewise.
29879         * modules/vasprintf (Makefile.am): Likewise.
29880         * modules/vsnprintf (Makefile.am): Likewise.
29881         * modules/xalloc (Makefile.am): Likewise.
29882         * modules/xgetcwd (Makefile.am): Likewise.
29883         * modules/xnanosleep (Makefile.am): Likewise.
29884         * modules/xreadlink (Makefile.am): Likewise.
29885         * modules/xstrtod (Makefile.am): Likewise.
29886         * modules/xstrtol (Makefile.am): Likewise.
29887         * modules/xstrtold (Makefile.am): Likewise.
29888         * modules/yesno (Makefile.am): Likewise.
29889
29890 2006-10-12  Jim Meyering  <jim@meyering.net>
29891
29892         * m4/getloadavg.m4: Revert the change below.
29893
29894         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
29895         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
29896         fail with a symlink, which is what coreutils' ./bootstrap now
29897         creates by default.
29898
29899 2006-10-12  Bruno Haible  <bruno@clisp.org>
29900
29901         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
29902         mingw.
29903         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
29904         MSVC and mingw explicitly.
29905
29906 2006-10-11  Simon Josefsson  <jas@extundo.com>
29907             Bruno Haible  <bruno@clisp.org>
29908
29909         Add support for multiple gnulib-tool invocations in the scope of a
29910         single configure.ac file.
29911         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
29912         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
29913         with the same contents as the _LIBADD variable.
29914         (func_emit_initmacro_start, func_emit_initmacro_end,
29915         func_emit_initmacro_done): New functions.
29916         (func_import, func_create_testdir): Invoke them. Allow the identifiers
29917         gl_LIBOBJS and gl_LTLIBOBJS.
29918
29919 2006-10-11  Bruno Haible  <bruno@clisp.org>
29920
29921         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
29922         (func_create_testdir): Don't create po/Makefile.am, don't invoke
29923         autoreconf. Instead, invoke autopoint explicitly but move back the
29924         *.m4 files from gnulib.
29925
29926 2006-10-11  Bruno Haible  <bruno@clisp.org>
29927
29928         * gnulib-tool (func_usage): Make module names after --create-testdir
29929         optional.
29930         (func_create_testdir): If no module was specified, use nearly all
29931         modules.
29932
29933 2006-10-12  Jim Meyering  <jim@meyering.net>
29934
29935         Big performance improvement for fts-based tools that use FTS_NOSTAT.
29936         Avoid spurious inode-mismatch problems on non-POSIX file systems.
29937         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
29938         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
29939         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
29940         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
29941         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
29942         (fts_set_stat_required): New function.
29943         (fts_open): Defer the calls to fts_stat, if possible or requested.
29944         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
29945         into fts_stat itself.
29946         (fts_read): Perform any required (deferred) fts_stat call.
29947         (fts_build): Likewise, for the directory we're about to open and read.
29948         In the readdir loop, carefully decide whether each entry will require
29949         an eventual call to fts_stat, using dirent.d_type info if available.
29950         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
29951         a command line argument into this function.  Update all callers.
29952         Map a return value of FTS_DOT to FTS_D for a command line argument.
29953         * modules/fts (Depends-on): Add d-type.  Alphabetize.
29954         Thanks to Miklos Szeredi for his tenacity and for the initial
29955         bug report about "find" failing on a FUSE-based file system.
29956
29957         * lib/fts.c (fts_open): Use consistent indentation.
29958
29959 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
29960
29961         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
29962         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
29963         reported by Jim Meyering.  All uses of cache variables renamed
29964         to match Autoconf's.
29965         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
29966         the other one.
29967
29968         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
29969         Fix misspelling in diagnostic.
29970
29971 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
29972
29973         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
29974         defined.  Problem reported by Matthew Woehlke.
29975
29976         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
29977         Add support for Tandem NonStop R series.
29978         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
29979         Use new macro.
29980
29981         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
29982         (has_trailing_slash): Omit size arg; all callers changed.
29983         Omit 'inline', since it doesn't help performance and we'd
29984         need to configure it.
29985         Don't count //, ///, etc. as having a trailing slash.
29986         As a side effect, this removes a C99ism reported by Matthew Woehlke.
29987         (rpl_rename_dest_slash): On failure, use rename's errno rather
29988         than (in some cases) an incorrect or junk errno.
29989         Simplify code by removing need to compute length; this does
29990         cause it to make two passes instead of one over the file name,
29991         but it's worth it.
29992
29993         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
29994         change, since Autoconf's version may no longer be appropriate now
29995         that we are using CVS Autoconf's version.  Add support for Tandem.
29996
29997 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
29998             Bruno Haible  <bruno@clisp.org>
29999
30000         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
30001         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
30002         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
30003         gl_AC_TYPE_LONG_LONG.
30004
30005         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
30006         instead of HAVE_LONG_LONG.
30007         * lib/printf-args.c (printf_fetchargs): Likewise.
30008         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
30009         * lib/vasnprintf.c (VASNPRINTF): Likewise.
30010         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
30011         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
30012         gl_AC_TYPE_LONG_LONG.
30013
30014 2006-10-11  Bruno Haible  <bruno@clisp.org>
30015
30016         * m4/longlong.m4: Add comments.
30017         * m4/ulonglong.m4: Likewise.
30018
30019 2006-10-10  Bruno Haible  <bruno@clisp.org>
30020
30021         Make it possible to #define stpcpy, strdup to aliases.
30022         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
30023         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
30024
30025 2006-10-10  Bruno Haible  <bruno@clisp.org>
30026
30027         Make it possible to #define gcd to an alias.
30028         * lib/gcd.c: Include config.h.
30029
30030 2006-10-10  Bruno Haible  <bruno@clisp.org>
30031
30032         Make it possible to #define c_isascii to an alias.
30033         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
30034         defined. Undefine the macros before defining them, to avoid gcc
30035         warnings.
30036         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
30037         define NO_C_CTYPE_MACROS early.
30038
30039 2006-10-10  Bruno Haible  <bruno@clisp.org>
30040
30041         Make it possible to #define set_program_name to an alias.
30042         * lib/progname.c: Don't undefine set_program_name; instead, undefine
30043         ENABLE_RELOCATABLE early.
30044
30045 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
30046
30047         Port to Tandem NSK OSS, which has 64-bit signed int but at most
30048         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
30049         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
30050         More generally, don't assume that 64-bit signed int is available
30051         if unsigned int is, and vice versa.
30052         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
30053         unsigned symbols, not on their signed counterparts.
30054         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
30055         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
30056         (UINT64_C, UINTMAX_C):
30057         Likewise.
30058         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
30059         unsigned counterparts.
30060         (Have_long_long, Unsigned): New macros.
30061         (Int): Renamed from INT.
30062         (strtoimax): Use the new macros.
30063         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
30064         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
30065         * modules/inttypes (inttypes.h): Substitute
30066         HAVE_UNSIGNED_LONG_LONG_INT.
30067         * modules/stdint (stdint.h): Likewise.
30068         (Files): Add m4/ulonglong.m4.
30069
30070 2006-10-10  Bruno Haible  <bruno@clisp.org>
30071
30072         Fix a gcc -Wshadow warning.
30073         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
30074         to 'bucket'.
30075         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
30076         gl_linked_indexof_from_to): Likewise.
30077         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
30078         Likewise.
30079         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
30080         Likewise.
30081         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
30082         Reported by Eric Blake.
30083
30084 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
30085
30086         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
30087         for NetBSD.  Problem reported by Bruno Haible.
30088
30089 2006-10-09  Jim Meyering  <jim@meyering.net>
30090
30091         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
30092         Patch from Bruno Haible.
30093
30094 2006-10-09  Jim Meyering  <jim@meyering.net>
30095
30096         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
30097         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
30098         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
30099
30100 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
30101
30102         Don't include <config.h> twice; this doesn't work in some cases,
30103         e.g., when config.h has "#define intmax_t long long int" and
30104         we include <config.h>, <inttypes.h>, <config.h> in that order.
30105         Problem reported by Matthew Woehlke in:
30106         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
30107         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
30108         * lib/fts-cycle.c: Don't include config.h.
30109         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
30110         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
30111         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
30112         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
30113         inttypes.h.
30114         * lib/xstrtoumax.c: Likewise.
30115         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
30116         __strtol and the like, so that this module is more like its siblings.
30117         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
30118         Remove; no longer needed now that we assume gnulib inttypes.h.
30119
30120 2006-10-08  Bruno Haible  <bruno@clisp.org>
30121
30122         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
30123         option.
30124
30125 2006-10-07  Jim Meyering  <jim@meyering.net>
30126
30127         * modules/inttypes (inttypes.h): Revert what seems to have been
30128         an inadvertent part of today's change: use "|", not "/" in the
30129         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
30130
30131 2006-10-07  Bruno Haible  <bruno@clisp.org>
30132
30133         * modules/sublist: New file.
30134
30135 2006-10-07  Bruno Haible  <bruno@clisp.org>
30136
30137         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
30138         * modules/argz (argz.h): Likewise.
30139         * modules/arpa_inet (arpa/inet.h): Likewise.
30140         * modules/byteswap (byteswap.h): Likewise.
30141         * modules/configmake (configmake.h): Likewise.
30142         * modules/fcntl (fcntl.h): Likewise.
30143         * modules/fnmatch (fnmatch.h): Likewise.
30144         * modules/getopt (getopt.h): Likewise.
30145         * modules/glob (glob.h): Likewise.
30146         * modules/inttypes (inttypes.h): Likewise.
30147         * modules/netinet_in (netinet/in.h): Likewise.
30148         * modules/poll (poll.h): Likewise.
30149         * modules/stdbool (stdbool.h): Likewise.
30150         * modules/stdint (stdint.h): Likewise.
30151         * modules/sys_select (sys/select.h): Likewise.
30152         * modules/sys_socket (sys/socket.h): Likewise.
30153         * modules/sys_stat (sys/stat.h): Likewise.
30154         * modules/sysexits (sysexits.h): Likewise.
30155         * modules/unistd (unistd.h): Likewise.
30156         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
30157         Add a "DO NOT EDIT" comment to the generated file.
30158         (func_import): Likewise for gnulib-comp.m4.
30159
30160 2006-10-07  Bruno Haible  <bruno@clisp.org>
30161
30162         * lib/gl_sublist.h: New file.
30163         * lib/gl_sublist.c: New file.
30164
30165 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
30166
30167         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
30168         name (relative to the original working directory) and the file
30169         name component (relative to the temporary working directory).  All
30170         callers changed.
30171         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
30172         * lib/mkdir-p.c (make_dir_parents): Likewise.
30173         * lib/mkdir-p.h (make_dir_parents): Likewise.
30174
30175 2006-10-06  Eric Blake  <ebb9@byu.net>
30176
30177         Define several macros for use by the clean-temp module.
30178         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
30179         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
30180         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
30181
30182         * lib/clean-temp.h (close_stream_temp): New declaration.
30183         * lib/clean-temp.c (includes): Pull in headers according to what
30184         other modules are in use.
30185         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
30186
30187 2006-10-06  Bruno Haible  <bruno@clisp.org>
30188
30189         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
30190         instead of fopen, fwriteerror.
30191
30192 2006-10-06  Bruno Haible  <bruno@clisp.org>
30193
30194         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
30195         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
30196         int.
30197         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
30198         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
30199         Return an error indicator.
30200         Suggested by Eric Blake.
30201
30202 2006-10-06  Bruno Haible  <bruno@clisp.org>
30203
30204         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
30205         Reported by Eric Blake.
30206
30207 2006-10-06  Bruno Haible  <bruno@clisp.org>
30208
30209         * modules/closeout (Description): Mention stderr too.
30210
30211 2006-10-06  Bruno Haible  <bruno@clisp.org>
30212         and Paul Eggert  <eggert@cs.ucla.edu>
30213
30214         * lib/closeout.c (close_stdout): Also close stderr.
30215         * lib/closeout.h: Update comment.
30216
30217 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
30218
30219         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
30220         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
30221         * lib/dirchownmod.c: Include lchown.h.
30222         * lib/lchown.c: Don't include files that lchown.h now includes.
30223         Don't declare chown, since lchown.h now does that.
30224         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
30225         (lchown): Define to rpl_chown if lchown is declared but
30226         does not exist.  Declare using a prototype if lchown is not
30227         declared.  Add a copyright notice.
30228         * lib/mkstemp.h: Include <unistd.h>.
30229         * lib/openat.c: Include lchown.h.
30230
30231         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
30232         we now test for that separately.
30233         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
30234         rather than O_NOFOLLOW, when testing whether it's possible to
30235         avoid a race condition reliably.
30236         * lib/savewd.c (savewd_chdir): Likewise.
30237
30238         Remove macros that are no longer needed now that stdint.h is
30239         reliable.
30240         * lib/fsusage.c (UINTMAX_MAX): Remove.
30241         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
30242         * lib/utimecmp.c (SIZE_MAX): Remove.
30243
30244         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
30245
30246         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
30247         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
30248         O_NOATIME works.
30249
30250 2006-10-05  Bruno Haible  <bruno@clisp.org>
30251
30252         * lib/gl_list.h (gl_sortedlist_search_from_to,
30253         gl_sortedlist_indexof_from_to): New declarations.
30254         (gl_list_implementation): New fields sortedlist_search_from_to,
30255         sortedlist_indexof_from_to.
30256         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
30257         inline functions.
30258         * lib/gl_list.c (gl_sortedlist_search_from_to,
30259         gl_sortedlist_indexof_from_to): New functions.
30260         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
30261         function.
30262         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
30263         (gl_array_sortedlist_search_from_to): New function.
30264         (gl_array_list_implementation): Update.
30265         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
30266         function.
30267         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
30268         (gl_carray_sortedlist_search_from_to): New function.
30269         (gl_carray_list_implementation): Update.
30270         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
30271         gl_linked_sortedlist_indexof_from_to): New functions.
30272         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
30273         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
30274         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
30275         gl_tree_sortedlist_indexof_from_to): New functions.
30276         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
30277         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
30278         Update.
30279         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
30280         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
30281         Update.
30282
30283 2006-10-05  Bruno Haible  <bruno@clisp.org>
30284
30285         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
30286         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
30287         (struct gl_list_implementation): Add fields search_from_to,
30288         indexof_from_to. Remove fields search, indexof.
30289         (gl_list_search): Use the search_from_to method.
30290         (gl_list_search_from, gl_list_search_from_to): New functions.
30291         (gl_list_indexof): Use the indexof_from_to method.
30292         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
30293         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
30294         (gl_list_search_from, gl_list_search_from_to): New functions.
30295         (gl_list_indexof): Use the indexof_from_to method.
30296         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
30297         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
30298         gl_array_indexof. Add start_index, end_index arguments.
30299         (gl_array_search_from_to): Renamed from gl_array_search. Add
30300         start_index, end_index arguments.
30301         (gl_array_remove, gl_array_list_implementation): Update.
30302         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
30303         gl_carray_indexof. Add start_index, end_index arguments.
30304         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
30305         start_index, end_index arguments.
30306         (gl_carray_remove, gl_carray_list_implementation): Update.
30307         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
30308         gl_linked_search. Add start_index, end_index arguments.
30309         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
30310         start_index, end_index arguments.
30311         (gl_linked_remove): Update.
30312         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
30313         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
30314         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
30315         field to 'size_t'.
30316         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
30317         gl_tree_search. Add start_index, end_index arguments.
30318         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
30319         start_index, end_index arguments.
30320         (gl_tree_remove): Update.
30321         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
30322         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
30323         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
30324         function.
30325         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
30326         gl_tree_search. Add start_index, end_index arguments.
30327         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
30328         start_index, end_index arguments.
30329         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
30330         Update.
30331         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
30332
30333 2006-10-05  Bruno Haible  <bruno@clisp.org>
30334
30335         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
30336
30337         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
30338         fwriteerror_temp): New declarations.
30339         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
30340         (descriptors): New variable.
30341         (cleanup): First, close the descriptors.
30342         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
30343         fclose_temp, fwriteerror_temp): New functions.
30344
30345 2006-10-04  Jim Meyering  <jim@meyering.net>
30346
30347         * lib/fts.c (fts_open): Tiny comment change.
30348
30349 2006-10-04  Bruno Haible  <bruno@clisp.org>
30350
30351         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
30352         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
30353         gl_LOCK_BODY.
30354         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
30355         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
30356         gl_LOCK_EARLY_BODY.
30357         (gl_LOCK): Require gl_LOCK_BODY.
30358
30359 2006-10-04  Bruno Haible  <bruno@clisp.org>
30360
30361         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
30362         (gl_oset_search_atleast): New declaration.
30363         (struct gl_oset_implementation): Add field 'search_atleast'.
30364         (gl_oset_search_atleast): New inline function.
30365         * lib/gl_oset.c (gl_oset_search_atleast): New function.
30366         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
30367         (gl_array_oset_implementation): Update.
30368         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
30369         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
30370         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
30371
30372 2006-10-04  Bruno Haible  <bruno@clisp.org>
30373
30374         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
30375
30376 2006-10-03  Bruno Haible  <bruno@clisp.org>
30377
30378         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
30379         from gl_avltreehash_list_implementation.
30380
30381 2006-10-03  Bruno Haible  <bruno@clisp.org>
30382
30383         * lib/gl_oset.c (gl_oset_add): Fix return type.
30384
30385 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
30386
30387         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
30388
30389 2006-10-02  Eric Blake  <ebb9@byu.net>
30390
30391         * modules/strnlen (Depends-on): Add extensions.
30392
30393 2006-10-02  Eric Blake  <ebb9@byu.net>
30394
30395         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
30396         definition in 2.60+.
30397
30398 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
30399
30400         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
30401         checks.
30402
30403 2006-10-02  Bruno Haible  <bruno@clisp.org>
30404
30405         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
30406         to the AUTOMAKE_OPTIONS.
30407         Reported by Jim Meyering.
30408
30409 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
30410
30411         Work around bug in Solaris 10 /proc file system:
30412         /proc/self/fd/NNN/.. isn't the parent directory of
30413         the directory whose file descriptor is NNN.  This needs to
30414         be worked around at run time, not compile time, since a
30415         program might be built on Solaris 8, where things work, and
30416         run on Solaris 10.
30417         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
30418         to use the following interface instead:
30419         (OPENAT_BUFFER_SIZE): New macro.
30420         (openat_proc_name): New function.
30421         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
30422         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
30423         Likewise.
30424         * lib/openat-proc.c: New file.
30425         * modules/openat (Files): Add lib/openat-proc.c.
30426         (Depends-on): Add same-inode, stdbool.
30427         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
30428
30429 2006-09-29  Bruno Haible  <bruno@clisp.org>
30430
30431         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
30432         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
30433         argument. Set stdout_closed before testing for ferror, not after.
30434         (fwriteerror, fwriteerror_no_ebadf): New functions.
30435
30436 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30437
30438         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
30439
30440 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
30441
30442         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
30443         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
30444
30445 2006-09-28  Jim Meyering  <jim@meyering.net>
30446
30447         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
30448         Include <unistd.h>.
30449
30450 2006-09-28  Bruno Haible  <bruno@clisp.org>
30451
30452         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
30453         * modules/linkedhash-list (Depends-on): Likewise.
30454         * modules/rbtreehash-list (Depends-on): Likewise.
30455
30456 2006-09-28  Bruno Haible  <bruno@clisp.org>
30457
30458         * lib/strndup.h: Simplify the redefinition of strndup.
30459         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
30460         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
30461
30462 2006-09-28  Bruno Haible  <bruno@clisp.org>
30463
30464         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
30465         * lib/gl_linkedhash_list.c: Likewise.
30466         * lib/gl_rbtreehash_list.c: Likewise.
30467
30468 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
30469
30470         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
30471         getaddrinfo.
30472
30473         * lib/__fpending.h: Don't include <stdio_ext.h> unless
30474         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
30475         it causes <stdio_ext.h> to cause a compile-time error.
30476         Problem reported by Nelson H. F. Beebe.
30477         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
30478         of HAVE_DECL___PENDING.
30479
30480         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
30481         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
30482         declaration.
30483
30484 2006-09-27  Jim Meyering  <jim@meyering.net>
30485
30486         This file could end up with a definition for a function
30487         named __strndup, rather than rpl_strndup on a system with
30488         incomplete weak_alias support.
30489         * lib/strndup.c (strndup): Rename from __strndup.
30490         Remove #defines that used to map __strndup to strndup.
30491         Don't use K&R prototypes.
30492         Remove LIBC-related code, since this file is not sync'd with glibc.
30493         * lib/strndup.h: Revamp, accordingly.
30494         * m4/strndup.m4: Modernize.
30495
30496 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
30497
30498         * modules/savewd (Depends-on): Add 'raise'.
30499         * lib/savewd.c: Include <signal.h>, for 'raise'.
30500
30501 2006-09-26  Jim Meyering  <jim@meyering.net>
30502
30503         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
30504         when we detect Darwin 8.7.0's acl_get_file bug.
30505         Rearrange to perform the new (below) run-test while $LIBS
30506         contains any acl-related library.  Set USE_ACL at the end.
30507         (gl_ACL_GET_FILE): New function.
30508
30509 2006-09-26  Eric Blake  <ebb9@byu.net>
30510
30511         * lib/verror.c: Include <config.h> unconditionally.
30512
30513 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
30514
30515         * modules/clock-time (Maintainer): Add self.
30516         * modules/getlogin_r (Depends-on): Add extensions.
30517
30518 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30519
30520         * modules/clock-time: New module.
30521         * modules/nanosleep (Depends-on): Add clock-time.
30522         * modules/gethrxtime (Depends-on): Likewise.
30523         * modules/gettime (Depends-on): Likewise.
30524         * modules/settime (Depends-on): Likewise.
30525
30526         * modules/fts-lgpl: Depend on openat.
30527         * modules/mkancesdirs: Depend on savewd.
30528         * modules/mkdir-p: Likewise.
30529
30530 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30531
30532         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
30533
30534         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
30535         `gl_have_arbitrary_file_name_length_limit' to
30536         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
30537         actually works between configure runs.
30538
30539 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30540             Bruno Haible  <bruno@clisp.org>
30541
30542         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
30543
30544 2006-09-25  Jim Meyering  <jim@meyering.net>
30545
30546         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
30547         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
30548
30549 2006-09-25  Eric Blake  <ebb9@byu.net>
30550
30551         * gnulib-tool (func_import, func_create_testdir): Fix typos in
30552         exec's in 2006-09-18 patch when shuffling fds.
30553
30554 2006-09-25  Bruno Haible  <bruno@clisp.org>
30555
30556         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
30557         Reported by Jim Meyering.
30558
30559 2006-09-24  Jim Meyering  <jim@meyering.net>
30560
30561         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
30562         compare a pointer against a literal "0".  That caused failures with
30563         at least HP-UX's hpcc.
30564
30565 2006-09-22  Simon Josefsson  <jas@extundo.com>
30566
30567         * modules/gc-sha1:
30568         * modules/gc-md4:
30569         * modules/gc-hmac-sha1:
30570         * modules/gc-hmac-md5:
30571         * modules/gc-des:
30572         * modules/gc-arcfour: Distribute more files.
30573
30574 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30575
30576         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
30577         (gl_linked_iterator_from_to): Initialize struct completely.
30578         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
30579         (gl_tree_iterator_from_to): Likewise
30580         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
30581         * lib/gl_array_list.c [lint] (gl_array_iterator)
30582         (gl_array_iterator_from_to): Likewise.
30583         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
30584         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
30585         (gl_carray_iterator_from_to): Likewise.
30586
30587         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
30588         * lib/md4.c (md4_process_block): Remove unused variable.
30589         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
30590         parentheses for clarity.
30591
30592 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30593
30594         * modules/bison-i18n (Depends-on): Add gettext.
30595
30596 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30597
30598         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
30599         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
30600         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
30601         also add missing comma that caused broken test.
30602         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
30603         stdlib.h, for `abort'.
30604         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
30605         variables.
30606         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
30607         include unistd.h if present, for `rmdir'.
30608         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
30609         variables.
30610         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
30611         in the process include standard headers for prototypes.
30612         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
30613         gets declared on GNU/Linux.
30614         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
30615         unistd.h, for `rmdir'.
30616         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
30617
30618         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
30619         always true.
30620         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
30621
30622         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
30623
30624 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30625
30626         * gnulib-tool (func_version): Create output all at once.  This
30627         may help avoid triggering unnecessary SIGPIPEs, and at any
30628         rate it doesn't hurt.
30629
30630 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30631             Bruno Haible  <bruno@clisp.org>
30632
30633         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
30634         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
30635         * m4/signed.m4 (bh_C_SIGNED): Likewise.
30636
30637         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
30638         (gl_FUNC_VASPRINTF): Invoke it.
30639
30640 2006-09-22  Bruno Haible  <bruno@clisp.org>
30641
30642         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
30643         getloadavg.c as first argument.
30644
30645 2006-09-22  Bruno Haible  <bruno@clisp.org>
30646
30647         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
30648         at the beginning of the gl_INIT macro.
30649         * modules/getloadavg (configure.ac): Pass $gl_source_base to
30650         gl_GETLOADAVG.
30651
30652 2006-09-22  Bruno Haible  <bruno@clisp.org>
30653
30654         * gnulib-tool (func_create_megatestdir): Don't include the config-h
30655         module.
30656         Suggested by Ralf Wildenhues.
30657
30658 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
30659
30660         Import this patch from libc:
30661
30662         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
30663
30664         * lib/regex_internal.c (re_string_reconstruct): Handle
30665         offset < pstr->valid_raw_len && pstr->offsets_needed case.
30666         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
30667         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
30668         re_string_context_at.
30669
30670         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
30671         now requires it.
30672         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
30673         gl_REGEX now does it for us.
30674         (gl_REGEX): Add test taken from
30675         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
30676
30677         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
30678         Check that large offsets work.  Modernize Autoconf usages.
30679         Prefer "yes" to mean a good thing rather than a bad.
30680         Don't put "#define mkstemp" in config.h, as this might interfere
30681         with standard system headers that "#define mkstemp mkstemp64".
30682
30683         * modules/mkstemp (Depends-on): Add extensions, so that
30684         mkstemp is visible on some platforms.
30685         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
30686         (Include): Change to "mkstemp.h" from <stdlib.h>.
30687         (Files): Add mkstemp.h.
30688
30689         * lib/mkstemp.h: New file, since some standard headers
30690         #define mkstemp.
30691         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
30692         Include "mkstemp.h".
30693         Make the _LIBC code resemble glibc original more,
30694         e.g., use K&R style.
30695         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
30696         (mkstemp): Remove, since mkstemp.h does this for us.
30697         * lib/stdlib--.h: Include mkstemp.h.
30698
30699         Import this patch from libc:
30700
30701         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
30702
30703         * lib/tempname.c (__gen_tempname): Change attempts_min
30704         into a macro.  Use preprocessor to decide how to initialize
30705         attempts [Coverity CID 67].
30706
30707 2006-09-20  Bruno Haible  <bruno@clisp.org>
30708
30709         * lib/mkdtemp.c: Import from libc.
30710         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
30711                 * sysdeps/posix/tempname.c (__gen_tempname): Change
30712                 attempts_min into a macro.  Use preprocessor to decide how to
30713                 initialize attempts [Coverity CID 67].
30714         2001-11-27  Paul Eggert  <eggert@twinsun.com>
30715                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
30716                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
30717
30718 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30719
30720         * gnulib-tool (func_exit): New function, to allow to pass the
30721         exit status portably through the trap.  Use everywhere.
30722         (--help, --version): Signal a write error.
30723         (trap): catch SIGPIPE, for write errors.
30724         Exit at the end of the trap, with the correct exit status.
30725
30726 2006-09-19  Karl Berry  <karl@gnu.org>
30727
30728         * doc/gnulib.texi: note about the license texinfo files.
30729
30730 2006-09-19  Eric Blake  <ebb9@byu.net>
30731
30732         * gnulib-tool: Avoid space-tab.
30733
30734 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
30735
30736         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
30737         that prevented coreutils 6.1 from building.  Problem reported
30738         by Petter Reinholdtsen.
30739
30740 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
30741
30742         * gnulib-tool (avoidlist): Fix typo that broke options like
30743         --avoid=lock that are used by coreutils bootstrap.
30744
30745 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
30746
30747         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
30748         more systematically.
30749
30750 2006-09-18  Jim Meyering  <jim@meyering.net>
30751
30752         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
30753
30754 2006-09-18  Bruno Haible  <bruno@clisp.org>
30755
30756         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
30757
30758 2006-09-18  Bruno Haible  <bruno@clisp.org>
30759
30760         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
30761         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
30762         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
30763         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
30764         * m4/gettext.m4: Require autoconf >= 2.52.
30765         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
30766         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
30767         of gl_cv_header_inttypes_h.
30768
30769 2006-09-18  Bruno Haible  <bruno@clisp.org>
30770
30771         * lib/javaversion.c: Include configmake.h.
30772
30773 2006-09-18  Bruno Haible  <bruno@clisp.org>
30774
30775         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
30776         avoid that the while loops be executed in a subshell.
30777
30778 2006-09-18  Bruno Haible  <bruno@clisp.org>
30779
30780         * MODULES.html.sh (func_module): Break long lines.
30781         Suggested by Bruce Korb <bkorb@gnu.org>.
30782
30783 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30784
30785         Speed up by a factor of 1.12.
30786         * gnulib-tool (nl): New variable.
30787         (func_import): Rewrite include directive extraction to only read each
30788         directive once.
30789
30790 2006-09-17  Bruno Haible  <bruno@clisp.org>
30791
30792         * modules/javaversion (Makefile.am): Remove DEFS setting.
30793         (Depends-on): Add configmake, for PKGDATADIR definition.
30794
30795 2006-09-17  Bruno Haible  <bruno@clisp.org>
30796
30797         * gnulib-tool (func_create_testdir): Rewrite all files at once.
30798
30799 2006-09-17  Bruno Haible  <bruno@clisp.org>
30800
30801         * gnulib-tool (func_append): New function, stolen from libtool.m4.
30802         (func_modules_transitive_closure, func_modules_add_dummy,
30803         func_modules_to_filelist, func_import, func_create_testdir,
30804         func_create_megatestdir, ...): Use it wherever possible.
30805         Suggested by Ralf Wildenhues.
30806
30807 2006-09-16  Karl Berry  <karl@gnu.org>
30808
30809         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
30810         to avoid sectioning errors.
30811         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
30812         [ifinfo]: blank line after @center-ed titles.
30813         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
30814         Spell FSF address consistently with others.
30815         (These changes approved by rms.)
30816
30817 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30818
30819         Speed up by a factor of 1.61.
30820         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
30821         already checked module names again.
30822
30823 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30824
30825         Speed up by a factor of 1.13.
30826         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
30827         for new_files, and the input to func_add_or_update.
30828
30829 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30830
30831         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
30832         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
30833
30834 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
30835
30836         * modules/mkancesdirs (Depends-on): Add fcntl.
30837         * modules/savewd: New file.
30838         * MODULES.html.sh (File system functions): Add savewd.
30839
30840         * modules/configmake (Makefile.am): Add support for the
30841         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
30842
30843 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
30844
30845         * m4/savewd.m4: New file.
30846
30847 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
30848
30849         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
30850         (dirchownmod): New arg FD.  All callers changed.
30851         Use FD rather than opening the directory ourself, as opening is
30852         now the caller's responsibility.
30853         * lib/dirchownmod.h: Likewise.
30854         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
30855         hosts that require <sys/types.h> before <sys/stat.h>.  Include
30856         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
30857         (test_dir): Remove.
30858         (mkancesdirs): Return length of prefix of FILE that has already
30859         been made, or -2 if there is a child doing the work.  Redo
30860         algorithm so that it is O(N) rather than O(N**2).  Optimize away
30861         ".", and treat ".." specially since it might stray back into
30862         already-created areas.  Use a subprocess if necessary.  New arg
30863         WD; all users changed.  MAKE_DIR function should now return 1
30864         if it creates a directory that is not readable.  Return -2 if
30865         a child process is spun off.
30866         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
30867         Adjust signature to match code.
30868         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
30869         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
30870         all users changed.
30871         * lib/savewd.c, lib/savewd.h: New files.
30872
30873 2006-09-15  Jim Meyering  <jim@meyering.net>
30874
30875         * modules/rename-dest-slash: New module.
30876         * MODULES.html.sh (posix_compat): Add it here.
30877
30878         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
30879
30880 2006-09-15  Jim Meyering  <jim@meyering.net>
30881
30882         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
30883         file.
30884
30885         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
30886
30887 2006-09-15  Jim Meyering  <jim@meyering.net>
30888
30889         * lib/rename-dest-slash.c (has_trailing_slash): Use
30890         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
30891         (rpl_rename_dest_slash): Perform the cheaper trailing slash
30892         test before testing whether SRC is a directory.
30893         Suggestions from Bruno Haible.
30894
30895         Avoid a warning about an unused variable.
30896         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
30897         into the #ifdef block where it's used.
30898
30899         * lib/rename-dest-slash.c: New file.
30900
30901 2006-09-14  Bruno Haible  <bruno@clisp.org>
30902
30903         * lib/allocsa.c: Include <config.h> unconditionally.
30904         * lib/asnprintf.c: Likewise.
30905         * lib/asprintf.c: Likewise.
30906         * lib/c-strcasecmp.c: Likewise.
30907         * lib/c-strcasestr.c: Likewise.
30908         * lib/c-strncasecmp.c: Likewise.
30909         * lib/c-strstr.c: Likewise.
30910         * lib/classpath.c: Likewise.
30911         * lib/clean-temp.c: Likewise.
30912         * lib/concatpath.c: Likewise.
30913         * lib/copy-file.c: Likewise.
30914         * lib/csharpcomp.c: Likewise.
30915         * lib/csharpexec.c: Likewise.
30916         * lib/execute.c: Likewise.
30917         * lib/fatal-signal.c: Likewise.
30918         * lib/findprog.c: Likewise.
30919         * lib/fwriteerror.c: Likewise.
30920         * lib/gl_array_list.c: Likewise.
30921         * lib/gl_array_oset.c: Likewise.
30922         * lib/gl_avltree_list.c: Likewise.
30923         * lib/gl_avltree_oset.c: Likewise.
30924         * lib/gl_avltreehash_list.c: Likewise.
30925         * lib/gl_carray_list.c: Likewise.
30926         * lib/gl_linked_list.c: Likewise.
30927         * lib/gl_linkedhash_list.c: Likewise.
30928         * lib/gl_list.c: Likewise.
30929         * lib/gl_oset.c: Likewise.
30930         * lib/gl_rbtree_list.c: Likewise.
30931         * lib/gl_rbtree_oset.c: Likewise.
30932         * lib/gl_rbtreehash_list.c: Likewise.
30933         * lib/imaxabs.c: Likewise.
30934         * lib/imaxdiv.c: Likewise.
30935         * lib/javacomp.c: Likewise.
30936         * lib/javaexec.c: Likewise.
30937         * lib/javaversion.c: Likewise.
30938         * lib/linebreak.c: Likewise.
30939         * lib/localcharset.c: Likewise.
30940         * lib/lock.c: Likewise.
30941         * lib/mbchar.c: Likewise.
30942         * lib/mbswidth.c: Likewise.
30943         * lib/mkdtemp.c: Likewise.
30944         * lib/pipe.c: Likewise.
30945         * lib/printf-args.c: Likewise.
30946         * lib/printf-parse.c: Likewise.
30947         * lib/progname.c: Likewise.
30948         * lib/progreloc.c: Likewise.
30949         * lib/readlink.c: Likewise.
30950         * lib/sh-quote.c: Likewise.
30951         * lib/stpcpy.c: Likewise.
30952         * lib/stpncpy.c: Likewise.
30953         * lib/strcasecmp.c: Likewise.
30954         * lib/strcasestr.c: Likewise.
30955         * lib/strcspn.c: Likewise.
30956         * lib/striconv.c: Likewise.
30957         * lib/strncasecmp.c: Likewise.
30958         * lib/strnlen1.c: Likewise.
30959         * lib/strstr.c: Likewise.
30960         * lib/strtok_r.c: Likewise.
30961         * lib/tls.c: Likewise.
30962         * lib/tmpdir.c: Likewise.
30963         * lib/unicodeio.c: Likewise.
30964         * lib/unsetenv.c: Likewise.
30965         * lib/vasnprintf.c: Likewise.
30966         * lib/vasprintf.c: Likewise.
30967         * lib/wait-process.c: Likewise.
30968         * lib/xallocsa.c: Likewise.
30969         * lib/xsetenv.c: Likewise.
30970         * lib/xstriconv.c: Likewise.
30971
30972 2006-09-13  Simon Josefsson  <jas@extundo.com>
30973
30974         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
30975         that internally, suggested by Ralf Wildenhues
30976         <Ralf.Wildenhues@gmx.de>.
30977
30978 2006-09-13  Simon Josefsson  <jas@extundo.com>
30979
30980         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
30981         @LIBOBJS@.
30982         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30983
30984 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
30985
30986         * lib/_fpending.c: Include <config.h> unconditionally, since we no
30987         longer worry about uses that don't define HAVE_CONFIG_H.
30988         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
30989         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
30990         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
30991         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
30992         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
30993         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
30994         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
30995         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
30996         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
30997         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
30998         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
30999         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
31000         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
31001         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
31002         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
31003         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
31004         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
31005         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
31006         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
31007         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
31008         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
31009         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
31010         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
31011         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
31012         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
31013         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
31014         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
31015         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
31016         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
31017         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
31018         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
31019         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
31020         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
31021         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
31022         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
31023         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
31024         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
31025         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
31026         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
31027         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
31028         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
31029         Likewise.
31030
31031 2006-09-13  Eric Blake  <ebb9@byu.net>
31032
31033         * lib/getopt.c: Fix typo in last commit.
31034
31035 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
31036
31037         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
31038         dgettext.
31039
31040 2006-09-12  Jim Meyering  <jim@meyering.net>
31041
31042         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
31043         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
31044         Reported by Nelson H. F. Beebe.
31045
31046 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
31047
31048         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
31049         program_invocation_name and program_invocation_short_name are
31050         initialized.
31051         * lib/argp-namefrob.h: Move declarations of program_invocation_name
31052         and program_invocation_short_name to argp.h, so they are visible
31053         to user programs.
31054         * lib/argp.h: Likewise
31055
31056 2006-09-10  Bruno Haible  <bruno@clisp.org>
31057
31058         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
31059         m4/inttypes_h.m4, m4/uintmax_t.m4.
31060
31061 2006-09-10  Bruno Haible  <bruno@clisp.org>
31062
31063         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
31064         gl_AC_TYPE_UINTMAX_T.
31065
31066 2006-09-10  Bruno Haible  <bruno@clisp.org>
31067
31068         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
31069
31070 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
31071
31072         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
31073         convention.  Text proposed by Bruno Haible.
31074         (struct argp_option): Document the use of N_() wrappers.
31075
31076         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
31077         '\v', and translate the two parts separately, instead of feeding
31078         the whole string to gettext.  This allows to exclude
31079         '\v' from the strings visible to the translator by writing doc
31080         strings as N_("..") "\v" N_("..").
31081
31082 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
31083
31084         * config/srclist.txt: Undo latest change; the bug was fixed.
31085
31086 2006-09-09  Bruno Haible  <bruno@clisp.org>
31087
31088         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
31089         assignments if building a library without libtool.
31090         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
31091         in func_emit_lib_Makefile_am.
31092         (func_import): When building a static library libfoo.a, arrange to
31093         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
31094         (func_create_testdir): Likewise.
31095         * modules/gc (configure.ac, Makefile.am): If building statically,
31096         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
31097         * modules/iconvme (configure.ac, Makefile.am): Likewise.
31098         * modules/striconv (configure.ac, Makefile.am): Likewise.
31099         Based on a suggestion by Ralf Wildenhues.
31100
31101 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
31102
31103         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
31104         Check for unistd.h too, since Autoconf doesn't assume POSIX.
31105         Also:
31106
31107         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
31108         Add year_2050_test to catch glibc bug 2821
31109         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
31110
31111         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
31112         Prefer #ifdef to #if.
31113
31114         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
31115         Return from 'main' instead of calling 'exit'.
31116
31117 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
31118
31119         * lib/mktime.c (guess_time_tm): Fix bug where mktime
31120         returned the maximum time_t value rather than (time_t) -1.
31121         Problem originally reported by William Bardwell
31122         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
31123
31124         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
31125         Moved to here ...
31126         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
31127         ... from here.
31128
31129 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
31130
31131         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
31132         2821 is fixed.
31133
31134 2006-09-08  Jim Meyering  <jim@meyering.net>
31135
31136         Don't make generated files read-only.  That would bother too many
31137         people.  However, do retain the ability to work when targets are
31138         read-only: remove the destination and temporary files before writing
31139         them (when generated via sed or echo), or by using the -f option for
31140         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
31141         * modules/alloca-opt, modules/argz, modules/arpa_inet:
31142         * modules/byteswap, modules/configmake, modules/fcntl:
31143         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
31144         * modules/localcharset, modules/netinet_in, modules/poll:
31145         * modules/stdbool, modules/stdint, modules/sys_select:
31146         * modules/sys_socket, modules/sys_stat, modules/sysexits:
31147
31148 2006-09-08  Jim Meyering  <jim@meyering.net>
31149
31150         Avoid new build failure on FreeBSD 6.0.
31151         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
31152         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
31153         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
31154
31155 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31156
31157         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
31158
31159 2006-09-07  Jim Meyering  <jim@meyering.net>
31160
31161         Fix global typo in last change: use chmod u-w, not chmod u-x.
31162         Spotted by Paul Eggert and Bruce Korb.
31163         * modules/alloca-opt, modules/argz, modules/arpa_inet:
31164         * modules/byteswap, modules/configmake, modules/fcntl:
31165         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
31166         * modules/localcharset, modules/netinet_in, modules/poll:
31167         * modules/stdbool, modules/stdint, modules/sys_select:
31168         * modules/sys_socket, modules/sys_stat, modules/sysexits:
31169
31170 2006-09-06  Jim Meyering  <jim@meyering.net>
31171
31172         Make generated files be read-only.
31173         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
31174         Ensure that each generated file is now read-only.
31175         * modules/argz: Likewise.
31176         * modules/arpa_inet: Likewise.
31177         * modules/byteswap: Likewise.
31178         * modules/configmake: Likewise.
31179         * modules/fcntl: Likewise.
31180         * modules/fnmatch: Likewise.
31181         * modules/getopt: Likewise.
31182         * modules/glob: Likewise.
31183         * modules/inttypes: Likewise.
31184         * modules/netinet_in: Likewise.
31185         * modules/poll: Likewise.
31186         * modules/stdbool: Likewise.
31187         * modules/stdint: Likewise.
31188         * modules/sys_select: Likewise.
31189         * modules/sys_socket: Likewise.
31190         * modules/sys_stat: Likewise.
31191         * modules/sysexits: Likewise.
31192         * modules/localcharset: Same as above, but continue using temporary
31193         file named "t-$@" (why different?) rather than the "$@-t" used
31194         everywhere else.
31195
31196         * modules/sysexits (Makefile.am): Replace literal occurrences
31197         of "sysexit.h" more readable, and more consistent, "$@".
31198
31199 2006-09-06  Bruno Haible  <bruno@clisp.org>
31200
31201         * modules/striconv: New file.
31202         * modules/xstriconv: New file.
31203         * MODULES.html.sh (Internationalization functions): Add striconv,
31204         xstriconv.
31205
31206 2006-09-06  Bruno Haible  <bruno@clisp.org>
31207
31208         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
31209         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
31210         not using libtool correctly.
31211
31212 2006-09-06  Bruno Haible  <bruno@clisp.org>
31213
31214         * lib/striconv.h: New file.
31215         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
31216         iconvstring.c.
31217         * lib/xstriconv.h: New file.
31218         * lib/xstriconv.c: New file.
31219
31220 2006-09-06  Bruno Haible  <bruno@clisp.org>
31221
31222         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
31223         lib_..._LDFLAGS.
31224
31225 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31226
31227         * lib/argz_.h: Sync from Libtool.
31228
31229         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
31230                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
31231
31232         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
31233
31234 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
31235
31236         * modules/trim: New file.
31237
31238 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
31239
31240         * lib/trim.h: New file.
31241         * lib/trim.c: New file.
31242
31243 2006-09-05  Bruno Haible  <bruno@clisp.org>
31244
31245         * MODULES.html.sh (String handling): Add trim.
31246
31247 2006-09-04  Karl Berry  <karl@gnu.org>
31248
31249         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
31250         until next release.
31251
31252 2006-09-03  Bruno Haible  <bruno@clisp.org>
31253
31254         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
31255         correctly.
31256
31257 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
31258
31259         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
31260         not gl_GETLOADAVG.  Omit unneeded semicolons.
31261         Problems reported by Ralf Wildenhues in
31262         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
31263         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
31264         at the end, which is the usual gnulib style.
31265
31266         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
31267         of doing all the work ourselves.
31268         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
31269         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
31270
31271 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
31272
31273         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
31274         Problem reported by Ralf Wildenhues in
31275         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
31276
31277         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
31278         HAVE_STRUCT_STATFS_F_FSTYPENAME.
31279
31280 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
31281
31282         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
31283         yesterday's patch by changing test -n to test -z.
31284
31285 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
31286
31287         * modules/getloadavg (Files): Add m4/getloadavg.m4.
31288         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
31289         the former is now obsolescent.
31290
31291         * modules/chdir-long (Depends-on): Add fcntl.
31292
31293 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
31294
31295         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
31296         obsolescent, and programs should use gnulib instead.
31297         * m4/getloadavg.m4: New file, with contents taken from Autoconf
31298         but with prefixes changed.
31299
31300 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
31301
31302         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
31303         or stdbool.h, because they might not exist while configuring.
31304
31305         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
31306         Don't include unistd.h or limits.h; not needed, since chdir-long.h
31307         does that for us.
31308         (O_DIRECTORY): Remove.
31309
31310 2006-08-31  Eric Blake  <ebb9@byu.net>
31311
31312         * gnulib-tool: Don't let emacs change spaces to TAB.
31313
31314 2006-08-31  Bruno Haible  <bruno@clisp.org>
31315
31316         * gnulib-tool: When calling func_import more than once, do it in a
31317         subshell.
31318         Reported by Eric Blake <ebb9@byu.net>.
31319
31320 2006-08-31  Bruno Haible  <bruno@clisp.org>
31321
31322         * gnulib-tool (nl): Remove variable.
31323         (sed_transform_lib_file): Use more robust test for config-h module.
31324         (func_import): Fix typo in 2006-08-25 patch.
31325
31326 2006-08-31  Bruno Haible  <bruno@clisp.org>
31327
31328         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
31329         specified, augment Makefile.am variables instead of assigning them.
31330
31331 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
31332
31333         Work around a bug in both the Linux and SunOS 64-bit kernels:
31334         nanosleep mishandles sleeps for longer than 2**31 seconds.
31335         Problem reported by Frank v Waveren in
31336         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
31337         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
31338         Check for nanosleep bug.
31339         (LIB_NANOSLEEP): Append clock_gettime library if needed.
31340
31341 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
31342
31343         Work around a bug in both the Linux and SunOS 64-bit kernels:
31344         nanosleep mishandles sleeps for longer than 2**31 seconds.
31345         Problem reported by Frank v Waveren in
31346         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
31347         * lib/nanosleep.c (BILLION): New constant.
31348         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
31349         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
31350         implementation.
31351
31352 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
31353
31354         * modules/nanosleep (Depends-on): Add gettime.
31355
31356 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
31357         and Simon Josefsson  <jas@extundo.com>
31358         and Oskar Liljeblad  <oskar@osk.mine.nu>
31359
31360         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
31361         * gnulib-tool (func_import): New license type 'unmodifiable license
31362         text'.
31363         * modules/fdl: Use it.  Longer description.
31364         * module/gpl, module/lgpl: New files.
31365
31366 2006-08-30  Jim Meyering  <jim@meyering.net>
31367
31368         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
31369         shadowing the parameter.
31370
31371 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31372
31373         Sync from Libtool:
31374
31375         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31376
31377         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
31378         sharing with gnulib.  Report by Eric Blake.
31379
31380 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
31381
31382         * modules/isapipe: New file.
31383         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
31384
31385 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
31386
31387         * modules/configmake (Makefile.am): Add a comment, and omit
31388         the CONFIGMAKE_ prefix from generated macro names.  Suggested
31389         by Bruno Haible.
31390
31391 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
31392
31393         * m4/isapipe.m4: New file.
31394
31395 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
31396
31397         * lib/isapipe.c, lib/isapipe.h: New files.
31398
31399 2006-08-29  Jim Meyering  <jim@meyering.net>
31400
31401         * modules/configmake (Makefile.am): Make configmake.h depend on
31402         Makefile.  Otherwise, a stale configmake.h could hang around.
31403
31404 2006-08-29  Eric Blake  <ebb9@byu.net>
31405
31406         * lib/error.c (error_at_line, print_errno_message): Match libc, after
31407         resolution of upstream bug 3044.
31408
31409 2006-08-29  Bruno Haible  <bruno@clisp.org>
31410
31411         * modules/localcharset (Depends-on): Add configmake.
31412         (Makefile.am): Remove setting of LIBDIR through DEFS.
31413
31414 2006-08-29  Bruno Haible  <bruno@clisp.org>
31415
31416         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
31417         defined.
31418
31419 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
31420
31421         * modules/fcntl: New file.
31422         * modules/chdir-safer (Depends-on): Add fcntl.
31423         * modules/fts: Likewise.
31424         * modules/mkdir-p: Likewise.
31425
31426         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
31427         This undoes the most recent change, since we're now addressing the
31428         problem in a different way.
31429
31430         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
31431         into output, since the output might be called Makefile.am even
31432         if $makefile_name is something different.
31433         (func_import): Use $makefile_am rather than
31434         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
31435         empty.
31436
31437         * modules/inttypes (Files): Add m4/inttypes-h.m4.
31438
31439 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
31440
31441         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
31442         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
31443         recent change to stdint.m4, since we're now addressing the problem in a
31444         different way.
31445
31446 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
31447
31448         * m4/fcntl_h.m4: New file.
31449
31450 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
31451
31452         * lib/fcntl_.h: New file.
31453         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
31454         the fcntl module.
31455         * lib/dirchownmod.c: Likewise.
31456         * lib/fts.c: Likewise.
31457
31458         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
31459         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
31460         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
31461         just before including <inttypes.h>, to avoid circular inclusion.
31462
31463 2006-08-28  Jim Meyering  <jim@meyering.net>
31464
31465         * doc/visibility.texi: Actually read and correct the grammar of the
31466         sentence affected by yesterday's change.
31467
31468 2006-08-28  Eric Blake  <ebb9@byu.net>
31469
31470         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
31471         needs wrapper.
31472
31473 2006-08-28  Eric Blake  <ebb9@byu.net>
31474
31475         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
31476
31477 2006-08-28  Eric Blake  <ebb9@byu.net>
31478
31479         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
31480
31481 2006-08-28  Bruno Haible  <bruno@clisp.org>
31482
31483         * modules/c-strstr: New file, from GNU gettext.
31484         * MODULES.html.sh (String handling): Add c-strstr.
31485
31486 2006-08-28  Bruno Haible  <bruno@clisp.org>
31487
31488         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
31489         macros.
31490         Reported by Eric Blake.
31491
31492 2006-08-28  Bruno Haible  <bruno@clisp.org>
31493
31494         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
31495         (VASNPRINTF): Return a string of length > INT_MAX without failing.
31496         * lib/vasprintf.c: Include errno.h, limits.h.
31497         (EOVERFLOW): New fallback definition.
31498         (vasprintf): Test here whether the string length is > INT_MAX.
31499         * lib/vsnprintf.c: Include errno.h, limits.h.
31500         (EOVERFLOW): New fallback definition.
31501         (vsnprintf): Fix bug when generated string was too long for the buffer.
31502         Test here whether the string length is > INT_MAX.
31503
31504 2006-08-28  Bruno Haible  <bruno@clisp.org>
31505
31506         * lib/inttypes_.h (SCNX*): Remove definitions.
31507         Reported by Eric Blake.
31508
31509 2006-08-28  Bruno Haible  <bruno@clisp.org>
31510
31511         * lib/c-strstr.h: New file, from GNU gettext.
31512         * lib/c-strstr.c: New file, from GNU gettext.
31513
31514 2006-08-28  Bruno Haible  <bruno@clisp.org>
31515
31516         * gnulib-tool: Reorder some statements.
31517
31518 2006-08-28  Bruno Haible  <bruno@clisp.org>
31519
31520         * gnulib-tool: New option --makefile-name.
31521         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
31522         $makefile_name.
31523         (func_import): Write $makefile_name to the cache file, and read it from
31524         there unless explicitly specified. Use $makefile_name as file name
31525         instead of Makefile.am. Adjust the recommendations accordingly.
31526
31527 2006-08-28  Bruno Haible  <bruno@clisp.org>
31528
31529         * gnulib-tool (func_verify_module): Check against misapplying patch.
31530
31531 2006-08-28  Bruno Haible  <bruno@clisp.org>
31532
31533         * gnulib-tool (func_relativize, func_relconcat): New functions.
31534         Give an error if --local-dir is given with --update.
31535         Remove trailing slashes from $local_gnulib_dir.
31536         (func_import): Store the relativized $local_gnulib_dir in
31537         gnulib-cache.m4, and read it from there if not specified explicitly.
31538
31539 2006-08-28  Bruno Haible  <bruno@clisp.org>
31540
31541         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
31542         is the current directory. Respect also $local_gnulib_dir.
31543
31544 2006-08-28  Bruno Haible  <bruno@clisp.org>
31545             Simon Josefsson  <jas@extundo.com>
31546
31547         BeOS portability.
31548         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
31549
31550 2006-08-27  Jim Meyering  <jim@meyering.net>
31551
31552         * doc/visibility.texi: Remove duplicate word: "pointer".
31553
31554 2006-08-26  Bruno Haible  <bruno@clisp.org>
31555
31556         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
31557         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
31558         (Makefile.am): Create inttypes.h from inttypes_.h.
31559         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
31560
31561         * modules/imaxabs: New file.
31562
31563         * modules/imaxdiv: New file.
31564
31565 2006-08-26  Bruno Haible  <bruno@clisp.org>
31566
31567         * m4/inttypes.m4: New file.
31568         * m4/_inttypes_h.m4: Remove file.
31569         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
31570         PRI_MACROS_BROKEN.
31571         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
31572
31573         * m4/imaxabs.m4: New file.
31574
31575         * m4/imaxdiv.m4: New file.
31576
31577 2006-08-26  Bruno Haible  <bruno@clisp.org>
31578
31579         * lib/inttypes_.h: New file.
31580         * lib/inttypes.h: Remove file.
31581         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
31582
31583         * lib/imaxabs.c: New file.
31584
31585         * lib/imaxdiv.c: New file.
31586
31587 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
31588
31589         New config-h module, so that "make" output needn't be cluttered
31590         by -DHAVE_CONFIG_H.
31591         * MODULES.html.sh (Support for building libraries and executables):
31592         Add config-h.
31593         * modules/config-h: New file.
31594         * gnulib-tool (nl, sed_transform_lib_file): New vars.
31595         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
31596         the config-h module is used.
31597
31598         New configmake module, so that "make" output needn't be cluttered
31599         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
31600         * MODULES.html.sh (Support for building libraries and executables):
31601         Add configmake.
31602         * modules/configmake: New file.
31603
31604 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
31605
31606         * m4/config-h.m4: New file.
31607
31608 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
31609
31610         * config/srclist.txt: Add elisp-comp.
31611
31612 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
31613
31614         * MODULES.html.sh (Support for building libraries and executables):
31615         Add elisp-comp.
31616         * build-aux/elisp-comp: New file.
31617         * modules/elisp-comp: New file.
31618
31619 2006-08-24  Bruno Haible  <bruno@clisp.org>
31620
31621         * gnulib-tool (func_create_testdir): Use non-default values of
31622         sourcebase and m4base.
31623
31624 2006-08-24  Bruno Haible  <bruno@clisp.org>
31625
31626         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
31627         HTML structure.
31628
31629 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
31630
31631         * modules/openat (Depends-on): Add lchown.
31632
31633 2006-08-23  Bruno Haible  <bruno@clisp.org>
31634
31635         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
31636         of gl_LOCK_EARLY instead of gl_LOCK.
31637
31638 2006-08-23  Bruno Haible  <bruno@clisp.org>
31639
31640         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
31641         on OSF/1 to no.
31642         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
31643
31644 2006-08-23  Bruno Haible  <bruno@clisp.org>
31645
31646         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
31647         as unusable.
31648
31649         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
31650         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
31651         (gl_LOCK): New macro.
31652
31653 2006-08-22  Simon Josefsson  <jas@extundo.com>
31654
31655         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
31656         to md5 module.
31657
31658 2006-08-22  Simon Josefsson  <jas@extundo.com>
31659
31660         * MODULES.html.sh: Add "Support for maintaining and release
31661         projects".
31662
31663         * build-aux/gnupload: New file, from coreutils.
31664
31665 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
31666
31667         Avoid the need for AC_LIBSOURCES in m4 macros.
31668         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
31669         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
31670         * modules/check-version (EXTRA_DIST): Add check-version.h.
31671         * modules/crc (EXTRA_DIST): Add crc.h.
31672         * modules/des (EXTRA_DIST): Add des.h.
31673         * modules/gc (EXTRA_DIST): Add gc.h.
31674         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
31675         * modules/getline (EXTRA_DIST): Add getline.h.
31676         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
31677         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
31678         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
31679         * modules/md2 (EXTRA_DIST): Add md2.h.
31680         * modules/md4 (EXTRA_DIST): Add md4.h.
31681         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
31682         * modules/read-file (EXTRA_DIST): Add read-file.h.
31683         * modules/readline (EXTRA_DIST): Add readline.h.
31684         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
31685         rijndael-api-fst.h.
31686
31687 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
31688
31689         * m4/rijndael.m4 (gl_ARCFOUR):
31690         * m4/arctwo.m4 (gl_ARCTWO):
31691         * m4/check-version.m4 (gl_CHECK_VERSION):
31692         * m4/crc.m4 (gl_CRC):
31693         * m4/des.m4 (gl_DES):
31694         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
31695         * m4/gc.m4 (gl_GC):
31696         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
31697         * m4/getline.m4 (gl_FUNC_GETLINE):
31698         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
31699         * m4/hmac-md5.m4 (gl_HMAC_MD5):
31700         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
31701         * m4/md2.m4 (gl_MD2):
31702         * m4/md4.m4 (gl_MD4):
31703         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
31704         * m4/read-file.m4 (gl_FUNC_READ_FILE):
31705         * m4/readline.m4 (gl_FUNC_READLINE):
31706         * m4/rijndael.m4 (gl_RIJNDAEL):
31707         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
31708         to get the necessary .h files and whatnot.
31709
31710 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
31711
31712         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
31713         gnulib rather than the other way around.
31714         * config/srclistvars.sh (COREUTILS): Remove.
31715
31716 2006-08-22  Jim Meyering  <jim@meyering.net>
31717
31718         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
31719
31720         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
31721
31722 2006-08-22  Eric Blake  <ebb9@byu.net>
31723
31724         * modules/regexprops-generic: New file.
31725         * MODULES.html.sh (Support for building documentation): List it.
31726
31727 2006-08-22  Eric Blake  <ebb9@byu.net>
31728
31729         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
31730         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
31731         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
31732         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
31733
31734 2006-08-22  Bruno Haible  <bruno@clisp.org>
31735
31736         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
31737         and lib_LTLIBRARIES like the other lib_* variables.
31738
31739 2006-08-22  Bruno Haible  <bruno@clisp.org>
31740
31741         * build-aux/x-to-1.in: New file, from GNU gettext.
31742
31743 2006-08-22  Bruno Haible  <bruno@clisp.org>
31744
31745         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
31746         <utmpx.h> exists.
31747
31748 2006-08-22  Bruno Haible  <bruno@clisp.org>
31749
31750         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
31751         <utmpx.h> exists.
31752
31753 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
31754
31755         BeOS portability.
31756         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
31757         exist.
31758         Problem reported by Bruno Haible.
31759
31760 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
31761
31762         Avoid the need for AC_LIBSOURCES in m4 macros.
31763         * modules/acl (EXTRA_DIST): Add acl.h.
31764         * modules/argmatch (Files): Add m4/argmatch.m4.
31765         (configure.ac): Add gl_ARGMATCH.
31766         (EXTRA_DIST): Renamed from lib_SOURCES, for
31767         consistency with the other modules.  Remove argmatch.c.
31768         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
31769         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
31770         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
31771         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
31772         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
31773         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
31774         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
31775         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
31776         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
31777         * modules/closeout (EXTRA_DIST): Add closeout.h.
31778         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
31779         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
31780         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
31781         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
31782         dirname.h; remove basename.c and stripslash.c.
31783         * modules/exclude (EXTRA_DIST): Add exclude.h.
31784         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
31785         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
31786         * modules/file-type (EXTRA_DIST): Add file-type.h.
31787         * modules/filemode (EXTRA_DIST): Add filemode.h.
31788         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
31789         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
31790         * modules/fpending (EXTRA_DIST): Add __fpending.h.
31791         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
31792         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
31793         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
31794         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
31795         * modules/getdate (EXTRA_DIST): Add getdate.c.
31796         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
31797         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
31798         * modules/getpass (EXTRA_DIST): Add getpass.h.
31799         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
31800         * modules/group-member (EXTRA_DIST): Add group-member.h.
31801         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
31802         * modules/hash (EXTRA_DIST): Add hash.h.
31803         * modules/human (EXTRA_DIST): Add human.h.
31804         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
31805         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
31806         * modules/lchown (EXTRA_DIST): Add lchown.h.
31807         * modules/long-options (EXTRA_DIST): Add long-options.h.
31808         * modules/lstat (EXTRA_DIST): Add lstat.h.
31809         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
31810         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
31811         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
31812         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
31813         * modules/memxor (EXTRA_DIST): Add memxor.h.
31814         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
31815         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
31816         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
31817         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
31818         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
31819         * modules/physmem (EXTRA_DIST): Add physmem.h.
31820         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
31821         * modules/posixver (EXTRA_DIST): Add posixver.h.
31822         * modules/quote (EXTRA_DIST): Add quote.h.
31823         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
31824         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
31825         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
31826         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
31827         regex_internal.h regexec.c.
31828         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
31829         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
31830         * modules/same (EXTRA_DIST): Add same.h.
31831         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
31832         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
31833         * modules/savedir (EXTRA_DIST): Add savedir.h.
31834         * modules/sha1 (EXTRA_DIST): Add sha1.h.
31835         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
31836         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
31837         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
31838         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
31839         * modules/strdup (EXTRA_DIST): Add strdup.h.
31840         * modules/strftime (EXTRA_DIST): Add strftime.h.
31841         * modules/strndup (EXTRA_DIST): Add strndup.h.
31842         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
31843         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
31844         * modules/time_r (EXTRA_DIST): Add time_r.h.
31845         * modules/timespec (EXTRA_DIST): Add timespec.h.
31846         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
31847         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
31848         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
31849         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
31850         * modules/userspec (EXTRA_DIST): Add userspec.h.
31851         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
31852         * modules/utimens (EXTRA_DIST): Add utimens.h.
31853         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
31854         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
31855         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
31856         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
31857         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
31858         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
31859         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
31860         * modules/yesno (EXTRA_DIST): Add yesno.h.
31861
31862 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
31863
31864         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
31865
31866         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
31867         * m4/dev-ino.m4, same-inode.m4: Remove.
31868
31869         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
31870         * m4/acl.m4 (AC_FUNC_ACL):
31871         * m4/backupfile.m4 (gl_BACKUPFILE):
31872         * m4/c-strtod.m4 (gl_C99_STRTOLD):
31873         * m4/canon-host.m4 (gl_CANON_HOST):
31874         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
31875         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
31876         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
31877         * m4/cloexec.m4 (gl_CLOEXEC):
31878         * m4/close-stream.m4 (gl_CLOSE_STREAM):
31879         * m4/closeout.m4 (gl_CLOSEOUT):
31880         * m4/dirfd.m4 (gl_FUNC_DIRFD):
31881         * m4/dirname.m4 (gl_DIRNAME):
31882         * m4/exclude.m4 (gl_EXCLUDE):
31883         * m4/exitfail.m4 (gl_EXITFAIL):
31884         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
31885         * m4/file-type.m4 (gl_FILE_TYPE):
31886         * m4/filemode.m4 (gl_FILEMODE):
31887         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
31888         * m4/fpending.m4 (gl_FUNC_FPENDING):
31889         * m4/fprintftime.m4 (gl_FPRINTFTIME):
31890         * m4/fts.m4 (gl_FUNC_FTS):
31891         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
31892         * m4/getdate.m4 (gl_GETDATE):
31893         * m4/gethrxtime.m4 (gl_GETHRXTIME):
31894         * m4/getpagesize.m4 (gl_GETPAGESIZE):
31895         * m4/getpass.m4 (gl_FUNC_GETPASS):
31896         * m4/gettime.m4 (gl_GETTIME):
31897         * m4/getugroups.m4 (gl_GETUGROUPS):
31898         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
31899         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
31900         * m4/hard-locale.m4 (gl_HARD_LOCALE):
31901         * m4/hash.m4 (gl_HASH):
31902         * m4/idcache.m4 (gl_IDCACHE):
31903         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
31904         * m4/lchown.m4 (gl_FUNC_LCHOWN):
31905         * m4/long-options.m4 (gl_LONG_OPTIONS):
31906         * m4/lstat.m4 (gl_FUNC_LSTAT):
31907         * m4/md5.m4 (gl_MD5):
31908         * m4/memcasecmp.m4 (gl_MEMCASECMP):
31909         * m4/memcoll.m4 (gl_MEMCOLL):
31910         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
31911         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
31912         * m4/memxor.m4 (gl_MEMXOR):
31913         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
31914         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
31915         * m4/modechange.m4 (gl_MODECHANGE):
31916         * m4/mountlist.m4 (gl_MOUNTLIST):
31917         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
31918         * m4/openat.m4 (gl_FUNC_OPENAT):
31919         * m4/pathmax.m4 (gl_PATHMAX):
31920         * m4/physmem.m4 (gl_PHYSMEM):
31921         * m4/posixtm.m4 (gl_POSIXTM):
31922         * m4/posixver.m4 (gl_POSIXVER):
31923         * m4/quote.m4 (gl_QUOTE):
31924         * m4/quotearg.m4 (gl_QUOTEARG):
31925         * m4/readtokens.m4 (gl_READTOKENS):
31926         * m4/readutmp.m4 (gl_READUTMP):
31927         * m4/regex.m4 (gl_REGEX):
31928         * m4/safe-read.m4 (gl_SAFE_READ):
31929         * m4/safe-write.m4 (gl_SAFE_WRITE):
31930         * m4/same.m4 (gl_SAME):
31931         * m4/save-cwd.m4 (gl_SAVE_CWD):
31932         * m4/savedir.m4 (gl_SAVEDIR):
31933         * m4/settime.m4 (gl_SETTIME):
31934         * m4/sha1.m4 (gl_SHA1):
31935         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
31936         * m4/stat-macros.m4 (gl_STAT_MACROS):
31937         * m4/stat-time.m4 (gl_STAT_TIME):
31938         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
31939         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
31940         * m4/strdup.m4 (gl_FUNC_STRDUP):
31941         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
31942         * m4/strndup.m4 (gl_FUNC_STRNDUP):
31943         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
31944         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
31945         * m4/time_r.m4 (gl_TIME_R):
31946         * m4/timespec.m4 (gl_TIMESPEC):
31947         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
31948         * m4/unlinkdir.m4 (gl_UNLINKDIR):
31949         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
31950         * m4/userspec.m4 (gl_USERSPEC):
31951         * m4/utimecmp.m4 (gl_UTIMECMP):
31952         * m4/utimens.m4 (gl_UTIMENS):
31953         * m4/xalloc.m4 (gl_XALLOC):
31954         * m4/xgetcwd.m4 (gl_XGETCWD):
31955         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
31956         * m4/xreadlink.m4 (gl_XREADLINK):
31957         * m4/xstrtod.m4 (gl_XSTRTOD):
31958         * m4/yesno.m4 (gl_YESNO):
31959         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
31960         to get the necessary .h files and whatnot.
31961
31962 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
31963             Bruno Haible  <bruno@clisp.org>
31964
31965         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
31966         /bin/sh understanding of '!' conditional negation.
31967
31968 2006-08-21  Jim Meyering  <jim@meyering.net>
31969
31970         * modules/openat (Depends-on): Really alphabetize.
31971
31972         * modules/acl (Depends-on): Add error and quote.
31973
31974         * check-module (find_included_lib_files): Add at-func.c to the
31975         ok-to-include-more-than-once white list.
31976
31977         * modules/openat (Depends-on): Add lstat.  Alphabetize.
31978
31979 2006-08-21  Bruno Haible  <bruno@clisp.org>
31980
31981         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
31982         Emit a pkgdata_DATA variable only if some snippets add contents to it.
31983         Reported by Martin Lambers <marlam@marlam.de>.
31984
31985 2006-08-21  Bruno Haible  <bruno@clisp.org>
31986
31987         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
31988         specify an installation location, don't emit a noinst_LIBRARIES or
31989         noinst_LTLIBRARIES assignment.
31990
31991 2006-08-21  Bruno Haible  <bruno@clisp.org>
31992
31993         BeOS portability.
31994         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
31995         BeOS has mbrtowc() but no <wctype.h>.
31996
31997 2006-08-21  Bruno Haible  <bruno@clisp.org>
31998
31999         BeOS portability.
32000         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
32001         exist.
32002
32003 2006-08-21  Bruno Haible  <bruno@clisp.org>
32004
32005         BeOS portability.
32006         * lib/mbchar.h: Include <wctype.h> only if it exists.
32007
32008 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
32009
32010         Remove files that are no longer needed by their respective modules.
32011         * m4/obstack.m4: Remove.
32012         * m4/strerror_r.m4: Remove.
32013         * m4/uint32_t.m4: Remove.
32014         * m4/uintptr_t.m4: Remove.
32015         * m4/ullong_max.m4: Remove.
32016         * m4/xstrtoimax.m4: Remove.
32017         * m4/xstrtoumax.m4: Remove.
32018
32019         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
32020         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
32021         dependencies now capture this.
32022
32023         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
32024         Do not use AC_LIBSOURCES, since gnulib modules now do this.
32025         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
32026         * m4/human.m4 (gl_HUMAN): Likewise.
32027         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
32028         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
32029
32030         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
32031
32032         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
32033         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
32034         stdint.
32035         * m4/human.m4 (gl_HUMAN): Likewise.
32036         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
32037         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
32038         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
32039         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
32040         * m4/xstrtol (gl_XSTRTOL): Likewise.
32041
32042         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
32043         AC_TYPE_LONG_LONG_INT.
32044         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
32045         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
32046         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
32047         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
32048
32049         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
32050         on stdbool.
32051
32052         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
32053         (gl_PREREQ_XSTRTOUL): Remove.
32054
32055         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
32056
32057         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
32058         mode.
32059
32060 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
32061
32062         Add and change modules to make it easier for coreutils to use
32063         gnulib-tool.
32064         * modules/backupfile (Files): Remove m4/d-ino.m4.
32065         (Depends-on): Add d-ino.
32066         * modules/cycle-check (Depends-on): Add stdint.
32067         (lib_SOURCES): Add cycle-check.h.
32068         * modules/d-ino: New module.
32069         * modules/d-type: New module.
32070         * modules/error (Files): Remove m4/strerror_r.m4.
32071         * modules/filemode (Files): Add m4/st_dm_mode.m4.
32072         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
32073         m4/inttypes_h.m4, m4/uintmax_t.m4.
32074         (Depends-on): Add stdint.
32075         (lib_SOURCES): Add fsusage.h.
32076         * modules/getcwd (Files): Remove d-ino.m4.
32077         (Depends-on): Add d-ino.
32078         * modules/getndelim2 (Depends-on): Add stdint.
32079         * modules/glob (Files): Remove m4/d-type.m4.
32080         (Depends-on): Add d-type.
32081         * modules/host-os: New module.
32082         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
32083         m4/inttypes_h.m4, m4/uintmax_t.m4.
32084         * Depends-on: Add stdint.
32085         (lib_SOURCES): Add human.h.
32086         * modules/inttostr (Files): Remove m4/intmax_t.m4,
32087         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
32088         m4/uintmax_t.m4, m4/ulonglong.m4.
32089         (Depends-on): Add stdint.
32090         (EXTRA_DIST): Add inttostr.h.
32091         * modules/lchmod: New module.
32092         * modules/link-follow: New module.
32093         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
32094         (Depends-on): Add lchmod.
32095         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
32096         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
32097         (Depends-on): Add stdint.
32098         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
32099         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
32100         (Depends-on): Add stdint.
32101         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
32102         * modules/perl: New module.
32103         * modules/regex (Depends-on): Add stdint.
32104         * modules/rmdir-errno: New module.
32105         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
32106         m4/intmax_t.m4.
32107         (Depends-on): Add stdint.
32108         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
32109         m4/uintmax_t.m4.
32110         (Depends-on): Add stdint.
32111         * modules/unlink-busy: New module.
32112         * modules/utimecmp (Depends-on): Add stdint.
32113         * modules/uptime: New module.
32114         * modules/winsz-ioctl: New module.
32115         * modules/winsz-termios: New module.
32116         * modules/xnanosleep (Depends-on): Add nanosleep.
32117         * modules/ullong_max: Remove.
32118         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
32119         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
32120         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
32121         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
32122         (Depends-on): Add inttypes.
32123         (lib_SOURCES): Add xstrtol.h.
32124         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
32125         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
32126         * MODULES.html.sh: Move 'assert' into the assert section.
32127         Move 'dummy' into the linking section.
32128         Remove ullong_max.
32129         Add section for compatibility checks for POSIX:2001 functions,
32130         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
32131         winsz-ioctl, and winsz-termios into it.
32132         Add lchmod.
32133         Add top-level Misc section and put host-os, perl, and uptime
32134         into it.
32135
32136 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
32137
32138         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
32139         now assume the stdint module.  Do not include inttypes.h.
32140         * lib/fsusage.h: Likewise.
32141         * lib/getndelim2.c: Likewise.
32142         * lib/human.h: Likewise.
32143         * lib/inttostr.h: Likewise.
32144         * lib/obstack.c: Likewise.
32145         * lib/regex_internal.h: Likewise.
32146         * lib/tempname.c: Likewise.
32147         * lib/utimecmp.c: Likewise.
32148         * lib/xstrtol.h: Likewise.
32149
32150         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
32151
32152         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
32153         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
32154         * lib/xtime.h: Likewise.
32155
32156 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
32157
32158         * modules/openat (Files): Add lib/fchmodat.c.
32159         Fixes problem reported by Jay Youngman.
32160
32161 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
32162
32163         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
32164         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
32165
32166 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
32167             Bruno Haible  <bruno@clisp.org>
32168
32169         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
32170         and is a script that invokes bison. Tighten the code. Add comments.
32171
32172 2006-08-18  Jim Meyering  <jim@meyering.net>
32173
32174         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
32175         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
32176         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
32177         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
32178
32179 2006-08-18  Bruno Haible  <bruno@clisp.org>
32180
32181         * modules/bison-i18n: New file.
32182         * MODULES.html.sh (Internationalization functions): Add it.
32183
32184 2006-08-18  Bruno Haible  <bruno@clisp.org>
32185
32186         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
32187         sys/statvfs.h. When getmntinfo was found, check its declaration and
32188         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
32189
32190 2006-08-18  Bruno Haible  <bruno@clisp.org>
32191
32192         * m4/bison-i18n.m4: New file, from bison.
32193
32194 2006-08-18  Bruno Haible  <bruno@clisp.org>
32195
32196         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
32197         (ME_DUMMY): Treat "kernfs" as a dummy.
32198         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
32199
32200 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
32201
32202         Update from coreutils.
32203
32204         2006-08-15  Jim Meyering  <jim@meyering.net>
32205
32206         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
32207
32208         2006-01-17  Jim Meyering  <jim@meyering.net>
32209
32210         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
32211
32212         2006-01-11  Jim Meyering  <jim@meyering.net>
32213
32214         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
32215         Check for the lchmod function.
32216
32217 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
32218
32219         Update from coreutils.
32220
32221         * lib/__fpending.h: Add copyright notice.
32222         * lib/fprintftime.h: Likewise.
32223         * lib/savedir.c: Use (C) in copyright notice.
32224         * lib/savedir.h: Likewise.
32225
32226         2006-08-15  Jim Meyering  <jim@meyering.net>
32227
32228         * lib/at-func.c: New file, with the logic of all emulated at-functions.
32229         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
32230         in support of the EXPECTED_ERRNO macro.
32231         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
32232         definitions.  Instead, define the appropriate symbols and include
32233         "at-func.c".
32234         * lib/mkdirat.c (mkdirat): Likewise.
32235         * lib/fchmodat.c (fchmodat): Likewise.
32236         (ENOSYS): Remove definition.
32237         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
32238         it.  Don't include "unistd--.h" -- it wasn't ever used.
32239
32240         2006-01-17  Jim Meyering  <jim@meyering.net>
32241
32242         Rewrite fts.c not to change the current working directory,
32243         by using openat, fstatat, fdopendir, etc..
32244
32245         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
32246         (HAVE_OPENAT_SUPPORT): Define.
32247         [_LIBC] (fchdir): Don't undef or define; no longer used.
32248         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
32249         Now, this `function' always succeeds, and consumes its file descriptor
32250         parameter -- so callers must not close such FDs.  Update callers.
32251         (diropen_fd, opendirat, cwd_advance_fd): New functions.
32252         (diropen): Add parameter, SP.  Adjust all callers.
32253         Implement using diropen_fd, rather than open.
32254         (fts_open): Initialize new member, fts_cwd_fd.
32255         Remove fts_rft-setting code.
32256         (fts_close): Close fts_cwd_fd, if necessary.
32257         (__opendir2): Define in terms of opendir or opendirat,
32258         depending on whether the FST_NOCHDIR flag is set.
32259         (fts_build): Since fts_safe_changedir consumes its FD, and since
32260         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
32261         and close the dup'd file descriptor upon failure.
32262         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
32263         (fts_safe_changedir): Tweak semantics to reflect that this function
32264         now calls cwd_advance_fd and hence consumes its FD argument.
32265         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
32266         [struct FTS] (fts_rft): Remove now-unused member.
32267         [struct FTS] (fts_cycle.state): Improve comment.
32268
32269         * lib/openat.c (openat_needs_fchdir): New function.
32270         * lib/openat.h (openat_needs_fchdir): Declare it.
32271
32272 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
32273
32274         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
32275         Problem and fix reported by Pádraig Brady in
32276         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
32277
32278 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
32279
32280         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
32281
32282 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
32283
32284         * lib/memcoll.c (memcoll): Optimize for the common case where the
32285         arguments are bytewise equal.
32286
32287 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
32288
32289         * doc/regexprops-generic.texi: Add a copyright notice.
32290
32291 2006-08-15  Bruno Haible  <bruno@clisp.org>
32292
32293         * modules/tmpdir (License): Change to LGPL.
32294
32295 2006-08-15  Bruno Haible  <bruno@clisp.org>
32296
32297         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
32298         module.
32299
32300 2006-08-14  Simon Josefsson  <jas@extundo.com>
32301
32302         * config/srclist.txt: Add gnupload.
32303
32304 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
32305
32306         Change copyright notice from LGPL 2 to GPL 2, since that's the
32307         standard form used in the gnulib repository.
32308         * tests/test-lock.c: Likewise.
32309         * tests/test-stdint.c: Likewise.
32310         * tests/test-tls.c: Likewise.
32311
32312         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
32313         prelude-manager.  User shorter URLs for GNU projects, without '?'.
32314         Add copyright notice.
32315
32316         * check-module: Add copyright notice.  Output a copyright
32317         notice if "--version" is specified.
32318         * modules/COPYING: New file.
32319         * tests/test-getaddrinfo.c: Add copyright notice.
32320         * tests/test-verify.c: Likewise.
32321
32322 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
32323
32324         Change copyright notice from LGPL 2 to GPL 2, since that's the
32325         standard form used in the gnulib repository.
32326         * lib/lock.c: LGPL -> GPL.
32327         * lib/lock.h: Likewise.
32328         * lib/strnlen1.c: Likewise.
32329         * lib/strnlen1.h: Likewise.
32330         * lib/tls.c: Likewise.
32331         * lib/tls.h: Likewise.
32332         * lib/tmpdir.c: Likewise.
32333
32334         * lib/TODO: Remove; this belongs only in coreutils.
32335
32336 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
32337
32338         Add copyright notices to long-enough files that lack them, since
32339         otherwise the files aren't clearly free.  Use the same notice that
32340         getdate.texi already uses.
32341         * doc/alloca-opt.texi: Add copyright notice.
32342         * doc/alloca.texi: Likewise.
32343         * doc/ctime.texi: Likewise.
32344         * doc/functions.texi: Likewise.
32345         * doc/gcd.texi: Likewise.
32346         * doc/gnulib-tool.texi: Likewise.
32347         * doc/inet_ntoa.texi: Likewise.
32348         * doc/visibility.texi: Likewise.
32349
32350         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
32351         * doc/quote.texi: Add copyright notice.
32352
32353         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
32354         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
32355         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
32356         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
32357         is now obsolete, and give a pointer to the Sun list.
32358         Add copyright notice.
32359
32360 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
32361
32362         * config/srclistvars.sh: Add copyright notice.
32363
32364 2006-08-14  Eric Blake  <ebb9@byu.net>
32365
32366         Import the following change from libc:
32367
32368         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
32369
32370         Upstream bug 2997.
32371         * lib/misc/error.c: Add space between program name and message if file
32372         name is missing.
32373
32374 2006-08-12  Karl Berry  <karl@gnu.org>
32375
32376         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
32377         remove, these originate in gnulib now.
32378
32379 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32380
32381         * doc/Makefile (standards.info standards.html standards.dvi):
32382         Also depend on make-stds.texi.
32383
32384 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
32385
32386         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
32387         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
32388
32389         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
32390         in wchar_t.  Problem reported by Eric Blake.
32391
32392         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
32393         LEN is smaller than SIZE.  Suggested by Bruno Haible.
32394         Also, help the compiler to keep LEN in a register.
32395
32396 2006-08-11  Eric Blake  <ebb9@byu.net>
32397
32398         * users.txt: Sort.  Add tar.
32399
32400 2006-08-11  Bruno Haible  <bruno@clisp.org>
32401
32402         * users.txt: New file.
32403
32404 2006-08-11  Bruno Haible  <bruno@clisp.org>
32405
32406         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
32407         before <wchar.h>. Needed for OSF/1 and BSD/OS.
32408
32409 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
32410
32411         * modules/snprintf (Depends-on): Remove minmax.
32412         (Maintainer): Add self and Bruno.
32413
32414 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
32415
32416         * lib/.cppi-disable: Add snprintf.h, socket_.h.
32417         * lib/snprintf.c: Include <errno.h> and <limits.h>.
32418         (EOVERFLOW): Define if the system does not.
32419         Do not include "minmax.h"; it wasn't used.
32420         (snprintf): Don't assume size_t promotes to an unsigned type.
32421         Fix bug when generated string was too long for the buffer: the
32422         buffer's contents are supposed to be the initial prefix of the
32423         output.  Don't assume vasnprintf returns EOVERFLOW if the size
32424         exceeds INT_MAX; do the check ourselves.
32425
32426         Import the following changes from libc:
32427
32428         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
32429
32430         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
32431         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
32432         set wc to the byte which couldn't be converted.
32433         (re_string_reconstruct): Don't clear valid_raw_len before calling
32434         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
32435         tip_context using re_string_context_at.
32436
32437         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
32438
32439         * lib/posix/regex.h: g++ still cannot handled [restrict].
32440
32441         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
32442
32443         * lib/posix/regex.h: Remove special handling for VMS.
32444
32445 2006-08-10  Jim Meyering  <jim@meyering.net>
32446
32447         * modules/same-inode: New module.
32448         * modules/dev-ino: New module.
32449         * modules/cycle-check: Depend on these modules, rather than simply
32450         including their .h files.
32451         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
32452         required via m4/cycle-check.m4.
32453         * modules/same: Depend on new same-inode module, rather than
32454         including same-inode.h.
32455         * modules/chdir-safer: New file.
32456
32457         * modules/chown (Depends-on): Add stat-macros.
32458
32459 2006-08-10  Jim Meyering  <jim@meyering.net>
32460
32461         * m4/cycle-check.m4: New file.
32462         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
32463         * m4/dev-ino.m4, m4/same-inode.m4: New files.
32464
32465 2006-08-10  Eric Blake  <ebb9@byu.net>
32466
32467         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
32468         in from original proposal.
32469
32470 2006-08-10  Eric Blake  <ebb9@byu.net>
32471         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
32472
32473         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
32474         namespace.
32475
32476 2006-08-10  Bruno Haible  <bruno@clisp.org>
32477
32478         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
32479         as well.
32480
32481 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
32482
32483         Sync from coreutils.
32484
32485         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
32486
32487         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
32488         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
32489
32490 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
32491
32492         * modules/restrict: Remove; no longer needed now that we assume
32493         Autoconf 2.59 or later.
32494         * MODULES.html.sh: Remove 'restrict'.
32495         * modules/argp (Depends-on): Remove 'restrict'.
32496         * modules/base64 (Depends-on): Likewise.
32497         * modules/gc (Depends-on): Likewise.
32498         * modules/getaddrinfo (Depends-on): Likewise.
32499         * modules/glob (Depends-on): Likewise.
32500         * modules/inet_ntop (Depends-on): Likewise.
32501         * modules/inet_pton (Depends-on): Likewise.
32502         * modules/memxor (Depends-on): Likewise.
32503         * modules/regex (Depends-on): Likewise.
32504         * modules/strtok_r (Depends-on): Likewise.
32505         * modules/time_r (Depends-on): Likewise.
32506
32507 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
32508
32509         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
32510         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
32511         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
32512         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
32513         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
32514         * m4/memxor.m4 (gl_MEMXOR): Likewise.
32515         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
32516         gl_C_RESTRICT replaced by AC_C_RESTRICT.
32517
32518         Merge from coreutils.
32519         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
32520         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
32521         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
32522         * m4/time_r.m4 (gl_TIME_R): Likewise.
32523
32524 2006-08-09  Karl Berry  <karl@gnu.org>
32525
32526         * config/srclist.txt: no more gettext-tools, per Bruno.
32527
32528 2006-08-08  Eric Blake  <ebb9@byu.net>
32529
32530         * modules/verror: New module.
32531         * MODULES.html.sh: Document it.
32532
32533 2006-08-08  Eric Blake  <ebb9@byu.net>
32534
32535         * lib/verror.h, lib/verror.c: New files.
32536
32537 2006-08-08  Eric Blake  <ebb9@byu.net>
32538
32539         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
32540         verror_at_line output complies with GNU Coding Standards even when
32541         file is NULL.
32542
32543 2006-08-07  Bruno Haible  <bruno@clisp.org>
32544
32545         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
32546         versions of AIX.
32547         Reported by Ralf Wildenhues.
32548
32549 2006-08-07  Bruno Haible  <bruno@clisp.org>
32550
32551         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
32552         in an AC_DEFUN. Needed so that the autoconf snippets can use
32553         AC_REQUIRE.
32554
32555 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
32556
32557         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
32558         Initialize pkgdata_DATA.
32559         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
32560         overriding it.
32561
32562 2006-08-06  Eric Blake  <ebb9@byu.net>
32563
32564         * lib/error.h: Fold in some upstream changes from glibc.
32565         * lib/error.c: Likewise.
32566
32567 2006-08-04  Bruno Haible  <bruno@clisp.org>
32568
32569         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
32570         Make the mostlyclean-local rule depend on mostlyclean-generic.
32571         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
32572
32573 2006-07-31  Bruno Haible  <bruno@clisp.org>
32574
32575         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
32576         <stdlib.h>, <string.h>.
32577
32578 2006-07-30  Bruno Haible  <bruno@clisp.org>
32579
32580         * modules/readlink (License): Change to LGPL.
32581
32582 2006-07-30  Bruno Haible  <bruno@clisp.org>
32583
32584         * modules/javaversion (Makefile.am): Distribute javaversion.java and
32585         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
32586         set PKGDATADIR to point to it.
32587
32588 2006-07-30  Bruno Haible  <bruno@clisp.org>
32589
32590         * modules/csharpexec (configure.ac): Comment out macro invocation.
32591         * modules/javaexec (configure.ac): Likewise.
32592         * modules/javacomp-script (configure.ac): Likewise.
32593
32594         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
32595
32596 2006-07-30  Bruno Haible  <bruno@clisp.org>
32597
32598         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
32599         linked-list.
32600
32601 2006-07-30  Bruno Haible  <bruno@clisp.org>
32602
32603         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
32604
32605 2006-07-30  Bruno Haible  <bruno@clisp.org>
32606
32607         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
32608         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
32609         get removed.
32610
32611 2006-07-29  Bruno Haible  <bruno@clisp.org>
32612
32613         Make it possible for gnulib-tool to work with locally modified or
32614         augmented gnulib repositories.
32615         * gnulib-tool (func_usage): Document --local-dir option.
32616         (local_gnulib_dir): New variable.
32617         Handle --local-dir option.
32618         (func_lookup_file): New function.
32619         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
32620         (func_get_description, func_get_filelist, func_get_description,
32621         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
32622         func_get_automake_snippet, func_get_include_directive,
32623         func_get_license, func_get_maintainer): Use func_lookup_file.
32624         (func_import, func_create_testdir): Use func_lookup_file.
32625
32626 2006-07-29  Bruno Haible  <bruno@clisp.org>
32627
32628         * modules/setenv (Depends-on): Add unistd.
32629
32630 2006-07-29  Bruno Haible  <bruno@clisp.org>
32631
32632         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
32633
32634 2006-07-29  Bruno Haible  <bruno@clisp.org>
32635
32636         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
32637
32638 2006-07-29  Bruno Haible  <bruno@clisp.org>
32639
32640         * gnulib-tool (import, update): If there is no Makefile.am, look at
32641         aclocal.m4, instead of bailing out.
32642
32643 2006-07-29  Bruno Haible  <bruno@clisp.org>
32644
32645         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
32646         Categorize the options by when they are useful.
32647
32648 2006-07-29  Bruno Haible  <bruno@clisp.org>
32649
32650         * gnulib-tool (func_usage): Document option --no-libtool.
32651         Handle option --no-libtool.
32652         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
32653         for changed semantics of $libtool variable.
32654         (func_import): Likewise. If libtool is not used, show this through
32655         an option --no-libtool.
32656         (func_create_testdir): Update.
32657
32658 2006-07-29  Bruno Haible  <bruno@clisp.org>
32659
32660         * gnulib-tool (func_import): Extend error message about missing
32661         --doc-base.
32662
32663 2006-07-29  Bruno Haible  <bruno@clisp.org>
32664
32665         * gnulib-tool (func_import): Don't create the $docbase directory if
32666         there is no file to store there.
32667
32668 2006-07-29  Bruno Haible  <bruno@clisp.org>
32669
32670         * gnulib-tool (autoconf_minversion): If a --dir option is given and
32671         relevant, look for configure.ac there, not in the current directory.
32672         Also use a simple search for AC_PREREQ, not "autoconf --trace".
32673
32674 2006-07-29  Bruno Haible  <bruno@clisp.org>
32675
32676         * gnulib-tool (SORT): New variable.
32677         (func_usage): Undocument --assume-autoconf option.
32678         Remove --assume-autoconf option handling.
32679         (autoconf_minversion): Determine from the contents of configure.ac.
32680         (func_import): Remove autoconf_minversion handling.
32681         Suggested by Eric Blake.
32682
32683 2006-07-29  Bruno Haible  <bruno@clisp.org>
32684
32685         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
32686
32687 2006-07-29  Bruno Haible  <bruno@clisp.org>
32688
32689         * config/srclist.txt (*setenv.[ch]): Remove rules.
32690
32691 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
32692
32693         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
32694
32695 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
32696
32697         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
32698         arpa/inet.h.
32699
32700 2006-07-28  Simon Josefsson  <jas@extundo.com>
32701
32702         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
32703         * modules/inet_pton (Depends-on): Likewise.
32704
32705 2006-07-28  Simon Josefsson  <jas@extundo.com>
32706
32707         * m4/netinet_in_h.m4: New file.
32708
32709 2006-07-28  Simon Josefsson  <jas@extundo.com>
32710
32711         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
32712         #include's.
32713
32714 2006-07-28  Simon Josefsson  <jas@extundo.com>
32715
32716         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
32717         #include's.
32718
32719 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
32720
32721         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
32722         setgid on directories only if they set these bits.
32723         * lib/modechange.h: Remove obsolete comment about masks.
32724
32725 2006-07-28  Eric Blake  <ebb9@byu.net>
32726
32727         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
32728         macro expansion.
32729
32730 2006-07-28  Bruno Haible  <bruno@clisp.org>
32731
32732         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
32733
32734 2006-07-28  Bruno Haible  <bruno@clisp.org>
32735
32736         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
32737
32738 2006-07-28  Bruno Haible  <bruno@clisp.org>
32739
32740         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
32741         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
32742         Define fallbacks.
32743         Avoids link error on FreeBSD 4.x.
32744         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
32745
32746         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
32747         encoding.
32748         * lib/mbswidth.c (iswcntrl): Likewise.
32749
32750 2006-07-27  Bruno Haible  <bruno@clisp.org>
32751
32752         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
32753         test.
32754
32755 2006-07-27  Bruno Haible  <bruno@clisp.org>
32756
32757         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
32758         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
32759         defined.
32760
32761 2006-07-26  Eric Blake  <ebb9@byu.net>
32762
32763         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
32764
32765 2006-07-26  Eric Blake  <ebb9@byu.net>
32766
32767         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
32768         like mingw that lack mkstemp.
32769         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
32770         avoid compilation warning on mingw.
32771
32772 2006-07-26  Bruno Haible  <bruno@clisp.org>
32773
32774         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
32775         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
32776         INT_FAST*_MIN, INTPTR_MIN.
32777
32778 2006-07-25  Bruno Haible  <bruno@clisp.org>
32779
32780         * modules/version-etc (Depends-on): Add stdarg.
32781
32782 2006-07-25  Bruno Haible  <bruno@clisp.org>
32783
32784         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
32785         complex commands.
32786
32787 2006-07-25  Bruno Haible  <bruno@clisp.org>
32788
32789         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
32790         defined in <stdarg.h> or config.h.
32791
32792 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
32793
32794         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
32795         (gl_STDIO_SAFER): Remove.
32796
32797 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
32798
32799         * MODULES.html.sh (File stream based Input/Output):
32800         Add fopen-safer, tmpfile-safer; remove stdio-safer.
32801         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
32802         * modules/fopen-safer, modules/tmpfile-safer: New files.
32803         * modules/stdio-safer: Remove.
32804
32805 2006-07-24  Bruno Haible  <bruno@clisp.org>
32806
32807         * modules/tmpdir: New file.
32808         * MODULES.html.sh (File system functions): Add it.
32809
32810 2006-07-24  Bruno Haible  <bruno@clisp.org>
32811
32812         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
32813         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
32814
32815 2006-07-24  Bruno Haible  <bruno@clisp.org>
32816
32817         * modules/clean-temp: New file.
32818
32819 2006-07-24  Bruno Haible  <bruno@clisp.org>
32820
32821         * m4/tmpdir.m4: New file, from GNU gettext.
32822
32823 2006-07-24  Bruno Haible  <bruno@clisp.org>
32824
32825         * lib/tmpdir.h: New file, from GNU gettext.
32826         * lib/tmpdir.c: New file, from GNU gettext.
32827
32828 2006-07-24  Bruno Haible  <bruno@clisp.org>
32829
32830         * lib/clean-temp.h: New file, from GNU gettext.
32831         * lib/clean-temp.c: New file, from GNU gettext.
32832
32833 2006-07-23  Eric Blake  <ebb9@byu.net>
32834
32835         * modules/stdio-safer (Files): Add tmpfile-safer.c.
32836         (Depends-on): Add binary-io.
32837
32838 2006-07-23  Eric Blake  <ebb9@byu.net>
32839
32840         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
32841
32842 2006-07-23  Eric Blake  <ebb9@byu.net>
32843
32844         * lib/tmpfile-safer.c: New file.
32845         * lib/stdio-safer.h (fopen_safer): Add prototype.
32846         * lib/stdio--.h (tmpfile): Make safer.
32847
32848 2006-07-23  Bruno Haible  <bruno@clisp.org>
32849
32850         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
32851         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
32852         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
32853         gl_linked_remove_at): Use it.
32854
32855 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
32856         and Simon Josefsson <jas@extundo.com>
32857
32858         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
32859
32860         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
32861
32862 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
32863
32864         * modules/close-stream: New file.
32865         * modules/closeout (Description): Make it clear that it exits
32866         with a diagnostic on error.
32867         (Depends-on): Add close-stream.  Remove fpending, stdbool.
32868         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
32869
32870 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
32871
32872         * m4/close-stream.m4: New file.
32873
32874 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
32875
32876         * lib/close-stream.c, lib/close-stream.h: New files.
32877
32878 2006-07-22  Bruno Haible  <bruno@clisp.org>
32879
32880         Merge from GNU gettext 0.15.
32881
32882         2006-05-01  Bruno Haible  <bruno@clisp.org>
32883
32884                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
32885
32886         2006-07-22  Bruno Haible  <bruno@clisp.org>
32887
32888                 * modules/javaversion: New file.
32889                 * MODULES.html.sh (Java): Add javaversion.
32890
32891         2006-03-12  Bruno Haible  <bruno@clisp.org>
32892
32893                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
32894
32895         2005-12-04  Bruno Haible  <bruno@clisp.org>
32896
32897                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
32898                 (untested).
32899
32900         2006-06-21  Bruno Haible  <bruno@clisp.org>
32901
32902                 Avoid warnings from recent versions of mcs.
32903                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
32904                 -o, -L, -r any more. Use options documented since mcs-1.0
32905                 instead. Similarly for -g.
32906
32907         2005-12-04  Bruno Haible  <bruno@clisp.org>
32908
32909                 * build-aux/csharpcomp.sh.in: Suffix for resources is
32910                 .resources, not .resource.
32911
32912         2005-07-09  Bruno Haible  <bruno@clisp.org>
32913
32914                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
32915                 add a .dll suffix.
32916                 Reported by Mark Junker <mjscod@gmx.de>.
32917
32918         2006-07-22  Bruno Haible  <bruno@clisp.org>
32919
32920                 * modules/gettext: Upgrade to gettext-0.15.
32921                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
32922                 m4/visibility.m4.
32923                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
32924
32925 2006-07-22  Bruno Haible  <bruno@clisp.org>
32926
32927         Merge from GNU gettext 0.15.
32928
32929         2006-03-25  Bruno Haible  <bruno@clisp.org>
32930
32931                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
32932
32933         2006-07-21  Bruno Haible  <bruno@clisp.org>
32934
32935                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
32936                 "1.1".
32937
32938         2006-05-09  Bruno Haible  <bruno@clisp.org>
32939
32940                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
32941                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
32942                 for the conftestver execution.
32943
32944         2006-05-01  Bruno Haible  <bruno@clisp.org>
32945
32946                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
32947                 optional target-version argument. Verify that the compiler
32948                 groks source of the specified source-version, or add -source
32949                 option as necessary. Verify that the compiler produces
32950                 bytecode in the specified target-version, or add -target and
32951                 -source options as necessary. Make the result of the test
32952                 available as variable CONF_JAVAC. Also log error output in
32953                 config.log.
32954
32955         2006-03-11  Bruno Haible  <bruno@clisp.org>
32956
32957                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
32958
32959         2006-05-09  Bruno Haible  <bruno@clisp.org>
32960
32961                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
32962                 CLASSPATH_SEPARATOR to a semicolon.
32963
32964         2006-03-12  Bruno Haible  <bruno@clisp.org>
32965
32966                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
32967                 available as variable CONF_JAVA, for subsequent autoconf
32968                 tests. Also log error output in config.log.
32969
32970         2006-07-19  Bruno Haible  <bruno@clisp.org>
32971
32972                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
32973                 that getline works on glibc2 systems. Needed to avoid trouble
32974                 in relocatable.c.
32975                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
32976
32977         2005-12-04  Bruno Haible  <bruno@clisp.org>
32978
32979                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
32980                 launcher (untested).
32981
32982         2005-12-04  Bruno Haible  <bruno@clisp.org>
32983
32984                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
32985
32986         2006-07-22  Bruno Haible  <bruno@clisp.org>
32987
32988                 * gettext.m4: Update from GNU gettext-0.15.
32989                 * nls.m4: Likewise.
32990                 * po.m4: Likewise.
32991                 * inttypes-pri.m4: Likewise.
32992                 * inttypes-h.m4: Renamed from inttypes.m4.
32993                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
32994
32995 2006-07-22  Bruno Haible  <bruno@clisp.org>
32996
32997         Merge from GNU gettext 0.15.
32998
32999         2005-07-05  Bruno Haible  <bruno@clisp.org>
33000
33001                 * printf-args.c (printf_fetchargs): Work around broken
33002                 definition of wint_t on mingw.
33003
33004         2005-02-12  Bruno Haible  <bruno@clisp.org>
33005
33006                 * xallocsa.h: Add extern "C" for C++.
33007
33008         2006-05-17  Bruno Haible  <bruno@clisp.org>
33009
33010                 Cygwin portability.
33011                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
33012
33013         2006-04-30  Bruno Haible  <bruno@clisp.org>
33014
33015                 * progreloc.c: Include <mach-o/dyld.h> if available.
33016                 (find_executable): Use _NSGetExecutablePath when possible.
33017
33018         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
33019
33020                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
33021                 function.
33022
33023         2005-12-29  Bruno Haible  <bruno@clisp.org>
33024
33025                 * progreloc.c (set_program_name_and_installdir): Fix
33026                 compilation error.
33027
33028         2005-12-04  Bruno Haible  <bruno@clisp.org>
33029
33030                 Cygwin portability.
33031                 * progreloc.c: Include <windows.h> also on Cygwin.
33032                 (find_executable): Add support for Cygwin.
33033                 (set_program_name_and_installdir): Handle also platforms with
33034                 nonempty EXEEXT.
33035
33036         2006-07-11  Bruno Haible  <bruno@clisp.org>
33037
33038                 * javacomp.c: Fix a comment.
33039                 Reported by Jim Meyering.
33040
33041         2006-04-30  Bruno Haible  <bruno@clisp.org>
33042
33043                 * javacomp.h (compile_java_class): Add source_version,
33044                 target_version arguments.
33045                 * javacomp.c: Rewritten to choose only a compiler that
33046                 respects the specified source_version and target_version.
33047
33048         2006-06-27  Bruno Haible  <bruno@clisp.org>
33049
33050                 Assume correct S_ISDIR macro.
33051                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
33052
33053         2006-07-22  Bruno Haible  <bruno@clisp.org>
33054
33055                 * javaversion.h: New file, from GNU gettext.
33056                 * javaversion.c: New file, from GNU gettext.
33057                 * javaversion.java: New file, from GNU gettext.
33058                 * javaversion.class: New file, from GNU gettext.
33059
33060         2006-05-17  Bruno Haible  <bruno@clisp.org>
33061
33062                 Cygwin portability.
33063                 * javaexec.c (execute_java_class): Test for jview program
33064                 also on Cygwin.
33065
33066         2006-04-09  Bruno Haible  <bruno@clisp.org>
33067
33068                 * fatal-signal.c: Don't include string.h.
33069                 (at_fatal_signal): Use a copying loop instead of memcpy.
33070
33071         2005-12-04  Bruno Haible  <bruno@clisp.org>
33072
33073                 * csharpexec.c: Add support for 'clix' launcher (untested).
33074                 (execute_csharp_using_sscli): New function.
33075                 (execute_csharp_program): Call it.
33076
33077         2006-06-21  Bruno Haible  <bruno@clisp.org>
33078
33079                 Avoid warnings from recent versions of mcs.
33080                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
33081                 -o, -L, -r any more. Use options documented since mcs-1.0
33082                 instead. Similarly for -g.
33083
33084         2005-07-09  Bruno Haible  <bruno@clisp.org>
33085
33086                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
33087                 add a .dll suffix.
33088                 Reported by Mark Junker <mjscod@gmx.de>.
33089
33090         2006-06-17  Bruno Haible  <bruno@clisp.org>
33091
33092                 * config.charset: Update for NetBSD 3.0.
33093
33094         2006-05-17  Bruno Haible  <bruno@clisp.org>
33095
33096                 Cygwin portability.
33097                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
33098
33099         2006-05-16  Bruno Haible  <bruno@clisp.org>
33100
33101                 * localcharset.c [CYGWIN]: Include <windows.h>.
33102                 (get_charset_aliases): For Cygwin, return the same CPxxx
33103                 aliases list as under WIN32.
33104                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
33105                 the environment variables. Fall back to GetACP().
33106
33107         2006-04-05  Bruno Haible  <bruno@clisp.org>
33108
33109                 * config.charset: Update Juan Manuel Guerrero's address.
33110
33111         2005-02-12  Bruno Haible  <bruno@clisp.org>
33112
33113                 * allocsa.h: Add extern "C" for C++.
33114
33115         2005-02-10  Bruno Haible  <bruno@clisp.org>
33116
33117                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
33118                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
33119
33120         2006-07-22  Bruno Haible  <bruno@clisp.org>
33121
33122                 * gettext.h: Update to GNU gettext-0.15.
33123
33124 2006-07-22  Bruno Haible  <bruno@clisp.org>
33125
33126         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
33127         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
33128         lib-prefix.m4, longdouble.m4, ssize_t.m4.
33129
33130 2006-07-21  Eric Blake  <ebb9@byu.net>
33131
33132         * modules/stdlib-safer: New file.
33133         * MODULES.html.sh (File stream based Input/Output): Add
33134         stdlib-safer.
33135
33136 2006-07-21  Eric Blake  <ebb9@byu.net>
33137
33138         * lib/stdlib-safer.h: New file from coreutils, required by
33139         stdlib--.h.
33140
33141 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
33142
33143         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
33144
33145 2006-07-20  Bruno Haible  <bruno@clisp.org>
33146
33147         * gnulib-tool: Recognize new option --assume-autoconf.
33148         (autoconf_minversion): New variable.
33149         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
33150
33151 2006-07-20  Bruno Haible  <bruno@clisp.org>
33152
33153         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
33154
33155 2006-07-19  Derek R. Price  <derek@ximbiot.com>
33156
33157         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
33158         Reindent and repaginate.
33159
33160 2006-07-19  Derek Price  <derek@ximbiot.com>
33161
33162         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
33163         Correct grammar.
33164
33165 2006-07-17  Bruno Haible  <bruno@clisp.org>
33166
33167         * modules/list: New file.
33168         * modules/array-list: New file.
33169         * modules/carray-list, modules/carray-list-tests: New files.
33170         * modules/linked-list, modules/linked-list-tests: New files.
33171         * modules/avltree-list, modules/avltree-list-tests: New files.
33172         * modules/rbtree-list, modules/rbtree-list-tests: New files.
33173         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
33174         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
33175         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
33176         * modules/oset: New file.
33177         * modules/array-oset: New file.
33178         * modules/avltree-oset, modules/avltree-oset-tests: New files.
33179         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
33180         * tests/test-carray_list.c: New file.
33181         * tests/test-linked_list.c: New file.
33182         * tests/test-avltree_list.c: New file.
33183         * tests/test-rbtree_list.c: New file.
33184         * tests/test-linkedhash_list.c: New file.
33185         * tests/test-avltreehash_list.c: New file.
33186         * tests/test-rbtreehash_list.c: New file.
33187         * tests/test-avltree_oset.c: New file.
33188         * tests/test-rbtree_oset.c: New file.
33189         * MODULES.html.sh (Container data structures): New section.
33190
33191 2006-07-17  Bruno Haible  <bruno@clisp.org>
33192
33193         * m4/gl_list.m4: New file.
33194
33195 2006-07-17  Bruno Haible  <bruno@clisp.org>
33196
33197         * lib/gl_list.h: New file.
33198         * lib/gl_list.c: New file.
33199         * lib/gl_array_list.h: New file.
33200         * lib/gl_array_list.c: New file.
33201         * lib/gl_carray_list.h: New file.
33202         * lib/gl_carray_list.c: New file.
33203         * lib/gl_linked_list.h: New file.
33204         * lib/gl_linked_list.c: New file.
33205         * lib/gl_anylinked_list1.h: New file.
33206         * lib/gl_anylinked_list2.h: New file.
33207         * lib/gl_avltree_list.h: New file.
33208         * lib/gl_avltree_list.c: New file.
33209         * lib/gl_anyavltree_list1.h: New file.
33210         * lib/gl_anyavltree_list2.h: New file.
33211         * lib/gl_rbtree_list.h: New file.
33212         * lib/gl_rbtree_list.c: New file.
33213         * lib/gl_anyrbtree_list1.h: New file.
33214         * lib/gl_anyrbtree_list2.h: New file.
33215         * lib/gl_anytree_list1.h: New file.
33216         * lib/gl_anytree_list2.h: New file.
33217         * lib/gl_linkedhash_list.h: New file.
33218         * lib/gl_linkedhash_list.c: New file.
33219         * lib/gl_anyhash_list1.h: New file.
33220         * lib/gl_anyhash_list2.h: New file.
33221         * lib/gl_avltreehash_list.h: New file.
33222         * lib/gl_avltreehash_list.c: New file.
33223         * lib/gl_rbtreehash_list.h: New file.
33224         * lib/gl_rbtreehash_list.c: New file.
33225         * lib/gl_anytreehash_list1.h: New file.
33226         * lib/gl_anytreehash_list2.h: New file.
33227
33228         * lib/gl_oset.h: New file.
33229         * lib/gl_oset.c: New file.
33230         * lib/gl_array_oset.h: New file.
33231         * lib/gl_array_oset.c: New file.
33232         * lib/gl_avltree_oset.h: New file.
33233         * lib/gl_avltree_oset.c: New file.
33234         * lib/gl_rbtree_oset.h: New file.
33235         * lib/gl_rbtree_oset.c: New file.
33236         * lib/gl_anytree_oset.h: New file.
33237
33238 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
33239
33240         * m4/mkancesdirs.m4: New file.
33241         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
33242         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
33243         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
33244         it.
33245
33246 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
33247
33248         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
33249         * lib/mkancesdirs.h: New files.
33250         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
33251         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
33252         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
33253         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
33254         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
33255         callers changed.  Revamp internals significantly, by not
33256         attempting to create directories that are temporarily more
33257         permissive than the final results.  Do not attempt to use
33258         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
33259         This removes some race conditions, fixes some bugs, and simplifies
33260         things.  Use new dirchownmod function to do owner and mode changes.
33261         * lib/mkdir-p.h: Likewise.
33262         * lib/modechange.c (octal_to_mode): New function.
33263         (struct mode_change): New member mentioned.
33264         (make_node_op_equals): New arg mentioned.  All callers changed.
33265         (mode_compile): Keep track of which mode bits the user has explicitly
33266         mentioned.
33267         (mode_adjust): New arg DIR, so that we implement the X op correctly.
33268         New arg PMODE_BITS, to keep track of which mode bits the user
33269         mentioned; it treats S_ISUID and S_ISGID speciall.
33270         All callers changed.
33271         * lib/modechange.h: Likewise.
33272
33273 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
33274
33275         * MODULES.html.sh: Add mkancestors.
33276         * modules/mkancesdirs: New module.
33277         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
33278         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
33279         The chdir-safer and afs files are now orphans; I'll remove them
33280         unless someone speaks up.
33281         Add lib/dirchownmod.c, lib/dirchownmod.h.
33282         (Depends-on): Remove alloca, chown, save-cwd, dirname.
33283         Add lchown, mkancesdirs.
33284         (Maintainer): Add self.
33285
33286 2006-07-15  Karl Berry  <karl@gnu.org>
33287
33288         * gnulib-tool: help message wording/arrangement.
33289
33290 2006-07-14  Simon Josefsson  <jas@extundo.com>
33291
33292         * doc/gnulib.texi (Libtool and Windows): New section.
33293
33294 2006-07-12  Simon Josefsson  <jas@extundo.com>
33295
33296         * modules/gendocs (License): Fix license, approved by Karl.
33297
33298 2006-07-12  Eric Blake  <ebb9@byu.net>
33299
33300         * MODULES.html.sh: Add gendocs.
33301
33302 2006-07-11  Eric Blake  <ebb9@byu.net>
33303
33304         * modules/fdl: New module, to install doc/fdl.texi.
33305         * MODULES.html.sh: Add new section for documentation modules.
33306         * gnulib-tool: Avoid space-tab.
33307         (--doc-base): New option, to manage files from doc.
33308
33309 2006-07-11  Eric Blake  <ebb9@byu.net>
33310
33311         * m4/absolute-header.m4: Fix comments to match recent change.
33312
33313 2006-07-11  Eric Blake  <ebb9@byu.net>
33314
33315         * gnulib-tool: List --doc-base before --tests-base.
33316
33317 2006-07-11  Derek R. Price  <derek@ximbiot.com>
33318
33319         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
33320
33321 2006-07-11  Bruno Haible  <bruno@clisp.org>
33322
33323         * README: Mention where to put documentation.
33324
33325 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33326
33327         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
33328
33329 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
33330
33331         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
33332         to stdint.m4.
33333
33334 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
33335
33336         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
33337         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
33338         "no/such/file/stdint.h" when there is no such file, so that
33339         the resulting C code can be parsed by dodgy compilers.
33340         Problems reported by Bob Proulx.
33341
33342 2006-07-10  Derek R. Price  <derek@ximbiot.com>
33343
33344         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
33345         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
33346         macros into the GNU _D_EXACT_NAMLEN.
33347         * lib/savedir.c:  Likewise.
33348         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
33349
33350 2006-07-10  Derek R. Price  <derek@ximbiot.com>
33351         and Paul Eggert  <eggert@cs.ucla.edu>
33352
33353         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
33354         * m4/savedir.m4:
33355         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
33356         macros into the GNU _D_EXACT_NAMLEN.
33357
33358 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
33359
33360         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
33361         around the absolute name, to work around a problem with the HP-UX
33362         11.23 native C compiler, reported by Bob Proulx.
33363
33364 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
33365
33366         * doc/maintain.texi, make-stds.texi: Sync from
33367         <http://savannah.gnu.org/projects/gnustandards>.
33368
33369 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
33370
33371         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
33372
33373 2006-07-09  Jim Meyering  <jim@meyering.net>
33374
33375         * m4/glob.m4: Remove a doubled word in a comment.
33376
33377 2006-07-09  Jim Meyering  <jim@meyering.net>
33378
33379         * lib/argp-pv.c: Remove a doubled word in a comment.
33380         * lib/check-version.c (check_version): Likewise.
33381         * lib/javacomp.c (compile_java_class): Likewise.
33382
33383 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
33384
33385         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
33386         for the benefit of people using Autoconf 2.60.  If you want to
33387         support older Autoconf versions you can copy m4/onceonly_2_57.m4
33388         (or m4/onceonly.m4, if pre-2.57) manually.
33389
33390 2006-07-08  Jim Meyering  <jim@meyering.net>
33391
33392         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
33393         comment.
33394         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
33395         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
33396         comment.
33397
33398 2006-07-08  Jim Meyering  <jim@meyering.net>
33399
33400         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
33401
33402 2006-07-07  Simon Josefsson  <jas@extundo.com>
33403
33404         * tests/test-crc.c: Change expected crc value, the test vector
33405         were probably computed using the old broken crc.c?
33406
33407 2006-07-06  Simon Josefsson  <jas@extundo.com>
33408
33409         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
33410         now the canonical place for the M4 file).
33411
33412         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
33413         from the sys_socket dependency now.
33414
33415         * modules/inet_pton (Files): Ditto.
33416
33417         * modules/inet_ntop (Files): Ditto.
33418
33419 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
33420
33421         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
33422         not gl_PREREQ_GETUSERSHELL.
33423
33424 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33425
33426         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
33427         with only one argument, for Autoconf 2.60.
33428         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
33429         expand to nothing, so add a shell command to avoid syntax error.
33430         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
33431
33432 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33433
33434         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
33435
33436 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
33437
33438         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
33439         no longer needed.  Check for isblank decl.
33440         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
33441         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
33442         of existence.
33443
33444 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
33445
33446         * lib/getloadavg.c: Use __VMS, not VMS.
33447         * lib/getopt.c: Likewise.
33448         * lib/getpagesize.h: Likewise.
33449         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
33450         and probably does not work.
33451
33452 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
33453
33454         * lib/.cppi-disable: Add wcwidth.
33455         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
33456         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
33457         (ISGRAPH): Remove.  All uses changed to isgraph.
33458         (FOLD) [!defined _LIBC]: Remove special case.
33459         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
33460         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
33461         HAVE_ISBLANK.
33462         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
33463         case.
33464
33465 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
33466
33467         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
33468         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
33469         brackets.  Other minor changes to suppress some compiler
33470         warnings.
33471
33472 2006-07-06  Derek R. Price  <derek@ximbiot.com>
33473         and Paul Eggert  <eggert@cs.ucla.edu>
33474
33475         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
33476         of invoking obsolescent AC_HEADER_DIRENT macro.
33477         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
33478         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
33479         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
33480         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
33481         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
33482         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
33483         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
33484         * m4/readdir.m4: Remove; no longer needed.
33485
33486 2006-07-06  Derek R. Price  <derek@ximbiot.com>
33487         and Paul Eggert  <eggert@cs.ucla.edu>
33488
33489         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
33490         Don't worry about this obsolete case any more.
33491         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
33492         directories.
33493         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
33494         worry about this obsolete case any more.
33495         * lib/fts.c: Likewise.
33496         * lib/getcwd.c: Likewise.
33497         * lib/glob.h: Likewise.
33498         * lib/savedir.c: Likewise.
33499
33500 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
33501
33502         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
33503         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
33504         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
33505         needed.
33506         All uses removed.
33507         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
33508         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
33509         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
33510         needed.
33511         * m4/getdate.m4 (gl_GETDATE): Likewise.
33512         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
33513         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
33514         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
33515         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
33516         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
33517         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
33518         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
33519         needed.
33520
33521 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
33522
33523         * lib/memcasecmp.c: Include <limits.h>.
33524         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
33525         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
33526         Don't assume isdigit succeeds only on '0' through '9'.
33527
33528 2006-07-05  Eric Blake  <ebb9@byu.net>
33529
33530         * modules/getaddrinfo (Depends-on): Add snprintf.
33531
33532 2006-07-05  Eric Blake  <ebb9@byu.net>
33533
33534         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
33535         to avoid 'header present but could not be compiled' on cygwin.
33536
33537 2006-07-05  Eric Blake  <ebb9@byu.net>
33538
33539         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
33540         missing from netdb.h.
33541         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
33542
33543 2006-07-05  Derek R. Price  <derek@ximbiot.com>
33544
33545         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
33546         no longer needed.
33547         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
33548         * m4/getdate.m4 (gl_GETDATE): Likewise.
33549         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
33550         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
33551         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
33552         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
33553         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
33554
33555 2006-07-05  Derek R. Price  <derek@ximbiot.com>
33556
33557         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
33558         All uses of is_space replaced by isspace.
33559         * lib/exit.h: Don't talk about STDC_HEADERS.
33560         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
33561         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
33562         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
33563         replaced by isprint etc.
33564         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
33565         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
33566         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
33567         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
33568         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
33569         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
33570
33571 2006-07-05  Bruno Haible  <bruno@clisp.org>
33572
33573         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
33574         the function exists, before testing against AIX.
33575         Reported by Martin Lambers <marlam@marlam.de>.
33576
33577 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
33578
33579         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
33580         From Mark D. Baushke.
33581
33582 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
33583
33584         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
33585         to the absolute name, not just one, to bypass Sun C 5.8's
33586         "warning: #include of /usr/include/... may be non-portable".
33587
33588 2006-07-04  Eric Blake  <ebb9@byu.net>
33589
33590         * modules/dirname-tests: New test module.
33591         * tests/test-dirname.c: New file, replacing dirname.c
33592         TEST_DIRNAME section that was recently deleted.
33593
33594 2006-07-04  Bruno Haible  <bruno@clisp.org>
33595
33596         Assume ANSI C header files and <ctype.h> functions.
33597         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
33598         (mbsnwidth): Use isprint, iscntrl instead.
33599
33600 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
33601
33602         Merge from coreutils.
33603         * MODULES.html.sh: Add xstrtold.
33604         * modules/xstrtold: New file.
33605         * modules/cycle-check (Files): Add lib/same-inode.h.
33606         * modules/dirname (Files): Add m4/double-slash-root.m4.
33607         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
33608         * modules/mkdir-p (Files): Add lib/same-inode.h.
33609         * modules/same (Files): Add lib/same-inode.h.
33610
33611 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
33612
33613         * m4/absolute-header.m4: Renamed from full-header-path.m4.
33614         This is to keep the terminology clean; POSIX talks about
33615         "absolute pathnames", not "full pathnames", but the GNU
33616         Coding Standards say to use "path" for something else;
33617         so use "absolute" to keep both sides happy.
33618         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
33619         Set gl_absolute_header, not gl_full_header_path.
33620         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
33621         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
33622         All uses changed.
33623
33624         Merge from coreutils.
33625
33626         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
33627
33628         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
33629         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
33630         want to require the building of c-strtod.o.
33631         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
33632         needs -lm directly.
33633         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
33634
33635         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
33636
33637         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
33638         --as-needed option if available.  Problem reported by Albert Chin in
33639         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
33640         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
33641         cc merely issues a bunch of annoying warnings for --as-needed
33642         (this problem was reported by Bob Proulx).  Also, try linking with
33643         -lm to detect a bug in binutils 2.16 (this problem was reported
33644         by Ralf Wildenhues).
33645
33646         2006-06-18  Jim Meyering  <jim@meyering.net>
33647
33648         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
33649         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
33650         macro.
33651         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
33652         also check for glibc-2.4's abort-inducing bug.
33653
33654         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
33655         Low-probability clean-up should be to use rmdir to get rid of
33656         the just-created directory, not unlink.
33657
33658         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
33659         configure fail, and request a bug report to inform us about it.
33660         Add a comment that, barring reports to the contrary, in 2007 we'll
33661         assume ftruncate is universally available.
33662
33663         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
33664
33665         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
33666
33667         2006-03-12  Jim Meyering  <jim@meyering.net>
33668
33669         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
33670         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
33671         * m4/same.m4 (gl_SAME): Likewise.
33672         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
33673
33674         2006-03-11  Eric Blake  <ebb9@byu.net>
33675
33676         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
33677         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
33678         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
33679         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
33680
33681 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
33682
33683         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
33684         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
33685         reported by Mark D. Baushke, one in
33686         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
33687
33688         Merge from coreutils.
33689
33690         * lib/.cppi-disable: Add stdint_.h.
33691         * lib/.cvsignore: Add stdint.h.
33692
33693         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
33694
33695         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
33696         both double and long double versions.
33697         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
33698         * lib/xstrtold.c: New file.
33699         * lib/xstrtod.h (xstrtold): New decl.
33700
33701         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
33702
33703         * lib/filemode.c (setst): Remove.
33704         (strmode): Rewrite to avoid setst.  This makes the code shorter,
33705         (arguably) clearer, and the generated code is a bit smaller on my
33706         Debian GNU/Linux stable x86 host.
33707
33708         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
33709
33710         * lib/filemode.c: Include "filemode.h" first, to test the interface.
33711         Assume that filemode.h includes sys/types.h and sys/stat.h.
33712         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
33713         (ftypelet): Reorder to put common cases first, for efficiency.
33714         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
33715         to do 'M'.
33716         (strmode): Renamed from mode_string, and now stores 12 bytes instead
33717         of 10, for compatibility with FreeBSD.  All callers changed.
33718         (filemodestring): Now stores 12 bytes instead of 10, and sets file
33719         types that can't be deduced solely from st_mode.  First arg is now a
33720         const pointer.
33721         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
33722         (strmode): Renamed from mode_string.
33723         (filemodestring): New decl.
33724         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
33725         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
33726         needed.
33727         (S_ISPORT, S_ISWHT): New macros, if not already defined.
33728
33729         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
33730
33731         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
33732         fsusage.h now does that.  Include fsusage.h first, to test interface.
33733         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
33734         at most one method (the old code could have generated decls that
33735         didn't conform to C89, not that this was ever exercised).
33736         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
33737
33738         2006-03-19  Jim Meyering  <jim@meyering.net>
33739
33740         Work even in a chroot where d_ino values for entries in "/"
33741         don't match the stat.st_ino values for the same names.
33742         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
33743         number, iterate through all entries again, using lstat instead.
33744         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
33745         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
33746
33747         * lib/getcwd.c (__getcwd): Clarify a comment.
33748         Use memcpy in place of a call to strcpy.
33749
33750         2006-03-12  Jim Meyering  <jim@meyering.net>
33751
33752         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
33753         matches that of the current directory (which we're about to chdir ".."
33754         out of), then save the dev-ino of the parent, instead.
33755
33756         * lib/same-inode.h (SAME_INODE): New file/macro.
33757         * lib/chdir-safer.c (SAME_INODE): Remove definition.
33758         Include "same-inode.h", instead.
33759         * lib/same.c: Likewise.
33760         * lib/cycle-check.h: Include "same-inode.h".
33761         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
33762         * lib/cycle-check.c (SAME_INODE): Remove definition.
33763         * lib/root-dev-ino.h: Include "same-inode.h".
33764
33765         2006-03-11  Eric Blake  <ebb9@byu.net>
33766
33767         * lib/same.c (same_name): s/base_name/last_component/
33768         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
33769         * lib/filenamecat.c (file_name_concat): Likewise.
33770
33771         2006-03-11  Eric Blake  <ebb9@byu.net>,
33772                     Paul Eggert  <eggert@cs.ucla.edu>
33773
33774         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
33775         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
33776         drive prefix.
33777         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
33778         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
33779         (last_component): New method.
33780         * lib/dirname.c (dir_len): Determine when drive letters need a
33781         subsequent slash.  Preserve // when it is special.
33782         (dir_name): Don't append dot when drive letter is absolute.
33783         [TEST_DIRNAME]: Move into a full-blown gnulib test.
33784         * lib/basename.c (base_name): New semantics - malloc the result.
33785         Preserve // when it is special.  Preserve relative files that look
33786         like drive letters.
33787         (base_len): Preserve // when it is special.
33788         (last_component): New method, similar to old base_name semantics.
33789         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
33790         base_name.  Strip redundant slashes from ///.
33791
33792 2006-07-03  Jim Meyering  <jim@meyering.net>
33793
33794         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
33795         macro is used before the first cycle_check call.
33796
33797 2006-07-03  Eric Blake  <ebb9@byu.net>
33798
33799         * modules/dirname (Depends-on): Add xstrndup.
33800
33801 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
33802
33803         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
33804         test cases, so that config.log is a bit easier to follow.
33805
33806 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
33807
33808         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
33809         both are 64 bits, since this seems to be the tradition, and this
33810         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
33811         we ever run into a host that prefers long long to long in this
33812         case, we'll need another configure-time test.  Problem reported by
33813         Jim Meyering.
33814
33815 2006-07-02  Eric Blake  <ebb9@byu.net>
33816
33817         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
33818
33819 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
33820
33821         * modules/inttypes (Depends-on): No longer depends on stdint.
33822         * modules/stdint (Description): Say more about assumptions.
33823         Say that the fast types might differ.  Say macros are used.
33824         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
33825         (Makefile.am): Revise list of substituted symbols to match
33826         new stdint.m4.
33827         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
33828         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
33829         * tests/test-stdint.c (verify_same_types)
33830         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
33831         the code conforms to C99/C89.
33832         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
33833         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
33834
33835 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
33836
33837         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
33838         but fix a bug, by requiring at least 64 bits.
33839         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
33840         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
33841         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
33842         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
33843
33844         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
33845         changes.  Make 2.59 a prerequisite.  Check and substitute for
33846         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
33847         inttypes.h.  Do not use special include files; just use the
33848         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
33849         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
33850         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
33851         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
33852         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
33853         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
33854         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
33855         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
33856         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
33857         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
33858         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
33859         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
33860         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
33861         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
33862         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
33863         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
33864         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
33865         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
33866         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
33867         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
33868         WINT_MAX.  Check for C99 conformance more strictly, by detecting
33869         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
33870         not check for things that C99 does not require, e.g., int8_t.  If
33871         a test isn't needed unless <stdint.h> isn't working, and is
33872         unlikely to be needed for any other reason, then don't do it
33873         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
33874         size_t, since we assume C89 freestanding at least.  Do not check
33875         for sig_atomic_t, wchar_t, or wint_t, since the code now does
33876         the right thing even if the types are not defined.  Instead use:
33877         (gl_STDINT_TYPE_PROPERTIES): New macro.
33878         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
33879         testing whether <sys/types.h> clashes, as Autoconf does this for
33880         us now.  All uses removed.
33881         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
33882         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
33883         (gl_CHECK_TYPE_SAME):
33884         Remove; no longer needed.
33885         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
33886         exists, since we'll return 0 anyway in that case.
33887         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
33888
33889 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
33890
33891         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
33892         possible collision with system files.
33893         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
33894         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
33895         WCHAR_MIN and WCHAR_MAX in this case.
33896         (<stddef.h>): Do not include; no longer needed.
33897         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
33898         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
33899         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
33900         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
33901         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
33902         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
33903         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
33904         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
33905         !defined(__c99))]: Include in this case too, since it's harmless
33906         now.
33907         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
33908         dangerous to do so.
33909         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
33910         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
33911         (_STDINT_MIN, _STDINT_MAX): New macros.
33912         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
33913         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
33914         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
33915         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
33916         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
33917         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
33918         macros, not typedefs; this simplifies things quite a bit.
33919         Use long int for all types narrower than int64_t.
33920         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
33921         Define in terms of long long int or int64_t or long int,
33922         not int64_t or int32_t.  This saves some compile-time testing.
33923         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
33924         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
33925         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
33926         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
33927         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
33928         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
33929         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
33930         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
33931         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
33932         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
33933         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
33934         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
33935         undef any previous version and define our own version, for
33936         simplicity and consistency with the new macros for types.
33937         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
33938         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
33939         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
33940         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
33941         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
33942         @WINT_T_SUFFIX@ to keep things simple here.
33943         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
33944         Simplify by assuming typical 8/16/32/64 host, since we're
33945         already doing that elsewhere anyway.
33946         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
33947         and assume long long int is 64 bits if available.  This
33948         speeds up 'configure'.
33949
33950 2006-07-01  Eric Blake  <ebb9@byu.net>
33951
33952         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
33953         Reported by Andreas Buening.
33954
33955 2006-07-01  Eric Blake  <ebb9@byu.net>
33956
33957         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
33958
33959 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
33960
33961         * lib/getaddrinfo.c: fixed typo
33962
33963 2006-06-29  Jim Meyering  <jim@meyering.net>
33964
33965         * modules/strftime (Maintainer): Add my name, since with the
33966         FPRINTFTIME changes strftime.c has forked from glibc.
33967
33968 2006-06-29  Eric Blake  <ebb9@byu.net>
33969
33970         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
33971
33972 2006-06-29  Eric Blake  <ebb9@byu.net>
33973
33974         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
33975
33976 2006-06-29  Eric Blake  <ebb9@byu.net>
33977
33978         * lib/stat_.h: New file.
33979
33980 2006-06-29  Eric Blake  <ebb9@byu.net>
33981
33982         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
33983         unused static function.
33984
33985 2006-06-29  Eric Blake  <ebb9@byu.net>
33986
33987         * doc/functions.texi (Function Portability): Document missing lstat
33988         on mingw.
33989
33990 2006-06-29  Eric Blake  <ebb9@byu.net>
33991
33992         * MODULES.html.sh: Add sys_stat.
33993         * modules/sys_stat: New module.
33994         * modules/mkstemp (Depends-on): Add sys_stat.
33995
33996 2006-06-29  Derek R. Price  <derek@ximbiot.com>
33997
33998         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
33999
34000 2006-06-29  Derek R. Price  <derek@ximbiot.com>
34001
34002         * m4/c-bs-a.m4: Removed.
34003
34004 2006-06-29  Derek R. Price  <derek@ximbiot.com>
34005
34006         * lib/strftime.c: Assume strftime() exists.
34007
34008 2006-06-29  Derek Price  <derek@ximbiot.com>
34009
34010         * modules/c-bs-a: Removed - \a is C89.
34011         * MODULES.html.sh: Remove c-bs-a.
34012
34013 2006-06-29  Bruno Haible  <bruno@clisp.org>
34014
34015         * modules/wcwidth (License): Change to LGPL.
34016
34017 2006-06-28  Simon Josefsson  <jas@extundo.com>
34018
34019         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
34020         on _WIN32.
34021
34022         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
34023         getnameinfo.
34024
34025 2006-06-28  Simon Josefsson  <jas@extundo.com>
34026
34027         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
34028
34029 2006-06-28  Simon Josefsson  <jas@extundo.com>
34030
34031         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
34032         functions there.  It will succeed on Windows XP, but on Windows
34033         2000 and (presumably) earlier, it will fail, and use the internal
34034         re-implementation.
34035         (use_win32_p): New function.
34036         (getaddrinfo): Use strtoul on servname, to support numeric ports.
34037         Support AI_NUMERICSERV to disable getservbyname.
34038         (getnameinfo): New function, only supports
34039         NI_NUMERICHOST|NI_NUMERICSERV for now.
34040
34041         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
34042         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
34043         getnameinfo.
34044
34045 2006-06-28  Eric Blake  <ebb9@byu.net>
34046
34047         * modules/wcwidth: New file.
34048         * modules/mbchar (Depends-on): Add wcwidth.
34049         * modules/mbswidth (Depends-on): Add wcwidth.
34050         * MODULES.html.sh: Add wcwidth.
34051
34052 2006-06-28  Eric Blake  <ebb9@byu.net>
34053
34054         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
34055         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
34056
34057 2006-06-28  Eric Blake  <ebb9@byu.net>
34058
34059         * lib/xvasprintf.h: Fix comments.
34060
34061 2006-06-28  Eric Blake  <ebb9@byu.net>
34062
34063         * lib/mbchar.h (wcwidth): Include wcwidth.h.
34064         * lib/mbswidth.c (wcwidth): Move from here...
34065         * lib/wcwidth.h: ...to this new file.
34066
34067 2006-06-28  Derek R. Price  <derek@ximbiot.com>
34068
34069         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
34070
34071         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
34072         it's obsolete.
34073         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
34074
34075 2006-06-28  Derek R. Price  <derek@ximbiot.com>
34076
34077         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
34078         Autoconf 2.60 says this stuff was obsolete.
34079
34080 2006-06-28  Bruno Haible  <bruno@clisp.org>
34081
34082         * modules/wcwidth (Files): Add m4/wchar_t.m4.
34083
34084 2006-06-28  Bruno Haible  <bruno@clisp.org>
34085
34086         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
34087         gt_TYPE_WCHAR_T.
34088
34089 2006-06-28  Bruno Haible  <bruno@clisp.org>
34090
34091         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
34092         declaration for wcwidth.
34093         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
34094
34095 2006-06-28  Bruno Haible  <bruno@clisp.org>
34096
34097         * lib/mkdtemp.c [MINGW]: Include <io.h>.
34098         (mkdir): Define using _mkdir.
34099
34100 2006-06-28  Bruno Haible  <bruno@clisp.org>
34101
34102         * lib/getaddrinfo.h: Fix POSIX URL.
34103         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
34104         _WIN32.
34105         (use_win32_p): Make static.
34106         (getaddrinfo): Reject service name if it is empty or does not consist
34107         solely of decimal digits, or if its value is > 65535.
34108         (getnameinfo): Remove useless casts.
34109
34110 2006-06-27  Simon Josefsson  <jas@extundo.com>
34111
34112         * modules/sys_select: New file, suggested by Bruno Haible, Paul
34113         Eggert and Martin Lambers.
34114
34115 2006-06-27  Simon Josefsson  <jas@extundo.com>
34116
34117         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
34118         Eggert and Martin Lambers.
34119
34120 2006-06-27  Bruno Haible  <bruno@clisp.org>
34121
34122         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
34123         result to 0, not to empty.
34124         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
34125
34126 2006-06-27  Bruno Haible  <bruno@clisp.org>
34127
34128         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
34129
34130 2006-06-26  Simon Josefsson  <jas@extundo.com>
34131
34132         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
34133         present.
34134
34135 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
34136
34137         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
34138         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
34139         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
34140
34141 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
34142
34143         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
34144
34145 2006-06-26  Bruno Haible  <bruno@clisp.org>
34146
34147         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
34148
34149 2006-06-26  Bruno Haible  <bruno@clisp.org>
34150
34151         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
34152
34153 2006-06-26  Bruno Haible  <bruno@clisp.org>
34154
34155         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
34156         SGI C compiler in pre-C99 mode.
34157         Suggested by Mark D. Baushke and Larry Jones.
34158
34159 2006-06-26  Bruno Haible  <bruno@clisp.org>
34160
34161         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
34162         WCHAR_MAX.
34163         Reported by Mark D. Baushke and Larry Jones.
34164
34165 2006-06-26  Bruno Haible  <bruno@clisp.org>
34166
34167         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
34168         in pre-C99 mode.
34169         Suggested by Mark D. Baushke and Larry Jones.
34170
34171 2006-06-23  Simon Josefsson  <jas@extundo.com>
34172             Bruno Haible  <bruno@clisp.org>
34173
34174         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
34175         Emit mostlyclean-local rule.
34176         (func_emit_tests_Makefile_am): Likewise.
34177         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
34178
34179 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
34180
34181         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
34182
34183 2006-06-23  Bruno Haible  <bruno@clisp.org>
34184
34185         * tests/test-stdint.c: Update to match ISO C 99 Technical
34186         Corrigendum 1.
34187
34188 2006-06-23  Bruno Haible  <bruno@clisp.org>
34189
34190         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
34191
34192 2006-06-23  Bruno Haible  <bruno@clisp.org>
34193
34194         * lib/stdint_.h: Treat IRIX like OpenBSD.
34195
34196 2006-06-23  Bruno Haible  <bruno@clisp.org>
34197
34198         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
34199         ISO C 99 Technical Corrigendum 1.
34200
34201 2006-06-22  Simon Josefsson  <jas@extundo.com>
34202
34203         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
34204         MinGW.
34205
34206 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
34207
34208         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
34209         needed.  Some compiler complained about some of them.  Problem reported
34210         by Larry Jones in
34211         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
34212
34213 2006-06-21  Simon Josefsson  <jas@extundo.com>
34214
34215         * tests/test-getaddrinfo.c: New file.
34216
34217         * modules/getaddrinfo-tests: New file.
34218
34219         * MODULES.html.sh: Add inet_pton.
34220
34221         * modules/inet_pton: New file.
34222
34223 2006-06-21  Simon Josefsson  <jas@extundo.com>
34224
34225         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
34226         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
34227         of using the (limited) gnulib implementation on Windows XP.
34228
34229         * m4/inet_pton.m4: New file.
34230
34231 2006-06-21  Simon Josefsson  <jas@extundo.com>
34232
34233         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
34234         variable.
34235
34236         * lib/socket_.h: Don't define WINVER.
34237
34238         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
34239         slightly modified to work in gnulib.
34240
34241 2006-06-21  Simon Josefsson  <jas@extundo.com>
34242
34243         * doc/gnulib.texi (Windows sockets): Add.
34244
34245 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
34246
34247         * lib/read-file.c (fread_file): Start with buffer allocation of
34248         0 bytes rather than 1 byte; this simplifies the code.
34249         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
34250         code to free buffer and save/restore errno.
34251         (internal_read_file): Remove unused local.
34252
34253 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
34254
34255         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
34256         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
34257         Problem reported by Denis Excoffier in
34258         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
34259
34260 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
34261
34262         * modules/sys_socket, modules/socklen: Include sys/types since
34263         FreeBSD 4.x's sys/socket.h needs it.
34264
34265 2006-06-19  Simon Josefsson  <jas@extundo.com>
34266
34267         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
34268
34269 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
34270
34271         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
34272
34273 2006-06-19  Bruno Haible  <bruno@clisp.org>
34274
34275         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
34276         and FULL_PATH_INTTYPES_H in angle brackets.
34277         Reported by Mark D. Baushke <mdb@gnu.org>.
34278
34279 2006-06-17  Eric Blake  <ebb9@byu.net>
34280
34281         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
34282         errno.
34283
34284 2006-06-17  Bruno Haible  <bruno@clisp.org>
34285
34286         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
34287         <sys/inttypes.h>.
34288
34289 2006-06-17  Bruno Haible  <bruno@clisp.org>
34290
34291         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
34292         whether errno is declared. Assume <errno.h> declares errno.
34293
34294 2006-06-17  Bruno Haible  <bruno@clisp.org>
34295
34296         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
34297
34298 2006-06-17  Bruno Haible  <bruno@clisp.org>
34299
34300         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
34301         problem on Solaris 2.5.1.
34302
34303 2006-06-16  Eric Blake  <ebb9@byu.net>
34304
34305         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
34306         * lib/unicodeio.c [!defined errno]: Likewise.
34307         * lib/strtol.c [!defined errno]: Likewise.
34308         * lib/strtod.c [!defined errno]: Likewise.
34309
34310 2006-06-15  Eric Blake  <ebb9@byu.net>
34311
34312         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
34313
34314 2006-06-15  Eric Blake  <ebb9@byu.net>
34315
34316         * config/srclist.txt (ssize_t.m4): Lose sync.
34317
34318 2006-06-15  Bruno Haible  <bruno@clisp.org>
34319
34320         * modules/stdint (Files): Include m4/full-header-path.m4,
34321         m4/size_max.m4, m4/wchar_t.m4.
34322         (Makefile.am): Many more substitutions.
34323         * modules/stdint-tests: New file.
34324         * tests/test-stdint.c: New file.
34325
34326 2006-06-15  Bruno Haible  <bruno@clisp.org>
34327
34328         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
34329         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
34330         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
34331         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
34332         gl_CHECK_TYPE_SAME): New macros.
34333
34334 2006-06-15  Bruno Haible  <bruno@clisp.org>
34335
34336         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
34337
34338 2006-06-15  Bruno Haible  <bruno@clisp.org>
34339
34340         * lib/stdint_.h: Rewritten to be fully auto-configured.
34341         Fixes bug on HP-UX/IA64.
34342
34343 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
34344
34345         * lib/getdate.y (__attribute__): Don't define if already defined.
34346         Problem reported by Larry Jones.
34347         * lib/utimens.c (__attribute__): Likewise.
34348
34349 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
34350
34351         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
34352         reported by Andreas Schwab.
34353
34354 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34355             Bruno Haible  <bruno@clisp.org>
34356
34357         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
34358         check for the declaration of strnlen and a run test that exposes the
34359         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
34360         rpl_strndup.
34361
34362 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34363             Bruno Haible  <bruno@clisp.org>
34364
34365         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
34366
34367 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34368
34369         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
34370         compile test, for Tru64 4.0D.
34371
34372 2006-05-28  Karl Berry  <karl@gnu.org>
34373
34374         * config/srclist.txt (printf-args.c): lose sync.
34375
34376 2006-05-26  Martin Lambers  <marlam@marlam.de>
34377
34378         * lib/getpass.c: Updates the test for the native W32 API, and adds
34379         missing includes, thus fixing compilation warnings.
34380
34381 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
34382
34383         * lib/exclude.c (exclude_fnmatch): New function.
34384         (excluded_file_name): Call exclude_fnmatch.
34385         * lib/exclude.h (excluded_file_name): New prototype
34386
34387 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
34388
34389         * lib/tempname.c (small_open, large_open): New macros.
34390         (__open, __open64) [!_LIBC]: Remove.
34391         (__gen_tempname): Use small_open and large_open instead of __open
34392         and __open64.  This fixes a portability bug on HP-UX 11.11i
34393         reported by Simon Wing-Tang in
34394         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
34395
34396 2006-05-24  Bruno Haible  <bruno@clisp.org>
34397
34398         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
34399         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
34400         Reported by Thorsten Maerz <torte@netztorte.de> via
34401         Aaron Stone <aaron@serendipity.cx>.
34402
34403 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
34404
34405         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
34406         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
34407         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
34408         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
34409         not really conditional on the cache.
34410         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
34411
34412 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
34413
34414         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
34415         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
34416         (my_usleep): Don't mishandle maximum value.
34417
34418 2006-05-19  Jim Meyering  <jim@meyering.net>
34419
34420         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
34421
34422 2006-05-17  Bruno Haible  <bruno@clisp.org>
34423
34424         Cygwin portability.
34425         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
34426
34427 2006-05-17  Bruno Haible  <bruno@clisp.org>
34428
34429         * lib/stdint_.h: Fix recognition of Cygwin.
34430
34431 2006-05-15  Bruno Haible  <bruno@clisp.org>
34432
34433         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
34434         on libtool patch by Ralf Wildenhues.
34435
34436 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
34437
34438         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
34439         test for C99 conformance; (bool) 0.5 is an integer constant
34440         expression, but (bool) -0.5 is not.  Problem reported by Fedor
34441         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
34442
34443 2006-05-11  Simon Josefsson  <jas@extundo.com>
34444
34445         * m4/xvasprintf.m4: Fix obvious typo.
34446
34447 2006-05-11  Jim Meyering  <jim@meyering.net>
34448
34449         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
34450         James Lemley.
34451
34452 2006-05-10  Simon Josefsson  <jas@extundo.com>
34453
34454         * lib/md4.c: Typo fix, update copyright years.
34455         (K1, K2): Don't use L because it turn computations into 64-bit on
34456         64-bit platforms.
34457
34458 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
34459
34460         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
34461         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
34462         unwanted sign propagation, e.g., on hosts with 64-bit int.
34463         There still are some problems with reeelly weird theoretical hosts
34464         (e.g., 33-bit int) but it's not worth worrying about now.
34465         * lib/sha1.c (rol): Likewise.
34466         (K1, K2, K3, K4): Remove unnecessary L suffix.
34467
34468 2006-05-10  Bruno Haible  <bruno@clisp.org>
34469
34470         * lib/des.c: Cast to avoid warnings.
34471
34472 2006-05-09  Bruno Haible  <bruno@clisp.org>
34473
34474         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
34475         (Depends-on): Depend also on xsize, stdarg.
34476         (configure.ac): Add gl_XVASPRINTF.
34477
34478 2006-05-09  Bruno Haible  <bruno@clisp.org>
34479
34480         * m4/xvasprintf.m4: New file.
34481
34482 2006-05-09  Bruno Haible  <bruno@clisp.org>
34483
34484         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
34485         (EOVERFLOW): Define fallback value.
34486         (xstrcat): New function.
34487         (xvasprintf): Recognize the special case of a string concatenation.
34488
34489 2006-05-08  Eric Blake  <ebb9@byu.net>
34490
34491         * gnulib-tool (func_version): Base copyright year on CVS date.
34492         (func_emit_copyright_notice): New function.
34493         (func_emit_lib_Makefile_am): Use it.
34494         (func_emit_tests_Makefile_am): Likewise.
34495         (func_import): Likewise.
34496
34497 2006-05-08  Bruno Haible  <bruno@clisp.org>
34498
34499         * modules/stdarg: New file.
34500         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
34501
34502 2006-05-08  Bruno Haible  <bruno@clisp.org>
34503
34504         * m4/stdarg.m4: New file, from GNU gettext.
34505
34506 2006-05-08  Bruno Haible  <bruno@clisp.org>
34507
34508         * config/srclist.txt (build-aux/config.rpath): different from latest
34509         release.
34510
34511 2006-05-08  Bruno Haible  <bruno@clisp.org>
34512
34513         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
34514
34515 2006-05-05  Jim Meyering  <jim@meyering.net>
34516
34517         * m4/warning.m4: New file, derived from bison's file by the same name.
34518
34519 2006-05-03  Bruno Haible  <bruno@clisp.org>
34520
34521         * lib/stdint_.h: Shorter URL.
34522         * lib/inttypes.h: Likewise.
34523
34524 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
34525
34526         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
34527
34528 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
34529
34530         * lib/verify.h: Document the internals better.  Most of this change
34531         was written by Bruno Haible.
34532
34533 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
34534
34535         * doc/verify.texi: New file, partly based on a proposal by
34536         Bruno Haible.
34537
34538 2006-05-02  Bruno Haible  <bruno@clisp.org>
34539
34540         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
34541         test from here...
34542         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
34543
34544 2006-04-29  Bruno Haible  <bruno@clisp.org>
34545
34546         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
34547         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
34548
34549 2006-04-29  Bruno Haible  <bruno@clisp.org>
34550
34551         * gnulib-tool: Make --update option actually work.
34552
34553 2006-04-29  Bruno Haible  <bruno@clisp.org>
34554
34555         * doc/gcd.texi: New file.
34556         * doc/gnulib.texi: Include it.
34557
34558 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
34559
34560         * lib/getdate.y (get_date): When adding relative date, start with the
34561         initial time, not with the result of the first mktime call.
34562
34563 2006-04-25  Bruno Haible  <bruno@clisp.org>
34564
34565         * gnulib-tool (func_import): Output the include directives in three
34566         blocks, sorted separately.
34567         Reported by Ben Pfaff <blp@cs.stanford.edu>.
34568
34569 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
34570
34571         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
34572         to define main with arguments, for C++.  Reported by Eric Blake.
34573         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
34574         Prefer 'int main ()' to 'int main (void)', for C++.
34575         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
34576         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
34577         for 'main', for C99 and C++.
34578
34579 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
34580
34581         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
34582         Don't assume that exit status -1 is valid.
34583         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
34584         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
34585         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
34586         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
34587         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
34588         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
34589         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
34590         functions can be used without declaring them, or that you can
34591         exit with status -1.
34592         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
34593
34594 2006-04-24  Karl Berry  <karl@gnu.org>
34595
34596         * config/srclist.txt (longdouble.m4): sync lost.
34597
34598 2006-04-24  Eric Blake  <ebb9@byu.net>
34599
34600         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
34601
34602 2006-04-24  Bruno Haible  <bruno@clisp.org>
34603
34604         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
34605         poll() implementation in AIX.
34606         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
34607
34608 2006-04-24  Bruno Haible  <bruno@clisp.org>
34609
34610         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
34611         assigned exactly once.
34612
34613 2006-04-23  Claudio Fontana  <claudio@gnu.org>
34614             Bruno Haible  <bruno@clisp.org>
34615
34616         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
34617         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
34618         for AM_CPPFLAGS.
34619
34620 2006-04-23  Bruno Haible  <bruno@clisp.org>
34621
34622         * modules/copy-file: Depend on unistd.
34623         * modules/execute: Likewise.
34624         * modules/fatal-signal: Likewise.
34625         * modules/findprog: Likewise.
34626         * modules/mkdtemp : Likewise.
34627         * modules/pipe: Likewise.
34628         * modules/wait-process: Likewise.
34629
34630 2006-04-23  Bruno Haible  <bruno@clisp.org>
34631
34632         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
34633         condition was already detected.
34634         Reported by Ben Pfaff <blp@cs.stanford.edu>.
34635
34636 2006-04-23  Bruno Haible  <bruno@clisp.org>
34637
34638         * lib/copy-file.c: Include <unistd.h> unconditionally.
34639         * lib/execute.c: Likewise.
34640         * lib/fatal-signal.c: Likewise.
34641         * lib/findprog.c: Likewise.
34642         * lib/mkdtemp.c: Likewise.
34643         * lib/pipe.h: Likewise.
34644         * lib/pipe.c: Likewise.
34645         * lib/wait-process.h: Likewise.
34646
34647 2006-04-23  Bruno Haible  <bruno@clisp.org>
34648
34649         * gnulib-tool (func_usage): Fix --import description. Document
34650         --update.
34651         (func_import): Create temporary file in a temporary directory, if
34652         --dry-run is specified. Silence errors from 'grep' when there are no
34653         m4 files in $m4dir.
34654         (func_create_testdir): Silence errors from 'grep' when there are no
34655         m4 files in $m4dir.
34656         Reported by Karl Berry <karl@freefriends.org>.
34657
34658 2006-04-20  Bruno Haible  <bruno@clisp.org>
34659
34660         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
34661         one argument, so that the code will be portable to Autoconf 2.60.
34662         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
34663         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
34664         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
34665
34666 2006-04-19  Derek Price  <derek@ximbiot.com>
34667             Eric Blake  <ebb9@byu.net>
34668
34669         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
34670         rather than "/full/path.h".  Update comment to match.  Shorten &
34671         generalize m4_translit call via AS_TR_CPP.
34672
34673 2006-04-19  Derek Price  <derek@ximbiot.com>
34674             Eric Blake  <ebb9@byu.net>
34675
34676         * lib/inttypes.h: Correct grammar in comment.
34677
34678 2006-04-18  Derek Price  <derek@ximbiot.com>
34679             Paul Eggert  <eggert@cs.ucla.edu>
34680
34681         * modules/inttypes: New file.
34682         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
34683
34684 2006-04-18  Derek Price  <derek@ximbiot.com>
34685             Paul Eggert  <eggert@cs.ucla.edu>
34686
34687         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
34688         New files.
34689
34690 2006-04-18  Derek Price  <derek@ximbiot.com>
34691             Paul Eggert  <eggert@cs.ucla.edu>
34692
34693         * lib/inttypes.h: New file.
34694         * lib/strtoimax.c: Assume <inttypes.h>.
34695
34696 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
34697
34698         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
34699         isn't mounted.  Problem reported by Kir Kolyshkin.
34700
34701 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
34702
34703         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
34704         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
34705         Derek R. Price.
34706         * lib/regex.h (RE_DUP_MAX): Update comment to match current
34707         implementation.
34708
34709 2006-04-12  Eric Blake  <ebb9@byu.net>
34710
34711         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
34712         is now done automatically by the corresponding Autoconf macro.
34713
34714 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
34715
34716         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
34717         time_r.h.
34718
34719 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
34720
34721         Merge regex changes from libc, removing some of our
34722         POSIX-conformance changes that were rejected and redoing them in a
34723         less-intrusive way.
34724
34725         * lib/regcomp.c (re_compile_internal, init_dfa):
34726         Length arg is now size_t, not Idx.  All uses changed.
34727         (peek_token): Forward decl now says internal_function.
34728         (__re_error_msgid, __re_error_msgid_idx):
34729         Now static rather than extern with attribute_hidden.
34730         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
34731         For some reason libc prefers K&R style defns for external functions.
34732         (regerror) [!defined _LIBC]: Likewise.
34733         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
34734         (seek_collating_symbol_entry, lookup_collation_sequence_value):
34735         (build_range_exp, build_collating_symbol):
34736         Use K&R-style defn.
34737         (re_compile_fastmap): Use '\0' to memset, not 0.
34738         (utf8_sb_map): Make the calculations more obvious.
34739         (init_dfa, parse_bracket_exp, build_charclass_op):
34740         Call calloc and cast result, as glibc does.
34741         (init_word_char, fetch_token, peek_token, peek_token_bracket):
34742         (build_range_exp, build_collating_symbol):
34743         Now internal functions.
34744
34745         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
34746
34747         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
34748         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
34749         Don't depend on VMS; depend on __VMS instead, for POSIX
34750         namespace cleanness.
34751         (regoff_t): Define to ssize_t, not long int.
34752
34753         Remove the REG_ macros named below.  Instead, make the old names
34754         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
34755         __USE_GNU_REGEX.
34756         (REG_BACKSLASH_ESCAPE_IN_LISTS):
34757         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
34758         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
34759         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
34760         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
34761         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
34762         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
34763         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
34764         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
34765         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
34766         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
34767         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
34768         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
34769         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
34770         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
34771         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
34772         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
34773         (REG_NREGS):
34774         Remove.  All uses replaced by the old RE_* names.
34775         (RE_BACKSLASH_ESCAPE_IN_LISTS):
34776         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
34777         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
34778         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
34779         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
34780         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
34781         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
34782         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
34783         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
34784         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
34785         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
34786         Don't bother having these macros be independent of each others'
34787         values, since they no longer exist in the POSIX name space.
34788
34789         Rename the following member names back to their old names,
34790         unless !__USE_GNU_REGEX.  All uses changed back.
34791         (buffer): Renamed from re_buffer.
34792         (allocated): Renamed from re_allocated.
34793         (used): Renamed from re_used.
34794         (syntax): Renamed from re_syntax.
34795         (fastmap): Renamed from re_fastmap.
34796         (translate): Renamed from re_translate.
34797         (can_be_null): Renamed from re_can_be_null.
34798         (regs_allocated): Renamed from re_regs_allocated.
34799         (fastmap_accurate): Renamed from re_fastmap_accurate.
34800         (no_sub): Renamed from re_no_sub.
34801         (not_bol): Renamed from re_not_bol.
34802         (not_eol): Renamed from re_not_eol.
34803         (newline_anchor): Renamed from re_newline_anchor.
34804         (num_regs): Renamed from rm_num_regs.
34805         (start): Renamed from rm_start.
34806         (end): Renamed from rm_end.
34807
34808         (free_state): Move up a bit.
34809
34810         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
34811         #define to be empty.
34812         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
34813         when that is what is intended.
34814         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
34815         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
34816         (MAX): New macro.
34817         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
34818         All uses changed back to re_malloc, etc.  It's now the caller's
34819         responsibility to check for overflow; all callers changed.
34820         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
34821         (re_x2nrealloc): Remove.
34822         (free_state): Remove decl.
34823
34824         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
34825         (re_set_registers, re_exec):
34826         Use K&R-style defn.
34827
34828         2006-01-31  Roland McGrath  <roland@redhat.com>
34829
34830         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
34831         Reported by Mike Frysinger <vapier@gentoo.org>.
34832
34833         2006-01-15  Andreas Jaeger  <aj@suse.de>
34834
34835         [BZ #1950]
34836         * lib/regex_internal.c (re_string_reconstruct): Adjust for
34837         build_wcs_upper_buffer change.
34838         (build_wcs_upper_buffer): Change return type.
34839
34840         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
34841
34842         * lib/regex_internal.h: Include <stdint.h> if available.
34843
34844         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
34845
34846         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
34847
34848         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
34849
34850         * lib/regcomp.c: Adjust for changed secondary hash function.
34851
34852         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
34853
34854         * lib/regex.h: Pretty printing.
34855         Clean up namespace a bit.
34856
34857         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
34858
34859         * lib/regexec.c (update_cur_sifted_state, check_arrival,
34860         check_arrival_add_next_nodes): Avoid using uninitialized variable.
34861
34862         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
34863                     Ulrich Drepper  <drepper@redhat.com>
34864
34865         [BZ #1302]
34866         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
34867         changed.
34868         (bitset_word_t): Renamed from bitset_word.  All uses changed.
34869
34870         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
34871
34872         [BZ #281]
34873         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
34874         * lib/regcomp.c: Remove unnecessary uses of
34875         unsigned RE_TRANSLATE_TYPE.
34876         * lib/regex_internal.h: Likewise.
34877         * lib/regex_internal.c: Likewise.
34878         * lib/regexec.c: Likewise.
34879         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
34880
34881         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
34882
34883         * lib/regexec.c (find_recover_state): Remove unnecessary
34884         initialization.
34885         (transit_state_bkref): Make DFA a const pointer.
34886         (get_subexp): Likewise.
34887         (check_arrival): Likewise.
34888         (update_cur_sifted_state): Likewise.
34889         (re_search_internal): Likewise.
34890         (prune_impossible_nodes): Likewise.
34891         (acquire_init_state_context): Likewise.
34892         (proceed_next_node): Likewise.
34893         (set_regs): Likewise.
34894         (free_fail_stack_return): Likewise.
34895         (check_arrival_expand_ecl): Mark DFA parameter as const.
34896         (check_arrival_expand_ecl_sub): Likewise.
34897         (check_subexp_limits): Likewise.
34898         (sub_epsilon_src_nodes):  Likewise.
34899         (add_epsilon_src_nodes):  Likewise.
34900         (merge_state_array): Likewise.
34901         (update_regs): Likewise.
34902         (build_trtable): Likewise.
34903         (sift_states_backward): Mark MCTX parameter as const.
34904         (build_sifted_states): Likewise.
34905         (update_cur_sifted_state): Likewise.
34906         (sift_states_mkref): Likewise.
34907         (check_arrival_expand_ecl): Mark eclosure as const.
34908         (check_dst_limits_calc_pos_1): Likewise.
34909         * lib/regex_internal.h (re_match_context_t): Make dfa a const
34910         pointer.
34911
34912         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
34913
34914         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
34915         (transit_state_sb): Likewise.
34916         (transit_state_mb): Likewise.
34917         (sift_states_iter_mb): Likewise.
34918         (check_arrival_add_next_nodes): Likewise.
34919         (check_node_accept_bytes): Change first parameter to pointer-to-const.
34920         [_LIBC] (re_search_2_stub): Use mempcpy.
34921
34922         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
34923         mbrtowc for very simple UTF-8 case.
34924
34925         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
34926         a pointer-to-const.
34927         (re_acquire_state_context): Likewise.
34928         * lib/regex_internal.h: Adjust prototypes.
34929
34930         * lib/regex.c: Prevent using C++ compilers.
34931
34932         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
34933         (re_acquire_state_context): Likewise.
34934
34935 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
34936
34937         * modules/regex (Depends-on): Add ssize_t.
34938
34939 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
34940
34941         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
34942         translation table.
34943
34944 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
34945
34946         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
34947
34948 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
34949             Bruno Haible  <bruno@clisp.org>
34950
34951         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
34952         <sys/types.h> and <inttypes.h>.
34953
34954 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34955
34956         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
34957         `__error_t_defined', so argp.h will not typedef the former.
34958
34959 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
34960
34961         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
34962         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
34963         glibc names.  Even if glibc is changed to conform to POSIX, the
34964         traditional names will be available anyway, since regex depends on
34965         the extensions module.  Also, fix a longstanding typo in the
34966         implementation of Spencer ERE test #75 from grep 2.3.  Problems
34967         reported by Emanuele Giaquinta.  Also, change sense of cached
34968         variable, so that the message makes sense.
34969
34970 2006-03-24  Simon Josefsson  <jas@extundo.com>
34971
34972         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
34973         including some doc fixes.
34974         (base64_encode_alloc): Fix +1 bug on allocation failures.
34975
34976 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34977
34978         * lib/base64.c (base64_encode): Do not read past end of array with
34979         unsanitized input on systems with CHAR_BIT > 8.
34980
34981 2006-03-24  Eric Blake  <ebb9@byu.net>
34982
34983         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
34984
34985 2006-03-22  Karl Berry  <karl@gnu.org>
34986
34987         * config/srclist.txt (*setenv.[ch]): get from coreutils.
34988         * config/srclistvars.sh (COREUTILS): new var.
34989
34990 2006-03-17  Jim Meyering  <jim@meyering.net>
34991
34992         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
34993         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
34994
34995 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
34996
34997         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
34998         no longer needs it.  Instead, check that regoff_t is as least
34999         as wide as ptrdiff_t.
35000
35001         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
35002         so that our regex.h stays compatible with the installed regex.
35003         This is helpful for installers who configure --without-included-regex.
35004         Problem reported by Emanuele Giaquinta.
35005
35006 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
35007
35008         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
35009         Typedef to long int, not to off_, as POSIX will likely change
35010         in that direction.
35011
35012 2006-03-15  Eric Blake  <ebb9@byu.net>
35013
35014         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
35015
35016 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
35017
35018         * lib/argp-help.c (validate_uparams): Fix typo
35019         * lib/argp-parse.c (argp_default_options): Consistently begin help
35020         messages with a lowercase letter.
35021
35022 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
35023
35024         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
35025         overrun buffers and shouldn't be used (much as gets shouldn't be
35026         used).
35027         * lib/time_r.c (asctime_r, ctime_r): Likewise.
35028
35029 2006-03-08  Simon Josefsson  <jas@extundo.com>
35030
35031         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
35032         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
35033
35034 2006-03-08  Simon Josefsson  <jas@extundo.com>
35035
35036         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
35037         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
35038
35039 2006-03-08  Simon Josefsson  <jas@extundo.com>
35040
35041         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
35042         signal that configure disabled the device.
35043
35044 2006-03-08  Simon Josefsson  <jas@extundo.com>
35045
35046         * build-aux/maint.mk: Fix refresh-po, to handle no translated
35047         languages.
35048
35049 2006-03-07  Simon Josefsson  <jas@extundo.com>
35050
35051         * modules/getopt (Depends-on): Add unistd.
35052
35053         * modules/unistd: New file.
35054
35055 2006-03-07  Simon Josefsson  <jas@extundo.com>
35056
35057         * modules/gc-random: New file.
35058
35059 2006-03-07  Simon Josefsson  <jas@extundo.com>
35060
35061         * m4/unistd_h.m4: New file.
35062
35063 2006-03-07  Simon Josefsson  <jas@extundo.com>
35064
35065         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
35066         test to be side-effect free by storing the result in the cache
35067         variable gl_cv_lib_readline, and moving the assignment of
35068         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
35069         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
35070
35071 2006-03-07  Simon Josefsson  <jas@extundo.com>
35072
35073         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
35074         error on missing devices (the functions will return an error).
35075
35076         * m4/gc.m4: Move random stuff to gc-random.m4
35077
35078 2006-03-07  Simon Josefsson  <jas@extundo.com>
35079
35080         * lib/unistd_.h: New file.
35081
35082 2006-03-07  Simon Josefsson  <jas@extundo.com>
35083
35084         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
35085
35086 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
35087
35088         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
35089         Problem reported by Juan Manuel Guerrero.
35090
35091 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
35092
35093         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
35094         the unistd module.
35095         * lib/getlogin_r.c: Likewise.
35096         * lib/getlogin_r.h: Likewise.
35097         * lib/glob.c: Likewise.
35098         * lib/pagealign_alloc.c: Likewise.
35099         * lib/unistd_.h: Remove; no longer needed.
35100
35101 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
35102
35103         * MODULES.html.sh (Support for systems lacking POSIX:2001):
35104         Add unistd.
35105         * modules/c-stack (Depends-on): Add unistd.
35106         * modules/getlogin_r: Likewise.
35107         * modules/glob: Likewise.
35108         * modules/pagealign_alloc: Likewise.
35109         * modules/unistd (Files): Remove lib/unistd_.h.
35110         (EXTRA_DIST): Remove.
35111         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
35112         need unistd_.h.
35113         (MOSTLYCLEANFILES): Remove unistd.h-t.
35114
35115 2006-03-03  Simon Josefsson  <jas@extundo.com>
35116
35117         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
35118
35119 2006-03-03  Simon Josefsson  <jas@extundo.com>
35120
35121         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
35122         libidn and bison.
35123
35124 2006-03-03  Simon Josefsson  <jas@extundo.com>
35125
35126         * build-aux/maint.mk: Add indent target.
35127
35128 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
35129
35130         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
35131         our replacement poll.h in any case, to avoid a differing
35132         declaration from a system header.  Seen on AIX.
35133
35134 2006-03-01  Simon Josefsson  <jas@extundo.com>
35135
35136         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
35137         <kasal@ucw.cz>.
35138
35139 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
35140
35141         * modules/gettime (Depends-on): Add extensions module.
35142         * modules/nanosleep (Depends-on): Likewise.
35143         * modules/settime (Depends-on): Likewise.
35144
35145 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
35146
35147         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
35148         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
35149         pedantically.
35150         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
35151         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
35152
35153         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
35154         not "==".  Reported by Ralf Wildenhues.
35155
35156 2006-03-01  Karl Berry  <karl@gnu.org>
35157
35158         * doc/Copyright/request-*: new files, synced from gnuorg.
35159
35160 2006-03-01  Karl Berry  <karl@gnu.org>
35161
35162         * config/srclist.txt (Copyright/*): new entries.
35163
35164 2006-02-28  Simon Josefsson  <jas@extundo.com>
35165
35166         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
35167
35168 2006-02-27  Simon Josefsson  <jas@extundo.com>
35169
35170         * lib/base64.h: Indent #define's.  From Jim Meyering
35171         <jim@meyering.net>.
35172
35173 2006-02-27  Jim Meyering  <jim@meyering.net>
35174
35175         Revert the change of 2006-02-24, so these files can continue
35176         to be sync'd from gettext.
35177         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
35178         of `config.h'.
35179
35180 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
35181
35182         * modules/intprops: New file.
35183         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
35184         Add intprops.
35185         * modules/getloadavg (Files): Remove lib/intprops.h.
35186         (Depends-on): Add intprops.
35187         * modules/human: Likewise.
35188         * modules/inttostr: Likewise.
35189         * modules/openat: Likewise.
35190         * modules/sig2str: Likewise.
35191         * modules/userspec: Likewise.
35192         * modules/utimecmp: Likewise.
35193         * modules/xnanosleep: Likewise.
35194         * modules/xstrtol: Likewise.
35195
35196 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
35197
35198         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
35199         * modules/lock-tests (TESTS): Use $(EXEEXT).
35200         * modules/tls-tests: Likewise.
35201         * modules/argp-tests: Likewise.
35202         (check_PROGRAMS): New var, replacing...
35203         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
35204
35205 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35206
35207         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
35208         `config.h'.
35209
35210 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
35211
35212         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
35213
35214 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35215
35216         Sync from coreutils.
35217         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
35218         gl_CHDIR_SAFER.
35219
35220 2006-02-22  Jim Meyering  <jim@meyering.net>
35221
35222         Sync from coreutils.
35223         * m4/chdir-safer.m4: New file.
35224
35225 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
35226
35227         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
35228         AT_FDCWD exceeds INT_MAX.
35229         * lib/openat.h (AT_FDCWD): Likewise.
35230
35231 2006-02-17  Eric Blake  <address@hidden>
35232
35233         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
35234
35235 2006-02-16  Simon Josefsson  <jas@extundo.com>
35236
35237         * modules/getaddrinfo (Depends-on): Add sys_socket.
35238
35239 2006-02-15  Simon Josefsson  <jas@extundo.com>
35240
35241         * build-aux/maint.mk: Add dsyntax-check rule.
35242
35243 2006-02-15  Eric Blake  <ebb9@byu.net>
35244
35245         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
35246         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
35247         'present but cannot compile' warnings on cygwin.
35248         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
35249         use ws2tcpip.h if sys/socket.h works.
35250         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
35251         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
35252
35253 2006-02-14  Simon Josefsson  <jas@extundo.com>
35254
35255         * modules/maintainer-makefile (Files): Rename.
35256
35257         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
35258         and (the local) Makefile.cfg to maint-cfg.mk.
35259
35260         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
35261         to the latter.
35262
35263         * modules/maintainer-makefile: New module.
35264
35265         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
35266         severaly stripped to make it possible to build it up from scratch
35267         with reliable tests.
35268
35269         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
35270         fixes to permit overriding the default actions when configure and
35271         makefile are not available.
35272
35273 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
35274
35275         Sync from coreutils.
35276         * modules/lstat (Depends-on): Don't depend on xalloc.
35277         (License): Change from GPL to LGPL, since this is now simply a
35278         replacement for a libc function.
35279
35280 2006-02-14  Jim Meyering  <jim@meyering.net>
35281
35282         Sync from coreutils.
35283
35284         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
35285         failure on deficient systems, and simplify gnulib lgpl dependencies.
35286         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
35287         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
35288
35289         * lib/xalloc-die.c: Remove unused definition of N_.
35290
35291 2006-02-14  Jim Meyering  <jim@meyering.net>
35292
35293         Sync from coreutils.
35294         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
35295         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
35296         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
35297         double-quote uses of that variable, to accommodate the rare case in
35298         which getmntent is available in none of the libraries checked.  This
35299         happens at least on FreeBSD 5.0.
35300
35301 2006-02-13  Simon Josefsson  <jas@extundo.com>
35302
35303         * gnulib-tool (Usage): Fix --import, from
35304         karl@freefriends.org (Karl Berry).
35305
35306 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
35307
35308         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
35309
35310 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
35311
35312         * lib/argp-namefrob.h: Restore changes accidentally lost during the
35313         "autoupdate" on 2005-12-12.
35314
35315 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
35316
35317         * modules/closeout (Depends-on): Remove atexit.
35318
35319 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
35320
35321         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
35322         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
35323
35324 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
35325
35326         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
35327         __EXTENSIONS__ if this causes compilation to fail.  Problem
35328         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
35329         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
35330
35331 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
35332
35333         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
35334         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
35335         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
35336         All uses changed.
35337
35338 2006-01-26  Simon Josefsson  <jas@extundo.com>
35339
35340         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
35341         prototype is visible on mingw32.
35342
35343         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
35344         for mingw32.
35345
35346         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
35347         mingw32).
35348
35349 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
35350
35351         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
35352         attempt to open for write; this always fails, at least on POSIX
35353         hosts.  This reinstates the 2006-01-09 change, which was
35354         inadvertently removed.
35355
35356 2006-01-26  Bruno Haible  <bruno@clisp.org>
35357
35358         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
35359         Reported by Paul Eggert.
35360
35361 2006-01-26  Bruno Haible  <bruno@clisp.org>
35362             Paul Eggert  <eggert@cs.ucla.edu>
35363
35364         * lib/stdbool_.h (_Bool)
35365         [(! (defined __cplusplus || defined __BEOS__)
35366           && !defined __GNUC__
35367           && !(defined __HP_cc || defined __xlc__
35368                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
35369                || defined __sgi))]:
35370         #define to signed char in these cases too; this simplifies
35371         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
35372         etc., separately) and makes it more conservative.
35373
35374 2006-01-25  Simon Josefsson  <jas@extundo.com>
35375
35376         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
35377         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
35378         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
35379
35380 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
35381
35382         * lib/argp-namefrob.h: Bugfix. Remove stray #
35383
35384 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
35385
35386         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
35387         so that we test the test.
35388         Check for yet another HP-UX cc bug involving *bool |= bool.
35389
35390 2006-01-25  Karl Berry  <karl@gnu.org>
35391
35392         * config/srclist.txt (vasnprintf.c): sync lost.
35393
35394 2006-01-25  Jim Meyering  <jim@meyering.net>
35395
35396         Sync from the stable (b5) branch of coreutils:
35397
35398         * lib/fts.c (fts_children): Don't let close() clobber errno from
35399         failed fchdir().
35400
35401         * lib/fts.c (fts_stat): When following a symlink-to-directory,
35402         don't necessarily interpret stat-fails+lstat-succeeds as indicating
35403         a dangling symlink.  That can also happen at least for ELOOP.
35404         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
35405         FYI, this bug predates the inclusion of fts.c in coreutils.
35406
35407         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
35408         in their own block, so pre-c99 compilers don't object.
35409
35410         Avoid the double-free (first in fts_read, second in fts_close) that
35411         would occur when an `active' directory is made inaccessible (e.g.,
35412         via chmod a-x) during a traversal.
35413         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
35414         before returning.  Reproduce this failure by
35415         mkdir -p a/b; cd a; chmod a-x . b
35416         Reported by Stavros Passas.
35417
35418 2006-01-25  Jim Meyering  <jim@meyering.net>
35419
35420         * lib/fileblocks.c: Remove more useless parentheses.
35421         * lib/readutmp.h: Likewise.
35422
35423 2006-01-25  Bruno Haible  <bruno@clisp.org>
35424
35425         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
35426         warnings.
35427         Reported by Paul Eggert.
35428
35429 2006-01-25  Bruno Haible  <bruno@clisp.org>
35430
35431         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
35432         rid of a trap command. For Solaris sh.
35433         Reported by Mark D. Baushke <mdb@gnu.org>.
35434
35435 2006-01-24  Simon Josefsson  <jas@extundo.com>
35436
35437         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
35438         Bruno.
35439
35440 2006-01-24  Karl Berry  <karl@gnu.org>
35441
35442         * config/srclist.txt (argp-namefrob.h): sync lost.
35443
35444 2006-01-24  Jim Meyering  <jim@meyering.net>
35445
35446         * modules/openat (Files): Add lib/intprops.h.
35447         From Mark D. Baushke.
35448
35449 2006-01-24  Jim Meyering  <jim@meyering.net>
35450
35451         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
35452         Reported by Mark D. Baushke.
35453
35454 2006-01-24  Jim Meyering  <jim@meyering.net>
35455
35456         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
35457
35458 2006-01-24  Bruno Haible  <bruno@clisp.org>
35459
35460         * modules/strnlen (Maintainer): Change from glibc to all.
35461
35462 2006-01-24  Bruno Haible  <bruno@clisp.org>
35463
35464         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
35465         Patch by Paul Eggert.
35466
35467 2006-01-24  Bruno Haible  <bruno@clisp.org>
35468
35469         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
35470         already has it.
35471         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
35472         2005-11-26.
35473
35474         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
35475         'signed char' to avoid problems with the built-in _Bool type.
35476         Reported by Paul Eggert on 2005-11-26.
35477
35478 2006-01-24  Bruno Haible  <bruno@clisp.org>
35479
35480         * gnulib-tool (func_import): Avoid constructing complicated sed
35481         expressions inside backquote.
35482         Report and solution by Mark D. Baushke <mdb@gnu.org>.
35483
35484 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
35485
35486         These changes imported from libc.
35487         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
35488         test and two separate function calls.
35489         * lib/strndup.c (__strndup): Add libc_hidden_def.
35490
35491 2006-01-23  Simon Josefsson  <jas@extundo.com>
35492
35493         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
35494         Remove the test_*_SOURCES variable: automake infers it by default.
35495         * modules/tls-tests: Likewise.
35496
35497 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
35498
35499         Work around porting bugs reported by Dieter in
35500         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
35501         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
35502         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
35503         Include "getopt.h" first, to check interface.
35504         (getenv): Declare only if defined HAVE_DECL_GETENV &&
35505         !HAVE_DECL_GETENV.
35506         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
35507         (__strndup): Revert to K&R-style function dfns, the glibc style.
35508         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
35509         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
35510         Include strnlen.h first, to get prototype properly.
35511         (strnlen): Renamed from __strnlen.
35512         Remove weak alias.
35513
35514 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
35515
35516         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
35517
35518 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
35519
35520         * config/srclist.txt: Adjust to reflect glibc reorganization.
35521         This affects only comments.
35522
35523 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
35524
35525          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
35526          Reported by Bruce Korb <bkorb@gnu.org>.
35527
35528 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
35529
35530         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
35531         to pacify gcc -Wswitch-default.
35532
35533 2006-01-22  Bruno Haible  <bruno@clisp.org>
35534
35535         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
35536         temporary buffer for sprintf, take into account the precision also
35537         for 'd', 'i', 'u', 'o', 'x', 'X'.
35538
35539 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
35540
35541         * modules/argp-tests: New module
35542         * tests/test-argp.c: New file
35543         * tests/test-argp-2.sh: New file
35544
35545 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
35546
35547         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
35548         (__argp_base_name): Removed
35549         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
35550         typo.
35551         (__argp_base_name): Provide macro definition or extern declaration
35552         depending on the configuration
35553
35554 2006-01-20  Simon Josefsson  <jas@extundo.com>
35555
35556         * modules/inet_ntop (Depends-on): Depend on sys_socket.
35557
35558 2006-01-20  Simon Josefsson  <jas@extundo.com>
35559
35560         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
35561
35562 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
35563
35564         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
35565         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
35566         Suggested by Bruno Haible.
35567
35568 2006-01-20  Karl Berry  <karl@gnu.org>
35569
35570         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
35571         until changes propagate, I guess.
35572
35573 2006-01-19  Simon Josefsson  <jas@extundo.com>
35574
35575         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
35576
35577 2006-01-19  Simon Josefsson  <jas@extundo.com>
35578
35579         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
35580
35581 2006-01-19  Simon Josefsson  <jas@extundo.com>
35582
35583         * gnulib-tool: Set check_PROGRAMS.
35584
35585         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
35586         modules/des-tests, modules/gc-arcfour-tests,
35587         modules/gc-arctwo-tests, modules/gc-des-tests,
35588         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
35589         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
35590         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
35591         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
35592         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
35593         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
35594         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
35595         test_*_SOURCES.
35596
35597 2006-01-18  Simon Josefsson  <jas@extundo.com>
35598
35599         * modules/socklen (Depends-on): Depend on sys_socket.
35600
35601 2006-01-18  Simon Josefsson  <jas@extundo.com>
35602
35603         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
35604         modules/des-tests, modules/gc-arcfour-tests,
35605         modules/gc-arctwo-tests, modules/gc-des-tests,
35606         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
35607         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
35608         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
35609         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
35610         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
35611         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
35612         $(EXEEXT) to automake TESTS variable, for mingw32.
35613
35614 2006-01-17  Simon Josefsson  <jas@extundo.com>
35615
35616         * modules/socklen (Include): Need sys/socket.h.
35617
35618 2006-01-17  Bruno Haible  <bruno@clisp.org>
35619
35620         * modules/ssize_t (Include): Add <sys/types.h>.
35621
35622 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
35623
35624         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
35625         it's not portable and it doesn't work with cross-compiles.
35626         Problem reported by Bruno Haible.  Fix missing-$ typo in
35627         'test "gl_cv_ignore_unused_libraries" ...' that prevented
35628         -zignore from being used with Sun's C compiler.
35629
35630 2006-01-12  Simon Josefsson  <jas@extundo.com>
35631
35632         * lib/base64.c: Fix warning, reported by Bruno Haible
35633         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
35634
35635 2006-01-12  Bruno Haible  <bruno@clisp.org>
35636
35637         * modules/ldd: New file.
35638         * build-aux/ldd.sh.in: New file.
35639         * MODULES.html.sh (Support for building libraries and executables): Add
35640         ldd.
35641
35642 2006-01-12  Bruno Haible  <bruno@clisp.org>
35643
35644         * m4/ldd.m4: New file.
35645
35646 2006-01-12  Bruno Haible  <bruno@clisp.org>
35647
35648         * gnulib-tool (func_import, func_create_testdir): Don't go into an
35649         endless loop while replacing $auxdir with build-aux.
35650
35651 2006-01-11  Simon Josefsson  <jas@extundo.com>
35652
35653         * lib/stdint_.h (SIZE_MAX): Add missing (.
35654
35655 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
35656
35657         Sync from coreutils.
35658         * lib/md5.c: Fix commentary typos.
35659         (alignof, UNALIGNED_P): No need for a GCC-specific version.
35660         * lib/md5.h (__attribute__): Remove; unused.
35661         * lib/sha1.c: Fix commentary to match md5 better.
35662         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
35663         so that we don't need to worry about alignment.  All uses changed.
35664         This merges the 2005-10-28 md5 change into sha1.
35665
35666 2006-01-11  Jim Meyering  <jim@meyering.net>
35667
35668         Sync from coreutils.
35669         * lib/md5.c (OP): Fix spacing.
35670
35671 2006-01-11  Bruno Haible  <bruno@clisp.org>
35672
35673         Ensure automatic ordering between gl_LOCK and gl_ARGP.
35674         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
35675         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
35676
35677 2006-01-11  Bruno Haible  <bruno@clisp.org>
35678
35679         Ensure automatic ordering between gl_LOCK and gl_ARGP.
35680         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
35681         the "early" section as well.
35682
35683 2006-01-11  Bruno Haible  <bruno@clisp.org>
35684
35685         Avoid "ar: no archive members specified" error on MacOS X.
35686         * gnulib-tool (func_modules_add_dummy): New function.
35687         (func_import, func_create_testdir): Invoke it.
35688
35689 2006-01-11  Bruno Haible  <bruno@clisp.org>
35690
35691         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
35692         with $auxdir in AC_CONFIG_FILES statements.
35693
35694 2006-01-11  Bruno Haible  <bruno@clisp.org>
35695
35696         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
35697         Initialize also noinst_HEADERS to empty.
35698
35699 2006-01-11  Bruno Haible  <bruno@clisp.org>
35700
35701         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
35702         variables.
35703         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
35704         autoreconf.
35705
35706 2006-01-11  Bruno Haible  <bruno@clisp.org>
35707
35708         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
35709         overridable by the user.
35710         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
35711
35712 2006-01-10  Simon Josefsson  <jas@extundo.com>
35713
35714         * modules/sys_socket: New file.
35715
35716 2006-01-10  Simon Josefsson  <jas@extundo.com>
35717
35718         * m4/sys_socket_h.m4: New file.
35719
35720 2006-01-10  Simon Josefsson  <jas@extundo.com>
35721
35722         * lib/socket_.h: New file.
35723
35724 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
35725
35726         * modules/readutmp (Maintainer): Add myself.
35727
35728 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
35729
35730         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
35731         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
35732         People who are still concerned with buggy memcmp implementations
35733         can invoke gl_FUNC_MEMCMP themselves.
35734
35735 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
35736
35737         * lib/regex_internal.h (BITSET_WORD_BITS):
35738         Work around a bug in 64-bit PGC (before version 6.1-2), where the
35739         preprocessor mishandles large unsigned values as if they were signed.
35740         Problem reported by Claudio Fontana in
35741         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
35742
35743 2006-01-10  Jim Meyering  <jim@meyering.net>
35744
35745         Avoid the double-free (first in fts_read, second in fts_close) that
35746         would occur when an `active' directory is made inaccessible (e.g.,
35747         via chmod a-x) during a traversal.
35748         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
35749         before returning.  Reproduce this failure by
35750         mkdir -p a/b; cd a; chmod a-x . b
35751         Reported by Stavros Passas.
35752
35753         Sync from coreutils.
35754         * lib/sha1.c: Tweak grammar in a comment.
35755
35756 2006-01-10  Jim Meyering  <jim@meyering.net>
35757
35758         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
35759         Patch by Joerg Sonnenberger.
35760
35761 2006-01-10  Bruno Haible  <bruno@clisp.org>
35762
35763         * modules/readutmp: Depend on module free.
35764         * modules/strtok_r: Depend on module restrict.
35765
35766 2006-01-10  Bruno Haible  <bruno@clisp.org>
35767
35768         * modules/gettext (configure.ac): Add an invocation of
35769         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
35770
35771 2006-01-10  Bruno Haible  <bruno@clisp.org>
35772
35773         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
35774         Reported by Werner Lemberg <wl@gnu.org>.
35775
35776 2006-01-10  Bruno Haible  <bruno@clisp.org>
35777
35778         * lib/localcharset.c: Update from GNU gettext.
35779
35780 2006-01-10  Bruno Haible  <bruno@clisp.org>
35781
35782         * lib/argp.h (__const): Remove macro. Use const instead.
35783         * lib/argp-fmtstream.h (__const): Likewise.
35784         * lib/glob_.h (__const): Remove macro.
35785         * lib/glob-libc.h: Use const instead of __const.
35786
35787 2006-01-10  Bruno Haible  <bruno@clisp.org>
35788
35789         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
35790         variable.
35791         Needed to avoid an automake error regarding the 'gettext' module.
35792
35793 2006-01-09  Simon Josefsson  <jas@extundo.com>
35794
35795         * modules/inet_ntop (Depends-on): Add restrict.
35796
35797 2006-01-09  Simon Josefsson  <jas@extundo.com>
35798
35799         * modules/gc-rijndael-tests (License): Put under LGPL.
35800
35801         * modules/gc-des-tests (License): Likewise.
35802
35803         * modules/gc-arcfour-tests (License): Likewise.
35804
35805         * modules/gc-arctwo-tests (License): Likewise.
35806
35807         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
35808
35809         * modules/gc-hmac-sha1-tests (Files): Likewise.
35810
35811         * modules/gc-hmac-md5-tests (License): Likewise.
35812
35813         * modules/gc-sha1-tests (License): Likewise.
35814
35815         * modules/gc-md5-tests (License): Likewise.
35816
35817         * modules/gc-md4-tests (License): Likewise.
35818
35819         * modules/gc-md2-tests (License): Likewise.
35820
35821         * modules/gc-tests (License): Likewise.
35822
35823         * modules/des-tests (License): Likewise.
35824
35825         * modules/md4-tests (License): Likewise.
35826
35827         * modules/md2-tests (License): Likewise.
35828
35829 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
35830
35831         Sync from coreutils:
35832
35833         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
35834         * modules/lib-ignore: New file.
35835         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
35836         chdir-safer.m4, lchmod.m4.
35837         * modules/openat: Add mkdirat.c, openat-priv.h.
35838
35839 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
35840
35841         Sync from coreutils.
35842         * m4/lib-ignore.m4: New file.
35843         * m4/lchmod.m4: New file.
35844
35845 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
35846
35847         Sync from coreutils.
35848         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
35849         for write access: POSIX says that must fail.
35850         * lib/fts.c (diropen): Likewise.
35851         * lib/save-cwd.c (save_cwd): Likewise.
35852         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
35853         well, for minor improvements on hosts that lack O_DIRECTORY.
35854         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
35855         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
35856         Fall back on chown if open failed with EACCES.
35857
35858         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
35859         Report an error at compile-time if only a 1-second nominal clock
35860         resolution is found.
35861
35862         * lib/lchmod.h: New file.
35863         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
35864         (make_dir_parents): Use lchown rather than chown, and
35865         lchmod rather than chmod.
35866
35867         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
35868         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
35869         "proc" reported by n0dalus.
35870
35871         * lib/mountlist.c: Include <limits.h>.
35872         (dev_from_mount_options)
35873         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
35874         New function.  It no longer assumes "dev=" has the System V meaning
35875         on Linux (since it doesn't).  It also parses "dev=" more carefully.
35876         (read_file_system_list)
35877         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
35878         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
35879         dev= in that case.
35880
35881         * lib/posixtm.h (PDS_PRE_2000): New macro.
35882         * lib/posixtm.c (year): Arg is now syntax_bits rather than
35883         allow_century.  All usages changed.  Reject dates outside the range
35884         1969-1999 if PDS_PRE_2000 is used.
35885
35886 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
35887
35888         Sync from coreutils.
35889         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
35890         (Time of day items): Mention the possibility of leap seconds.
35891         Problem reported by Dr. David Alan Gilbert.
35892
35893 2006-01-09  Jim Meyering  <jim@meyering.net>
35894
35895         Sync from coreutils.
35896
35897         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
35898
35899         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
35900
35901         * lib/modechange.c (mode_compile): Reject an invalid mode string
35902         that starts with an octal digit.  From Andreas Gruenbacher.
35903
35904         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
35905         and dup to open_safer and dup_safer, respectively.
35906         (openat_permissive): Fix typo in comment.
35907
35908         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
35909         "gettext.h"; either no longer needed or are guaranteed by openat.h.
35910         (_): Remove; no longer needed.
35911         (openat): Renamed from rpl_openat; no need for rpl_openat
35912         since openat.h renames openat for us.
35913         Replace most of the body with a call to openat_permissive,
35914         to avoid duplicate code.
35915         Port to (probably hypothetical) environments were mode_t is
35916         wider than int.
35917         (openat_permissive): Require mode arg, so that we can check
35918         types better.  Put it just after flags.  Change cwd failure
35919         indicator from pointer-to-bool to pointer-to-errno-value.
35920         All callers changed.
35921         Invoke openat_save_fail and/or openat_restore_fail if
35922         cwd_errno is null, so that openat can call us.
35923         (openat_permissive, fdopendir, fstatat, unlinkat):
35924         Simplify errno handling to avoid some duplicate code,
35925         as it's OK to set errno on success.
35926         * lib/openat.h: Revamp code so that function macros depend on
35927         __OPENAT_PREFIX only, not also on AT_FDCWD.
35928         (openat_ro): Remove.  Caller changed to use openat_permissive.
35929         (openat_permissive): Now a macro, if not a function.
35930         (openat_restore_fail, openat_save_fail): Now always functions,
35931         since mkdirat needs them even if __OPENAT_PREFIX is defined.
35932
35933         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
35934         and openat.c.
35935         * lib/mkdirat.c: Include openat-priv.h.
35936         Remove definitions of macros defined therein.
35937         * lib/openat.c: Likewise.
35938
35939         * lib/mkdirat.c (mkdirat): New file and function.
35940         * lib/openat.h (mkdirat): Declare.
35941
35942         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
35943
35944         * lib/openat.h (openat_permissive): Declare.
35945         (openat_ro): Define.
35946
35947         * lib/openat.c (EXPECTED_ERRNO): New macro.
35948         (openat_permissive): New function -- used in remove.c rewrite.
35949         (all functions): Set errno just before returning, only if there
35950         was an actual failure.
35951         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
35952
35953         Emulate openat-family functions using Linux's procfs, if possible.
35954         Idea and some code based on Ulrich Drepper's glibc changes.
35955
35956         * lib/openat.c: (BUILD_PROC_NAME): New macro.
35957         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
35958         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
35959         before falling back on save_cwd and restore_cwd.
35960         (fdopendir, fstatat, unlinkat): Likewise.
35961
35962         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
35963         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
35964
35965         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
35966         as second argument to va_arg.  Otherwise, some versions of gcc
35967         warn that `if this code is reached, the program will abort'.
35968
35969 2006-01-09  Jim Meyering  <jim@meyering.net>
35970
35971         Sync from coreutils.
35972         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
35973         Require openat-priv.h.
35974
35975 2006-01-09  Bruno Haible  <bruno@clisp.org>
35976
35977         * modules/strnlen (Include): Use strnlen.h.
35978
35979 2006-01-09  Bruno Haible  <bruno@clisp.org>
35980
35981         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
35982
35983 2006-01-09  Bruno Haible  <bruno@clisp.org>
35984
35985         * lib/sysexit_.h (EX_OK): New macro.
35986         Suggested by Martin Lambers <marlam@marlam.de>.
35987
35988 2006-01-09  Bruno Haible  <bruno@clisp.org>
35989
35990         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
35991         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
35992
35993 2006-01-09  Bruno Haible  <bruno@clisp.org>
35994
35995         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
35996         numbers.
35997
35998 2006-01-09  Bruno Haible  <bruno@clisp.org>
35999
36000         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
36001         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
36002         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
36003         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
36004
36005 2006-01-09  Bruno Haible  <bruno@clisp.org>
36006
36007         * build-aux/javacomp.sh.in: New file, moved from lib/.
36008         * modules/javacomp-script (Files): Update.
36009         (configure.ac): Add AC_CONFIG_FILES invocation.
36010         (EXTRA_DIST): Remove variable.
36011
36012         * build-aux/javaexec.sh.in: New file, moved from lib/.
36013         * modules/javaexec (Files): Update.
36014         (configure.ac): Add AC_CONFIG_FILES invocation.
36015         (EXTRA_DIST): Remove javaexec.sh.in.
36016
36017         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
36018         * modules/csharpcomp-script (Files): Update.
36019         (configure.ac): Add AC_CONFIG_FILES invocation.
36020         (EXTRA_DIST): Remove variable.
36021
36022         * build-aux/csharpexec.sh.in: New file, moved from lib/.
36023         * modules/csharpexec (Files): Update.
36024         (configure.ac): Add AC_CONFIG_FILES invocation.
36025         (EXTRA_DIST): Remove csharpexec.sh.in.
36026
36027 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
36028
36029         Sync from coreutils.
36030
36031         Add POSIX ACL support
36032         * lib/acl.h (copy_acl, set_acl): Add declarations.
36033         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
36034         systems other than Linux.
36035         (chmod_or_fchmod): New function: use fchmod when possible,
36036         and chmod otherwise.
36037         (file_has_acl): Add a POSIX ACL implementation, with a
36038         Linux-specific subcase.
36039         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
36040         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
36041         acls are unsupported.
36042         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
36043         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
36044         are unsupported.
36045
36046 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
36047
36048         Sync from coreutils.
36049         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
36050
36051 2006-01-07  Bruno Haible  <bruno@clisp.org>
36052
36053         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
36054         gl_EARLY.
36055
36056 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
36057
36058         * lib/strftime.c (tzname): Don't declare if it is already #defined.
36059         Problem reported for Mingw by Mark Junker.
36060
36061 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
36062
36063         * README: Gnulib normally doesn't generate a tarball.
36064
36065 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
36066
36067         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
36068         long int, not int, for nanosecond counts, so that people who are
36069         used to POSIX struct timespec won't be surprised.  Reported by Jim
36070         Meyering.
36071
36072 2005-12-28  Bruno Haible  <bruno@clisp.org>
36073
36074         * build-aux/config.rpath: Update from GNU gettext.
36075
36076 2005-12-16  Jim Meyering  <jim@meyering.net>
36077
36078         * modules/fprintftime: New module.
36079         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
36080
36081 2005-12-16  Jim Meyering  <jim@meyering.net>
36082
36083         * m4/fprintftime.m4: New file.
36084
36085 2005-12-16  Jim Meyering  <jim@meyering.net>
36086
36087         * lib/fprintftime.c, lib/fprintftime.h: New files.
36088
36089 2005-12-15  Simon Josefsson  <jas@extundo.com>
36090
36091         * modules/socklen (configure.ac): Fix M4 macro name, to align with
36092         new m4/socklen.m4.
36093
36094 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
36095
36096         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
36097         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
36098
36099 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
36100
36101         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
36102         * lib/argp-help.c (fill_in_uparams): Check if the constructed
36103         struct uparams is valid. Fall back to the default values if it is
36104         not.
36105
36106 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
36107
36108         * modules/argp (Files): Add argp-pin.c
36109         (Depends-on): dirname
36110         (lib_SOURCES): Add argp-pin.c
36111
36112 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
36113
36114         * m4/argp.m4:  Check if program_invocation_name and
36115         program_invocation_short_name are declared and define appropriate
36116         macros if they are not.
36117
36118 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
36119
36120         * lib/argp-help.c (__argp_base_name): New function
36121         (__argp_short_program_name): Rewrite using __argp_base_name
36122         * lib/argp-namefrob.h: Define program_invocation_name and
36123         program_invocation_short_name if requested
36124         (__argp_base_name): Add prototype
36125         * lib/argp-parse.c (argp_def): Use gettext wrappers
36126         (argp_default_parser): Use __argp_base_name
36127         * lib/argp-pin.c: New file. Defines program_invocation_name and
36128         program_invocation_short_name on systems that lack them.
36129
36130 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
36131
36132         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
36133         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
36134         porting problem reported by Georg Schwarz in
36135         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
36136
36137 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
36138
36139         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
36140         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
36141         porting problem reported by Georg Schwarz in
36142         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
36143
36144 2005-12-05  Bruno Haible  <bruno@clisp.org>
36145
36146         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
36147         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
36148         Reported by Mark Junker <mjscod@gmx.de>.
36149
36150 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
36151
36152         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
36153         Use implementation from Albert Chin, with some
36154         comments/corrections by Stepan Kasal and myself.
36155
36156 2005-12-02  Bruno Haible  <bruno@clisp.org>
36157
36158         * gnulib-tool (func_import): Accept GPLed build tool modules when
36159         --lgpl is given.
36160         * modules/csharpcomp-script: New file.
36161         * modules/csharpcomp: Depend on it.
36162         * modules/javacomp-script: New file.
36163         * modules/javacomp: Depend on it.
36164         Suggested by Simon Josefsson.
36165
36166 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
36167
36168         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
36169         statement, to work around an HP-UX 10.20 compiler bug reported by
36170         Peter O'Gorman.
36171
36172 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
36173
36174         * modules/savedir (Depends-on): Add openat.
36175
36176 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
36177
36178         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
36179         (uintmax_t) [defined uintmax_t]: Do not declare.
36180         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
36181         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
36182         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
36183         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
36184         sake of portability to weird hosts that C allows (though we don't
36185         know of any practical examples).
36186
36187         * lib/savedir.h (fdsavedir): New decl.
36188         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
36189         contains most of the former guts of savedir.
36190         (savedir): Use savedirstream.
36191         Include "openat.h".
36192
36193 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
36194
36195         * modules/obstack (Files): Add m4/ulonglong.m4.
36196         Problem reported by Davide Angelocola.
36197
36198 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
36199
36200         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
36201         coreutils no longer futzes with rounding modes.
36202
36203 2005-11-14  Jim Meyering  <jim@meyering.net>
36204
36205         * lib/mkstemp-safer.c: Include <config.h>, required for possible
36206         replacement of mkstemp.
36207
36208 2005-11-10  Simon Josefsson  <jas@extundo.com>
36209
36210         * lib/readline.c: Remove EOL.
36211
36212 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
36213
36214         * modules/gethrxtime (Depends-on): Add gettime.
36215
36216 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
36217
36218         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
36219         or gettimeofday; no longer needed.
36220
36221 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
36222
36223         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
36224         time business.
36225         (gethrxtime) [! (HAVE_NANOUPTIME
36226         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
36227         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
36228         our own approximation.
36229
36230 2005-11-08  Eric Blake  <ebb9@byu.net>
36231
36232         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
36233
36234 2005-11-08  Eric Blake  <ebb9@byu.net>
36235
36236         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
36237
36238 2005-11-04  Bruno Haible  <bruno@clisp.org>
36239
36240         * gnulib-tool: Implement --update mode.
36241
36242 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
36243
36244         Fix porting problem reported by Theodoros V. Kalamatianos.
36245         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
36246         Don't assume that futimes failing means we must fail.
36247
36248 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
36249
36250         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
36251         variables to suggest the intended function of the PATH_MAX check.
36252
36253 2005-10-30  Kean Johnston  <jkj@sco.com>
36254
36255         Trivial changes to support SCO systems.
36256         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
36257         as PATH_MAX.
36258         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
36259         where __ptr is null when no I/O is pending.
36260
36261 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
36262
36263         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
36264         leave errno alone.  Problem reported by Dmitry V. Levin.
36265
36266 2005-10-28  Simon Josefsson  <jas@extundo.com>
36267
36268         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
36269         Test more.
36270
36271         * tests/test-gc-md2.c, tests/test-md2.c: New files.
36272
36273         * modules/md2, modules/md2-tests: New files.
36274
36275 2005-10-28  Simon Josefsson  <jas@extundo.com>
36276
36277         * m4/inet_ntop.m4: More tests.
36278
36279         * m4/gc-md2.m4, md2.m4: New file.
36280
36281 2005-10-28  Simon Josefsson  <jas@extundo.com>
36282
36283         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
36284         "restrict" keywords, as per POSIX.  Protect the function
36285         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
36286         Don't use K&R prototypes.  Check the sprintf return values.
36287         Re-define EAFNOSUPPORT if not present.  Indent.
36288
36289         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
36290         suggested by Bruno Haible <bruno@clisp.org>.
36291
36292         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
36293
36294         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
36295
36296         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
36297         libgcrypt).
36298
36299         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
36300
36301         * lib/md2.h, lib/md2.c: New files.
36302
36303 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
36304
36305         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
36306         errno alone.  Problem reported by Frederic Jolliton.
36307
36308 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
36309
36310         * modules/verify (License): Change from GPL to LGPL.  This is a
36311         tiny module and there are apparently near-equivalents that are
36312         under the BSD license.
36313
36314 2005-10-24  Simon Josefsson  <jas@extundo.com>
36315
36316         * modules/sha1: Relicense to LGPL.
36317
36318 2005-10-24  Simon Josefsson  <jas@extundo.com>
36319
36320         * lib/md4.h: Shrink buffer size, now that we changed the type.
36321
36322 2005-10-23  Simon Josefsson  <jas@extundo.com>
36323
36324         * gnulib-tool (func_import): Fix --tests-base.
36325
36326 2005-10-22  Simon Josefsson  <jas@extundo.com>
36327
36328         * modules/arcfour (Depends-on): Need stdint.
36329
36330 2005-10-22  Simon Josefsson  <jas@extundo.com>
36331
36332         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
36333         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
36334
36335 2005-10-22  Simon Josefsson  <jas@extundo.com>
36336
36337         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
36338         suggested by Bruno Haible <bruno@clisp.org>.
36339
36340 2005-10-22  Simon Josefsson  <jas@extundo.com>
36341
36342         * lib/crc.h: Include stddef.h, for size_t.
36343
36344 2005-10-22  Simon Josefsson  <jas@extundo.com>
36345
36346         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
36347         arcfour_context struct (simplify test vector testing in GNU
36348         Shishi).
36349
36350 2005-10-21  Simon Josefsson  <jas@extundo.com>
36351
36352         * modules/des, modules/des-tests: New files.
36353
36354         * modules/gc-des, modules/gc-des-tests: New files.
36355
36356         * tests/test-des.c, tests/test-gc-des.c: New file.
36357
36358 2005-10-21  Simon Josefsson  <jas@extundo.com>
36359
36360         * modules/arctwo, modules/arctwo-tests: New files.
36361
36362         * tests/test-arctwo.c: New file.
36363
36364         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
36365
36366         * tests/test-gc-arctwo.c: New file.
36367
36368 2005-10-21  Simon Josefsson  <jas@extundo.com>
36369
36370         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
36371         Bruno Haible <bruno@clisp.org>.
36372
36373         * m4/gc-des.m4: New file.
36374
36375 2005-10-21  Simon Josefsson  <jas@extundo.com>
36376
36377         * m4/arctwo.m4: New file.
36378
36379         * m4/gc-arctwo.m4: New file.
36380
36381 2005-10-21  Simon Josefsson  <jas@extundo.com>
36382
36383         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
36384         block.
36385
36386 2005-10-21  Simon Josefsson  <jas@extundo.com>
36387
36388         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
36389         <bruno@clisp.org>.
36390
36391         * lib/hmac-sha1.c (hmac_sha1): Likewise.
36392
36393         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
36394         Bruno Haible <bruno@clisp.org>.
36395
36396         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
36397         <bruno@clisp.org>.
36398
36399 2005-10-21  Simon Josefsson  <jas@extundo.com>
36400
36401         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
36402
36403 2005-10-21  Simon Josefsson  <jas@extundo.com>
36404
36405         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
36406
36407 2005-10-21  Simon Josefsson  <jas@extundo.com>
36408
36409         * lib/des.h, lib/des.c: New files.
36410
36411         * lib/gc-gnulib.c: Support DES.c
36412
36413 2005-10-21  Simon Josefsson  <jas@extundo.com>
36414
36415         * lib/arctwo.h, lib/arctwo.c: New files.
36416
36417         * lib/gc-gnulib.c: Support ARCTWO.
36418
36419 2005-10-21  Simon Josefsson  <jas@extundo.com>
36420
36421         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
36422         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
36423
36424 2005-10-21  Simon Josefsson  <jas@extundo.com>
36425
36426         * gnulib-tool (func_import, func_create_testdir): Define automake
36427         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
36428         Makefile.am snippet),
36429         suggested by Bruno Haible <bruno@clisp.org>.
36430
36431         * modules/gc (Makefile.am): Use it.
36432
36433 2005-10-21  Bruno Haible  <bruno@clisp.org>
36434
36435         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
36436         patch.
36437
36438 2005-10-19  Simon Josefsson  <jas@extundo.com>
36439
36440         * tests/test-gc-rijndael.c: New file.
36441
36442         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
36443
36444 2005-10-19  Simon Josefsson  <jas@extundo.com>
36445
36446         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
36447         interface too.
36448
36449 2005-10-19  Simon Josefsson  <jas@extundo.com>
36450
36451         * tests/test-gc-arcfour.c: New file.
36452
36453         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
36454
36455 2005-10-19  Simon Josefsson  <jas@extundo.com>
36456
36457         * modules/gc-md4, modules/gc-md4-tests: New file.
36458
36459         * tests/test-gc-md4.c: New file.
36460
36461 2005-10-19  Simon Josefsson  <jas@extundo.com>
36462
36463         * m4/gc-md4.m4: New file.
36464
36465 2005-10-19  Simon Josefsson  <jas@extundo.com>
36466
36467         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
36468         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
36469         <kasal@ucw.cz>.
36470
36471 2005-10-19  Simon Josefsson  <jas@extundo.com>
36472
36473         * m4/gc-arcfour.m4: New file.
36474
36475         * m4/gc-rijndael.m4: New file.
36476
36477 2005-10-19  Simon Josefsson  <jas@extundo.com>
36478
36479         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
36480
36481 2005-10-19  Simon Josefsson  <jas@extundo.com>
36482
36483         * lib/gc-gnulib.c: Support ARCFOUR.
36484
36485 2005-10-19  Simon Josefsson  <jas@extundo.com>
36486
36487         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
36488         support.
36489
36490         * lib/gc.h: Add ECB enum type.
36491
36492         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
36493
36494 2005-10-18  Simon Josefsson  <jas@extundo.com>
36495
36496         * tests/test-md5.c: New file.
36497
36498         * modules/md5-tests: New file.
36499
36500 2005-10-18  Simon Josefsson  <jas@extundo.com>
36501
36502         * tests/test-md4.c: New file.
36503
36504         * modules/md4, modules/md4-tests: New files.
36505
36506 2005-10-18  Simon Josefsson  <jas@extundo.com>
36507
36508         * m4/md4.m4: New file.
36509
36510 2005-10-18  Simon Josefsson  <jas@extundo.com>
36511
36512         * lib/md4.h, lib/md4.c: New files, based on md5.?.
36513
36514 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
36515
36516         * gnulib-tool (func_create_testdir): Omit the second check whether
36517         BUILT_SOURCES in nonempty.
36518
36519 2005-10-17  Simon Josefsson  <jas@extundo.com>
36520
36521         * tests/test-rijndael.c: New file.
36522
36523 2005-10-17  Simon Josefsson  <jas@extundo.com>
36524
36525         * modules/sha1: Depend on stdint instead of md5.
36526
36527         * modules/md5: Depend on stdint, remove uint32_t.
36528
36529 2005-10-17  Simon Josefsson  <jas@extundo.com>
36530
36531         * modules/gc-sha1-tests: New file.
36532
36533         * tests/test-gc-sha1.c: New file.
36534
36535 2005-10-17  Simon Josefsson  <jas@extundo.com>
36536
36537         * m4/md5.m4: Remove call to uint32_t.m4.
36538
36539 2005-10-17  Simon Josefsson  <jas@extundo.com>
36540
36541         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
36542
36543         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
36544         md5.h.
36545
36546         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
36547
36548         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
36549
36550 2005-10-17  Simon Josefsson  <jas@extundo.com>
36551
36552         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
36553
36554 2005-10-17  Simon Josefsson  <jas@extundo.com>
36555
36556         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
36557
36558 2005-10-17  Simon Josefsson  <jas@extundo.com>
36559
36560         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
36561
36562         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
36563
36564 2005-10-17  Bruno Haible  <bruno@clisp.org>
36565
36566         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
36567         that it can also be used in a test.
36568
36569 2005-10-16  Bruno Haible  <bruno@clisp.org>
36570
36571         * gnulib-tool (func_emit_tests_Makefile_am): Also define
36572         TESTS_ENVIRONMENT, so that individual tests can augment it.
36573
36574         * gnulib-tool (func_create_testdir): Use an intermediate target for
36575         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
36576         macros, like $(ALLOCA_H), which cannot be passed through the command
36577         line.
36578
36579 2005-10-15  Simon Josefsson  <jas@extundo.com>
36580
36581         * modules/rijndael-tests: New file.
36582
36583         * modules/rijndael: New file.
36584
36585 2005-10-15  Simon Josefsson  <jas@extundo.com>
36586
36587         * m4/rijndael.m4: New file.
36588
36589 2005-10-15  Simon Josefsson  <jas@extundo.com>
36590
36591         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
36592
36593         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
36594
36595 2005-10-14  Simon Josefsson  <jas@extundo.com>
36596
36597         * tests/test-arcfour.c: New file.
36598
36599         * modules/arcfour, modules/arcfour-tests: New files.
36600
36601 2005-10-14  Simon Josefsson  <jas@extundo.com>
36602
36603         * m4/arcfour.m4: New file.
36604
36605 2005-10-14  Simon Josefsson  <jas@extundo.com>
36606
36607         * lib/arcfour.h, lib/arcfour.c: New files.
36608
36609 2005-10-14  Roland McGrath  <roland@redhat.com>
36610
36611         Import from libc.  [BZ #1331]
36612         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
36613         macro argument.
36614         Reported by Matej Vela <vela@debian.org>.
36615
36616 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
36617
36618         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
36619         include <wchar.h>; no longer needed.
36620
36621 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
36622
36623         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
36624
36625 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
36626         and  Ulrich Drepper  <drepper@redhat.com>
36627
36628         Import from libc.
36629         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
36630         instead of inline stream orientation test and two separate
36631         function calls.  Pay no attention to USE_IN_LIBIO.
36632
36633 2005-10-13  Simon Josefsson  <jas@extundo.com>
36634
36635         * modules/gc-hmac-md5-tests: New file.
36636
36637         * tests/test-gc-hmac-sha1.c: New file.
36638
36639         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
36640
36641         * modules/gc-hmac-md5-tests: New file.
36642
36643         * tests/test-gc-md5.c: New file.
36644
36645         * modules/gc-md5-tests: New file.
36646
36647 2005-10-13  Simon Josefsson  <jas@extundo.com>
36648
36649         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
36650         Move memory allocation outside of loop.
36651
36652 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
36653
36654         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
36655         intermediate directory is in a read-only file system.  Problem
36656         reported by Eric Blake.
36657
36658 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
36659
36660         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
36661
36662 2005-10-12  Simon Josefsson  <jas@extundo.com>
36663
36664         * tests/test-hmac-sha1.c: New file.
36665
36666         * modules/hmac-sha1-tests: New file.
36667
36668         * modules/hmac-sha1: New file.
36669
36670 2005-10-12  Simon Josefsson  <jas@extundo.com>
36671
36672         * modules/gc-sha1: New file.
36673
36674 2005-10-12  Simon Josefsson  <jas@extundo.com>
36675
36676         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
36677
36678         * tests/test-gc-pbkdf2-sha1.c: New file.
36679
36680 2005-10-12  Simon Josefsson  <jas@extundo.com>
36681
36682         * modules/gc-md5, modules/gc-hmac-md5: New files.
36683
36684         * modules/gc (Files): Remove md5, memxor and hmac files.
36685
36686 2005-10-12  Simon Josefsson  <jas@extundo.com>
36687
36688         * m4/gc-pbkdf2-sha1.m4: New file.
36689
36690         * m4/gc-hmac-sha1.m4: New file.
36691
36692         * m4/gc-sha1: New file.
36693
36694         * m4/hmac-sha1.m4: New file.
36695
36696 2005-10-12  Simon Josefsson  <jas@extundo.com>
36697
36698         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
36699
36700         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
36701
36702 2005-10-12  Simon Josefsson  <jas@extundo.com>
36703
36704         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
36705         suggested by Bruno Haible <bruno@clisp.org>.
36706
36707 2005-10-12  Simon Josefsson  <jas@extundo.com>
36708
36709         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
36710
36711 2005-10-12  Simon Josefsson  <jas@extundo.com>
36712
36713         * lib/gc-pbkdf2-sha1.c: New file.
36714
36715         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
36716
36717 2005-10-12  Simon Josefsson  <jas@extundo.com>
36718
36719         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
36720
36721         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
36722
36723 2005-10-12  Simon Josefsson  <jas@extundo.com>
36724
36725         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
36726         GC_USE_HMAC_MD5, respectively.
36727
36728         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
36729         (gc_md5): Fix typo.
36730
36731         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
36732
36733         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
36734
36735         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
36736
36737 2005-10-12  Bruno Haible  <bruno@clisp.org>
36738
36739         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
36740         Reported by Stepan Kasal <kasal@ucw.cz>.
36741
36742 2005-10-11  Simon Josefsson  <jas@extundo.com>
36743
36744         * tests/test-crc.c: New file.
36745
36746         * modules/crc, modules/crc-tests: New files.
36747
36748 2005-10-11  Simon Josefsson  <jas@extundo.com>
36749
36750         * m4/crc.m4: New file.
36751
36752 2005-10-11  Simon Josefsson  <jas@extundo.com>
36753
36754         * lib/gc.h: Add gc_hash and gc_hash_buffer.
36755
36756         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
36757
36758         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
36759
36760 2005-10-11  Simon Josefsson  <jas@extundo.com>
36761
36762         * lib/crc.h, lib/crc.c: New files.
36763
36764         * lib/gc.h (gc_hash_buffer): Add doc.
36765
36766 2005-10-11  Bruno Haible  <bruno@clisp.org>
36767
36768         * modules/c-strcasestr: New file.
36769         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
36770
36771 2005-10-11  Bruno Haible  <bruno@clisp.org>
36772
36773         * modules/c-strcase: New file.
36774         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
36775
36776 2005-10-11  Bruno Haible  <bruno@clisp.org>
36777
36778         * lib/strcasecmp.c: Include limits.h.
36779         (strcasecmp): Avoid integer overflow on exotic platforms.
36780         * lib/strncasecmp.c: Include limits.h.
36781         (strncasecmp): Avoid integer overflow on exotic platforms.
36782         Reported by Paul Eggert.
36783
36784 2005-10-11  Bruno Haible  <bruno@clisp.org>
36785
36786         * lib/c-strcasestr.h: New file, from GNU gettext.
36787         * lib/c-strcasestr.c: New file, from GNU gettext.
36788
36789 2005-10-11  Bruno Haible  <bruno@clisp.org>
36790
36791         * lib/c-strcase.h: New file, from GNU gettext.
36792         * lib/c-strcasecmp.c: New file, from GNU gettext.
36793         * lib/c-strncasecmp.c: New file, from GNU gettext.
36794
36795 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
36796
36797         * modules/mempcpy (License): GPL -> LGPL.
36798         * modules/strchrnul (License): Likewise.
36799         * modules/sysexits (License): Likewise.
36800
36801 2005-10-08  Simon Josefsson  <jas@extundo.com>
36802
36803         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
36804
36805 2005-10-07  Simon Josefsson  <jas@extundo.com>
36806
36807         * m4/memxor.m4: Remove gl_C_RESTRICT call.
36808
36809 2005-10-06  Simon Josefsson  <jas@extundo.com>
36810
36811         * tests/test-hmac-md5.c: New file.
36812
36813         * modules/hmac-md5-tests: New file.
36814
36815         * modules/hmac-md5: New file.
36816
36817 2005-10-06  Simon Josefsson  <jas@extundo.com>
36818
36819         * m4/hmac-md5.m4: New file.
36820
36821         * m4/memxor.m4: Require gl_C_RESTRICT.
36822
36823 2005-10-06  Simon Josefsson  <jas@extundo.com>
36824
36825         * lib/memxor.c (memxor): Avoid casts and warnings.
36826
36827 2005-10-06  Simon Josefsson  <jas@extundo.com>
36828
36829         * lib/hmac-md5.c: New file.
36830
36831         * lib/hmac.h: New file.
36832
36833 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
36834
36835         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
36836         promotes to int, not unsigned int, to catch the AIX 5.3
36837         compiler bug.
36838
36839 2005-10-05  Simon Josefsson  <jas@extundo.com>
36840
36841         * modules/memxor: New file.
36842
36843         * modules/iconv (Files): Move config.rpath to havelib, it is used
36844         there.
36845
36846         * modules/havelib (Files): Add config.rpath.
36847
36848 2005-10-05  Simon Josefsson  <jas@extundo.com>
36849
36850         * m4/memxor.m4: New file.
36851
36852 2005-10-05  Simon Josefsson  <jas@extundo.com>
36853
36854         * lib/memxor.c (memxor): Fix compiler error.
36855
36856         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
36857         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
36858
36859         * lib/memxor.h, lib/memxor.c: New files.
36860
36861         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
36862         we assume all systems have it, suggested by Jim Meyering
36863         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
36864         any systems lack sys/socket.h; mingw32 is known to lack it, but we
36865         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
36866         same reasons.
36867
36868 2005-10-05  Simon Josefsson  <jas@extundo.com>
36869
36870         * config/srclist.txt: Add glibc bug 1423 for md5.h.
36871
36872 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
36873
36874         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
36875         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
36876         needed, since the source code now assumes these .h files.
36877
36878 2005-10-05  Derek Price  <derek@ximbiot.com>
36879
36880         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
36881
36882 2005-10-05  Bruno Haible  <bruno@clisp.org>
36883
36884         * modules/stdint (License): Change to LGPL.
36885
36886 2005-10-04  Simon Josefsson  <jas@extundo.com>
36887
36888         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
36889         D. Baushke" <mdb@gnu.org>.
36890
36891 2005-10-04  Bruno Haible  <bruno@clisp.org>
36892
36893         * lib/verify.h (verify_true): Provide alternative definition for C++.
36894
36895 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
36896
36897         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
36898         (SSIZE_MAX): New macro, if not already defined.
36899         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
36900         than 2 GiB.
36901
36902 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
36903
36904         Sync from coreutils.
36905         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
36906         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
36907         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
36908         ULLONG_MAX doesn't work with 2.7.2.1.
36909
36910 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
36911
36912         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
36913         From Ben Pfaff.
36914
36915         * modules/exclude (Depends-on): Depend on verify.
36916         * modules/strtoimax (Depends-on): Likewise.
36917         * modules/utimecmp (Depends-on): Likewise.
36918
36919 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
36920
36921         * lib/exclude.c: Include verify.h.
36922         (verify): Remove.  All callers changed to use verify.h's version.
36923         * lib/strtoimax.c: Likewise.
36924         * lib/utimecmp.c: Likewis.e
36925
36926         Sync from coreutils.
36927         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
36928         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
36929         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
36930         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
36931         bother returning ENOSYS if settimeofday or stime fails; just let
36932         them return whatever errno they want to return.
36933         * lib/utimens.c: Include unistd.h, for dup2.
36934         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
36935         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
36936
36937 2005-10-02  Jim Meyering  <jim@meyering.net>
36938
36939         Sync from coreutils.
36940         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
36941         from glibc-2.2.5 that fails for read-only files.
36942
36943 2005-10-02  Jim Meyering  <jim@meyering.net>
36944
36945         Sync from coreutils.
36946         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
36947         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
36948         `#if HAVE_CONFIG_H'.
36949         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
36950         Remove AT_FDCWD test.
36951         Do not consume the fd unless successful.
36952         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
36953         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
36954         block, so that we don't even try to compile it if settimeofday is
36955         available.  This works around a compilation failure on OSF1 V5.1,
36956         due to stime requiring a `long int*' while tv_sec is `int'.
36957
36958 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
36959
36960         Sync from coreutils.
36961         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
36962         against `yes', rather than just testing for nonempty.
36963
36964 2005-10-01  Simon Josefsson  <jas@extundo.com>
36965
36966         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
36967         and Darwin.
36968
36969         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
36970         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
36971         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
36972         freeaddrinfo and gai_strerror are declared by the POSIX headers.
36973         Check if struct addrinfo is declared.
36974
36975 2005-10-01  Simon Josefsson  <jas@extundo.com>
36976
36977         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
36978         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
36979         AI_* and EAI_* definitions.  Protect function declarations.
36980
36981 2005-10-01  Jim Meyering  <jim@meyering.net>
36982
36983         Sync from coreutils.
36984
36985         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
36986         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
36987         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
36988         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
36989         in the inet and nsl libraries.  Required on Solaris 5.7.
36990
36991 2005-10-01  Jim Meyering  <jim@meyering.net>
36992
36993         Sync from coreutils.
36994         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
36995         in the inet and nsl libraries.  Required on Solaris 5.7.
36996
36997 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
36998
36999         * lib/getdelim.c (getdelim): Remove unused variables.
37000
37001 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
37002
37003         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
37004         so that the code works even with ancient cpp.  Portability problem
37005         with GCC 2.7.2.1 reported by Thomas M.Ott.
37006
37007 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
37008
37009         * modules/regex (Depends-on): Add strcase.
37010
37011         * modules/gethostname (Licence): Change from GPL to LGPL, since
37012         gethostname.c is a trivial implementation of a standard library
37013         function.
37014         * modules/poll (License): Change from GPL to LGPL, since it's
37015         derived from LGPL code.
37016
37017 2005-09-27  Jim Meyering  <jim@meyering.net>
37018
37019         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
37020         HAVE_CONFIG_H.
37021
37022         * lib/intprops.h (signed_type_or_expr__): Define.
37023         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
37024         for unsigned types.
37025
37026 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
37027
37028         * lib/verify.h (verify_expr): Remove, replacing with:
37029         (verify_true): New macro that returns true instead of void.
37030         (verify_type__): Remove.
37031         (verify): Use verify_true rather than verify_type__.
37032
37033 2005-09-26  Bruno Haible  <bruno@clisp.org>
37034
37035         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
37036         is necessary.
37037         (lib_SOURCES): Remove mbchar.c.
37038         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
37039         (Files): Add m4/mbrtowc.m4.
37040         * modules/mbiter: Likewise.
37041         * modules/mbuiter: Likewise.
37042
37043 2005-09-26  Bruno Haible  <bruno@clisp.org>
37044
37045         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
37046         compile mbchar.c if they are not both present.
37047         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
37048         * m4/mbiter.m4 (gl_MBITER): Likewise.
37049         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
37050         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
37051         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
37052
37053 2005-09-25  Jim Meyering  <jim@meyering.net>
37054
37055         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
37056         also uses socklen_t.
37057
37058 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
37059
37060         * lib/utimens.c (ENOSYS): Define if not already defined.
37061         (futimens): Support having a null PATH if the file descriptor
37062         is nonnegative.
37063
37064         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
37065         Remove.
37066         (__attribute): Define to empty unless GCC 3.1 or later.
37067         This works around a core dump on OpenBSD 3.4, which has GCC
37068         2.95.3, which dumps core when given __attribute__(()).  It also
37069         simplifies other tests, since we really don't want to bother with
37070         worrying about which ancient version of GCC supported what.
37071         Original problem reported by Yoann Vandoorselaere, with part of
37072         the fix suggested by Derek Price.
37073
37074 2005-09-24  Jim Meyering  <jim@meyering.net>
37075
37076         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
37077         so we can once again use a positive bitfield width of 1 -- now we
37078         don't have to explain why we were using a bitfield width of 2.
37079
37080 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
37081
37082         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
37083         and similarly for the other external symbols.  Problem reported
37084         by James Gallager.
37085
37086         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
37087         bug reported by Jim Meyering.
37088
37089         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
37090         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
37091         not needed, since socklen is a prerequisite module.
37092
37093 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
37094
37095         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
37096         Problem reported by Eric Blake.
37097         (getaddrinfo): Initialize se so that it's not garbage.
37098         Redo internal storage allocation so that it doesn't make unportable
37099         assumptions about alignment.
37100         Fix a memory leak.
37101
37102         * lib/utimens.c (futimens): Use futimesat if available.
37103         Prefer it to futimes since it doesn't have the futimes bug.
37104
37105         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
37106         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
37107         Instead, declare a function that returns a pointer to an array,
37108         and use verify_type__ to declare the size of the array.
37109         Problem and germ of a solution reported by Bruno Haible.
37110         (verify_type__): Use 2, not 1, for bitfield size, to avoid
37111         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
37112
37113 2005-09-23  Jim Meyering  <jim@meyering.net>
37114
37115         Sync from coreutils.
37116         Correct build failure (socklen_t not defined) on at least
37117         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
37118         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
37119
37120 2005-09-23  Jim Meyering  <jim@meyering.net>
37121
37122         * modules/getaddrinfo (Depends-on): Add socklen.
37123
37124 2005-09-23  Bruno Haible  <bruno@clisp.org>
37125
37126         * tests/test-verify.c: New file.
37127
37128 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
37129
37130         Sync from coreutils.
37131
37132         * modules/argmatch (Depends-on): Add verify.
37133         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
37134         unistd-safer.
37135         * modules/save-cwd (Depends-on): Likewise.
37136
37137         * modules/openat (Files): Add lib/openat-die.c.
37138         (Depends-on): Remove error, exitfail.
37139         Add dirname.
37140
37141         * modules/verify: New file.
37142         * MODULES.html.sh (Diagnostics <assert.h>): New section,
37143         with "verify" module.
37144
37145 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
37146
37147         Sync from coreutils.
37148
37149         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
37150         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
37151         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
37152         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
37153         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
37154         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
37155         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
37156         Don't bother checking for string.h, stdlib.h, unistd.h.
37157         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
37158         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
37159         module's job.
37160         * m4/jm-macros.m4 (gl_MACROS): Likewise.
37161         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
37162
37163         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
37164         (gl_GETDATE): Use it.
37165
37166         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
37167
37168 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
37169
37170         Sync from coreutils.
37171
37172         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
37173         stat-time.h.
37174         * lib/argmatch.h: Include verify.h
37175         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
37176         (ARGMATCH_ASSERT): Remove; unused.
37177         * lib/canonicalize.c: Assume STDC_HEADERS.
37178         * lib/exclude.c: Include "strcase.h".
37179         * lib/regex_internal.h [!defined _LIBC]: Likewise.
37180         * lib/getusershell.c: Include stdio--.h rather than stdio.h
37181         and stdio-safer.h.
37182         (getusershell): Call fopen, not fopen_safer.
37183         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
37184         Do not include unistd-safer.h.
37185         (save_cwd): Don't call fd_safer; no longer needed
37186         now that we include fcntl--.h.
37187
37188         * lib/getdate.y (relative_time): New type.
37189         (RELATIVE_TIME_0): New constant.
37190         (parser_control): Use relative_time instead of doing it ourselves.
37191         (%union): Add new relative_time rel member.
37192         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
37193         Now typeless.
37194         (relunit, relunit_snumber): Now of type rel.
37195         (zone, rel, relunit, get_date): Adjust to above changes.
37196
37197         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
37198         Do not include unistd-safer.h.
37199         (getloadavg): Don't call fd_safer; no longer needed
37200         now that we include fcntl--.h.
37201
37202         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
37203         (make_dir_parents): Treat ENOSYS like EEXIST.
37204
37205         Improve quality of diagnostics on restore_cwd failure.
37206         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
37207         (make_dir_parents): Last arg is now int * (for errno), not bool *.
37208         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
37209         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
37210         each time through the loop.  Do not diagnose restore_cwd failure;
37211         that is the caller's job (and perhaps the caller does not care).
37212
37213         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
37214         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
37215         If the file already exists but is not a directory, don't bother
37216         to try to make its parents.
37217         Close potential file descriptor leak if we can't chdir("/") (!).
37218         Don't always return true if chdir($PWD) fails; return true only
37219         if the requested action was done successfully (except for the
37220         chdir($PWD)).
37221         Don't log final directory unless we actually made it.
37222         Refactor to avoid duplicate code to fix up permissions.
37223         Don't attempt to fix up parent permissions if chdir($PWD) fails.
37224
37225         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
37226         to make it a bit faster and (I hope) clearer.
37227         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
37228         Fix bug in formats like %2N.
37229
37230         * lib/verify.h: New file.
37231
37232 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
37233
37234         Sync from coreutils.
37235         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
37236
37237 2005-09-22  Jim Meyering  <jim@meyering.net>
37238
37239         Sync from coreutils.
37240
37241         * m4/lstat.m4 (gl_FUNC_LSTAT):
37242         Use AC_LIBSOURCES to require lstat.c and lstat.h.
37243         Remove obsolete comment.
37244         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
37245         * m4/xstrtod.m4: Likewise.
37246
37247         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
37248
37249 2005-09-22  Jim Meyering  <jim@meyering.net>
37250
37251         Sync from coreutils.
37252
37253         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
37254
37255         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
37256         the .tm_year member, since otherwise gcc-4.0 would now warn about
37257         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
37258
37259         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
37260         order to avoid an unsuppressible warning from gcc on 64-bit systems.
37261
37262         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
37263         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
37264         when run in a time zone for which daylight savings time is in effect
37265         for the starting date.
37266
37267         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
37268         stop us from restricting permissions of just-created absolute-named
37269         directories.
37270         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
37271         to restore initial working directory.
37272         * lib/mkdir-p.c (make_dir_parents): New parameter:
37273         different_working_dir, to tell caller if/when we change the working
37274         directory and are unable to return to the initial one.
37275         * lib/mkdir-p.h (make_dir_parents): Update prototype.
37276         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
37277         `return false'.  This fixes a bug introduced on 2004-07-30.
37278
37279         * lib/openat.c (fdopendir): Be sure to close the supplied
37280         file descriptor before returning.  This makes our replacement
37281         implementation a little closer to Solaris's, where fdopendir
37282         ties the file descriptor to the returned DIR* pointer.
37283         * lib/openat.c (unlinkat): New function.
37284         * lib/openat.h (unlinkat): Add prototype.
37285         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
37286         (openat_restore_fail): Rename from openat_restore_die.
37287         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
37288
37289         Provide an alternative to exiting immediately upon save_cwd or
37290         restore_cwd failure.  Now, an application can arrange e.g.,
37291         to perform a longjump in that case.
37292         * lib/openat.c: Include dirname.h.
37293         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
37294         (rpl_openat, fdopendir, fstatat): Call openat_save_die
37295         and openat_restore_die rather than calling error directly.
37296         Don't include "error.h" or "exitfail.h"; they're no longer needed.
37297
37298         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
37299         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
37300         define.
37301
37302         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
37303         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
37304                             int utc, int nanoseconds);
37305         Background:
37306         date should not have to allocate a megabyte of virtual memory to
37307         handle a format argument like +%1048575T.  When implemented with
37308         strftime, it must allocate such a buffer, use strftime to fill it
37309         in, print it, then free it.
37310         With fprintftime, it simply prints everything and exits.
37311         With no need for memory allocation, that's one fewer way to fail.
37312         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
37313         optional field width, not before, so we accept %9:z, not %:9z.
37314         (my_strftime): Be sure to use L_('x') for literals.
37315
37316         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
37317         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
37318         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
37319         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
37320         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
37321         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
37322         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
37323         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
37324         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
37325         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
37326         * lib/xgethostname.c, lib/xreadlink.c:
37327         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
37328
37329         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
37330         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
37331         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
37332         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
37333         and don't include <sys/file.h>).
37334
37335 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
37336
37337         Sync from coreutils.
37338
37339         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
37340         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
37341         [!LDAV_DONE]: Avoid unused variable warning.
37342
37343 2005-09-21  Bruno Haible  <bruno@clisp.org>
37344
37345         * lib/unicodeio.h (unicode_to_mb): New declaration.
37346
37347 2005-09-20  Derek Price  <derek@ximbiot.com>
37348
37349         * lib/getaddrinfo.c: Don't include <netdb.h> included from
37350         getaddrinfo.h.
37351
37352 2005-09-20  Bruno Haible  <bruno@clisp.org>
37353
37354         * gnulib-tool: Remove trailing slashes from the values specified for
37355         --source-base, --m4-base, --tests-base, --aux-dir.
37356         Suggested by Simon Josefsson <jas@extundo.com>.
37357
37358 2005-09-20  Bruno Haible  <bruno@clisp.org>
37359
37360         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
37361         func_modules_to_filelist, func_import, func_create_testdir): Make all
37362         sorting results locale-independent, so that gnulib-cache.m4 doesn't
37363         change when gnulib-tool is invoked in a different locale.
37364
37365 2005-09-19  Simon Josefsson  <jas@extundo.com>
37366
37367         * m4/socklen.m4: Fix typo.
37368
37369 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
37370
37371         Use a consistent style for including <config.h>.
37372         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
37373         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
37374         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
37375         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
37376         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
37377         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
37378         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
37379         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
37380         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
37381         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
37382         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
37383         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
37384         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
37385         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
37386         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
37387         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
37388         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
37389         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
37390         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
37391         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
37392         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
37393         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
37394         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
37395         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
37396         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
37397         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
37398         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
37399         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
37400         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
37401         lib/xstrtoumax.c, lib/yesno.c:
37402         Standardize inclusion of config.h.
37403         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
37404         lib/inttostr.h:  Removed inclusion of config.h from header files.
37405         * lib/inttostr.c:  Adjusted in-tree users.
37406         * lib/timespec.h: Remove superfluous warning to include config.h.
37407         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
37408         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
37409         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
37410         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
37411         config.h with HAVE_CONFIG_H.
37412
37413 2005-09-19  Jim Meyering  <jim@meyering.net>
37414
37415         * modules/pathmax (License): Change to LGPL.
37416
37417 2005-09-19  Derek Price  <derek@ximbiot.com>
37418
37419         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
37420
37421 2005-09-19  Bruno Haible  <bruno@clisp.org>
37422
37423         * gnulib-tool (import): Provide default for --tests-base.
37424
37425 2005-09-19  Bruno Haible  <bruno@clisp.org>
37426
37427         * doc/quote.texi: New file, extracted from gnulib.texi.
37428         * doc/ctime.texi: New file, extracted from gnulib.texi.
37429         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
37430         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
37431         * doc/gnulib.texi: Include them.
37432
37433 2005-09-18  Bruno Haible  <bruno@clisp.org>
37434
37435         Portability fix.
37436         * gnulib-tool (func_readlink): New function.
37437         (func_ln_if_changed): Use it.
37438
37439 2005-09-18  Bruno Haible  <bruno@clisp.org>
37440
37441         * gnulib-tool: Support --with-tests also with --import.
37442         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
37443         (func_import): Use variables $testsbase and $inctests. Emit a
37444         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
37445         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
37446         SUBDIRS += $testsdir.
37447         (func_create_testdir): Update.
37448
37449 2005-09-18  Bruno Haible  <bruno@clisp.org>
37450
37451         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
37452         instead of $dry_run.
37453         (func_cp_if_changed, func_mv_if_changed): Remove functions.
37454         (func_ln_if_changed): Don't handle dry-run here.
37455         (func_import): In dry-run mode, detect more precisely which actions
37456         would be performed, and don't use "...ing" verbs.
37457
37458 2005-09-18  Bruno Haible  <bruno@clisp.org>
37459
37460         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
37461         (func_import): Use join on two temporary files instead of three nested
37462         loops, in order to determine which files are new or old.
37463
37464 2005-09-18  Bruno Haible  <bruno@clisp.org>
37465
37466         * gnulib-tool (func_import): Comment out code that spits out the
37467         new files with --dry-run.
37468
37469 2005-09-18  Bruno Haible  <bruno@clisp.org>
37470
37471         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
37472
37473 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
37474
37475         * lib/stat-time.h: New file.
37476         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
37477         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
37478         in a different way.
37479         (timespec_cmp): New function.
37480         * lib/utimecmp.c: Include stat-time.h.
37481         (SYSCALL_RESOLUTION): Depend on whether various struct stat
37482         members exist, not on the obsolescent ST_MTIM_NSEC.
37483         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
37484
37485 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
37486
37487         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
37488
37489 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
37490
37491         * MODULES.html.sh (File system functions): Add stat-time.
37492         * modules/stat-time: New file.
37493         * modules/timespec (Files): Remove m4/st_mtim.m4; this
37494         is now done in a different way, by the stat-time module.
37495         * modules/utimecmp (Depends-on): Add stat-time.
37496
37497 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
37498
37499         * m4/st_mtim.m4: Remove.  Superseded by...
37500         * m4/stat-time.m4: New file.
37501         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
37502         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
37503
37504 2005-09-15  Derek Price  <derek@ximbiot.com>
37505
37506         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
37507
37508 2005-09-15  Derek Price  <derek@ximbiot.com>
37509
37510         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
37511         * lib/regex_internal.c: Ditto, using this...
37512         (__GNUC_PREREQ): ...new macro.
37513         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
37514         using...
37515         (__GNUC_PREREQ): ...this new macro.
37516
37517         * lib/strstr.h: Include string.h. Define strstr as a macro here.
37518
37519 2005-09-15  Derek Price  <derek@ximbiot.com>
37520             Paul Eggert  <eggert@cs.ucla.edu>
37521
37522         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
37523         changes, consolidating in...
37524         * lib/regex_internal.h: ...this file.
37525
37526 2005-09-13  Jim Meyering  <jim@meyering.net>
37527
37528         * lib/canon-host.c: Filter through gnu indent and reword comments
37529         slightly.
37530         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
37531
37532 2005-09-13  Derek Price  <derek@ximbiot.com>
37533
37534         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
37535         failure.
37536         Reported by Jim Meyering  <jim@meyering.net>.
37537
37538 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
37539
37540         * lib/base64.c: Typo.
37541         (base64_encode): Put b64str in initialized data section.
37542
37543 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
37544
37545         Merge glibc and coreutils changes into gnulib, plus a few
37546         extra fixes.
37547         * lib/md5.c: Use #error rather than a string.
37548         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
37549         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
37550         (__attribute__): Define to empty for non recent-GCC.
37551         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
37552         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
37553         Renamed from their non-__ counterparts, with new macros replacing
37554         them if not _LIBC.  Add __THROW attribute.
37555         (rol): Remove.
37556         (struct md5_ctx): Align buffer if using GCC.
37557         * lib/sha1.h (struct sha1_ctx): Likewise.
37558         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
37559         The old name was backwards.
37560         (NOTSWAP): Remove; not used.
37561         (rol): New macro, moved here from md5.h.
37562         (sha1_process_block): Remove a FIXME that doesn't make sense.
37563
37564 2005-09-12  Derek Price  <derek@ximbiot.com>
37565
37566         Return usable errors from canon-host.
37567         * lib/canon-host.h: New file.
37568         * lib/canon-host.c (canon_host): Wrap...
37569         (canon_host_r): ...this new function, which now relies exclusively on
37570         getaddrinfo.
37571         (ch_strerror): New function.
37572         (last_cherror): New global.
37573         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
37574         interface.
37575         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
37576         void *.
37577         (freeaddrinfo): Free ai->ai_canonname when set.
37578
37579 2005-09-12  Derek Price  <derek@ximbiot.com>
37580
37581         Make canon-host require getaddrinfo.
37582         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
37583         AC_LIBSOURCE canon-host.h.  Call...
37584         (gl_PREREQ_CANON_HOST): ...this new function, which requires
37585         gl_GETADDRINFO.
37586         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
37587
37588 2005-09-12  Derek Price  <derek@ximbiot.com>
37589
37590         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
37591         LGPL.
37592         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
37593
37594 2005-09-12  Derek Price  <derek@ximbiot.com>
37595
37596         * lib/gai_strerror.c: Include config.h when available.  Include
37597         getaddrinfo.h before other headers to test interface.
37598         Reported by Larry Jones <lawrence.jones@ugs.com>.
37599
37600 2005-09-12  Derek Price  <derek@ximbiot.com>
37601             Paul Eggert  <eggert@cs.ucla.edu>
37602
37603         * modules/glob (Files): Add glob-libc.h.
37604
37605 2005-09-12  Derek Price  <derek@ximbiot.com>
37606             Paul Eggert  <eggert@cs.ucla.edu>
37607
37608         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
37609         glob_.h, glob-libc.h.
37610         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
37611
37612 2005-09-12  Derek Price  <derek@ximbiot.com>
37613             Paul Eggert  <eggert@cs.ucla.edu>
37614
37615         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
37616         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
37617         protecting things that should be done only in gnulib contexts.
37618         * lib/glob_.h: New file, containing only the glob things needed for
37619         gnulib.
37620         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
37621         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
37622         (glob, globfree, glob_pattern_p): Now defined simply in terms of
37623         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
37624         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
37625         and to respect the namespace rules better.
37626
37627 2005-09-08  Simon Josefsson  <jas@extundo.com>
37628
37629         * modules/socklen: New file.
37630
37631 2005-09-08  Simon Josefsson  <jas@extundo.com>
37632
37633         * m4/socklen.m4: New file.
37634
37635 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
37636
37637         * modules/utimens (Files): Add m4/utimbuf.m4, since
37638         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
37639         Reported by Sergey Poznyakoff.
37640
37641 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
37642
37643         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
37644         definitions, since that's the preferred style in glibc.
37645         Fix a minor spacing issue, and update copyright notice to match
37646         glibc's.
37647
37648 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
37649
37650         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
37651
37652 2005-09-06  Simon Josefsson  <jas@extundo.com>
37653
37654         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
37655         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
37656
37657 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
37658
37659         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
37660         warning.
37661
37662 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
37663
37664         * config/srclist.txt: Add glibc bug 1302.
37665
37666 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
37667
37668         Change bitset word type from unsigned int to unsigned long int,
37669         as this has better performance on typical 64-bit hosts.
37670         Port bitset code to hosts with unusual word sizes.
37671         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
37672         (build_collating_symbol):
37673         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
37674         argument is a bitset.  This is merely a style issue, but it makes
37675         it clearer that an entire array is expected.
37676         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
37677         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
37678         Port to the case where bitset_word is not the same as unsigned int.
37679         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
37680         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
37681         Likewise.
37682         * lib/regexec.c (check_dst_limits_calc_pos_1,
37683         check_subexp_matching_top):
37684         (build_trtable, group_nodes_into_DFAstates):
37685         Likewise.
37686         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
37687         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
37688         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
37689         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
37690         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
37691         * lib/regcomp.c (optimize_subexps, lower_subexp):
37692         Work even if bitset_word has holes in its bitwise representation.
37693         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
37694         * lib/regexec.c (check_dst_limits_calc_pos_1,
37695         check_subexp_matching_top):
37696         Likewise.
37697         * lib/regex_internal.c (re_string_reconstruct):
37698         Don't assume UCHAR_MAX == 255.
37699         * lib/regex_internal.h (bitset_set_all): Likewise.
37700         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
37701         All uses changed.
37702         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
37703         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
37704         All uses changed.
37705         (BITSET_WORD_MAX): New macro.
37706         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
37707         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
37708         (bitset_empty, bitset_copy):
37709         Prefer sizeof (bitset) to multiplying it out ourselves.
37710         (bitset_not_merge): Remove; unused.
37711         (bitset_contain): Return bool, not unsigned int with one bit on.
37712         All callers changed.
37713         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
37714         alignment than re_node_set; do this by defining a new internal
37715         type struct dests_alloc and using it to allocate memory.
37716
37717 2005-09-05  Bruno Haible  <bruno@clisp.org>
37718
37719         * gnulib-tool (func_import): Fix comparison in handling of symbolic
37720         links.
37721
37722 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
37723
37724         * modules/size_max (Makefile.am): Add size_max.h
37725
37726 2005-09-04  Derek Price  <derek@ximbiot.com>
37727
37728         * gnulib-tool (func_import): Fix reversed $symbolic logic.
37729
37730 2005-09-03  Simon Josefsson  <jas@extundo.com>
37731
37732         * gnulib-tool: Fix typo.
37733
37734 2005-09-03  Simon Josefsson  <jas@extundo.com>
37735
37736         * config/srclist.txt: Add glibc bug 1293.
37737
37738 2005-09-03  Derek Price  <derek@ximbiot.com>
37739
37740         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
37741         From Larry Jones <lawrence.jones@ugs.com>.
37742
37743 2005-09-02  Simon Josefsson  <jas@extundo.com>
37744
37745         * modules/socklen: New file.
37746
37747 2005-09-02  Simon Josefsson  <jas@extundo.com>
37748
37749         * modules/havelib: New module.
37750
37751         * modules/gettext, modules/iconv, modules/lock, modules/readline:
37752         Use havelib.
37753
37754 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
37755
37756         Check for arithmetic overflow when calculating sizes, to prevent
37757         some buffer-overflow issues.  These patches are conservative, in the
37758         sense that when I couldn't determine whether an overflow was possible,
37759         I inserted a run-time check.
37760         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
37761         macros.
37762         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
37763         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
37764         (re_xnrealloc, re_x2nrealloc): New inline functions.
37765         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
37766         parse_bracket_exp):
37767         (build_equiv_class, build_charclass): Check for arithmetic overflow
37768         in size expression calculations.
37769         * lib/regex_internal.c (re_string_realloc_buffers):
37770         (build_wcs_upper_buffer, re_node_set_add_intersect):
37771         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
37772         (re_dfa_add_node, register_state): Likewise.
37773         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
37774         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
37775         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
37776         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
37777
37778 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
37779
37780         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
37781         m4/ulonglong.m4.  Problem reported by Martin Lambers.
37782
37783 2005-09-02  Bruno Haible  <bruno@clisp.org>
37784
37785         Support for lib vs. lib64 distinction on biarch platforms.
37786         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
37787         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
37788         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
37789
37790 2005-09-02  Bruno Haible  <bruno@clisp.org>
37791
37792         * gnulib-tool (import): In the other first-use case, provide defaults
37793         as well.
37794
37795 2005-09-02  Bruno Haible  <bruno@clisp.org>
37796
37797         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
37798         patches not yet found in the latest gettext release.
37799
37800 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
37801
37802         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
37803         to avoid a collision with bits/local_lim.h in glibc.
37804         All uses changed.  Problem reported by Dmitry V. Levin in
37805         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
37806
37807         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
37808         bugs in int versus size_t comparisons.
37809         (re_string_context_at): Fix bug where the code assumed that
37810         Idx is signed.
37811
37812         Use bool where appropriate.
37813         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
37814         All callers changed.
37815         (calc_eclosure_iter): Likewise, for ROOT arg.
37816         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
37817         (build_charclass_op): Likewise, for NON_MATCH arg.
37818         * lib/regex_internal.c (re_string_allocate, re_string_construct):
37819         (re_string_construct_common): Likewise, for ICASE arg.
37820         * lib/regexec.c (re_search_2_stub, re_search_stub):
37821         Likewise, for RET_LEN arg.
37822         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
37823         (set_regs): Likewise, for FL_BACKTRACK arg.
37824         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
37825         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
37826         (calc_eclosure_iter, parse_bracket_exp):
37827         Use bool for internal variables that are booleans.
37828         * lib/regexec.c (re_search_internal, check_matching,
37829         proceed_next_node):
37830         (set_regs, build_sifted_states, sift_states_bkref):
37831         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
37832         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
37833         (find_collation_sequence_value):
37834         Likewise.
37835         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
37836         (re_node_set_compare):
37837         Return bool, not int. All callers changed.
37838         * lib/regexec.c (check_halt_node_context, check_dst_limits):
37839         (build_trtable, check_node_accept): Likewise.
37840         * lib/regex_internal.h: Include stdbool.h.
37841
37842         Fix bugs uncovered when converting to bool.
37843         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
37844         failure instead of charging ahead blindly.
37845         * lib/regex_internal.c (register_state): Likewise.
37846         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
37847         for freeing internal storage.
37848         (group_nodes_into_DFA_states): Use unsigned int, not int, for
37849         bitset pieces used as boolean, to avoid undefined behavior
37850         on hosts that do int overflow checking.
37851
37852 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
37853
37854         * config/srclist.txt: Add glibc bugs 1285-1287.
37855
37856 2005-09-01  Jim Meyering  <jim@meyering.net>
37857
37858         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
37859         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
37860         Require gl_STAT_MACROS, too.
37861
37862 2005-09-01  Bruno Haible  <bruno@clisp.org>
37863
37864         * gnulib-tool (import): In the first-use case, provide defaults.
37865
37866 2005-09-01  Bruno Haible  <bruno@clisp.org>
37867
37868         * gnulib-tool (func_import): Remove the .tmp files.
37869
37870 2005-09-01  Bruno Haible  <bruno@clisp.org>
37871
37872         * gnulib-tool (func_import): Fix handling of symbolic links.
37873
37874 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
37875
37876         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
37877         old glibc regex code mishandles strings longer than 2**31 bytes.
37878         This patch fixes this when the regex code is used in gnulib
37879         (i.e., outside glibc).
37880
37881         This patch should not affect the use of the regex code inside
37882         glibc.  No doubt this problem also needs to be handled for glibc
37883         as well, but the result will be an incompatible change to the
37884         glibc ABI, and the old ABI will have to be supported too.  That
37885         can be the the subject for another patch.
37886
37887         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
37888         governing whether the rest of this patch is active.  By default,
37889         the macro is disabled and the patch has no effect.
37890         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
37891         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
37892         (struct re_pattern_buffer, re_search, re_search_2, re_match):
37893         (re_match_2, re_set_registers): Use the new types.
37894         * lib/regex_internal.h (Idx, re_hashval_t): New types.
37895         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
37896         New macros.
37897         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
37898         (re_string_context_at, bin_tree_t, re_dfastate_t):
37899         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
37900         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
37901         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
37902         (re_string_char_size_at, re_string_wchar_at):
37903         (re_string_elem_size_at):
37904         Use the new types and macros to port to 64-bit hosts.
37905         Use unsigned types for internal values, so that the code
37906         mostly works even for arrays larger than SSIZE_MAX.
37907         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
37908         (search_duplicated_node, calc_eclosure_iter, fetch_number):
37909         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
37910         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
37911         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
37912         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
37913         (calc_inveclosure, parse_dup_op, build_range_exp):
37914         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
37915         (fetch_number, create_token_tree, mark_opt_subexp):
37916         Likewise.
37917         * lib/regex_internal.c (re_string_construct_common,
37918         create_ci_newstate):
37919         (create_cd_newstate, re_string_allocate, re_string_construct):
37920         (re_string_realloc_buffers, build_wcs_upper_buffer):
37921         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
37922         (re_string_reconstruct, re_string_peek_byte_case):
37923         (re_string_fetch_byte_case, re_string_context_at):
37924         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
37925         (re_node_set_init_copy, re_node_set_add_intersect):
37926         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
37927         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
37928         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
37929         (re_acquire_state, re_acquire_state_context, register_state):
37930         Likewise.
37931         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
37932         search_cur_bkref_entry):
37933         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
37934         (re_search_internal, re_search_2_stub, re_search_stub)
37935         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
37936         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
37937         (update_cur_sifted_state, check_dst_limits):
37938         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
37939         (check_subexp_limits, sift_states_bkref, merge_state_array):
37940         (check_subexp_matching_top, get_subexp, get_subexp_sub):
37941         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
37942         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
37943         (expand_bkref_cache, check_node_accept_bytes):
37944         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
37945         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
37946         (acquire_init_state_context, check_halt_node_context):
37947         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
37948         (sift_states_backward, clean_state_log_if_needed):
37949         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
37950         (find_recover_state, transit_state_sb, transit_state_mb):
37951         (transit_state_bkref, build_trtable, match_ctx_clean):
37952         Likewise.
37953         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
37954         to work around an assumption that REG_MISSING is negative.
37955
37956         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
37957         (seek_collating_symbol_entry) [defined _LIBC]:
37958         (lookup_collation_sequence_value) [defined _LIBC]:
37959         (build_range_exp, build_collating_symbol) [defined _LIBC]:
37960         Use prototypes rather than old-style function definitions.
37961         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
37962         (transit_state_sb) [0]:
37963         (find_collation_sequence_value) [defined _LIBC]: Likewise.
37964
37965         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
37966         rm_eo.
37967
37968         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
37969         (optimize_subexps, lower_subexp):
37970         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
37971         since the signed shift might overflow.  Use 1u<<31 instead.
37972         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
37973         Likewise.
37974         * lib/regexec.c (check_dst_limits_calc_pos_1,
37975         check_subexp_matching_top): Likewise.
37976
37977         * lib/regcomp.c (optimize_subexps, lower_subexp):
37978         Use CHAR_BIT rather than 8, for clarity.
37979         * lib/regexec.c (check_dst_limits_calc_pos_1):
37980         (check_subexp_matching_top): Likewise.
37981         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
37982         have to worry about portability issues when shifting it left.
37983         Remove no-longer-needed test for table_size > 0.
37984         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
37985         in a word, as the resulting behavior is undefined.
37986         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
37987         in one case, a <= should have been an <, and in another case the
37988         whole test was missing.
37989         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
37990         the standard name CHAR_BIT.
37991         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
37992         this is not true on one's complement and signed-magnitude hosts.
37993
37994         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
37995         next_last_offset.
37996         (struct re_dfa_t): Remove unused member states_alloc.
37997         * lib/regcomp.c (init_dfa): Don't initialize unused members.
37998
37999 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
38000
38001         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
38002         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
38003         and large-file glibc and in 32-bit large-file Solaris.
38004
38005 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
38006
38007         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
38008         lengths fit in regoff_t; this isn't true if regoff_t is the same
38009         width as size_t.
38010         * lib/regex.c (re_search_internal): 5th arg is LAST_START
38011         (= START + RANGE) instead of RANGE.  This avoids overflow
38012         problems when regoff_t is the same width as size_t.
38013         All callers changed.
38014         (re_search_2_stub): Check for overflow when adding the
38015         sizes of the two strings.
38016         (re_search_stub): Check for overflow when adding START
38017         to RANGE; if it occurs, substitute the extreme value.
38018
38019 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
38020
38021         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
38022
38023 2005-08-31  Jim Meyering  <jim@meyering.net>
38024
38025         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
38026         a pointer-to-const.
38027         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
38028         (register_state): Likewise.
38029         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
38030         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
38031         (group_nodes_into_DFAstates): Likewise.
38032
38033 2005-08-31  Jim Meyering  <jim@meyering.net>
38034
38035         * check-module: Add a FIXME comment.
38036
38037 2005-08-31  Eric Blake  <ebb9@byu.net>
38038
38039         * modules/unistd-safer (Files): Add unistd--.h.
38040         * modules/stdio-safer (Files): Add stdio--.h.
38041
38042 2005-08-31  Derek Price  <derek@ximbiot.com>
38043
38044         * lib/getdelim.c (getdelim): Return EOF on EOF.
38045         Reported by Larry Jones <lawrence.jones@ugs.com>.
38046
38047 2005-08-31  Bruno Haible  <bruno@clisp.org>
38048
38049         Avoid unnecessary diffs in the generated lib/Makefile.am.
38050         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
38051         the generated files.
38052         (func_import): Don't set cmd.
38053
38054 2005-08-31  Bruno Haible  <bruno@clisp.org>
38055
38056         * lib/strstr.c: Include <stddef.h>, for NULL.
38057         * lib/strcasestr.c: Likewise.
38058         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
38059
38060 2005-08-31  Bruno Haible  <bruno@clisp.org>
38061
38062         * gnulib-tool: New option --macro-prefix.
38063         (func_import): Use macro_prefix.
38064         (import): Handle option --macro-prefix.
38065
38066 2005-08-31  Bruno Haible  <bruno@clisp.org>
38067
38068         * gnulib-tool (import): Rename most ac_* variables to cached_*.
38069         Also use new variables cached_lgpl, cached_libtool.
38070
38071 2005-08-31  Bruno Haible  <bruno@clisp.org>
38072
38073         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
38074         always instantiating them.
38075
38076 2005-08-31  Bruno Haible  <bruno@clisp.org>
38077
38078         * gnulib-tool (func_import): Read the previous cached settings
38079         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
38080         earlier added by gnulib but are now dropped. Warn when a gnulib file
38081         overwrites a non-gnulib file.
38082
38083 2005-08-31  Bruno Haible  <bruno@clisp.org>
38084
38085         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
38086         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
38087         projects that don't keep autogenerated files in CVS. Put into
38088         actioncmd only the specified modules, not the transitive closure.
38089
38090 2005-08-31  Bruno Haible  <bruno@clisp.org>
38091
38092         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
38093         Create directories that shall be filled.
38094         (import): Don't look for gl_* macros in configure.ac. Recurse across
38095         all directories containing a gnulib-cache.m4 files, if meaningful.
38096
38097 2005-08-31  Bruno Haible  <bruno@clisp.org>
38098
38099         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
38100         (import): Set seen_libtool when we see gl_LIBTOOL.
38101
38102 2005-08-31  Bruno Haible  <bruno@clisp.org>
38103
38104         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
38105         declaration macro definitions from generated gnulib.m4.
38106
38107 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
38108
38109         * lib/iconvme.h: Add prototype for iconv_alloc.
38110
38111 2005-08-29  Simon Josefsson  <jas@extundo.com>
38112
38113         * lib/iconvme.c: Fix errno.
38114
38115 2005-08-29  Bruno Haible  <bruno@clisp.org>
38116
38117         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
38118         that it works when the directory contains spaces.
38119
38120 2005-08-29  Bruno Haible  <bruno@clisp.org>
38121
38122         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
38123
38124 2005-08-29  Bruno Haible  <bruno@clisp.org>
38125
38126         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
38127         Emit more advice.
38128
38129 2005-08-29  Bruno Haible  <bruno@clisp.org>
38130         and Stepan Kasal  <kasal@ucw.cz>
38131
38132         * check-module: If more parameters are given, check each of them
38133         separately; add more exceptions, as noted by Jim Meyering.
38134         (check_module): New procedure.
38135         (%exempt_header): Now contains all exceptions.
38136
38137 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
38138
38139         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
38140
38141 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
38142
38143         * lib/iconvme.c: Split iconv_string into iconv_alloc.
38144
38145 2005-08-28  Bruno Haible  <bruno@clisp.org>
38146
38147         * m4/gnulib-tool.m4: New file.
38148
38149 2005-08-27  Jim Meyering  <jim@meyering.net>
38150
38151         * modules/unistd-safer (Files): Add pipe-safer.c.
38152         * modules/fcntl-safer (Files): Add creat-safer.c.
38153
38154 2005-08-27  Jim Meyering  <jim@meyering.net>
38155
38156         * m4/stdlib-safer.m4: New file.  From coreutils.
38157         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
38158         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
38159         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
38160         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
38161         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
38162
38163 2005-08-27  Jim Meyering  <jim@meyering.net>
38164
38165         * lib/fopen-safer.c: Merge minor changes from coreutils.
38166         * lib/dup-safer.c: Likewise.
38167         * lib/fd-safer.c: Likewise.
38168
38169         Merge from coreutils.
38170         * lib/stdio--.h: New file.
38171         * lib/stdlib--.h: New file.
38172         * lib/mkstemp-safer.c: New file.
38173
38174         GNU tar needs these.
38175         * lib/pipe-safer.c: New file.
38176         * lib/creat-safer.c: New file.
38177         * lib/fcntl--.h (creat): Define to creat_safer.
38178         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
38179         * lib/unistd--.h (pipe): Define to pipe_safer.
38180         * lib/unistd-safer.h: Declare pipe_safer.
38181
38182 2005-08-26  Simon Josefsson  <jas@extundo.com>
38183
38184         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
38185         Haible <bruno@clisp.org>.
38186
38187 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
38188
38189         * lib/regex_internal.h: Remove all references to
38190         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
38191         or better.
38192         (bitset_not, bitset_merge, bitset_not_merge):
38193         (bitset_mask, re_string_allocate, re_string_construct):
38194         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
38195         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
38196         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
38197         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
38198         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
38199         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
38200         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
38201         (re_acquire_state_context):
38202         Remove unnecessary forward decls.
38203         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
38204         Put __attribute at function definition,
38205         now that the function decl has been removed.
38206         * lib/regex_internal.c (re_string_peek_byte_case):
38207         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
38208         Likewise.
38209
38210 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
38211
38212         * m4/regex.m4: Add AC_PREREQ(2.50).
38213         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
38214
38215 2005-08-25  Simon Josefsson  <jas@extundo.com>
38216
38217         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
38218         __fsetlocking.
38219
38220 2005-08-25  Simon Josefsson  <jas@extundo.com>
38221
38222         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
38223         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
38224         GLIBC specific code.
38225
38226 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
38227
38228         Make regex safe for g++.  This fixes one real bug (an "err"
38229         that should have been "*err").  g++ problem reported by
38230         Sam Steingold.
38231         * lib/regex_internal.h (re_calloc): New macro, consistent with
38232         re_malloc etc.  All callers of calloc changed to use re_calloc.
38233         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
38234         not int.  All callers changed.
38235         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
38236         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
38237         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
38238         (find_recover_state): Change "err" to "*err"; this fixes what
38239         appears to be a real bug.
38240         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
38241         versus int.
38242
38243 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
38244
38245         * modules/regex (Depends-on): Add malloc, since the code
38246         assumes that !malloc(0) means failure.
38247
38248 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
38249
38250         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
38251
38252         alloca modernization/simplification for regex.
38253         * lib/regex.c: Remove portability cruft for alloca.  This no longer
38254         needs to be at the start of the file, and can be moved into
38255         regex_internal.h and simplified.
38256         * lib/regex_internal.h: Include <alloca.h>.
38257         (__libc_use_alloca) [!defined _LIBC]: New macro.
38258         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
38259         now works outside glibc.
38260
38261 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
38262
38263         * config/srclist.txt: Add glibc bugs 1241, 1245.
38264
38265 2005-08-25  Jim Meyering  <jim@meyering.net>
38266
38267         * lib/open-safer.c: Include <config.h>.
38268         Otherwise, we'd lose LARGEFILE support in any file using
38269         e.g. "fcntl--.h"
38270
38271 2005-08-25  Bruno Haible  <bruno@clisp.org>
38272
38273         * m4/minmax.m4: Require autoconf 2.52.
38274         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
38275         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
38276         alternatives of translit over the alphabet.
38277         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
38278
38279 2005-08-24  Simon Josefsson  <jas@extundo.com>
38280
38281         * tests/test-getpass.c: New file.
38282
38283 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
38284
38285         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
38286         for GNU regex features.
38287
38288 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
38289
38290         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
38291         * lib/regex.h (regerror): Likewise.
38292
38293         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
38294         requires this.  (The code never needed it.)
38295
38296         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
38297         All uses of recently-renamed identifiers changed to use the new,
38298         POSIX-compliant names.  The code will build and run just fine
38299         without these changes, but it's better to eat our own dog food
38300         and use the standard-conforming names.
38301
38302         * lib/regex.h: Fix a multitude of POSIX name space violations.
38303         These changes have an effect only for programs that define
38304         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
38305         do not change anything for programs compiled in the normal way.
38306         Also, there is no effect on the ABI.
38307
38308         (_REGEX_SOURCE): New macro.
38309         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
38310         defined and _GNU_SOURCE is not; this fixes a name space violation.
38311
38312         Rename the following macros to obey POSIX requirements.
38313         The old names are still visible as macros if _REGEX_SOURCE is defined.
38314         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
38315         RE_BACKSLASH_ESCAPE_IN_LISTS.
38316         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
38317         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
38318         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
38319         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
38320         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
38321         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
38322         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
38323         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
38324         (REG_INTERVALS): renamed from RE_INTERVALS.
38325         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
38326         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
38327         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
38328         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
38329         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
38330         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
38331         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
38332         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
38333         RE_UNMATCHED_RIGHT_PAREN_ORD.
38334         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
38335         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
38336         (REG_DEBUG): renamed from RE_DEBUG.
38337         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
38338         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
38339         unusual, since we can't clash with the POSIX REG_ICASE.
38340         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
38341         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
38342         (REG_NO_SUB): renamed from RE_NO_SUB.
38343         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
38344         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
38345         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
38346         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
38347         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
38348         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
38349         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
38350         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
38351         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
38352         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
38353         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
38354         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
38355         RE_SYNTAX_POSIX_MINIMAL_BASIC.
38356         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
38357         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
38358         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
38359         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
38360         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
38361         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
38362         (REG_FIXED): Renamed from REGS_FIXED.
38363         (REG_NREGS): Renamed from RE_NREGS.
38364
38365         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
38366         of other REG_* macros, since POSIX says the user is allowed to
38367         #undef these macros selectively.
38368
38369         (reg_errcode_t): Update comment stating what other tables need
38370         to be consistent.
38371
38372         Rename the following enum values to obey POSIX requirements.
38373         The old names are still visible as macros.
38374         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
38375         is not defined, since GNU is supposed to be a superset of POSIX as
38376         much as possible, and since we want reg_errcode_t to be a signed
38377         type for implementation consistency.
38378         (_REG_NOERROR): Renamed from REG_NOERROR.
38379         (_REG_NOMATCH): Renamed from REG_NOMATCH.
38380         (_REG_BADPAT): Renamed from REG_BADPAT.
38381         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
38382         (_REG_ECTYPE): Renamed from REG_ECTYPE.
38383         (_REG_EESCAPE): Renamed from REG_EESCAPE.
38384         (_REG_ESUBREG): Renamed from REG_ESUBREG.
38385         (_REG_EBRACK): Renamed from REG_EBRACK.
38386         (_REG_EPAREN): Renamed from REG_EPAREN.
38387         (_REG_EBRACE): Renamed from REG_EBRACE.
38388         (_REG_BADBR): Renamed from REG_BADBR.
38389         (_REG_ERANGE): Renamed from REG_ERANGE.
38390         (_REG_ESPACE): Renamed from REG_ESPACE.
38391         (_REG_BADRPT): Renamed from REG_BADRPT.
38392         (_REG_EEND): Renamed from REG_EEND.
38393         (_REG_ESIZE): Renamed from REG_ESIZE.
38394         (_REG_ERPAREN): Renamed from REG_ERPAREN.
38395         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
38396         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
38397         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
38398         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
38399
38400         (_REG_RE_NAME, _REG_RM_NAME): New macros.
38401         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
38402         changed.  But support the old name if the new one is not defined
38403         and if _REGEX_SOURCE.
38404
38405         Change the following member names in struct re_pattern_buffer.
38406         The old names are still supported if !_REGEX_SOURCE.
38407         The new names are always supported, regardless of _REGEX_SOURCE.
38408         (re_buffer): Renamed from buffer.
38409         (re_allocated): Renamed from allocated.
38410         (re_used): Renamed from used.
38411         (re_syntax): Renamed from syntax.
38412         (re_fastmap): Renamed from fastmap.
38413         (re_translate): Renamed from translate.
38414         (re_can_be_null): Renamed from can_be_null.
38415         (re_regs_allocated): Renamed from regs_allocated.
38416         (re_fastmap_accurate): Renamed from fastmap_accurate.
38417         (re_no_sub): Renamed from no_sub.
38418         (re_not_bol): Renamed from not_bol.
38419         (re_not_eol): Renamed from not_eol.
38420         (re_newline_anchor): Renamed from newline_anchor.
38421
38422         Change the following member names in struct re_registers.
38423         The old names are still supported if !_REGEX_SOURCE.
38424         The new names are always supported, regardless of _REGEX_SOURCE.
38425         (rm_num_regs): Renamed from num_regs.
38426         (rm_start): Renamed from start.
38427         (rm_end): Renamed from end.
38428
38429         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
38430         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
38431         Prepend __ to parameter names.
38432
38433         Undo yesterday's changes.
38434
38435 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
38436
38437         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
38438         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
38439         lib/regex.c.
38440
38441 2005-08-24  Jim Meyering  <jim@meyering.net>
38442
38443         Sync from coreutils.
38444         * m4/fcntl-safer.m4: New file.
38445
38446         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
38447         and object files for this module.
38448
38449 2005-08-24  Jim Meyering  <jim@meyering.net>
38450
38451         Sync from coreutils.
38452         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
38453
38454 2005-08-24  Jim Meyering  <jim@meyering.net>
38455
38456         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
38457         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
38458
38459 2005-08-24  Jim Meyering  <jim@meyering.net>
38460
38461         * modules/fcntl-safer: New module.
38462         * modules/fts (Depends-on): Add fcntl-safer.
38463         * MODULES.html.sh (File descriptor based Input/Output):
38464         Add fcntl-safer.
38465
38466 2005-08-24  Bruno Haible  <bruno@clisp.org>
38467
38468         Support for unit test modules.
38469         * modules/README: Mention tests modules.
38470         * modules/TEMPLATE-TESTS: New file.
38471         * gnulib-tool: New options --extract-tests-module, --with-tests and
38472         --tests-base (unused for the moment).
38473         (testsbase, inctests): New variables.
38474         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
38475         (func_verify_module): Exclude TEMPLATE-TESTS.
38476         (func_verify_nontests_module, func_verify_tests_module): New functions.
38477         (func_get_dependencies): Add implicit dependency for tests modules.
38478         (func_get_tests_module): New function.
38479         (func_modules_transitive_closure): When --with-tests was specified,
38480         include the unit tests as well, unless explicitly avoided.
38481         (func_emit_lib_Makefile_am): Ignore the tests modules here.
38482         (func_emit_tests_Makefile_am): New function.
38483         (func_create_testdir): When --with-tests was specified, emit a
38484         tests/ directory.
38485         * MODULES.html.sh (Future developments): Update.
38486
38487 2005-08-24  Bruno Haible  <bruno@clisp.org>
38488
38489         * modules/tls-tests: New file.
38490         * tests/test-tls.c: New file, from GNU gettext.
38491
38492 2005-08-24  Bruno Haible  <bruno@clisp.org>
38493
38494         * modules/lock-tests: New file.
38495         * tests/test-lock.c: New file, from GNU gettext.
38496
38497 2005-08-24  Bruno Haible  <bruno@clisp.org>
38498
38499         * lib/lock.h: Add multiple inclusion guard.
38500         * lib/tls.h: Add multiple inclusion guard.
38501
38502 2005-08-24  Bruno Haible  <bruno@clisp.org>
38503
38504         * gnulib-tool: Add support for the --aux-dir option to
38505         --create-testdir, --create-megatestdir, --test, --megatest.
38506         (func_create_testdir, func_create_megatestdir): Optionally emit a
38507         AC_CONFIG_AUX_DIR directive.
38508         (create-testdir, create-megatestdir, test, megatest): Provide a
38509         default value for $auxdir.
38510
38511 2005-08-24  Bruno Haible  <bruno@clisp.org>
38512
38513         * gnulib-tool (import): Use compound statement instead of subshell
38514         where possible.
38515
38516 2005-08-24  Bruno Haible  <bruno@clisp.org>
38517
38518         * gnulib-tool (import): Change --aux-dir default to "build-aux".
38519
38520 2005-08-24  Bruno Haible  <bruno@clisp.org>
38521
38522         * gnulib-tool (func_version): Update.
38523
38524 2005-08-24  Bruno Haible  <bruno@clisp.org>
38525
38526         * gnulib-tool (func_import, func_create_testdir,
38527         func_create_megatestdir): Quote all autoconf macro arguments.
38528
38529 2005-08-24  Bruno Haible  <bruno@clisp.org>
38530
38531         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
38532         option --force, because --force causes the aclocal.m4 of each
38533         subdirectory to be newer than the corresponding config.h.in.
38534
38535 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
38536
38537         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
38538         All contents moved to gl_REGEX.
38539         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
38540         assume that it does.
38541
38542 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
38543
38544         * lib/regex.h (REG_NOSYS)
38545         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
38546         Define, since POSIX requires it as of 2001.
38547         (_REG_ENOSYS)
38548         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
38549         New private symbol, used to keep the enum signed in all cases.
38550         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
38551         Youngman in
38552         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
38553
38554         * lib/regex_internal.c (re_string_skip_chars, register_state):
38555         (calc_state_hash):
38556         Remove forward decls; no longer needed now that we use prototypes.
38557         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
38558         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
38559         (clean_state_log_if_needed): Likewise.
38560
38561 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
38562
38563         * config/srclist.txt: Add glibc bugs 1231-1233.
38564
38565 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
38566
38567         Fix problems reported by Sam Steingold in
38568         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
38569         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
38570         assumed that reg_errcode_t is a signed type, which is not
38571         necessarily true if _XOPEN_SOURCE is not defined.
38572         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
38573         since some compilers warn about it otherwise.
38574
38575 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
38576
38577         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
38578         (init_word_char, create_initial_state, duplicate_node_closure):
38579         (fetch_token, peek_token_bracket, build_range_exp):
38580         (build_collating_symbol): Remove forward decls; no longer needed
38581         now that we use prototypes.
38582
38583         * lib/regcomp.c:
38584         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
38585         (re_compile_fastmap_iter, regcomp, regerror, regfree):
38586         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
38587         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
38588         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
38589         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
38590         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
38591         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
38592         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
38593         (build_range_exp, build_collating_symbol, parse_bracket_exp):
38594         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
38595         (build_charclass, build_charclass_op, fetch_number, create_tree):
38596         (create_token_tree, mark_opt_subexp, duplicate_tree):
38597         Use prototypes rather than old-style definitions.
38598
38599         * lib/regex_internal.c:
38600         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
38601         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
38602         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
38603         (re_string_reconstruct, re_string_peek_byte_case):
38604         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
38605         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
38606         (re_node_set_init_copy, re_node_set_add_intersect):
38607         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
38608         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
38609         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
38610         (re_acquire_state, re_acquire_state_context, register_state):
38611         (create_ci_newstate, create_cd_newstate, free_state):
38612         Likewise.
38613         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
38614         re_search_2):
38615         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
38616         (re_search_internal, prune_impossible_nodes):
38617         (acquire_init_state_context, check_matching, static):
38618         (check_halt_node_context, check_halt_state_context, proceed_next_node):
38619         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
38620         (update_regs, sift_states_backward, build_sifted_states):
38621         (clean_state_log_if_needed, merge_state_array):
38622         (update_cur_sifted_state, add_epsilon_src_nodes):
38623         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
38624         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
38625         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
38626         (find_recover_state, check_subexp_matching_top, transit_state_mb):
38627         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
38628         (check_arrival, check_arrival_add_next_nodes):
38629         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
38630         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
38631         (check_node_accept_bytes, check_node_accept, extend_buffers):
38632         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
38633         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
38634         (sift_ctx_init):
38635         Likewise.
38636
38637         * lib/regex_internal.h:
38638         (re_string_allocate, re_string_construct, re_string_reconstruct):
38639         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
38640         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
38641         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
38642         (re_string_context_at, re_string_peek_byte_case):
38643         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
38644         is defined, since we now use prototypes always.
38645
38646         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
38647         C89 or better.  All uses removed.
38648
38649 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
38650
38651         * config/srclist.txt: Add glibc bugs 1220-1227.
38652
38653 2005-08-20  Jim Meyering  <jim@meyering.net>
38654
38655         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
38656         of unused local, dfa.
38657
38658 2005-08-20  Bruno Haible  <bruno@clisp.org>
38659
38660         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
38661
38662 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
38663
38664         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
38665         (re_node_set_insert_last, re_dfa_add_node):
38666         Rename local variables to avoid GCC shadowing warnings.
38667
38668 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
38669
38670         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
38671         [defined lint]: Suppress bogus uninitialized-variable warnings.
38672
38673         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
38674         and let the caller return REG_ESPACE if out of space.  This
38675         removes an uninitialied-variable warning with GCC 4.0.1, and also
38676         avoids taking the address of a local variable.  All callers
38677         changed.
38678
38679 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
38680
38681         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
38682         $LIBCSRC/posix/regexec.c.
38683         Add glibc bug 1217 for regcomp.c.
38684
38685 2005-08-19  Jim Meyering  <jim@meyering.net>
38686
38687         * lib/regexec.c (proceed_next_node): Redo local variables to
38688         avoid GCC shadowing warnings.
38689
38690 2005-08-18  Bruno Haible  <bruno@clisp.org>
38691
38692         * lib/strstr.c (strstr): Fix return value in multibyte case.
38693         * lib/strcasestr.c (strcasestr): Likewise.
38694
38695 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
38696
38697         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
38698
38699 2005-08-17  Jim Meyering  <jim@meyering.net>
38700
38701         Make the %s format (seconds since the epoch) work for a negative
38702         number and when used with a zero-padded field width, e.g. %015s.
38703
38704         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
38705         label so that it precedes the code to set `digits'.  Otherwise,
38706         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
38707         print `00-22'.  Now, it prints `-0022', as it should.
38708
38709 2005-08-17  Bruno Haible  <bruno@clisp.org>
38710
38711         * modules/strstr (Files): Add m4/mbrtowc.m4.
38712         (Depends-on): Add mbuiter.
38713
38714 2005-08-17  Bruno Haible  <bruno@clisp.org>
38715
38716         * modules/strcasestr: New file.
38717         * MODULES.html.sh (String handling, based on ANSI C 89): Add
38718         strcasestr.
38719
38720 2005-08-17  Bruno Haible  <bruno@clisp.org>
38721
38722         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
38723
38724 2005-08-17  Bruno Haible  <bruno@clisp.org>
38725
38726         * modules/mbuiter: New file.
38727         * MODULES.html.sh (Extended multibyte and wide character utilities):
38728         Add mbuiter.
38729
38730 2005-08-17  Bruno Haible  <bruno@clisp.org>
38731
38732         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
38733         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
38734
38735 2005-08-17  Bruno Haible  <bruno@clisp.org>
38736
38737         * m4/strcasestr.m4: New file.
38738
38739 2005-08-17  Bruno Haible  <bruno@clisp.org>
38740
38741         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
38742         * lib/strstr.c: Completely rewritten, with multibyte locale support.
38743
38744 2005-08-17  Bruno Haible  <bruno@clisp.org>
38745
38746         * lib/strcasestr.h: New file.
38747         * lib/strcasestr.c: New file.
38748
38749 2005-08-17  Bruno Haible  <bruno@clisp.org>
38750
38751         * lib/strcasecmp.c: Use mbuiter.h.
38752
38753 2005-08-17  Bruno Haible  <bruno@clisp.org>
38754
38755         * lib/mbuiter.h: New file.
38756
38757 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
38758
38759         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
38760         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
38761         and gl_GETOPT are both invoked via different paths (as happens
38762         with GNU tar CVS because it uses both argp and getopt), the former
38763         wins.
38764
38765 2005-08-16  Bruno Haible  <bruno@clisp.org>
38766
38767         * modules/tls: New file.
38768         * MODULES.html.sh (Multithreading): Add tls.
38769
38770 2005-08-16  Bruno Haible  <bruno@clisp.org>
38771
38772         * modules/strnlen1: New file.
38773         * MODULES.html.sh (String handling): Add strnlen1.
38774
38775 2005-08-16  Bruno Haible  <bruno@clisp.org>
38776
38777         * modules/strcase (Files): Add m4/mbrtowc.m4.
38778         (Depends-on): Add strnlen1, mbchar.
38779
38780 2005-08-16  Bruno Haible  <bruno@clisp.org>
38781
38782         * modules/mbiter: New file.
38783         * MODULES.html.sh (Extended multibyte and wide character utilities):
38784         Add mbiter.
38785
38786 2005-08-16  Bruno Haible  <bruno@clisp.org>
38787
38788         * modules/mbfile: New file.
38789         * MODULES.html.sh (Extended multibyte and wide character utilities):
38790         Add mbfile.
38791
38792 2005-08-16  Bruno Haible  <bruno@clisp.org>
38793
38794         * modules/mbchar: New file.
38795         * MODULES.html.sh (Extended multibyte and wide character utilities):
38796         New section.
38797
38798 2005-08-16  Bruno Haible  <bruno@clisp.org>
38799
38800         * m4/tls.m4: New file, from GNU gettext.
38801
38802 2005-08-16  Bruno Haible  <bruno@clisp.org>
38803
38804         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
38805         always.
38806         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
38807
38808 2005-08-16  Bruno Haible  <bruno@clisp.org>
38809
38810         * m4/mbiter.m4: New file.
38811
38812 2005-08-16  Bruno Haible  <bruno@clisp.org>
38813
38814         * m4/mbfile.m4: New file.
38815
38816 2005-08-16  Bruno Haible  <bruno@clisp.org>
38817
38818         * m4/mbchar.m4: New file.
38819
38820 2005-08-16  Bruno Haible  <bruno@clisp.org>
38821
38822         * lib/tls.h: New file, from GNU gettext.
38823         * lib/tls.c: New file, from GNU gettext.
38824
38825 2005-08-16  Bruno Haible  <bruno@clisp.org>
38826
38827         * lib/strnlen1.h: New file.
38828         * lib/strnlen1.c: New file.
38829
38830 2005-08-16  Bruno Haible  <bruno@clisp.org>
38831
38832         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
38833         (mbi_init): Update.
38834         (mbi_avail, mbi_advance): Let the iteration end before the terminating
38835         NUL byte, not after it.
38836
38837 2005-08-16  Bruno Haible  <bruno@clisp.org>
38838
38839         * lib/strcase.h (strcasecmp): Add note in comments.
38840         * lib/strncasecmp.c: Use code from strcasecmp.c.
38841         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
38842         (strcasecmp): Work correctly in multibyte locales.
38843
38844 2005-08-16  Bruno Haible  <bruno@clisp.org>
38845
38846         * lib/mbiter.h: New file.
38847
38848 2005-08-16  Bruno Haible  <bruno@clisp.org>
38849
38850         * lib/mbfile.h: New file.
38851
38852 2005-08-16  Bruno Haible  <bruno@clisp.org>
38853
38854         * lib/mbchar.h: New file.
38855         * lib/mbchar.c: New file.
38856
38857 2005-08-16  Bruno Haible  <bruno@clisp.org>
38858
38859         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
38860         the valid ones. Makes the comparison operations transitive:
38861         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
38862         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
38863
38864 2005-08-15  Simon Josefsson  <jas@extundo.com>
38865
38866         * modules/ssize_t (License): Change to 'unlimited'.
38867
38868         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
38869
38870 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
38871
38872         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
38873         Add comments for each pending glibc patch.
38874
38875 2005-08-15  Bruno Haible  <bruno@clisp.org>
38876
38877         * lib/regex.h (__restrict_arr): Don't define to __restrict if
38878         __cplusplus is defined.
38879
38880 2005-08-14  Jim Meyering  <jim@meyering.net>
38881
38882         Sync from coreutils.
38883
38884         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
38885         Use the hash-table-based cycle-detection code not just when
38886         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
38887         Reported by James Youngman in
38888         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
38889         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
38890         FTS_TIGHT_CYCLE_CHECK.
38891         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
38892         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
38893         once again.
38894         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
38895         * lib/fts.c (fd_safer): Remove decl.
38896         Include fcntl--.h rather than unistd-safer.h
38897         (fts_safe_changedir): Don't call fd_safer; no longer needed
38898         now that we include fcntl--.h.
38899
38900 2005-08-12  Simon Josefsson  <jas@extundo.com>
38901
38902         * modules/getndelim2: Use ssize_t module.
38903         * modules/getnline: Likewise.
38904         * modules/safe-read: Likewise.
38905         * modules/xreadlink: Likewise.
38906
38907         * modules/ssize_t: New file.
38908
38909 2005-08-12  Simon Josefsson  <jas@extundo.com>
38910
38911         * m4/readline.m4: Look for termcap, curses or ncurses if required.
38912
38913 2005-08-12  Simon Josefsson  <jas@extundo.com>
38914
38915         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
38916         ssize_t.
38917
38918 2005-08-12  Simon Josefsson  <jas@extundo.com>
38919
38920         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
38921         readline, getdelim and check_version.
38922         (Support for systems lacking ISO C 99: Sizes of integer types):
38923         Add size_max.
38924
38925 2005-08-12  Bruno Haible  <bruno@clisp.org>
38926
38927         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
38928
38929 2005-08-11  Simon Josefsson  <jas@extundo.com>
38930
38931         * modules/readline: New file.
38932
38933         * modules/strnlen (Files): Add strnlen.h.
38934
38935 2005-08-11  Simon Josefsson  <jas@extundo.com>
38936
38937         * m4/readline.m4: New file.
38938
38939 2005-08-11  Simon Josefsson  <jas@extundo.com>
38940
38941         * lib/readline.h, readline.c: New file.
38942
38943 2005-08-11  Simon Josefsson  <jas@extundo.com>
38944
38945         * doc/gnulib.texi (Initial import, Finishing touches): Mention
38946         gl_AVOID.
38947
38948 2005-08-11  Bruno Haible  <bruno@clisp.org>
38949
38950         * lib/strnlen.h (strnlen): Change parameter name to match comment.
38951
38952 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
38953
38954         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
38955
38956 2005-08-10  Simon Josefsson  <jas@extundo.com>
38957
38958         * tests/test-iconvme.c: New file.
38959
38960 2005-08-10  Simon Josefsson  <jas@extundo.com>
38961
38962         * m4/strnlen.m4: New file.
38963
38964         * m4/strndup.m4: Don't check for strnlen declaration, done in
38965         strnlen.m4.
38966
38967 2005-08-10  Simon Josefsson  <jas@extundo.com>
38968
38969         * lib/strndup.c: Use strnlen.h.
38970
38971         * lib/strnlen.h: New file.
38972
38973 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
38974
38975         * README: Typos.
38976
38977 2005-08-02  Simon Josefsson  <jas@extundo.com>
38978
38979         * modules/readline: New file.
38980
38981 2005-08-02  Simon Josefsson  <jas@extundo.com>
38982
38983         * modules/getdelim: New file.
38984
38985         * modules/getline: Rewrite, don't use getndelim2.
38986
38987 2005-08-02  Simon Josefsson  <jas@extundo.com>
38988
38989         * m4/getline.m4: Separate out getdelim stuff into separate module.
38990
38991         * m4/getdelim.m4: New file.
38992
38993 2005-08-02  Simon Josefsson  <jas@extundo.com>
38994
38995         * lib/getline.h, getline.c: Rewrite.
38996
38997         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
38998
38999 2005-07-31  Bruno Haible  <bruno@clisp.org>
39000
39001         * lib/lock.h (gl_lock_initializer): New macro.
39002         (gl_lock_define_initialized): Use it.
39003         (gl_rwlock_initializer): New macro.
39004         (gl_rwlock_define_initialized): Use it.
39005         (gl_recursive_lock_initializer): New macro.
39006         (gl_recursive_lock_define_initialized): Use it.
39007
39008 2005-07-30  Karl Berry  <karl@gnu.org>
39009
39010         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
39011         Report from Ben Pfaff, regarding getopt.
39012
39013 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
39014
39015         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
39016         normal way.
39017         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
39018         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
39019         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
39020         (gl_GETOPT): Use the new macros.  Most of the implementation
39021         is moved to the new macros.  This is for programs like Emacs
39022         that don't want all the functionality of gl_GETOPT.
39023
39024 2005-07-26  Bruno Haible  <bruno@clisp.org>
39025
39026         * m4/lock.m4: Update from GNU gettext.
39027
39028 2005-07-26  Bruno Haible  <bruno@clisp.org>
39029
39030         * lib/lock.h: Update from GNU gettext.
39031         * lib/lock.c: Update from GNU gettext.
39032
39033 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
39034
39035         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
39036         obsolescent AC_TRY_RUN.  Include the default includes files, for
39037         'exit'.
39038
39039 2005-07-24  Bruno Haible  <bruno@clisp.org>
39040
39041         * modules/visibility: New file.
39042         * MODULES.html.sh (Misc): Add visibility.
39043
39044 2005-07-24  Bruno Haible  <bruno@clisp.org>
39045
39046         * m4/visibility.m4: New file.
39047
39048 2005-07-24  Bruno Haible  <bruno@clisp.org>
39049
39050         * doc/visibility.texi: New file.
39051
39052 2005-07-22  Bruno Haible  <bruno@clisp.org>
39053
39054         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
39055         $(ALLOCA_H), redundant through BUILT_SOURCES.
39056         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
39057         redundant through BUILT_SOURCES.
39058         * modules/byteswap (Makefile.am): Remove explicit dependency on
39059         $(BYTESWAP_H), redundant through BUILT_SOURCES.
39060         * modules/fnmatch (Makefile.am): Remove explicit dependency on
39061         $(FNMATCH_H), redundant through BUILT_SOURCES.
39062         * modules/getopt (Makefile.am): Remove explicit dependency on
39063         $(GETOPT_H), redundant through BUILT_SOURCES.
39064         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
39065         redundant through BUILT_SOURCES.
39066         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
39067         redundant through BUILT_SOURCES.
39068         * modules/stdbool (Makefile.am): Remove explicit dependency on
39069         $(STDBOOL_H), redundant through BUILT_SOURCES.
39070         * modules/stdint (Makefile.am): Remove explicit dependency on
39071         $(STDINT_H), redundant through BUILT_SOURCES.
39072         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
39073         Remove explicit dependency on $(SYSEXITS_H).
39074         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
39075
39076 2005-07-18  Simon Josefsson  <jas@extundo.com>
39077
39078         * lib/check-version.c (check_version): Accept identical versions too.
39079
39080 2005-07-18  Bruno Haible  <bruno@clisp.org>
39081
39082         * modules/lock: New file.
39083         * MODULES.html.sh (Multithreading): New section.
39084
39085 2005-07-18  Bruno Haible  <bruno@clisp.org>
39086
39087         * m4/lock.m4: New file, from GNU gettext.
39088
39089 2005-07-18  Bruno Haible  <bruno@clisp.org>
39090
39091         * lib/lock.h: New file, from GNU gettext.
39092         * lib/lock.c: New file, from GNU gettext.
39093
39094 2005-07-18  Bruno Haible  <bruno@clisp.org>
39095
39096         * lib/lock.h (gl_once_t): New type.
39097         (gl_once_define, gl_once): New macros.
39098         * lib/lock.c (fresh_once): New variable.
39099         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
39100         functions.
39101
39102 2005-07-16  Simon Josefsson  <jas@extundo.com>
39103
39104         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
39105         workaround, suggested by Bruno.
39106
39107 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
39108
39109         * modules/xalloc (Depends-on): Add xalloc-die.
39110         * modules/xvasprintf (Depends-on): Add xalloc-die.
39111
39112 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
39113
39114         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
39115         with a minor change.
39116
39117 2005-07-15  Bruno Haible  <bruno@clisp.org>
39118
39119         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
39120         When using lib/poll.c, define poll as rpl_poll.
39121
39122 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
39123
39124         * modules/argp (Depends-on): Remove unlocked-io.
39125
39126 2005-07-14  Derek Price  <derek@ximbiot.com>
39127
39128         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
39129         for glob symlink bug.
39130
39131 2005-07-14  Bruno Haible  <bruno@clisp.org>
39132
39133         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
39134         Instead, test for *_unlocked function declarations directly.
39135
39136 2005-07-11  Simon Josefsson  <jas@extundo.com>
39137
39138         * modules/size_max: New file.
39139
39140         * modules/xsize: Depend on size_max module for size_max.m4.
39141
39142 2005-07-11  Simon Josefsson  <jas@extundo.com>
39143
39144         * lib/size_max.h: New file.
39145
39146 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
39147
39148         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
39149         copyright symbol and the year.
39150         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
39151         (version_etc_va): Use parameterized copyright notice.
39152         Reword to conform to the current GNU coding standards.
39153
39154 2005-07-11  Karl Berry  <karl@gnu.org>
39155
39156         * doc/gnulib.texi (Quoting): new node.
39157         (Initial import): more info, from Patrice.
39158
39159 2005-07-11  Bruno Haible  <bruno@clisp.org>
39160
39161         * gnulib-tool (func_usage): Document option --avoid.
39162         (Command line options): Handle --avoid.
39163         (func_acceptable): New function.
39164         (func_modules_transitive_closure): Use it.
39165
39166 2005-07-11  Bruno Haible  <bruno@clisp.org>
39167
39168         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
39169         Reported by Jim Meyering.
39170
39171 2005-07-10  Bruno Haible  <bruno@clisp.org>
39172
39173         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
39174         Needed when size_t is smaller than 'unsigned int'.
39175         Reported by Paul Eggert.
39176
39177 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
39178
39179         * modules/argp (Depends-on): Add unlocked-io
39180
39181 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
39182
39183         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
39184         block of defines.
39185
39186 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
39187
39188         * config/srclist.txt: Comment out regcomp.c, since we have a porting
39189         fix now.
39190
39191 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
39192         and Paul Eggert  <eggert@cs.ucla.edu>
39193
39194         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
39195         in wint_t, not wchar_t.  Remove now-unnecessary cast.
39196
39197 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
39198
39199         * modules/regex (Files): Add lib/regex_internal.c,
39200         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
39201         (Depends-on): Add extensions.
39202         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
39203
39204 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
39205
39206         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
39207         pathconf.
39208         * m4/same.m4 (gl_SAME): Likewise.
39209         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
39210
39211         * m4/regex.m4: Adjust to new libc regex implementation.
39212         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
39213         all the .c and .h parts of (the new) regex.
39214         Quote the m4 stuff better.
39215         Check for RE_ICASE bug of old gnulib.
39216         Check for REG_STARTEND of recent libc.
39217         Rename local variables from jm_* to gl_*.
39218         Quote operand of "test -f".
39219         Say "recent enough" version of libc, not "version 2".
39220         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
39221         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
39222         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
39223         Remove check for btowc, isascii.
39224         Require AM_LANGINFO_CODESET.
39225
39226 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
39227
39228         * lib/regex.c, regex.h: Sync from libc.
39229         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
39230         * lib/regexec.c:
39231         New files, synced from libc, except that regex_internal.h
39232         currently has a small porting fix.
39233
39234 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
39235
39236         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
39237         regex_internal.c, regexec.c.
39238         Add regex_internal.h too, but as a comment, since the libc version
39239         is currently broken in gnulib mode.
39240
39241 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
39242
39243         Support programs like Emacs that use gnulib but not gettext.
39244         * MODULES.html.sh (Internationalization functions): Add gettext-h.
39245         * modules/gettext-h: New file.
39246         * modules/gettext (Files): Remove lib/gettext.h.
39247         (Depends-on): Add gettext-h.
39248         (Makefile.am): Remove lib_SOURCES.
39249         * modules/argmatch, modules/c-stack, modules/closeout:
39250         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
39251         * modules/execute, modules/file-type, modules/getaddrinfo:
39252         * modules/getopt, modules/human, modules/javacomp:
39253         * modules/javaexec, modules/mkdir-p, modules/obstack:
39254         * modules/openat, modules/pagealign_alloc, modules/pipe:
39255         * modules/quotearg, modules/regex, modules/rpmatch:
39256         * modules/unicodeio, modules/userspec, modules/version-etc:
39257         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
39258         * modules/xsetenv:
39259         Depend on gettext-h, not gettext.
39260
39261 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
39262
39263         * gnulib-tool (func_import): Add support for 'public domain' license.
39264         * modules/alloca, modules/atexit, modules/memmove:
39265         Now public domain, not GPL.
39266         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
39267         * modules/realloc, modules/strerror, modules/strtod:
39268         Now LGPL, not GPL.
39269
39270 2005-07-05  Bruno Haible  <bruno@clisp.org>
39271
39272         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
39273         autoconf CVS. Needed for mingw.
39274
39275 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
39276
39277         Remove the dependency of the strftime module on the tzset module.
39278         * modules/strftime (Depends-on): Remove dependency on tzset.
39279
39280 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
39281
39282         Remove the dependency of the strftime module on the tzset module.
39283         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
39284         gl_FUNC_TZSET_CLOBBER.
39285
39286 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
39287
39288         Remove the dependency of the strftime module on the tzset module.
39289         * lib/strftime.c (my_strftime)
39290         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
39291         Copy the input structure, to work around some of the bug with
39292         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
39293         Solaris releases, you should also use the tzset module, but we won't
39294         require it as a dependency any more since we don't want LGPLed code
39295         to depend on GPLed code.
39296
39297 2005-07-02  Jim Meyering  <jim@meyering.net>
39298
39299         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
39300         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
39301         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
39302         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
39303
39304 2005-07-02  Jim Meyering  <jim@meyering.net>
39305
39306         * lib/backupfile.c (backup_args): Change a `0' to NULL.
39307
39308 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
39309
39310         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
39311         declares only 'struct timespec;' (!).
39312
39313 2005-07-01  Jim Meyering  <jim@meyering.net>
39314
39315         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
39316         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
39317         * lib/save-cwd.c, tempname.c:
39318         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
39319         and don't include <sys/file.h>).
39320
39321 2005-06-29  Jim Meyering  <jim@meyering.net>
39322
39323         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
39324         type name.  Use the variable name instead.
39325         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
39326         Likewise.
39327
39328 2005-06-28  Simon Josefsson  <jas@extundo.com>
39329
39330         * modules/check-version (Files): Add check-version.m4.
39331
39332 2005-06-28  Simon Josefsson  <jas@extundo.com>
39333
39334         * m4/check-version.m4: New file, suggested by Jim Meyering
39335         <jim@meyering.net>.
39336
39337 2005-06-28  Simon Josefsson  <jas@extundo.com>
39338
39339         * lib/check-version.h, lib/check-version.c: New files.
39340
39341 2005-06-28  Simon Josefsson  <jas@extundo.com>
39342
39343         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
39344         collision with global variable.  Better indentation.  Don't
39345         increment buffer pointer beyond buffer end.  Based on comments
39346         from Paul Eggert <eggert@cs.ucla.edu>.
39347
39348         * lib/base64.h: Indent.
39349
39350 2005-06-28  Simon Josefsson  <jas@extundo.com>
39351
39352         * doc/gnulib.texi (Library version handling): New section.
39353
39354 2005-06-28  Jim Meyering  <jim@meyering.net>
39355
39356         * check-module (find_included_lib_files): Hard-code another
39357         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
39358         but modules/fts-lgpl (correctly) does not list those files.
39359
39360         * modules/canonicalize (Files): Add lib/pathmax.h.
39361
39362 2005-06-25  Simon Josefsson  <jas@extundo.com>
39363
39364         * modules/check-version: New file.
39365
39366 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
39367
39368         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
39369         initializer of struct addrinfo, as an indication that we don't
39370         care how many members the structure has.
39371
39372 2005-06-24  Derek Price  <derek@ximbiot.com>
39373         and Bruno Haible  <bruno@clisp.org>
39374
39375         Remove stat module & update lstat.
39376         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
39377         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
39378         * m4/stat.m4: Remove this file.
39379
39380 2005-06-24  Derek Price  <derek@ximbiot.com>
39381         and Bruno Haible  <bruno@clisp.org>
39382
39383         Remove stat module & update lstat.
39384         * lib/stat.c: Remove this file...
39385         (slash_aware_lstat): ...moving this content and its support...
39386         * lib/lstat.c (rpl_lstat): ...into here.
39387         * lib/lstat.h: New file.
39388
39389 2005-06-24  Derek Price  <derek@ximbiot.com>
39390         and Bruno Haible  <bruno@clisp.org>
39391
39392         Remove stat module & update lstat.
39393         * config/srclist.txt (libc sources): Remove stat.
39394
39395 2005-06-24  Derek Price  <derek@ximbiot.com>
39396         and Bruno Haible  <bruno@clisp.org>
39397
39398         Remove stat module & update lstat.
39399         * MODULES.html.sh (stat): Remove.
39400         * MODULES.html: Regenerated.
39401         * modules/lstat (Description): Correct function name.
39402         (Files): Add "lstat.h".
39403         (Depends-on): Remove stat, add xalloc, stat-macros.
39404         * modules/stat: Remove this file.
39405         (Include): Add "lstat.h", remove <sys/stat.h>.
39406
39407 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
39408
39409         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
39410         (ranged_convert): Don't save conversion in a temporary struct.
39411         This causes a warning with GCC 4.0.0, and anyway in the typical
39412         case it's not worth the extra 100 bytes or so of code.
39413         (ranged_convert, __mktime_internal): When calling a function via a
39414         pointer P, use P () rather than (*P) (), as we now assume C89 or
39415         better.
39416
39417 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
39418
39419         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
39420         "who -r" failed to give output.  Problem reported by Tim Waugh.
39421
39422         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
39423         (xcalloc): Use it to avoid needless tests.
39424         Problem reported by Jim Meyering.
39425
39426 2005-06-20  Derek Price  <derek@ximbiot.com>
39427
39428         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
39429         unnecessary for Autoconfs > 2.59c.
39430
39431 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
39432
39433         * lib/argp.h (__option_is_short): Check upper limit of
39434         __key. Isprint() requires its argument to have the value
39435         of an unsigned char or EOF.
39436
39437 2005-06-16  Jim Meyering  <jim@meyering.net>
39438
39439         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
39440         when either N or S is zero.
39441
39442 2005-06-16  Derek Price  <derek@ximbiot.com>
39443
39444         * m4/bison.m4: Declare YACC & YFLAGS precious.
39445
39446 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
39447
39448         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
39449         multibyte string or pattern, fall back on unibyte matching.
39450         Problem reported by James Youngman.
39451
39452 2005-06-08  Bruno Haible  <bruno@clisp.org>
39453
39454         * modules/csharpcomp: New file.
39455         * MODULES.html.sh (C#): Add csharpcomp.
39456
39457 2005-06-08  Bruno Haible  <bruno@clisp.org>
39458
39459         * m4/csharpcomp.m4: New file, from GNU gettext.
39460
39461 2005-06-08  Bruno Haible  <bruno@clisp.org>
39462
39463         * lib/csharpcomp.h: New file, from GNU gettext.
39464         * lib/csharpcomp.c: New file, from GNU gettext.
39465         * lib/csharpcomp.sh.in: New file, from GNU gettext.
39466
39467 2005-06-08  Bruno Haible  <bruno@clisp.org>
39468
39469         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
39470         warning on mingw.
39471
39472 2005-06-07  Derek Price  <derek@ximbiot.com>
39473
39474         Sync from CVS.
39475         * lib/glob_.h: Indent nested #ifdef.
39476
39477 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
39478
39479         Sync from coreutils.
39480         Use "file name" when talking about file names, instead of "filename"
39481         or "path", as per the GNU coding standards.
39482         * lib/mkdir-p.c: Renamed from makepath.c.
39483         (make_dir_parents): Renamed from make_path.  All callers changed.
39484         * lib/mkdir-p.h: Likewise.  All includers changed.
39485         * lib/filenamecat.c: Renamed from path-concat.c.
39486         (file_name_concat): Renamed from path_concat.  All callers changed.
39487         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
39488         * lib/filenamecat.h: Likewise.  All includers changed.
39489         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
39490         in comments or local variable names.
39491         * lib/basename.c: Likewise.
39492         * lib/canonicalize.c, canonicalize.h: Likewise.
39493         * lib/dirname.c, dirname.h: Likewise.
39494         * lib/euidaccess.c: Likewise.
39495         * lib/exclude.c: Likewise
39496         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
39497         * lib/fsusage.c, fsuage.h: Likewise.
39498         * lib/fts.c, fts_.h: Likewise.
39499         * lib/getcwd.c: Likewise.
39500         * lib/getloadavg.c: Likewise.
39501         * lib/mkstemp.c: Likewise.
39502         * lib/mountlist.c, mountlist.h: Likewise.
39503         * lib/openat.c, openat.h: Likewise.
39504         * lib/readlink-stub.c: Likewise.
39505         * lib/readutmp.c, readutmp.h: Likewise.
39506         * lib/rename.c: Likewise.
39507         * lib/rmdir.c: Likewise.
39508         * lib/same.c: Likewise.
39509         * lib/savedir.c: Likewise.
39510         * lib/stripslash.c: Likewise.
39511         * lib/tempname.c: Likewise.
39512         * lib/xreadlink.c: Likewise.
39513         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
39514         All uses changed.
39515         * lib/exclude.h: Likewise.
39516
39517         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
39518         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
39519         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
39520         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
39521         * lib/pathmax.h: Include <limits.h> unconditionally, since other
39522         files have been getting away with it for years (MORE/BSD 4.3
39523         is extinct now).
39524         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
39525         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
39526
39527         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
39528         Define to 256, not 255, as per modern POSIX.
39529
39530 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
39531
39532         Sync from coreutils.
39533         Use "file name" when talking about file names, instead of "filename"
39534         or "path", as per the GNU coding standards.
39535         * MODULES.html.sh: mkdir-p renamed from makepath.
39536         filenamecat renamed from path-concat.
39537         * modules/filenamecat: Renamed from modules/path-concat.
39538         (Files): filenamecat.h and filenamecat.c renamed from
39539         path-concat.h and path-concat.c.
39540         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
39541         (Include): filenamecat.h, not path-concat.h.
39542         * modules/mkdir-p: Renamed from modules/makepath.
39543         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
39544         makepath.c.
39545         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
39546         (Include): mkdir-p.h, not makepath.h.
39547
39548 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
39549
39550         Sync from coreutils.
39551         * m4/mkdir-p.m4: Renamed from makepath.m4.
39552         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
39553         Rename files from makepath.c to mkdir-p.c, and from
39554         makepath.h to mkdir-p.h.
39555         * m4/filenamecat.m4: Renamed from path-concat.m4.
39556         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
39557         Rename files from path-concat.c to filenamecat.c,
39558         and from path-concat.h to filenamecat.h.
39559         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
39560         "file name" in local variables or comments.
39561         * m4/rename.m4: Likewise.
39562
39563 2005-06-01  Bruno Haible  <bruno@clisp.org>
39564
39565         * modules/csharpexec: New file.
39566         * MODULES.html.sh (C#): New section.
39567
39568 2005-06-01  Bruno Haible  <bruno@clisp.org>
39569
39570         * m4/csharp.m4: New file, from GNU gettext.
39571         * m4/csharpexec.m4: New file, from GNU gettext.
39572
39573 2005-06-01  Bruno Haible  <bruno@clisp.org>
39574
39575         * lib/csharpexec.h: New file, from GNU gettext.
39576         * lib/csharpexec.c: New file, from GNU gettext.
39577         * lib/csharpexec.sh.in: New file, from GNU gettext.
39578
39579 2005-05-31  Derek Price  <derek@ximbiot.com>
39580             Paul Eggert  <eggert@cs.ucla.edu>
39581
39582         Sync from cvs.
39583         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
39584
39585 2005-05-31  Derek Price  <derek@ximbiot.com>
39586             Paul Eggert  <eggert@cs.ucla.edu>
39587
39588         Sync from cvs.
39589         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
39590
39591 2005-05-29  Derek Price  <derek@ximbiot.com>
39592
39593         * config/srclist.txt (glob_.h, glob.c): Add these files.
39594
39595 2005-05-29  Derek Price  <derek@ximbiot.com>
39596
39597         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
39598         * modules/glob: New file.
39599         * modules/getlogin_r: Add link to POSIX spec in description.
39600
39601 2005-05-29  Derek Price  <derek@ximbiot.com>
39602             Paul Eggert  <eggert@cs.ucla.edu>
39603
39604         * m4/glob.m4: New file.
39605
39606 2005-05-29  Derek Price  <derek@ximbiot.com>
39607             Paul Eggert  <eggert@cs.ucla.edu>
39608
39609         * lib/glob_.h, lib/glob.c: New files.
39610
39611 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
39612
39613         * modules/fts (Files): Remove m4/inttypes-pri.m4.
39614         * modules/fts-lgpl (Depends-on): Remove gettext.
39615
39616 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
39617
39618         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
39619         and don't require gt_INTTYPES_PRI.
39620
39621 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
39622
39623         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
39624
39625         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
39626         the configuration hassle isn't worth it.
39627         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
39628         (LONGEST_MODIFIER, PRIuMAX): Remove.
39629
39630 2005-05-27  Bruno Haible  <bruno@clisp.org>
39631
39632         * lib/getlogin_r.h: Remove second include of <stddef.h>.
39633
39634 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
39635
39636         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
39637         _POSIX_PTHREAD_SEMANTICS for Solaris.
39638
39639 2005-05-25  Derek Price  <derek@ximbiot.com>
39640
39641         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
39642
39643 2005-05-25  Derek Price  <derek@ximbiot.com>
39644             Paul Eggert  <eggert@cs.ucla.edu>
39645
39646         * modules/getlogin_r, m4/getlogin_r.m4: New files.
39647         * lib/getlogin_r.c, getlogin_r.h: New files.
39648
39649 2005-05-25  Bruno Haible  <bruno@clisp.org>
39650             Derek Price  <derek@ximbiot.com>
39651
39652         * lib/getlogin_r.h: Simplify API documentation.
39653
39654 2005-05-23  Derek Price  <derek@ximbiot.com>
39655
39656         * modules/minmax (Files): Add m4/minmax.m4.
39657         (configure.ac): Add gl_MINMAX.
39658
39659 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
39660
39661         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
39662         so that unistd-safer.h (GPL'ed code) need not be included.
39663
39664 2005-05-22  Bruno Haible  <bruno@clisp.org>
39665
39666         * m4/minmax.m4: New file.
39667         Based on a patch by Derek Price <derek@ximbiot.com>.
39668
39669 2005-05-22  Bruno Haible  <bruno@clisp.org>
39670
39671         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
39672         (INT64_MIN): Fix definition.
39673         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
39674
39675         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
39676         NEED_SIGNED_INT_TYPES.
39677
39678         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
39679         HAVE_SYSTEM_INTTYPES.
39680
39681 2005-05-22  Bruno Haible  <bruno@clisp.org>
39682
39683         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
39684         Also include <sys/param.h> if it defines MIN, MAX.
39685         Based on a patch by Derek Price <derek@ximbiot.com>.
39686
39687 2005-05-21  Jim Meyering  <jim@meyering.net>
39688
39689         * modules/fts (Files): Add m4/inttypes-pri.m4.
39690         (Depends-on): Add lstat and remove gettext.  Alphabetize.
39691
39692 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
39693
39694         New fts module.
39695         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
39696         (setup_dir, free_dir): New functions.
39697         (enter_dir, leave_dir): Define trivial
39698         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
39699         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
39700         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
39701         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
39702         Move to fts-cycle.c.
39703         (fts_open): Use setup_dir.
39704         (fts_close): Use free_dir.
39705         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
39706         This adds a label and some gotos, but the alternatives were messier.
39707         Check for memory allocation failure when entering a dir.
39708         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
39709         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
39710         (FTS): New member fts_cycle, that is a union that contains the
39711         old active_dir_ht and cycle_state.  All uses changed to mention
39712         fts_cycle.ht and fts_cycle.state.
39713         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
39714         fts.c, with the following changes:
39715         (setup_dir, free_dir): New functions.
39716         (enter_dir): Now returns bool.  Return true if successful, false
39717         if memory exhausted.  All callers changed.
39718         Do not bother partly cleaning up on
39719         memory allocation failure; that is free_dir's job.
39720         However, free ad if hash_insert fails, to avoid memory leak.
39721         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
39722         fts->fts_options to see which union member to use.
39723
39724 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
39725
39726         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
39727         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
39728
39729 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
39730
39731         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
39732
39733 2005-05-20  Jim Meyering  <jim@meyering.net>
39734
39735         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
39736         Now a macro, to pacify GCC.
39737
39738 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
39739
39740         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
39741         of -1.
39742
39743 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
39744
39745         * lib/chown.c (rpl_chown): Return -1 on failure.
39746
39747 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
39748
39749         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
39750         Don't check for stddef.h.
39751         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
39752         don't use its results.
39753         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
39754         since we include them unconditionally.  Don't require
39755         AM_STDBOOL_H, since stdbool is a prerequisite.
39756         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
39757         since we assume C89 or better.
39758         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
39759         as we don't use their results.
39760         Don't check for fchdir, memmove, memset, strrchr, as we use
39761         them unconditionally.
39762         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
39763         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
39764
39765 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
39766
39767         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
39768         Include <stddef.h> unconditionally, since we assume C89 now.
39769         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
39770         * lib/fts.c: Include fts_.h first, to check interface.
39771         Do not include intprops.h; no longer needed.
39772         Include cycle-check.h and hash.h, since fts_.h no longer does.
39773         Remove unnecessary casts of closedir to void.
39774         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
39775         decide whether to decrement nlinks.
39776         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
39777         (FTS): Use struct hash_table * instead of Hash_table, so that
39778         we no longer need to include hash.h here.
39779
39780 2005-05-18  Jim Meyering  <jim@meyering.net>
39781
39782         * modules/dirfd (License): Change to LGPL.  Most of the code
39783         is already in the public domain.
39784
39785 2005-05-18  Jim Meyering  <jim@meyering.net>
39786
39787         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
39788         Reported by Yoann Vandoorselaere.
39789
39790 2005-05-17  Jim Meyering  <jim@meyering.net>
39791
39792         * m4/fts.m4: New file, from coreutils.
39793
39794 2005-05-17  Jim Meyering  <jim@meyering.net>
39795
39796         * lib/fts.c, lib/fts_.h: New files, from coreutils.
39797
39798 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
39799
39800         Sync from coreutils.
39801         * m4/unlinkdir.m4: New file.
39802
39803 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
39804
39805         Sync from coreutils.
39806         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
39807         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
39808         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
39809         White space changes only.
39810         * lib/makepath.c (make_path): Port to hosts where leading "//" is
39811         special.
39812         * lib/yesno.c: Include getline.h, not ctype.h.
39813         (yesno): Don't remove leading white space; POSIX doesn't allow it.
39814         Use getline to remove arbitrary restriction on response length.
39815
39816 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
39817
39818         * config/srclist-update: Spell out "Street" in FSF postal
39819         mail address; this is the style the FSF seems to prefer.
39820
39821         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
39822         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
39823         this updates FSF postal mail address.
39824
39825         Sync from coreutils.
39826         * modules/unlinkdir: New file.
39827         * modules/yesno (Depends-on): Add getline.
39828         * MODULES.html.sh (File system functions): Add unlinkdir.
39829
39830 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
39831
39832         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
39833         lib/strsep.h:
39834         Change the initial comment to refer to GPL, not LGPL.
39835         gnulib-tool will change it to LGPL as needed.
39836
39837         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
39838         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
39839         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
39840         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
39841         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
39842         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
39843         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
39844         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
39845         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
39846         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
39847         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
39848         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
39849         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
39850         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
39851         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
39852         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
39853         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
39854         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
39855         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
39856         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
39857         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
39858         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
39859         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
39860         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
39861         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
39862         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
39863         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
39864         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
39865         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
39866         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
39867         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
39868         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
39869         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
39870         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
39871         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
39872         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
39873         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
39874         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
39875         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
39876         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
39877         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
39878         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
39879         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
39880         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
39881         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
39882         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
39883         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
39884         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
39885         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
39886         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
39887         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
39888         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
39889         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
39890         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
39891         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
39892         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
39893         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
39894         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
39895         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
39896         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
39897         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
39898         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
39899         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
39900         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
39901         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
39902         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
39903         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
39904         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
39905         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
39906         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
39907         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
39908         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
39909         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
39910         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
39911         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
39912         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
39913         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
39914         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
39915         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
39916         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
39917         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
39918         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
39919         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
39920         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
39921         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
39922         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
39923         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
39924         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
39925         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
39926         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
39927         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
39928         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
39929         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
39930         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
39931         lib/yesno.c, lib/yesno.h:
39932         Update FSF postal mail address.
39933
39934 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
39935
39936         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
39937         tests/test-memmem.c, tests/test-stpncpy.c:
39938         Update FSF postal mail address.
39939
39940 2005-05-13  Bruno Haible  <bruno@clisp.org>
39941
39942         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
39943         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
39944         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
39945         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
39946         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
39947         Add support for 64-bit integers in the MSVC compiler.
39948
39949 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
39950
39951         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
39952
39953 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
39954
39955         * gnulib-tool (func_import): Sort and uniquify recommended includes.
39956
39957 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
39958
39959         * doc/getdate.texi (General date syntax): Don't say that date
39960         date --iso-8601=ns generates acceptable dates; it doesn't yet.
39961         Problem reported by Nic Ferrier.
39962
39963 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
39964
39965         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
39966         specified in ai_socktype. Fix invalid ai_protocol
39967         check. ai_protocol is usually set to 0 or depending on
39968         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
39969         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
39970         ai_socktype / ai_protocol in the returned addrinfo structure.
39971
39972 2005-05-10  Simon Josefsson  <jas@extundo.com>
39973
39974         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
39975         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
39976
39977 2005-05-10  Karl Berry  <karl@gnu.org>
39978
39979         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
39980         (from http://www.gnu.org/licenses).
39981         * doc/COPYING.LIB: also rename to COPYING.LESSER.
39982         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
39983         fdl.texi suffices.
39984
39985 2005-05-10  Karl Berry  <karl@gnu.org>
39986
39987         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
39988         (COPYING.DOC): remove.
39989
39990         * config/srclist-update: new FSF address.
39991
39992 2005-05-10  Derek Price  <derek@ximbiot.com>
39993
39994         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
39995         possible.
39996
39997 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
39998             Bruno Haible  <bruno@clisp.org>
39999
40000         * modules/inet_ntop: New file.
40001         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
40002         inet_ntop.
40003
40004 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
40005             Bruno Haible  <bruno@clisp.org>
40006
40007         * m4/inet_ntop.m4: New file.
40008
40009 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
40010             Bruno Haible  <bruno@clisp.org>
40011
40012         * lib/inet_ntop.h: New file.
40013         * lib/inet_ntop.c: New file, from glibc with modifications.
40014
40015 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
40016
40017         * modules/time_r (License): Change to LGPL.
40018         * modules/extensions (License): Change to LGPL.  Actually,
40019         the license is more permissive than that, but currently gnulib-tool
40020         doesn't know how to handle more-permissive licenses.
40021
40022         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
40023         Problem reported by Dave Love.
40024
40025 2005-05-08  Jim Meyering  <jim@meyering.net>
40026
40027         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
40028         blank.
40029
40030 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
40031
40032         * modules/argmatch (Depends-on): Add stdbool.
40033         * modules/backupfile (Depends-on): Likewise.
40034         * modules/chdir-long (Depends-on): Likewise.
40035         * modules/closeout (Depends-on): Likewise.
40036         * modules/cycle-check (Depends-on): Likewise.
40037         * modules/dirname (Depends-on): Likewise.
40038         * modules/fnmatch (Depends-on): Likewise.
40039         * modules/fsusage (Depends-on): Likewise.
40040         * modules/fwriteerror (Depends-on): Likewise.
40041         * modules/getcwd (Depends-on): Likewise.
40042         * modules/getloadavg (Depends-on): Likewise.
40043         * modules/hard-locale (Depends-on): Likewise.
40044         * modules/makepath (Depends-on): Likewise.
40045         * modules/mountlist (Depends-on): Likewise.
40046         * modules/nanosleep (Depends-on): Likewise.
40047         * modules/posixtm (Depends-on): Likewise.
40048         * modules/quotearg (Depends-on): Likewise.
40049         * modules/readtokens (Depends-on): Likewise.
40050         * modules/readtokens0 (Depends-on): Likewise.
40051         * modules/readutmp (Depends-on): Likewise.
40052         * modules/save-cwd (Depends-on): Likewise.
40053         * modules/strftime (Depends-on): Likewise.
40054         * modules/userspec (Depends-on): Likewise.
40055         * modules/utimecmp (Depends-on): Likewise.
40056         * modules/xgetcwd (Depends-on): Likewise.
40057         * modules/xnanosleep (Depends-on): Likewise.
40058         * modules/xstrtod (Depends-on): Likewise.
40059         * modules/yesno (Depends-on): Likewise.
40060
40061 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
40062
40063         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
40064         needless checks.
40065
40066 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
40067
40068         Merge from coreutils.  Among other things,
40069         add bulletproofing for cases where stdin, stdout, or stderr are closed.
40070         * lib/fd-safer.c: New file.
40071         * lib/fcntl-safer.h, open-safer.c: Remove.
40072         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
40073         * lib/dup-safer.c: Include unistd-safer.h first.
40074         Don't include errno.h.
40075         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
40076         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
40077         * lib/file-type.c: Rely on file-type.h change.
40078         * lib/getloadavg.c: Include unistd-safer.h.
40079         (getloadavg): Use safer open.
40080         * lib/getusershell.c: Include "stdio-safer.h".
40081         (getusershell): Use safer fopen.
40082         * lib/long-options.c (long_options): Use NULL rather than 0.
40083         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
40084         'free'.
40085         * lib/modechange.c: Likewise.
40086         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
40087         (MODE_DONE): New constant.
40088         (struct mode_change): Remove 'next' member.
40089         (make_node_op_equals): New function; like the old one of the
40090         same name, except it allocates an array.
40091         (mode_compile, mode_create_from_ref): Use it.
40092         (mode_compile): Allocate result as an array, not a linked list.
40093         Parse octal string ourself, so that we catch mistakes like "+0".
40094         (mode_adjust): Arg is an array, not a linked list.
40095         * lib/modechange.c: Include stat-macros.h, xalloc.h.
40096         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
40097         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
40098         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
40099         Remove.  This is now stat-macros.h's job.
40100         (talloc): Remove.  All callers replaced by xalloc, so that
40101         our invokers don't have to worry about reporting memory failures.
40102         (make_node_op_equals): Remove.
40103         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
40104         New constants.
40105         (struct mode_change): Moved here from modechange.h.
40106         (mode_append_entry): Remove.
40107         (mode_compile): Remove MASKED_OPS arg, since it encouraged
40108         apps to have incorrect behavior.  Use simpler algorithm for head
40109         and tail.  Don't futz with umask; that's now the job of mode_adjust.
40110         Detect more invalid usages rather than having somewhat-random behavior.
40111         Don't insert an "a=" action, as that leads to incorrect behavior.
40112         (mode_compile, mode_create_from_ref): Return NULL on error instead
40113         of an enum, since now there's only one way to have an error.  All
40114         callers changed.
40115         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
40116         at the correct time.  Simplify calculation of "+u" and its ilk.
40117         Don't mishandle "+X".
40118         (mode_free): Remove "register" and localize decls.
40119         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
40120         (struct mode_change): Move to modechange.c; callers don't
40121         need to see this stuff.
40122         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
40123         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
40124         (mode_change, mode_adjust): Reflect the new signatures noted above.
40125         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
40126         that might redefine system include files.
40127         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
40128         (my_usleep): Use NULL rather than (void *) 0.
40129         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
40130         Use siginterrupt to specify that system calls should be interrupted.
40131         (rpl_nanosleep): Move initialization of suspended closer to call of
40132         my_usleep.
40133         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
40134         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
40135         (desirable_utmp_entry): New function.
40136         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
40137         using x2nrealloc, to simplify logic.
40138         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
40139         size calculation.  Do not assume utmp file is a regular file.
40140         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
40141         (READ_UTMP_CHECK_PIDS): New constant.
40142         * lib/save-cwd.c: Include unistd-safer.h.
40143         (save_cwd): Use fd_safer.
40144         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
40145         [!_LIBC] Include "stat-macros.h" instead.
40146         * lib/unistd-safer.h (fd_safer): New decl.
40147
40148 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
40149
40150         * modules/getloadavg (Depends-on): Add unistd-safer.
40151         * modules/getusershell (Depends-on): Add stdio-safer.
40152         * modules/lstat (Depends-on): Remove xalloc.
40153         * modules/mkstemp (Depends-on): Add stat-macros.
40154         * modules/modechange (Depends-on): Remove xstrtol.
40155         Add stat-macros, xalloc.
40156         * modules/save-cwd (Depends-on): Add unistd-safer.
40157         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
40158         * modules/unistd-safer (Files): Add lib/fd-safer.c
40159         (Makefile.am): Remove lib_SOURCES.
40160
40161         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
40162         Remove fcntl-safer; unistd-safer supersedes it.
40163
40164 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
40165
40166         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
40167         AC_HEADER_STAT.
40168         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
40169         (gl_PREREQ_CHOWN): Remove.
40170         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
40171         it.  Don't require AC_HEADER_STAT.
40172         (gl_PREREQ_LSTAT): Remove.
40173         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
40174         Don't require AC_HEADER_STAT.
40175         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
40176         (gl_PREREQ_RMDIR): Remove.
40177         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
40178         mention stat-macros.h or AC_HEADER_STAT, since we'll make
40179         the stat-macros module a prerequisite.
40180         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
40181         * m4/filemode.m4 (gl_FILEMODE): Likewise.
40182         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
40183         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
40184         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
40185         variable names.
40186         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
40187         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
40188         variable prefixes.
40189         * m4/fcntl-safer.m4: Remove.
40190         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
40191         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
40192         Invoke gl_PREREQ_FD_SAFER.
40193         (gl_PREREQ_FD_SAFER): New macro.
40194         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
40195         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
40196         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
40197         Remove duplicate call to AC_LIBOBJ(readutmp).
40198         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
40199
40200         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
40201         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
40202
40203 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
40204
40205         * MODULES.html.sh (Misc): Add byteswap.
40206
40207 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
40208
40209         * modules/getcwd (Depends-on): Add extensions.
40210         * modules/openat (Depends-on): Likewise.
40211
40212 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
40213
40214         * modules/byteswap: New file.
40215
40216 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
40217
40218         * m4/byteswap.m4: New file.
40219
40220 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
40221
40222         * lib/byteswap_.h: New file.
40223
40224 2005-04-25  Karl Berry  <karl@gnu.org>
40225
40226         * m4/gettext.m4: Update from GNU gettext 0.14.4.
40227
40228 2005-04-25  Albert Chin  <china@thewrittenword.com>
40229
40230         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
40231         Toolkit C bug.
40232
40233 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
40234
40235         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
40236         (func_ln_if_changed) Remove forcibly for no error message
40237         in case file does not exist.
40238
40239 2005-04-19  Simon Josefsson  <jas@extundo.com>
40240
40241         * gnulib-tool (Options): Make --symlink mean --symbolic.
40242
40243 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
40244
40245         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
40246
40247 2005-04-16  Simon Josefsson  <jas@extundo.com>
40248
40249         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
40250
40251 2005-04-15  Simon Josefsson  <jas@extundo.com>
40252
40253         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
40254
40255 2005-04-15  Simon Josefsson  <jas@extundo.com>
40256
40257         * gnulib-tool: Rename --symlink to --symbolic.
40258
40259 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
40260
40261         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
40262         symbolic links to files instead of copying/moving.  Add --aux-dir,
40263         specifying directory relative --dir where auxiliary build tools
40264         are placed.
40265
40266 2005-04-14  Bruno Haible  <bruno@clisp.org>
40267
40268         * modules/allocsa (License): Change to LGPL.
40269         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
40270
40271 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
40272
40273         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
40274         that "UTC +1 second" continues to work.  Problem reported
40275         by Dmitry V. Levin.
40276         (relunit_snumber): New rule.
40277         (relunit): Use it.
40278
40279 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
40280
40281         * lib/getdate.y (universal_time_zone_table): New constant.
40282         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
40283         universal_time_zone_table.
40284         (lookup_zone): Prefer universal_time_zone_table to
40285         local_time_zone_table, so that "GMT" time stamps are allowed in
40286         London during the summer.  Problem reported by Ian Abbott.
40287
40288 2005-04-12  Jim Meyering  <jim@meyering.net>
40289
40290         * lib/human.c (humblock): Set *options even when returning due to
40291         xstrtoumax conversion failure.  Thanks to a used-uninitialized
40292         warning from gcc-4.
40293
40294 2005-04-09  Jim Meyering  <jim@meyering.net>
40295
40296         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
40297         -Wuninitialized: initialize tm0.tm_year.
40298
40299 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
40300
40301         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
40302         count, since there's no maximum.  All uses changed.
40303         Add member dsts_seen.
40304         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
40305         not being INT_MAX.
40306         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
40307         Use pc_rels_seen to decide whther a date is absolute.
40308
40309         * lib/getdate.y (number): Don't overwrite year.
40310         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
40311         check.
40312
40313 2005-04-02  Simon Josefsson  <jas@extundo.com>
40314
40315         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
40316         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
40317
40318 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
40319
40320         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
40321         where no absolute path name can be longer than PATH_MAX.
40322
40323 2005-03-27  Jim Meyering  <jim@meyering.net>
40324
40325         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
40326
40327 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
40328
40329         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
40330         "one's complement" -> "ones' complement" in comment, as per Knuth.
40331         "value of type" -> "type or expression" in comment.
40332         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
40333
40334 2005-03-26  Jim Meyering  <jim@meyering.net>
40335
40336         Comment nits.
40337         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
40338         Correct typos: s/or/of/.
40339
40340 2005-03-26  Jim Meyering  <jim@meyering.net>
40341
40342         * modules/check-include-files: Move to ../ and rename to...
40343         * check-module: ...this.
40344
40345 2005-03-25  Jim Meyering  <jim@meyering.net>
40346
40347         * modules/xvasprintf (Files): Add xalloc.h.
40348
40349 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
40350
40351         * modules/gettext (Files): config/config.rpath ->
40352         build-aux/config.rpath
40353         * modules/iconv (Files): Likewise.
40354         Problem reported by Oskar Liljeblad.
40355
40356 2005-03-23  Jim Meyering  <jim@meyering.net>
40357
40358         * modules/check-include-files: New script to check for
40359         missing dependencies, multiple includes, etc.
40360
40361         * modules/c-strtold (Depends-on): Add xalloc.
40362         * modules/c-strtod (Depends-on): Add xalloc.
40363         * modules/hash (Depends-on): Add xalloc.
40364         (Files): Remove lib/xalloc.h.
40365
40366         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
40367         * modules/userspec (Files): Add lib/inttostr.h.
40368
40369 2005-03-23  Jim Meyering  <jim@meyering.net>
40370
40371         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
40372
40373 2005-03-22  Jim Meyering  <jim@meyering.net>
40374
40375         * modules/stat-macros: New module.
40376         * modules/canonicalize, modules/euidaccess, modules/file-type,
40377         * modules/filemode, modules/lchown, modules/makepath,
40378         * modules/rmdir, modules/stat: Depend on new stat-macros module
40379         rather than listing lib/stat-macros.h manually.
40380         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
40381
40382 2005-03-22  Jim Meyering  <jim@meyering.net>
40383
40384         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
40385
40386 2005-03-22  Bruno Haible  <bruno@clisp.org>
40387
40388         * config/srclist.txt: Replace target directory 'config' with
40389         'build-aux'.
40390         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
40391         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
40392         ../build-aux/.
40393
40394 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
40395
40396         * modules/chdir-long (Depends-on): Add mempcpy.
40397
40398         * modules/acl, modules/backupfile, modules/c-strtod,
40399         modules/c-strtold, modules/canon-host, modules/canonicalize,
40400         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
40401         modules/exclude, modules/exitfail, modules/file-type,
40402         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
40403         modules/getdate, modules/getline, modules/getpagesize,
40404         modules/getpass, modules/getugroups, modules/group-member,
40405         modules/hard-locale, modules/hash, modules/human, modules/idcache,
40406         modules/inttostr, modules/long-options, modules/makepath,
40407         modules/md5, modules/memcasecmp, modules/memcoll,
40408         modules/modechange, modules/mountlist, modules/path-concat,
40409         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
40410         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
40411         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
40412         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
40413         modules/strftime, modules/strndup, modules/strverscmp,
40414         modules/timespec, modules/unlocked-io, modules/userspec,
40415         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
40416         modules/yesno:
40417         Remove lib_SOURCES line from Makefile.am section, as this is now
40418         done automatically by the corresponding Autoconf macro.
40419
40420 2005-03-21  Jim Meyering  <jim@meyering.net>
40421
40422         Changes imported from coreutils.
40423
40424         * lib/cycle-check.c: Don't include xalloc.h.
40425
40426         * lib/path-concat.c: Don't include assert.h.
40427         (path_concat): Remove assertion that would have triggered
40428         for ABASE starting with more than one slash.
40429         Reported by Andreas Schwab.
40430
40431         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
40432         properly when ABASE is an absolute file name.
40433         Correct the description of this function.
40434         Include <assert.h>.
40435         Add an assertion and a test driver.
40436         This fixes a bug introduced on 2004-07-02.
40437         Andreas Schwab reported the resulting failure of cp --parents:
40438         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
40439
40440 2005-03-21  Jim Meyering  <jim@meyering.net>
40441
40442         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
40443         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
40444
40445 2005-03-21  Jim Meyering  <jim@meyering.net>
40446         and  Paul Eggert  <eggert@cs.ucla.edu>
40447
40448         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
40449         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
40450         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
40451         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
40452         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
40453         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
40454         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
40455         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
40456         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
40457         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
40458         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
40459         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
40460         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
40461         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
40462         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
40463         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
40464         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
40465         for these modules.
40466
40467 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
40468
40469         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
40470         (which shouldn't happen), generate nothing instead of returning 0
40471         immediately, so that nstrftime (NULL, ...) doesn't return 0.
40472
40473 2005-03-16  Bruno Haible  <bruno@clisp.org>
40474
40475         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
40476         HAVE_LONGLONG_64BIT.
40477
40478 2005-03-16  Bruno Haible  <bruno@clisp.org>
40479
40480         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
40481         HAVE_LONGLONG_64BIT.
40482
40483 2005-03-16  Bruno Haible  <bruno@clisp.org>
40484
40485         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
40486         HAVE_LONGLONG_64BIT.
40487
40488 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
40489
40490         * lib/strftime.c (my_strftime): Prepend space to format so that we can
40491         reliably distinguish strftime failure from empty output on POSIX
40492         hosts.
40493
40494 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
40495
40496         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
40497         (iconv_string): Don't guess a size-zero buffer, as that might cause
40498         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
40499         result would be 'too large', where 'too large' is (heuristically)
40500         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
40501         overflow concerns.  This will prevent some unwanted malloc failures
40502         when the inputs are very large.
40503
40504 2005-03-15  Karl Berry  <karl@gnu.org>
40505
40506         * config/srclist.txt (config.rpath): from gettext.
40507         * config/config.rpath: update.
40508
40509 2005-03-15  Bruno Haible  <bruno@clisp.org>
40510
40511         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
40512         to 'negate'.
40513
40514         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
40515         variable.
40516
40517         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
40518         results.
40519
40520 2005-03-14  Simon Josefsson  <jas@extundo.com>
40521
40522         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
40523         <fx@gnu.org>.
40524
40525 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
40526
40527         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
40528         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
40529         intprops.h.
40530         * lib/strtol.c: Likewise.
40531
40532 2005-03-14  Jim Meyering  <jim@meyering.net>
40533
40534         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
40535         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
40536         to be nonzero so that we (and caller) can detect the difference
40537         between a valid zero-length expansion and an error return, even
40538         when the underlying strftime fails before writing anything into
40539         that location.
40540
40541 2005-03-14  Bruno Haible  <bruno@clisp.org>
40542
40543         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
40544         Update from GNU gettext 0.14.3.
40545
40546 2005-03-10  Jim Meyering  <jim@meyering.net>
40547
40548         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
40549
40550 2005-03-10  Jim Meyering  <jim@meyering.net>
40551
40552         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
40553         so that this module works on systems without fchdir.
40554
40555 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
40556
40557         Factor int-properties macros into a single file, except for
40558         glibc-related files.
40559         * lib/intprops.h: New file.
40560         * lib/getloadavg.c: Include it instead of limits.h.
40561         (INT_STRLEN_BOUND): Remove.
40562         * lib/human.c: Include intprops.h.
40563         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
40564         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
40565         302/1000.
40566         * lib/inttostr.h: Include intprops.h instead of limits.h.
40567         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
40568         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
40569         for consistency with intprops.h.
40570         (time_t_is_integer, twos_complement_arithmetic): Use them.
40571         * lib/sig2str.h: Include <signal.h>, intprops.h.
40572         (INT_STRLEN_BOUND): Remove.
40573         * lib/strftime.c (TYPE_SIGNED): Remove.
40574         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
40575         * lib/strtol.c: Adjust comments to match intprops.h.
40576         * lib/userspec.c: Include intprops.h.
40577         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
40578         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
40579         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
40580         instead of rolling our own expressions.
40581         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
40582
40583         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
40584         instead of int.
40585         (my_strftime): Do not mishandle years close to INT_MAX, by doing
40586         the right thing even if adding 1900 would overflow.  Similarly
40587         for tm_mon + 1 and tm_yday + 1.
40588         Make %Y always equivalent to %C%y, and similarly for %G and %g.
40589         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
40590         (DO_SIGNED_NUMBER): New macro.
40591         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
40592
40593 2005-03-07  Bruno Haible  <bruno@clisp.org>
40594
40595         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
40596
40597 2005-03-07  Bruno Haible  <bruno@clisp.org>
40598
40599         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
40600
40601 2005-03-04  Derek R. Price  <derek@ximbiot.com>
40602
40603         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
40604         (func_import): Only replace files via --import when they have actually
40605         changed.
40606
40607 2005-03-03  Derek R. Price  <derek@ximbiot.com>
40608
40609         * m4/mmap-anon.m4: New file.
40610         * m4/pagealign_alloc.m4: New file.
40611
40612 2005-03-03  Derek R. Price  <derek@ximbiot.com>
40613             Bruno Haible  <bruno@clisp.org>
40614
40615         * modules/pagealign_alloc: New file.
40616         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
40617
40618 2005-03-03  Derek R. Price  <derek@ximbiot.com>
40619             Bruno Haible  <bruno@clisp.org>
40620
40621         * lib/pagealign_alloc.h: New file.
40622         * lib/pagealign_alloc.c: New file.
40623
40624 2005-03-03  Bruno Haible  <bruno@clisp.org>
40625
40626         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
40627         Use an all-permissive copyright notice, recommended by RMS.
40628
40629 2005-03-02  Bruno Haible  <bruno@clisp.org>
40630
40631         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
40632         of AIX, the replacement has to be done only after <string.h> is
40633         included, therefore not in config.h. stpncpy.h does the replacement,
40634         and stpncpy.c uses it.
40635
40636 2005-03-02  Bruno Haible  <bruno@clisp.org>
40637
40638         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
40639         stpncpy.c uses it.
40640
40641 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
40642
40643         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
40644         The workaround isn't strictly needed for POSIX conformance, and
40645         it's too much of a pain to configure and maintain.  We'll ask
40646         people to fix their kernels instead.
40647         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
40648         (NANOSLEEP_BUG_WORKAROUND): Remove.
40649         (xnanosleep): Remove the workaround.
40650
40651 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
40652
40653         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
40654         Reported by Derek Price.
40655         (Include): Add "timespec.h".
40656
40657         * modules/xnanosleep (Depends-on): Remove gethrxtime.
40658
40659 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
40660
40661         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
40662         to detect nanosleep bug.
40663
40664 2005-03-01  Bruno Haible  <bruno@clisp.org>
40665
40666         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
40667
40668 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
40669
40670         * modules/gethrxtime: New file.
40671         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
40672         (Depends-on): Add gethrxtime.
40673         (configure.ac): Add gl_XNANOSLEEP.
40674         (Makefile.am): Remove lib_SOURCES line.
40675
40676 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
40677
40678         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
40679         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
40680
40681 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
40682
40683         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
40684         * lib/timespec.h (gettime): Return void, since it always
40685         succeeds now.  All uses changed.
40686         * lib/gettime.c (gettime) Likewise.
40687         [HAVE_NANOTIME]: Prefer nanotime.
40688         Assume gettimeofday succeeds, as POSIX requires.
40689         Assime time () succeeds, since other code already does.
40690         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
40691         (timespec_subtract): Remove.
40692         (NANOSLEEP_BUG_WORKAROUND): New constant.
40693         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
40694         things considerably.  Use it only on GNU/Linux hosts, since the
40695         workaround shouldn't be needed elsewhere.
40696
40697 2005-02-24  Bruno Haible  <bruno@clisp.org>
40698
40699         * modules/gettext (Files): Add m4/glibc2.m4.
40700
40701 2005-02-24  Bruno Haible  <bruno@clisp.org>
40702
40703         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
40704         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
40705         * m4/progtest.m4:
40706         Update from GNU gettext 0.14.2.
40707         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
40708
40709 2005-02-24  Bruno Haible  <bruno@clisp.org>
40710
40711         * lib/localcharset.c: Update from GNU gettext 0.14.2.
40712         * lib/config.charset: Update from GNU gettext 0.14.2.
40713
40714 2005-02-24  Bruno Haible  <bruno@clisp.org>
40715
40716         * lib/gettext.h: Update from GNU gettext 0.14.2.
40717
40718 2005-02-23  Simon Josefsson  <jas@extundo.com>
40719
40720         * m4/iconvme.m4: New file.
40721
40722 2005-02-23  Jim Meyering  <jim@meyering.net>
40723
40724         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
40725         change.
40726         Thanks to Bruno Haible for catching it.
40727
40728 2005-02-22  Simon Josefsson  <jas@extundo.com>
40729
40730         * modules/iconvme: New file.
40731
40732         * MODULES.html.sh: Add iconvme.
40733
40734 2005-02-22  Simon Josefsson  <jas@extundo.com>
40735
40736         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
40737
40738 2005-02-22  Simon Josefsson  <jas@extundo.com>
40739
40740         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
40741
40742 2005-02-22  Jim Meyering  <jim@meyering.net>
40743
40744         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
40745         s/ifndef/ifdef/.
40746
40747 2005-02-20  Neil Conway  <neilc@samurai.com>
40748
40749         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
40750         returned by OSX/Darwin if the specified buffer is not large
40751         enough for the hostname.
40752
40753 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
40754
40755         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
40756         pass it to _help, otherwise the latter coredumps trying to
40757         dereference state.root_argp.
40758
40759 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
40760
40761         * modules/chdir-long (Depends-on): Add memrchr.
40762         * modules/memrchr (Files): Add lib/memrchr.h.
40763         (Include): "memrchr.h".
40764
40765 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
40766
40767         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
40768
40769 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
40770
40771         * lib/memrchr.h: New file.
40772         * lib/chdir-long.c: Include it.
40773         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
40774         Don't bother including stddef.h.
40775
40776 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
40777
40778         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
40779         inclusion.
40780         Include <sys/types.h>, for dev_t.
40781         (ME_DUMMY, ME_REMOTE): Move from here....
40782         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
40783         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
40784         Dmitry V. Levin.
40785         Include mountlist.h first, to test the interface.
40786
40787 2005-01-29  Bruno Haible  <bruno@clisp.org>
40788
40789         * lib/progname.c (program_name): Initialize.
40790         Needed when linking statically on MacOS X.
40791
40792 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
40793
40794         Sync from coreutils.
40795         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
40796         (Depends-on): Add c-strtod.
40797         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
40798
40799 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
40800
40801         Sync from coreutils.
40802         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
40803
40804         Remove files that are specific to coreutils.
40805         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
40806
40807 2005-01-28  Bruno Haible  <bruno@clisp.org>
40808
40809         * modules/javacomp: New file.
40810         * MODULES.html.sh (Java): Add javacomp.
40811
40812 2005-01-28  Bruno Haible  <bruno@clisp.org>
40813
40814         * m4/javacomp.m4: New file, from GNU gettext.
40815
40816 2005-01-28  Bruno Haible  <bruno@clisp.org>
40817
40818         * lib/javacomp.sh.in: New file, from GNU gettext.
40819         * lib/javacomp.h: New file, from GNU gettext.
40820         * lib/javacomp.c: New file, from GNU gettext.
40821
40822 2005-01-26  Simon Josefsson  <jas@extundo.com>
40823
40824         * lib/gai_strerror.c: Use GPL in header.
40825
40826 2005-01-26  Bruno Haible  <bruno@clisp.org>
40827
40828         * modules/javaexec: New file.
40829         * MODULES.html.sh (Java): Add javaexec.
40830
40831 2005-01-26  Bruno Haible  <bruno@clisp.org>
40832
40833         * m4/javaexec.m4: New file, from GNU gettext.
40834
40835 2005-01-26  Bruno Haible  <bruno@clisp.org>
40836
40837         * lib/javaexec.sh.in: New file, from GNU gettext.
40838         * lib/javaexec.h: New file, from GNU gettext.
40839         * lib/javaexec.c: New file, from GNU gettext.
40840
40841 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
40842
40843         * modules/lchown (Depends-on): Remove lchown.h
40844
40845 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
40846
40847         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
40848         must be defined if the header file was not found, in order
40849         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
40850
40851 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
40852
40853         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
40854         initializers for struct pentry_state.
40855         (__argp_error): Check return value of __asprintf
40856         (__argp_failure): Translate error message
40857
40858         * lib/argp-parse.c: Removed braces around the expansion of N_()
40859
40860 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
40861
40862         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
40863         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
40864         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
40865         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
40866         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
40867         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
40868         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
40869         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
40870         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
40871         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
40872         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
40873         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
40874         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
40875         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
40876         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
40877         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
40878         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
40879         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
40880         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
40881         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
40882         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
40883         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
40884         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
40885         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
40886         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
40887         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
40888         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
40889         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
40890         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
40891         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
40892         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
40893         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
40894         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
40895         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
40896         xstrtol.m4, xstrtoumax.m4, yesno.m4:
40897         Use an all-permissive copyright notice, recommended by RMS.
40898
40899 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
40900
40901         * modules/chdir-long (Depends-on): Remove mempcpy.
40902
40903 2005-01-21  Jim Meyering  <jim@meyering.net>
40904
40905         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
40906         same value as for Solaris 9.
40907
40908         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
40909         component length.  This included changing the parameter to be
40910         of type `char *' rather than `char const *'.
40911         * lib/chdir-long.h (chdir_long): Update prototype.
40912
40913         * lib/openat.c (fdopendir, fstatat): New functions.
40914         * lib/openat.h: Include headers required for use of DIR and struct
40915         stat.
40916         [AT_SYMLINK_NOFOLLOW]: Define.
40917         (fdopendir, fstatat): Add prototypes.
40918
40919 2005-01-21  Bruno Haible  <bruno@clisp.org>
40920
40921         * modules/classpath: New file.
40922         * MODULES.html.sh (Java): Add classpath.
40923
40924 2005-01-21  Bruno Haible  <bruno@clisp.org>
40925
40926         * lib/classpath.h: New file, from GNU gettext.
40927         * lib/classpath.c: New file, from GNU gettext.
40928
40929 2005-01-20  Simon Josefsson  <jas@extundo.com>
40930
40931         * modules/version-etc-fsf: New file.
40932
40933 2005-01-20  Simon Josefsson  <jas@extundo.com>
40934
40935         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
40936         * lib/version-etc.c: Remove version_etc_copyright.
40937         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
40938         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
40939
40940 2005-01-20  Simon Josefsson  <jas@extundo.com>
40941
40942         * lib/base64.h (isbase64): Add.
40943
40944         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
40945         using a unsigned prototype, don't inline.
40946         (base64_decode): Use it.
40947
40948 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
40949
40950         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
40951         it.
40952
40953 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
40954
40955         * lib/save-cwd.c (save_cwd): Remove code to support the case
40956         where fchdir is missing or flaky.
40957
40958 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
40959
40960         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
40961
40962 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
40963
40964         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
40965         AC_LIBSOURCES now does this.
40966         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
40967         with new ullong_max module.
40968
40969 2005-01-19  Bruno Haible  <bruno@clisp.org>
40970
40971         * modules/sh-quote: New file.
40972         * MODULES.html.sh (Executing programs): Add sh-quote.
40973
40974 2005-01-19  Bruno Haible  <bruno@clisp.org>
40975
40976         * lib/sh-quote.h: New file, from GNU gettext.
40977         * lib/sh-quote.c: New file, from GNU gettext.
40978
40979 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
40980
40981         Merge from coreutils.
40982         * m4/ullong_max.m4: New file.
40983         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
40984         (gl_MACROS): Assume localeconv exists.
40985
40986 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
40987
40988         Merge changes from coreutils, as described below in several
40989         changelogs dated today.
40990
40991         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
40992         (O_DIRECTORY): Remove; not needed here, since "." must be
40993         a directory.  All uses removed.
40994         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
40995         universal on Suns, and we also need to test for IRIX.
40996         Revamp code to use 'if' rather than '#if'.
40997         Avoid unnecessary comparison of cwd->desc to 0.
40998
40999         * lib/utimens.c (futimens): Robustify the previous patch, by checking
41000         for known valid error numbers rather than observed invalid ones.
41001
41002 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
41003
41004         * modules/ullong_max: New file.
41005
41006         * modules/chdir-long, modules/openat: New files.
41007         * modules/save-cwd (Depends-on): Depend on chdir-long.
41008         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
41009
41010 2005-01-18  Jim Meyering  <jim@meyering.net>
41011
41012         Merge from coreutils.
41013         * m4/chdir-long.m4, m4/openat.m4: New files.
41014         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
41015         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
41016         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
41017         is sane and DOES follow symlinks.  Besides, testing 20 different
41018         systems found no broken chown implementations.
41019         Prompted by a change in rsync's copy of this macro.
41020         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
41021
41022         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
41023
41024         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
41025         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
41026         NULL-means-set-to-current-time semantics.
41027         Remove temporary file immediately, rather than waiting
41028         for configure's at-exit trap code to do it.
41029
41030 2005-01-18  Jim Meyering  <jim@meyering.net>
41031
41032         * lib/version-etc.c (version_etc_copyright): Update copyright date.
41033
41034         * lib/utimens.c (futimens): Account for the fact that futimes
41035         can also fail with errno == ENOSYS or errno == ENOENT.
41036         Patch from Dmitry V. Levin.
41037
41038         Change the name of the robust chdir function from chdir to chdir_long.
41039         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
41040         (restore_cwd): Use chdir_long, not chdir.
41041         * lib/chdir-long.c: Renamed from chdir.c.
41042         * lib/chdir-long.h: Renamed from chdir.h.
41043         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
41044         Hurd.
41045
41046 2005-01-18  Bruno Haible  <bruno@clisp.org>
41047
41048         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
41049         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
41050         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
41051         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
41052         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
41053         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
41054         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
41055         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
41056         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
41057         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
41058         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
41059         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
41060         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
41061         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
41062         Use an all-permissive copyright notice, recommended by RMS.
41063
41064 2005-01-18  Bob Proulx  <bob@proulx.com>
41065
41066         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
41067         simplify offsetof() macro construct to avoid compile failure with
41068         native HP-UX 11.0 ANSI C compiler.
41069
41070 2005-01-17  Bruno Haible  <bruno@clisp.org>
41071
41072         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
41073         redundant because stpncpy.m4 takes care of it.
41074
41075 2005-01-17  Bruno Haible  <bruno@clisp.org>
41076
41077         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
41078
41079 2005-01-17  Bruno Haible  <bruno@clisp.org>
41080
41081         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
41082         used.
41083
41084 2005-01-17  Bruno Haible  <bruno@clisp.org>
41085
41086         * lib/fwriteerror.h (fwriteerror): Change specification to include
41087         fclose.
41088         * lib/fwriteerror.c: Include <stdbool.h>.
41089         (fwriteerror): At the end, close the file stream. Record whether
41090         stdout was already closed.
41091
41092 2005-01-17  Bruno Haible  <bruno@clisp.org>
41093
41094         * lib/execute.c (environ): Declare if needed.
41095         * lib/pipe.c (environ): Likewise.
41096         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
41097
41098 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
41099
41100         * modules/argp: Depend on vsnprintf
41101
41102 2005-01-10  Jim Meyering  <jim@meyering.net>
41103
41104         * modules/closeout (Depends-on): Add atexit.
41105
41106 2005-01-06  Bruno Haible  <bruno@clisp.org>
41107
41108         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
41109
41110 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
41111
41112         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
41113         definitions to be after all include files, to avoid collisions.
41114         Problem reported by Bob Proulx.
41115
41116 2005-01-04  Jim Meyering  <jim@meyering.net>
41117
41118         Changes imported from coreutils.
41119         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
41120         as the mkstemp template, use a temporary directory and an
41121         8.3-friendly template to avoid trouble on systems like DJGPP.
41122         Reported by Juan M. Guerrero via Stepan Kasal.
41123         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
41124         close. Remove the temporary directory right away, rather than waiting
41125         for configure's at-exit trap code to do it.
41126         Suggestion from Stepan Kasal.
41127
41128 2005-01-01  Simon Josefsson  <jas@extundo.com>
41129
41130         * gnulib-tool: Print #include directives when --import'ing.
41131
41132 2004-12-28  Simon Josefsson  <jas@extundo.com>
41133
41134         * tests/test-base64.c: Include required header files.  Remove
41135         unused variables.
41136
41137 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
41138
41139         * modules/error (Depends-on): Remove gettext.
41140
41141 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
41142
41143         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
41144         not needed.  This removes a dependency on the gettext module.
41145         [defined _LIBC]: Do not include <libintl.h>; not needed.
41146
41147 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
41148
41149         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
41150         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
41151
41152 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
41153
41154         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
41155         HAVE_DECL_STRTOLD.
41156
41157 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
41158
41159         * modules/getdate (Depends-on): Remove alloca-opt.
41160
41161 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
41162
41163         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
41164
41165 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
41166
41167         * lib/argp-parse.c: Include <stddef.h>.
41168         (alignof, alignto): New macros.
41169         (parser_init): Don't assume that void * is aligned sufficiently
41170         for struct option.
41171
41172         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
41173         need to extend the stack.
41174         (YYINITDEPTH): New macro, so that the initial stack isn't overly
41175         large.
41176
41177 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
41178
41179         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
41180
41181 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
41182
41183         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
41184         (2004-10-24) change.  Apparently this was a false alarm.
41185
41186         * modules/getdate: Depend on alloca-opt, not alloca.
41187
41188 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
41189
41190         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
41191         Remove now-obsolete comment about AIX.
41192         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
41193         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
41194         (YYMAXDEPTH): New macro.
41195
41196 2004-12-18  Simon Josefsson  <jas@extundo.com>
41197
41198         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
41199
41200 2004-12-18  Bruno Haible  <bruno@clisp.org>
41201
41202         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
41203
41204 2004-12-18  Bruno Haible  <bruno@clisp.org>
41205
41206         * lib/fatal-signal.c (fatal_signals): Make non-const.
41207         (init_fatal_signals): New function.
41208         (uninstall_handlers, install_handlers): Ignore signals that were set to
41209         SIG_IGN.
41210         (at_fatal_signal): Call init_fatal_signals.
41211         (init_fatal_signal_set): Likewise. Ignore signals that were set to
41212         SIG_IGN.
41213         Reported by Paul Eggert.
41214
41215 2004-12-18  Bruno Haible  <bruno@clisp.org>
41216
41217         * doc/alloca.texi: New file.
41218         * doc/alloca-opt.texi: New file.
41219
41220 2004-12-17  Jim Meyering  <jim@meyering.net>
41221
41222         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
41223         Otherwise, install-sh could exit with improper exit status when
41224         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
41225
41226 2004-12-16  Simon Josefsson  <jas@extundo.com>
41227
41228         * tests/test-base64.c: Add license.
41229
41230 2004-12-15  Stepan Kasal  <address@hidden>
41231
41232         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
41233
41234 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
41235
41236         * modules/getcwd (Files): Add m4/d-ino.m4.
41237         Suggested by Mark D. Baushke.
41238
41239 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
41240
41241         * lib/getdate.y (textint): New member "negative".
41242         (time_zone_hhmm): New function.
41243         Expect 14 shift-reduce conflicts, not 13.
41244         (o_colon_minutes): New rule.
41245         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
41246         (yylex): Set the "negative" member of signed numbers.
41247
41248 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
41249
41250         * doc/getdate.texi (Time of day items, Time zone items):
41251         Describe new formats +00:00, UTC+00:00.
41252
41253 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
41254
41255         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
41256         spurious "-l"s.  Problem reported by Stepan Kasal.
41257
41258 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
41259
41260         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
41261         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
41262
41263 2004-12-04  Simon Josefsson  <jas@extundo.com>
41264
41265         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
41266         Vandoorselaere <yoann@prelude-ids.org>.
41267
41268 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
41269
41270         Changes imported from coreutils.
41271         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
41272         exist.
41273         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
41274
41275 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
41276
41277         Changes imported from coreutils.
41278         * lib/hard-locale.c: Assume <locale.h> exists.
41279         Include "strdup.h".
41280         (GLIBC_VERSION): New macro.
41281         (hard_locale): Assume setlocale exists.
41282         Rewrite to avoid #ifdef.
41283         Use strdup rather than malloc + strcpy.
41284         * lib/human.c: Assume <locale.h> exists.
41285         (human_readable): Assume localeconv exists.
41286
41287 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
41288
41289         * modules/hard-locale (Depends-on): Add strdup.
41290
41291 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
41292
41293         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
41294         convert T2, not T.  (Imported from libc.)
41295
41296 2004-11-30  Simon Josefsson  <jas@extundo.com>
41297
41298         * modules/restrict (License): Change to LGPL.
41299
41300 2004-11-30  Simon Josefsson  <jas@extundo.com>
41301
41302         * m4/restrict.m4: Add copyright and copying conditions.
41303
41304 2004-11-30  Simon Josefsson  <jas@extundo.com>
41305
41306         * m4/base64.m4: New file.
41307
41308 2004-11-30  Simon Josefsson  <jas@extundo.com>
41309
41310         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
41311         base64.
41312
41313         * tests/test-base64.c: New file.
41314
41315         * modules/base64: New file.
41316
41317 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
41318
41319         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
41320         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
41321
41322         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
41323
41324 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
41325
41326         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
41327         (__getcwd.c): Don't restore errno; glibc doesn't.
41328         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
41329         first, falling back to our code only if its results look suspicious.
41330         Ensure that the resulting buffer is only as large as necessary.
41331
41332         * lib/readutmp.c: Include readutmp.h first.
41333         Include <errno.h>, since readutmp.h no longer does that.
41334         * lib/readutmp.h: Don't include <errno.h>,
41335         <sys/param.h>, <time.h>; not needed to establish interface.
41336         (errno): Remove decl.
41337         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
41338         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
41339         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
41340
41341 2004-11-28  Simon Josefsson  <jas@extundo.com>
41342
41343         * lib/base64.h, base64.c: New file.
41344
41345 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
41346
41347         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
41348
41349 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
41350
41351         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
41352         (Depends-on): Remove pathmax, same.  Add mempcpy.
41353         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
41354         (Makefile.am): Append getcwd.h to lib_SOURCES.
41355         (Include): Add getcwd.h.
41356         (Maintainer): Change from Jim Meyering to "all, glibc",
41357         since getdate now uses intended-for-glibc code.
41358         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
41359         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
41360
41361 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
41362
41363         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
41364         HP's ANSI C compiler.
41365         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
41366         Declaring int functions causes warnings on some modern systems and
41367         shouldn't be needed to compile on ancient ones.
41368         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
41369         defined.
41370
41371         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
41372         with the following changes.
41373         (__set_errno): Parenthesize properly.
41374         Include <stdbool.h>.
41375         (MIN, MAX, MATCHING_INO): New macros.
41376         (__getcwd): Define with prototype, not K&R form.
41377         Use heuristics to allocate default buffer on stack if possible.
41378         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
41379         behavior, and to avoid the PATH_MAX limit when computing
41380         ../../../../...
41381         Use MATCHING_INO to compare inode number to file.
41382         Check for arithmetic overflow in size calculations.
41383         Fix bug in reallocation of dot array that caused getcwd to fail
41384         on directories nested deeper than 75.
41385         Be more careful about saving errno on error.
41386         Do not use realloc; use only free+malloc, as this is a bit
41387         more flexible and avoids a needless copy operation.
41388         Do not inspect st_dev and st_ino for symbolic links; POSIX
41389         doesn't specify the latter.
41390         Check for closedir errors.
41391         Avoid needless casts.
41392         Use "#ifdef weak_alias" around weak_alias, to be like other
41393         glibc code.
41394         The following changes to getcwd.c have effect only when used in
41395         gnulib; they have no effect inside glibc proper.
41396         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
41397         as alloca isn't used.
41398         (alloca, __alloca): Likewise.
41399         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
41400         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
41401         unconditionally, as gnulib assumes C89 or better.
41402         Do not include <sys/param.h>.
41403         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
41404         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
41405         better.
41406         (NULL) [!defined NULL]: Remove; we assume C89 or better.
41407         Include <dirent.h> in a way that is compatible with modern Autoconf.
41408         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
41409         New macros, if not already defined.
41410         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
41411         Use "_LIBC", not "defined _LIBC", for consistency.
41412         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
41413         a mempcpy module.
41414         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
41415         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
41416         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
41417         credit only to Jim Meyering and adjust the copyright dates.
41418         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
41419         <stdlib.h>, <unistd.h>, "pathmax.h".
41420         Instead, include "xgetcwd.h" (first) and "getcwd.h".
41421         (INITIAL_BUFFER_SIZE): Remove.
41422         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
41423
41424 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
41425
41426         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
41427         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
41428         Use the _ONCE methods, for efficiency.
41429         Check for fcntl.h.  In test program, include <errno.h>
41430         and <fcntl.h> if available.  Remove old K&R cruft from
41431         test program.  Check for common errors in GNU/Linux,
41432         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
41433         don't do AC_LIBOBJ, as that's getcwd.m4's job.
41434         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
41435         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
41436         name accordingly.
41437         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
41438         accommodate new getcwd.c.
41439         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
41440         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
41441         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
41442         that's all we need now.
41443
41444 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
41445
41446         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
41447         argp-parse.c depends on getopt internals, that means we should
41448         always use our getopt, to be on the safe side.
41449         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
41450         order not to spoil the result of an eventual previous invocation
41451         of gl_GETOPT_SUBSTITUTE.
41452
41453 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
41454
41455         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
41456         redefinition warnings. To avoid them, include the defines
41457         in `#if !defined __need_getopt ... #endif'. The only place
41458         where __getopt_argv_const is used is in definitions
41459         of getopt_long and getopt_long_only below, which are as well
41460         protected by `#ifndef __need_getopt'.
41461         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
41462         __need_getopt after including <stdio.h> and <unistd.h> These
41463         headers might have defined it.
41464
41465 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
41466
41467         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
41468
41469 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
41470
41471         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
41472         (futimens): New function, which uses futimes if available.
41473         (futimens, utimens): Support timespec==NULL, with same semantics
41474         as utime and utimens.
41475         * lib/utimens.h (futimens): New decl.
41476
41477 2004-11-23  Jim Meyering  <jim@meyering.net>
41478
41479         * lib/getopt_.h: Remove trailing blanks.
41480
41481 2004-11-23  Jim Meyering  <jim@meyering.net>
41482
41483         * lib/__fpending.c: Add comment.
41484
41485 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
41486
41487         * modules/canonicalize (Depends-on): Add xreadlink.
41488         Problem reported by James Youngman.
41489
41490 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
41491
41492         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
41493         New macros.
41494         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
41495         optopt): Use them instead of invoking ## directly; otherwise, the
41496         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
41497
41498 2004-11-19  Bruno Haible  <bruno@clisp.org>
41499
41500         * lib/strtok_r.c: Move comments from here...
41501         * lib/strtok_r.h: ... to here.
41502
41503 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
41504
41505         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
41506         implementations that mishandle size_t overflow.
41507
41508 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
41509
41510         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
41511         might fail.  Problem reported by Yoann Vandoorselaere.
41512         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
41513         implementations that mishandle size_t overflow.
41514
41515 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
41516
41517         * modules/canon-host (Depends-on): Add strdup.
41518
41519 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
41520
41521         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
41522
41523 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
41524
41525         * lib/canon-host.c: Include "strdup.h".
41526         (canon_host): Use getaddrinfo if available, so that IPv6 works.
41527         Use strdup instead of malloc/strcpy to duplicate strings.
41528
41529         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
41530         (human_space_before_unit): New constant.
41531         * lib/human.c (human_readable): Support it.
41532
41533         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
41534         (xgetcwd): Set errno correctly when failing.
41535         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
41536         the failure is actually due to a PATH_MAX problem.
41537
41538         Further getopt changes to make it more likely that glibc will
41539         buy the changes back.
41540         * lib/getopt.c (POSIXLY_CORRECT): New constant.
41541         (getopt): Use it, so to preserve glibc semantic
41542         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
41543         when compiling for libc.
41544         * lib/getopt_.h (__getopt_argv_const): Bring it back.
41545         (getopt_long, getopt_long_only): Use it.
41546
41547         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
41548         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
41549         (getopt): Argv is now char * const *, as per standard.
41550         (_getopt_internal_r, _getopt_internal): Argv is now char **,
41551         not char *__getopt_argv_const *.
41552         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
41553         _getopt_long_only_r): Likewise.
41554         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
41555         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
41556         _getopt_long_r, _getopt_long_only_r): Likewise.
41557         * lib/getopt_.h (__getopt_argv_const): Remove.
41558         (getopt): Argv is now char * const *, as per standard.
41559
41560         * lib/getdate.y (tORDINAL): New token.
41561         (day, relunit): Allow it for relative times.
41562         (relative_time_table): Use tORDINAL for ordinals.
41563
41564 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
41565
41566         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
41567         Document that "second" isn't allowed as an ordinal number.
41568
41569 2004-11-16  Jim Meyering  <jim@meyering.net>
41570
41571         * modules/closeout (Depends-on): Add fpending.
41572
41573 2004-11-15  Jim Meyering  <jim@meyering.net>
41574
41575         * lib/closeout.c: Include "__fpending.h" once again.
41576         Include <stdbool.h>.
41577         (close_stdout): Don't fail just because stdout was closed initially,
41578         since some programs don't write to stdout in the normal course of
41579         operation (other than --version and --help), and we don't want this
41580         function to make e.g. `touch file >&-' fail.
41581         But do fail if it was closed and someone has tried to write to it.
41582         E.g., `printf foo >&-' must fail.
41583
41584 2004-11-13  Jim Meyering  <jim@meyering.net>
41585
41586         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
41587
41588 2004-11-12  Simon Josefsson  <jas@extundo.com>
41589
41590         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
41591         small doc fix is still pending.
41592
41593 2004-11-11  Simon Josefsson  <jas@extundo.com>
41594
41595         * modules/strtok_r: New file.
41596
41597         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
41598         strtok_r.
41599
41600 2004-11-11  Simon Josefsson  <jas@extundo.com>
41601
41602         * m4/strtok_r.m4: New file.
41603
41604         * m4/getopt.m4: Replace opterr.
41605
41606 2004-11-11  Simon Josefsson  <jas@extundo.com>
41607
41608         * lib/strtok_r.h, strtok_r.c: New file.
41609
41610 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
41611
41612         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
41613         of replacing opterr, getopt, etc.  This should handle the
41614         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
41615
41616 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
41617
41618         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
41619         we can stop lying to compilers about the constness of argv when we
41620         are compiled outside glibc.
41621         (getopt, getopt_long, getopt_long_only): Use it.
41622         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
41623         _getopt_internal, getopt): Likewise.
41624         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
41625         _getopt_long_only_r): Likewise.
41626         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
41627         _getopt_long_r, _getopt_long_only_r): Likewise.
41628
41629         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
41630         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
41631         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
41632         the other external symbols.
41633         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
41634         declaration, since the above renaming now works around collisions.
41635
41636 2004-11-11  Jim Meyering  <jim@meyering.net>
41637
41638         * lib/linebreak.c: Remove trailing blanks.
41639         * lib/alloca_.h: Likewise.
41640         * lib/acosl.c: Likewise.
41641         * lib/euidaccess.c: Likewise.
41642         * lib/allocsa.h: Likewise.
41643
41644 2004-11-10  Simon Josefsson  <jas@extundo.com>
41645
41646         * m4/getaddrinfo.m4: New file.
41647
41648 2004-11-10  Simon Josefsson  <jas@extundo.com>
41649
41650         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
41651
41652 2004-11-10  Simon Josefsson  <jas@extundo.com>
41653
41654         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
41655         getaddrinfo.
41656
41657         * modules/getaddrinfo: New file.
41658
41659 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
41660
41661         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
41662
41663 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
41664
41665         * lib/mktime.c (SHR): New macro, which is a portable
41666         substitute for >> that should work even on Crays.
41667         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
41668         Problem reported by Mark D. Baushke in
41669         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
41670         * lib/getdate.y (SHR): Likewise.
41671         (tm_diff): Use it.
41672         * lib/strftime.c (SHR): Likewise.
41673         (tm_diff): Use it.
41674         * lib/quotearg.c (struct quoting_options): Use unsigned int for
41675         quote_these_too, so that right shifts are well defined.  All uses
41676         changed.
41677
41678 2004-11-10  Jim Meyering  <jim@meyering.net>
41679
41680         Ensure that no close failure goes unreported.
41681         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
41682         return early when it seems there's nothing to flush.
41683         Don't include __fpending.h.
41684
41685 2004-11-10  Jim Meyering  <jim@meyering.net>
41686
41687         * modules/closeout (Depends-on): Remove fpending.
41688
41689 2004-11-10  Jim Meyering  <jim@meyering.net>
41690
41691         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
41692
41693 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
41694
41695         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
41696         gl_FUNC_STRFTIME.
41697         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
41698         and AC_REQUIRE when possible, to avoid duplicate checks.
41699         Check for <wchar.h>.
41700
41701 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
41702
41703         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
41704
41705 2004-11-09  Bruno Haible  <bruno@clisp.org>
41706
41707         * m4/sockpfaf.m4: New file.
41708
41709 2004-11-05  Bruno Haible  <bruno@clisp.org>
41710
41711         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
41712         Reported by Mark D. Baushke <mdb@cvshome.org>.
41713
41714 2004-11-04  Bruno Haible  <bruno@clisp.org>
41715
41716         2004-09-11  Bruno Haible  <bruno@clisp.org>
41717                 * allocsa.valgrind: New file.
41718         2004-02-06  Bruno Haible  <bruno@clisp.org>
41719                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
41720                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
41721                 Reported by Christopher Seip <chris.seip@hp.com>.
41722
41723 2004-11-04  Bruno Haible  <bruno@clisp.org>
41724
41725         * modules/allocsa (Files): Add lib/allocsa.valgrind.
41726         (Makefile.am): Distribute it.
41727
41728 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
41729
41730         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
41731         with errno == ERANGE if the buffer is too small.
41732         Problem reported by Mark D. Baushke.
41733
41734 2004-11-03  Albert Chin  <china@thewrittenword.com>
41735             Paul Eggert  <eggert@cs.ucla.edu>
41736
41737         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
41738         equivalent, substitute $ac_type for equivalent type rather than
41739         blindly using uint32_t *always* which won't work if uint32_t is not
41740         available.  Define _UINT32_T to work around typedef of uint32_t if
41741         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
41742         2.5.1.
41743
41744 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
41745
41746         * m4/jm-macros.m4: Sync from coreutils.
41747         (gl_MACROS): Check for mbrlen, for pathchk.
41748         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
41749
41750 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
41751
41752         * lib/xreadlink.c (MAXSIZE): New macro.
41753         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
41754         size does not exceed MAXSIZE.  Avoid cast.
41755         As suggested by Mark D. Baushke in
41756         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
41757         if readlink fails with buffer size just under MAXSIZE, try again
41758         with MAXSIZE.
41759
41760 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
41761
41762         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
41763
41764 2004-11-02  Derek R. Price  <derek@ximbiot.com>
41765         and  Paul Eggert  <eggert@cs.ucla.edu>
41766
41767         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
41768         (get_date): Overparenthesize to avoid GCC warning.
41769
41770 2004-11-02  Bruno Haible  <bruno@clisp.org>
41771
41772         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
41773         returns void.
41774
41775 2004-11-02  Bruno Haible  <bruno@clisp.org>
41776
41777         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
41778         function returns void.
41779
41780 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
41781
41782         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
41783         fflush_unlocked, flockfile, funlockfile, funlockfile,
41784         fputs_unlocked, putc_unlocked.
41785
41786 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
41787
41788         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
41789         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
41790         already declared.
41791
41792 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
41793
41794         * modules/getdate (Files): Add doc/getdate.texi.
41795         (Depends-on): Add setenv, xalloc.
41796
41797 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
41798
41799         * lib/getdate.y: Add support for TZ="foo" within a date string.
41800         Fix some bugs near time_t boundaries.  Reject dates with
41801         out-of-range components, e.g., "Sept 31".
41802         Include <stdlib.h>, "setenv.h", "xalloc.h".
41803         (ISDIGIT_LOCALE): Remove; unused.
41804         Note that the TZ and time functions used here are not reentrant.
41805         (mktime_ok, get_tz): New functions.
41806         (TZBUFSIZE): New constant.
41807         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
41808         This requires that we sometimes generate our own TZ="XXX..." setting.
41809
41810 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
41811
41812         * doc/getdate.texi: New file, from coreutils with modifications for
41813         the new TZ parsing.
41814
41815 2004-10-27  Derek R. Price  <derek@ximbiot.com>
41816
41817         * lib/mktime.c (not_equal_tm): Remove redundant check.
41818
41819 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
41820
41821         * modules/regex (lib_SOURCES): Add regex.c.
41822         Reported by James Youngman in
41823         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
41824
41825 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
41826
41827         * lib/getdate.y: Use Bison 1.875 features, and some minor
41828         code cleanups.  This change does not affect semantics.
41829         Don't include <stdlib.h>; no longer needed.
41830         Don't include unlocked-io.h; only the "#if TEST" code uses
41831         stdio, and performance isn't crucial there.
41832         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
41833         Bison 1.875 features as described below.
41834         All uses of "PC." replaced by "pc->".
41835         (YYSTYPE): Add a forward declaration.
41836         (yylex, yyerror): Use full prototypes in forward decls.
41837         Use "%pure-parser" rather than obsolescent "%pure_parser".
41838         Use %parse-param and %lex-param instead of obsolescent
41839         YYPARSE_PARAM and YYLEX_PARAM.
41840         (meridian_table, month_and_day_table, time_units_table,
41841         relative_time_table, time_zone_table, military_table,
41842         lookup_zone, lookup_word, get_date):
41843         Use NULL instead of 0 where appropriate.
41844         (to_hour): Avoid abort (), to avoid a dependency on
41845         stdlib.h.
41846         (yyerror, yylex): Now accepts parser_control * arg.
41847         (main) [TEST]: Use '\0' rather than 0 for char.
41848
41849 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
41850
41851         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
41852
41853 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
41854
41855         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
41856         It's now the caller's responsibility to handle the case where
41857         !HAVE_GETPAGESIZE && !defined getpagesize.
41858
41859         * lib/mktime.c (leapyear): Arg is long int, not int.
41860
41861 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
41862
41863         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
41864
41865 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
41866
41867         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
41868         missing.  Problem reported by James Youngman.
41869
41870 2004-10-16  Simon Josefsson  <jas@extundo.com>
41871
41872         * gnulib-tool: Fix comments.  Fix parse problem.
41873         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
41874
41875 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
41876
41877         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
41878         implementation of getopt_long.  Problem reported by Alexander Taler in:
41879         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
41880
41881 2004-10-15  Bruno Haible  <bruno@clisp.org>
41882
41883         * gnulib-tool: Untabify. Initialize supplied_libname.
41884         (func_usage): More homogenous output.
41885         (func_modules_transitive_closure, func_modules_to_filelist,
41886         func_emit_lib_Makefile_am): New functions.
41887         (func_import): New function, extracted from big case statement. Use
41888         func_get_license, func_modules_transitive_closure,
41889         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
41890         opt_lgpl. Don't use test -a, as it's not portable.
41891         (func_create_testdir): Use func_modules_transitive_closure,
41892         func_modules_to_filelist, func_emit_lib_Makefile_am.
41893
41894 2004-10-15  Bruno Haible  <bruno@clisp.org>
41895
41896         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
41897
41898 2004-10-15  Bruno Haible  <bruno@clisp.org>
41899
41900         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
41901         the portions belonging to each module.
41902         Suggested by Derek Robert Price <derek@ximbiot.com>.
41903
41904 2004-10-12  Simon Josefsson  <jas@extundo.com>
41905
41906         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
41907         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
41908         to real functions.
41909
41910 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
41911
41912         * modules/vsnprintf: New file.
41913
41914 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
41915
41916         * m4/vsnprintf.m4: New file.
41917
41918 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
41919
41920         * lib/vsnprintf.h: New file.
41921         * lib/vsnprintf.c: New file.
41922
41923 2004-10-11  Bruno Haible  <bruno@clisp.org>
41924
41925         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
41926         vsnprintf.
41927
41928 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
41929
41930         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
41931
41932 2004-10-07  Bruno Haible  <bruno@clisp.org>
41933
41934         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
41935         fits into the provided buffer.
41936
41937 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
41938
41939         * lib/diacrit.c, diacrit.h: Add GPL notice.
41940
41941         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
41942         notice.
41943         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
41944         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
41945         This avoids a potential constant-folding bug.
41946
41947 2004-10-05  Bruno Haible  <bruno@clisp.org>
41948
41949         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
41950         for the declaration of strsep.
41951
41952 2004-10-05  Bruno Haible  <bruno@clisp.org>
41953
41954         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
41955
41956 2004-10-04  Simon Josefsson  <jas@extundo.com>
41957
41958         * modules/memmem: New file.
41959         * tests/test-memmem.c: New file.
41960         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
41961
41962 2004-10-04  Simon Josefsson  <jas@extundo.com>
41963
41964         * m4/memmem.m4: New file.
41965
41966 2004-10-04  Simon Josefsson  <jas@extundo.com>
41967
41968         * lib/memmem.h: New file.
41969         * lib/memmem.c: New file, taken from glibc.
41970
41971 2004-10-04  Simon Josefsson  <jas@extundo.com>
41972
41973         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
41974         '#ifdef USE_UNLOCKED_IO'.
41975
41976 2004-10-04  Simon Josefsson  <jas@extundo.com>
41977
41978         * config/srclist.txt: Add memmem from glibc.
41979
41980 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
41981
41982         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
41983
41984         * modules/argmatch, modules/argp, modules/closeout, modules/error,
41985         modules/exclude, modules/getdate, modules/getline,
41986         modules/getndelim2, modules/getpass, modules/getpass-gnu,
41987         modules/getusershell, modules/linebuffer, modules/md5,
41988         modules/mountlist, modules/posixtm, modules/readtokens,
41989         modules/readutmp, modules/regex, modules/sha1,
41990         modules/version-etc, modules/yesno:
41991         Remove dependency on unlocked-io.
41992
41993 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
41994
41995         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
41996
41997         * m4/unlocked-io.m4: Add copyright notice.
41998         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
41999
42000 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
42001
42002         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
42003         * lib/xmalloc.c (xmemdup): Likewise.
42004         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
42005         XFREE): Remove these long-obsolescent macros.
42006         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
42007         * lib/xstrdup.c: Remove.
42008
42009         * lib/regex.c (re_comp): Cast gettext return value to char *,
42010         Problem reported by Martin Neitzel via Mark D. Baushke.
42011
42012 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
42013
42014         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
42015         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
42016         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
42017         regex.c, sha1.c, version-etc.c, yesno.c:
42018         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
42019         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
42020         the includer's responsibility.
42021
42022         Sync from coreutils.
42023
42024         * lib/modechange.c (mode_compile): Don't decrement a pointer that
42025         points to the start of a string, as the C Standard says the
42026         resulting behavior is undefined.
42027
42028         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
42029         simple -> simple_backups, numbered_existing ->
42030         numbered_existing_backups, numbered -> numbered_backups
42031         to avoid shadowing problems.  All uses changed.
42032         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
42033         * lib/backupfile.c (check_extension, numbered_backup):
42034         Rename locals to avoid shadowing 'basename'.
42035         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
42036         once.
42037
42038         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
42039         * lib/.cvsignore: Add getopt.h.
42040
42041 2004-10-04  Bruno Haible  <bruno@clisp.org>
42042
42043         * modules/README: New file.
42044         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
42045         not a module.
42046
42047 2004-10-02  Jim Meyering  <jim@meyering.net>
42048
42049         * lib/dirfd.h, getpagesize.h: Add copyright notice.
42050
42051 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
42052
42053         * modules/strsep: New file.
42054
42055 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
42056
42057         * m4/strsep.m4: New file.
42058
42059 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
42060
42061         * lib/strsep.h: New file.
42062         * lib/strsep.c: New file.
42063
42064 2004-10-01  Simon Josefsson  <jas@extundo.com>
42065
42066         * lib/snprintf.c (snprintf): Handle size==0.
42067
42068 2004-10-01  Simon Josefsson  <jas@extundo.com>
42069             Bruno Haible  <bruno@clisp.org>
42070
42071         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
42072         (snprintf): Declare 'args'.
42073
42074 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
42075
42076         * lib/snprintf.c: Remove comments as to why each header is needed.
42077
42078 2004-10-01  Bruno Haible  <bruno@clisp.org>
42079
42080         * MODULES.html.sh: Add strsep.
42081
42082 2004-09-30  Simon Josefsson  <jas@extundo.com>
42083
42084         * modules/snprintf: New file.
42085
42086 2004-09-30  Simon Josefsson  <jas@extundo.com>
42087
42088         * m4/snprintf.m4: New file.
42089
42090 2004-09-30  Simon Josefsson  <jas@extundo.com>
42091
42092         * lib/snprintf.h, lib/snprintf.c: New files.
42093
42094 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
42095
42096         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
42097         (hol_entry_help): Never translate an empty string.
42098         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
42099         * lib/argp.h (OPTION_NO_TRANS): New option.
42100
42101 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
42102
42103         * modules/argp (Maintainer): Replace Simon Josefsson
42104         by Sergey Poznyakoff.
42105
42106 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
42107
42108         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
42109         changes merged back into glibc.
42110
42111 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
42112
42113         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
42114
42115 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
42116
42117         * lib/xvasprintf.c: Include xalloc.h.
42118         (xvasprintf): Use xalloc_die, not xmalloc_die.
42119
42120 2004-09-29  Bruno Haible  <bruno@clisp.org>
42121
42122         * modules/alloca-opt: New file, derived from modules/alloca.
42123         * modules/allocsa: Depend on alloca-opt instead of alloca.
42124         * modules/setenv: Likewise.
42125         * modules/vasnprintf: Likewise.
42126         * MODULES.html.sh: Add alloca-opt.
42127
42128 2004-09-28  Simon Josefsson  <jas@extundo.com>
42129
42130         * gnulib-tool: New parameter --lgpl, to asseert that modules are
42131         LGPL, and to replace license template from GPL to LGPL.
42132
42133 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
42134
42135         * modules/dummy: Change license to LGPL.
42136
42137 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
42138
42139         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
42140
42141 2004-09-24  Simon Josefsson  <jas@extundo.com>
42142
42143         * modules/minmax (License): Change from GPL to LGPL.
42144
42145 2004-09-23  Simon Josefsson  <jas@extundo.com>
42146
42147         * gnulib-tool (--import): Typo.
42148
42149 2004-09-23  Simon Josefsson  <jas@extundo.com>
42150
42151         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
42152
42153 2004-09-22  Bruno Haible  <bruno@clisp.org>
42154
42155         * modules/*: Add 'License' field.
42156         * gnulib-tool: Accept --extract-license option.
42157         (func_get_license): New function.
42158
42159 2004-09-21  Bruno Haible  <bruno@clisp.org>
42160
42161         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
42162         Reported by Simon Josefsson.
42163
42164 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
42165
42166         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
42167         gl_AC_TYPE_LONG_LONG.
42168
42169 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
42170
42171         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
42172
42173 2004-09-18  Simon Josefsson  <jas@extundo.com>
42174         and  Paul Eggert  <eggert@cs.ucla.edu>
42175
42176         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
42177         calls with autoreconf.  Define GL_LIB.
42178
42179 2004-09-14  Karl Berry  <karl@gnu.org>
42180
42181         * config/srclist.txt: unsync setenv.c, sigh.
42182
42183 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
42184
42185         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
42186         Problem reported by Bruno Haible in:
42187         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
42188
42189 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
42190
42191         * config/srclist.txt: Comment out argp-pvh.c.
42192
42193 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
42194
42195         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
42196         in case some system header has #define'd it.  Problem reported by
42197         Soeren D. Schulze in
42198         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
42199
42200 2004-09-09  Karl Berry  <karl@gnu.org>
42201
42202         * regex.[ch]: delete from the root.  These were supposed to be
42203                 synced with emacs cvs, but this has not happened for about
42204                 a year, and anyway nothing else uses emacs regex.[ch].
42205                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
42206                 lib/regex[.ch] is untouched.
42207
42208 2004-09-09  Bruno Haible  <bruno@clisp.org>
42209
42210         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
42211
42212 2004-09-09  Bruno Haible  <bruno@clisp.org>
42213
42214         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
42215         modifications.
42216         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
42217
42218 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
42219
42220         * modules/xvasprintf: New file.
42221         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
42222
42223 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
42224
42225         * lib/xvasprintf.h: New file.
42226         * lib/xvasprintf.c: New file.
42227         * lib/xasprintf.c: New file.
42228
42229 2004-09-08  Bruno Haible  <bruno@clisp.org>
42230
42231         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
42232
42233 2004-09-08  Bruno Haible  <bruno@clisp.org>
42234
42235         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
42236         length is > INT_MAX.
42237         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
42238         more.
42239
42240 2004-09-08  Bruno Haible  <bruno@clisp.org>
42241
42242         * lib/stdint_.h: New file, taken from GNU clisp.
42243
42244 2004-09-08  Bruno Haible  <bruno@clisp.org>
42245             Oskar Liljeblad  <oskar@osk.mine.nu>
42246
42247         * modules/stdint: New file.
42248         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
42249
42250 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
42251
42252         Import from coreutils.
42253         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
42254         strings on unbounded length.  alloca's performance benefits aren't
42255         that important here.
42256         (V_STRDUP): Remove.
42257         (parse_with_separator): New function, with most of the internals
42258         of the old parse_user_spec.  Allow user to omit both user and group,
42259         for compatibility with FreeBSD.
42260         Clone only the user name, not the entire spec.
42261         Do not set *uid, *gid unless entirely successful.
42262         Avoid memory leak in some failing cases.
42263         Fix regression for USER.GROUP reported by Dmitry V. Levin in
42264         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
42265         (parse_user_spec): Rewrite to use parse_with_separator.
42266
42267 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
42268
42269         * modules/userspec: Don't depend on alloca.
42270
42271 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
42272
42273         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
42274
42275 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
42276
42277         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
42278         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
42279         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
42280
42281 2004-08-16  Simon Josefsson  <jas@extundo.com>
42282
42283         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
42284         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
42285         Add --dry-run for --import.
42286         Let user provided command line parameters override configure.ac
42287         settings.
42288
42289 2004-08-12  Simon Josefsson  <jas@extundo.com>
42290
42291         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
42292         as discussed with Paul Eggert in threads rooted at
42293         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
42294         and
42295         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
42296         Before, the test was empty, and relied on ELIDE_CODE in source
42297         code.)
42298         (gl_PREREQ_GETOPT): New macro.
42299         (gl_GETOPT): Use them.
42300
42301 2004-08-12  Simon Josefsson  <jas@extundo.com>
42302
42303         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
42304         * lib/getopt_.h: Renamed from getopt.h.
42305
42306 2004-08-12  Simon Josefsson  <jas@extundo.com>
42307
42308         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
42309         Change default library name from libfoo to libgnu.
42310         Now, if you have a configure.ac that says:
42311                 gl_SOURCE_BASE(gl)
42312                 gl_M4_BASE(gl/m4)
42313                 gl_MODULES(error getopt etcetera)
42314                 gl_INIT
42315         you can import all you need by running:
42316                 ../gnulib/gnulib-tool --import
42317
42318         * modules/getopt (Files): Rename getopt.h to getopt_.h.
42319         (Makefile.am): Rewrite, use logic from argz.
42320         (Include): Use <getopt.h> instead of "getopt.h".
42321
42322 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
42323
42324         * modules/argp (Files): Add m4/unlocked-io.m4.
42325         (Depends-on): Add extensions.
42326
42327 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
42328
42329         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
42330         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
42331         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
42332         Check for program_invocation_name, program_invocation_short_name,
42333         flockfile, funlockfile, features.h, _getopt_long_only_r.
42334
42335 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
42336
42337         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
42338         its complicated substitute.
42339         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
42340         and program_invocation_name.
42341         (__argp_basename) [!_LIBC]: Remove; the only use was
42342         replaced by its body.
42343         (__argp_short_program_name): Change condition from
42344         !defined __argp_short_program_name to
42345         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
42346         to match argp-namefrob.h.
42347         (__argp_failure): Don't assume strerror_r returns char *.
42348         * lib/argp-parse.c (N_): Define unconditionally.
42349         (argp_default_options): Fill out initializers with 0 to avoid
42350         gcc warnings.
42351
42352 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
42353
42354         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
42355         getopt1.c.
42356
42357 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
42358
42359         Merge from coreutils.
42360
42361         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
42362
42363         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
42364         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
42365
42366 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
42367
42368         Merge from coreutils.
42369
42370         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
42371         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
42372         for Reliant Unix 5.43.
42373
42374         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
42375         (union fooround): Use uintmax_t, not long int.
42376         The rest is a merge from libc:
42377         [defined _LIBC]: Include <shlib-compat.h>.
42378         (_obstack) [defined _LIBC]: Remove after 2.3.4.
42379
42380         * lib/settime.c (settime): Recode to avoid warning with
42381         Sun Forte C 6U2.
42382
42383         * lib/strverscmp.c: Convert to UTF-8.
42384
42385 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
42386
42387         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
42388         m4/uintmax_t.m4.
42389
42390 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
42391
42392         * modules/xalloc-die: New file.
42393         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
42394
42395         * modules/md5 (Files): Add m4/uint32_t.m4.
42396         * modules/sha1: Renamed from modules/sha.
42397         (Files):
42398         Rename lib/sha.h to lib/sha1.h.
42399         Rename lib/sha.c to lib/sha1.c.
42400         Rename m4/sha.m4 to m4/sha1.m4.
42401         (lib_SOURCES): Likewise.
42402         (configure.ac): Rename gl_SHA to gl_SHA1.
42403         (Include): sha.h -> sha1.h.
42404
42405 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
42406
42407         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
42408         * m4/sha1.m4: Renamed from sha.m4.
42409         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
42410
42411 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
42412
42413         * lib/obstack.h (obstack_empty_p):
42414         Don't assume that chunk->contents is suitably aligned.
42415         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
42416         Likewise. Problem reported by Benno in
42417         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
42418
42419         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
42420         readable.  This could be improved further but it'd take some work.
42421
42422 2004-08-08  Simon Josefsson  <jas@extundo.com>
42423
42424         * modules/xgethostname (Depends-on): Remove exit and error (not
42425         used).
42426
42427         * modules/getpass-gnu: Add getpass.h.
42428         (Depends-on): Add stdbool.
42429         * modules/getpass: Add getpass.h.
42430
42431 2004-08-08  Simon Josefsson  <jas@extundo.com>
42432
42433         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
42434         Check getpass declaration.
42435
42436 2004-08-08  Simon Josefsson  <jas@extundo.com>
42437
42438         * lib/xgethostname.c: Don't include error.h (not used).
42439
42440         * lib/getpass.h: Add.
42441         * lib/getpass.c: Include getpass.h first.
42442
42443 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
42444
42445         * lib/xalloc-die.c: New file.
42446         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
42447         All uses removed.
42448         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
42449         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
42450         xalloc-die.c.
42451         (_, N_, xalloc_die): Move to xalloc-die.c.
42452         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
42453         so that we needn't mess with xalloc_msg_memory_exhausted.
42454
42455         * lib/sha1.h: Renamed from sha.h.
42456         (SHA1_H): Renamed from _SHA_H.
42457         (sha1_ctx): Renamed from sha_ctx.
42458         (sha1_init_ctx): Renamed from sha_init_ctx.
42459         (sha1_process_block): Renamed from sha_process_block.
42460         (sha1_process_bytes): Renamed from sha_process_bytes.
42461         (sha1_finish_ctx): Renamed from sha_finish_ctx.
42462         (sha1_read_ctx): Renamed from sha_read_ctx.
42463         (sha1_stream): Renamed from sha_stream.
42464         (sha1_buffer): Renamed from sha_buffer.
42465         * lib/sha1.c: Likewise; renamed from sha.c.
42466         Do not include <sys/types.h>.
42467         Include <stddef.h> rather than <stdlib.h>.
42468
42469 2004-08-08  Bruno Haible  <bruno@clisp.org>
42470
42471         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
42472         FILESYSTEM_PREFIX_LEN.
42473         * lib/progreloc.c: Likewise.
42474         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
42475
42476 2004-08-06  Simon Josefsson  <jas@extundo.com>
42477
42478         * modules/progname (Depends-on): Don't depend on stdbool.
42479
42480 2004-08-06  Simon Josefsson  <jas@extundo.com>
42481
42482         * modules/getsubopt: New file.
42483         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
42484         getsubopt.
42485
42486 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
42487
42488         More merge from coreutils.
42489
42490         * m4/utimens.m4, m4/utimecmp.m4: New files.
42491         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
42492         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
42493         prereq.m4, sha.m4: Import changes from coreutils.
42494
42495 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
42496
42497         More merge from coreutils.
42498         * modules/raise, modules/readtokens0, modules/utimens:
42499         * modules/utimecmp, module/xnanosleep: New files.
42500         * modules/strftime: Add lib/strftime.h.
42501         Change include from <time.h> to "strftime.h".
42502         * modules/yesno: Add lib/yesno.h.
42503         * modules/backupfile: Remove lib/addext.c.
42504         * modules/euidaccess: Add stat-macros.h.
42505         * modules/canonicalize, modules/euidaccess,
42506         modules/filemode, modules/lchown, modules/makepath,
42507         modules/rmdir, modules/stat: Likewise.
42508
42509 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
42510
42511         Merge from tar.
42512         * lib/argp-help.c (make_hol, hol_append): Don't assume that
42513         SIZE_MAX is a valid preprocessor constant.
42514         (__argp_basename): Change from "#ifndef _LIBC"
42515         to "#ifndef __argp_short_program_name", so that
42516         we don't compile these functions for tar.
42517
42518         More merges from coreutils.
42519         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
42520         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
42521         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
42522         * lib/addext.c: Remove; no longer needed.
42523         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
42524         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
42525         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
42526         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
42527         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
42528         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
42529         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
42530         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
42531         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
42532         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
42533         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
42534         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
42535         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
42536         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
42537         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
42538         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
42539         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
42540         Import changes from coreutils.
42541
42542 2004-08-05  Simon Josefsson  <jas@extundo.com>
42543
42544         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
42545
42546 2004-08-05  Simon Josefsson  <jas@extundo.com>
42547
42548         * m4/getsubopt.m4: New file.
42549
42550 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
42551
42552         Merge from coreutils.
42553
42554         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
42555         * m4/getcwd-path-max.m4: New files.
42556
42557         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
42558         FILESYSTEM_PREFIX_LEN ->
42559         FILE_SYSTEM_PREFIX_LEN.
42560         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
42561         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
42562         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
42563         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
42564
42565         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
42566         prerequisite modules now handle the DOS stuff.
42567         Don't check for unistd.h.
42568
42569 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
42570
42571         Merge from coreutils.
42572
42573         * lib/.gdb-history: Remove; this doesn't belong here.
42574
42575         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
42576         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
42577         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
42578         * lib/getcwd.c: New files.
42579
42580         * lib/dirname.h: Include <stdbool.h>.
42581         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
42582         for consistency with POSIX terminology.  All uses changed.
42583         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
42584         (strip_trailing_slashes): Use bool for booleans.
42585         * lib/stripslash.c (strip_trailing_slashes): Likewise.
42586
42587         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
42588         sometimes returns a positive errno value even when it succeeds.
42589         (print_errno_message) [!LIBC]: Fall back on strerror if
42590         __strerror_r fails.
42591
42592         * lib/path-concat.c (mempcpy): Don't define if a system header defines
42593         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
42594         (longest_relative_suffix): New function.
42595         (path_concat): Use it.  Assume first argument is not NULL.
42596         Port to DOS.  Omit redundant separators.
42597         Report an error instead of returning NULL.
42598         Use mempcpy instead of memcpy.
42599         (xpath_concat): Remove: not declared or used.
42600
42601         * lib/same.h: Include <stdbool.h>
42602         (same_name): Return bool, not int.
42603         * lib/same.c (same_name): Likewise.
42604         (errno): Don't declare; we assume C89 or better now.
42605
42606         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
42607         if not already defined.
42608
42609         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
42610         * lib/dup-safer.c (errno): Likewise.
42611
42612 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
42613
42614         Merge from coreutils.
42615         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
42616         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
42617         * modules/path-concat: Don't depend on strdup.
42618
42619 2004-08-03  Simon Josefsson  <jas@extundo.com>
42620
42621         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
42622         * lib/progname.h: Don't include stdbool.h.
42623
42624 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
42625
42626         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
42627         * MODULES.html.sh (func_all_modules): Remove fatal.
42628
42629 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
42630
42631         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
42632
42633 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
42634
42635         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
42636         working.
42637
42638 2004-08-02  Simon Josefsson  <jas@extundo.com>
42639
42640         * lib/getsubopt.h: New file, with comments from Bruno Haible.
42641         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
42642         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
42643
42644 2004-08-01  Simon Josefsson  <jas@extundo.com>
42645
42646         * lib/xgetdomainname.c: Include stdlib.h, for free().
42647
42648 2004-07-19  Bruno Haible  <bruno@clisp.org>
42649
42650         * MODULES.html.sh (func_all_modules): Add dummy.
42651
42652 2004-07-16  Simon Josefsson  <jas@extundo.com>
42653
42654         * modules/dummy: New file.
42655
42656 2004-07-16  Simon Josefsson  <jas@extundo.com>
42657
42658         * lib/dummy.c: New file.
42659
42660 2004-07-16  Bruno Haible  <bruno@clisp.org>
42661
42662         * lib/backupfile.h: Add extern "C" for C++.
42663         * lib/closeout.h: Likewise.
42664         * lib/copy-file.h: Likewise.
42665         * lib/findprog.h: Likewise.
42666         * lib/full-write.h: Likewise.
42667         * lib/pathname.h: Likewise.
42668         * lib/progname.h: Likewise.
42669         * lib/stpcpy.h: Likewise.
42670         * lib/stpncpy.h: Likewise.
42671         * lib/strcase.h: Likewise.
42672         * lib/strstr.h: Likewise.
42673         * lib/xalloc.h: Likewise.
42674
42675         * lib/mbswidth.h: Add extern "C" for C++.
42676         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
42677
42678 2004-07-13  Robert Millan  <robertmh@gnu.org>
42679
42680         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
42681
42682 2004-07-09  Simon Josefsson  <jas@extundo.com>
42683
42684         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
42685         failed without this.)
42686
42687 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
42688
42689         * modules/chown (Files): Add lib/fchown-stub.c, since
42690         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
42691
42692 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
42693
42694         * lib/fchown-stub.c: New file.
42695
42696 2004-06-24  Jim Meyering  <jim@meyering.net>
42697
42698         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
42699
42700 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
42701
42702         * modules/argz: Omit "#include".
42703
42704         * MODULES.html.sh (func_all_modules): Add calloc, to match
42705         2004-06-01 addition of calloc module.
42706
42707 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
42708
42709         * m4/argz.m4: New file, which is autoupdated from libtool.
42710
42711 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
42712
42713         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
42714         libtool.
42715
42716 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
42717
42718         * config/srclist-update: Don't insist on "USA." before the
42719         close-comment, as libtool omits the period and puts the */ on a
42720         separate line.
42721         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
42722         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
42723
42724 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
42725
42726         * modules/argz: New file.
42727         * MODULES.html.sh (func_all_modules): Add argz.
42728
42729 2004-06-12  Jim Meyering  <jim@meyering.net>
42730         and  Paul Eggert  <eggert@cs.ucla.edu>
42731
42732         * modules/hash (Files): Add lib/xalloc.h.
42733         * modules/pipe (Depends-on): Add wait-process.
42734         * modules/stat (Depends-on): Add xalloc.
42735         * modules/userspec (Files): Add lib/userspec.h.
42736         * modules/xstrto
42737
42738         Upgrade from gettext-0.13.
42739         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
42740         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
42741         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
42742
42743 2004-06-10  Jim Meyering  <jim@meyering.net>
42744
42745         * lib/calloc.c: New file.
42746
42747 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
42748
42749         * lib/getdate.y (yylex): Allow space between sign and number.
42750         Problem reported by Dan Jacobson.
42751
42752 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
42753
42754         Merge from coreutils CVS.
42755
42756         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
42757         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
42758         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
42759         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
42760         xstrtol.m4: Fix copyright date and/or serial number.
42761
42762         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
42763         See if we need an fchown replacement.
42764         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
42765         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
42766         and use the replacement function if we detect either defect.
42767
42768         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
42769         gl_UTIMECMP.
42770
42771 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
42772         and  Jim Meyering  <jim@meyering.net>
42773
42774         Merge from coreutils CVS.
42775
42776         * lib/stat-macros.h: New file, with contents from file-type.h
42777         and coreutils' system.h.
42778         * lib/file-type.c: Include "stat-macros.h".
42779         * lib/file-type.h (file_type): Move all macro definitions to new file,
42780         stat-macros.h.
42781
42782         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
42783         Wrap old code with this conditional.
42784         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
42785         function that does not dereference symlinks.
42786         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
42787
42788         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
42789         dependency problems.
42790         (xreadlink): Accept new arg SIZE, for efficiency.
42791         All decls and uses changed.
42792         * lib/xreadlink.h: Include <stddef.h>, for size_t.
42793
42794         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
42795         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
42796
42797         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
42798         sysexits.h.
42799
42800 2004-06-01  Jim Meyering  <jim@meyering.net>
42801
42802         * m4/calloc.m4: New file.
42803
42804 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
42805
42806         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
42807         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
42808         Also, fix a typo in a diagnostic.
42809
42810 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
42811
42812         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
42813         or AC_FUNC_REALLOC.
42814
42815 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
42816
42817         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
42818         macros to be defined.
42819         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
42820         the allocator returns NULL because the requested size is zero.
42821
42822 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
42823
42824         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
42825         var.  Add comment explaining why libc still defines it.  This
42826         merges the following patch from glibc:
42827         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
42828
42829 2004-05-20  Andreas Schwab  <schwab@suse.de>
42830
42831         * m4/free.m4: Replace free if it not known to work, not the other
42832         way round.
42833
42834 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
42835
42836         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
42837         present in glibc since revision 1.1 of this file.
42838         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
42839         obstack_alignment_mask, obstack_alloc, obstack_base,
42840         obstack_blank, obstack_blank_fast, obstack_chunk_size,
42841         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
42842         obstack_grow0, obstack_init, obstack_int_grow,
42843         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
42844         obstack_next_free, obstack_object_size, obstack_ptr_grow,
42845         obstack_ptr_grow_fast, obstack_room): Remove declarations of
42846         nonexistent functions.
42847
42848 2004-05-18  Karl Berry  <karl@gnu.org>
42849
42850         * config/srclist.txt: break link for vasnprintf.c.
42851
42852 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
42853
42854         Port obstack to the AS/400, where pointers are 16 bytes wide and
42855         you cannot cast an integer to a valid pointer.  This patch is
42856         currently waiting to be integrated into glibc; see
42857         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
42858
42859         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
42860         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
42861         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
42862         (struct obstack): temp member is now a union of a pointer and
42863         an integer, instead of an integer.  All integer uses changed.
42864         This does not affect the physical layout of struct obstack,
42865         except on hosts (like the AS/400) where the size or alignment of
42866         void * is greater than that of ptrdiff_t.
42867         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
42868         __STDC__)]: Store temporary in pointer member of union, not
42869         integer member.
42870         * lib/obstack.c: Include <stddef.h>, for offsetof.
42871         (struct fooalign): Remove; it doesn't need a name.
42872         (union fooround): Change double to long double, and add void *.
42873         (DEFAULT_ALIGNMENT): Use offsetof to compute.
42874         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
42875         not a macro.  Hence the values are always int; so remove all
42876         casts-to-int in uses.
42877
42878 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
42879
42880         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
42881         we can get this patch merged into glibc.
42882
42883 2004-05-17  Derek R. Price  <derek@ximbiot.com>
42884             Paul Eggert  <eggert@cs.ucla.edu>
42885
42886         * m4/argp: Depend on alloca.
42887
42888 2004-05-17  Derek R. Price  <derek@ximbiot.com>
42889             Paul Eggert  <eggert@cs.ucla.edu>
42890
42891         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
42892         freecoding.
42893
42894 2004-05-17  Bruno Haible  <bruno@clisp.org>
42895
42896         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
42897         precision that consists of a '.' followed by an empty digit string.
42898         Patch by Tor Lillqvist <tml@iki.fi>.
42899
42900 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
42901
42902         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
42903         for backward compatibility with older code.  We need our own
42904         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
42905         it under some other name, and our alloca.h will define it.
42906
42907 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
42908             Derek Price  <derek@ximbiot.com>
42909
42910         * lib/alloca.c: Include <alloca.h>, to get our interface.
42911         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
42912         include <alloca.h> first.  Use C89 prototype for alloca; this
42913         requires including <stddef.h> for size_t.  Use extern "C" if C++.
42914         Use #elif for simplicity, since we can assume C89 now.
42915         Don't try to source the system alloca.h since it will not be found
42916         and to prevent recursively including its replacement.
42917         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
42918         * lib/regex.c: Likewise.
42919
42920 2004-05-16  Derek Price  <derek@ximbiot.com>
42921             Paul Eggert  <eggert@cs.ucla.edu>
42922
42923         getline cleanup.  This changes the getndelim2 API: both order of
42924         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
42925         no delimiter).
42926
42927         * lib/getline.c: Don't include stddef.h or stdio.h, since our
42928         interface does that.
42929         (getline): Always use getdelim, so that we don't have two
42930         copies of this code.
42931         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
42932         if available.
42933         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
42934         (GETNDELIM2_MAXIMUM): New macro.
42935         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
42936         instead of the old practice of delim2==0.  All callers changed.
42937         Return -1 on overflow, instead of returning junk.
42938         Do not set *linesize unless allocation succeeds.
42939         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
42940         that we include sys/types.h.
42941         * lib/getnline.h: Likewise.
42942         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
42943         (getndelim2): Reorder arguments.
42944         * lib/getnline.c (getnline, getndelim):
42945         Don't discard the NMAX argument.
42946         (getnline): Invoke getndelim, to avoid code duplication.
42947         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
42948         of (size_t) -1 by callers of the getnline family.
42949
42950 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
42951
42952         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
42953         Check for gettimeofday.
42954         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
42955         Check for settimeofday, stime.
42956
42957 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
42958
42959         * lib/nanosleep.c (suspended): Change its type from int to
42960         sig_atomic_t volatile.
42961         (first_call): Make it private to rpl_nanosleep, and have it
42962         be zero initially as that's a bit faster.
42963         (my_usleep): Round up fractional times instead of truncating them,
42964         as this is the usual meaning for 'sleep'.
42965
42966         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
42967         doesn't work.
42968         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
42969         (ENOSYS): Define if not defined.
42970         (settime): Fall back on stime if it exists and settimeofday fails.
42971         But don't bother with fallbacks if a method fails with errno == EPERM.
42972
42973 2004-05-11  Jim Meyering  <jim@meyering.net>
42974
42975         Prior to this change, the save_cwd caller required read access to the
42976         current directory on most systems (ones with the fchdir function).
42977
42978         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
42979         fails, try write-only, and finally, resort to using xgetcwd.
42980
42981 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
42982
42983         * lib/obstack.c, obstack.h: Import changes from libc.
42984
42985 2004-04-28  Bruno Haible  <bruno@clisp.org>
42986
42987         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
42988         also implicitly appends .exe to executables.
42989         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
42990         accepts Windows pathnames.
42991         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
42992         Treat Cygwin like Windows, since it now accepts Windows pathnames.
42993         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
42994         Treat Cygwin like Windows, since it now accepts Windows pathnames.
42995         Reported by Derek Robert Price <derek@ximbiot.com>.
42996
42997 2004-04-21  Karl Berry  <karl@gnu.org>
42998
42999         * config/srclist.txt (localcharset.c): break sync.
43000
43001 2004-04-20  Paul Eggert  <eggert@twinsun.com>
43002
43003         * m4/host-os.m4: Add a copyright notice.
43004
43005 2004-04-20  Jim Meyering  <jim@meyering.net>
43006
43007         Change UTILS_ to gl_ in AC_DEFINE'd names.
43008         Change utils_- and jm_-prefixed variables, too.
43009         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
43010         UTILS_FUNC_MKDIR_TRAILING_SLASH.
43011         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
43012
43013         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
43014         Don't emit trailing blanks.
43015         Also rename jm_-prefixed variables to have gl_ prefix.
43016
43017         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
43018         Also rename jm_-prefixed variables to have gl_ prefix.
43019
43020         * m4/jm-macros.m4: Reflect the renamings.
43021         * m4/prereq.m4: Likewise.
43022
43023 2004-04-20  Jim Meyering  <jim@meyering.net>
43024
43025         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
43026         memory.
43027
43028 2004-04-20  Jim Meyering  <jim@meyering.net>
43029             Bruno Haible  <bruno@clisp.org>
43030
43031         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
43032         memory when realloc fails.
43033
43034 2004-04-19  Jim Meyering  <jim@meyering.net>
43035
43036         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
43037         now that readutmp.c may call `free (0)'.
43038
43039 2004-04-19  Bruno Haible  <bruno@clisp.org>
43040
43041         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
43042         * m4/inttypes_h.m4: Likewise.
43043         * m4/stdint_h.m4: Likewise.
43044         * m4/intmax_t.m4: Likewise.
43045         * m4/uintmax_t.m4: Likewise.
43046
43047 2004-04-18  Jim Meyering  <jim@meyering.net>
43048
43049         * m4/prereq.m4: Don't forbid jm_ prefix.
43050
43051         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
43052         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
43053         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
43054         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
43055         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
43056         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
43057         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
43058         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
43059         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
43060         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
43061         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
43062         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
43063         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
43064         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
43065         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
43066         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
43067         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
43068         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
43069         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
43070
43071 2004-04-18  Jim Meyering  <jim@meyering.net>
43072
43073         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
43074         failure, don't leak memory and do call END_UTMP_ENT.
43075
43076 2004-04-16  Jim Meyering  <jim@meyering.net>
43077
43078         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
43079         coreutils' stat program.
43080         (gl_PREREQ): Don't require jm_PREREQ_STAT.
43081
43082 2004-04-11  Paul Eggert  <eggert@twinsun.com>
43083
43084         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
43085         C89.
43086         (CHAR_BIT): Remove, since we assume C89.
43087         Include <stdint.h> if available, as per current Autoconf CVS advice.
43088
43089 2004-03-31  Jim Meyering  <jim@meyering.net>
43090
43091         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
43092         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
43093         * m4/xalloc.m4: Likewise.
43094
43095 2004-03-30  Paul Eggert  <eggert@twinsun.com>
43096
43097         Merge from coreutils.
43098
43099         * m4/inttostr.m4: New file.
43100         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
43101         Require AM_STDBOOL_H and gl_TIMESPEC instead.
43102         Require gl_CLOCK_TIME.
43103         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
43104
43105 2004-03-30  Paul Eggert  <eggert@twinsun.com>
43106
43107         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
43108         not bool, to be more consistent with Unix conventions.
43109         Suggested by Bruno Haible.
43110
43111         Merge from coreutils.
43112
43113         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
43114         * lib/umaxtostr.c: New files.
43115
43116         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
43117         the usual <time.h> dance.
43118         (get_date): Change signature to support fractional time stamps.
43119         All callers changed.
43120         * lib/getdate.y: Include "getdate.h" first, as we can now
43121         assume C89 and don't need to worry about 'const'.
43122         Similarly, include "unlocked-io.h" near start, not in middle.
43123         Include <limits.h>.
43124         (textint.value): Use long int rather than int.
43125         (textint.digits): Use size_t rather than int.
43126         (BILLION, LOG10_BILLION): New constants.
43127         (parser_control): New member rel_ns.  Members day_ordinal,
43128         time_zone, month, day, hour, minutes, rel_year, rel_month,
43129         rel_day, rel_hour, rel_minutes, rel_seconds
43130         are now long int, not int.  Member seconds is now struct timespec,
43131         not int.  New member timespec_seen.  Members dates_seen, days_seen,
43132         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
43133         not int.
43134         (%union.intval): Now long int, not int.
43135         New member timespec.
43136         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
43137         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
43138         (spec): Now is a timespec or an item list.
43139         (timespec, items): New nonterminals.
43140         (time, rel, relunit, number, get_date):
43141         Add support for fractional seconds.
43142         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
43143         (gmtime, localtime, mktime): Remove decls; not needed with C89.
43144         (to_hour): First arg is now long int, not int.
43145         (to_year): Returns long int, not int.
43146         Don't treat year -70 like 70.
43147         (tm_diff): Returns long int, not int.
43148         (lookup_word): Use bool instead of int when appropriate.
43149         (yylex): Use size_t for count, not int.
43150         Detect overflow when parsing large integer constants.
43151         Add support for fractions.
43152         (get_date): Make pointers 'const' if possible.
43153         Use more-portable code to detect integer overflow.
43154         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
43155         Don't use ctime; it's not reliable if the year has >4 digits.
43156
43157         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
43158         This is for compatibility with BSD.
43159
43160         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
43161         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
43162         From coreutils' system.h.
43163
43164         * lib/userspec.c: Don't include "posixver.h".
43165         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
43166         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
43167         compatible extension.  Simplify code by removing a boolean int
43168         that was always nonzero if a string was nonnull.
43169
43170 2004-03-30  Jim Meyering  <jim@meyering.net>
43171
43172         Merge from coreutils.
43173
43174         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
43175         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
43176         on some systems one must include <grp.h> before it.
43177         Reported by Christian Krackowizer.
43178
43179 2004-03-30  Jim Meyering  <jim@meyering.net>
43180
43181         Merge from coreutils.
43182
43183         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
43184
43185         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
43186         an empty input stream.
43187
43188         * lib/readtokens.c: Include <stdbool.h>.
43189         (readtoken): Use `size_t' rather than int/long.
43190         All callers adjusted.
43191         Use `bool' rather than `int' where appropriate.
43192         Use memset rather than an explicit loop.
43193         Use x2nrealloc rather than xrealloc.
43194         Allow the use of `\0' as a delimiter.
43195         (readtokens): Likewise.
43196         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
43197
43198 2004-03-30  Jim Meyering  <jim@meyering.net>
43199
43200         * m4/realloc.m4: Remove file, since now it does no more than
43201         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
43202         the `configure.ac' section of module/realloc.
43203         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
43204
43205 2004-03-30  Bruno Haible  <bruno@clisp.org>
43206
43207         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
43208         nonnull.
43209
43210 2004-03-29  Paul Eggert  <eggert@twinsun.com>
43211
43212         Merge changes to getloadavg.c from coreutils and Emacs.
43213
43214         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
43215         Define to an expression, not to the empty string.
43216         Include cloexec.h and xalloc.h.
43217         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
43218         Use set_cloexec_flag rather than rolling our own.
43219         * lib/cloexec.c, lib/cloexec.h: New files.
43220
43221 2004-03-29  Paul Eggert  <eggert@twinsun.com>
43222
43223         * m4/cloexec.m4: New file.
43224
43225 2004-03-18  Paul Eggert  <eggert@twinsun.com>
43226
43227         * lib/getopt.h: Sync with libc CVS.
43228
43229 2004-03-18  Paul Eggert  <eggert@twinsun.com>
43230             Bruno Haible  <bruno@clisp.org>
43231
43232         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
43233         mbswidth.
43234
43235 2004-03-18  Paul Eggert  <eggert@twinsun.com>
43236             Bruno Haible  <bruno@clisp.org>
43237
43238         * lib/mbswidth.h: Include <wchar.h> only if
43239         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
43240         <wchar.h>.
43241         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
43242
43243 2004-03-09  Paul Eggert  <eggert@twinsun.com>
43244
43245         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
43246         Sync with libc CVS.
43247         * lib/getopt_int.h: New file, also synced from libc.
43248
43249 2004-03-09  Paul Eggert  <eggert@twinsun.com>
43250
43251         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
43252         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
43253         Bring back getopt.c, getopt.h, getopt1.c.
43254
43255 2004-03-07  Paul Eggert  <eggert@twinsun.com>
43256
43257         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
43258         All uses changed.  Check for sa_sigaction member; this fixes
43259         a bug first reported by Jason Andrade in
43260         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
43261
43262 2004-03-07  Paul Eggert  <eggert@twinsun.com>
43263
43264         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
43265         '#if' expressions.  Unlike the code it replaces, it does not
43266         depend on (defined _SC_PAGESIZE).  However, it does depend on
43267         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
43268         first reported by Jason Andrade in
43269         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
43270
43271 2004-02-25  Simon Josefsson  <jas@extundo.com>
43272
43273         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
43274
43275 2004-02-25  Simon Josefsson  <jas@extundo.com>
43276
43277         * lib/strdup.h: New file.
43278         * lib/strdup.c: Include it.
43279         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
43280         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
43281
43282 2004-02-23  Karl Berry  <karl@gnu.org>
43283
43284         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
43285         (from fencepost.gnu.org:/gd/gnuorg).
43286
43287 2004-02-23  Karl Berry  <karl@gnu.org>
43288
43289         * config/srclistvars.sh (GNUORG) [karl]: redefine.
43290         * config/srclist.txt: add maintain/standards documents.
43291
43292 2004-02-18  Bruno Haible  <bruno@clisp.org>
43293
43294         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
43295         Reported by Derek Robert Price <derek@ximbiot.com>.
43296
43297 2004-02-16  Karl Berry  <karl@gnu.org>
43298
43299         * config/mkinstalldirs, install-sh: update from automake.
43300
43301 2004-02-06  Karl Berry  <karl@gnu.org>
43302
43303         * m4/po.m4: update from gettext 0.14.1.
43304
43305 2004-02-06  Karl Berry  <karl@gnu.org>
43306
43307         * lib/config.charset: update from gettext 0.14.1.
43308
43309 2004-02-05  Paul Eggert  <eggert@twinsun.com>
43310
43311         Add comments and code, prompted by suggestions from Bruno Haible
43312         for sh-quote.
43313         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
43314         describing the enum quoting_style values.
43315         * lib/quotearg.c (quotearg_alloc): New function.
43316         (quotearg_buffer_restyled): Treat lone { and } as special.
43317         Treat = as special.  Work around bug with older shells
43318         that "see" a '\' that is really the 2nd byte of a multibyte char.
43319         Quote empty string with shell_quoting_style.
43320
43321 2004-02-03  Bruno Haible  <bruno@clisp.org>
43322
43323         * m4/pipe.m4: New file, from GNU gettext.
43324
43325 2004-02-03  Bruno Haible  <bruno@clisp.org>
43326
43327         * lib/pipe.h: New file, from GNU gettext.
43328         * lib/pipe.c: New file, from GNU gettext.
43329
43330 2004-01-27  Bruno Haible  <bruno@clisp.org>
43331
43332         * m4/execute.m4: New file, from GNU gettext.
43333
43334 2004-01-27  Bruno Haible  <bruno@clisp.org>
43335
43336         * lib/execute.h: New file, from GNU gettext.
43337         * lib/execute.c: New file, from GNU gettext.
43338         * lib/w32spawn.h: New file, from GNU gettext.
43339
43340 2004-01-24  Paul Eggert  <eggert@twinsun.com>
43341
43342         Merge from diffutils.
43343
43344         * lib/file-type.c (file_type): Add typed memory objects.
43345         * lib/file-type.h (S_TYPEISTMO): New macro.
43346
43347         * lib/c-stack.h (c_stack_action): Remove argv argument.
43348         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
43349         (die): Don't calculate message unless segv_action returns.
43350         (get_stack_location, min_address_from_argv, max_address_from_argv,
43351         volatile stack_base, volatile_stack_size): Remove.
43352         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
43353         that every segmentation violation is a stack overflow.  (Ouch!)
43354         See Debian bug 136249 (still outstanding) for more info about why
43355         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
43356
43357 2004-01-24  Paul Eggert  <eggert@twinsun.com>
43358
43359         Exit-status fix from coreutils.
43360
43361         Use exit_failure consistently in place of EXIT_FAILURE,
43362         so that program exit statuses are consistent on failure.
43363
43364         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
43365         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
43366         * lib/argmatch.h: Comment fix to match the above.
43367         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
43368         Now a macro referring to exit_failure, instead of a separate
43369         variable.  Include "exitfail.h" to get it.
43370         * lib/xstrtol.h: Include "exitfail.h".
43371         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
43372
43373         * lib/long-options.c (parse_long_options): Use prototype
43374         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
43375         for clarity.
43376
43377 2004-01-21  Jim Meyering  <jim@meyering.net>
43378
43379         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
43380         so as not to conflict with a different-sized __mktime_internal
43381         function in GNU libc.
43382         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
43383         Problem building statically-linked `ls' reported by Michael Brunnbauer.
43384
43385 2004-01-20  Karl Berry  <karl@gnu.org>
43386
43387         * config/config.guess: update from config.
43388
43389         * config/srclistvars.sh: GNUWWWLICENSES for karl.
43390
43391 2004-01-20  Bruno Haible  <bruno@clisp.org>
43392
43393         Safer stack allocation.
43394         * lib/setenv.c: Include allocsa.h.
43395         (alloca): Remove fallback definition.
43396         (freea): Remove macro.
43397         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
43398         instead of freea.
43399
43400 2004-01-20  Bruno Haible  <bruno@clisp.org>
43401
43402         * m4/eealloc.m4: New file, from GNU gettext.
43403
43404 2004-01-20  Bruno Haible  <bruno@clisp.org>
43405
43406         * m4/allocsa.m4: New file, from GNU gettext.
43407
43408 2004-01-20  Bruno Haible  <bruno@clisp.org>
43409
43410         * lib/xallocsa.h: New file, from GNU gettext.
43411         * lib/xallocsa.c: New file, from GNU gettext.
43412
43413 2004-01-20  Bruno Haible  <bruno@clisp.org>
43414
43415         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
43416
43417 2004-01-20  Bruno Haible  <bruno@clisp.org>
43418
43419         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
43420         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
43421         specially.
43422
43423 2004-01-20  Bruno Haible  <bruno@clisp.org>
43424
43425         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
43426         patch.
43427
43428 2004-01-20  Bruno Haible  <bruno@clisp.org>
43429
43430         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
43431
43432 2004-01-20  Bruno Haible  <bruno@clisp.org>
43433
43434         * lib/eealloc.h: New file.
43435
43436 2004-01-20  Bruno Haible  <bruno@clisp.org>
43437
43438         * lib/binary-io.h: Avoid warnings on Cygwin.
43439
43440 2004-01-20  Bruno Haible  <bruno@clisp.org>
43441
43442         * lib/allocsa.h: New file, from GNU gettext.
43443         * lib/allocsa.c: New file, from GNU gettext.
43444
43445 2004-01-18  Karl Berry  <karl@gnu.org>
43446
43447         * doc/gpl.texi, doc/lgpl.texi: new files.
43448
43449 2004-01-18  Karl Berry  <karl@gnu.org>
43450
43451         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
43452         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
43453
43454 2004-01-15  Paul Eggert  <eggert@twinsun.com>
43455
43456         Merge from coreutils.
43457
43458         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
43459         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
43460         (gl_DEFAULT_POSIX2_VERSION): Move
43461         the documentation from 'configure' into 'config.hin',
43462         so that 'configure --help' isn't burdened by it and
43463         we don't have to worry about its formatting there.
43464         Reword the documentation so that it's more succinct
43465         and can be run together into a single paragraph.
43466         * m4/same.m4 (gl_SAME): Check for pathconf.
43467
43468 2004-01-15  Paul Eggert  <eggert@twinsun.com>
43469
43470         Merge from coreutils.
43471
43472         * lib/posixver.c: Include posixver.h.
43473
43474         * lib/same.c: Include <stdbool.h>, <limits.h>.
43475         (_POSIX_NAME_MAX): Define if not defined.
43476         (MIN): New macro.
43477         (same_name): If file names are silently truncated, report
43478         that the file names are the same if they are the same after
43479         the silent truncation.
43480
43481         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
43482         conversion function.
43483         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
43484         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
43485         longer needed.
43486
43487 2004-01-15  Jim Meyering  <jim@meyering.net>
43488
43489         Merge from coreutils.
43490
43491         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
43492         if no library is required.
43493         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
43494         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
43495         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
43496         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
43497         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
43498         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
43499         value, $ac_cv_search_crypt, if it's "none required".
43500         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
43501         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
43502         not gl_FUNC_GETLOADAVG.
43503         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
43504         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
43505
43506 2004-01-15  Jim Meyering  <jim@meyering.net>
43507
43508         Merge from coreutils.
43509
43510         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
43511         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
43512         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
43513
43514         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
43515         optional configure-time default.
43516
43517         * lib/version-etc.c (version_etc_copyright): Update copyright date.
43518
43519         * lib/xreadlink.c (xreadlink): Correct outdated comment.
43520
43521 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
43522
43523         Merge from coreutils.
43524
43525         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
43526         value, $ac_cv_search_nanosleep, if it's "none required".
43527
43528 2004-01-14  Paul Eggert  <eggert@twinsun.com>
43529
43530         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
43531         with like-named macro in fnmatch.c.
43532         (EXT): Use an internal constant instead.
43533
43534         Merge fnmatch patches from glibc.
43535         * lib/fnmatch.c (mbsinit): Remove define.
43536         Add libc_hidden_ver (__fnmatch, fnmatch).
43537         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
43538         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
43539
43540 2004-01-14  Karl Berry  <karl@gnu.org>
43541
43542         * config/install-sh: update from automake.
43543
43544 2004-01-13  Karl Berry  <karl@gnu.org>
43545
43546         * config/install-sh: update from automake.
43547
43548 2004-01-09  Karl Berry  <karl@gnu.org>
43549
43550         * config/install-sh: update from automake.
43551
43552 2004-01-05  Karl Berry  <karl@gnu.org>
43553
43554         * config/config.{sub,guess}: update from config.
43555
43556 2003-12-31  Karl Berry  <karl@gnu.org>
43557
43558         * config/depcomp: update from automake.
43559
43560 2003-12-14  Karl Berry  <karl@gnu.org>
43561
43562         * lib/config.charset: update from gettext-runtime.
43563
43564 2003-12-03  Paul Eggert  <eggert@twinsun.com>
43565
43566         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
43567         Bug reported by Alfred M. Szmidt.
43568
43569 2003-12-03  Bruno Haible  <bruno@clisp.org>
43570
43571         * m4/gettext.m4: Upgrade from gettext-0.13.
43572         * m4/po.m4: Upgrade from gettext-0.13.
43573         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
43574         * m4/intmax.m4: New file, from gettext-0.13.
43575         * m4/printf-posix.m4: New file, from gettext-0.13.
43576
43577 2003-11-29  Karl Berry  <karl@gnu.org>
43578
43579         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
43580
43581 2003-11-25  Paul Eggert  <eggert@twinsun.com>
43582             Bruno Haible  <bruno@clisp.org>
43583
43584         * lib/printf-parse.h: Don't include sys/types.h.
43585         (ARG_NONE): New macro.
43586         (char_directive): Change type of *arg_index fields to size_t.
43587         * lib/printf-parse.c: Don't include sys/types.h.
43588         (SSIZE_MAX): Remove macro.
43589         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
43590         Remove unnecessary overflow check.
43591         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
43592         fields.
43593
43594 2003-11-25  Bruno Haible  <bruno@clisp.org>
43595
43596         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
43597
43598 2003-11-25  Bruno Haible  <bruno@clisp.org>
43599
43600         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
43601         gt_TYPE_SSIZE_T.
43602
43603 2003-11-24  Paul Eggert  <eggert@twinsun.com>
43604
43605         * modules/alloca: Remove dependency on xalloc.
43606
43607 2003-11-24  Paul Eggert  <eggert@twinsun.com>
43608
43609         * lib/alloca.c: Remove dependency on xalloc module.
43610         (xalloc_die): Remove.
43611         (memory_full) [!defined emacs]: New macro.
43612         [!defined emacs]: Don't include xalloc.h.
43613         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
43614         address arithmetic overflows.  Change datatypes a bit to avoid
43615         unnecessary casts.
43616
43617 2003-11-22  Jim Meyering  <jim@meyering.net>
43618
43619         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
43620         s/size/size_t/.
43621
43622 2003-11-21  Karl Berry  <karl@gnu.org>
43623
43624         * config/config.{sub,guess}: update from config.
43625
43626 2003-11-18  Karl Berry  <karl@gnu.org>
43627
43628         * config/config.{sub,guess}: update from config.
43629
43630         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
43631
43632 2003-11-17  Paul Eggert  <eggert@twinsun.com>
43633
43634         * README: Mention that S+T cannot overflow if S is the size of
43635         an existing object and T is sufficiently small.
43636
43637 2003-11-17  Jim Meyering  <jim@meyering.net>
43638
43639         On systems without utime and without a utimes function capable of
43640         dealing with a NULL struct utimbuf* argument, this utime replacement
43641         could -- in unusual circumstances -- leak a file descriptor.
43642         * lib/utime.c: Include <unistd.h> and <errno.h>.
43643         (utime_null): Be sure to close `fd' and to preserve errno.
43644         Reported by Geoff Collyer via Arnold Robbins.
43645
43646 2003-11-17  Bruno Haible  <bruno@clisp.org>
43647
43648         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
43649         (Depends-on): Add xsize.
43650
43651 2003-11-17  Bruno Haible  <bruno@clisp.org>
43652
43653         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
43654
43655 2003-11-17  Bruno Haible  <bruno@clisp.org>
43656
43657         * lib/vasnprintf.c (alloca): Remove fallback definition.
43658         (freea): Remove definition.
43659         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
43660         Reported by Paul Eggert.
43661
43662 2003-11-16  Paul Eggert  <eggert@twinsun.com>
43663             Bruno Haible  <bruno@clisp.org>
43664
43665         Protect against address arithmetic overflow.
43666         * lib/printf-args.h: Include stddef.h.
43667         (arguments): Change type of field 'count' to size_t.
43668         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
43669         'unsigned int' where appropriate.
43670         * lib/printf-parse.h: Include sys/types.h.
43671         (char_directive): Change type of *arg_index fields to ssize_t.
43672         (char_directives): Change type of fields 'count', max_*_length to
43673         size_t.
43674         * lib/printf-parse.c: Include sys/types.h and xsize.h.
43675         (SSIZE_MAX): Define fallback value.
43676         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
43677         instead of 'int' where appropriate. Check a_allocated, d_allocated
43678         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
43679         * lib/vasnprintf.c: Include xsize.h.
43680         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
43681         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
43682         overflow. Avoid wraparound when converting a width or precision from
43683         decimal to binary.
43684
43685 2003-11-16  Bruno Haible  <bruno@clisp.org>
43686
43687         Update from GNU gettext.
43688         * lib/printf-parse.c: Generalize to it can be compiled for wide
43689         strings.
43690         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
43691         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
43692         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
43693         SNPRINTF): New macros.
43694         Don't include <alloca.h> if the file is used inside libintl.
43695         (local_wcslen): New function, for Solaris 2.5.1.
43696         (VASNPRINTF): Use it instead of wcslen.
43697
43698 2003-11-16  Bruno Haible  <bruno@clisp.org>
43699
43700         * lib/xsize.h (xmax): New function.
43701         (xsum, xsum3, xsum4): Declare as "pure" functions.
43702
43703 2003-11-12  Paul Eggert  <eggert@twinsun.com>
43704
43705         * modules/xalloc (Files): Undo latest change, since xalloc.h
43706         no longer needs SIZE_MAX or PTRDIFF_MAX.
43707
43708 2003-11-12  Paul Eggert  <eggert@twinsun.com>
43709
43710         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
43711         gl_PTRDIFF_MAX.
43712
43713 2003-11-12  Paul Eggert  <eggert@twinsun.com>
43714
43715         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
43716         "return", to pacify some unknown compiler.  Problem reported
43717         by Joerg Schilling.
43718
43719 2003-11-12  Paul Eggert  <eggert@twinsun.com>
43720
43721         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
43722         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
43723         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
43724         heuristic is just as accurate as far as we know, and it removes a
43725         dependency on size_max.m4 and ptrdiff_max.m4.
43726
43727 2003-11-11  Bruno Haible  <bruno@clisp.org>
43728
43729         * modules/xsize (Files): Add m4/size_max.m4.
43730         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
43731
43732 2003-11-11  Bruno Haible  <bruno@clisp.org>
43733
43734         * m4/size_max.m4: New file.
43735         * m4/ptrdiff_max.m4: New file.
43736         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
43737         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
43738         (gl_XALLOC): Invoke it.
43739
43740 2003-11-11  Bruno Haible  <bruno@clisp.org>
43741
43742         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
43743         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
43744         defined.
43745
43746 2003-11-10  Paul Eggert  <eggert@twinsun.com>
43747
43748         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
43749         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
43750         rejected some allocations of exactly SIZE_MAX - 2 bytes.
43751         From Bruno Haible.
43752         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
43753         not (size_t) -1, since it's defined here.
43754
43755 2003-11-09  Karl Berry  <karl@gnu.org>
43756
43757         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
43758
43759 2003-11-06  Paul Eggert  <eggert@twinsun.com>
43760
43761         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
43762         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
43763         Reject sizes of exactly SIZE_MAX bytes.
43764         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
43765         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
43766
43767 2003-11-05  Bruno Haible  <bruno@clisp.org>
43768
43769         * lib/xsize.h: Include limits.h, to avoid a possible collision with
43770         SIZE_MAX defined in <limits.h> on Solaris.
43771
43772 2003-11-04  Jim Meyering  <jim@meyering.net>
43773
43774         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
43775         variable names, rather than @VAR@.
43776         * modules/poll: Likewise.
43777
43778 2003-11-04  Bruno Haible  <bruno@clisp.org>
43779
43780         * modules/xsize: New file.
43781         * modules/linebreak: Depend on xsize.
43782         * MODULES.html.sh (func_all_modules): Add xsize.
43783
43784 2003-11-04  Bruno Haible  <bruno@clisp.org>
43785
43786         * m4/xsize.m4: New file.
43787
43788 2003-11-04  Bruno Haible  <bruno@clisp.org>
43789
43790         * lib/xsize.h: New file.
43791         * lib/linebreak.c: Include xsize.h.
43792         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
43793         argument for overflow.
43794         Suggested by Paul Eggert.
43795
43796 2003-11-03  Karl Berry  <karl@gnu.org>
43797
43798         * config/config.{guess,sub}: update from config.
43799
43800 2003-11-03  Jim Meyering  <jim@meyering.net>
43801
43802         * modules/userspec (lib_SOURCES): Add userspec.h.
43803         (Include): Add "userspec.h".
43804         Improve description.
43805
43806 2003-11-03  Jim Meyering  <jim@meyering.net>
43807
43808         * lib/userspec.c: Include "userspec.h".
43809         * lib/userspec.h: New file.
43810
43811 2003-11-03  Bruno Haible  <bruno@clisp.org>
43812
43813         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
43814
43815 2003-11-03  Bruno Haible  <bruno@clisp.org>
43816
43817         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
43818         available, to avoid (extremely rare) race condition.
43819         Suggested by Paul Eggert.
43820
43821 2003-11-02  Karl Berry  <karl@gnu.org>
43822
43823         * config/srclist.txt (vasprintf.c): sync broken, sigh.
43824
43825 2003-10-31  Paul Eggert  <eggert@twinsun.com>
43826
43827         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
43828         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
43829         (read_filesystem_list): Set and use me_type_malloced.
43830         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
43831         whatever the type happens to be), for brevity and consistency.
43832         Check for size calculation overflow on Alphas running OSF/1.
43833
43834 2003-10-31  Jim Meyering  <jim@meyering.net>
43835
43836         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
43837
43838         * lib/linebuffer.c: Include <string.h> for declaration of memset.
43839
43840 2003-10-30  Paul Eggert  <eggert@twinsun.com>
43841             Bruno Haible  <bruno@clisp.org>
43842
43843         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
43844         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
43845
43846 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
43847
43848         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
43849         netbsd*-gnu*.  Suggested by Robert Millan.
43850
43851 2003-10-29  Paul Eggert  <eggert@twinsun.com>
43852
43853         * modules/group-member: Depend on stdbool.
43854
43855 2003-10-29  Paul Eggert  <eggert@twinsun.com>
43856
43857         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
43858
43859 2003-10-29  Paul Eggert  <eggert@twinsun.com>
43860
43861         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
43862         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
43863         after the 'gnu' in these cases.  This fixes some bugs in the
43864         previous change, and is based on suggestions by Robert Millan.
43865
43866 2003-10-29  Paul Eggert  <eggert@twinsun.com>
43867
43868         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
43869         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
43870         no longer needed.
43871         * lib/quotearg.c (quotearg_n_options): Use it.
43872         * lib/group-member.c: Include <stdbool.h>.
43873         (free_group_info): Arg is now const *; don't free arg.
43874         (get_group_info): Now returns bool and accepts struct group_info *,
43875         rather than returning a malloc'ed struct group_info *.
43876         All uses changed.  Check for overflow in internal size calculation.
43877
43878         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
43879         rather than xmalloc/xrealloc.
43880         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
43881         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
43882         conformance bug: the old code used a pointer after freeing the
43883         storage that it addressed.
43884         * lib/hash.c (hash_initialize): Simplify the code by using
43885         xalloc_oversized rather than doing it by hand.
43886         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
43887         the buffer preserved.  Use free and xmalloc instead.
43888         * lib/quotearg.c (quotearg_n_options): Likewise.
43889         Use a simpler test for size overflow.  Don't use xalloc_oversized
43890         because unsigned int might be wider than size_t (!); this suggests
43891         that we should switch from unsigned int to size_t for slot numbers.
43892
43893 2003-10-28  Paul Eggert  <eggert@twinsun.com>
43894
43895         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
43896         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
43897         NetBSD kernels.  Requested by Richard Stallman.
43898
43899 2003-10-27  Paul Eggert  <eggert@twinsun.com>
43900
43901         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
43902         to allocate the returned structure.  Do not allocate a subarray,
43903         as x2nrealloc will do that.
43904         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
43905         instead of xnrealloc.
43906         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
43907
43908 2003-10-27  Bruno Haible  <bruno@clisp.org>
43909
43910         * lib/stdbool_.h: Better support for BeOS.
43911
43912 2003-10-26  Paul Eggert  <eggert@twinsun.com>
43913
43914         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
43915         now uses inline.
43916
43917 2003-10-26  Paul Eggert  <eggert@twinsun.com>
43918
43919         * lib/xalloc.h (xalloc_oversized): New static inline function, for
43920         callers that want to do their own size-overflow checking.  Include
43921         <stdbool.h>, since xalloc_oversized returns bool.
43922         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
43923         to use xalloc_oversized.
43924
43925         Add two functions x2realloc, x2nrealloc, for programs that grow
43926         arrays dynamically by doubling their sizes.
43927         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
43928         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
43929         New functions.
43930
43931         Port to C99 semantics for 'inline' of external functions.
43932         Bug reported by Bruno Haible.
43933         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
43934         with the old contents of xnmalloc.
43935         (xnmalloc, xmalloc): Use it.
43936         (xnrealloc_inline): New static inline function,
43937         with the old contents of xnrealloc.
43938         (xnrealloc, xrealloc): Use it.
43939
43940         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
43941         that.
43942
43943 2003-10-26  Karl Berry  <karl@gnu.org>
43944
43945         * config/srclist.txt (COPYING.DOC): no longer available from
43946         /gd/gnuorg; don't know where the ultimate source is.
43947
43948 2003-10-25  Paul Eggert  <eggert@twinsun.com>
43949
43950         Fix several address-calculation bugs in the hash modules,
43951         plus some minor code cleanup.
43952
43953         * lib/hash.h: Include <stdbool.h>, for bool.
43954         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
43955         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
43956         hash_get_n_entries, hash_get_max_bucket_length,
43957         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
43958         hash_rehash): Use size_t rather than unsigned.
43959         * lib/hash.c (struct hash_table, hash_get_n_buckets,
43960         hash_get_n_buckets_used, hash_get_n_entries,
43961         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
43962         hash_get_entries, hash_do_for_each, hash_string, is_prime,
43963         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
43964         Likewise.
43965         (SIZE_MAX): Define if not defined.
43966         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
43967         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
43968         hash_print):
43969         Use const * when possible.
43970         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
43971         (check_tuning): Fix bug: if tuning parameters were very close to
43972         0 or 1, rounding errors could have caused subscript violations.
43973         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
43974         (hash_initialize): Add 'fail:' label
43975         to free table and return NULL, and use it to simplify code.
43976         Use calloc rather than clearing the storage ourself.
43977         (hash_initialize, hash_rehash): Check for arithmetic overflow in
43978         buffer size calculations.
43979         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
43980         Include <stddef.h>, for size_t.
43981         * lib/hash-pjw.c (hash_pjw): Likewise.
43982         Switch to method described by Bruno Haible.
43983         Include <limits.h>, for CHAR_BIT.
43984         (SIZE_BITS): New macro.
43985
43986 2003-10-23  Paul Eggert  <eggert@twinsun.com>
43987
43988         * m4/getline.m4 (AM_FUNC_GETLINE):
43989         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
43990         hosts.  Problem reported by Derek Robert Price in
43991         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
43992         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
43993         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
43994
43995 2003-10-21  Paul Eggert  <eggert@twinsun.com>
43996
43997         * lib/getndelim2.c (getndelim2): When size calculation overflows,
43998         ceiling the allocation at NMAX bytes rather than silently
43999         discarding input bytes before NMAX is reached.  This makes
44000         a difference only if NMAX exceeds SIZE_MAX / 2.
44001
44002         * lib/obstack.c: Merge from glibc.
44003         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
44004         Add libc_hidden_def (_obstack_newchunk).
44005         (_obstack_free) [! defined _LIBC]: Remove.
44006         [defined _LIBC]: Make a strong alias from obstack_free, rather than
44007         a clone of the function body.
44008         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
44009         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
44010
44011         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
44012         glibc.
44013         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
44014         arg to memcpy.
44015
44016         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
44017         (obstack_ptr_grow_fast, obstack_int_grow_fast):
44018         Don't use lvalue casts, as GCC plans to remove support for them
44019         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
44020         was also present in the non-GCC version, indicating that this
44021         code had always been buggy and had never been widely used.
44022         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
44023         Use the fast variant of each macro, rather than copying the
44024         definiens of the fast variant; that way, we'll be more likely to
44025         catch future bugs in the fast variants.
44026
44027 2003-10-20  Bruno Haible  <bruno@clisp.org>
44028
44029         * modules/wait-process: New file.
44030         * MODULES.html.sh (func_all_modules): Add wait-process.
44031
44032 2003-10-20  Bruno Haible  <bruno@clisp.org>
44033
44034         * m4/wait-process.m4: New file.
44035
44036 2003-10-20  Bruno Haible  <bruno@clisp.org>
44037
44038         * lib/wait-process.h: New file, from GNU gettext.
44039         * lib/wait-process.c: New file, from GNU gettext.
44040
44041 2003-10-19  Jim Meyering  <jim@meyering.net>
44042
44043         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
44044         HPUX 10.20.
44045
44046 2003-10-18  Karl Berry  <karl@gnu.org>
44047
44048         * config/config.guess: update from config.
44049
44050 2003-10-16  Paul Eggert  <eggert@twinsun.com>
44051
44052         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
44053         (getgroups): First arg is int, not size_t.
44054         Don't let 'free' mangle errno.
44055
44056 2003-10-16  Paul Eggert  <eggert@twinsun.com>
44057
44058         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
44059
44060 2003-10-16  Karl Berry  <karl@gnu.org>
44061
44062         * config/config.{guess,sub}: update from config.
44063
44064 2003-10-16  Jim Meyering  <jim@meyering.net>
44065
44066         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
44067         memcpy.
44068
44069 2003-10-15  Paul Eggert  <eggert@twinsun.com>
44070
44071         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
44072         (SIZE_MAX): Remove.
44073         (new_exclude, add_exclude_file): Initial size no longer needs to
44074         be a power of 2.
44075         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
44076         our own address arithmetic overflow checking.
44077
44078         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
44079         (fnmatch): Do not alloca more than 2000 wide characters;
44080         instead, use malloc for large buffers.
44081         Check for address arithmetic overflow, and return -1
44082         with errno set to ENOMEM in that case.
44083         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
44084         (NEW_PATTERN): Do not alloca more than 8000 bytes;
44085         instead, return -1.  Check for address arithmetic overflow.
44086
44087 2003-10-14  Paul Eggert  <eggert@twinsun.com>
44088
44089         Handle invalid suffixes and overflow independently, so that
44090         callers can treat them independently as needed.  Fix some bugs in
44091         suffix handling, e.g., "100k@" was not diagnosed as an invalid
44092         suffix for a human-readable blocksize.  The major caller-visible
44093         change is the addition of a new
44094         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
44095         that both overflow and suffix chars were found.
44096
44097         * lib/human.c (humblock): Don't check separately for invalid suffix
44098         char; that is xstrtoumax's job (now that its bug is fixed).
44099         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
44100         INTMAX_MAX]: New macros.
44101         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
44102         TYPE_MAXIMUM): New macros.
44103         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
44104         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
44105         if overflow occurs, as it's what __strtol does and it's more useful
44106         in practice.
44107         (__xstrtol): If __strtol reports some error other than ERANGE,
44108         reflect it to the caller as LONGINT_INVALID.  If it reports
44109         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
44110         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
44111         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
44112         value.
44113         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
44114         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
44115         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
44116         [defined UINTMAX_MAX]: New macros.
44117
44118 2003-10-14  Bruno Haible  <bruno@clisp.org>
44119
44120         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
44121
44122 2003-10-14  Bruno Haible  <bruno@clisp.org>
44123
44124         * m4/sig_atomic_t: New file, from GNU gettext.
44125         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
44126
44127 2003-10-14  Bruno Haible  <bruno@clisp.org>
44128
44129         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
44130         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
44131         Also use volatile where needed.
44132
44133 2003-10-12  Paul Eggert  <eggert@twinsun.com>
44134
44135         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
44136         Change maintainer from Bruno Haible to 'all'.
44137
44138 2003-10-12  Paul Eggert  <eggert@twinsun.com>
44139
44140         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
44141
44142 2003-10-12  Paul Eggert  <eggert@twinsun.com>
44143
44144         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
44145         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
44146         and define in terms of the other primitives.
44147         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
44148         (SIZE_MAX): Define if not already defined.
44149         (array_size_overflow): New function.
44150         (xalloc_die): Abort instead of exiting if 'error' returns.
44151         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
44152         (xmalloc, xrealloc): Use them.
44153         (xcalloc): Check for address arithmetic overflow.
44154         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
44155         a bit faster than strcpy.
44156
44157 2003-10-10  Simon Josefsson  <jas@extundo.com>
44158
44159         * modules/argp (Depends-on): Add restrict and strcase.
44160
44161 2003-10-10  Simon Josefsson  <jas@extundo.com>
44162
44163         * m4/argp.m4: Add AC_C_INLINE.
44164
44165 2003-10-08  Paul Eggert  <eggert@twinsun.com>
44166
44167         Merge getpass from libc, plus a few fixes.
44168
44169         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
44170         Include <stdbool.h>.
44171         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
44172         __fsetlocking to empty.
44173         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
44174         do include <bits/libc-lock.h>.
44175         Do not include <fcntl.h>; not needed.
44176         [_LIBC]: Include <wchar.h>.
44177         (NOTCANCEL_MODE): New macro.
44178         (flockfile, funlockfile) [_LIBC]: New macros.
44179         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
44180         [!_LIBC]: New macros.
44181         (call_fclose): New function.
44182         (getpass): Use it.  Save tty stream separately; this simplifies the
44183         code and makes it more reliable if stdin happens to equal stdout.
44184         Invoke __fsetlocking on tty.
44185         Handle thread cancellation if needed.
44186         Namespace cleanup (use __tcgetattr, __getline).
44187         Use bool for Booleans.
44188         [USE_IN_LIBIO]: Handle wide streams.
44189         [!_LIBC]: Unconditionally do the fseek, since we don't know what
44190         stream might go where.
44191
44192         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
44193         doesn't have to include <stdio.h> before us.
44194         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
44195         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
44196         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
44197         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
44198         if not declared, so that we can use getpass.c code from libc without
44199         rewriting it.
44200         (flockfile, ftrylockfile, funlockfile): New macros.
44201
44202 2003-10-08  Paul Eggert  <eggert@twinsun.com>
44203
44204         * modules/getpass: Depend on stdbool.
44205
44206 2003-10-08  Paul Eggert  <eggert@twinsun.com>
44207
44208         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
44209
44210 2003-10-07  Karl Berry  <karl@gnu.org>
44211
44212         * config/config.{guess,sub}: update from config.
44213
44214 2003-10-06  Jim Meyering  <jim@meyering.net>
44215             Bruno Haible  <bruno@clisp.org>
44216
44217         This lets translators provide better translations for the
44218         "Written by ..." part of --version output.
44219         * lib/version-etc.h: Include stdarg.h.
44220         (version_etc_copyright): Declare as readonly.
44221         (version_etc): Make this function variadic with a NULL-terminated list
44222         of author name strings.
44223         (version_etc_va): New declaration.
44224         * lib/version-etc.c: Include stdarg.h, stdlib.h.
44225         (version_etc_copyright): Declare as readonly.
44226         (version_etc_va): New function. Provide a different translatable string
44227         for each possible number of authors < 10. Abbreviate when there are 10
44228         authors or more.
44229         (version_etc): Make this function variadic. Call version_etc_va.
44230         Suggestion from Gary V. Vaughan.
44231
44232         * lib/long-options.h (parse_long_options): Change prototype: the
44233         authors string is moved to the end and becomes variadic.
44234         * lib/long-options.c: Include stdarg.h.
44235         (parse_long_options): Make this function variadic, too.
44236         Call version_etc_va, not version_etc.
44237
44238 2003-10-06  Bruno Haible  <bruno@clisp.org>
44239
44240         * modules/version-etc-2: Remove file.
44241         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
44242
44243 2003-10-06  Bruno Haible  <bruno@clisp.org>
44244
44245         * modules/fatal-signal: New file.
44246         * MODULES.html.sh (func_all_modules): Add fatal-signal.
44247
44248 2003-10-06  Bruno Haible  <bruno@clisp.org>
44249
44250         * m4/fatal-signal.m4: New file.
44251         * m4/signalblocking.m4: New file, from GNU gettext.
44252
44253 2003-10-06  Bruno Haible  <bruno@clisp.org>
44254
44255         * lib/version-etc-2.h: Remove file.
44256         * lib/version-etc-2.c: Remove file.
44257
44258 2003-10-06  Bruno Haible  <bruno@clisp.org>
44259
44260         * lib/fatal-signal.h: New file, from GNU gettext.
44261         * lib/fatal-signal.c: New file, from GNU gettext.
44262
44263 2003-10-05  Paul Eggert  <eggert@twinsun.com>
44264
44265         * README: Rework advice for preventing empty .o files.
44266         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
44267         not <sys/types.h>.
44268
44269 2003-10-04  Karl Berry  <karl@gnu.org>
44270
44271         * lib/argp*: update from libc.
44272
44273 2003-10-04  Karl Berry  <karl@gnu.org>
44274
44275         * config/config.{guess,sub}: update from config.
44276
44277 2003-10-02  Bruno Haible  <bruno@clisp.org>
44278
44279         * modules/lchown (Include): Add lchown.h.
44280         * modules/time_r (Include): Use "..." syntax.
44281         * modules/xgetdomainname (Include): Add xgetdomainname.h.
44282
44283 2003-10-01  Simon Josefsson  <jas@extundo.com>
44284
44285         * MODULES.html.sh (func_all_modules): Move gethostname from section
44286         'based on' to section 'lacking' POSIX:2001.
44287
44288 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
44289
44290         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
44291         to output mode on the same stream.
44292
44293 2003-09-29  Paul Eggert  <eggert@twinsun.com>
44294
44295         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
44296         Fix arg typo in previous patch.
44297
44298 2003-09-28  Jim Meyering  <jim@meyering.net>
44299
44300         * lib/error.c: Correct cpp indentation.
44301
44302 2003-09-27  Paul Eggert  <eggert@twinsun.com>
44303
44304         * modules/free: New file.
44305
44306 2003-09-27  Paul Eggert  <eggert@twinsun.com>
44307
44308         * m4/free.m4: New file.
44309
44310 2003-09-27  Paul Eggert  <eggert@twinsun.com>
44311
44312         * lib/minmax.h (MIN, MAX)
44313         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
44314         Omit the special code that used __typeof__, since we worry that
44315         it could be more trouble than it's worth.  See:
44316         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
44317         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
44318
44319         * lib/free.c: New file.
44320
44321 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
44322
44323         Trivial fixes to Makefile.am parts of module listings.
44324         * modules/strstr: Append strstr.h to lib_SOURCES.
44325         * modules/strcase: Likewise, for strcase.h.
44326
44327 2003-09-27  Karl Berry  <karl@gnu.org>
44328
44329         * config/mkinstalldirs: update from automake.
44330
44331 2003-09-26  Paul Eggert  <eggert@twinsun.com>
44332
44333         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
44334         (error_tail): Do not loop, reallocating temporary buffer, since
44335         the output cannot contain more wide characters than the input
44336         contains bytes, the size must be big enough already.  This avoids
44337         one potential size overflow calculation.  Check for size overflow
44338         when calculating temporary buffer size.  Free temporary buffer
44339         when done, if it was allocated with malloc; this plugs a memory
44340         leak.  Remove casts from void * to pointers, that are no longer
44341         needed now that we're assuming C89 or better.
44342
44343         Merge error changes from glibc.
44344
44345         * lib/error.c, error.h: Update copyright notice header to match glibc.
44346         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
44347         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
44348         Disable cancellation while printing error.
44349         * lib/error.h: Prepend __ to parameter names.
44350
44351 2003-09-26  Jim Meyering  <jim@meyering.net>
44352
44353         * lib/error.c (error_tail): Move some declarations
44354         into inner scope where the local variables are used.
44355
44356 2003-09-26  Bruno Haible  <bruno@clisp.org>
44357
44358         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
44359         stpncpy().
44360         Don't define stpncpy through config.h; it's now done through stpncpy.h.
44361
44362 2003-09-26  Bruno Haible  <bruno@clisp.org>
44363
44364         * lib/stpncpy.h (gnu_stpncpy): New declaration.
44365         (stpncpy): Define as alias for gnu_stpncpy.
44366         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
44367
44368 2003-09-25  Simon Josefsson  <jas@extundo.com>
44369
44370         * lib/xgetdomainname.h: New file.
44371         * lib/xgetdomainname.c: New file.
44372
44373 2003-09-25  Simon Josefsson  <jas@extundo.com>
44374             Bruno Haible  <bruno@clisp.org>
44375
44376         * modules/getdomainname: New file.
44377         * modules/xgetdomainname: New file.
44378         * MODULES.html.sh (func_all_modules): Add getdomainname,
44379         xgetdomainname.
44380
44381 2003-09-25  Simon Josefsson  <jas@extundo.com>
44382             Bruno Haible  <bruno@clisp.org>
44383
44384         * m4/getdomainname.m4: New file.
44385
44386 2003-09-25  Simon Josefsson  <jas@extundo.com>
44387             Bruno Haible  <bruno@clisp.org>
44388
44389         * lib/getdomainname.h: New file.
44390         * lib/getdomainname.c: New file.
44391
44392 2003-09-25  Karl Berry  <karl@gnu.org>
44393
44394         * lib/argp-fmtstream.c, argp-help.c: update from libc.
44395
44396 2003-09-25  Karl Berry  <karl@gnu.org>
44397
44398         * config/install-sh: update from automake.
44399
44400 2003-09-25  Bruno Haible  <bruno@clisp.org>
44401
44402         * modules/version-etc-2: New file, from modules/version-etc with
44403         modifications.
44404         * MODULES.html.sh (func_all_modules): Add version-etc-2.
44405
44406 2003-09-25  Bruno Haible  <bruno@clisp.org>
44407
44408         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
44409         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
44410
44411 2003-09-24  Simon Josefsson  <jas@extundo.com>
44412
44413         * modules/xgethostname: Add xgethostname.h.
44414
44415 2003-09-24  Paul Eggert  <eggert@twinsun.com>
44416
44417         * lib/linebuffer.c (freebuffer): Don't free the argument, just
44418         the buffer associated with the argument.  Bug reported by
44419         Simon Josefsson.
44420
44421 2003-09-24  Paul Eggert  <eggert@twinsun.com>
44422
44423         * README: Document assumptions that 'int' is at least 32 bits
44424         wide, that integer arithmetic is 2's complement without overflow,
44425         that there are no holes in integer values, that adding sizes of
44426         two nonoverlapping objects can't overflow, and that all-bits-zero
44427         yields scalar zero.  Fix spelling and capitalization typos.
44428
44429 2003-09-19  Karl Berry  <karl@gnu.org>
44430
44431         * lib/argp.h: update from libc.
44432
44433 2003-09-17  Paul Eggert  <eggert@twinsun.com>
44434
44435         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
44436         to avoid spurious warnings like "AC_RUN_IFELSE was called before
44437         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
44438
44439 2003-09-17  Paul Eggert  <eggert@twinsun.com>
44440
44441         * gnulib-tool: Use "test -h", not "test -L", for portability
44442         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
44443         (tags_regexp): Remove, since \| doesn't conform to POSIX.
44444         (sed_extract_prog): Issue s commands one-by-one, rather than
44445         using \| in one s command.
44446
44447 2003-09-16  Paul Eggert  <eggert@twinsun.com>
44448
44449         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
44450         input error, instead of returning NULL the next time we are called
44451         (and therefore losing track of errno).
44452
44453 2003-09-16  Bruno Haible  <bruno@clisp.org>
44454
44455         * gnulib-tool (func_create_testdir): Warn about duplicated
44456         dependencies.
44457
44458 2003-09-15  Paul Eggert  <eggert@twinsun.com>
44459
44460         * modules/argmatch, modules/fatal, modules/obstack,
44461         modules/xalloc, modules/xgethostname: Sort dependencies by
44462         importance, not alphabetically.
44463
44464 2003-09-15  Paul Eggert  <eggert@twinsun.com>
44465
44466         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
44467         fails, so that the caller gets the proper errno.
44468
44469         * lib/readutmp.c (read_utmp): Likewise.
44470         Check for fstat error.  Close stream and free storage
44471         when failing.
44472
44473 2003-09-14  Karl Berry  <karl@gnu.org>
44474
44475         * config/srclist.txt (strdup.c): disable for c89 changes.
44476
44477 2003-09-14  Jim Meyering  <jim@meyering.net>
44478
44479         * lib/getloadavg.c: Correct cpp indentation.
44480         * lib/strdup.c: Likewise.
44481         * lib/vasnprintf.c: Likewise.
44482
44483 2003-09-14  Bruno Haible  <bruno@clisp.org>
44484
44485         * modules/fwriteerror: New file.
44486         * MODULES.html.sh (func_all_modules): Add fwriteerror.
44487
44488 2003-09-14  Bruno Haible  <bruno@clisp.org>
44489
44490         * lib/fwriteerror.h: New file.
44491         * lib/fwriteerror.c: New file.
44492
44493 2003-09-12  Paul Eggert  <eggert@twinsun.com>
44494
44495         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
44496         modules/xgethostname, modules/xalloc: Depend on exit.
44497
44498 2003-09-12  Paul Eggert  <eggert@twinsun.com>
44499
44500         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
44501
44502         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
44503         and AC_MINIX, too, so that their extensions are available.
44504
44505         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
44506         This macro has been superseded by gl_BACKUPFILE.
44507
44508         More patches to assume C89 or better.
44509
44510         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
44511
44512         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
44513         unconditionally.
44514         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
44515         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
44516         Include <string.h>, <stdlib.h> unconditionally.
44517         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
44518         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
44519         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
44520         headers or for string.h.
44521         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
44522         or strtoul.
44523
44524         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
44525         headers.
44526         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
44527         * m4/userspec.m4 (gl_USERSPEC): Likewise.
44528         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
44529         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
44530         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
44531         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
44532         memcpy, memset.
44533         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
44534         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
44535         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
44536         strtol.
44537         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
44538         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
44539         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
44540         strtoul.
44541
44542 2003-09-12  Paul Eggert  <eggert@twinsun.com>
44543
44544         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
44545         * lib/obstack.c [!defined _LIBC]: Likewise.
44546         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
44547         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
44548         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
44549
44550         More changes to assume C89 or better.
44551
44552         * lib/error.c (error_tail): Assume vprintf.
44553
44554         * lib/argmatch.c (getenv): Remove decl.
44555         * lib/progreloc.c (get_full_program_name): Define via prototype.
44556         * lib/setenv.c (clearenv): Likewise.
44557         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
44558         needed.
44559         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
44560         (malloc, memcpy): Remove decls.
44561         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
44562         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
44563         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
44564         (memcpy): Remove macro.
44565         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
44566         (__P): Remove.  All uses removed.
44567         (PTR): Remove.  All uses changed to void *.
44568         (CHAR_BIT, NULL): Remove.
44569         (spaces, zeros, memset_space, memset_zero)
44570         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
44571         Remove.
44572         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
44573         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
44574         Define with prototype.
44575         Remove now-unnecessary prototype decl.
44576         (extra_args_spec): Assume ANSI C.  All uses changed.
44577         (extra_args_spec_iso): Remove.
44578         (my_strftime, emacs_strftimeu): Define via prototype.
44579         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
44580         unconditionally.
44581         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
44582         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
44583         (strtoul, strtol): Remove decls.
44584         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
44585         LONG_MAX): Remove.
44586         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
44587         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
44588         (LOCALE_PARAM_PROTO): New macro.
44589         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
44590         (INTERNAL (strtol), strtol): Define with a prototype.
44591         (PARAMS): Remove.  All uses removed.
44592         * lib/tempname.c: Include <string.h> unconditionally.
44593         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
44594         * lib/xgethostname.c (main): Define with a prototype.
44595         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
44596         Include <stdlib.h> unconditionally.
44597         (calloc, malloc, realloc, free): Remove decls.
44598         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
44599         Include <stdlib.h> unconditionally.  Sort include file names.
44600         (strtod): Remove.
44601         (xstrtod): Define with a prototype.
44602         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
44603         (strtol, strtoul): Remove decls.
44604
44605 2003-09-11  Paul Eggert  <eggert@twinsun.com>
44606
44607         More patches to assume C89 or better.
44608         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
44609         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
44610         string.h, memchr, STDC_HEADERS.
44611
44612 2003-09-11  Paul Eggert  <eggert@twinsun.com>
44613
44614         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
44615         Include <stdlib.h>, <string.h> unconditionally.
44616         Remove now-unnecessary cast to char *.
44617         * lib/strnlen.c: Include <string.h> unconditionally.
44618         * lib/yesno.c (yesno): Define with a prototype.
44619
44620 2003-09-11  Bruno Haible  <bruno@clisp.org>
44621
44622         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
44623
44624 2003-09-10  Jim Meyering  <jim@meyering.net>
44625
44626         * lib/error.c: Correct indentation of cpp directives.
44627
44628 2003-09-10  Bruno Haible  <bruno@clisp.org>
44629
44630         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
44631         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
44632         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
44633         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
44634         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
44635         <stdlib.h> and <string.h> checks.
44636         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
44637         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
44638
44639 2003-09-10  Bruno Haible  <bruno@clisp.org>
44640
44641         * lib/strcspn.c: Include <string.h> unconditionally.
44642         * lib/strpbrk.c: Include <string.h> unconditionally.
44643         * lib/strstr.c: Include <string.h> unconditionally.
44644         * lib/unicodeio.c: Include <string.h> unconditionally.
44645         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
44646         * lib/unsetenv.c: Likewise.
44647         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
44648         * lib/yesno.c: Include <stdlib.h> unconditionally.
44649         (rpmatch): Add prototype.
44650
44651 2003-09-09  Paul Eggert  <eggert@twinsun.com>
44652
44653         More patches to assume C89 or better.
44654         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
44655         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
44656         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
44657         or for string.h.
44658         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
44659         stdlib.h.
44660         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
44661         C headers.
44662         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
44663         string.h.
44664         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
44665         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
44666         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
44667         or for string.h.
44668         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
44669         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
44670         C headers.
44671         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
44672         memcpy.
44673         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
44674         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
44675         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
44676         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
44677         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
44678         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
44679         string.h, free.
44680         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
44681         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
44682         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
44683         C headers, or for string.h.
44684         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
44685         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
44686         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
44687         headers, memory.h, stdlib.h, string.h, strings.h.
44688         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
44689         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
44690         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
44691         strchr.
44692         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
44693         headers, memory.h, string.h.
44694         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
44695         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
44696         free.
44697         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
44698         headers.
44699         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
44700         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
44701         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
44702         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
44703         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
44704
44705 2003-09-09  Paul Eggert  <eggert@twinsun.com>
44706
44707         More K&R removal.
44708
44709         * lib/acosl.c (main): Use a prototype.
44710         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
44711         tanl.c: Likewise.
44712
44713         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
44714
44715         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
44716         (getopt, etopt_long, getopt_long_only, _getopt_internal)
44717         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
44718         with a prototype.
44719         * lib/getopt.c (const): Remove macro.
44720         Include <string.h> unconditionally.
44721         (my_index): Remove; all uses changed to strchr.
44722         (strlen): Remove decl.
44723         (exchange): Remove forward decl; no longer needed.
44724         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
44725         Define with prototype.
44726         * lib/getopt1.c (const): Remove macro.
44727         (getopt_long, getopt_long_only, main): Define with prototype.
44728
44729         * lib/getugroups.c: Include <string.h> unconditionally.
44730
44731         * lib/getusershell.c: Include <stdlib.h> unconditionally.
44732         (getusershell, setusershell, endusershell, readname, main):
44733         Define with prototypes.
44734
44735         * lib/group-member.c: Include group-member.h first.
44736         Include <stdlib.h> unconditionally.
44737
44738         * lib/hard-locale.c: Include hard-locale.h first.
44739         Include <stdlib.h>, <string.h> unconditionally.
44740
44741         * lib/hash.c (free, malloc): Remove decls.
44742         Include <stdlib.h> unconditionally.
44743
44744         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
44745         (getenv): Do not declare.
44746
44747         * lib/idcache.c: Include <string.h> unconditionally.
44748
44749         * lib/long-options.c: Include long-options.h first, to test interface.
44750         Include <stdlib.h> unconditionally.
44751
44752         * lib/makepath.c: Include makepath.h first, to test interface.
44753         Include <stdlib.h> and <string.h> unconditionally.
44754
44755         * lib/linebuffer.c: Include <stdlib.h>.
44756         (free): Remove decl.
44757
44758         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
44759         stddef.h. rpl_malloc returns void *, not char *.
44760         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
44761         prototype.
44762
44763         * lib/md5.h: Include <limits.h> unconditionally.
44764         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
44765         (__P): Remove; all uses removed.
44766         * lib/md5.c: Include "md5.h" first.
44767         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
44768         md5_buffer, md5_process_bytes, md5_process_block):
44769         Define with prototypes.
44770         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
44771         * lib/sha.c: Include "sha.h" first.
44772         Include <stdlib.h>, <string.h> unconditionally.
44773
44774         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
44775         * lib/memcmp.c (__ptr_t): Likewise.
44776         * lib/memrchr.c (__ptr_t): Likewise.
44777         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
44778         Include <string.h> unconditionally.
44779         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
44780         * lib/memchr.c: Include <stdlib.h> unconditionally.
44781         * lib/memchr.c (LONG_MAX): Remove.
44782         * lib/memrchr.c (LONG_MAX): Likewise.
44783         * lib/memchr.c (__memchr): Define via a prototype.
44784         * lib/memrchr.c (__memrchr): Likewise.
44785         * lib/memcmp.c (__P): Remove, and remove all uses.
44786         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
44787         Remove forward decls; no longer needed.
44788         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
44789         Use types required by C89 in prototype.
44790
44791         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
44792         * lib/savedir.c: Likewise.
44793         * lib/mkdir.c (free): Remove decl.
44794         * lib/rmdir.c (rmdir): Define with a prototype.
44795         * lib/savedir.c: Include savedir.h first, to test interface.
44796
44797         * lib/mktime.c (STDC_HEADERS): Remove.
44798         Include <stdlib.h>, <string.h> unconditionally.
44799
44800         * lib/modechange.c: Include <stdlib.h> unconditionally.
44801         (malloc): Remove decl.
44802
44803         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
44804         (free): Remove decl.
44805
44806         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
44807         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
44808         (This type really should be intptr_t, but that's a C99ism.)
44809         (_obstack_memcpy): Remove: all uses changed to memcpy.
44810         Include <string.h> unconditionally.
44811         (struct obstack): Assume __STDC__ for types of members
44812         chunkfun, freefun, extra_arg.
44813         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
44814         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
44815         obstack_begin, obstack_specify_allocation,
44816         obstack_specify_allocation_with_arg, obstack_chunkfun,
44817         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
44818         Remove unprototyped decls and the macros that use them.
44819         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
44820         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
44821         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
44822         (defined __STDC__ && __STDC__)]:
44823         Remove nonprototyped code.
44824         Include <stdlib.h> unconditionally.
44825         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
44826         _obstack_allocated_p, _obstack_free, obstack_free,
44827         _obstack_memory_used, print_and_abort):
44828         Define using prototypes.
44829         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
44830         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
44831         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
44832         obstack_next_free, obstack_object_size, obstack_room) [0]:
44833         Remove unused, unprototyped code.
44834
44835         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
44836
44837         * lib/physmem.c (physmem_total, physmem_available, main): Define
44838         with prototypes.
44839
44840         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
44841         (main): Define with a prototype.
44842
44843         * lib/posixver.c (getenv): Remove decl.
44844
44845         * lib/putenv.c (malloc): Returns void *, not char *.
44846         Include <string.h> unconditionally.
44847         (strchr, memcpy, NULL): Do not define.
44848
44849         * lib/readtokens.c: Include readtokens.h first, to test interface.
44850         Include <stdlib.h>, <string.h> unconditionally.
44851         (init_tokenbuffer): Define with a prototype.
44852
44853         * lib/regex.c (PARAMS): Remove.  All uses removed.
44854         All uses of _RE_ARGS removed, too.
44855         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
44856         unconditionally.
44857         (bzero): Assume memset exists.
44858         (memcmp, memcpy, NULL): Remove.
44859         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
44860         char, or assignments to local vars of type signed char.
44861         (init_syntax_once, PREFIX(extract_number_and_incr),
44862         PREFIX(print_partial_compiled_pattern),
44863         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
44864         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
44865         PREFIX(regex_grow_registers), PREFIX(regex_compile),
44866         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
44867         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
44868         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
44869         wcs_compile_range, byte_compile_range, truncate_wchar,
44870         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
44871         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
44872         count_mbs_length, wcs_re_match_2_internal,
44873         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
44874         PREFIX(alt_match_null_string_p),
44875         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
44876         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
44877         regfree, PREFIX(extract_number)): Define with prototype.  Remove
44878         now-unnecessary declaration, if any.
44879         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
44880         regcomp, regexec):
44881         Remove now-unnecessary casts among pointer types.
44882         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
44883
44884         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
44885         (free): Remove decl.
44886
44887         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
44888
44889         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
44890         (free): Remove decl.
44891
44892         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
44893         * lib/xgetcwd.c: Likewise.
44894
44895         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
44896         (free): Remove decl.
44897
44898         * lib/strchrnul.c (strchrnul): Define with a prototype.
44899         Fix bug: c_in was not converted to char before searching.
44900
44901         The following changes are not K&R related:
44902
44903         * lib/group-member.h: Include <sys/types.h>, so that this file is
44904         self-contained.
44905         * lib/makepath.h: Likewise.
44906
44907         * lib/getusershell.c (readname, default_index, line_size, readname):
44908         Use size_t, not int, for sizes.
44909         (readname): If the size overflows, report an error instead of
44910         looping forever.
44911
44912 2003-09-09  Paul Eggert  <eggert@twinsun.com>
44913
44914         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
44915         libc.
44916
44917 2003-09-09  Paul Eggert  <eggert@twinsun.com>
44918
44919         * README: New section: portability guidelines.
44920
44921 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
44922
44923         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
44924         C89 spec.
44925
44926 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
44927
44928         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
44929
44930 2003-09-08  Paul Eggert  <eggert@twinsun.com>
44931
44932         Assume C89 or better; remove K&R cruft.
44933         A few of these changes were first proposed by Derek Robert Price
44934         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
44935
44936         * lib/addext.c: Include <string.h> unconditionally.
44937         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
44938         Don't declare getenv or malloc.
44939
44940         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
44941         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
44942         (NULL): Remove.
44943         (find_stack_direction, alloca): Use prototypes.
44944
44945         * lib/atexit.c (atexit): Define using a prototype.
44946
44947         * lib/basename.c, dirname.c, stripslash.c:
44948         Include <string.h> unconditionally.
44949
44950         * lib/bcopy.c: Include <stddef.h>.
44951         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
44952
44953         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
44954
44955         * lib/error.h (error, error_at_line, error_print_progname)
44956         [! (defined (__STDC__) && __STDC__)]: Remove decls.
44957         * lib/error.c: Include error.h first, to check interface.
44958         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
44959         (VA_START): Remove; all uses changeed to va_start.
44960         (exit, strerror): Remove decls.
44961         (error_print_progname): Prototype uncondionally.
44962         Don't include <errno.h>; no longer needed.
44963         (private_strerror): Remove.
44964         (error_tail): Always define.
44965         (error, error_at_line): Assume C89 or better; always use prototypes.
44966         * lib/fatal.c: Include "fatal.h" first, to test interface.
44967         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
44968         (VA_START): Remove; all uses changed to va_start.
44969         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
44970         this case.
44971         (exit): Remove decl.
44972         (fatal): Prototype unconditionally.  Assume va_start works.
44973         Abort at end, to pacify gcc.
44974
44975         * lib/euidaccess.c (main): Define with a prototype.
44976
44977         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
44978
44979         * lib/exitfail.c: Include <stdlib.h> unconditionally.
44980
44981         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
44982         prototypes.
44983         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
44984         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
44985         (getenv): Remove decl.
44986         (fnmatch): Define using a prototype.
44987         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
44988         (FCT): Define using a prototype.
44989
44990         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
44991
44992         * lib/gethostname.c: Include <stddef.h>.
44993         (gethostname): Define with prototype.  Length is size_t, not int.
44994
44995 2003-09-08  Paul Eggert  <eggert@twinsun.com>
44996
44997         Assume C89 or better; remove K&R cruft.
44998         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
44999         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
45000         string.h, getenv, malloc.
45001         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
45002         headers.
45003         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
45004         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
45005         do not check for strerror.
45006         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
45007         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
45008         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
45009         do not check for doprnt or vprintf.
45010         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
45011         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
45012
45013 2003-09-08  Paul Eggert  <eggert@twinsun.com>
45014
45015         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
45016         getversion.c should have been removed then, but was accidentally
45017         preserved.
45018
45019         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
45020         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
45021
45022 2003-09-08  Karl Berry  <karl@gnu.org>
45023
45024         * config/config.sub, config.guess, srclistvars.sh: update from savannah
45025                 config, forget about prep.
45026
45027         * config/depcomp, missing: update from automake.
45028
45029 2003-09-07  Paul Eggert  <eggert@twinsun.com>
45030
45031         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
45032         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
45033
45034 2003-09-07  Paul Eggert  <eggert@twinsun.com>
45035
45036         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
45037         copy_tm_result.  Bug reported by Simon Josefsson in
45038         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
45039
45040 2003-09-06  Paul Eggert  <eggert@twinsun.com>
45041
45042         * m4/time_r.m4: New file.
45043         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
45044         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
45045         is. Check for timegm declaration.
45046         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
45047         Do not check for gmtime_r.
45048         Replace mktime if __mktime_internal does not exist and if mktime
45049         hasn't been replaced already.
45050
45051 2003-09-06  Paul Eggert  <eggert@twinsun.com>
45052
45053         * lib/time_r.c, lib/time_r.h: New files.
45054
45055         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
45056         __localtime_r.
45057         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
45058         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
45059
45060         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
45061         __gmtime_r.
45062         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
45063         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
45064         Include <time_r.h>.
45065
45066         * lib/timegm.c: Switch to glibc implementation, with the following
45067         changes:
45068         [defined HAVE_CONFIG_H]: Include <config.h>.
45069         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
45070         (__mktime_internal) [!defined _LIBC]: New decl.
45071         (__gmtime_r) [!defined _LIBC]: New macro and function.
45072         (timegm): Use a prototype, since gnulib assumes C89.
45073         Do not bother declaring tmp to be const, as it's not really usefu.
45074         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
45075         (timegm): Declare only if HAVE_DECL_TIMEGM.
45076
45077 2003-09-06  Paul Eggert  <eggert@twinsun.com>
45078
45079         * MODULES.html.sh (func_all_modules): Add time_r.
45080         * modules/time_r: New file.
45081         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
45082         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
45083
45084 2003-09-03  Paul Eggert  <eggert@twinsun.com>
45085
45086         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
45087         Bug reported by Lute Kamstra in
45088         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
45089
45090         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
45091         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
45092         course with correspondingly smaller numbers for tomorrow and
45093         yesterday.  From Tadayoshi Funaba.  Originally installed into
45094         sh-utils on 1999-08-07, but the patch got lost (I guess during the
45095         coreutils merge?).
45096
45097 2003-08-31  Simon Josefsson  <jas@extundo.com>
45098
45099         * modules/timegm: New file.
45100         * MODULES.html.sh (func_all_modules): Add timegm.
45101
45102 2003-08-31  Simon Josefsson  <jas@extundo.com>
45103
45104         * m4/timegm.m4: New file.
45105
45106 2003-08-31  Simon Josefsson  <jas@extundo.com>
45107
45108         * lib/timegm.h: New file.
45109         * lib/timegm.c: New file.  Based on
45110         wget-1.8.2/src/http.c:mktime_from_utc.
45111
45112 2003-08-31  Karl Berry  <karl@gnu.org>
45113
45114         * lib/argp.h: update from libc.
45115
45116 2003-08-28  Bruno Haible  <bruno@clisp.org>
45117
45118         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
45119         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
45120         followed by '#define fnmatch fnmatch_posix' gives an error.
45121
45122 2003-08-28  Bruno Haible  <bruno@clisp.org>
45123
45124         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
45125         warning on QNX, which defines O_BINARY to 000000.
45126
45127 2003-08-27  Jim Meyering  <jim@meyering.net>
45128
45129         * m4/mkstemp.m4: Require that the system mkstemp be able to create
45130         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
45131         would fail after 32.  Reported by Danny Levinson.  Details here:
45132         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
45133
45134 2003-08-24  Bruno Haible  <bruno@clisp.org>
45135
45136         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
45137         MSVC7 <stdio.h> is included later.
45138
45139 2003-08-22  Simon Josefsson  <jas@extundo.com>
45140
45141         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
45142
45143 2003-08-20  Karl Berry  <karl@gnu.org>
45144
45145         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
45146
45147 2003-08-20  Bruno Haible  <bruno@clisp.org>
45148
45149         * modules/progname: New file.
45150         * MODULES.html.sh (func_all_modules): Add progname.
45151
45152 2003-08-20  Bruno Haible  <bruno@clisp.org>
45153
45154         * lib/progname.h: New file, from GNU gettext.
45155         * lib/progname.c: New file, from GNU gettext.
45156         * lib/progreloc.c: New file, from GNU gettext.
45157
45158 2003-08-19  Jim Meyering  <jim@meyering.net>
45159
45160         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
45161         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
45162
45163 2003-08-19  Bruno Haible  <bruno@clisp.org>
45164
45165         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
45166         more.
45167
45168 2003-08-19  Bruno Haible  <bruno@clisp.org>
45169
45170         * lib/xstrdup.c: Assume <string.h> exists.
45171
45172 2003-08-18  Paul Eggert  <eggert@twinsun.com>
45173
45174         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
45175         in makefile rules.
45176
45177 2003-08-18  Jim Meyering  <jim@meyering.net>
45178
45179         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
45180         * m4/lib-ld.m4: Likewise.
45181
45182 2003-08-18  Jim Meyering  <jim@meyering.net>
45183
45184         * lib/setenv.h: Indent nested cpp directive.
45185         * lib/vasnprintf.c: Remove trailing blanks.
45186
45187 2003-08-17  Simon Josefsson  <jas@extundo.com>
45188
45189         * modules/xstrndup: New file.
45190         * MODULES.html.sh (func_all_modules): Add xstrndup.
45191
45192 2003-08-17  Simon Josefsson  <jas@extundo.com>
45193
45194         * modules/argp: Fix autoconf macro name. Add more dependencies.
45195
45196 2003-08-17  Simon Josefsson  <jas@extundo.com>
45197
45198         * m4/xstrndup.m4: New file.
45199
45200 2003-08-17  Simon Josefsson  <jas@extundo.com>
45201
45202         * m4/argp.m4: New file.
45203
45204 2003-08-17  Simon Josefsson  <jas@extundo.com>
45205             Bruno Haible  <bruno@clisp.org>
45206
45207         * lib/xstrndup.h: New file.
45208         * lib/xstrndup.c: New file.
45209
45210 2003-08-17  Bruno Haible  <bruno@clisp.org>
45211
45212         * modules/strndup (Files, Include): Add lib/strndup.h.
45213
45214 2003-08-17  Bruno Haible  <bruno@clisp.org>
45215
45216         * modules/euidaccess (Files): Add lib/euidaccess.h.
45217
45218 2003-08-17  Bruno Haible  <bruno@clisp.org>
45219
45220         * lib/strndup.h: New file.
45221
45222 2003-08-17  Bruno Haible  <bruno@clisp.org>
45223
45224         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
45225         like AC_GNU_SOURCE.
45226         * modules/extensions (configure.ac): Comment out the invocation of
45227         gl_USE_SYSTEM_EXTENSIONS.
45228
45229 2003-08-16  Paul Eggert  <eggert@twinsun.com>
45230
45231         Merges from coreutils, etc.
45232         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
45233         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
45234         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
45235         fixing a typo.
45236         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
45237         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
45238
45239 2003-08-16  Paul Eggert  <eggert@twinsun.com>
45240
45241         Document merge from coreutils.
45242         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
45243         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
45244         * modules/utime: Add m4/utimes-null.m4.
45245
45246 2003-08-16  Paul Eggert  <eggert@twinsun.com>
45247
45248         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
45249         space, undoing this 2003-08-12 change:
45250         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
45251
45252 2003-08-16  Paul Eggert  <eggert@twinsun.com>
45253
45254         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
45255         strtoul.c from libc, undoing this 2003-08-12 change:
45256         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
45257
45258 2003-08-16  Jim Meyering  <jim@meyering.net>
45259
45260         Merges from coreutils.
45261         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
45262         prefix.  Adjust cache variables similarly.  Create 500 rather than
45263         just 300 files, to exercise bug on Darwin6.5, too.
45264         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
45265         $missing_dir.
45266         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
45267         AM_SYS_POSIX_TERMIOS.
45268         Reported by mkc@mathdogs.com.
45269         Also change use of $am_cv_sys_posix_termios
45270         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
45271         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
45272         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
45273         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
45274         in /proc/mounts until it finds one with matching device number.  This
45275         is unnecessary when the FILE argument *is* a mount point.  No stat call
45276         is necessary in that case.  So, disable the statvfs-testing code on
45277         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
45278         as RedHat bug# 84846.
45279         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
45280         to 1MB, so as not to render systems with no stack size limit (e.g.,
45281         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
45282         Include <unistd.h>.  On some systems,
45283         it is required for the definition of _SC_PAGESIZE.
45284
45285 2003-08-16  Jim Meyering  <jim@meyering.net>
45286
45287         Merge from coreutils.
45288         * lib/xstrtoimax.c: #else #if -> #elif.
45289         * lib/xstrtoumax.c: Likewise.
45290
45291 2003-08-16  Jim Meyering  <jim@meyering.net>
45292
45293         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
45294         * m4/utimes.m4: Removed.
45295         * m4/utimes-null.m4: Renamed from utimes.m4.
45296
45297         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
45298         to 1MB, so as not to render systems with no stack size limit (e.g.,
45299         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
45300         Include <unistd.h>.  On some systems,
45301         it is required for the definition of _SC_PAGESIZE.
45302
45303 2003-08-16  Jim Meyering  <jim@meyering.net>
45304         and Paul Eggert  <eggert@cs.ucla.edu>
45305
45306         Merges from coreutils, etc.
45307
45308         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
45309         using the latest version from cvs.  This avoids problems with #line
45310         directives using a vendor (Sun) compiler.
45311         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
45312         Don't set GETGROUPS_LIB here; now it's
45313         done via getgroups.m4's wrapper function.
45314         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
45315         rather than just in sh-util/configure.in, so that the
45316         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
45317         same.
45318         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
45319         AC_FUNC_GETLOADAVG where to find getloadavg.c.
45320         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
45321         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
45322         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
45323         Remove code that is now done by the newly-required macros.
45324         Append $(EXEEXT) to DF_PROG.
45325         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
45326         Do not invoke or require the following here,
45327         since prereq.m4 or some gnulib .m4 now does this for us:
45328         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
45329         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
45330         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
45331         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
45332         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
45333         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
45334         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
45335         AC_FUNC_OBSTACK.
45336         Do not replace the following functions, as this is now the job
45337         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
45338         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
45339         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
45340         atexit getpass, strdup, getpagesize.
45341         Replace 'raise'.
45342         Do not check for the following functions, as this is now the job
45343         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
45344         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
45345         setregid.
45346         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
45347         Check for sys/sysctl.h.
45348         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
45349         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
45350         of checking for ssize_t ourselves.
45351
45352         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
45353         Require every macro that gnulib/modules/* suggests for us.
45354         (jm_PREREQ_ADDEXT): New macro.
45355         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
45356         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
45357
45358         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
45359         (gl_PHYSMEM): Use it.
45360         Also check for `table' function.
45361         Check for new headers and functions.
45362         Add check for sys/sysmp.h.
45363         With suggestions from Kaveh Ghazi.
45364         Ignore headers that are present but cannot be compiled.  This
45365         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
45366         C 5.4.
45367
45368 2003-08-15  Paul Eggert  <eggert@twinsun.com>
45369
45370         Document merge from coreutils.
45371         * modules/userspec: Depend on posixver.
45372         * modules/strftime: Depend on tzset.
45373
45374 2003-08-15  Paul Eggert  <eggert@twinsun.com>
45375
45376         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
45377         rather than tab, after '#' in shell-script copyright notices.
45378         Suggested by Bruno Haible.
45379
45380 2003-08-15  Paul Eggert  <eggert@twinsun.com>
45381
45382         * config/srclist-update: Use three spaces, rather than tab, after '#'
45383         in shell-script copyright notices.  Suggested by Bruno Haible.
45384         Remove unnecessary parenthesization in regular expression.
45385
45386 2003-08-15  Jim Meyering  <jim@meyering.net>
45387
45388         Merge from coreutils.
45389         * lib/xgethostname.c: Include <stdlib.h>.
45390         (xghostname): Don't exit for anything other than memory-related
45391         failure; just return NULL.
45392         * lib/userspec.c: Include "posixver.h".
45393         (parse_user_spec): Accept `.' as a separator only
45394         in pre-POSIX-200112 mode.
45395         * lib/strtoimax.c: Use #elif rather than #else #if.
45396         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
45397         Remove function, now that we can rely on a working tzset function.
45398         [!_LIBC]: Ensure that the required autoconf test has been run.
45399         [!defined _NL_CURRENT && HAVE_STRFTIME]:
45400         Use underlying_strftime for %r.
45401         * lib/sha.c: Merge in some clean-up and optimization changes from
45402         glibc.
45403         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
45404         Ensure that it is a multiple of 64.
45405         Rearrange loop exit tests so as to avoid performing an
45406         additional fread after encountering an error or EOF.
45407         * lib/realloc.c: Update copyright date.
45408
45409 2003-08-15  Jim Meyering  <jim@meyering.net>
45410         and Paul Eggert  <eggert@twinsun.com>
45411
45412         Merge from coreutils.
45413         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
45414         member but strut utmpx does not.  Needed for AIX 4.3.3.
45415         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
45416
45417 2003-08-15  Jim Meyering  <jim@meyering.net>
45418         and Paul Eggert  <eggert@cs.ucla.edu>
45419
45420         Merges from coreutils, etc.
45421         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
45422         Require gl_FUNC_TZSET_CLOBBER.
45423         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
45424         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
45425         members.
45426
45427 2003-08-14  Paul Eggert  <eggert@twinsun.com>
45428
45429         Help the merge from coreutils.
45430         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
45431         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
45432         * m4/tzset.m4: Use it too.
45433
45434 2003-08-14  Paul Eggert  <eggert@twinsun.com>
45435
45436         * modules/tzset: New file.
45437
45438 2003-08-14  Jim Meyering  <jim@meyering.net>
45439
45440         Merges from coreutils.
45441         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
45442         variable names, rather than @FNMATCH_H@.
45443         * modules/alloca: Likewise for $(ALLOCA_H).
45444
45445         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
45446         the three copies of the literal target, `fnmatch.h'.
45447         * modules/alloca (alloca.h): Likewise.
45448
45449 2003-08-14  Jim Meyering  <jim@meyering.net>
45450
45451         Merge from coreutils.
45452         * m4/tzset.m4: New file.
45453         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
45454         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
45455         otherwise, AIX 5.1 systems would end up using the latter.
45456         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
45457         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
45458         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
45459         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
45460
45461 2003-08-14  Jim Meyering  <jim@meyering.net>
45462
45463         Merge from coreutils.
45464         * lib/obstack.h: Whitespace changes.
45465         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
45466         and xcalloc return values.
45467         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
45468         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
45469         hang on OSF/1 5.1 for DIR on both local and remote file systems.
45470         Reported by (and fix confirmed by) Nelson H. F. Beebe.
45471         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
45472         error from mntctl.
45473         Use mntctl's return value to drive the entry-processing loop, since
45474         we can't rely on the value of the vmt_length member in the last
45475         entry.  On some systems doing so could result in exhausting
45476         virtual memory.  Based in part on a patch from Mike Jetzer.
45477
45478 2003-08-14  Jim Meyering  <jim@meyering.net>
45479         and Paul Eggert  <eggert@twinsun.com>
45480
45481         Merges from coreutils, plus other fixes.
45482         * lib/physmem.c: Merge in portability changes from gcc/libiberty
45483         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
45484         for credits and details.  Thanks to Kaveh Ghazi for helping
45485         to keep these files in sync.
45486         (ARRAY_SIZE): Define it.
45487         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
45488         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
45489         (memcasecmp): Don't assume size_t fits in unsigned int.
45490         Remove casts and duplicate code.
45491         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
45492         (memcpy): Remove definition.
45493         Merge in some clean-up and optimization changes from glibc.
45494         [BLOCKSIZE]: Move definition to top of file.
45495         Ensure that it is a multiple of 64.
45496         Rearrange loop exit tests so as to avoid performing an
45497         additional fread after encountering an error or EOF.
45498         * lib/md5.h (md5_uintptr): Define.
45499         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
45500         return to the initial working directory.  Preserve errno
45501         for caller.
45502         * lib/idcache.c: Include "xalloc.h".
45503         (xmalloc, xrealloc): Remove decls.
45504         (getuser): Remove casts no longer required in C89.
45505         * lib/human.c: Include stdio.h, for sprintf.
45506         * lib/group-member.c: Include "xalloc.h".
45507         (xmalloc, xrealloc): Remove decls.
45508         (get_group_info): Remove casts no longer required in C89.
45509         * lib/getusershell.c (readname): Remove casts no longer required in
45510         C89.
45511         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
45512         * lib/getline.c: Whitespace fix, from coreutils.
45513
45514 2003-08-13  Paul Eggert  <eggert@twinsun.com>
45515
45516         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
45517         Check for isascii.
45518
45519         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
45520         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
45521         Undo previous (whitespace-only) change.
45522
45523 2003-08-13  Paul Eggert  <eggert@twinsun.com>
45524
45525         * lib/exclude.c: Include <ctype.h>
45526         (IN_CTYPE_DOMAIN): New macro.
45527         (is_space): New fn.
45528         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
45529         and empty lines.
45530
45531         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
45532         Undo previous (whitespace-only) change.
45533
45534 2003-08-13  Paul Eggert  <eggert@twinsun.com>
45535
45536         * config/srclist-update: Change update back to the old behavior,
45537         leaving whitespace alone.  Use one 'sed' command rather than a
45538         pipeline.
45539         (fixlicense): Now a variable, not a function.
45540         (remove_trailing_blanks): Remove.
45541         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
45542         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
45543         Undo previous (whitespace-only) change.
45544
45545 2003-08-12  Paul Eggert  <eggert@twinsun.com>
45546
45547         Merge from coreutils.
45548         * modules/euidaccess: Add lib_SOURCES, include for new
45549         file euidaccess.h
45550
45551 2003-08-12  Paul Eggert  <eggert@twinsun.com>
45552
45553         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
45554         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
45555         Normalize leading white space and remove trailing white space.
45556
45557         Merge from coreutils
45558         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
45559
45560         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
45561         0.12.1.  These files are now being upgraded automatically by
45562         ../config/srclist-update.
45563
45564 2003-08-12  Paul Eggert  <eggert@twinsun.com>
45565
45566         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
45567         Normalize leading white space and remove trailing white space.
45568         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
45569         notice, as per ../config/srclist-update.
45570
45571         Merge from coreutils.
45572         * lib/euidaccess.h: New file.
45573         * lib/euidaccess.c: Include it.
45574         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
45575         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
45576         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
45577
45578 2003-08-12  Paul Eggert  <eggert@twinsun.com>
45579
45580         * config/srclist-update: Add copyright notice.
45581         (remove_id_lines, remove_trailing_blanks): New constants.
45582         (fixfile): Use them to normalize spacing a bit in copied files.
45583         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
45584         Normalize leading white space and remove trailing white space.
45585
45586         * config/texinfo.tex: Sync with texinfo.
45587
45588         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
45589         strtoul.c from libc, to merge coreutils whitespace changes.
45590
45591         * config/srclist.txt: Get the following m4 files from gettext:
45592         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
45593         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
45594         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
45595         wint_t.m4.
45596
45597 2003-08-12  Karl Berry  <karl@gnu.org>
45598
45599         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
45600         been made.
45601
45602 2003-08-11  Paul Eggert  <eggert@twinsun.com>
45603
45604         * modules/gnu-source, m4/gnu-source.m4:
45605         Remove; we're assuming Autoconf 2.54 or later now.
45606         Suggested by Bruno Haible.
45607         * MODULES.html.sh (func_all_modules): Remove gnu-source.
45608
45609 2003-08-11  Bruno Haible  <bruno@clisp.org>
45610
45611         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
45612
45613 2003-08-11  Bruno Haible  <bruno@clisp.org>
45614
45615         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
45616         (vasnprintf): Use it instead of wcslen.
45617
45618 2003-08-11  Bruno Haible  <bruno@clisp.org>
45619
45620         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
45621         value to ensure that _Bool promotes to int. Use #define for _Bool when
45622         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
45623
45624 2003-08-10  Karl Berry  <karl@gnu.org>
45625
45626         * lib/regex.h: update from libc (whitespace fix).
45627
45628 2003-08-09  Paul Eggert  <eggert@twinsun.com>
45629
45630         Merge some files from coreutils.  These changes were
45631         originally made by Jim Meyering.
45632         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
45633         many older Unixes require this.
45634         * lib/alloca.c (alloca): Remove cast to argument of free;
45635         no longer needed in C89.
45636         * lib/alloca_.h, regex.h: Fix white space to match
45637         what GNU indent does.
45638
45639 2003-08-09  Paul Eggert  <eggert@twinsun.com>
45640
45641         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
45642         apparently Emacs's Unicode mode got confused before my 2003-08-05
45643         checkin.
45644
45645 2003-08-08  Paul Eggert  <eggert@twinsun.com>
45646
45647         * m4/extensions.m4: New file.
45648         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
45649         Require gl_USE_SYSTEM_EXTENSIONS.
45650         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
45651         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
45652
45653 2003-08-08  Paul Eggert  <eggert@twinsun.com>
45654
45655         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
45656         * modules/extensions, modules/gnu-source: New files.
45657         * modules/timespec, modules/unlocked-io: Depend on extensions.
45658
45659 2003-08-07  Paul Eggert  <eggert@twinsun.com>
45660
45661         * modules/restrict: New file.
45662         * MODULES.html.sh (func_all_modules): Add restrict.
45663         * modules/regex: Depend on restrict.
45664
45665 2003-08-07  Paul Eggert  <eggert@twinsun.com>
45666
45667         * m4/restrict.m4: New file.
45668         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
45669
45670 2003-08-07  Bruno Haible  <bruno@clisp.org>
45671
45672         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
45673         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
45674
45675 2003-08-07  Bruno Haible  <bruno@clisp.org>
45676
45677         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
45678         makes the module 'getndelim2' compatible with the module 'getline'.
45679
45680 2003-08-05  Paul Eggert  <eggert@twinsun.com>
45681
45682         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
45683         byte with "\201" to avoid glitches when editing that source file
45684         with multi-gnome-terminal.
45685
45686 2003-08-05  Paul Eggert  <eggert@twinsun.com>
45687
45688         * lib/bumpalloc.h: Remove.
45689
45690 2003-08-05  Paul Eggert  <eggert@twinsun.com>
45691
45692         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
45693         * modules/bumpalloc: Remove.
45694
45695 2003-08-04  Paul Eggert  <eggert@twinsun.com>
45696
45697         * lib/getloadavg.c: Change copyright notice and spacing to conform to
45698         GNU coding style.
45699
45700         Merge from coreutils.
45701         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
45702         1. From glibc.
45703         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
45704         from Karl Berry, implemented by Jim Meyering.
45705         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
45706         from Dmitry V. Levin.
45707         Remove anachronistic cast of xrealloc.
45708         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
45709         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
45710         type. Otherwise, it wouldn't compile with at least /bin/cc on
45711         ymp-cray-unicos9.0.2.X.
45712         Combine two mostly-identical uses of alloca into one.
45713         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
45714
45715 2003-08-04  Dave Love  <d.love@dl.ac.uk>
45716
45717         [From Emacs.]
45718
45719         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
45720         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
45721         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
45722         obsolete NLIST_NAME_UNION.
45723         [__GNU__]: Undef BSD and FSCALE.
45724         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
45725
45726 2003-08-03  Paul Eggert  <eggert@twinsun.com>
45727
45728         * lib/stdbool_.h (_Bool): Make it signed char, instead of
45729         an enum type, so that it's guaranteed to promote to int.  See:
45730         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
45731
45732 2003-08-03  Karl Berry  <karl@gnu.org>
45733
45734         * config/depcomp: update from automake.
45735
45736 2003-07-31  Paul Eggert  <eggert@twinsun.com>
45737
45738         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
45739         (strerror): Don't assume that a printable int fits in 14 bytes.
45740
45741 2003-07-31  Bruno Haible  <bruno@clisp.org>
45742
45743         * modules/getpass-gnu: New file.
45744         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
45745
45746 2003-07-31  Bruno Haible  <bruno@clisp.org>
45747
45748         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
45749
45750 2003-07-24  Karl Berry  <karl@gnu.org>
45751
45752         * config/missing: update from automake.
45753
45754 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
45755             Bruno Haible  <bruno@clisp.org>
45756
45757         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
45758         * lib/getline.c (getline, getdelim): Likewise.
45759         Remove _GNU_SOURCE define; now it's defined in config.h through
45760         m4/getline.m4.
45761
45762 2003-07-23  Karl Berry  <karl@gnu.org>
45763
45764         * config/config.sub: update from prep.
45765
45766 2003-07-22  Paul Eggert  <eggert@twinsun.com>
45767
45768         * modules/xalloc (Depends-on): Add exitfail.
45769         * modules/xmemcoll: Likewise.
45770
45771 2003-07-22  Paul Eggert  <eggert@twinsun.com>
45772
45773         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
45774         over-parenthesization in macros.
45775
45776         Sync with coreutils.
45777
45778         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
45779         required by C99.
45780
45781         Use `exit_failure' for xalloc and xmemcoll instead of their own
45782         private exit-failure variables.
45783         * lib/xalloc.h (xalloc_exit_failure): Remove.
45784         * lib/xmalloc.c: Likewise.  Include exitfail.h.
45785         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
45786         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
45787         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
45788         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
45789
45790 2003-07-20  Jim Meyering  <jim@meyering.net>
45791
45792         * modules/closeout (Depends-on): Add exitfail.
45793         Suggestion from Bruno Haible.
45794
45795 2003-07-19  Karl Berry  <karl@gnu.org>
45796
45797         * config/config.sub: update from prep.
45798
45799 2003-07-18  Paul Eggert  <eggert@twinsun.com>
45800
45801         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
45802         Remove.
45803         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
45804         to test that it can stand by itself.  Include "exitfail.h".
45805         Clients should set exit_failure instead.
45806         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
45807
45808 2003-07-18  Bruno Haible  <bruno@clisp.org>
45809
45810         * modules/getndelim2: New file.
45811         * modules/getline: Share files with module getndelim2.
45812         * modules/getnline: Depend on getndelim2 instead of sharing files with
45813         it. Add getnline.c to lib_SOURCES.
45814         * MODULES.html.sh (func_all_modules): Add getndelim2.
45815
45816 2003-07-18  Bruno Haible  <bruno@clisp.org>
45817
45818         * m4/getndelim2.m4: New file.
45819         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
45820         invoke gl_PREREQ_GETNDELIM2.
45821         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
45822         gl_PREREQ_GETNDELIM2.
45823         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
45824         gl_GETNDELIM2.
45825
45826 2003-07-18  Bruno Haible  <bruno@clisp.org>
45827
45828         * lib/getndelim2.h: New file.
45829         * lib/getndelim2.c: Make into a module of its own. Include config.h,
45830         getndelim2.h.
45831         (getndelim2): Make non-static. Change return type to ssize_t.
45832         * lib/getline.h: Change argument names.
45833         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
45834         * lib/getnline.c: Include getndelim2.h.
45835
45836 2003-07-18  Andreas Schwab  <schwab@suse.de>
45837
45838         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
45839
45840 2003-07-17  Karl Berry  <karl@gnu.org>
45841
45842         * config/config.sub: update from prep.
45843
45844 2003-07-17  Bruno Haible  <bruno@clisp.org>
45845
45846         * modules/getnline: New file.
45847         * modules/getline: Add lib/getndelim2.c to source file list.
45848         * MODULES.html.sh (func_all_modules): Add getnline.
45849
45850 2003-07-17  Bruno Haible  <bruno@clisp.org>
45851
45852         * m4/getnline.m4: New file.
45853
45854 2003-07-17  Bruno Haible  <bruno@clisp.org>
45855
45856         * m4/Makefile.am.in: Remove file.
45857         * m4/Makefile.am: Remove file.
45858         * m4/Makefile.in: Remove file.
45859
45860 2003-07-17  Bruno Haible  <bruno@clisp.org>
45861
45862         * lib/getnline.h: New file.
45863         * lib/getnline.c: New file.
45864         * lib/getndelim2.c: New file, extracted from getline.c.
45865         (getndelim2): Renamed from getdelim2, with added nmax argument.
45866         * lib/getline.c: Include getndelim2.c.
45867         (getdelim2): Moved out to getndelim2.c.
45868         (getline, getdelim): Update.
45869
45870 2003-07-17  Bruno Haible  <bruno@clisp.org>
45871
45872         * lib/Makefile.am: Remove file.
45873         * lib/Makefile.in: Remove file.
45874
45875 2003-07-17  Bruno Haible  <bruno@clisp.org>
45876
45877         * configure.in: Remove file.
45878         * Makefile.in: Remove file.
45879
45880 2003-07-17  Bruno Haible  <bruno@clisp.org>
45881
45882         * MODULES.html.sh: Put the </BODY> right before </HTML>.
45883
45884 2003-07-16  Karl Berry  <karl@gnu.org>
45885
45886         * config/srclist-update: was running fixlicense twice, which caused
45887                 texinfo.tex to be nullified for some reason.  Simplify,
45888                 $gplsrc is no longer needed as far as I can see?
45889
45890 2003-07-16  Jim Meyering  <jim@meyering.net>
45891
45892         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
45893
45894 2003-07-15  Paul Eggert  <eggert@twinsun.com>
45895
45896         * config/srclist.txt: Get the following files from gettext-runtime/intl
45897         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
45898         ref-del.sin.  From Bruno Haible.
45899         * config/srclist-update (fixfile): Change grep pattern again, since the
45900         previous fix didn't work (there was another trailing $).  Use
45901         '[$]' to escape the $s.
45902
45903 2003-07-15  Karl Berry  <karl@gnu.org>
45904
45905         * lib/vasnprintf.c: update from gettext.
45906
45907 2003-07-15  Karl Berry  <karl@gnu.org>
45908
45909         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
45910         gets expanded when surrounded by '$'.
45911
45912 2003-07-15  Jim Meyering  <jim@meyering.net>
45913
45914         * modules/save-cwd: Don't depend on error.  From Derek Price.
45915
45916 2003-07-15  Jim Meyering  <jim@meyering.net>
45917
45918         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
45919
45920 2003-07-14  Simon Josefsson  <jas@extundo.com>
45921
45922         * modules/mempcpy: New file.
45923         * MODULES.html.sh (func_all_modules): Add mempcpy.
45924
45925 2003-07-14  Simon Josefsson  <jas@extundo.com>
45926
45927         * m4/mempcpy.m4: New file.
45928
45929 2003-07-14  Simon Josefsson  <jas@extundo.com>
45930
45931         * lib/mempcpy.h: New file.
45932         * lib/mempcpy.c: New file.
45933
45934 2003-07-14  Paul Eggert  <eggert@twinsun.com>
45935
45936         * modules/getdate, modules/posixtm: Depend on mktime.
45937
45938 2003-07-14  Paul Eggert  <eggert@twinsun.com>
45939
45940         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
45941         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
45942         unicodeio.c, unicodeio.h, unlocked-io.h:
45943         Switch from LGPL to GPL.
45944
45945 2003-07-14  Paul Eggert  <eggert@twinsun.com>
45946
45947         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
45948         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
45949         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
45950         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
45951         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
45952         updated automatically by ../config/srclist-update.  This changes
45953         their license from LPGL to GPL.
45954
45955 2003-07-14  Paul Eggert  <eggert@twinsun.com>
45956
45957         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
45958         assumed to refer to the root of the most recent stable gettext version.
45959         * config/srclistvars.sh: Add defaults for eggert.
45960         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
45961         Match "This program" as well as "The program".  This is needed
45962         for gettext.
45963
45964 2003-07-14  Jim Meyering  <jim@meyering.net>
45965
45966         Don't emit diagnostics.  Let callers do that.
45967         * lib/save-cwd.c: Don't include "error.h".
45968         (save_cwd): Don't call error.  Ensure that errno is valid
45969         when returning nonzero.
45970
45971         * lib/save-cwd.h (restore_cwd): Update prototype.
45972         * lib/save-cwd.c (restore_cwd): Remove two parameters.
45973         Simplify.  Don't call error upon failure.  Let callers do that.
45974         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
45975         when auditing is enabled.  But don't bother updating the #if.
45976
45977 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
45978
45979         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
45980         it breaks C++ compilation.
45981         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
45982
45983 2003-07-10  Simon Josefsson  <jas@extundo.com>
45984
45985         * modules/strchrnul (Makefile.am): Add strchrnul.h.
45986
45987 2003-07-10  Jim Meyering  <jim@meyering.net>
45988
45989         * m4/clock_time.m4: Remove trailing blank.
45990         * m4/intmax_t.m4: Likewise.
45991
45992 2003-07-10  Jim Meyering  <jim@meyering.net>
45993
45994         * lib/vasnprintf.c: Remove trailing blanks.
45995         Make cpp indentation consistent.
45996
45997 2003-07-09  Paul Eggert  <eggert@twinsun.com>
45998
45999         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
46000         posixver.c, strftime.c, strnlen.c, strverscmp.c:
46001         Switch from LGPL to GPL.
46002
46003 2003-07-09  Paul Eggert  <eggert@twinsun.com>
46004
46005         * config/srclist.txt: Sort sublists.  Add
46006         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
46007         that differ from gnulib for one reason or another; we'd like this list
46008         to be smaller but for now let's document what we have.
46009
46010 2003-07-08  Paul Eggert  <eggert@twinsun.com>
46011
46012         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
46013         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
46014         and sweeter "eval x=$x".
46015         * config/srclist.txt: Get lib/argp* from glibc.
46016
46017 2003-07-07  Paul Eggert  <eggert@twinsun.com>
46018
46019         * lib/mktime.c: Fix some boundary cases and remove need for floating
46020         point.
46021
46022         Issue a compile-time diagnostic if time_t is floating point, or if
46023         two's complement arithmetic is not in effect, or if arithmetic
46024         right shift does not propagate the sign.  These assumptions were
46025         all in the original code but they weren't checked.
46026
46027         (TIME_T_MIDPOINT, verify): New macros.
46028         (__isleap): Remove; it has integer overflow problems.
46029         (leapyear): New function, without those problems.
46030         (ydhms_tm_diff): Remove; splitting into two parts.
46031         (ydhms_diff): New function, containing the arithmetic part of
46032         the old ydhms_tm_diff function.  Issue a compile-time
46033         diagnostic if we are not using C99 integer division.
46034         Avoid casts when possible.
46035         (guess_time_tm): New function, containing the checking part of
46036         the old ydhms_tm_diff function.  Return the new value, rather than
46037         the difference between it and the old.  Accept a new argument T
46038         so that *T specifies the old value.  Check for overflow in the result.
46039
46040         (__mktime_internal): Use a time_t offset, not a long int offset.
46041         This undoes the 2003-06-04 change, which is no longer needed now
46042         that we have better overflow checking.
46043         (localtime_offset): Likewise.
46044
46045         (__mktime_internal): Avoid harmful overflow on hosts where time_t
46046         and long are 64-bit but int is only 32-bit.
46047         (ydhms_diff): Use long int to store year1 and yday1.
46048         Issue a compile-time diagnostic if long int is not wide enough.
46049
46050         (__mktime_internal): Use long int to store adjusted year and yday.
46051         Use plain C rather than preprocessor commands, if that doesn't
46052         affect efficiency.
46053         Check for overflow (and try to repair) after each probe
46054         rather than checking only at the very end.  This avoids some bugs
46055         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
46056         does not equal GMT offset at maximum time).
46057         Use integer to check for overflow rather than floating point; this
46058         is more portable to non-IEEE hosts, and is a tad faster.
46059         When we detect that we are oscillating between two values,
46060         don't check whether tm_isdst has the requested value, since
46061         we already know the answer.  When tm_isdst has the wrong value,
46062         use a different heuristic to find the right one, based on the
46063         extreme values actually observed in practice in tz2003a,
46064         rather than the (overly optimistic) "previous 3 calendar quarters".
46065
46066         (not_equal_tm, print_tm, check_result): Use "const T" rather than
46067         "T const" to accommodate glibc style.
46068         (check_result): Use less-confusing report format.  "long" -> "long int.
46069         (main): Likewise.
46070         Don't loop if the iteration overflows time_t.
46071         Allow a negative step in the iteration.
46072
46073 2003-07-06  Karl Berry  <karl@gnu.org>
46074
46075         * config/depcomp: update from automake.
46076         * config/config.sub: update from prep.
46077
46078 2003-07-03  Karl Berry  <karl@gnu.org>
46079
46080         * config/config.guess: update from prep.
46081
46082 2003-07-01  Paul Eggert  <eggert@twinsun.com>
46083
46084         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
46085         xreadlink.c now includes it unconditionally.
46086
46087 2003-07-01  Paul Eggert  <eggert@twinsun.com>
46088
46089         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
46090         having it depend on HAVE_SYS_TYPES_H.
46091
46092 2003-07-01  Bruno Haible  <bruno@clisp.org>
46093
46094         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
46095         <sys/types.h> should be sufficient.
46096         Reported by Paul Eggert.
46097
46098 2003-06-26  Karl Berry  <karl@gnu.org>
46099
46100         * config/depcomp: update from automake.
46101
46102 2003-06-26  Bruno Haible  <bruno@clisp.org>
46103
46104         * modules/human: Depend on module stdbool.
46105
46106 2003-06-25  Bruno Haible  <bruno@clisp.org>
46107
46108         * modules/readlink: New file.
46109         * modules/xreadlink: Depend on it.
46110         * MODULES.html.sh (func_all_modules): Add readlink.
46111
46112 2003-06-25  Bruno Haible  <bruno@clisp.org>
46113
46114         * m4/readlink.m4: New file.
46115
46116 2003-06-25  Bruno Haible  <bruno@clisp.org>
46117
46118         * lib/readlink.c: New file.
46119
46120 2003-06-22  Karl Berry  <karl@gnu.org>
46121
46122         * config/srclist.txt: update mkinstalldirs from automake.
46123         * config/mkinstalldirs: update.
46124
46125 2003-06-22  Bruno Haible  <bruno@clisp.org>
46126
46127         Portability to mingw32.
46128         * m4/ssize_t.m4: New file, from GNU gettext.
46129         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
46130         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
46131
46132 2003-06-22  Bruno Haible  <bruno@clisp.org>
46133
46134         * modules/safe-read: Add m4/ssize_t.m4.
46135         * modules/xreadlink: Add m4/ssize_t.m4.
46136
46137 2003-06-20  Bruno Haible  <bruno@clisp.org>
46138
46139         Assume C89, so PARAMS isn't needed.
46140         * lib/unicodeio.h (PARAMS): Remove.
46141         * lib/unicodeio.c: Don't use PARAMS.
46142
46143 2003-06-18  Karl Berry  <karl@gnu.org>
46144
46145         * config/config.{guess,sub}: update from prep.
46146
46147 2003-06-18  Jim Meyering  <jim@meyering.net>
46148
46149         Merge changes from coreutils.
46150         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
46151         Remove explicit declarations of xmalloc and realloc.
46152         Include xalloc.h.
46153         (read_utmp): Remove anachronistic cast of xmalloc.
46154
46155 2003-06-17  Paul Eggert  <eggert@twinsun.com>
46156
46157         Assume C89, so PARAMS isn't needed.
46158         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
46159         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
46160         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
46161         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
46162         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
46163         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
46164         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
46165         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
46166         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
46167         lib/xstrtod.h, lib/xstrtol.h: Likewise.
46168         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
46169         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
46170         no longer needed. Anyway, config.h should always be included before any
46171         other file.
46172
46173 2003-06-11  Simon Josefsson  <jas@extundo.com>
46174
46175         * modules/sysexits: New file.
46176         * MODULES.html.sh (func_all_modules): Add sysexits.
46177
46178 2003-06-11  Simon Josefsson  <jas@extundo.com>
46179
46180         * lib/sysexit_.h: New file.
46181
46182 2003-06-11  Derek Price  <derek@ximbiot.com>
46183
46184         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
46185         necessary.
46186
46187 2003-06-11  Bruno Haible  <bruno@clisp.org>
46188
46189         * m4/sysexits.m4: New file.
46190
46191 2003-06-10  Simon Josefsson  <jas@extundo.com>
46192
46193         * lib/argp.h: New file, from glibc.
46194         * lib/argp-ba.c: New file, from glibc.
46195         * lib/argp-eexst.c: New file, from glibc.
46196         * lib/argp-fmtstream.c: New file, from glibc.
46197         * lib/argp-fmtstream.h: New file, from glibc.
46198         * lib/argp-fs-xinl.c: New file, from glibc.
46199         * lib/argp-help.c: New file, from glibc.
46200         * lib/argp-namefrob.h: New file, from glibc.
46201         * lib/argp-parse.c: New file, from glibc.
46202         * lib/argp-pv.c: New file, from glibc.
46203         * lib/argp-pvh.c: New file, from glibc.
46204         * lib/argp-xinl.c: New file, from glibc.
46205
46206 2003-06-10  Simon Josefsson  <jas@extundo.com>
46207
46208         * modules/strchrnul: New file.
46209
46210 2003-06-10  Simon Josefsson  <jas@extundo.com>
46211
46212         * modules/argp: New file.
46213
46214 2003-06-10  Simon Josefsson  <jas@extundo.com>
46215
46216         * m4/strchrnul.m4: New file.
46217
46218 2003-06-10  Simon Josefsson  <jas@extundo.com>
46219
46220         * lib/strchrnul.h: New file.
46221         * lib/strchrnul.c: New file.
46222
46223 2003-06-10  Bruno Haible  <bruno@clisp.org>
46224
46225         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
46226
46227 2003-06-07  Karl Berry  <karl@gnu.org>
46228
46229         * config/config.{guess,sub}: update from prep.
46230
46231 2003-06-07  Jim Meyering  <jim@meyering.net>
46232
46233         * modules/strtod: Use $(...) notation, not @...@ for
46234         AC_REPLACE'd variables.
46235         * modules/localcharset: Likewise.
46236
46237 2003-06-07  Jim Meyering  <jim@meyering.net>
46238
46239         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
46240         in place of my name in the copyright comment.
46241         Remove definition and uses of __P.
46242
46243         From coreutils.
46244         * lib/stat.c: Don't declare xmalloc explicitly.
46245         Instead, include "xalloc.h".
46246         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
46247         xrealloc, and xcalloc return values.
46248         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
46249         Improve comment.
46250         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
46251
46252 2003-06-07  Bruno Haible  <bruno@clisp.org>
46253
46254         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
46255         avoid AC_CONFIG_LINKS.
46256         * modules/fnmatch (Makefile.am): Use explicit creation rule for
46257         fnmatch.h, to avoid AC_CONFIG_LINKS.
46258         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
46259
46260 2003-06-07  Bruno Haible  <bruno@clisp.org>
46261
46262         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
46263         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
46264         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
46265         directory.
46266         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
46267         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
46268         directory.
46269
46270 2003-06-06  Jim Meyering  <jim@meyering.net>
46271
46272         Merge from coreutils.
46273         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
46274         Consolidate declarations and initializations of *_base* locals.
46275
46276         Merge from coreutils.
46277         This avoids a core dump on systems without GNU putenv,
46278         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
46279         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
46280         (unsetenv): New static function, from GNU libc.
46281         (rpl_putenv): Use it.
46282
46283         * lib/modechange.c: Remove trailing blanks.
46284
46285         Merge from coreutils.
46286         * lib/fsusage.c: Remove declaration of statfs.
46287         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
46288
46289         * lib/posixtm.c: Include <stdbool.h> unconditionally.
46290
46291 2003-06-06  Jim Meyering  <jim@meyering.net>
46292
46293         * lib/stdbool_.h: Renamed from stdbool.h.in.
46294
46295 2003-06-06  Jim Meyering  <jim@meyering.net>
46296             Bruno Haible  <bruno@clisp.org>
46297
46298         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
46299         Adjust Makefile.am snippet not to redirect directly to target.
46300         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
46301
46302 2003-06-05  Paul Eggert  <eggert@twinsun.com>
46303
46304         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
46305         mismatch, look in future quarters as well as past.  This fixes a
46306         bug when processing fall-backwards gaps immediately after a long
46307         period of daylight-saving time.
46308
46309         * lib/mktime.c: Assume freestanding C89 or better.
46310         (HAVE_LIMITS_H): Remove.  Assume it's 1.
46311         (__P): Remove; not used.
46312         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
46313         (mktime, not_equal_tm, print_tm, check_result,
46314         main): Use prototypes.  Use const * where appropriate.
46315         (main): Fix typo in testing code that uncovered by above changes.
46316         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
46317
46318 2003-06-04  Paul Eggert  <eggert@twinsun.com>
46319
46320         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
46321         locale.h, localeconv.  This merges changes from coreutils.
46322
46323         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
46324         It can be removed after the next Autoconf is released.
46325         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
46326         needed.
46327
46328 2003-06-04  Paul Eggert  <eggert@twinsun.com>
46329
46330         * lib/mktime.c: Fix Debian bug 177940
46331         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
46332         (localtime_offset): Now long int, not time_t, because we want it
46333         to be guaranteed to be signed.  All uses changed.
46334         (__mktime_internal): If overflow would occur when adding offset,
46335         don't add it.
46336
46337         Merge 'human' changes from coreutils.  Rewrite to support
46338         locale-specific notations like thousands separators.
46339         * lib/human.c: Simplify authorship notice.
46340         Include human.h immediately after config.h.
46341         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
46342         <limits.h>: Do not include, since human.h does.
46343         (SIZE_MAX, UINTMAX_MAX): New macros.
46344         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
46345         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
46346         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
46347         (power_letter): Renamed from suffixes.
46348         (generate_suffix_backwards): Remove.
46349         (adjust_value): Now takes int style (because of human.h changes)
46350         and long double value (for greater precision on some platforms).
46351         (group_number): New function.
46352         (human_readable): Use it.  Use integer options, not enum.
46353         Put the options before the sizes in the arg list.
46354         Support all the new options.
46355         The old human_readable function has been removed;
46356         use inttostr.h instead.
46357         (human_readable, default_block_size, humblock):
46358         Use uintmax_t, not int, for block sizes.
46359         (human_readable_inexact, block_size_types): Remove.
46360         (block_size_opts): New constant.
46361         (human_options): Renamed from human_block_size, with new signature
46362         that allows block sizes up to UINTMAX_MAX.  All callers changed.
46363         * lib/human.h: Add copyright and authorship notice.
46364         Include <limits.h> and <stdbool.h> unconditionally.
46365         (PARAMS): Remove.  All uses removed.
46366         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
46367         (enum human_inexact_style): Remove tag; now a nameless enum.
46368         (human_floor, human_ceiling, human_round_to_even): Now have
46369         values 2, 0, 1 rather than -1, 1, 0.
46370         (human_group_digits, human_suppress_point_zero, human_autoscale,
46371         human_base_1024, human_SI, human_B): New constants.
46372         (human_readable_inexact, human_block_size): Remove.
46373         (human_readable): Size args are now uintmax_t, not int.
46374         (human_options): New decl.
46375
46376         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
46377         unnecessary now that we assume C89 or better.  This change
46378         imported from coreutils.
46379
46380         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
46381         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
46382         in the 2003-05-30 sync from glibc.
46383
46384         .h files should stand alone, but we shouldn't include <sys/types.h>
46385         if we can get away with just <stddef.h>.
46386
46387         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
46388         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
46389         rather than <sys/types.h>, as we merely need size_t.
46390         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
46391         to get size_t.
46392         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
46393         Include <stdio.h>, to get FILE.
46394         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
46395         memcasecmp.h has included <stddef.h> and all we need is size_t.
46396         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
46397         our interface, instead of including <sys/types.h>
46398
46399 2003-06-04  Paul Eggert  <eggert@twinsun.com>
46400
46401         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
46402         now, as glibc mktime is buggy on non-glibc systems.
46403
46404 2003-06-03  Karl Berry  <karl@gnu.org>
46405
46406         * config/config.sub: update from prep.
46407
46408 2003-06-02  Paul Eggert  <eggert@twinsun.com>
46409
46410         [from coreutils]
46411         Fix some minor time-related bugs with POSIX time arguments.
46412         Some valid time stamps were being rejected (notably -1, and
46413         time stamps before 1900 on 64-bit hosts).  And some invalid
46414         time stamps were being accepted, e.g. September 31.
46415
46416         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
46417         that we can return (time_t) -1 successfully.
46418         * lib/posixtm.c: Likewise.
46419         [HAVE_STDBOOL_H]: Include <stdbool.h>.
46420         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
46421         (t): Remove static var.
46422         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
46423         of static var.  All uses changed.
46424         (year): Do not reject years before 1900; they can occur with
46425         64-bit time_t.
46426         (posix_time_parse): Do not check for out-of-range components;
46427         that is now the caller's responsibility, since our checks were
46428         only approximations.
46429         (posixtime): Use mktime to check for out-of-range components,
46430         since it knows them exactly.
46431         If mktime returns (time_t) -1, check whether an error actually occurred
46432         by invoking localtime on -1.
46433         (main) [TEST_POSIXTIME]: Check for input data errors, and report
46434         posixtime failures better.
46435         Improve the test data (in comments only).
46436
46437 2003-06-02  Karl Berry  <karl@gnu.org>
46438
46439         * config/mkinstalldirs (version): new variable.
46440         (--version): new option.
46441         (usage): improve message.
46442
46443 2003-05-30  Karl Berry  <karl@gnu.org>
46444
46445         * lib/mktime.c: update from libc.
46446
46447 2003-05-30  Bruno Haible  <bruno@clisp.org>
46448
46449         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
46450         * config/config.rpath: Upgrade to gettext-0.12.1.
46451
46452 2003-05-30  Bruno Haible  <bruno@clisp.org>
46453
46454         * m4/gettext.m4: Upgrade to gettext-0.12.1.
46455         * m4/nls.m4: New file, from gettext-0.12.1.
46456         * m4/po.m4: New file, from gettext-0.12.1.
46457         * m4/progtest.m4: Upgrade to gettext-0.12.1.
46458
46459 2003-05-30  Bruno Haible  <bruno@clisp.org>
46460
46461         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
46462         * lib/localcharset.h: Likewise.
46463         * lib/localcharset.c: Likewise.
46464
46465 2003-05-29  Karl Berry  <karl@gnu.org>
46466
46467         * config/config.rpath: update from gettext.
46468
46469 2003-05-28  Paul Eggert  <eggert@twinsun.com>
46470
46471         Assume the headers required for C89 freestanding compilers.
46472         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
46473         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
46474         * m4/human.m4 (gl_HUMAN): Likewise.
46475         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
46476         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
46477         * m4/userspec.m4 (gl_USERSPEC): Likewise.
46478         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
46479         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
46480         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
46481
46482 2003-05-28  Paul Eggert  <eggert@twinsun.com>
46483
46484         Assume the headers required for C89 freestanding compilers.
46485         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
46486         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
46487         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
46488         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
46489         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
46490         define, since <limits.h> is guaranteed to do that.
46491         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
46492         * lib/exclude.c: Include <stdbool.h> unconditionally.
46493         * lib/tempname.c: Include <stddef.h> unconditionally.
46494         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
46495         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
46496         <stddef.h> does that.
46497         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
46498         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
46499         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
46500         needed.
46501         * lib/xstrtol.c: Likewise.
46502         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
46503         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
46504
46505         * lib/addext.c (addext): Use assignment rather than cast, to avoid
46506         warnings on some platforms.
46507
46508         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
46509         arbitrarily.
46510
46511 2003-05-26  Jim Meyering  <jim@meyering.net>
46512
46513         Merge in a change from coreutils:
46514         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
46515         that is guaranteed to be `no'.  Use `no_such_member' to indicate
46516         that condition, rather than `-1' which is slightly misleading.
46517         Change the name of the cache variable to have the gl_ prefix.
46518         Prompted by a patch from Richard Dawe for DJGPP.
46519
46520 2003-05-24  Karl Berry  <karl@gnu.org>
46521
46522         * config/config.guess: update from prep.
46523
46524 2003-05-22  Karl Berry  <karl@gnu.org>
46525
46526         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
46527
46528 2003-05-20  Karl Berry  <karl@gnu.org>
46529
46530         * config/config.guess: update from prep.
46531
46532 2003-05-18  Karl Berry  <karl@gnu.org>
46533
46534         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
46535         might actually be set by the user.
46536
46537         * config/depcomp, install-sh, mdate-sh: update from automake.
46538
46539 2003-05-17  Bruno Haible  <bruno@clisp.org>
46540
46541         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
46542         invalid expansion for AC_EGREP_CPP.
46543         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
46544         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
46545         Suggested by Akim Demaille <akim@epita.fr> in
46546         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
46547
46548 2003-05-12  Jim Meyering  <jim@meyering.net>
46549
46550         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
46551         the space-padded-by-default conversion specifiers, %e, %k, %l.
46552
46553 2003-05-12  Bruno Haible  <bruno@clisp.org>
46554
46555         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
46556         the string is longer than 4 KB.
46557
46558 2003-05-11  Karl Berry  <karl@gnu.org>
46559
46560         * config/config.{guess,sub}: update from prep.
46561
46562 2003-05-09  Bruno Haible  <bruno@clisp.org>
46563
46564         * modules/error: Add m4/strerror_r.m4 to file list.
46565
46566 2003-05-03  Bruno Haible  <bruno@clisp.org>
46567
46568         Upgrade to Unicode-4.0.
46569         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
46570         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
46571         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
46572         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
46573         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
46574         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
46575         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
46576         Change width of U+E0100..U+E01EF from 1 to 0.
46577
46578 2003-04-25  Jim Meyering  <jim@meyering.net>
46579
46580         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
46581         of type size_t, not int.
46582
46583 2003-04-25  Bruno Haible  <bruno@clisp.org>
46584
46585         * lib/copy-file.c: Include <stddef.h>, for size_t.
46586
46587 2003-04-21  Paul Eggert  <eggert@twinsun.com>
46588
46589         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
46590         code which expansion is under static control.  Patch imported from
46591         Akim Demaille's patch to Bison; see
46592         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
46593
46594 2003-04-14  Bruno Haible  <bruno@clisp.org>
46595
46596         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
46597
46598 2003-04-11  Jim Meyering  <jim@meyering.net>
46599
46600         Merge changes from Coreutils.
46601
46602         2003-03-22  Jim Meyering  <jim@meyering.net>
46603
46604         * lib/strftime.c (widen): Cast alloca return value to proper type.
46605
46606         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
46607
46608         From GNU libc.
46609         * lib/strftime.c (my_strftime): Handle very large width
46610         specifications for numeric values correctly.  Improve checks for
46611         overflow.
46612
46613         2003-01-19  Jim Meyering  <jim@meyering.net>
46614
46615         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
46616         definitions.
46617         (nl_get_alt_digit) [! defined my_strftime]: Define.
46618         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
46619         _nl_get_alt_digit and _nl_get_walt_digit.
46620
46621         * lib/strftime.c (my_strftime): Merge in locale-related changes from
46622         libc. These changes have no effect outside of _LIBC.
46623
46624 2003-04-10  Bruno Haible  <bruno@clisp.org>
46625
46626         * modules/findprog: New file.
46627         * MODULES.html.sh (func_all_modules): Add it.
46628
46629 2003-04-10  Bruno Haible  <bruno@clisp.org>
46630
46631         * m4/findprog.m4: New file.
46632         * m4/eaccess.m4: New file.
46633
46634 2003-04-10  Bruno Haible  <bruno@clisp.org>
46635
46636         * lib/findprog.h: New file, from GNU gettext.
46637         * lib/findprog.c: New file, from GNU gettext.
46638
46639 2003-04-05  Jim Meyering  <jim@meyering.net>
46640
46641         Merge changes from Coreutils.
46642
46643         * lib/exclude.h (PARAMS): Remove definition and uses.
46644         * lib/exclude.c: Remove uses of `PARAMS'.
46645
46646         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
46647         Add test-cases for DOS filenames. Declare program_name.
46648         (main): Set up program_name.  Patch by Rich Dawe.
46649
46650         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
46651         error from mntctl.
46652         Use mntctl's return value to drive the entry-processing loop, since
46653         we can't rely on the value of the vmt_length member in the last
46654         entry.  On some systems doing so could result in exhausting
46655         virtual memory.  Based in part on a patch from Mike Jetzer.
46656
46657 2003-04-04  Bruno Haible  <bruno@clisp.org>
46658
46659         * modules/linebreak: New file.
46660         * MODULES.html.sh (func_all_modules): Add it.
46661
46662 2003-04-04  Bruno Haible  <bruno@clisp.org>
46663
46664         * m4/linebreak.m4: New file.
46665
46666 2003-04-04  Bruno Haible  <bruno@clisp.org>
46667
46668         * lib/linebreak.h: New file, from GNU gettext.
46669         * lib/linebreak.c: New file, from GNU gettext with slight
46670         modifications.
46671         * lib/lbrkprop.h: New file, from GNU gettext.
46672
46673 2003-04-03  Bruno Haible  <bruno@clisp.org>
46674
46675         * modules/utf8-ucs4: New file.
46676         * modules/utf16-ucs4: New file.
46677         * modules/ucs4-utf8: New file.
46678         * modules/ucs4-utf16: New file.
46679         * MODULES.html.sh (func_all_modules): Add them.
46680
46681 2003-04-03  Bruno Haible  <bruno@clisp.org>
46682
46683         * m4/utf-ucs4.m4: New file.
46684         * m4/ucs4-utf.m4: New file.
46685
46686 2003-04-03  Bruno Haible  <bruno@clisp.org>
46687
46688         * lib/utf8-ucs4.h: New file, from GNU gettext.
46689         * lib/utf16-ucs4.h: New file, from GNU gettext.
46690         * lib/ucs4-utf8.h: New file, from GNU gettext.
46691         * lib/ucs4-utf16.h: New file, from GNU gettext.
46692
46693 2003-04-02  Bruno Haible  <bruno@clisp.org>
46694
46695         * modules/binary-io: New file.
46696         * MODULES.html.sh (func_all_modules): Add it.
46697
46698 2003-04-02  Bruno Haible  <bruno@clisp.org>
46699
46700         * lib/binary-io.h: New file, from GNU gettext.
46701
46702 2003-04-01  Bruno Haible  <bruno@clisp.org>
46703
46704         * modules/pathname: New file.
46705         * MODULES.html.sh (func_all_modules): Add it.
46706
46707 2003-04-01  Bruno Haible  <bruno@clisp.org>
46708
46709         * lib/pathname.h: New file, from GNU gettext.
46710         * lib/concatpath.c: New file, from GNU gettext.
46711
46712 2003-03-30  Bruno Haible  <bruno@clisp.org>
46713
46714         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
46715
46716 2003-03-30  Bruno Haible  <bruno@clisp.org>
46717
46718         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
46719         function chown() doesn't exist.
46720
46721 2003-03-28  Bruno Haible  <bruno@clisp.org>
46722
46723         * modules/copy-file: New file.
46724         * MODULES.html.sh (func_all_modules): Add it.
46725
46726 2003-03-28  Bruno Haible  <bruno@clisp.org>
46727
46728         * m4/copy-file.m4: New file.
46729
46730 2003-03-28  Bruno Haible  <bruno@clisp.org>
46731
46732         * lib/copy-file.h: New file, from GNU gettext.
46733         * lib/copy-file.c: New file, from GNU gettext.
46734
46735 2003-03-18  Jim Meyering  <jim@meyering.net>
46736
46737         * lib/quote.c (quote_n): Fix typo in comment.
46738
46739 2003-03-18  Bruno Haible  <bruno@clisp.org>
46740
46741         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
46742         checking.
46743         * m4/onceonly_2_57.m4: Likewise.
46744
46745 2003-03-17  Bruno Haible  <bruno@clisp.org>
46746
46747         * m4/onceonly.m4: Require autoconf 2.54 or newer.
46748         (m4_quote): Remove macro.
46749         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
46750
46751 2003-03-14  Jim Meyering  <jim@meyering.net>
46752
46753         Merge changes from Coreutils.
46754         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
46755         to be const, in order to avoid warnings.
46756         (obstack_room): Likewise.
46757         (obstack_empty_p): Likewise.
46758
46759 2003-03-14  Bruno Haible  <bruno@clisp.org>
46760
46761         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
46762         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
46763
46764 2003-03-13  Paul Eggert  <eggert@twinsun.com>
46765
46766         Merge changes from Bison.
46767         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
46768         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
46769         when compiling Bison 1.875's `bitset bset = obstack_alloc
46770         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
46771         * lib/hash.c: Include <stdbool.h> unconditionally.
46772
46773 2003-03-13  Paul Eggert  <eggert@twinsun.com>
46774
46775         * m4/onceonly.m4 (m4_quote): New macro.
46776         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
46777         Quote AC_FOREACH variable-expansions properly.
46778
46779 2003-03-13  Paul Eggert  <eggert@twinsun.com>
46780
46781         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
46782
46783 2003-03-09  Paul Eggert  <eggert@twinsun.com>
46784
46785         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
46786         Reported by Bruce Becker; see:
46787         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
46788
46789 2003-03-03  Paul Eggert  <eggert@twinsun.com>
46790             Bruno Haible  <bruno@clisp.org>
46791
46792         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
46793         Reported by John Hughes, see
46794         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
46795
46796 2003-02-20  Bruno Haible  <bruno@clisp.org>
46797
46798         * MODULES.html.sh (func_all_modules): Add poll.
46799
46800 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
46801
46802         * modules/poll: New file.
46803
46804 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
46805
46806         * lib/poll_.h: New file.
46807         * lib/poll.c: New file.
46808
46809 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
46810
46811         * m4/poll.m4: New file.
46812
46813 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
46814
46815         * modules/mathl: New file.
46816
46817 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
46818
46819         * lib/mathl.h: New file.
46820         * lib/acosl.c: New file.
46821         * lib/asinl.c: New file.
46822         * lib/atanl.c: New file.
46823         * lib/ceill.c: New file.
46824         * lib/cosl.c: New file.
46825         * lib/expl.c: New file.
46826         * lib/floorl.c: New file.
46827         * lib/frexpl.c: New file.
46828         * lib/ldexpl.c: New file.
46829         * lib/logl.c: New file.
46830         * lib/sincosl.c: New file.
46831         * lib/sinl.c: New file.
46832         * lib/sqrtl.c: New file.
46833         * lib/tanl.c: New file.
46834         * lib/trigl.c: New file.
46835         * lib/trigl.h: New file.
46836
46837 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
46838
46839         * m4/mathl.m4: New file.
46840
46841 2003-02-18  Bruno Haible  <bruno@clisp.org>
46842
46843         * MODULES.html.sh (func_all_modules): Add mathl.
46844
46845 2003-02-17  Bruno Haible  <bruno@clisp.org>
46846
46847         * modules/mkdtemp: New module.
46848         * MODULES.html.sh (func_all_modules): Add it.
46849
46850 2003-02-17  Bruno Haible  <bruno@clisp.org>
46851
46852         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
46853
46854 2003-02-17  Bruno Haible  <bruno@clisp.org>
46855
46856         * lib/mkdtemp.h: New file, from GNU gettext.
46857         * lib/mkdtemp.c: New file, from GNU gettext.
46858
46859 2003-02-02  Jim Meyering  <jim@meyering.net>
46860
46861         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
46862         e.g. glibc-2.2.93.
46863
46864 2003-01-31  Bruno Haible  <bruno@clisp.org>
46865
46866         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
46867         'rpl_rename'.
46868         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
46869         'rpl_strnlen'.
46870         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
46871         'rpl_strtod'.
46872         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
46873         'rpl_utime'.
46874
46875 2003-01-31  Bruno Haible  <bruno@clisp.org>
46876
46877         * lib/rename.c: #undef rename before defining rpl_rename.
46878         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
46879
46880 2003-01-30  Bruno Haible  <bruno@clisp.org>
46881
46882         * modules/vasnprintf, modules/vasprintf: New modules.
46883         * MODULES.html.sh (func_all_modules): Add them.
46884
46885 2003-01-30  Bruno Haible  <bruno@clisp.org>
46886
46887         * m4/signed.m4: New file, from GNU gettext.
46888         * m4/longdouble.m4: New file, from GNU gettext.
46889         * m4/wchar_t.m4: New file, from GNU gettext.
46890         * m4/wint_t.m4: New file, from GNU gettext.
46891         * m4/vasnprintf.m4: New file.
46892         * m4/vasprintf.m4: New file.
46893
46894 2003-01-30  Bruno Haible  <bruno@clisp.org>
46895
46896         * lib/printf-args.h: New file, from GNU gettext.
46897         * lib/printf-args.c: New file, from GNU gettext.
46898         * lib/printf-parse.h: New file, from GNU gettext.
46899         * lib/printf-parse.c: New file, from GNU gettext.
46900         * lib/vasnprintf.h: New file, from GNU gettext.
46901         * lib/vasnprintf.c: New file, from GNU gettext.
46902         * lib/asnprintf.c: New file, from GNU gettext.
46903         * lib/vasprintf.h: New file, from GNU gettext with modifications.
46904         * lib/vasprintf.c: New file, from GNU gettext.
46905         * lib/asprintf.c: New file, from GNU gettext.
46906
46907 2003-01-29  Bruno Haible  <bruno@clisp.org>
46908
46909         * modules/stpncpy: New module.
46910         * MODULES.html.sh (func_all_modules): Add it.
46911
46912 2003-01-29  Bruno Haible  <bruno@clisp.org>
46913
46914         * m4/stpncpy.m4: New file.
46915
46916 2003-01-29  Bruno Haible  <bruno@clisp.org>
46917
46918         * lib/stpncpy.h: New file, from GNU gettext with modifications.
46919         * lib/stpncpy.c: New file, from GNU gettext with modifications.
46920
46921 2003-01-28  Bruno Haible  <bruno@clisp.org>
46922
46923         * modules/c-ctype: New module.
46924         * MODULES.html.sh (func_all_modules): Add it.
46925
46926 2003-01-28  Bruno Haible  <bruno@clisp.org>
46927
46928         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
46929         Paul Eggert.
46930         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
46931         Paul Eggert.
46932
46933 2003-01-27  Bruno Haible  <bruno@clisp.org>
46934
46935         * modules/xsetenv: New module.
46936         * MODULES.html.sh (func_all_modules): Add it.
46937
46938 2003-01-27  Bruno Haible  <bruno@clisp.org>
46939
46940         * lib/xsetenv.h: New file, from GNU gettext.
46941         * lib/xsetenv.c: New file, from GNU gettext.
46942
46943 2003-01-23  Jim Meyering  <jim@meyering.net>
46944
46945         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
46946         from working on systems without dirfd (at least Irix and OSF1/Tru64).
46947
46948 2003-01-23  Bruno Haible  <bruno@clisp.org>
46949
46950         * modules/minmax: New module.
46951         * MODULES.html.sh (func_all_modules): Add it.
46952
46953 2003-01-23  Bruno Haible  <bruno@clisp.org>
46954
46955         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
46956         Eggert.
46957
46958 2003-01-22  Bruno Haible  <bruno@clisp.org>
46959
46960         * modules/exit: New module.
46961         * MODULES.html.sh (func_all_modules): Add it.
46962
46963 2003-01-22  Bruno Haible  <bruno@clisp.org>
46964
46965         * lib/exit.h: New file, from GNU gettext.
46966
46967 2003-01-19  Bruno Haible  <bruno@clisp.org>
46968
46969         * gnulib-tool: Recognize option --extract-maintainer.
46970         (func_get_maintainer): New function.
46971         * modules/*: Add Maintainer entry.
46972
46973 2003-01-16  Jim Meyering  <jim@meyering.net>
46974
46975         * m4/regex.m4: The `regex' struct is both input and output.
46976         Initialize it before each use.  Patch by Tim Waugh.
46977
46978 2003-01-16  Bruno Haible  <bruno@clisp.org>
46979
46980         * MODULES.html.sh: Add a table of contents. Add the module name as
46981         leftmost column. Add hyperlinks.
46982
46983 2003-01-15  Bruno Haible  <bruno@clisp.org>
46984
46985         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
46986
46987 2003-01-15  Bruno Haible  <bruno@clisp.org>
46988
46989         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
46990         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
46991         suffix.
46992
46993 2003-01-15  Bruno Haible  <bruno@clisp.org>
46994
46995         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
46996
46997 2003-01-15  Bruno Haible  <bruno@clisp.org>
46998
46999         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
47000         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
47001
47002 2003-01-14  Jim Meyering  <jim@meyering.net>
47003
47004         * lib/same.c (same_name): Tweak a comment.
47005
47006 2003-01-14  Bruno Haible  <bruno@clisp.org>
47007
47008         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
47009         when a string comparison is sufficient.
47010
47011 2003-01-14  Bruno Haible  <bruno@clisp.org>
47012
47013         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
47014         'unsigned int'.
47015
47016 2003-01-14  Bruno Haible  <bruno@clisp.org>
47017
47018         * lib/hash-pjw.c: Add comment about low quality of this function.
47019
47020 2003-01-13  Bruno Haible  <bruno@clisp.org>
47021
47022         * modules/stpcpy: Distribute lib/stpcpy.h.
47023         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
47024
47025 2003-01-13  Bruno Haible  <bruno@clisp.org>
47026
47027         * modules/*: Add a description.
47028         * modules/strpbrk: Fix Makefile.am snippet.
47029         * modules/strtoimax: Fix dependencies.
47030         * modules/strtoumax: Likewise.
47031
47032 2003-01-13  Bruno Haible  <bruno@clisp.org>
47033
47034         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
47035         * modules/alloca (Makefile.am): All object files depend on alloca.h.
47036         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
47037
47038 2003-01-13  Bruno Haible  <bruno@clisp.org>
47039
47040         * gnulib-tool (func_create_testdir): Store config/* files in the main
47041         directory.
47042         * config.rpath: Move to ...
47043         * config/config.rpath: ... here.
47044         * modules/gettext: Contains config/config.rpath, not config.rpath.
47045         * modules/iconv: Likewise.
47046
47047 2003-01-12  Paul Eggert  <eggert@twinsun.com>
47048
47049         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
47050         to avoid collisions with libcurses and libreadline.
47051
47052         * m4/getstr.m4: Remove.
47053         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
47054
47055 2003-01-12  Paul Eggert  <eggert@twinsun.com>
47056
47057         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
47058         to avoid collisions with libcurses and libreadline.
47059
47060         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
47061         * lib/getstr.h, getstr.c: Remove.
47062         * lib/getline.c: Include "getline.h", to check interface.
47063         Move body of old getstr.c here: this defines MIN_CHUNK and
47064         declares getdelim2, which is renamed from getstr.
47065         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
47066
47067         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
47068         All uses changed.
47069         * lib/linebuffer.h: Likewise.
47070         (readline): Remove backward-compatibility macro.
47071
47072 2003-01-12  Paul Eggert  <eggert@twinsun.com>
47073
47074         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
47075         to avoid collisions with libcurses and libreadline.
47076         * getstr: Remove.
47077         * MODULES.html.sh: Remove getstr.
47078         * modules/getline: Depend on unlocked-io, not getstr.
47079
47080 2003-01-12  Jim Meyering  <jim@meyering.net>
47081
47082         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
47083
47084 2003-01-10  Bruno Haible  <bruno@clisp.org>
47085
47086         * modules/alloca: Change Makefile.am requirements. Simplify Include
47087         requirements. Add lib/alloca_.h to file list.
47088
47089 2003-01-10  Bruno Haible  <bruno@clisp.org>
47090
47091         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
47092
47093 2003-01-10  Bruno Haible  <bruno@clisp.org>
47094
47095         * lib/alloca_.h: New file.
47096         * lib/getdate.y: Unconditionally include alloca.h.
47097         * lib/makepath.c: Likewise.
47098         * lib/setenv.c: Likewise.
47099         * lib/userspec.c: Likewise.
47100
47101 2003-01-09  Karl Berry  <karl@gnu.org>
47102
47103         * MODULES.html.sh: include `dirname $0` in PATH, to find
47104         gnulib-tool.
47105
47106 2003-01-09  Bruno Haible  <bruno@clisp.org>
47107
47108         * modules/stdbool: Change configure.ac, Makefile.am requirements.
47109         Simplify Include requirements. Add lib/stdbool.h.in to file list.
47110
47111 2003-01-09  Bruno Haible  <bruno@clisp.org>
47112
47113         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
47114
47115 2003-01-09  Bruno Haible  <bruno@clisp.org>
47116
47117         * lib/stdbool.h.in: New file.
47118
47119 2003-01-09  Bruno Haible  <bruno@clisp.org>
47120
47121         * gnulib-tool (func_all_modules): Ignore files ending in ~.
47122         * MODULES.html.sh: Likewise.
47123
47124 2003-01-08  Jim Meyering  <jim@meyering.net>
47125
47126         * lib/full-write.c: Undefine and define-away `const' after inclusion
47127         of errno.h, not before.  Suggestion from Bruno Haible.
47128
47129 2003-01-08  Bruno Haible  <bruno@clisp.org>
47130
47131         * modules/full-read: Depend on full-write.
47132
47133 2003-01-08  Bruno Haible  <bruno@clisp.org>
47134
47135         * lib/safe-read.c: Include specification header first, to ensure its
47136         selfcontainedness.
47137         * lib/full-write.c: Likewise.
47138
47139 2003-01-07  Jim Meyering  <jim@meyering.net>
47140
47141         * lib/full-write.c: Rework so that it may serve to define full_read,
47142         too.
47143         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
47144
47145 2003-01-07  Bruno Haible  <bruno@clisp.org>
47146
47147         * lib/strtoimax.c: Include <stdint.h> as an alternative to
47148         <inttypes.h>.
47149         * lib/xstrtol.h: Likewise.
47150         * lib/xstrtoimax.c: Likewise.
47151         * lib/xstrtoumax.c: Likewise.
47152         * lib/human.h: Likewise.
47153
47154         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
47155         on systems that have <inttypes.h> but not <stdint.h>.
47156
47157 2003-01-07  Bruno Haible  <bruno@clisp.org>
47158
47159         * MODULES.html.sh: Add copyright notice.
47160         (missed_files): Omit CVS directory entries.
47161         (func_module): Make it work with sed-3.02.
47162         * MODULES.txt: Remove file.
47163
47164 2003-01-06  Jim Meyering  <jim@meyering.net>
47165
47166         * lib/version-etc.c: Update year in translatable copyright string.
47167
47168 2003-01-03  Karl Berry  <karl@gnu.org>
47169
47170         * config/config.{guess,sub}: update from prep.
47171
47172 2003-01-02  Karl Berry  <karl@gnu.org>
47173
47174         * doc/COPYING.DOC: belatedly updated to 1.2.
47175
47176 2003-01-01  Karl Berry  <karl@gnu.org>
47177
47178         * gnulib-tool (func_verify_module): report module name $module in
47179         error message, not $1.
47180         * gnulib-tool (create-testdir): don't complain if destdir couldn't
47181         be created, only if it doesn't exist.
47182         * gnulib-tool (last_checkin_date): don't expand the $Date here.
47183
47184 2002-12-31  Paul Eggert  <eggert@twinsun.com>
47185
47186         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
47187
47188 2002-12-31  Paul Eggert  <eggert@twinsun.com>
47189
47190         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
47191         memcmp if strcoll doesn't work.
47192
47193 2002-12-31  Bruno Haible  <bruno@clisp.org>
47194
47195         * lib/utime.c (utime_null): No need to call ftruncate if the file was
47196         nonempty.
47197
47198 2002-12-31  Bruno Haible  <bruno@clisp.org>
47199
47200         * lib/memcoll.c (STRCOLL): New macro.
47201         (memcoll): Use it.
47202
47203 2002-12-31  Bruno Haible  <bruno@clisp.org>
47204
47205         * lib/localcharset.h: New file.
47206         * lib/localcharset.c: Include it.
47207         * lib/unicodeio.c: Likewise.
47208
47209 2002-12-31  Bruno Haible  <bruno@clisp.org>
47210
47211         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
47212         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
47213
47214 2002-12-31  Bruno Haible  <bruno@clisp.org>
47215
47216         * lib/getline.h: Include <stddef.h>, for size_t.
47217
47218         * lib/unicodeio.h: Include <stddef.h>, for size_t.
47219         * lib/unicodeio.c: Don't include <stddef.h>.
47220
47221 2002-12-31  Bruno Haible  <bruno@clisp.org>
47222
47223         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
47224         HAVE_TM_ZONE.
47225
47226 2002-12-24  Karl Berry  <karl@gnu.org>
47227
47228         * config/config.guess: update from prep.
47229
47230 2002-12-24  Bruno Haible  <bruno@clisp.org>
47231
47232         General infrasructure.
47233         * m4/README: Rewritten.
47234         * m4/onceonly.m4: New file.
47235         * m4/onceonly_2_57.m4: New file.
47236
47237         Module atexit.
47238         * m4/atexit.m4: New file.
47239
47240         Module strtod.
47241         * m4/strtod.m4: New file.
47242
47243         Module strtol.
47244         * m4/strtol.m4: New file.
47245
47246         Module strtoul.
47247         * m4/strtoul.m4: New file.
47248
47249         Module memchr.
47250         * m4/memchr.m4: New file.
47251
47252         Module memcmp.
47253         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
47254         (jm_FUNC_MEMCMP): Invoke it.
47255
47256         Module memcpy.
47257         * m4/memcpy.m4: New file.
47258
47259         Module memmove.
47260         * m4/memmove.m4: New file.
47261
47262         Module memset.
47263         * m4/memset.m4: New file.
47264
47265         Module strcspn.
47266         * m4/strcspn.m4: New file.
47267
47268         Module strpbrk.
47269         * m4/strpbrk.m4: New file.
47270
47271         Module strstr.
47272         * m4/strstr.m4: New file.
47273
47274         Module strerror.
47275         * m4/strerror.m4: New file.
47276
47277         Module mktime.
47278         * m4/mktime.m4: Renamed from jm-mktime.m4.
47279         (gl_PREREQ_MKTIME): New macro.
47280         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
47281
47282         Module malloc.
47283         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
47284         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
47285         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
47286
47287         Module realloc.
47288         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
47289         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
47290         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
47291
47292         Module strftime.
47293         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
47294         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
47295         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
47296         gl_TM_GMTOFF.
47297         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
47298
47299         Module xalloc.
47300         * m4/xalloc.m4: New file.
47301
47302         Module alloca.
47303         * m4/alloca.m4: New file.
47304
47305         Module putenv.
47306         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
47307         (jm_FUNC_PUTENV): Invoke it.
47308
47309         Module setenv.
47310         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
47311         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
47312         when invoked twice.
47313         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
47314         gt_FUNC_SETENV.
47315
47316         Module memrchr.
47317         * m4/memrchr.m4: New file.
47318
47319         Module stpcpy.
47320         * m4/stpcpy.m4: New file.
47321
47322         Module strcase.
47323         * m4/strcase.m4: New file.
47324
47325         Module strdup.
47326         * m4/strdup.m4: New file.
47327
47328         Module strnlen.
47329         * m4/strnlen.m4: New file.
47330
47331         Module strndup.
47332         * m4/strndup.m4: New file.
47333
47334         Module xstrtod.
47335         * m4/xstrtod.m4: New file.
47336
47337         Module xstrtol.
47338         * m4/xstrtol.m4: New file.
47339
47340         Module getdate.
47341         * m4/getdate.m4: New file.
47342
47343         Module unlocked-io.
47344         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
47345         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
47346         * m4/jm-glibc-io.m4n: Remove file.
47347
47348         Module long-options.
47349         * m4/long-options.m4: New file.
47350
47351         Module md5.
47352         * m4/md5.m4: New file.
47353
47354         Module sha.
47355         * m4/sha.m4: New file.
47356
47357         Module getstr.
47358         * m4/getstr.m4: New file.
47359
47360         Module getline.
47361         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
47362         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
47363         <sys/types.h>, for size_t. Use the function name gnu_getline, not
47364         simply getline. Infoke gl_PREREQ_GETLINE.
47365
47366         Module obstack.
47367         * m4/obstack.m4: New file.
47368
47369         Module hash.
47370         * m4/hash.m4: New file.
47371
47372         Module readtokens.
47373         * m4/readtokens.m4: New file.
47374
47375         Module strverscmp.
47376         * m4/strverscmp.m4: New file.
47377
47378         Module stdbool.
47379         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
47380         OSF/1.
47381
47382         Module strtoll.
47383         * m4/strtoll.m4: New file.
47384
47385         Module strtoull.
47386         * m4/strtoull.m4: New file.
47387
47388         Module strtoimax.
47389         * m4/strtoimax.m4: New file.
47390
47391         Module strtoumax.
47392         * m4/strtoumax.m4: New file.
47393
47394         Module xstrtoimax.
47395         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
47396         jm_AC_PREREQ_XSTRTOIMAX.
47397         Moved the strtol prerequisites to strtol.m4.
47398         Moved the strtoll prerequisites to strtoll.m4.
47399         Moved the strtoimax prerequisites to strtoimax.m4.
47400
47401         Module xstrtoumax.
47402         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
47403         jm_AC_PREREQ_XSTRTOUMAX.
47404         Moved the strtoul prerequisites to strtoul.m4.
47405         Moved the strtoull prerequisites to strtoull.m4.
47406         Moved the strtoumax prerequisites to strtoumax.m4.
47407
47408         Module chown.
47409         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
47410         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
47411
47412         Module dup2.
47413         * m4/dup2.m4: New file.
47414
47415         Module ftruncate.
47416         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
47417         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
47418
47419         Module getgroups.
47420         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
47421         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
47422
47423         Module gettimeofday.
47424         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
47425         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
47426         gl_PREREQ_GETTIMEOFDAY.
47427
47428         Module mkdir.
47429         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
47430         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
47431
47432         Module mkstemp.
47433         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
47434         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
47435         jm_AC_TYPE_UINTMAX_T.
47436         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
47437
47438         Module stat.
47439         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
47440         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
47441
47442         Module lstat.
47443         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
47444         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
47445
47446         Module timespec.
47447         * m4/timespec.m4 (gl_TIMESPEC): New macro.
47448         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
47449         * m4/st_mtim.m4: Indentation.
47450
47451         Module nanosleep.
47452         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
47453         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
47454         gl_PREREQ_NANOSLEEP.
47455
47456         Module regex.
47457         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
47458         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
47459         (gl_REGEX): New macro.
47460
47461         Module rename.
47462         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
47463         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
47464
47465         Module rmdir.
47466         * m4/rmdir.m4: New file.
47467
47468         Module utime.
47469         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
47470         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
47471         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
47472
47473         Module dirname.
47474         * m4/dirname.m4: New file.
47475
47476         Module getopt.
47477         * m4/getopt.m4: New file.
47478
47479         Module unistd-safer.
47480         * m4/unistd-safer.m4: New file.
47481
47482         Module fnmatch.
47483         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
47484         declaration.
47485         (gl_PREREQ_FNMATCH_EXTRA): New macro.
47486         (gl_FUNC_FNMATCH_POSIX): New macro.
47487         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
47488         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
47489         simply fnmatch.
47490
47491         Module exclude.
47492         * m4/exclude.m4: New file.
47493
47494         Module human.
47495         * m4/human.m4: New file.
47496
47497         Module acl.
47498         * m4/acl.m4: Nop.
47499
47500         Module backupfile.
47501         * m4/backupfile.m4: New file.
47502         * m4/d-ino.m4: Indentation.
47503
47504         Module fsusage.
47505         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
47506         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
47507         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
47508
47509         Module dirfd.
47510         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
47511         requirements.
47512
47513         Module euidaccess.
47514         * m4/euidaccess.m4: New file.
47515
47516         Module file-type.
47517         * m4/file-type.m4: New file.
47518
47519         Module fileblocks.
47520         * m4/fileblocks.m4: New file.
47521
47522         Module filemode.
47523         * m4/filemode.m4: New file.
47524
47525         Module isdir.
47526         * m4/isdir.m4: New file.
47527
47528         Module lchown.
47529         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
47530         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
47531
47532         Module makepath.
47533         * m4/makepath.m4: New file.
47534
47535         Module modechange.
47536         * m4/modechange.m4: New file.
47537
47538         Module mountlist.
47539         * m4/mountlist.m4: New file.
47540         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
47541         Indentation.
47542
47543         Module path-concat.
47544         * m4/path-concat.m4: New file.
47545
47546         Module pathmax.
47547         * m4/pathmax.m4: New file.
47548
47549         Module same.
47550         * m4/same.m4: New file.
47551
47552         Module save-cwd.
47553         * m4/save-cwd.m4: New file.
47554
47555         Module savedir.
47556         * m4/savedir.m4: New file.
47557
47558         Module xgetcwd.
47559         * m4/xgetcwd.m4: New file.
47560         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
47561
47562         Module xreadlink.
47563         * m4/xreadlink.m4: New file.
47564
47565         Module safe-read.
47566         * m4/safe-read.m4: New file.
47567
47568         Module safe-write.
47569         * m4/safe-write.m4: New file.
47570
47571         Module closeout.
47572         * m4/closeout.m4: New file.
47573
47574         Module stdio-safer.
47575         * m4/stdio-safer.m4: New file.
47576
47577         Module getpass.
47578         * m4/getpass.m4: New file.
47579
47580         Module getugroups.
47581         * m4/getugroups.m4: New file.
47582
47583         Module group-member.
47584         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
47585         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
47586
47587         Module idcache.
47588         * m4/idcache.m4: New file.
47589
47590         Module userspec.
47591         * m4/userspec.m4: New file.
47592
47593         Module gettime.
47594         * m4/clock_time.m4: New file.
47595         * m4/gettime.m4: New file.
47596
47597         Module settime.
47598         * m4/settime.m4: New file.
47599
47600         Module posixtm.
47601         * m4/posixtm.m4: New file.
47602
47603         Module gethostname.
47604         * m4/gethostname.m4: New file.
47605
47606         Module canon-host.
47607         * m4/canon-host.m4: New file.
47608
47609         Module gettext.
47610         * m4/codeset.m4: New file, from gettext-0.11.5.
47611         * m4/gettext.m4: New file, from gettext-0.11.5.
47612         * m4/glibc21.m4: New file, from gettext-0.11.5.
47613         * m4/iconv.m4: New file, from gettext-0.11.5.
47614         * m4/intdiv0.m4: New file, from gettext-0.11.5.
47615         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
47616         * m4/inttypes.m4: New file, from gettext-0.11.5.
47617         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
47618         * m4/isc-posix.m4: New file, from gettext-0.11.5.
47619         * m4/lcmessage.m4: New file, from gettext-0.11.5.
47620         * m4/lib-ld.m4: New file, from gettext-0.11.5.
47621         * m4/lib-link.m4: New file, from gettext-0.11.5.
47622         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
47623         * m4/progtest.m4: New file, from gettext-0.11.5.
47624         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
47625         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
47626         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
47627
47628         Module localcharset.
47629         * m4/localcharset.m4: New file.
47630
47631         Module hard-locale.
47632         * m4/hard-locale.m4: New file.
47633
47634         Module mbswidth.
47635         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
47636         onceonly macros.
47637         * m4/mbrtowc.m4: Add comment.
47638
47639         Module memcasecmp.
47640         * m4/memcasecmp.m4: New file.
47641
47642         Module memcoll.
47643         * m4/memcoll.m4: New file.
47644
47645         Module unicodeio.
47646         * m4/unicodeio.m4: New file.
47647
47648         Module rpmatch.
47649         * m4/rpmatch.m4: New file.
47650
47651         Module yesno.
47652         * m4/yesno.m4: New file.
47653
47654         Module exitfail.
47655         * m4/exitfail.m4: New file.
47656
47657         Module c-stack.
47658         * m4/c-stack.m4 (gl_C_STACK): New macro.
47659         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
47660
47661         Module error.
47662         * m4/error.m4 (gl_ERROR): New macro.
47663         (jm_PREREQ_ERROR): Use onceonly macros.
47664
47665         Module fatal.
47666         * m4/fatal.m4: New file.
47667
47668         Module getloadavg.
47669         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
47670         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
47671
47672         Module getpagesize.
47673         * m4/getpagesize.m4: New file.
47674
47675         Module getusershell.
47676         * m4/getusershell.m4: New file.
47677
47678         Module physmem.
47679         * m4/physmem.m4: New file.
47680
47681         Module posixver.
47682         * m4/posixver.m4: New file.
47683
47684         Module quotearg.
47685         * m4/quotearg.m4: New file.
47686
47687         Module quote.
47688         * m4/quote.m4: New file.
47689
47690         Module readutmp.
47691         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
47692
47693         Module sig2str.
47694         * m4/sig2str.m4: New file.
47695
47696         Other.
47697         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
47698         ulonglong.m4.
47699         * m4/intmax_t.m4: New file.
47700         * m4/d-type.m4: Indentation.
47701         * m4/jm-macros.m4: Update.
47702         * m4/prereq.m4 (jm_PREREQ): Update.
47703         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
47704         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
47705         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
47706         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
47707         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
47708         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
47709         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
47710         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
47711         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
47712         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
47713         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
47714         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
47715         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
47716         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
47717         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
47718         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
47719         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
47720         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
47721         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
47722
47723 2002-12-24  Bruno Haible  <bruno@clisp.org>
47724
47725         * MODULES.txt: Update according to m4/ changes.
47726
47727         Module gettext.
47728         * config.rpath: New file, from gettext-0.11.5.
47729
47730         * modules/*: New module descriptions.
47731         * gnulib-tool: New file.
47732         * MODULES.html.sh: New file.
47733
47734 2002-12-21  Karl Berry  <karl@gnu.org>
47735
47736         * doc/fdl.texi: update to version 1.2.
47737
47738 2002-12-19  Karl Berry  <karl@gnu.org>
47739
47740         * config/config.guess: update from prep.
47741
47742 2002-12-18  Bruno Haible  <bruno@clisp.org>
47743
47744         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
47745         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
47746
47747 2002-12-17  Bruno Haible  <bruno@clisp.org>
47748
47749         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
47750         stdlib.h, string.h.
47751
47752 2002-12-17  Bruno Haible  <bruno@clisp.org>
47753
47754         * lib/canon-host.c (strdup): Remove unused declaration.
47755
47756         * lib/fsusage.c: Include full_read.h.
47757         (get_fs_usage): Use full_read instead of safe_read.
47758
47759         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
47760
47761 2002-12-12  Karl Berry  <karl@gnu.org>
47762
47763         * config/config.guess: update from prep.
47764
47765 2002-12-11  Bruno Haible  <bruno@clisp.org>
47766
47767         * m4/setenv.m4: New file, from gettext-0.11.5.
47768
47769 2002-12-11  Bruno Haible  <bruno@clisp.org>
47770
47771         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
47772         not unsetenv().
47773         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
47774         modifications:
47775
47776         2002-12-11  Bruno Haible  <bruno@clisp.org>
47777
47778                 * setenv.c (alloca): Fall back to malloc.
47779                 (freea): New macro.
47780                 (setenv): Use freea() to free memory allocated with alloca().
47781
47782         2002-11-13  Bruno Haible  <bruno@clisp.org>
47783
47784                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
47785                 function declarations.
47786                 * unsetenv.c (unsetenv): Likewise.
47787
47788         2002-03-04  Bruno Haible  <bruno@clisp.org>
47789
47790                 Portability to AIX 4.3.3.
47791                 * unsetenv.c: New file, extracted from setenv.c.
47792                 * setenv.c: Move the unsetenv() function to unsetenv.c.
47793
47794         2001-12-20  Bruno Haible  <bruno@clisp.org>
47795
47796                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
47797                 use malloc instead. For SunOS 4.
47798
47799         2001-12-11  Bruno Haible  <bruno@clisp.org>
47800
47801                 * setenv.c: Declare alloca.
47802                 (compar_fn_t): New typedef.
47803                 (KNOWN_VALUE, STORE_VALUE): Use it.
47804
47805         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
47806         setenv.h.
47807
47808 2002-12-10  Paul Eggert  <eggert@twinsun.com>
47809
47810         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
47811         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
47812         Choose values that are less likely to collide with system fnmatch
47813         options.
47814         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
47815         defined (e.g., a pure POSIX system).
47816         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
47817         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
47818
47819 2002-12-06  Paul Eggert  <eggert@twinsun.com>
47820
47821         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
47822         a pain in practice to deal with generated m4 files.  This change
47823         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
47824
47825         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
47826         and jm-glibc-io.m4, as they are no longer a special case.
47827         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
47828         kludge and the auto-generation stuff.  Check only whether the
47829         functions are declared, not whether they exist, since older hosts
47830         that don't declare the functions can't use the optimization anyway.
47831
47832 2002-12-06  Jim Meyering  <jim@meyering.net>
47833
47834         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
47835
47836         Merge in changes from libc's misc/error.c, in preparation
47837         for the merge of gnulib's changes back into libc.
47838
47839         * lib/error.c (_): Define only if not already defined.
47840         Move definition to follow all #include directives.
47841         Include unlocked-io.h only if !_LIBC.
47842         [_LIBC]: Include <libio/libioP.h>.
47843         [USE_IN_LIBIO]: Include <libio/iolibio.h>
47844         (fflush): Tweak definition to use INTUSE.
47845         (putc): Define.
47846
47847 2002-12-05  Paul Eggert  <eggert@twinsun.com>
47848
47849         * lib/alloca.c [defined emacs]: Include "lisp.h".
47850         (xalloc_die) [defined emacs]: New macro.
47851         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
47852         [! defined emacs]: Include <xalloc.h>.
47853         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
47854         (pointer): Typedef to POINTER_TYPE *.
47855         (malloc): Remove decl; we now always use xmalloc.
47856         (alloca): Use old-style definition, since Emacs needs this.
47857         Check for arithmetic overflow when computing combined size.
47858
47859 2002-12-04  Paul Eggert  <eggert@twinsun.com>
47860
47861         Do not generate unlocked-io.h automatically, since it's easier to
47862         maintain it by hand.
47863
47864         * lib/unlocked-io.h: New file, from GNU diffutils,
47865         but with proper copyright notice and attribution.
47866         * lib/gen-uio: Remove.
47867         * lib/Makefile.am: Add copyright notice.
47868         (libfetish_a_SOURCES): Add unlocked-io.h.
47869         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
47870         (DISTCLEANFILES, io_functions): Remove macros.
47871         (EXTRA_DIST): Remove gen_uio.
47872         (unlocked-io.h): Remove rule.
47873
47874 2002-12-04  Jim Meyering  <jim@meyering.net>
47875
47876         Reflect the fact that stat.c and lstat.c are no longer generated.
47877         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
47878         (DISTCLEANFILES): Likewise.
47879         (EXTRA_DIST): Likewise.
47880         (all_local): Don't depend on stat.c or lstat.c.
47881         (stat.c, lstat.c): Remove rules.
47882         (EXTRA_DIST): Remove xstat.in.
47883
47884         * lib/xstat.in: Remove file.  Contents moved into stat.c.
47885         * lib/stat.c: New file.  Contents mostly from xstat.in.
47886         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
47887         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
47888
47889         * lib/safe-read.c: Rework so that it may serve to define safe_write,
47890         too.
47891         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
47892
47893 2002-12-03  Jim Meyering  <jim@meyering.net>
47894
47895         * lib/safe-read.c, safe-write.c: Change variable names and comments,
47896         but not semantics, to minimize the differences between these two files.
47897         (safe_read): Change comment to mention SAFE_READ_ERROR.
47898
47899         * lib/safe-read.c (IS_EINTR): Define.
47900         (safe_read): Use IS_EINTR in place of in-function cpp directives.
47901
47902 2002-12-02  Jim Meyering  <jim@meyering.net>
47903
47904         * lib/safe-read.c (EINTR): Define.
47905         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
47906         (INT_MAX): Provide fallback.
47907         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
47908
47909         * lib/safe-read.h (SAFE_READ_ERROR): Define.
47910
47911 2002-12-02  Bruno Haible  <bruno@clisp.org>
47912
47913         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
47914         Define, taken from safe-read.c.
47915         (INT_MAX): Provide fallback.
47916         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
47917         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
47918
47919         * lib/safe-read.c (EINTR): Remove definition.
47920         (safe_read): Don't use EINTR if it is absent.
47921
47922 2002-12-01  Jim Meyering  <jim@meyering.net>
47923
47924         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
47925         zero.
47926         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
47927
47928 2002-11-27  Paul Eggert  <eggert@twinsun.com>
47929
47930         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
47931         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
47932         with `if (! (value < limit)) abort ();', for readability.
47933
47934 2002-11-26  Karl Berry  <karl@gnu.org>
47935
47936         * lib/strdup.c: copy from libc again, with jim's ok.
47937         * lib/.cppi-disable: re-add strdup.c
47938
47939 2002-11-25  Karl Berry  <karl@gnu.org>
47940
47941         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
47942         instead of "strtol.c".
47943
47944 2002-11-25  Karl Berry  <karl@gnu.org>
47945
47946         * config/install-sh: update from automake for variable quoting, $0 in
47947         error msgs, etc.
47948
47949         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
47950         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
47951         entry.
47952
47953 2002-11-25  Jim Meyering  <jim@meyering.net>
47954
47955         * lib/mktime.c: Sync from libc, now that it has the latest fix.
47956
47957 2002-11-24  Karl Berry  <karl@gnu.org>
47958
47959         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
47960         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
47961
47962 2002-11-24  Jim Meyering  <jim@meyering.net>
47963
47964         Update from coreutils:
47965
47966         * lib/mktime.c: Merge in changes from libc.
47967
47968         Avoid a link-time failure on some Linux systems.
47969         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
47970         (otherwise).
47971         (__mon_yday): Declare with the STATIC attribute.
47972         (__mktime_internal): Likewise.
47973         Based on a report from Greg Schafer.
47974
47975 2002-11-23  Jim Meyering  <jim@meyering.net>
47976
47977         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
47978         Use `unsigned', not `int', as type of index.
47979
47980         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
47981
47982         * lib/fsusage.c: Remove unneeded parentheses around operands of
47983         `defined'.
47984
47985 2002-11-22  Paul Eggert  <eggert@twinsun.com>
47986
47987         * lib/quotearg.h: Allow multiple inclusion by surrounding with
47988         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
47989         so that we can be included first.
47990         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
47991         * lib/quotearg.c: Include quotearg.h immediately after config.h.
47992         No need to include stddef.h or sys/types.h any more.
47993         Surround local include files with "", not "<>".
47994         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
47995         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
47996         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
47997         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
47998         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
47999         (ISPRINT): Remove; no longer needed now that we assume C89.
48000
48001         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
48002         Preserve errno.
48003
48004         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
48005         quotearg_char): Use SIZE_MAX rather than
48006         (size_t) -1 when we are talking about "infinity".
48007
48008         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
48009
48010 2002-11-22  Paul Eggert  <eggert@twinsun.com>
48011
48012         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
48013         hint that one should use `if (! x) abort ();' rather than `assert
48014         (x);', and anyway it's one less thing to worry about configuring.
48015         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
48016         hash_rehash, hash_insert): Use abort rather than assert.
48017
48018 2002-11-22  Bruno Haible  <bruno@clisp.org>
48019
48020         * lib/safe-read.h: Assume C89. Add comments.
48021         (safe_read): Change return type to size_t.
48022         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
48023         byte counts > SSIZE_MAX correctly.
48024         * lib/safe-write.h: New file.
48025         * lib/safe-write.c: New file.
48026         * lib/full-read.h: New file.
48027         * lib/full-read.c: New file.
48028         * lib/full-write.h: Assume C89. Add comments.
48029         * lib/full-write.c: Include safe-write.h.
48030         (full_write): Rewritten to use safe_write.
48031         Suggested by Jim Meyering and Paul Eggert.
48032
48033 2002-11-21  Jim Meyering  <jim@meyering.net>
48034
48035         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
48036
48037         Merge in changes from the coreutils.
48038
48039         2002-09-25  Paul Eggert  <eggert@twinsun.com>
48040         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
48041         <stdint.h>.
48042         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
48043         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
48044         int.  Work more efficiently if X is the same width as uintmax_t.
48045         Do not compare X to -1, to avoid bogus compiler warning.
48046         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
48047         Don't assume that f_frsize and f_bsize are the same type.
48048
48049         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
48050         warning on FreeBSD.
48051
48052         * lib/makepath.c (make_path): Restore umask *before* creating the final
48053         component.
48054         (make_path): Minor reformatting.
48055
48056         * lib/xmalloc.c: Adjust to work with new autoconf macros,
48057         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
48058         HAVE_MALLOC/HAVE_REALLOC.
48059
48060         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
48061         dummy ones.  At least on GNU/Linux systems, `auto' means something
48062         else.
48063         From Michael Stone.
48064
48065 2002-11-21  Bruno Haible  <bruno@clisp.org>
48066
48067         Remove case insensitive option matching.
48068         * lib/argmatch.h (argcasematch): Remove declaration.
48069         (ARGCASEMATCH): Remove macro.
48070         (__xargmatch_internal): Remove case_sensitive argument.
48071         (XARGMATCH): Update.
48072         (XARGCASEMATCH): Remove macro.
48073         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
48074         case_sensitive argument.
48075         (argcasematch): Remove function.
48076         (__xargmatch_internal): Remove case_sensitive argument.
48077         (main): Use XARGMATCH instead of XARGCASEMATCH.
48078
48079         * lib/xmalloc.c: Change compile-time error message. Add comment about
48080         required autoconf version.
48081
48082 2002-11-20  Paul Eggert  <eggert@twinsun.com>
48083
48084         Merge argmatch cleanups from Bison.  Assume C89.
48085
48086         * lib/argmatch.c: Include config.h here, not in argmatch.h.
48087         Include stdlib.h, for EXIT_FAILURE.
48088         Always include <string.h>, since we assume C89.
48089         (EXIT_FAILURE): Remove pre-C89 bug workaround.
48090         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
48091         Include <stddef.h> instead, since it's all we need for size_t.
48092         (PARAMS): Remove.  All uses removed.
48093         (ARRAY_CARDINALITY): Do not bother to #undef.
48094         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
48095         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
48096         Remove unnecessary parentheses.
48097         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
48098         Insert necessary parentheses.
48099         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
48100         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
48101
48102 2002-11-19  Bruno Haible  <bruno@clisp.org>
48103
48104         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
48105         * lib/mbswidth.h: Include <stddef.h>, for size_t.
48106
48107         * lib/mbswidth.h (PARAMS): Remove macro.
48108         (mbswidth, mbsnwidth): Use ANSI C function declarations.
48109         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
48110
48111         * lib/gcd.h (PARAMS): Remove macro.
48112         (gcd): Use ANSI C function declarations.
48113         * lib/gcd.c (gcd): Likewise.
48114
48115 2002-11-15  Bruno Haible  <bruno@clisp.org>
48116
48117         * lib/strcspn.c: Include <stddef.h>.
48118         (strcspn): Use ANSI C function declaration. Change return type to
48119         size_t. Use NULL.
48120         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
48121         (strpbrk): Use NULL.
48122         * lib/strpbrk.h (PARAMS): Remove macro.
48123         (strpbrk): Use ANSI C function declaration.
48124         * lib/strstr.c: Don't include <sys/types.h>.
48125         * lib/strstr.h (PARAMS): Remove macro.
48126         (strstr): Use ANSI C function declarations.
48127
48128 2002-11-14  Karl Berry  <karl@gnu.org>
48129
48130         * config/mkinstalldirs: `do' on separate line, instead of
48131         `for var; do'.
48132
48133 2002-11-06  Bruno Haible  <bruno@clisp.org>
48134
48135         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
48136         * lib/gcd.c (gcd): Likewise.
48137
48138 2002-11-05  Bruno Haible  <bruno@clisp.org>
48139
48140         * lib/gcd.h: New file, from gettext-0.11.5.
48141         * lib/gcd.c: New file, from gettext-0.11.5.
48142
48143 2002-11-05  Bruno Haible  <bruno@clisp.org>
48144
48145         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
48146         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
48147         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
48148         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
48149
48150         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
48151         <libintl.h>.
48152         * lib/makepath.c: Include gettext.h instead of <locale.h> and
48153         <libintl.h>.
48154
48155         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
48156         * lib/human.c: Include gettext.h instead of <libintl.h>.
48157         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
48158         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
48159         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
48160         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
48161         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
48162         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
48163         (textdomain): Remove definition.
48164         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
48165
48166         * lib/long-options.c: Remove include of <libintl.h> and definition of
48167         _.
48168         * lib/same.c: Remove include of <libintl.h> and definition of _.
48169
48170 2002-11-04  Owen Taylor  <otaylor@redhat.com>
48171
48172         * lib/config.charset: A few additions for Solaris.
48173
48174 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
48175
48176         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
48177         * lib/localcharset.c (locale_charset): Declare as extern "C".
48178
48179 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
48180
48181         * lib/config.charset: msdos in uk_UA uses CP1125.
48182
48183 2002-11-04  Bruno Haible  <bruno@clisp.org>
48184
48185         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
48186         * lib/strcase.h: New file, from GNU gettext-0.11.5.
48187         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
48188         * lib/strstr.h: New file, from GNU gettext-0.11.5.
48189         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
48190
48191 2002-11-04  Bruno Haible  <bruno@clisp.org>
48192
48193         * lib/localcharset.c (locale_charset): Don't return an empty string.
48194
48195 2002-11-04  Bruno Haible  <bruno@clisp.org>
48196
48197         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
48198         aliases.
48199
48200 2002-11-04  Bruno Haible  <bruno@clisp.org>
48201
48202         * lib/config.charset: Update for newest glibc. Add canonical names
48203         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
48204
48205 2002-11-04  Bruno Haible  <bruno@clisp.org>
48206
48207         * lib/config.charset: Add support for NetBSD.
48208
48209 2002-11-04  Bruno Haible  <bruno@clisp.org>
48210
48211         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
48212
48213 2002-11-01  Bruno Haible  <bruno@clisp.org>
48214
48215         * configure.in: Add AC_CONFIG_AUX_DIR call.
48216         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
48217         test/Makefile.
48218         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
48219
48220 2002-09-28  Karl Berry  <karl@gnu.org>
48221
48222         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
48223         installed automake until the next release, since changes have been
48224         made.
48225
48226 2002-09-25  Karl Berry  <karl@gnu.org>
48227
48228         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
48229         * lib/getopt*: copy from libc/posix.
48230         * lib/gettext.h: copy from gettext.
48231         * lib/.cppi-disable: add strdup.c, gettext.h.
48232
48233 2002-09-25  Karl Berry  <karl@gnu.org>
48234
48235         * config/srclist.txt: enable gettext.h check.
48236         * config/config.{guess,sub}: update from prep.
48237         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
48238                 from automake 1.6.3.
48239         See srclist*.
48240
48241 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
48242
48243         * regex.c (PATFETCH): Remove the translating fetch.
48244         (PATFETCH_RAW): Rename to PATFETCH.
48245         (set_image_of_range): New fun.
48246         (SET_RANGE_TABLE_WORK_AREA): Use it.
48247         (regex_compile): Don't translate the pattern chars so eagerly.
48248         Only do it when inserting an `exactn' bytecode or when handling
48249         a char-range.
48250         (mutually_exclusive_p): Avoid empty statement.
48251
48252 2002-07-06  Jim Meyering  <meyering@lucent.com>
48253
48254         * m4/README: Don't mention Makefile.am.in.
48255         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
48256
48257 2002-07-01  Jim Meyering  <meyering@lucent.com>
48258
48259         * lib/c-stack.c: Include sys/time.h.
48260         From Volker Borchert.
48261
48262 2002-06-26  Paul Eggert  <eggert@twinsun.com>
48263
48264         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
48265
48266 2002-06-26  Paul Eggert  <eggert@twinsun.com>
48267
48268         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
48269         New macro.  Use it uniformly instead of
48270         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
48271         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
48272         reported by Vin Shelton.
48273
48274 2002-06-22  Paul Eggert  <eggert@twinsun.com>
48275
48276         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
48277         Do not assume SA_SIGINFO behavior.
48278         Bug reported by Jim Meyering on NetBSD 1.5.2.
48279
48280 2002-06-22  Jim Meyering  <meyering@lucent.com>
48281
48282         * m4/c-stack.m4: New file, from diffutils-2.8.2.
48283         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
48284
48285         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
48286         now that configure.ac uses AC_GNU_SOURCE.
48287         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
48288         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
48289
48290         Update to latest tools.  Suggestions from Paul Eggert.
48291         * m4/stdbool.m4: New file, from diffutils-2.8.2.
48292         * m4/gnu-source.m4: Update from diffutils-2.8.2.
48293         * m4/fnmatch.m4: Likewise.
48294         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
48295         to AC_HEADER_STDBOOL
48296
48297 2002-06-22  Jim Meyering  <meyering@lucent.com>
48298
48299         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
48300         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
48301
48302 2002-06-22  Jim Meyering  <meyering@lucent.com>
48303
48304         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
48305
48306         * lib/exitfail.c, exitfail.h: Likewise.
48307         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
48308
48309         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
48310         of fnmatch.h.
48311         (EXTRA_DIST): Add fnmatch_loop.c.
48312         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
48313
48314         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
48315         * lib/fnmatch.c: Update from diffutils-2.8.2.
48316         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
48317         * lib/fnmatch.h: Remove file.
48318
48319 2002-06-21  Jim Meyering  <meyering@lucent.com>
48320
48321         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
48322         * m4/mbrtowc.m4: Likewise.
48323
48324         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
48325         * m4/mbswidth.m4: Reflect name change:
48326         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
48327         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
48328
48329         * m4/lib-link.m4: Update from gettext-0.11.2.
48330         * m4/gettext.m4: Likewise.
48331
48332         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
48333         From Alfred M. Szmidt.
48334
48335 2002-06-18  Paul Eggert  <eggert@twinsun.com>
48336
48337         * lib/file-type.h: Report an error if neither S_ISREG nor
48338         S_IFREG is defined, instead of using a test specific to glibc
48339         2.2.  This should be safe, since POSIX requires S_ISREG and
48340         Unix Version 7 had S_IFREG.  We don't need to check for
48341         <sys/types.h> since we don't use any symbols that it defines.
48342
48343 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
48344
48345         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
48346         $@-t, so that each temporary file name is unique and valid in the first
48347         8 characters, for operation under DOS.
48348
48349 2002-06-15  Paul Eggert  <eggert@twinsun.com>
48350
48351         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
48352
48353 2002-06-15  Jim Meyering  <meyering@lucent.com>
48354
48355         Work even with DJGPP 2.03, which lacks support for symlinks.
48356         From Richard Dawe.
48357         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
48358         is defined.
48359         * lib/lchown.c (S_ISLNK): Likewise.
48360
48361 2002-06-15  Jim Meyering  <meyering@lucent.com>
48362
48363         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
48364         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
48365         have been included before this file.
48366
48367 2002-06-14  Jim Meyering  <meyering@lucent.com>
48368
48369         * lib/file-type.h: Use the version from diffutils-2.8.2.
48370         * lib/file-type.c: Likewise.
48371
48372 2002-06-07  Jim Meyering  <meyering@lucent.com>
48373
48374         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
48375         They're needed at least for NetBSD 1.5.2.
48376         ($statxfs_includes): Include those same headers.
48377         ($statxfs_includes): Include sys/vfs.h if available.
48378         ($statxfs_includes): Likewise for sys/statvfs.h.
48379         Check for the following members in both structs statfs and statvfs:
48380         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
48381
48382 2002-06-01  Jim Meyering  <meyering@lucent.com>
48383
48384         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
48385         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
48386
48387 2002-05-28  Jim Meyering  <meyering@lucent.com>
48388
48389         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
48390         Reported by Volker Borchert.
48391
48392 2002-05-27  Jim Meyering  <meyering@lucent.com>
48393
48394         Fix a problem seen only on nonconforming systems whereby ls.c's
48395         use of localtime, and then of gettimeofday would cause trouble:
48396         the localtime call used to initialize rpl_gettimeofday's save
48397         mechanism would clobber ls's current local time information so
48398         that in any long listing the first file would always be listed
48399         with date 1970-01-01.  Analysis by Volker Borchert.
48400
48401         * lib/gettimeofday.c (localtime): Undefine.
48402         (rpl_localtime): New function.
48403
48404 2002-05-27  Jim Meyering  <meyering@lucent.com>
48405
48406         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
48407         localtime.
48408
48409         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
48410         use the replacement function; it wouldn't resolve at link time.
48411         Reported by Volker Borchert.
48412
48413 2002-05-22  Jim Meyering  <meyering@lucent.com>
48414
48415         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
48416         file-type.h.
48417         * lib/file-type.h: New file.
48418         * lib/file-type.c (file_type): New file/function.  Extracted from
48419         diffutils.
48420
48421 2002-04-30  Jim Meyering  <meyering@lucent.com>
48422
48423         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
48424
48425 2002-04-29  Paul Eggert  <eggert@twinsun.com>
48426
48427         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
48428
48429 2002-04-29  Paul Eggert  <eggert@twinsun.com>
48430
48431         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
48432         Do not check for alloca.h (no longer used) or stdbool.h (was never
48433         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
48434
48435 2002-04-29  Paul Eggert  <eggert@twinsun.com>
48436
48437         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
48438
48439 2002-04-29  Jim Meyering  <meyering@lucent.com>
48440
48441         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
48442         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
48443         Use AC_FUNC_STRNLEN here instead.
48444
48445         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
48446         With autoconf-2.53a, it's part of AC_PROG_CC.
48447
48448 2002-04-28  Paul Eggert  <eggert@twinsun.com>
48449
48450         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
48451         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
48452
48453 2002-04-28  Paul Eggert  <eggert@twinsun.com>
48454
48455         * lib/sig2str.h, lib/sig2str.c: New files.
48456         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
48457
48458 2002-04-28  Paul Eggert  <eggert@twinsun.com>
48459
48460         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
48461         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
48462         of 127, since 64 is the largest conceivable number for ancient
48463         nonstandard hosts.
48464         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
48465
48466 2002-04-28  Jim Meyering  <meyering@lucent.com>
48467
48468         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
48469
48470 2002-04-24  Jim Meyering  <meyering@lucent.com>
48471
48472         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
48473         (jm_PREREQ): Use it.
48474
48475         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
48476         mach/mach.h fcntl.h.
48477         Check for this function: setlocale.
48478
48479 2002-04-24  Jim Meyering  <meyering@lucent.com>
48480
48481         * lib/gettext.h: New file, from Gettext.
48482         * lib/Makefile.am (INCLUDES): Remove -I../intl.
48483         (libfetish_a_SOURCES): Add gettext.h.
48484
48485 2002-04-16  Jim Meyering  <meyering@lucent.com>
48486
48487         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
48488         ut_pid, ut_id, ut_exit.
48489
48490 2002-04-16  Jim Meyering  <meyering@lucent.com>
48491
48492         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
48493         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
48494         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
48495
48496 2002-04-12  Jim Meyering  <meyering@lucent.com>
48497
48498         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
48499         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
48500         existence of the getmntinfo function.  Needed for Darwin 5.3.
48501
48502         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
48503         This is necessary at least on Darwin 5.3.
48504
48505         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
48506         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
48507         strnlen.o in the library, and that makes some versions of ranlib
48508         object.
48509
48510 2002-04-12  Jim Meyering  <meyering@lucent.com>
48511
48512         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
48513
48514 2002-04-09  Jim Meyering  <meyering@lucent.com>
48515
48516         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
48517         to be more precise.  Rather than saying we're checking whether the
48518         function `works', say what we're testing.
48519         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
48520         Reported by Bruno Haible.
48521
48522 2002-03-10  Jim Meyering  <meyering@lucent.com>
48523
48524         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
48525         Suggestion from Santiago Vila.
48526
48527 2002-03-08  Jim Meyering  <meyering@lucent.com>
48528
48529         * lib/rename.c: Mention that this wrapper is needed also on
48530         mips-dec-ultrix4.4 systems.
48531
48532 2002-03-02  Jim Meyering  <meyering@lucent.com>
48533
48534         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
48535         not HAVE_CLOCK_SETTIME.
48536
48537 2002-02-27  Paul Eggert  <eggert@twinsun.com>
48538
48539         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
48540         Check for clock_settime.
48541
48542 2002-02-27  Paul Eggert  <eggert@twinsun.com>
48543
48544         * lib/nanosleep.h: Rename to....
48545         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
48546
48547         * lib/gettime.c: New file.
48548         * lib/settime.c: New file.
48549         * lib/stime.c: Remove.
48550
48551         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
48552         timespec.h.  Remove nanosleep.h.
48553
48554 2002-02-25  Paul Eggert  <eggert@twinsun.com>
48555
48556         * m4/acl.m4: New file.
48557         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
48558         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
48559
48560 2002-02-25  Paul Eggert  <eggert@twinsun.com>
48561
48562         * lib/acl.c, lib/acl.h: New files.
48563         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
48564
48565 2002-02-24  Jim Meyering  <meyering@lucent.com>
48566
48567         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
48568         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
48569         cause trouble.  Reported by Nelson Beebe.
48570
48571 2002-02-23  Paul Eggert  <eggert@twinsun.com>
48572
48573         * lib/path-concat.c (xpath_concat): Reorder code to pacify
48574         compilers that don't know that xalloc_die never returns.
48575
48576 2002-02-20  Jim Meyering  <meyering@lucent.com>
48577
48578         * lib/getdate.c: Regenerate using bison-1.33.
48579
48580 2002-02-17  Jim Meyering  <meyering@lucent.com>
48581
48582         * config/config.guess (main): Don't use `head -1'; it's no longer
48583         portable. Use `sed 1q' instead.
48584
48585 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
48586
48587         * m4/codeset.m4: Upgrade to gettext-0.11.
48588         * m4/gettext.m4: Upgrade to gettext-0.11.
48589         * m4/glibc21.m4: Upgrade to gettext-0.11.
48590         * m4/iconv.m4: Upgrade to gettext-0.11.
48591         * m4/isc-posix.m4: Upgrade to gettext-0.11.
48592         * m4/lcmessage.m4: Upgrade to gettext-0.11.
48593         * m4/lib-ld.m4: New file, from gettext-0.11.
48594         * m4/lib-link.m4: New file, from gettext-0.11.
48595         * m4/lib-prefix.m4: New file, from gettext-0.11.
48596         * m4/progtest.m4: Upgrade to gettext-0.11.
48597
48598 2002-02-15  Paul Eggert  <eggert@twinsun.com>
48599
48600         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
48601         (jm_PREREQ): Use it.
48602
48603 2002-02-15  Paul Eggert  <eggert@twinsun.com>
48604
48605         * lib/posixver.c, lib/posixver.h: New files.
48606         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
48607
48608 2002-02-02  Paul Eggert  <eggert@twinsun.com>
48609             Bruno Haible  <bruno@clisp.org>
48610
48611         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
48612         (fwrite_success_callback): New declaration.
48613         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
48614         print_unicode_char. Call failure callback instead of error.
48615         (fwrite_success_callback): New function.
48616         (exit_failure_callback): New function.
48617         (fallback_failure_callback): New function.
48618         (print_unicode_char): Call unicode_to_mb.
48619
48620 2002-01-26  Jim Meyering  <meyering@lucent.com>
48621
48622         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
48623         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
48624
48625 2002-01-26  Jim Meyering  <meyering@lucent.com>
48626
48627         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
48628
48629 2002-01-22  Paul Eggert  <eggert@twinsun.com>
48630
48631         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
48632
48633 2002-01-22  Jim Meyering  <meyering@lucent.com>
48634
48635         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
48636         Otherwise, some versions of automake would omit the rule that makes
48637         Makefile from Makefile.in.
48638
48639 2002-01-21  Paul Eggert  <eggert@twinsun.com>
48640
48641         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
48642         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
48643         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
48644         (memcoll): Set errno to zero if there is no error.
48645
48646         * lib/quotearg.c (quotearg_buffer_restyled):
48647         Fix bug with quoting buffers containing NUL when backslashing escapes.
48648         This bug was exposed by the other changes in this patch.
48649         (quotearg_n_options): New arg ARGSIZE.
48650         All callers changed.
48651         (quoting_options_from_style): New function.
48652         (quotearg_n_style): Use it.
48653         (quotearg_n_style_mem): New function.
48654
48655         * lib/quotearg.h (quotearg_n_style_mem): New function.
48656
48657 2002-01-19  Jim Meyering  <meyering@lucent.com>
48658
48659         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
48660         Remove useless quotes: DF_PROG="df".
48661         * m4/strnlen.m4: New file.
48662
48663 2002-01-16  Paul Eggert  <eggert@twinsun.com>
48664
48665         * lib/backupfile.c (ISDIGIT): Comment fix.
48666         * lib/getdate.y (ISDIGIT): Likewise.
48667         * lib/posixtm.c (ISDIGIT, year): Likewise.
48668         * lib/strverscmp.c (ISDIGIT): Likewise.
48669         * lib/userspec.c (ISDIGIT): Likewise.
48670
48671 2002-01-16  Jim Meyering  <meyering@lucent.com>
48672
48673         * lib/getdate.y: Add three semicolons, each just before a closing
48674         brace. Bison (as of version 1.31) no longer papers over that mistake.
48675
48676 2002-01-05  Jim Meyering  <meyering@lucent.com>
48677
48678         * lib/version-etc.c (version_etc_copyright): Update copyright year.
48679
48680 2001-12-19  Paul Eggert  <eggert@twinsun.com>
48681
48682         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
48683         not silently exit merely because the output buffer happens to
48684         have nothing pending.
48685
48686 2001-12-18  Paul Eggert  <eggert@twinsun.com>
48687
48688         See the big note in ../ChangeLog.
48689         * lib/human.c (suffixes): Prefer K to k for 1024.
48690         (generate_suffix_backwards): New function.
48691         (human_readable_inexact): Use it.
48692         * lib/xstrtol.c (__xstrtol): If there is no number but there
48693         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
48694         Accept 'K' as well as 'k'.
48695
48696 2001-12-15  Jim Meyering  <meyering@lucent.com>
48697
48698         * lib/regex.h (__restrict_arr): Update from libc.
48699
48700         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
48701         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
48702         (STREQ): Define.
48703
48704 2001-12-14  Jim Meyering  <meyering@lucent.com>
48705
48706         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
48707         Suggestion from Bruno Haible.
48708
48709 2001-12-10  Jim Meyering  <meyering@lucent.com>
48710
48711         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
48712         xrealloc, Instead, include "xalloc.h".
48713         (initbuffer): Don't cast xmalloc return value to char*.
48714         (readline): Reword comment.
48715         Don't cast xrealloc return value to char*
48716         Return NULL, not 0.
48717
48718 2001-12-09  Jim Meyering  <meyering@lucent.com>
48719
48720         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
48721         about `signed and unsigned type in conditional expression'.
48722         * lib/posixtm.c (posix_time_parse): Likewise.
48723
48724         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
48725
48726         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
48727         to avoid a pedantic warning.
48728
48729         * lib/getstr.c: Don't include assert.h.
48730         (getstr): Remove warning-evoking assertions.
48731         Return -1 if offset parameter is out of bounds.
48732         Change the type of a local from int to size_t.
48733
48734         * lib/strftime.c (my_strftime_localtime_r): Include this function
48735         definition in the `#if ! HAVE_TM_GMTOFF' block.
48736
48737         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
48738         Include xalloc.h instead.
48739
48740 2001-12-02  Jim Meyering  <meyering@lucent.com>
48741
48742         * lib/tempname.c: Don't declare getenv, thus reverting the change of
48743         2001-11-18.  It's no longer necessary, now that stdlib.h is always
48744         included.
48745
48746         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
48747         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
48748
48749 2001-11-30  Akim Demaille  <akim@epita.fr>
48750
48751         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
48752         before being defined.
48753
48754 2001-11-27  Paul Eggert  <eggert@twinsun.com>
48755
48756         * lib/quotearg.h (quotearg_n, quotearg_n_style):
48757         First arg is int, not unsigned.
48758         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
48759         (SIZE_MAX, UINT_MAX): New macros.
48760         (quotearg_n_options): Abort if N is negative.
48761         Avoid overflow check on hosts where size_t is 64 bits and int
48762         is 32 bits, as overflow is impossible there.
48763         Fix off-by-one typo that caused unnecessary reallocation.
48764
48765 2001-11-27  Jim Meyering  <meyering@lucent.com>
48766
48767         * lib/tempname.c: Merge with version from libc.
48768         * lib/regex.c: Likewise.
48769
48770         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
48771         systems for which STDC_HEADERS is 0, it was not included, resulting in
48772         a warning about an integer-to-pointer conversion problem with getenv.
48773         Reported by Volker Borchert.
48774
48775 2001-11-26  Jim Meyering  <meyering@lucent.com>
48776
48777         * lib/gtod.h: Remove file.
48778         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
48779         * lib/gettimeofday.c: Don't include gtod.h.
48780         (GTOD_init): Remove function.
48781         (rpl_gettimeofday): Do its job here instead, rather than aborting.
48782         Suggestion from Volker Borchert.
48783
48784 2001-11-23  Jim Meyering  <meyering@lucent.com>
48785
48786         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
48787         it.
48788         * lib/hash.c (struct hash_table): Define it here instead.
48789
48790 2001-11-22  Jim Meyering  <meyering@lucent.com>
48791
48792         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
48793
48794 2001-11-20  Jim Meyering  <meyering@lucent.com>
48795
48796         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
48797         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
48798
48799 2001-11-19  Jim Meyering  <meyering@lucent.com>
48800
48801         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
48802         directory.  Use "conftestXXXXXX" as the template.
48803         Suggestion from Paul Eggert.
48804
48805         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
48806         immediately, so the test doesn't mistakenly hit the max-open-files
48807         limit.
48808
48809 2001-11-18  Paul Eggert  <eggert@twinsun.com>
48810
48811         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
48812         (TEMPORARIES): New macro.
48813         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
48814         removes an artificial limitation (e.g. HP-UX 10.20, where
48815         TMP_MAX is 17576).
48816
48817 2001-11-18  Jim Meyering  <meyering@lucent.com>
48818
48819         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
48820
48821 2001-11-18  Jim Meyering  <meyering@lucent.com>
48822
48823         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
48824         on SunOS 4.
48825
48826         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
48827         files will be created before anything else.
48828
48829 2001-11-17  Paul Eggert  <eggert@twinsun.com>
48830
48831         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
48832         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
48833
48834 2001-11-17  Jim Meyering  <meyering@lucent.com>
48835
48836         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
48837         Prompted by a report from Bob Proulx.
48838
48839         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
48840         Instead, require UTILS_FUNC_MKSTEMP.
48841
48842 2001-11-17  Jim Meyering  <meyering@lucent.com>
48843
48844         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
48845         Now, that's done as part of AC_FUNC_STRTOD.
48846
48847 2001-11-17  Jim Meyering  <meyering@lucent.com>
48848
48849         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
48850         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
48851         rather than group writable.  Patch by Juan F. Codagnone.
48852
48853         * lib/readtokens.c: Remove explicit declarations of xmalloc and
48854         xrealloc, Instead, include "xalloc.h".
48855
48856         * lib/mountlist.c: Include unlocked-io.h after all system headers.
48857         Remove explicit declarations of xmalloc, xrealloc,
48858         and xstrdup.  Instead, include "xalloc.h".
48859
48860         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
48861         unlocked-io.h.
48862         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
48863         Likewise.
48864         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
48865
48866         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
48867         Reported by Padraig Brady.
48868
48869         * lib/mkstemp.c: #undef mkstemp.
48870         Include config.h.
48871         (rpl_mkstemp): Rename from mkstemp.
48872         Protoize.
48873
48874 2001-11-16  Jim Meyering  <meyering@lucent.com>
48875
48876         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
48877         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
48878         determine the amount of total physical memory, use pstat_getstatic.
48879         HPUX-11 doesn't define _SC_PHYS_PAGES.
48880         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
48881         If sysconf couldn't be used to determine the amount of available
48882         physical memory, use both pstat_getstatic and pstat_getdynamic.
48883         Based on a patch from Bob Proulx.
48884
48885 2001-11-10  Jim Meyering  <meyering@lucent.com>
48886
48887         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
48888         (jm_PREREQ): Use it.
48889
48890 2001-11-09  Jim Meyering  <meyering@lucent.com>
48891
48892         * m4/jm-macros.m4: Require autoconf-2.52f.
48893         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
48894         Use these AC_-prefixed names, not the AM_-prefixed ones.
48895
48896         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
48897
48898 2001-11-05  Jim Meyering  <meyering@lucent.com>
48899
48900         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
48901
48902 2001-11-04  Jim Meyering  <meyering@lucent.com>
48903
48904         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
48905         $DEFS.
48906
48907 2001-11-03  Jim Meyering  <meyering@lucent.com>
48908
48909         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
48910         of AC_DEFUN.
48911
48912         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
48913         know the name of the variable in the macro definition.
48914
48915 2001-11-03  Jim Meyering  <meyering@lucent.com>
48916
48917         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
48918         in argmatch_to_argument call.
48919
48920         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
48921         argument.
48922
48923         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
48924         e.g., a fault due to an attempt to free a NULL pointer.
48925
48926 2001-11-01  Jim Meyering  <meyering@lucent.com>
48927
48928         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
48929         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
48930
48931 2001-11-01  Jim Meyering  <meyering@lucent.com>
48932
48933         * lib/dirfd.c, lib/dirfd.h: New files.
48934         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
48935
48936         * lib/hash.c (hash_print) [TESTING]: Clean up.
48937
48938 2001-10-22  Paul Eggert  <eggert@twinsun.com>
48939
48940         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
48941         to avoid a warning if -Wall.
48942
48943 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
48944
48945         * README: New file
48946         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
48947         (per RMS's instructions, this is now the canonical source)
48948         * lgpl/, gpl/: New directories.
48949
48950 2001-10-21  Paul Eggert  <eggert@twinsun.com>
48951
48952         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
48953
48954 2001-10-21  Jim Meyering  <meyering@lucent.com>
48955
48956         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
48957         this code would end up calling gettext even in packages built
48958         with --disable-nls.
48959         * lib/getopt.c (_): Likewise.
48960         * lib/regex.c (_): Likewise.
48961
48962 2001-10-20  Paul Eggert  <eggert@twinsun.com>
48963
48964         * m4/error.m4 (jm_PREREQ_ERROR):
48965         Do not invoke AC_CHECK_FUNCS with strerror_r, as
48966         AC_FUNC_STRERROR_R does that.
48967         Check for strerror declaration.
48968
48969         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
48970         are supposed to have them these days.
48971         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
48972         Merge changes from latest Autoconf CVS.
48973         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
48974         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
48975         POSIX decided to standardize on the int flavor of strerror_r.
48976
48977 2001-10-20  Paul Eggert  <eggert@twinsun.com>
48978
48979         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
48980         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
48981         Use strerror_r that is only a macro, even if it is not a function.
48982         (strerror): Check for HAVE_DECL_STRERROR before declaring.
48983         (private_strerror): Use prototypes, not old-style function definition.
48984         (print_errno_message): New function.
48985         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
48986         char*-flavored one.
48987         (error_tail, error, error_at_line): Use it.
48988
48989 2001-10-11  Jim Meyering  <meyering@lucent.com>
48990
48991         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
48992         and quote_n (1, ... to avoid clobbering a buffer.
48993
48994 2001-10-05  Jim Meyering  <meyering@lucent.com>
48995
48996         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
48997         hash-pjw.h.
48998         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
48999         * lib/hash-pjw.h: New file.
49000
49001 2001-09-30  Jim Meyering  <meyering@lucent.com>
49002
49003         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
49004         `struct fsstat' has the `f_fstypename' member.
49005         Use that to define FS_TYPE, which is now used to make
49006         the getfsstat link test tighter.
49007
49008 2001-09-30  Jim Meyering  <meyering@lucent.com>
49009
49010         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
49011         Include <sys/ucred.h>, for Apple Darwin.
49012         Include sys/mount.h and sys/fs_types.h only if available.
49013         (FS_TYPE): Define.
49014         (read_filesystem_list): Use FS_TYPE.
49015
49016 2001-09-29  Paul Eggert  <eggert@twinsun.com>
49017
49018         * lib/exclude.c (excluded_filename): 0 -> false, since it's
49019         a boolean context.
49020
49021 2001-09-29  Jim Meyering  <meyering@lucent.com>
49022
49023         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
49024         [one-argument getmntent function]): Include stdio.h before mntent.h.
49025         SunOS 4.1.x needs it for the declaration of `FILE'.
49026         Patch by Volker Borchert.
49027
49028         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
49029         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
49030         sys/fs_types.h, and make the link-test for getfsstat guard #include
49031         directives with appropriate #if HAVE_*_H tests so that we can
49032         detect getfsstat on Apple Darwin1.3.7 systems.
49033         Reported by Nelson Beebe.
49034         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
49035
49036 2001-09-28  Paul Eggert  <eggert@twinsun.com>
49037
49038         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
49039         #defines strtoimax.  Also treat the other strto* functions
49040         like strtoimax.
49041
49042         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
49043         Check for strtoul and strtoumax,
49044         as those declarations are made even in the signed case.
49045         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
49046         Likewise, for strtol and strtoimax.
49047
49048 2001-09-28  Paul Eggert  <eggert@twinsun.com>
49049
49050         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
49051         #defines strtoimax.  Also treat the other strto* functions
49052         like strtoimax.
49053
49054         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
49055         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
49056         (strtoimax, strtoumax): Do not declare if already defined as a macro.
49057
49058 2001-09-26  Jim Meyering  <meyering@lucent.com>
49059
49060         Most macros in unlocked-io.h had the wrong number of arguments.
49061         * lib/gen-uio: New script.
49062         (USE_UNLOCKED_IO): Define to 1 if not already defined.
49063         * lib/unlocked-io.hin: Remove file.
49064         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
49065         rather than trying to embed it here.
49066         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
49067         Reported by Padraig Brady.
49068
49069 2001-09-25  Volker Borchert  <bt@teknon.de>
49070
49071         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
49072         `result'.
49073
49074 2001-09-24  Jim Meyering  <meyering@lucent.com>
49075
49076         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
49077
49078 2001-09-23  Jim Meyering  <meyering@lucent.com>
49079
49080         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
49081         instead of the mere test for existence of mntent.h.  The latter
49082         would get a false-positive on AIX 3.4 systems.
49083         In the outer getmntent if-block, don't die if neither of the getmntent
49084         tests succeeds.  Instead, just fall through and continue with the
49085         remaining tests.
49086
49087 2001-09-23  Jim Meyering  <meyering@lucent.com>
49088
49089         * lib/mountlist.c: Remove useless parentheses in #if directives.
49090         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
49091         the deprecated MOUNTED symbol is no longer defined in mntent.h.
49092
49093 2001-09-22  Jim Meyering  <meyering@lucent.com>
49094
49095         * m4/gettext.m4: New file.  From gettext.
49096         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
49097         * m4/progtest.m4: Likewise
49098         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
49099         * m4/glibc21.m4: Likewise.
49100
49101         * m4/libintl.m4: Remove.  No longer used.
49102
49103 2001-09-22  Jim Meyering  <meyering@lucent.com>
49104
49105         * lib/localcharset.c: Update from latest gettext.
49106         * lib/config.charset: Likewise.
49107
49108 2001-09-20  Jim Meyering  <meyering@lucent.com>
49109
49110         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
49111         strtoimax.
49112         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
49113         strtoumax.
49114
49115 2001-09-20  Jim Meyering  <meyering@lucent.com>
49116
49117         * lib/xstrtol.c (strtoimax): Guard declaration with
49118         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
49119         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
49120         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
49121         (strtoumax): Likewise, for completeness (it wasn't necessary).
49122
49123 2001-09-17  Paul Eggert  <eggert@twinsun.com>
49124
49125         * lib/strtoimax.c (HAVE_LONG_LONG):
49126         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
49127         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
49128         to work around bug in IBM C compiler.
49129
49130 2001-09-17  Jim Meyering  <meyering@lucent.com>
49131
49132         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
49133         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
49134         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
49135         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
49136         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
49137         whenever the right hand side need not be expanded by the shell.
49138
49139 2001-09-16  Paul Eggert  <eggert@twinsun.com>
49140
49141         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
49142         library.  It's not correct, as some older glibcs are buggy.
49143         fnmatch wasn't fixed until glibc 2.2.
49144
49145         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
49146         special shell magic here.
49147
49148 2001-09-16  Jim Meyering  <meyering@lucent.com>
49149
49150         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
49151         * m4/jm-macros.m4: Require it.
49152
49153 2001-09-16  Jim Meyering  <meyering@lucent.com>
49154
49155         * lib/mkdir.c: New file.
49156
49157 2001-09-15  Jim Meyering  <meyering@lucent.com>
49158
49159         * m4/jm-macros.m4: Check for help2man.
49160
49161 2001-09-11  Jim Meyering  <meyering@lucent.com>
49162
49163         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
49164         The body, by Paul Eggert, was moved here from configure.in.
49165         * m4/jm-macros.m4: Require UTILS_HOST_OS.
49166
49167 2001-09-04  Paul Eggert  <eggert@twinsun.com>
49168
49169         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
49170         (jm_PREREQ): Use it.
49171
49172 2001-09-04  Paul Eggert  <eggert@twinsun.com>
49173
49174         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
49175         Use ssize_t, not int, to store result of readlink.
49176         Check for ssize_t overflow as well as size_t overflow,
49177         as POSIX says the result of readlink is implementation-defined
49178         when ssize_t overflows.
49179         Remove unnecessary cast to char*.
49180         Use free+malloc instead of realloc, as the storage doesn't need
49181         to be preserved and it's clearer and can be more efficient that way.
49182         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
49183         * lib/xreadlink.h (xreadlink): Update prototype.
49184
49185 2001-09-04  Paul Eggert  <eggert@twinsun.com>
49186
49187         * lib/xgetcwd.c: Revert some of the previous change; intead,
49188         fix the HAVE_GETCWD_NULL code to behave more like the
49189         !HAVE_GETCWD_NULL code used to.
49190
49191         Include "xalloc.h".
49192         (xgetcwd): Do not return NULL when memory is exhausted; instead,
49193         invoke xalloc_die.
49194
49195 2001-09-03  Paul Eggert  <eggert@twinsun.com>
49196
49197         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
49198         sys/param.h, as pathmax.h includes them.
49199
49200 2001-09-03  Paul Eggert  <eggert@twinsun.com>
49201
49202         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
49203         (jm_PREREQ_XGETCWD): New macro.
49204
49205         * m4/getcwd.m4: New file.
49206
49207 2001-09-03  Paul Eggert  <eggert@twinsun.com>
49208
49209         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
49210         like the HAVE_GETCWD_NULL code.
49211         Include pathmax.h if not HAVE_GETCWD.
49212         Do not include xalloc.h.
49213         (INITIAL_BUFFER_SIZE): New symbol.
49214         Do not use xmalloc / xrealloc, since the caller is responsible for
49215         handling errors.  Preserve errno around `free' during failure.
49216         Do not overrun buffer when using getwd.
49217
49218 2001-09-03  Paul Eggert  <eggert@twinsun.com>
49219
49220         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
49221         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
49222         getcwd (NULL, 0).
49223
49224 2001-09-03  Paul Eggert  <eggert@twinsun.com>
49225
49226         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
49227         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
49228         spotted by Jim Meyering.
49229
49230 2001-09-03  Jim Meyering  <meyering@lucent.com>
49231
49232         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
49233         failure.
49234
49235 2001-09-02  Jim Meyering  <meyering@lucent.com>
49236
49237         * lib/error.c: Update from GNU libc.
49238
49239 2001-09-01  Jim Meyering  <meyering@lucent.com>
49240
49241         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
49242         Used by df.
49243
49244 2001-09-01  Jim Meyering  <meyering@lucent.com>
49245
49246         * lib/xreadlink.c: New file.
49247         * lib/xreadlink.h: New file.
49248         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
49249         xreadlink.h.
49250
49251         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
49252         doesn't conflict with sparc Solaris 7's definition in
49253         /usr/include/sys/int_types.h.
49254
49255         * lib/exclude.c: Use `""', not `<>' to #include non-system header
49256         files.
49257         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
49258         and strncasecmp as r-values.  Unixware didn't have declarations.
49259
49260 2001-08-31  Paul Eggert  <eggert@twinsun.com>
49261
49262         * lib/xstrtol.h: Add copyright notice.
49263         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
49264         LONGINT_INVALID_SUFFIX_CHAR.
49265
49266 2001-08-31  Paul Eggert  <eggert@twinsun.com>
49267
49268         * lib/xstrtol.c (strtoimax): New decl.
49269
49270 2001-08-31  Paul Eggert  <eggert@twinsun.com>
49271
49272         * lib/xgetcwd.c: Don't include pathmax.h.
49273         Include stdlib.h and unistd.h if available.
49274         Include xalloc.h.
49275         (xmalloc, xstrdup, free): Remove decls.
49276         (xgetcwd): Don't assume sizes fit in unsigned.
49277         Check for overflow when computing sizes.
49278         Simplify reallocation code.
49279
49280 2001-08-31  Paul Eggert  <eggert@twinsun.com>
49281
49282         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
49283         a directory's st_size can have an arbitrary value, so the old
49284         usage could waste an arbitrary amount of memory.  All uses
49285         changed.
49286         * lib/savedir.h: Update prototype.
49287
49288 2001-08-31  Paul Eggert  <eggert@twinsun.com>
49289
49290         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
49291
49292         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
49293         old strtoimax.c.
49294
49295         Also, make the following further changes to make this file's
49296         configuration more similar to that of strtol.c:
49297         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
49298         (strtoumax, uintmax_t, strtoull, strtol): Remove.
49299         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
49300         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
49301         changed to signed values.
49302
49303         And make the following changes as well:
49304         Fix copyright notice, as 1999 was missing.
49305         (verify): New macro.
49306         (strtoimax): Check sizes at compile-time, not run-time.
49307         Prefer strtol to strtoll if both work.
49308         (main): Remove; it was not that useful and was a pain to maintain.
49309
49310         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
49311
49312 2001-08-31  Jim Meyering  <meyering@lucent.com>
49313
49314         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
49315         Use an initial, malloc'd, buffer of length 128 rather than
49316         a statically allocated one of length 1024.
49317
49318 2001-08-30  Paul Eggert  <eggert@twinsun.com>
49319
49320         Simplify code, partly by assuming autoconf 2.52 semantics.
49321
49322         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
49323
49324         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
49325         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
49326         All uses removed.
49327         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
49328         Move AC_REQUIRE to next-to-top level, to avoid confusion.
49329         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
49330         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
49331         jm_AC_HEADER_INTTYPES_H.
49332         * m4/jm-macros.m4 (jm_MACROS): Likewise.
49333
49334         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
49335
49336         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
49337         Quote first arg of AC_DEFUN.
49338         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
49339         since they are needed to parse the include file even if we need
49340         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
49341         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
49342         but with opposite signedness.
49343
49344 2001-08-30  Paul Eggert  <eggert@twinsun.com>
49345
49346         Merge 'exclude' changes from tar 1.13.22.
49347         This fixes one or two unlikely storage allocation overflow bugs,
49348         but doesn't change user-visible behavior otherwise.
49349
49350 2001-08-30  Paul Eggert  <eggert@twinsun.com>
49351
49352         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
49353         (jm_PREREQ_EXCLUDE): New macro.
49354
49355 2001-08-30  Paul Eggert  <eggert@twinsun.com>
49356
49357         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
49358         tm to be declared.
49359
49360 2001-08-30  Paul Eggert  <eggert@twinsun.com>
49361
49362         * lib/hash.c: Remove '2001' from copyright notice.
49363
49364 2001-08-30  Paul Eggert  <eggert@twinsun.com>
49365
49366         * lib/full-write.h: New file.
49367         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
49368         * lib/full-write.c: Correct credits, as cccp.c no longer
49369         exists and anyway it was so heavily changed from the old cccp
49370         code as to be unrecognizable.  Include full-write.h.
49371         (full_write) Return size_t, with short writes meaning failure.
49372         All callers changed.  This fixes a bug with large buffers
49373         on 64-bit hosts.
49374         * lib/utime.c: Include full-write.h.
49375
49376 2001-08-30  Paul Eggert  <eggert@twinsun.com>
49377
49378         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
49379         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
49380         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
49381         Include if available.
49382         (<xalloc.h>): Include
49383         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
49384         (verify): New macro.  Use it to verify that EXCLUDE macros do not
49385         collide with FNM macros.
49386         (struct patopts): New struct.
49387         (struct exclude): Use it, as exclude patterns now come with options.
49388         (new_exclude): Support above changes.
49389         (new_exclude, add_exclude_file):
49390         Initial size must now be a power of two to simplify overflow checking.
49391         (free_exclude, fnmatch_no_wildcards): New function.
49392         (excluded_filename): No longer requires options arg, as the options
49393         are determined by add_exclude.  Now returns bool, not int.
49394         (excluded_filename, add_exclude):
49395         Add support for the fancy new exclusion options.
49396         (add_exclude, add_exclude_file): Now takes int options arg.
49397         Check for arithmetic overflow when computing sizes.
49398         (add_exclude_file): xrealloc might modify errno, so don't
49399         realloc until after errno might be used.
49400
49401         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
49402         New macros.
49403         (free_exclude): New decl.
49404         (add_exclude, add_exclude_file): Now takes int options arg.
49405         (excluded_filename): No longer requires options arg, as the options
49406         are determined by add_exclude.  Now returns bool, not int.
49407
49408 2001-08-30  Paul Eggert  <eggert@twinsun.com>
49409
49410         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
49411
49412 2001-08-27  Jim Meyering  <meyering@lucent.com>
49413
49414         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
49415
49416         * lib/version-etc.c (N_): Remove definition.
49417         Revert most of last change.
49418         Instead, simply don't mark the `Copyright...' string for translation.
49419         Based on advice from Paul Eggert.
49420
49421         * lib/strtoxmax.c: Tweak comment.
49422
49423 2001-08-26  Jim Meyering  <meyering@lucent.com>
49424
49425         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
49426
49427         * m4/xstrtoimax.m4: New file.
49428         * m4/xstrtoumax.m4: Add comments explaining why we
49429         AC_REPLACE_FUNCS(strtol).
49430
49431 2001-08-26  Jim Meyering  <meyering@lucent.com>
49432
49433         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
49434         of copyright with `%s' so translators don't get an untranslated
49435         message in 2002.
49436         (COPYRIGHT_YEAR): Define.
49437         (version_etc): Use fprintf rather than fputs.
49438         Suggestion from Ulrich Drepper.
49439
49440         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
49441
49442         * lib/strtoll.c: New file, from GNU libc.
49443         * lib/xstrtoimax.c: New file.
49444
49445         * lib/xstrtol.h: Add xstrtoimax.
49446         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
49447         * lib/strtoimax.c: New file.  Likewise, but first define
49448         STRTOUXMAX_SIGNED.
49449
49450         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
49451         ...
49452         * lib/strtoxmax.c: ... then renamed to this.
49453
49454 2001-08-18  Paul Eggert  <eggert@twinsun.com>
49455
49456         * m4/inttypes.m4: Add AC_PREREQ(2.13).
49457         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
49458         (jm_AC_TYPE_INTMAX_T): New macro.
49459         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
49460
49461         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
49462
49463         * m4/longlong.m4: Renamed from ulonglong.m4.
49464         * m4/inttypes.m4: Renamed from inttypes_h.m4.
49465         * m4/uintmax_t.m4: Removed.
49466
49467 2001-08-13  Paul Eggert  <eggert@twinsun.com>
49468
49469         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
49470         Port to Solaris 8, where 'sed' requires a space after the 'r'
49471         command, and where sh dislikes "$/".  Clean up the spacing a bit.
49472         Redirect output to $tmp just once.
49473
49474 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
49475
49476         * lib/addext.c (<errno.h>): Include.
49477         (errno): Declare if not defined.
49478         (addext): Work correctly when pathconf returns -1 and leaves
49479         errno alone because there is no limit.  Also, work even if
49480         pathconf returns a value greater than SIZE_MAX.
49481
49482 2001-08-12  Jim Meyering  <meyering@lucent.com>
49483
49484         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
49485         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
49486         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
49487         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
49488         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
49489         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
49490         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
49491         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
49492         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
49493         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
49494         utime.m4, utimes.m4, xstrtoumax.m4:
49495         Quote the first argument in each use of AC_DEFUN.
49496
49497 2001-08-12  Jim Meyering  <meyering@lucent.com>
49498
49499         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
49500         Simply `return getcwd (NULL, 0);'.
49501         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
49502         Use 1300 as initial value for length, not PATH_MAX.
49503
49504         * lib/pathmax.h: Clean up cpp syntax.
49505
49506 2001-08-12  Jim Meyering  <meyering@lucent.com>
49507
49508         * lib/gettimeofday.c: New file.
49509         * lib/gtod.h: New file.
49510         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
49511
49512 2001-08-05  Jim Meyering  <meyering@lucent.com>
49513
49514         * m4/jm-macros.m4: Require autoconf-2.52.
49515
49516 2001-08-04  Jim Meyering  <meyering@lucent.com>
49517
49518         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
49519         stmt, to get in sync with glibc.
49520
49521 2001-08-03  Paul Eggert  <eggert@twinsun.com>
49522
49523         The following changes are from gettext 0.10.39 as maintained by
49524         Bruno Haible.
49525
49526         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
49527         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
49528         with inverted sense.  All uses changed.
49529
49530         * lib/mbswidth.c: Don't include <limits.h>.
49531         Include <stdlib.h> and <string.h> unconditionally.
49532         (iswcntrl, mbsinit, ISCNTRL): New macros.
49533         (mbsnwidth): Use K&R style function declarations.
49534         Don't bother checking for MB_LEN_MAX == 1, since the compiler
49535         can optimize it when MB_CUR_MAX == 1.
49536         The width of control characters is zero, not 1.
49537
49538 2001-08-03  Paul Eggert  <eggert@twinsun.com>
49539
49540         The following changes are from gettext 0.10.39 as maintained by
49541         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
49542
49543         * m4/codeset.m4: Upgrade to serial AM1.
49544         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
49545         all uses changed.  Quote first arg of AC_DEFUN.
49546         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
49547
49548         * m4/iconv.m4: Upgrade to serial AM2.
49549         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
49550         Add --with-libconv-prefix.
49551         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
49552         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
49553         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
49554         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
49555         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
49556
49557         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
49558         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
49559         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
49560         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
49561         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
49562         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
49563         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
49564         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
49565         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
49566
49567         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
49568         string.h any more.
49569
49570         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
49571         not the default value.
49572
49573         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
49574         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
49575         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
49576         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
49577         Also check for iswcntrl, used for wcwidth fallback.
49578         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
49579         to Autoconf 2.13.
49580
49581 2001-08-03  Jim Meyering  <meyering@lucent.com>
49582
49583         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
49584         as it was in the original.  Reported by Paul Eggert.
49585
49586 2001-07-16  Jim Meyering  <meyering@lucent.com>
49587
49588         * m4/gettimeofday.m4: New file.
49589         Prompted by a report from Bernhard Baehr.
49590
49591 2001-07-15  Jim Meyering  <meyering@lucent.com>
49592
49593         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
49594         stuff. Now it's in ../Makefile.cfg.
49595
49596 2001-07-15  Jim Meyering  <meyering@lucent.com>
49597
49598         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
49599         (BUILT_SOURCES): Add unlocked-io.h.
49600         (io_functions): Define.
49601         (unlocked-io.h): New rule.
49602         (DISTCLEANFILES): Add unlocked-io.h.
49603         (all-local): Depend on unlocked-io.h, to ensure it is created.
49604
49605         * lib/unlocked-io.hin: New file
49606
49607         * lib/regex.c: Update from glibc.
49608
49609 2001-07-05  Jim Meyering  <meyering@lucent.com>
49610
49611         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
49612         recommendation.
49613         (libfetish_a_SOURCES): Put all .h files here instead.
49614         Remove a thus-exposed (better checks in automake) duplicate and
49615         two unnecessary .h files.
49616
49617 2001-07-04  Jim Meyering  <meyering@lucent.com>
49618
49619         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
49620         that generates jm-glibc-io.m4 so that it doesn't trigger any make
49621         distcheck failure.
49622
49623 2001-07-02  Jim Meyering  <meyering@lucent.com>
49624
49625         The following changes were prompted by suggestions from Bruno Haible.
49626
49627         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
49628         is now generated.
49629         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
49630         definition of EXTRA_DIST.
49631         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
49632         ensure that the generated file is created/updated whenever the list
49633         of $(unlocked_functions) is changed.
49634         (jm-glibc-io.m4): New rule.
49635         (unlocked-io.h): New rule -- currently unused.
49636
49637 2001-06-24  Jim Meyering  <meyering@lucent.com>
49638
49639         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
49640         unmatched right bracket, rather than kludging it with an extra,
49641         falsely-matching quote in a comment.  Patch by Akim Demaille.
49642
49643 2001-06-11  Jim Meyering  <meyering@lucent.com>
49644
49645         * lib/regex.c: Update from GNU libc.
49646
49647 2001-05-27  Jim Meyering  <meyering@lucent.com>
49648
49649         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
49650         Check for ut_type in struct utmp.
49651
49652 2001-05-27  Jim Meyering  <meyering@lucent.com>
49653
49654         * lib/readutmp.h (UT_TYPE): Define.
49655
49656 2001-05-24  Jim Meyering  <meyering@lucent.com>
49657
49658         * lib/argmatch.c: Include "quote.h".
49659         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
49660         quote function.  Reported by Göran Uddeborg.
49661
49662 2001-05-22  Jim Meyering  <meyering@lucent.com>
49663
49664         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
49665         now that we use the package-supplied version unconditionally.
49666         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
49667
49668 2001-05-21  Jim Meyering  <meyering@lucent.com>
49669
49670         * m4/regex.m4: Change a couple backticks to single quotes to avoid
49671         shell syntax errors.
49672
49673 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
49674
49675         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
49676
49677 2001-05-20  Paul Eggert  <eggert@twinsun.com>
49678
49679         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
49680         Don't bother to check library strftime, since
49681         we'll be using our own my_strftime function anyway.
49682         Define my_strftime instead of strftime.
49683
49684 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
49685
49686         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
49687         which is not yet declared.
49688
49689 2001-05-15  Jim Meyering  <meyering@lucent.com>
49690
49691         * m4/regex.m4: Use proper quoting so brackets appear in the test
49692         program.
49693         Reported by, and with help from, Bruno Haible.
49694
49695 2001-05-13  Jim Meyering  <meyering@lucent.com>
49696
49697         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
49698         undefined.
49699
49700 2001-05-11  Paul Eggert  <eggert@twinsun.com>
49701
49702         dirname code cleanup.  base_name now behaves more compatibly
49703         with POSIX basename when given file names that have trailing
49704         slashes, and similarly for dir_name.  Add new primitives
49705         base_len and dir_len.  Put the directory-name-related decls
49706         into dirname.h.
49707
49708         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
49709         * lib/backupfile.c (base_name): Likewise.
49710         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
49711         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
49712         * lib/makepath.c (strip_trailing_slashes): Likewise.
49713         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
49714         ISSLASH): Likewise.
49715         * lib/rename.c (strip_trailing_slashes): Likewise.
49716         * lib/same.c (base_name): Likewise.
49717         * lib/stripslash.c (ISSLASH): Likewise.
49718
49719         * lib/addext.c: Include <dirname.h> after size_t is defined.
49720         * lib/backupfile.c: Likewise.
49721
49722         * lib/addext.c (addext): Use base_len to trim redundant
49723         trailing slashes instead of doing it ourselves.
49724         But do not trim the last slash if it is not redundant.
49725
49726         * lib/backupfile.c (find_backup_file_name,
49727         max_backup_version): Use base_len instead of rolling it ourselves.
49728         Handle the case of "" and (on DOS) "C:" correctly.
49729
49730         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
49731         needed. Include <string.h>, <dirname.h>.
49732         (base_name): Allow file names ending in slashes, other than names
49733         that are all slashes.  In this case, return the basename followed
49734         by the slashes.  This is more general, and can be used in places
49735         where the original base_name purposely had an assertion failure.
49736         (base_len): New function.
49737
49738         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
49739         Do not include <assert.h>; no longer needed.
49740         Include xalloc.h.
49741         (memrchr): Remove decl.
49742         (dir_name_r): Remove.
49743         (dir_len): Renamed from dirlen.  All callers changed.
49744         Rewrite in terms of base_name, for simplicity and consistency.
49745         (dir_name): Never return NULL.  All callers changed.
49746         Do not include <stdlib.h> in test program; no longer needed.
49747         return 0; is fine for test program.
49748
49749         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
49750         New macros.
49751         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
49752
49753         * lib/path-concat.c (path_concat): Use base_len to compute
49754         base length, not strlen; this means we cannot rely on memcpy
49755         to null-terminate.
49756
49757         * lib/same.c (STREQ): Remove.
49758         (same_name): Handle the case where the basename ends in trailing '/'.
49759
49760         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
49761         a slash was stripped.  Do not strip the last slash after a
49762         file system prefix.
49763
49764 2001-05-11  Paul Eggert  <eggert@twinsun.com>
49765
49766         * lib/Makefile.am (libfetish_a_SOURCES):
49767         Add strftime.c, since we now compile it on all hosts.
49768
49769         * lib/strftime.c (my_strftime):
49770         Define to nstrftime if emacs, but only if my_strftime is not defined.
49771         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
49772         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
49773         Add one more extra argument: a nanoseconds value.
49774         All uses changed.
49775         (ns): New macro.
49776         (my_strftime function): Add %N format.
49777         (emacs_strftimeu): Renamed from emacs_strftime,
49778         with extra ut argument.
49779
49780 2001-05-09  Paul Eggert  <eggert@twinsun.com>
49781
49782         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
49783
49784 2001-04-21  Jim Meyering  <meyering@lucent.com>
49785
49786         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
49787         doesn't interfere.
49788
49789 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
49790
49791         * m4/ftruncate.m4: Check for chsize.
49792         Link with ftruncate.o unconditionally if ftruncate is missing.
49793         This was required when cross-compiling to i586-mingw32msvc.
49794
49795 2001-04-08  Jim Meyering  <meyering@lucent.com>
49796
49797         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
49798         recomputed; that's necessary when the offset spans a DST transition.
49799         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
49800
49801 2001-04-02  Jim Meyering  <meyering@lucent.com>
49802
49803         * lib/regex.h, regex.c: Update from GNU libc.
49804
49805 2001-03-24  Jim Meyering  <meyering@lucent.com>
49806
49807         * m4/jm-macros.m4: Require autoconf-2.49d.
49808
49809 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
49810
49811         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
49812
49813 2001-03-19  Paul Eggert  <eggert@twinsun.com>
49814
49815         * lib/version-etc.c (version_etc_copyright): Update to 2001.
49816
49817 2001-03-17  Jim Meyering  <meyering@lucent.com>
49818
49819         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
49820         now that the version in autoconf is equivalent.
49821         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
49822
49823         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
49824         Suggestion from Akim Demaille.
49825
49826         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
49827         (jm_PREREQ_TEMPNAME): New function.
49828
49829 2001-03-16  Paul Eggert  <eggert@twinsun.com>
49830
49831         * lib/tempname.c (uint64_t): Define to uintmax_t if
49832         not defined, and if UINT64_MAX is not defined.
49833         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
49834         Reported by John David Anglin.
49835
49836 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
49837
49838         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
49839         resolve alias if codeset is empty.
49840         * lib/config.charset (BeOS): Use wildcard syntax.
49841
49842 2001-03-13  Jim Meyering  <meyering@lucent.com>
49843
49844         * lib/path-concat.c (path_concat)
49845         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
49846         concatenating e.g., `C:' and `foo'.
49847         From Bruno Haible.
49848
49849 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
49850
49851         * lib/localcharset.c (locale_charset): Don't use
49852         setlocale(LC_CTYPE,NULL). Don't return NULL.
49853         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
49854
49855 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
49856
49857         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
49858         support for DOS/DJGPP.
49859
49860 2001-03-01  Paul Eggert  <eggert@twinsun.com>
49861
49862         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
49863         lacks mkstemp.  Compile our own tempname.c if we compile our own
49864         mkstemp.c, as mkstemp relies on tempname.
49865
49866 2001-03-01  Jim Meyering  <meyering@lucent.com>
49867
49868         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
49869         AH_VERBATIM really does output its argument verbatim.
49870
49871 2001-02-28  Paul Eggert  <eggert@twinsun.com>
49872
49873         * lib/Makefile.am (libfetish_a_SOURCES):
49874         Add dup-safer.c, fopen-safer.c.
49875         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
49876
49877         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
49878         * lib/unistd-safer.h: New files.
49879
49880 2001-02-25  Paul Eggert  <eggert@twinsun.com>
49881
49882         The mkstemp replacement is taken from glibc 2.2.2, with some
49883         portability fixes for use outside glibc, as follows:
49884
49885         * lib/tempname.c (struct_stat64): New macro.
49886         (direxists, __gen_tempname): Use it.
49887         This avoids a portability problem with Solaris 8.
49888
49889         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
49890         (<stddef.h>, <stdint.h>, <string.h>):
49891         Include only if STDC_HEADERS || _LIBC.
49892         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
49893         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
49894         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
49895         (__set_errno): Define this macro if <errno.h> doesn't.
49896         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
49897         Define these macros if <stdio.h> doesn't.
49898         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
49899         Define these macros if <sys/stat.h>
49900         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
49901         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
49902         __xstat64): Define if not _LIBC.
49903         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
49904         (__gen_tempname): Invoke gettimeofday only if
49905         HAVE_GETTIMEOFDAY || _LIBC;
49906         otherwise, fall back on plain "time".
49907         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
49908
49909         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
49910
49911         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
49912
49913 2001-02-18  Paul Eggert  <eggert@twinsun.com>
49914
49915         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
49916
49917 2001-02-17  Paul Eggert  <eggert@twinsun.com>
49918
49919         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
49920         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
49921         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
49922         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
49923
49924 2001-02-17  Paul Eggert  <eggert@twinsun.com>
49925
49926         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
49927         Remove workaround macros for hosts that have mbrtowc but not
49928         mbstate_t, as we now insist on proper declarations for both
49929         before using mbrtowc.
49930
49931 2001-02-17  Jim Meyering  <meyering@lucent.com>
49932
49933         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
49934         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
49935         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
49936         UnixWare 7.1.1.
49937
49938         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
49939         rather than AC_CACHE_VAL.
49940
49941 2001-02-17  Jim Meyering  <meyering@lucent.com>
49942
49943         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
49944         around included file name.
49945
49946         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
49947
49948         * lib/strftime.c: Update from GNU libc (the only changes were to
49949         comments).
49950
49951 2001-02-17  Jim Meyering  <meyering@lucent.com>
49952
49953         * lib/regex.c: Update from libc.
49954
49955 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
49956
49957         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
49958         clash.
49959
49960 2001-02-16  Paul Eggert  <eggert@twinsun.com>
49961
49962         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
49963         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
49964         Reported by Mark Hounschell via Paul Eggert.
49965
49966 2001-02-07  Jim Meyering  <meyering@lucent.com>
49967
49968         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
49969
49970 2001-02-05  Jim Meyering  <meyering@lucent.com>
49971
49972         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
49973         it includes the patch required for `large file' support with at least
49974         HP-UX's 10.20 /bin/cc.
49975
49976 2001-02-03  Jim Meyering  <meyering@lucent.com>
49977
49978         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
49979         AS_IF, now that it works once again (mysteriously).
49980         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
49981
49982 2001-01-30  Jim Meyering  <meyering@lucent.com>
49983
49984         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
49985         * m4/chown.m4: Rename conftestchown to conftest.chown.
49986         * m4/rename.m4: s/conftestdir/conftest.d1/ and
49987         s/conftestdir2/conftest.d2/.
49988         * m4/utimes.m4: s/conftestdata/conftest.data/
49989         Inspired by Pavel Roskin's change in autoconf.
49990
49991 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
49992
49993         * lib/config.charset: Update for FreeBSD 4.2.
49994
49995 2001-01-27  Jim Meyering  <meyering@lucent.com>
49996
49997         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
49998         a use of AS_IF.
49999         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
50000
50001 2001-01-26  Jim Meyering  <meyering@lucent.com>
50002
50003         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
50004         quotearg.c includes it.
50005
50006 2001-01-26  Jim Meyering  <meyering@lucent.com>
50007
50008         * lib/quotearg.c: Include stddef.h.
50009         * lib/quote.c: Include stddef.h.
50010         Reported by Axel Kittenberger.
50011
50012         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
50013         line in double quotes so that it evokes a better diagnostic.
50014         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
50015         Reported by Axel Kittenberger.
50016
50017 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
50018
50019         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
50020         as if it was a `charset'.
50021
50022 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
50023
50024         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
50025         has const.
50026
50027 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
50028
50029         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
50030         to avoid a warning.  Add back 'const' to inptr.
50031
50032 2001-01-20  Jim Meyering  <meyering@lucent.com>
50033
50034         Be sure that headers are checked before used in code compiled
50035         for the type checks.
50036         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
50037         In place of that, invoke jm_CHECK_ALL_TYPES.
50038         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
50039         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
50040         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
50041         The check for ssize_t was mistakenly run before the test for unistd.h.
50042
50043         The configure-time check for stdbool.h was missing.
50044         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
50045         (jm_PREREQ_HASH): New function.
50046
50047 2001-01-17  Jim Meyering  <meyering@lucent.com>
50048
50049         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
50050         for autoconf-2.49c.
50051         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
50052
50053 2001-01-16  Jim Meyering  <meyering@lucent.com>
50054
50055         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
50056         From Bruno Haible.
50057
50058 2001-01-14  Jim Meyering  <meyering@lucent.com>
50059
50060         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
50061         foo and bar.  Create conftestdir/ in the script, not in the C code.
50062         Remove directories in the script, not in the C code.
50063         Remove conftestdir{,2} before trying to create the directory.
50064         Make the entire configure script fail if the mkdir fails.
50065
50066 2001-01-14  Jim Meyering  <meyering@lucent.com>
50067
50068         * lib/rename.c: New file.  From Volker Borchert.
50069         Include stdlib.h, string.h or strings.h, and xalloc.h.
50070         Use strip_trailing_slashes rather than open-coding it.
50071
50072 2001-01-03  Paul Eggert  <eggert@twinsun.com>
50073
50074         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
50075
50076 2001-01-03  Jim Meyering  <meyering@lucent.com>
50077
50078         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
50079         of local `inptr' to avoid warning with some system declarations of
50080         iconv.
50081
50082 2001-01-02  Volker Borchert  <bt@teknon.de>
50083
50084         * m4/rename.m4: New file.
50085         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
50086
50087 2001-01-01  Jim Meyering  <meyering@lucent.com>
50088
50089         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
50090         even on systems with utmpx.h.  It's necessary for the declaration of
50091         utmp's ut_user member.  Reported by Andreas Jaeger.
50092
50093         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
50094         available. They are required for the declarations of getgrgid and
50095         getpwuid resp.
50096         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
50097         Reported by Andreas Jaeger.
50098
50099 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
50100
50101         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
50102         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
50103         so `make install' also works in VPATH builds.
50104
50105 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
50106
50107         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
50108         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
50109         can be used in subdirectories.
50110
50111 2000-12-29  Paul Eggert  <eggert@twinsun.com>
50112
50113         * lib/modechange.c: Do not assume that mode_t uses the
50114         traditional octal encoding.  E.g. "chmod 1 FOO" should set
50115         the other-execute bit of FOO even if S_IXOTH != 1.
50116
50117         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
50118         WOTH, XOTH, ALLM): New macros.
50119         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
50120          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
50121         Use them.
50122         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
50123         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
50124         (mode_compile):
50125         No need to use uintmax_t; unsigned long is long enough.
50126         Don't bother to get suffix since we don't use it.
50127
50128 2000-12-26  Jim Meyering  <meyering@lucent.com>
50129
50130         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
50131         better with autoheader.
50132
50133 2000-12-24  Jim Meyering  <meyering@lucent.com>
50134
50135         * lib/hash.c (is_prime): Return explicit boolean values.
50136         (hash_get_first): Return NULL to appease Irix5.6's 89.
50137         Reported by Nelson Beebe.
50138
50139 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
50140
50141         * lib/localcharset.c (locale_charset): Add support for Win32.
50142
50143 2000-12-18  Paul Eggert  <eggert@twinsun.com>
50144
50145         * lib/physmem.h, lib/physmem.c: New files.
50146
50147         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
50148         (noinst_HEADERS): Add physmem.h.
50149
50150         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
50151         't' for compatibility with Solaris 8 sort.
50152
50153 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
50154
50155         * lib/config.charset: Add support for BeOS.
50156
50157 2000-12-17  Jim Meyering  <meyering@lucent.com>
50158
50159         * m4/dos.m4 (jm_AC_DOS): New file and macro.
50160         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
50161
50162 2000-12-16  Jim Meyering  <meyering@lucent.com>
50163
50164         This bug had a serious impact on chown: `chown N:M FILE' (for integer
50165         N and M) would have treated it like `chown N:N FILE'.
50166
50167         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
50168
50169 2000-12-16  Jim Meyering  <meyering@lucent.com>
50170
50171         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
50172         SHELLS_FILE to a file name that's useful on djgpp systems.
50173         Include stdlib.h.
50174         (ADDITIONAL_DEFAULT_SHELLS): Define.
50175         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
50176         Based mostly on a patch from Prashant TR.
50177
50178 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
50179
50180         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
50181         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
50182         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
50183
50184 2000-12-08  Andreas Schwab  <schwab@suse.de>
50185
50186         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
50187         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
50188
50189 2000-12-07  Jim Meyering  <meyering@lucent.com>
50190
50191         * lib/stripslash.c (ISSLASH): Define.
50192         (strip_trailing_slashes): Use ISSLASH rather than comparing against
50193         `/'.
50194         From Prashant TR.
50195
50196         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
50197         (dir_name_r): Declare this function as static.
50198         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
50199         manifest itself on a name containing a mix of slashes and
50200         backslashes.
50201         Make this function work with names starting with a DOS-style
50202         drive letter and colon prefix.
50203         (dir_name): Append `.' if necessary.
50204         Based mostly on patches from Prashant TR and Eli Zaretskii.
50205
50206         * lib/dirname.h (dir_name_r): Remove prototype.
50207
50208 2000-12-06  Paul Eggert  <eggert@twinsun.com>
50209
50210         * m4/off_t-format.m4: Remove this file.
50211         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
50212
50213 2000-12-06  Jim Meyering  <meyering@lucent.com>
50214
50215         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
50216         replacement strtoull, we may well need the replacement strtoul, too.
50217         Check for declarations of strtoul and strtoull.
50218         Check for strtol.  Mainly as a cue to cause automake to include
50219         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
50220         Check for limits.h -- strtol.c needs it.
50221
50222 2000-12-05  Jim Meyering  <meyering@lucent.com>
50223
50224         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
50225
50226 2000-12-04  Jim Meyering  <meyering@lucent.com>
50227
50228         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
50229         Also include memory.h, stdlib.h, unistd.h if appropriate.
50230         Reported by Andreas Jaeger (conflicting declaration of malloc).
50231
50232 2000-12-02  Jim Meyering  <meyering@lucent.com>
50233
50234         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
50235         * m4/jm-macros.m4 (jm_MACROS): require it.
50236
50237 2000-12-02  Jim Meyering  <meyering@lucent.com>
50238
50239         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
50240
50241 2000-12-01  Paul Eggert  <eggert@twinsun.com>
50242
50243         * lib/memrchr.c: Include <config.h> before any system include file.
50244
50245 2000-11-30  Jim Meyering  <meyering@lucent.com>
50246
50247         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
50248
50249 2000-11-30  Jim Meyering  <meyering@lucent.com>
50250
50251         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
50252
50253 2000-11-29  Paul Eggert  <eggert@twinsun.com>
50254
50255         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
50256
50257 2000-11-26  Jim Meyering  <meyering@lucent.com>
50258
50259         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
50260
50261 2000-11-22  Paul Eggert  <eggert@twinsun.com>
50262
50263         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
50264         size of (size_t) -1; it's not portable.
50265
50266 2000-11-17  Jim Meyering  <meyering@lucent.com>
50267
50268         * lib/strstr.c: Update from GNU libc.
50269
50270 2000-11-17  Akim Demaille  <akim@epita.fr>
50271
50272         * lib/obstack.h: Formatting changes.
50273         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
50274         prevent type checking.
50275         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
50276         cast the value to (void *): assigning a `foo *' to a `void *'
50277         variable is valid.
50278         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
50279
50280 2000-11-16  Jim Meyering  <meyering@lucent.com>
50281
50282         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
50283
50284 2000-11-11  Jim Meyering  <meyering@lucent.com>
50285
50286         * lib/error.c: Add a couple #includes, merging from GNU libc version.
50287
50288 2000-11-10  Jim Meyering  <meyering@lucent.com>
50289
50290         * lib/obstack.h: Update from GNU libc.
50291         * lib/obstack.c: Likewise.
50292
50293 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
50294
50295         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
50296
50297 2000-11-06  Paul Eggert  <eggert@twinsun.com>
50298
50299         * lib/getusershell.c (setusershell): Use rewind rather than
50300         fseek/fseeko, to avoid configuration hassles with fseeko.
50301         Don't bother opening SHELLS_FILE if shellstream is NULL;
50302         it's not necessary.
50303
50304 2000-11-05  Jim Meyering  <meyering@lucent.com>
50305
50306         * lib/makepath.h (make_dir): Declare.
50307         * lib/makepath.c (make_dir): Remove `static' attribute.
50308         Tweak a comment.
50309
50310 2000-11-04  Jim Meyering  <meyering@lucent.com>
50311
50312         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
50313
50314 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
50315
50316         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
50317         last one in a bucket, advance to the next bucket.
50318
50319 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
50320
50321         * lib/fnmatch.c: Do not comment out all the code if we are using
50322         the GNU C library, because in some cases we are replacing buggy
50323         code in the GNU C library itself.
50324
50325 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
50326
50327         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
50328         (regex_compile): Catch bogus \(\1\).
50329
50330 2000-10-30  Paul Eggert  <eggert@twinsun.com>
50331
50332         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
50333         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
50334         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
50335
50336 2000-10-30  Paul Eggert  <eggert@twinsun.com>
50337
50338         * lib/error.h, getline.h, modechange.h:
50339         Remove "2000" from Copyright line, as the file hasn't been
50340         changed this year other than in the copyright notice.
50341
50342         * lib/xalloc.h: Add "2000" to Copyright line, as this file
50343         was changed this year.
50344
50345 2000-10-29  Jim Meyering  <meyering@lucent.com>
50346
50347         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
50348         renaming.
50349         * m4/ls-mntd-fs.m4: Likewise
50350
50351 2000-10-29  Jim Meyering  <meyering@lucent.com>
50352
50353         * lib/xstat.in: Fix grammar in comment.
50354
50355 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
50356
50357         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
50358         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
50359         doesn't define __restrict_arr.
50360
50361 2000-10-28  Jim Meyering  <meyering@lucent.com>
50362
50363         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
50364         (jm_PREREQ_MEMCHR): New function.
50365
50366 2000-10-28  Jim Meyering  <meyering@lucent.com>
50367
50368         * lib/memchr.c: Update from libc.
50369         Adjust for portability:
50370         [HAVE_STDLIB_H]: Include stdlib.h.
50371         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
50372         Undef __memchr, too.
50373         [!weak_alias]: Define __memchr to memchr.
50374
50375         * lib/regex.c: Update from libc.
50376         * lib/regex.h: Likewise.
50377         * lib/getopt1.c: Likewise.
50378         * lib/memcmp.c: Likewise.
50379
50380         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
50381         Avoid using fseek, when possible -- it's broken by design.
50382         Patch by Ulrich Drepper.
50383
50384 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
50385
50386         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
50387         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
50388         Giving in to popular pressure to shut up the compiler with casts.
50389
50390 2000-10-26  Jim Meyering  <meyering@lucent.com>
50391
50392         * lib/strftime.c: Update from libc.
50393
50394 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
50395
50396         * regex.c: More `unsigned char' -> `re_char' changes.
50397         Also change several `int' into `re_wchar_t'.
50398         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
50399         (PUSH_FAILURE_POINTER): Don't cast any more.
50400         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
50401         We want GCC to complain, since this piece of code makes
50402         re_match non-reentrant, which *should* be fixed.
50403         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
50404         (EXTEND_BUFFER): Use RETALLOC.
50405         (SET_LIST_BIT): Don't cast.
50406         (re_wchar_t): New type.
50407         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
50408         that those two functions will always properly return.
50409         (IMMEDIATE_QUIT_CHECK): Cast to void.
50410         (analyse_first): Use recursion rather than an explicit stack.
50411         (re_compile_fastmap): Can't fail anymore.
50412         (re_search_2): Don't check re_compile_fastmap for failure.
50413         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
50414         Now also sets the new value (passed in a new argument).
50415         (re_match_2_internal): Use it.
50416         Also, use a new var `reg' of type size_t when looping through regs
50417         rather than reuse the inappropriate `mcnt'.
50418
50419 2000-10-25  Jim Meyering  <meyering@lucent.com>
50420
50421         * lib/obstack.c: Update from libc.
50422
50423 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
50424
50425         * regex.c (regex_compile): Change the way of handling a range from
50426         a char less than 256 to a char not less than 256.
50427
50428 2000-10-24  Andrew Innes  <andrewi@gnu.org>
50429
50430         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
50431         NT-Emacs only.
50432         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
50433         so that re_search functions only quit when callers expect them to.
50434
50435 2000-10-23  Jim Meyering  <meyering@lucent.com>
50436
50437         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
50438         wrong.  That set_locale call must not have any side effects.
50439         From Paul Eggert.
50440
50441 2000-10-22  Jim Meyering  <meyering@lucent.com>
50442
50443         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
50444         [CYCLIC]: Remove now-unused definition.
50445
50446         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
50447         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
50448         Suggestion from Ulrich Drepper.
50449
50450 2000-10-21  Jim Meyering  <meyering@lucent.com>
50451
50452         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
50453         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
50454         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
50455
50456 2000-10-21  Jim Meyering  <meyering@lucent.com>
50457
50458         * lib/dirname.c (memrchr): Declare if necessary.
50459         (dir_name): Remove the restriction that there be no
50460         trailing slashes.  Now, this code skips past them, effectively
50461         ignoring them.
50462         [TEST_DIRNAME] (main): New unit tests.
50463
50464         * lib/memrchr.c: New file from GNU libc.
50465         Undef __memrchr, too.
50466         [!weak_alias]: Define __memrchr to memrchr.
50467         Guard weak_alias use with `#ifdef weak_alias'.
50468
50469 2000-10-21  Jim Meyering  <meyering@lucent.com>
50470
50471         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
50472         (dir_name): Use dir_name_r.
50473         * lib/dirname.h (dir_name_r): Declare it.
50474
50475 2000-10-17  Jim Meyering  <meyering@lucent.com>
50476
50477         * lib/quote.h (PARAMS): Define and use.
50478         Reported by Akim Demaille.
50479
50480         * lib/getopt.c: Update from libc.
50481
50482 2000-10-16  Jim Meyering  <meyering@lucent.com>
50483
50484         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
50485         setlocale.
50486         From Jan Fedak.
50487
50488 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
50489
50490         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
50491
50492 2000-09-25  Jim Meyering  <meyering@lucent.com>
50493
50494         * lib/md5.h (rol): Define (from GnuPG).
50495
50496         * lib/sha.c: Give credit (GnuPG) where due.
50497         (M): Use rol rather than open-coding it.
50498         Add a FIXME comment.
50499
50500 2000-09-21  Jim Meyering  <meyering@lucent.com>
50501
50502         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
50503         Reported by Michael Stone.
50504
50505 2000-09-20  Jim Meyering  <meyering@lucent.com>
50506
50507         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
50508         (noinst_HEADERS): Add sha.h.
50509         Based on code from Scott G. Miller and from GnuPG.
50510
50511 2000-09-18  Jim Meyering  <meyering@lucent.com>
50512
50513         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
50514         LIBS. Otherwise, everyone ends up linking with -lelf for some
50515         configurations.
50516         Reported by Mike Stone.
50517
50518 2000-09-15  Jim Meyering  <meyering@lucent.com>
50519
50520         * lib/regex.c: Update from libc.
50521
50522 2000-09-10  Jim Meyering  <meyering@lucent.com>
50523
50524         * lib/getopt.c (_getopt_internal): Update from glibc.
50525
50526 2000-09-09  Jim Meyering  <meyering@lucent.com>
50527
50528         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
50529         think it should be used as a general replacement for isascii.
50530         * lib/fnmatch.c: Likewise.
50531         * lib/mbswidth.c: Likewise
50532         * lib/regex.c: Likewise.
50533
50534         Don't use atoi.
50535         * lib/userspec.c: Include sys/param.h and limits.h.
50536         Include xstrtol.h.
50537         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
50538         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
50539         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
50540         UID, GID.  Check range.
50541
50542 2000-09-06  Jim Meyering  <meyering@lucent.com>
50543
50544         * lib/getopt.c (_getopt_internal): Update from glibc.
50545
50546 2000-08-30  Jim Meyering  <meyering@lucent.com>
50547
50548         * lib/strftime.c: Merge in changes from GNU libc.
50549
50550 2000-08-26  Jim Meyering  <meyering@lucent.com>
50551
50552         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
50553         * m4/fpending.m4: New file.
50554
50555 2000-08-26  Jim Meyering  <meyering@lucent.com>
50556
50557         * lib/closeout.c: Include "__fpending.h".
50558         (close_stdout_status): Return right away if there's nothing to flush.
50559
50560         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
50561         * lib/__fpending.c: New file.
50562         * lib/__fpending.h: New file.
50563
50564 2000-08-20  Jim Meyering  <meyering@lucent.com>
50565
50566         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
50567         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
50568         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
50569
50570 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
50571
50572         Improve fileutils installation on systems where running
50573         programs (like install) can't be unlinked.
50574         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
50575         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
50576
50577 2000-08-07  Paul Eggert  <eggert@twinsun.com>
50578
50579         Standardize on "memory exhausted" instead of "Memory exhausted"
50580         or "virtual memory exhausted".
50581         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
50582         "virtual memory exhausted".
50583         * lib/same.c (same_name): Invoke xalloc_die instead of printing
50584         our own message.
50585         * lib/userspec.c (parse_user_spec): Likewise.
50586         * lib/bumpalloc.h: comment fix
50587         * lib/same.c, userspec.c: Include xalloc.h.
50588
50589         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
50590         not char *const and pointing to a constant array.
50591         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
50592         (xrealloc): Comment fix.
50593
50594         * lib/userspec.c (parse_user_spec):
50595         Don't translate a message until just before returning,
50596         to avoid unnecessary translation.
50597
50598 2000-08-07  Jim Meyering  <meyering@lucent.com>
50599
50600         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
50601         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
50602         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
50603         getgroups.c, gethostname.c, getopt.h, group-member.c,
50604         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
50605         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
50606         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
50607         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
50608         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
50609         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
50610         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
50611         yesno.c: Back out Copyright date changes for each file with no change
50612         this year.  This eases coordination with other programs using the same
50613         source code modules.  From Paul Eggert.
50614
50615 2000-08-06  Paul Eggert  <eggert@twinsun.com>
50616
50617         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
50618         not char, for compatibility with glibc 2.1.3 strftime.c.
50619
50620 2000-08-03  Greg McGary  <greg@mcgary.org>
50621
50622         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
50623         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
50624         (EXTEND_BUFFER): Use them.
50625
50626 2000-08-01  Jim Meyering  <meyering@lucent.com>
50627
50628         * lib/dirname.c (ISSLASH): Define.
50629         (BACKSLASH_IS_PATH_SEPARATOR): Define.
50630         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
50631         both `\' and `/' may be use as path separators.
50632         Based on a patch from Prashant TR.
50633
50634 2000-07-31  Paul Eggert  <eggert@twinsun.com>
50635
50636         * lib/quotearg.c (quotearg_n_options): Don't make the initial
50637         slot vector a constant, since it might get modified.
50638
50639 2000-07-31  Jim Meyering  <meyering@lucent.com>
50640
50641         * lib/xmalloc.c: Use `virtual memory exhausted', not
50642         `Memory exhausted'.
50643         * lib/obstack.c (print_and_abort): Likewise.
50644
50645 2000-07-30  Paul Eggert  <eggert@twinsun.com>
50646
50647         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
50648         buffer, so that the caller can always quote one small
50649         component of a "memory exhausted" message in slot 0.
50650         From a suggestion by Jim Meyering.
50651
50652 2000-07-30  Jim Meyering  <meyering@lucent.com>
50653
50654         * lib/makepath.c (make_path): Quote the other instance, too.
50655
50656         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
50657         (STATIC_BUF_SIZE): Define.
50658         (quotearg_n_options): Use only statically allocated storage when
50659         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
50660         than STATIC_BUF_SIZE.
50661
50662 2000-07-29  Jim Meyering  <meyering@lucent.com>
50663
50664         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
50665         * lib/dirname.c (dir_name): Likewise.
50666
50667         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
50668         `/'.
50669
50670         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
50671         (dir_name): Assert that there are no trailing slashes.
50672
50673 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
50674
50675         * lib/mbswidth.h (mbswidth): Add a flags argument.
50676         (mbswidth): New declaration.
50677         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
50678         * lib/mbswidth.c (mbswidth): Add a flags argument.
50679         (mbsnwidth): New function.
50680
50681 2000-07-24  Jim Meyering  <meyering@lucent.com>
50682
50683         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
50684
50685 2000-07-23  Paul Eggert  <eggert@twinsun.com>
50686
50687         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
50688
50689 2000-07-23  Paul Eggert  <eggert@twinsun.com>
50690
50691         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
50692         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
50693         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
50694         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
50695         invoke multibyte primitives.
50696
50697 2000-07-23  Paul Eggert  <eggert@twinsun.com>
50698
50699         * lib/quotearg.c:
50700         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
50701         so that mbstate_t is always defined.
50702
50703         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
50704         be 1 in at least one GCC installation, and this configuration
50705         error is likely to be common.  Ignoring MB_LEN_MAX hurts
50706         performance on hosts that have mbrtowc but have only unibyte
50707         locales, but I assume these hosts are rare.
50708
50709 2000-07-23  Paul Eggert  <eggert@twinsun.com>
50710
50711         * lib/mbswidth.c (_XOPEN_SOURCE):
50712         Don't define; this causes problems on Solaris 7.
50713         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
50714
50715 2000-07-23  Jim Meyering  <meyering@lucent.com>
50716
50717         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
50718         too: getgrgid, getpwuid, getuid.
50719
50720 2000-07-23  Jim Meyering  <meyering@lucent.com>
50721
50722         * lib/basename.c (base_name): Add an assertion.
50723
50724 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
50725
50726         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
50727         shadow its mbsinit function.
50728
50729 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
50730
50731         * lib/mbswidth.h: New file.
50732         * lib/mbswidth.c: New file.
50733         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
50734         (noinst_HEADERS): Add mbswidth.h.
50735
50736 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
50737
50738         * lib/config.charset: Add support for FreeBSD. Improve support for
50739         HP-UX and IRIX 6.
50740
50741 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
50742
50743         * m4/mbswidth.m4: New file.
50744         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
50745
50746 2000-07-15  Jim Meyering  <meyering@lucent.com>
50747
50748         * lib/makepath.c: Include quote.h.
50749         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
50750         corresponding argument in a `quote (...)' call.
50751         Give better diagnostics.
50752
50753         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
50754         (noinst_HEADERS): Add quote.h.
50755
50756         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
50757         from tar's src/misc.c.
50758         * lib/quote.h: New file.  Prototypes for same.
50759
50760 2000-07-14  Paul Eggert  <eggert@twinsun.com>
50761
50762         From a suggestion by Bruno Haible.
50763         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
50764         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
50765         to decide whether to define the BeOS workaround macro;
50766         this adjusts to the change to AC_MBSTATE_T.
50767
50768 2000-07-14  Jim Meyering  <meyering@lucent.com>
50769
50770         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
50771         jm_AC_TYPE_UINTMAX_T.
50772
50773 2000-07-13  Paul Eggert  <eggert@twinsun.com>
50774
50775         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
50776
50777         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
50778         quotearg_buffer_restyled): Add support for
50779         clocale_quoting_style.  Undo previous change to
50780         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
50781         and "{RIGHT QUOTATION MARK}" msgids.
50782
50783 2000-07-10  Paul Eggert  <eggert@twinsun.com>
50784
50785         From a suggestion by Bruno Haible.
50786         * m4/mbstate_t.m4 (AC_MBSTATE_T):
50787         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
50788         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
50789         and mbstate_t, to a single-part test that simply defines mbstate_t.
50790         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
50791         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
50792
50793 2000-07-10  Jim Meyering  <meyering@lucent.com>
50794
50795         * m4/strerror_r.m4: Mirror the correction made in autoconf.
50796
50797         * m4/gnu-source.m4: Output to confdefs.h directly.
50798         Suggestion from Akim Demaille.
50799
50800 2000-07-09  Paul Eggert  <eggert@twinsun.com>
50801
50802         The old behavior of quoting `like this' doesn't look good with
50803         newer, ISO-style fonts.  See:
50804         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
50805
50806         Instead, quote "like this" by default.  Let the translator
50807         tailor the locale-specific quoting behavior by providing
50808         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
50809
50810         * lib/quotearg.c (N_): New macro.
50811         (gettext_default): New function.
50812         (quotearg_buffer_restyled): Use
50813         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
50814         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
50815
50816 2000-07-09  Jim Meyering  <meyering@lucent.com>
50817
50818         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
50819         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
50820
50821         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
50822         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
50823
50824 2000-07-09  Jim Meyering  <meyering@lucent.com>
50825
50826         * lib/Most files: Update copyright dates to include 2000.
50827
50828 2000-07-08  Jim Meyering  <meyering@lucent.com>
50829
50830         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
50831         if not defined.
50832         (xgethostname): Remove now-unnecessary #ifdef.
50833         Move declaration of `err' into loop where it's used.
50834
50835 2000-07-05  Paul Eggert  <eggert@twinsun.com>
50836         and Bruno Haible  <haible@clisp.cons.org>
50837
50838         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
50839         only if the test for an object-type mbstate_t fails.  This
50840         prevents us from mistakenly reporting that mbstate_t is a
50841         system object type after we "#define mbstate_t int" to work
50842         around its lack.
50843
50844 2000-07-05  Paul Eggert  <eggert@twinsun.com>
50845         and Bruno Haible  <haible@clisp.cons.org>
50846
50847         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
50848
50849 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
50850
50851         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
50852         to strerror_r.
50853         Include <ctype.h> for use of isalpha.
50854
50855 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
50856
50857         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
50858         by allocating a larger buffer. Test the gethostname return value for
50859         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
50860         returns an error and ENAMETOOLONG isn't defined.
50861
50862 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
50863
50864         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
50865         dimension.
50866
50867 2000-07-04  Jim Meyering  <meyering@lucent.com>
50868
50869         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
50870         of the deprecated AC_CHECKING.
50871
50872 2000-07-04  Jim Meyering  <meyering@lucent.com>
50873
50874         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
50875         Reported by Bruno Haible.
50876
50877 2000-07-04  Jim Meyering  <meyering@lucent.com>
50878
50879         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
50880         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
50881         lacks mbrtowc.
50882
50883 2000-07-03  Paul Eggert  <eggert@twinsun.com>
50884
50885         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
50886         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
50887
50888 2000-07-03  Paul Eggert  <eggert@twinsun.com>
50889         and Bruno Haible  <haible@clisp.cons.org>
50890
50891         * lib/quotearg.c (mbrtowc):
50892         Assign to *pwc, and return 1 only if result is nonzero.
50893         (iswprint): Use ISPRINT when substituting our own mbrtowc.
50894
50895 2000-07-03  Jim Meyering  <meyering@lucent.com>
50896
50897         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
50898
50899 2000-07-03  Jim Meyering  <meyering@lucent.com>
50900
50901         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
50902         This is necessary to get a definition of e.g., UTMP_FILE on
50903         HP-UX 10.20.
50904         From Bob Proulx.
50905
50906 2000-07-02  Jim Meyering  <meyering@lucent.com>
50907
50908         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
50909
50910         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
50911         AC_LIBOBJ(function_name).
50912         * m4/chown.m4: Likewise.
50913         * m4/fnmatch.m4: Likewise.
50914         * m4/ftruncate.m4: Likewise.
50915         * m4/getgroups.m4: Likewise.
50916         * m4/getline.m4: Likewise.
50917         * m4/group-member.m4: Likewise.
50918         * m4/jm-macros.m4: Likewise.
50919         * m4/lstat.m4: Likewise.
50920         * m4/malloc.m4: Likewise.
50921         * m4/memcmp.m4: Likewise.
50922         * m4/nanosleep.m4: Likewise.
50923         * m4/putenv.m4: Likewise.
50924         * m4/realloc.m4: Likewise.
50925         * m4/regex.m4: Likewise.
50926         * m4/stat.m4: Likewise.
50927         * m4/strftime.m4: Likewise.
50928
50929 2000-07-02  Jim Meyering  <meyering@lucent.com>
50930
50931         * lib/quotearg.c (mbstate_t): Don't define here.
50932
50933 2000-07-02  Jim Meyering  <meyering@lucent.com>
50934
50935         * lib/nanosleep.c (SIGCONT): Define if not already defined.
50936
50937 2000-07-01  Jim Meyering  <meyering@lucent.com>
50938
50939         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
50940
50941 2000-07-01  Jim Meyering  <meyering@lucent.com>
50942
50943         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
50944         problem.
50945
50946 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
50947
50948         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
50949         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
50950
50951 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
50952
50953         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
50954         per change in ../m4/ls-mntd-fs.m4.
50955         (read_filesystem_list): Ignore symbolic links.
50956
50957 2000-06-29  Jim Meyering  <meyering@lucent.com>
50958
50959         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
50960         for declaration of strcmp.
50961
50962         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
50963
50964         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
50965         Avoid warning by casting result to `char *' to remove `const'.
50966
50967 2000-06-28  Jim Meyering  <meyering@lucent.com>
50968
50969         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
50970         included by quotearg.c, for which we perform this test.  From
50971         Bruno Haible.
50972
50973 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
50974
50975         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
50976         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
50977         <utmpx.h> exists, put readutmp.o into LIBOBJS.
50978
50979 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
50980
50981         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
50982
50983 2000-06-26  Paul Eggert  <eggert@twinsun.com>
50984
50985         savedir now sets errno on failure and invokes xmalloc to get memory.
50986         Fix a couple of other minor bugs while we're at it.
50987
50988         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
50989         (NAMLEN): Remove macro.
50990         (malloc, realloc): Remove decls.
50991         (stpcpy): Likewise.
50992         ("xalloc.h"): Include.
50993         (NAME_SIZE_DEFAULT): New macro.
50994         (savedir): Use xmalloc / xrealloc to allocate memory.
50995         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
50996         Skip "" directory entries.
50997         Use strlen to calculate directory entry length, since the old method
50998         is rarely used these days and isn't worth supporting.
50999         Don't use a pointer after freeing it.
51000         Check for integer overflow when calculating allocation size.
51001         Use memcpy to copy entries, instead of stpcpy.
51002         Set errno properly when returning NULL.
51003         Check for readdir error.
51004
51005 2000-06-26  Jim Meyering  <meyering@lucent.com>
51006
51007         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
51008
51009 2000-06-25  Jim Meyering  <meyering@lucent.com>
51010
51011         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
51012         Linux header bug when _XOPEN_SOURCE is defined to 500.
51013
51014 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
51015
51016         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
51017         deficiency.
51018
51019 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
51020
51021         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
51022         Include xalloc.h.
51023         Don't include <stdlib.h>.  Don't declare malloc, realloc.
51024
51025 2000-06-24  Jim Meyering  <meyering@lucent.com>
51026
51027         * m4/strerror_r.m4: Revive this file -- to try out an experimental
51028         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
51029         for which strerror does return char*, but which lacks a conveniently
51030         accessible declaration of the function.  If the compile-test says
51031         strerror_r doesn't work, then resort to a `run'-test that works on
51032         BeOS and segfaults on DEC Unix.
51033
51034 2000-06-24  Jim Meyering  <meyering@lucent.com>
51035
51036         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
51037
51038 2000-06-23  Paul Eggert  <eggert@twinsun.com>
51039
51040         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
51041         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
51042
51043 2000-06-23  Paul Eggert  <eggert@twinsun.com>
51044
51045         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
51046         (mbrtowc, mbstate_t): Define substitutes if
51047         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
51048         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
51049         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
51050
51051 2000-06-23  Jim Meyering  <meyering@lucent.com>
51052
51053         * m4/afs.m4: Add missing AC_MSG_RESULT.
51054         Reported by Bruno Haible.
51055
51056         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
51057         Suggestion from Bruno Haible.
51058
51059 2000-06-23  Jim Meyering  <meyering@lucent.com>
51060
51061         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
51062
51063 2000-06-21  Jim Meyering  <meyering@lucent.com>
51064
51065         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
51066
51067 2000-06-21  Jim Meyering  <meyering@lucent.com>
51068
51069         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
51070         (noinst_HEADERS): Add getstr.h.
51071
51072         * lib/getline.c (getstr): Move into a separate file.
51073         * lib/getstr.c (getstr): New file, extracted from getline.c, with
51074         the following changes: new parameter, delim2; both delim[12]
51075         parameters have type `int', not `char'.  The latter would lose
51076         with 8-bit delimiters.
51077         * lib/getstr.h: New file.
51078
51079 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
51080
51081         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
51082         than 1024, return a memory chunk of least possible size, instead
51083         of size PATH_MAX + 2. In the loop, increment the size proportionally.
51084         Use free/xmalloc instead of xrealloc to avoid copying for very long
51085         paths.
51086
51087 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
51088
51089         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
51090         the empty string.
51091
51092 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
51093
51094         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
51095         address, not strdup.  Include <stdlib.h> and don't declare free().
51096
51097 2000-06-19  Jim Meyering  <meyering@lucent.com>
51098
51099         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
51100
51101 2000-06-18  Jim Meyering  <meyering@lucent.com>
51102
51103         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
51104
51105         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
51106         `checking whether...' message to be consistent with that of the
51107         lstat test.
51108
51109 2000-06-18  Jim Meyering  <meyering@lucent.com>
51110
51111         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
51112         Besides, these days every porting target provides a mkdir function.
51113
51114         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
51115         needed. (this snippet comes from src/system.h).
51116
51117 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
51118
51119         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
51120
51121 2000-06-15  Paul Eggert  <eggert@twinsun.com>
51122
51123         * lib/human.c (adjust_value): New function.
51124         (human_readable_inexact): Apply rounding style even when
51125         printing approximate values.
51126
51127 2000-06-14  Paul Eggert  <eggert@twinsun.com>
51128
51129         * lib/human.c (human_readable_inexact): Allow an input block
51130         size that is not a multiple of the output block size, and vice versa.
51131         Reported by Piergiorgio Sartor.
51132
51133 2000-06-14  Paul Eggert  <eggert@twinsun.com>
51134
51135         * lib/getdate.y (get_date): Apply relative times after time
51136         zone indicator, not before.  Reported by Todd A. Jacobs.
51137
51138 2000-06-13  Jim Meyering  <meyering@lucent.com>
51139
51140         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
51141
51142         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
51143
51144 2000-06-12  Paul Eggert  <eggert@twinsun.com>
51145
51146         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
51147
51148 2000-06-12  Jim Meyering  <meyering@lucent.com>
51149
51150         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
51151         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
51152         optional argument.
51153         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
51154         the optional argument, `lib'.
51155
51156 2000-06-08  Jim Meyering  <meyering@lucent.com>
51157
51158         * m4/largefile.m4: Remove file (now that it's part of autoconf).
51159
51160 2000-06-04  Paul Eggert  <eggert@twinsun.com>
51161
51162         Rewrite largefile configuration so that we don't need to run
51163         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
51164         AC_CANONICAL_HOST in configure.in -- jmm]
51165
51166         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
51167         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
51168         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
51169         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
51170         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
51171         All uses changed.
51172         Instead of inspecting the output of getconf, try to compile the
51173         test program without and with the macro definition.
51174         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
51175         for getconf.  Instead, check for the needed flags by compiling
51176         test programs.
51177
51178 2000-06-04  Paul Eggert  <eggert@twinsun.com>
51179
51180         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
51181
51182 2000-06-04  Jim Meyering  <meyering@lucent.com>
51183
51184         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
51185         SunOS 4.1.4 for which gid_t is an unsigned type.
51186
51187 2000-06-03  Jim Meyering  <meyering@lucent.com>
51188
51189         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
51190         now that autoconf requires that.
51191
51192         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
51193         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
51194         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
51195
51196 2000-06-03  Jim Meyering  <meyering@lucent.com>
51197
51198         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
51199
51200 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
51201
51202         * m4/glibc21.m4: New file.
51203         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
51204
51205 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
51206
51207         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
51208         newer, don't install charset.alias.
51209         * lib/config.charset: Change the Linux/glibc rules so they become empty
51210         on glibc-2.1 or newer.
51211
51212 2000-06-02  Jim Meyering  <meyering@lucent.com>
51213
51214         * lib/mountlist.c: Back out last change.  Instead, do this...
51215         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
51216         me_dummy member using the same `ignore'-testing code.
51217         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
51218         fs_type strings.
51219         From Mark D. Roth.
51220
51221 2000-05-29  Jim Meyering  <meyering@lucent.com>
51222
51223         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
51224         mounts with the `ignore' attribute.  Based on a patch from
51225         Mark D. Roth.
51226
51227 2000-05-28  Jim Meyering  <meyering@lucent.com>
51228
51229         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
51230         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
51231         * m4/stat.m4: Likewise.
51232         * m4/lstat.m4: Likewise.
51233         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
51234
51235         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
51236         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
51237
51238 2000-05-26  Jim Meyering  <meyering@lucent.com>
51239
51240         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
51241
51242 2000-05-24  Jim Meyering  <meyering@lucent.com>
51243
51244         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
51245         autoconf requires that.
51246         * m4/lib-check.m4: Likewise.
51247         * m4/jm-macros.m4: Likewise.
51248         * m4/strftime.m4: Likewise.
51249
51250         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
51251         AC_CHECK_DECLS, now that autoconf requires that.
51252
51253 2000-05-22  Jim Meyering  <meyering@lucent.com>
51254
51255         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
51256         * m4/lstat.m4: Likewise.
51257
51258 2000-05-22  Jim Meyering  <meyering@lucent.com>
51259
51260         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
51261
51262 2000-05-20  Jim Meyering  <meyering@lucent.com>
51263
51264         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
51265         (jm_PREREQ): Use it.
51266
51267 2000-05-18  Jim Meyering  <meyering@lucent.com>
51268
51269         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
51270         back, too, since it may have been modified by allocate_entry.
51271         (hash_delete): Rewrite to use neither the assignment operator
51272         nor the comma operator in an if-expression.
51273
51274 2000-05-15  Paul Eggert  <eggert@twinsun.com>
51275
51276         * lib/closeout.c:
51277         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
51278         Remove; no longer needed.
51279         "quotearg.h": Add include.
51280         (file_name): Do not bother to explicitly initialize to NULL; it's less
51281         efficient on some hosts.
51282         (close_stdout_status): Remove test as to whether stdout was already
51283         closed; it breaks for the case "echo x | sort >&-".
51284         Quote file name colons.
51285         Do not assume that _("write error") lacks format strings.
51286
51287 2000-05-15  Jim Meyering  <meyering@lucent.com>
51288
51289         * lib/version-etc.c (version_etc_copyright): Update the copyright
51290         string used in all --version output.
51291
51292 2000-05-14  Jim Meyering  <meyering@lucent.com>
51293
51294         * lib/closeout.c (close_stdout_set_file_name): New function.
51295         (close_stdout_status): Use new file-scoped global.
51296         Return right away if fstat says the stdout file descriptor is invalid.
51297         * lib/closeout.h (close_stdout_set_file_name): Declare.
51298
51299 2000-05-10  Jim Meyering  <meyering@lucent.com>
51300
51301         * lib/closeout.c [default_exit_status]: New file-scoped variable.
51302         (close_stdout_set_status): New function.
51303         * lib/closeout.h (close_stdout_set_status): Declare.
51304
51305 2000-05-09  Jim Meyering  <meyering@lucent.com>
51306
51307         * m4/gettext.m4: Rename this...
51308         * m4/libintl.m4: ...to this.
51309
51310 2000-05-08  Jim Meyering  <meyering@lucent.com>
51311
51312         * lib/long-options.c: Don't include closeout.h.
51313         (parse_long_options): Don't call close_stdout for --version.
51314
51315 2000-05-06  Paul Eggert  <eggert@twinsun.com>
51316
51317         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
51318         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
51319         2.1.3 bug.  This avoids a clash when files like regex.c define
51320         _GNU_SOURCE.
51321
51322 2000-05-06  Jim Meyering  <meyering@lucent.com>
51323
51324         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
51325         (AC_REPLACE_FUNCS): Add strnlen.
51326
51327         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
51328         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
51329
51330         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
51331         AC_SEARCH_LIBS call for nanosleep.
51332         (LIB_NANOSLEEP): Set and AC_SUBST.
51333
51334 2000-05-06  Jim Meyering  <meyering@lucent.com>
51335
51336         * lib/strnlen.c: Undefine __strnlen and strnlen.
51337         [!weak_alias]: Define __strnlen to strnlen.
51338
51339         * lib/atexit.c: New file, from libiberty.
51340
51341 2000-05-06  Jim Meyering  <meyering@lucent.com>
51342
51343         * lib/closeout.c (close_stdout_status): Also check for errors on the
51344         stderr stream.
51345
51346 2000-05-05  Jim Meyering  <meyering@lucent.com>
51347
51348         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
51349         AC_SEARCH_LIBS call for clock_gettime.
51350         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
51351
51352         * m4/search-libs.m4: Update from autoconf.
51353
51354         su doesn't work on Solaris 2.6.
51355         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
51356         <shadow.h>.  Reported by Dragos Harabor.
51357
51358 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
51359
51360         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
51361         memcpy instead of xmalloc, xrealloc, path_concat.
51362         (locale_charset): Treat empty environment variables as absent.
51363         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
51364
51365 2000-05-04  Jim Meyering  <meyering@lucent.com>
51366
51367         * lib/getopt.c: Update from glibc.
51368         * lib/obstack.c: Likewise.
51369         * lib/obstack.h: Likewise.
51370         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
51371         file
51372
51373         * lib/regex.h: Likewise.
51374         * lib/strndup.c: Likewise.
51375         * lib/strnlen.c: New file, from glibc.
51376
51377 2000-05-03  Jim Meyering  <meyering@lucent.com>
51378
51379         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
51380
51381 2000-05-02  Paul Eggert  <eggert@twinsun.com>
51382
51383         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
51384         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
51385         compile-time test, rather than inspecting host and OS, to
51386         decide whether to define _LARGEFILE_SOURCE.
51387
51388 2000-05-01  Jim Meyering  <meyering@lucent.com>
51389
51390         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
51391
51392         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
51393         Based on a patch from Bruno Haible.
51394
51395 2000-05-01  Jim Meyering  <meyering@lucent.com>
51396
51397         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
51398
51399 2000-04-29  Jim Meyering  <meyering@lucent.com>
51400
51401         * lib/path-concat.c: Declare strdup only if it's not defined.
51402         * lib/canon-host.c: Likewise.
51403
51404 2000-04-28  Jim Meyering  <meyering@lucent.com>
51405
51406         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
51407         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
51408         is included first, then limits.h is included by locale.h by libintl.h.
51409         From John David Anglin.
51410
51411 2000-04-25  Jim Meyering  <meyering@lucent.com>
51412
51413         * lib/makepath.c (S_IRWXUGO): Define.
51414         (make_path): Always perform explicit chmod if MODE specifies any
51415         of the `special' permission bits.  Prompted by a bug report against
51416         install from Mate Wierdl and Joost van Baal.
51417
51418 2000-04-18  Jim Meyering  <meyering@lucent.com>
51419
51420         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
51421         (jm_PREREQ): Use it.
51422
51423 2000-04-18  Jim Meyering  <meyering@lucent.com>
51424
51425         * lib/README: New file.
51426
51427         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
51428         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
51429
51430 2000-04-17  Jim Meyering  <meyering@lucent.com>
51431
51432         Get it right :-)
51433         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
51434         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
51435         Suggestion from Akim Demaille.
51436
51437 2000-04-17  Jim Meyering  <meyering@lucent.com>
51438
51439         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
51440         the definition of it to rpl_strftime also defined-away the system's
51441         declaration.
51442
51443 2000-04-15  Jim Meyering  <meyering@lucent.com>
51444
51445         Use `C' to denote so-called `contiguous' files, the same way
51446         that tar does.
51447         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
51448         (ftypelet): Use S_ISCTG.
51449         From Michael Deutschmann.
51450
51451 2000-04-14  Jim Meyering  <meyering@lucent.com>
51452
51453         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
51454         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
51455         clobbered.
51456
51457 2000-04-14  Jim Meyering  <meyering@lucent.com>
51458
51459         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
51460
51461 2000-04-13  Jim Meyering  <meyering@lucent.com>
51462
51463         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
51464         AH_VERBATIM to insert required #ifndef into config.h.in.
51465         Suggestion from Akim Demaille.
51466
51467 2000-04-12  Jim Meyering  <meyering@lucent.com>
51468
51469         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
51470         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
51471         Christian Krackowizer.
51472
51473         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
51474         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
51475         (AC_SYS_LARGEFILE): Require.
51476         (AM_C_PROTOTYPES): Require.
51477
51478 2000-04-08  Jim Meyering  <meyering@lucent.com>
51479
51480         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
51481         names don't conflict.  Reported by Eli Zaretskii.
51482
51483 2000-04-07  Jim Meyering  <meyering@lucent.com>
51484
51485         * lib/putenv.c: Move inclusion of errno.h so it follows that of
51486         sys/types.h, to work around system header problems on AIX 3.2.5.
51487         From Bruno Haible.
51488
51489 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
51490
51491         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
51492         bug.  Deal with the different error behavior of Irix iconv.
51493
51494 2000-04-05  Paul Eggert  <eggert@twinsun.com>
51495
51496         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
51497         IRIX if the installer said otherwise.
51498
51499 2000-04-05  Jim Meyering  <meyering@lucent.com>
51500
51501         Portability tweaks required for ultrix4.3.
51502         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
51503         (jm_CHECK_DECLS): Add getutent to the list of functions.
51504         (_jm_DECL_HEADERS): Add utmpx.h.
51505         From John David Anglin.
51506
51507         * m4/strftime.m4: Back out the 2000-04-02 change.
51508         Instead of that change, simply undefine putenv in the test program.
51509
51510 2000-04-05  Jim Meyering  <meyering@lucent.com>
51511
51512         Portability tweaks required for ultrix4.3.
51513         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
51514         getutent.
51515         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
51516         * lib/canon-host.c: Declare strdup.
51517         * lib/path-concat.c: Likewise.
51518         From John David Anglin.
51519
51520 2000-04-04  Jim Meyering  <meyering@lucent.com>
51521
51522         Be more DOS 8.3-friendly.
51523         * lib/ref-add.sin: Renamed from ref-add.sed.in.
51524         * lib/ref-del.sin: Renamed from ref-del.sed.in.
51525         * lib/Makefile.am: Reflect renaming.
51526         Reported by Eli Zaretskii.
51527
51528         Use a temporary file name that won't clash with `charset.alias'
51529         in the DOS 8.3 name space.
51530         * lib/Makefile.am (charset_tmp): Define.
51531         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
51532         (uninstall-local): Likewise.
51533         Reported by Eli Zaretskii.
51534
51535 2000-04-03  Jim Meyering  <meyering@lucent.com>
51536
51537         * m4/gettext.m4: Fix typo in comment.
51538
51539         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
51540         textutils/configure.in).  Suggestion from Paul Eggert.
51541         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
51542
51543 2000-04-02  Paul Eggert  <eggert@twinsun.com>
51544
51545         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
51546         variable in the shell rather than using putenv, which isn't
51547         portable.  This avoids the configure-time inter-test dependency
51548         on the potentially-renamed putenv function.
51549
51550 2000-03-30  Paul Eggert  <eggert@twinsun.com>
51551
51552         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
51553         before checking struct stat.st_blksize, so that
51554         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
51555
51556 2000-03-29  Paul Eggert  <eggert@twinsun.com>
51557
51558         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
51559         since strftime.c uses HAVE_STRFTIME to decide whether to use
51560         the underlying strftime.
51561
51562 2000-03-29  Paul Eggert  <eggert@twinsun.com>
51563
51564         * lib/time/strftime.c (my_strftime): Make sure we call the system
51565         strftime, not ourselves, when invoking the underlying strftime.
51566
51567 2000-03-24  Jim Meyering  <meyering@lucent.com>
51568
51569         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
51570         (charset_alias): Define.
51571         (install-exec-local): Factor out common code.
51572         (uninstall-local): Split lines longer than 80.
51573         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
51574         (SUFFIXES): Define.
51575         (.sed.in.sed): New rule.  Don't redirect directly to $@.
51576         (CLEANFILES): Add ref-add.sed and ref-del.sed.
51577
51578 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
51579
51580         * lib/config.charset: Output a line containing "Packages using this
51581         file".
51582         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
51583         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
51584         ref-del.sed): New rules.
51585
51586 2000-03-17  Jim Meyering  <meyering@lucent.com>
51587
51588         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
51589         Otherwise, include <strings.h>
51590
51591 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
51592
51593         * lib/unicodeio.c (utf8_wctomb): New function.
51594         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
51595         format instead of in UCS-4 with platform dependent endianness.
51596
51597 2000-03-10  Jim Meyering  <meyering@lucent.com>
51598
51599         * m4/lib-check.m4: Look for getspnam in -lgen, too.
51600         From Marco Franzen.
51601
51602 2000-03-07  Paul Eggert  <eggert@twinsun.com>
51603
51604         * lib/savedir.c (savedir): Work even if directory size is
51605         negative; this can happen with some screwy NFS configurations.
51606
51607 2000-03-06  Jim Meyering  <meyering@lucent.com>
51608
51609         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
51610         if it's NULL (because we ran out of memory).  From Bruno Haible.
51611
51612 2000-03-05  Jim Meyering  <meyering@lucent.com>
51613
51614         * lib/localcharset.c ("path-concat.h"): Include.
51615         (get_charset_aliases): Use path_concat instead of ANSI string
51616         concatenation.
51617
51618         * lib/unicodeio.h (PARAMS): Define.
51619         Use it to guard prototype.
51620
51621 2000-03-04  Jim Meyering  <meyering@lucent.com>
51622
51623         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
51624         for lib/localcharset.c.
51625
51626 2000-03-04  Jim Meyering  <meyering@lucent.com>
51627
51628         * lib/Makefile.am (install-exec-local): Create $(libdir) before
51629         installing into it.
51630         (uninstall-local): Uncomment this rule so `make distcheck' works
51631         once again.
51632
51633         * lib/unicodeio.c (<errno.h>): Include it.
51634         (errno): Declare if not defined.
51635
51636         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
51637
51638         * lib/config.charset: New version, incorporating remarks from a linux
51639         i18n mailing list.  From Bruno Haible.
51640
51641 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
51642
51643         * m4/codeset.m4: New file.
51644         * m4/iconv.m4: New file.
51645         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
51646
51647 2000-03-03  Jim Meyering  <meyering@lucent.com>
51648
51649         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
51650
51651 2000-03-02  Jim Meyering  <meyering@lucent.com>
51652
51653         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
51654         the messages come out on separate lines.
51655
51656         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
51657         rather than jm_CHECK_DECLARATIONS.
51658         * m4/decl.m4: Remove now-unused file.
51659
51660         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
51661         geteuid.
51662
51663 2000-03-02  Jim Meyering  <meyering@lucent.com>
51664
51665         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
51666
51667 2000-03-01  Jim Meyering  <meyering@lucent.com>
51668
51669         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
51670         * lib/unicodeio.c: Likewise.
51671
51672 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
51673
51674         * lib/config.charset: New file.
51675         * lib/localcharset.c: New file.
51676         * lib/unicodeio.h, lib/unicodeio.c: New files.
51677         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
51678         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
51679         (noinst_HEADERS): Add unicodeio.h.
51680         (all-local, install-exec-local, charset.alias): New targets.
51681
51682 2000-02-28  Paul Eggert  <eggert@twinsun.com>
51683
51684         * lib/quotearg.c (ALERT_CHAR): New macro.
51685         (quotearg_buffer_restyled): Use it.
51686
51687 2000-02-27  Jim Meyering  <meyering@lucent.com>
51688
51689         * m4/check-decl.m4: Add getenv to the list.
51690
51691 2000-02-27  Jim Meyering  <meyering@lucent.com>
51692
51693         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
51694         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
51695
51696         * lib/backupfile.c: Guard inclusion of stdlib.h with
51697         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
51698         Declare malloc if needed.
51699
51700         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
51701         `#ifndef HAVE_DECL..'
51702         now that autoconf always defines the HAVE_DECL_ symbols.
51703         * lib/human.c: Likewise.
51704         * lib/same.c: Likewise.
51705         * lib/strtoumax.c: Likewise.
51706
51707         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
51708         declaration check was not run.
51709         * lib/hash.c: Likewise.
51710         * lib/human.c: Likewise.
51711         * lib/same.c: Likewise.
51712         * lib/strtoumax.c: Likewise.
51713
51714         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
51715         `.', then first look up the entire `.'-containing string as a login
51716         name.
51717
51718 2000-02-23  Jim Meyering  <meyering@lucent.com>
51719
51720         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
51721         in place of my hack.
51722
51723 2000-02-18  Paul Eggert  <eggert@twinsun.com>
51724
51725         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
51726         (textint): New typedef.
51727         (parser_control): Member year changed from int to textint.
51728         All uses changed.
51729         (YYSTYPE): Removed; replaced by %union with int and textint members.
51730         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
51731         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
51732         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
51733         (tSNUMBER, tUNUMBER): Now of type <textintval>.
51734         (date, number, to_year): Use width of number in digits, not its value,
51735         to determine whether it's a 2-digit year, or a 2-digit time.
51736         (yylex): Store number of digits of numeric tokens.
51737         Reported by John Kendall.
51738
51739         (parser_control): Changed from struct parser_control to typedef (for
51740         consistency).  All uses changed.
51741
51742         (tID): Removed; not used.
51743         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
51744
51745 2000-02-14  Paul Eggert  <eggert@twinsun.com>
51746
51747         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
51748         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
51749
51750 2000-02-12  Jim Meyering  <meyering@lucent.com>
51751
51752         * lib/userspec.c (ISDIGIT): Define it.
51753         (isdigit): Remove definition.
51754         (is_number): Use ISDIGIT, not isdigit.
51755         <libintl.h>: Include.
51756         (_ and N_): Define.
51757         (parse_user_spec): Mark translatable strings.
51758
51759 2000-02-10  Jim Meyering  <meyering@lucent.com>
51760
51761         With these changes, nanosleep.[ch] are finally enough like the other
51762         lib/* replacement files to compile on a few more losing systems.
51763
51764         * lib/nanosleep.h: Don't include config.h.
51765         Remove prototype from declaration of nanosleep.
51766         (PARAMS): Remove now-unneeded definition.
51767         * lib/nanosleep.c: #undef nanosleep.
51768         (rpl_nanosleep): Rename from nanosleep.
51769
51770 2000-02-10  Jim Meyering  <meyering@lucent.com>
51771
51772         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
51773         gnu_nanosleep to rpl_nanosleep.
51774
51775 2000-02-09  Jim Meyering  <meyering@lucent.com>
51776
51777         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
51778         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
51779
51780 2000-02-08  Akim Demaille  <akim@epita.fr>
51781
51782         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
51783         `[' and `]' and remove uses of `changequote'.
51784         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
51785         (AC_SYS_LARGEFILE): Likewise.
51786         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
51787         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
51788         of changequote.
51789         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
51790         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
51791         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
51792         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
51793
51794 2000-02-05  Jim Meyering  <meyering@lucent.com>
51795
51796         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
51797         Remove explicit use of AC_HEADER_TIME.  It is required by
51798         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
51799         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
51800         in autoconf whereby the expansion of the latter ended up preceding
51801         the expansion of its prerequisite, AC_HEADER_TIME.
51802         Reported by Volker Borchert.
51803
51804 2000-02-03  Jim Meyering  <meyering@lucent.com>
51805
51806         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
51807
51808 2000-02-03  Jim Meyering  <meyering@lucent.com>
51809
51810         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
51811         rather than with `#if HAVE_UTMPNAME'.
51812
51813 2000-02-02  Jim Meyering  <meyering@lucent.com>
51814
51815         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
51816         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
51817         Reported by Eli Zaretskii.
51818
51819 2000-02-01  Jim Meyering  <meyering@lucent.com>
51820
51821         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
51822
51823 2000-01-31  Jim Meyering  <meyering@lucent.com>
51824
51825         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
51826         functions.  Add the time.h and sys/time.h headers along with the
51827         AC_REQUIRE'ment of AC_HEADER_TIME.
51828
51829 2000-01-31  Jim Meyering  <meyering@lucent.com>
51830
51831         * lib/nanosleep.h (nanosleep): Guard declaration with
51832         `#if ! HAVE_DECL_NANOSLEEP'.
51833         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
51834         the declaration in that vendor's sys/timers.h.
51835         Reported by Christian Krackowizer.
51836
51837         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
51838         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
51839         (ISPRINT): Likewise.
51840         Reported by Tom Tromey.
51841
51842 2000-01-30  Jim Meyering  <meyering@lucent.com>
51843
51844         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
51845
51846         * m4/prereq.m4 (utmp_includes): Define.
51847         Check for ut_user and ut_name members in both struct utmpx
51848         and struct utmp.
51849
51850 2000-01-30  Jim Meyering  <meyering@lucent.com>
51851
51852         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
51853         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
51854         header files where only utmpx.ut_user is declared.
51855
51856         * lib/readutmp.h (UT_USER): Define.
51857
51858 2000-01-29  Jim Meyering  <meyering@lucent.com>
51859
51860         * m4/lib-check.m4: New file containing library-related checks from
51861         fileutils and sh-utils (textutils had none).
51862
51863 2000-01-28  Jim Meyering  <meyering@lucent.com>
51864
51865         * m4/perl.m4: Change format of warning message to look more like that
51866         from the missing script.  Suggestion from François Pinard.
51867
51868 2000-01-25  Jim Meyering  <meyering@lucent.com>
51869
51870         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
51871         well as time.h in the compile check.
51872         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
51873         Fix typo in cross-compiling case: s/yes/no/.
51874
51875 2000-01-23  Jim Meyering  <meyering@lucent.com>
51876
51877         * m4/jm-macros.m4: Move df-related tests here from
51878         fileutils/configure.in
51879
51880         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
51881         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
51882
51883         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
51884         s/space/ac_fsusage_space/.
51885         (jm_FILE_SYSTEM_USAGE): Take two parameters.
51886
51887         * m4/ftruncate.m4: New file (derived from part of
51888         fileutils/configure.in).
51889         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
51890         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
51891
51892         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
51893         AC_SUBST these here, rather than just in sh-util/configure.in, so
51894         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
51895         all the same.
51896         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
51897         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
51898         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
51899         (AC_SUBST(POW_LIBM)): Likewise.
51900         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
51901
51902 2000-01-23  Jim Meyering  <meyering@lucent.com>
51903
51904         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
51905         obstack.c.
51906
51907 2000-01-22  Jim Meyering  <meyering@lucent.com>
51908
51909         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
51910
51911         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
51912
51913         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
51914         configure.in
51915         (AC_CHECK_HEADERS): Likewise for sh-utils.
51916         (AC_CHECK_HEADERS): Likewise for textutils.
51917         Merge the three lists of headers.
51918
51919         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
51920         from fileutils' configure.in.
51921
51922         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
51923         code. Moved tests into their own function (_jm_DECL_HEADERS) in
51924         check-decl.m4.
51925
51926         * m4/check-decl.m4: Use #if rather than #ifdef.
51927         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
51928         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
51929         (_jm_DECL_HEADERS): Define new function.
51930         (jm_CHECK_DECLARATIONS): Require it.
51931
51932 2000-01-22  Jim Meyering  <meyering@lucent.com>
51933
51934         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
51935         [! HAVE_DECL_STRTOULL]: Declare strtoull.
51936         Required for some AIX systems.  Reported by Christian Krackowizer.
51937         [TESTING] (main): New function.
51938
51939         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
51940         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
51941         letters.
51942
51943         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
51944         iswprint.
51945
51946         * lib/strverscmp.c (ISDIGIT): Define.
51947         (strverscmp): Use ISDIGIT, not isdigit.
51948
51949 2000-01-19  Jim Meyering  <meyering@lucent.com>
51950
51951         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
51952         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
51953         defines `struct timespec' in <sys/time.h>
51954
51955         * m4/c-bs-a.m4: Remove uses of changequote altogether.
51956         Thanks to Akim for explaining.
51957
51958 2000-01-17  Paul Eggert  <eggert@twinsun.com>
51959
51960         * lib/nanosleep.c (nanosleep):
51961         Don't use SA_INTERRUPT to decide whether to call sigaction, as
51962         POSIX.1 doesn't require SA_INTERRUPT and some systems
51963         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
51964         it's been part of POSIX.1 since day 1 (in 1988).
51965
51966 2000-01-17  Jim Meyering  <meyering@lucent.com>
51967
51968         * lib/interlock: Remove unused file.  Reported by François Pinard.
51969
51970 2000-01-16  Paul Eggert  <eggert@twinsun.com>
51971
51972         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
51973         alert, backslash, formfeed, and vertical tab unnecessarily in
51974         shell quoting style.
51975
51976 2000-01-16  Jim Meyering  <meyering@lucent.com>
51977
51978         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
51979         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
51980         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
51981         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
51982
51983 2000-01-16  Jim Meyering  <meyering@lucent.com>
51984
51985         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
51986         because the latter didn't work.
51987
51988 2000-01-15  Jim Meyering  <meyering@lucent.com>
51989
51990         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
51991         (AC_REPLACE_FUNCS): Add memcpy and memset.
51992         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
51993         Add strpbrk.
51994         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
51995
51996 2000-01-12  Jim Meyering  <meyering@lucent.com>
51997
51998         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
51999         (jm_PREREQ): Use it.
52000         (jm_PREREQ_READUTMP): New macro.
52001         (jm_PREREQ): Use it.
52002
52003 2000-01-11  Paul Eggert  <eggert@twinsun.com>
52004
52005         Quote multibyte characters correctly.
52006         * m4/c-bs-a.m4: New file.
52007         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
52008         (jm_PREREQ): Use it.
52009
52010 2000-01-11  Paul Eggert  <eggert@twinsun.com>
52011
52012         * m4/uintmax_t.m4: Port to autoconf 2.13.
52013
52014 2000-01-08  Jim Meyering  <meyering@ascend.com>
52015
52016         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
52017         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
52018
52019 2000-01-04  Jim Meyering  <meyering@ascend.com>
52020
52021         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
52022         jm_STRUCT_DIRENT_D_TYPE.
52023         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
52024         jm_STRUCT_DIRENT_D_INO.
52025         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
52026         jm_STRUCT_UTIMBUF.
52027         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
52028         renamings.
52029         * m4/utime.m4: Likewise.
52030
52031         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
52032         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
52033
52034 2000-01-03  Paul Eggert  <eggert@twinsun.com>
52035
52036         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
52037         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
52038
52039 2000-01-02  Jim Meyering  <meyering@ascend.com>
52040
52041         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
52042         remember if this is necessary.
52043
52044 1999-12-26  Jim Meyering  <meyering@ascend.com>
52045
52046         * m4/jm-macros.m4: Use it here.
52047         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
52048
52049 1999-12-23  Jim Meyering  <meyering@ascend.com>
52050
52051         * m4/jm-macros.m4: Check for clock_gettime (moved from
52052         fileutils/configure.in)
52053         Check for gettimeofday.
52054
52055 1999-12-20  Jim Meyering  <meyering@ascend.com>
52056
52057         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
52058         autoconf-2.14a-1999-12-20.
52059
52060 1999-12-19  Jim Meyering  <meyering@ascend.com>
52061
52062         * m4/lstat-slash.m4: New file.
52063         * m4/jm-macros.m4: Use the new macro:
52064         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
52065
52066 1999-12-07  Jim Meyering  <meyering@ascend.com>
52067
52068         * m4/perl.m4: Require that File::Compare be available, too.
52069         Too many systems seem to lack it.
52070
52071         * m4/strftime.m4: Add checks for most of the cpp macros tested in
52072         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
52073
52074 1999-11-18  Paul Eggert  <eggert@twinsun.com>
52075
52076         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
52077         problem with the QNX 4.25 shell, which doesn't propagate exit
52078         status of failed commands inside shell assignments.
52079
52080 1999-11-17  Jim Meyering  <meyering@ascend.com>
52081
52082         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
52083
52084 1999-11-07  Jim Meyering  <meyering@ascend.com>
52085
52086         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
52087
52088 1999-11-06  Jim Meyering  <meyering@ascend.com>
52089
52090         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
52091         * m4/jm-macros.m4 (jm_MACROS): Use it here.
52092
52093 1999-11-05  Jim Meyering  <meyering@ascend.com>
52094
52095         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
52096         configure.in of textutils, fileutils, and sh-utils into this one
52097         (shared between those packages) file.
52098         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
52099         AC_STRUCT_ST_BLKSIZE.
52100
52101 1999-11-03  Jim Meyering  <meyering@ascend.com>
52102
52103         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
52104         of AC_CHECK_TYPE checks includes unistd.h.
52105         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
52106         Suggestion from Akim Demaille.
52107
52108 1999-10-30  Jim Meyering  <meyering@ascend.com>
52109
52110         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
52111         m4-quoted string.
52112         * m4/ls-mntd-fs.m4: Likewise.
52113         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
52114         * m4/jm-winsz1.m4: Likewise.
52115
52116         * m4/const.m4: Remove file, since the fix made it into the experimental
52117         version of autoconf.
52118         * m4/mktime.m4: Likewise.
52119
52120         * m4/check-type.m4: Remove file, now that the latest version of
52121         AC_CHECK_TYPE takes a third arg to specify additional #includes.
52122
52123         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
52124         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
52125         AC_CHECK_TYPE.
52126
52127 1999-10-04  Jim Meyering  <meyering@ascend.com>
52128
52129         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
52130
52131 1999-09-22  Paul Eggert  <eggert@twinsun.com>
52132
52133         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
52134         2.95.1 bug with HP-UX 10.20.
52135
52136 1999-09-17  Jim Meyering  <meyering@ascend.com>
52137
52138         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
52139         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
52140         due to missing strdup (against sh-utils-2.0).
52141
52142 1999-08-29  Jim Meyering  <meyering@ascend.com>
52143
52144         * m4/jm-macros.m4: Require jm_BISON.
52145         * m4/bison.m4: New file.
52146
52147 1999-08-17  Paul Eggert  <eggert@twinsun.com>
52148
52149         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
52150         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
52151
52152 1999-08-05  Jim Meyering  <meyering@ascend.com>
52153
52154         * m4/getline.m4: Rename test file from conftestdata to conftest.data
52155         to avoid conflicts with `conftest' on 8+3 filesystems.
52156         Suggestion from Eli Zaretskii.
52157
52158 1999-08-04  Jim Meyering  <meyering@ascend.com>
52159
52160         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
52161         fileutils and sh-utils (textutils's getline test was inadequate).
52162         (AM_FUNC_GETLINE): Run this test.
52163         (AC_CHECK_FUNCS): Check for getdelim.
52164         Reported by Bob Proulx.
52165
52166 1999-08-02  Jim Meyering  <meyering@ascend.com>
52167
52168         * m4/jm-macros.m4: Add a comment.
52169
52170 1999-08-01  Paul Eggert  <eggert@twinsun.com>
52171
52172         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
52173         <inttypes.h> defines strtoumax as a macro (and not as a
52174         function).
52175
52176 1999-08-01  Paul Eggert  <eggert@twinsun.com>
52177
52178         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
52179         that we can shift, multiply and divide unsigned long long
52180         values; Ultrix cc can't do it.
52181
52182 1999-08-01  Paul Eggert  <eggert@twinsun.com>
52183
52184         * m4/mktime.m4: New file, which is a preview of what should appear
52185         in the next public autoconf release.
52186
52187 1999-08-01  Paul Eggert  <eggert@twinsun.com>
52188
52189         * m4/lfs.m4: Remove this file.
52190         * m4/largefile.m4: New file.  It contains the old contents of
52191         lfs.m4, except that all names with prefix AC_LFS have been
52192         changed to use the prefix AC_SYS_LARGEFILE instead, to be
52193         compatible with future autoconf versions.  Also, some minor m4
52194         quoting problems have been fixed.
52195
52196 1999-08-01  Paul Eggert  <eggert@twinsun.com>
52197
52198         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
52199         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
52200         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
52201         and simplify the shell code.
52202
52203 1999-08-01  Jim Meyering  <meyering@ascend.com>
52204
52205         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
52206         m4.
52207
52208 1999-07-20  Jim Meyering  <meyering@ascend.com>
52209
52210         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
52211
52212 1999-07-15  Jim Meyering  <meyering@ascend.com>
52213
52214         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
52215
52216 1999-05-22  Jim Meyering  <meyering@ascend.com>
52217
52218         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
52219
52220 1999-05-20  Jim Meyering  <meyering@ascend.com>
52221
52222         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
52223         Add a colon after each `then' in case $4 is empty.
52224
52225 1999-05-16  Jim Meyering  <meyering@ascend.com>
52226
52227         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
52228
52229 1999-05-10  Jim Meyering  <meyering@ascend.com>
52230
52231         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
52232
52233         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
52234         AC_FUNC_MKTIME.
52235
52236 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
52237
52238         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
52239
52240 1999-05-04  Paul Eggert  <eggert@twinsun.com>
52241
52242         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
52243         not CPPFLAGS, so that linking works correctly in IRIX.
52244
52245 1999-04-30  Paul Eggert  <eggert@twinsun.com>
52246
52247         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
52248
52249 1999-04-20  Paul Eggert  <eggert@twinsun.com>
52250
52251         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
52252         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
52253         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
52254         jm_AC_TYPE_UNSIGNED_LONG_LONG.
52255         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
52256
52257         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
52258
52259 1999-04-20  Jim Meyering  <meyering@ascend.com>
52260
52261         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
52262         AC_REPLACE xstroull if necessary.  From Paul Eggert.
52263         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
52264
52265 1999-04-18  Jim Meyering  <meyering@ascend.com>
52266
52267         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
52268         * m4/jm-macros.m4: Use it.
52269
52270 1999-04-06  Jim Meyering  <meyering@ascend.com>
52271
52272         * m4/strftime.m4: Remove test for %f.
52273
52274 1999-03-29  Jim Meyering  <meyering@ascend.com>
52275
52276         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
52277         superset of the AC_TYPE_* checks in the textutils, fileutils,
52278         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
52279         AC_TYPE_PID_T.
52280
52281 1999-03-28  Jim Meyering  <meyering@ascend.com>
52282
52283         * m4/jm-macros.m4: Define GNU_PACKAGE here.
52284         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
52285         replaced e.g., in the *.sh files of the sh-utils.
52286
52287 1999-03-20  Jim Meyering  <meyering@ascend.com>
52288
52289         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
52290         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
52291         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
52292
52293 1999-03-19  Jim Meyering  <meyering@ascend.com>
52294
52295         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
52296
52297 1999-03-12  Jim Meyering  <meyering@ascend.com>
52298
52299         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
52300
52301 1999-03-07  Jim Meyering  <meyering@ascend.com>
52302
52303         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
52304         declared.
52305
52306 1999-02-17  Jim Meyering  <meyering@ascend.com>
52307
52308         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
52309         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
52310
52311 1999-02-07  Jim Meyering  <meyering@ascend.com>
52312
52313         * m4/group-member.m4: New file -- extracted from sh-utils'
52314         configure.in.
52315
52316         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
52317         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
52318
52319 1999-02-06  Jim Meyering  <meyering@ascend.com>
52320
52321         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
52322         * m4/fnmatch.m4: Likewise.
52323         * m4/getgroups.m4: Likewise.
52324         * m4/lstat.m4: Likewise.
52325         * m4/malloc.m4: Likewise.
52326         * m4/putenv.m4: Likewise.
52327         * m4/realloc.m4: Likewise.
52328         * m4/regex.m4: Likewise.
52329         * m4/stat.m4: Likewise.
52330         * m4/strftime.m4: Likewise.
52331         Suggestion from Alain Magloire.
52332
52333         * m4/chown.m4: Use `.$ac_objext', not `.o'.
52334         * m4/fnmatch.m4: Likewise.
52335         * m4/getgroups.m4: Likewise.
52336         * m4/getline.m4: Likewise.
52337         * m4/lstat.m4: Likewise.
52338         * m4/malloc.m4: Likewise.
52339         * m4/memcmp.m4: Likewise.
52340         * m4/putenv.m4: Likewise.
52341         * m4/realloc.m4: Likewise.
52342         * m4/regex.m4: Likewise.
52343         * m4/stat.m4: Likewise.
52344         * m4/strftime.m4: Likewise.
52345         Suggestion from Alain Magloire.
52346
52347         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
52348         an argument.
52349
52350         * m4/regex.m4: Add a run-time Test for proper operation of
52351         re_compile_pattern.
52352
52353 1999-01-31  Jim Meyering  <meyering@ascend.com>
52354
52355         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
52356
52357 1999-01-30  Jim Meyering  <meyering@ascend.com>
52358
52359         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
52360
52361         * m4/jm-mktime.m4: Make this a wrapper around the official
52362         AM_FUNC_MKTIME rather than my private copy, now that the official one
52363         is up to date.
52364         * m4/mktime.m4: Remove file.
52365
52366         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
52367         * m4/uptime.m4: Likewise.
52368         * m4/uintmax_t.m4: Likewise.
52369
52370 1999-01-28  Jim Meyering  <meyering@ascend.com>
52371
52372         * m4/jm-macros.m4: Use jm_AFS.
52373         * m4/afs.m4: New file (from fileutils' configure.in).
52374
52375         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
52376         * m4/chown.m4: Likewise.
52377         * m4/d-ino.m4: Likewise.
52378         * m4/d-type.m4: Likewise.
52379         * m4/fnmatch.m4: Likewise.
52380         * m4/getgroups.m4: Likewise.
52381         * m4/gettext.m4: Likewise.
52382         * m4/jm-mktime.m4: Likewise.
52383         * m4/jm-winsz2.m4: Likewise.
52384         * m4/lcmessage.m4: Likewise.
52385         * m4/ls-mntd-fs.m4: Likewise.
52386         * m4/malloc.m4: Likewise.
52387         * m4/memcmp.m4: Likewise.
52388         * m4/putenv.m4: Likewise.
52389         * m4/realloc.m4: Likewise.
52390         * m4/st_mtim.m4: Likewise.
52391         * m4/strftime.m4: Likewise.
52392
52393 1999-01-16  Jim Meyering  <meyering@ascend.com>
52394
52395         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
52396         (ARGMATCH_DIE_DECL): Define.
52397
52398 1999-01-12  Jim Meyering  <meyering@ascend.com>
52399
52400         * m4/Makefile.am.in: Rewrite to avoid using fmt.
52401         Reported by Lars Hecking.
52402
52403 1999-01-10  Jim Meyering  <meyering@ascend.com>
52404
52405         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
52406         gross kludge.
52407         * m4/inttypes_h.m4: Likewise.
52408         * m4/lstat.m4: Likewise.
52409         * m4/malloc.m4: Likewise.
52410         * m4/readdir.m4: Likewise.
52411         * m4/realloc.m4: Likewise.
52412         * m4/st_dm_mode.m4: Likewise.
52413         * m4/stat.m4: Likewise.
52414         * m4/utimbuf.m4: Likewise.
52415         * m4/utimes.m4: Likewise.
52416
52417         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
52418         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
52419         comments in config.h.in are meaningful.
52420
52421         * m4/jm-macros.m4: Require autoconf-2.13 here.
52422
52423         * m4/regex.m4: By default, don't use the included regex.c on systems
52424         with glibc 2.  Suggestion from Uli Drepper.
52425
52426 1999-01-02  Jim Meyering  <meyering@ascend.com>
52427
52428         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
52429
52430 1998-12-18  Jim Meyering  <meyering@ascend.com>
52431
52432         * m4/Makefile.am.in (Makefile.am): Simplify rule.
52433         Based on a suggestion from Lars Hecking.
52434
52435 1998-11-16  Paul Eggert  <eggert@twinsun.com>
52436
52437         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
52438
52439 1998-11-16  Jim Meyering  <meyering@ascend.com>
52440
52441         * m4/lfs.m4: Double-quote the `uname...` expression.
52442
52443 1998-11-14  Jim Meyering  <meyering@ascend.com>
52444
52445         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
52446         * m4/stat.m4: Likewise.
52447
52448 1998-11-03  Jim Meyering  <meyering@ascend.com>
52449
52450         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
52451         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
52452
52453 1998-10-18  Jim Meyering  <meyering@ascend.com>
52454
52455         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
52456
52457 1998-10-17  Jim Meyering  <meyering@ascend.com>
52458
52459         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
52460         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
52461         calls for those previously hard-coded headers.  Instead, take a new
52462         parameter.
52463         (jm_CHECK_DECLARATIONS): Reflect interface change.
52464         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
52465         (jm_CHECK_DECL_LOCALTIME_R): New macro.
52466
52467         * m4/mktime.m4: Test for spring-forward gap before long-running test.
52468
52469 1998-10-14  Jim Meyering  <meyering@ascend.com>
52470
52471         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
52472         instead of "TZ=America/Vancouver".  From Paul Eggert.
52473
52474 1998-10-11  Jim Meyering  <meyering@ascend.com>
52475
52476         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
52477         This adds a test for a recently added compatibility fix for mktime.c.
52478         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
52479
52480 1998-09-27  Jim Meyering  <meyering@ascend.com>
52481
52482         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
52483
52484         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
52485         ../configure.in, including a change from Gordon Matzigkeit to allow
52486         cross-compiling for the Hurd.
52487
52488         * m4/glibc.m4: New file/macro to test for the GNU C Library
52489         versions 1 and 2.  From Gordon Matzigkeit.
52490         Indent.
52491
52492 1998-09-21  Jim Meyering  <meyering@ascend.com>
52493
52494         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
52495
52496 1998-08-18  Paul Eggert  <eggert@twinsun.com>
52497
52498         Port nanosecond-resolution times to UnixWare 2.1.2 and
52499         pedantic Solaris 2.6.
52500
52501         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
52502         AC_STRUCT_ST_MTIM.
52503         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
52504         Generate name of ns member, instead of just 1 or undef.
52505         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
52506
52507 1998-08-15  Jim Meyering  <meyering@ascend.com>
52508
52509         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
52510         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
52511         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
52512         instead of jm_TYPE_SSIZE_T.
52513
52514 1998-08-12  Jim Meyering  <meyering@ascend.com>
52515
52516         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
52517
52518 1998-08-02  Jim Meyering  <meyering@ascend.com>
52519
52520         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
52521         in acconfig.h manually.
52522
52523 1998-07-31  Paul Eggert  <eggert@twinsun.com>
52524
52525         * m4/st_mtim.m4: New file.
52526
52527 1998-07-28  Jim Meyering  <meyering@ascend.com>
52528
52529         * m4/utimes.m4: Undef stat.
52530
52531 1998-07-25  Jim Meyering  <meyering@ascend.com>
52532
52533         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
52534         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
52535
52536 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
52537
52538         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
52539         uid and gid actually remain unchanged.
52540
52541 1998-07-07  Jim Meyering  <meyering@ascend.com>
52542
52543         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
52544
52545 1998-07-04  Jim Meyering  <meyering@ascend.com>
52546
52547         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
52548         to prove that this macro can be used in packages without regex.c.
52549
52550 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
52551
52552         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
52553         is to be used.
52554
52555 1998-07-03  Jim Meyering  <meyering@ascend.com>
52556
52557         * m4/gettext.m4: Add -lintl if it's found to be necessary.
52558
52559         * m4/gettext.m4: New file -- from gettext-0.10.35.
52560         * m4/lcmessage.m4: Likewise.
52561         * m4/progtest.m4: Likewise.
52562
52563         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
52564         * m4/jm-macros.m4: Require the new macro.
52565
52566 1998-06-29  Jim Meyering  <meyering@ascend.com>
52567
52568         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
52569         for the definition of NGROUPS (used in a system header included
52570         by sys/mount.h).
52571
52572 1998-06-28  Jim Meyering  <meyering@ascend.com>
52573
52574         * m4/ls-mntd-fs.m4: New file.
52575         * m4/fstypename.m4: New file.
52576
52577         * m4/jm-macros.m4: Require the new macro.
52578         * m4/jm-glibc-io.m4: New file.
52579
52580 1998-05-19  Jim Meyering  <meyering@ascend.com>
52581
52582         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
52583         * m4/lchown.m4: New file.
52584
52585         * m4/Makefile.am.in: New file.
52586         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
52587
52588 1998-05-14  Jim Meyering  <meyering@ascend.com>
52589
52590         * m4/Makefile.am (EXTRA_DIST): Add them.
52591         * m4/jm-macros.m4: New file.
52592         * m4/utimbuf.m4: New file.
52593
52594 1998-05-12  Jim Meyering  <meyering@ascend.com>
52595
52596         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
52597
52598 1998-05-11  Jim Meyering  <meyering@ascend.com>
52599
52600         * m4/isc-posix.m4: New file.
52601
52602 1998-05-10  Jim Meyering  <meyering@ascend.com>
52603
52604         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
52605
52606 1998-05-09  Jim Meyering  <meyering@ascend.com>
52607
52608         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
52609         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
52610         with automake.
52611
52612         * m4/ssize_t.m4: New file.
52613         * m4/mktime.m4: Remove file -- the new automake has this now.
52614
52615 1998-04-26  Jim Meyering  <meyering@ascend.com>
52616
52617         * m4/assert.m4: New file.
52618         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
52619
52620 1998-04-05  Jim Meyering  <meyering@ascend.com>
52621
52622         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
52623         (jm_PREREQ): Use it here.
52624
52625 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
52626
52627         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
52628         in acconfig.h.
52629
52630 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
52631
52632         * m4/prereq.m4: New file.
52633         * m4/error.m4: New file.
52634         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
52635
52636 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
52637
52638         * m4/getline.m4: Don't set am_cv_func_working_getline before the
52639         cache-check for the same variable -- that defeated the purpose of
52640         the test; the test program was never run.  This was a problem only
52641         on systems with losing getline functions -- HP-UX 10.20 is one.
52642         Reported by Bjorn Helgaas.
52643
52644 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
52645
52646         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
52647
52648 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
52649
52650         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
52651
52652         * m4/const.m4: New file.  Use an initializer in this declaration
52653         typedef int charset[2]; const charset x;
52654         Reported by Bob Glickstein.
52655
52656 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
52657
52658         * m4/chown.m4: Fix reversed types on -1 args to chown.
52659         From Kaveh Ghazi.
52660
52661 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
52662
52663         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
52664         Add lseek and memchr.
52665
52666         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
52667         T.E.Dickey <dickey@clark.net> said that some older preprocessors
52668         have a 20-character limit on names.
52669
52670 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
52671
52672         * m4/inttypes_h.m4: New file.
52673         * m4/uintmax_t.m4: New file.
52674         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
52675
52676
52677         -----
52678
52679         Local Variables:
52680         coding: utf-8
52681         End:
52682
52683         Copyright (C) 1997-2009 Free Software Foundation, Inc.
52684
52685         Copying and distribution of this file, with or without
52686         modification, are permitted provided the copyright notice
52687         and this notice are preserved.